《VHDL开发精解与实例剖析》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:詹仙宁,田耘编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121096235
  • 页数:358 页
图书介绍:本书语言简洁,层次清晰,主要包括VHDL核心知识介绍和程序设计实践两部分。在介绍基础知识之后更多侧重于对VHDL可综合设计中的难点进行详细剖析,包括VHDL高级层次化设计、面向仿真的VHDL程序代码设计、基于TEXT IO的测试平台的应用,对实践中使用的物理器件平台(Xilinx Spartan 3E FPGA)和程序开发软件(Xilinx ISE 10.1)的使用进行了详细介绍。

第1章 概述 1

1.1可编程逻辑器件 1

1.1.1可编程逻辑器件概述 1

1.1.2可编程逻辑器件发展历史 1

1.1.3可编程逻辑器件分类 2

1.2 EDA技术与硬件描述语言 3

1.2.1 EDA技术简介 4

1.2.2硬件描述语言简介 5

1.3 VHDL语言简介 5

1.3.1 VHDL语言概述 5

1.3.2使用VHDL的优势 6

1.3.3 VHDL语言程序开发流程 7

1.3.4给初学者的建议 8

1.4本章总结 8

第2章VHDL语言程序结构 9

2.1 VHDL程序结构概述 9

2.2 VHDL程序基本组成 12

2.2.1实体声明 12

2.2.2结构体 14

2.2.3库和程序包调用 16

2.3本章总结 18

第3章VHDL语言基本要素 19

3.1词法单元 19

3.1.1关键字 19

3.1.2标志符 19

3.1.3数字 20

3.1.4字符和字符串 20

3.1.5位串 21

3.1.6注释 21

3.2数据对象 21

3.2.1信号 22

3.2.2变量 23

3.2.3常量 25

3.2.4文件 25

3.2.5数据对象小结 25

3.3数据类型 25

3.3.1 VHDL预定义数据类型 26

3.3.2用户自定义数据类型 33

3.3.3数据类型转换 36

3.3.4数据类型小结 36

3.4运算操作符 37

3.4.1赋值运算符 37

3.4.2逻辑运算符 37

3.4.3算术运算符 39

3.4.4关系运算符 40

3.4.5移位运算符 42

3.4.6并置运算符 43

3.4.7运算操作符的优先级 43

3.5属性 44

3.5.1数组的属性 44

3.5.2信号的属性 44

3.6本章总结 45

第4章VHDL语言描述语句 46

4.1 VHDL语句概述 46

4.2基本的VHDL并行语句 47

4.2.1并行信号赋值语句 47

4.2.2进程 53

4.2.3元件例化语句 58

4.2.4生成语句 63

4.2.5块语句 65

4.2.6子程序和子程序调用 65

4.3基本的VHDL顺序语句 74

4.3.1顺序赋值语句 75

4.3.2 IF语句 75

4.3.3 CASE语句 78

4.3.4 LOOP语句 80

4.3.5 NULL语句 85

4.3.6 WAIT语句 85

4.4本章总结 86

第5章 有限状态机的VHDL设计 87

5.1有限状态机概述 87

5.1.1有限状态机的概念和分类 87

5.1.2有限状态机的状态转移图 88

5.1.3有限状态机设计流程 89

5.2有限状态机设计重点解析 90

5.2.1状态编码方式 90

5.2.2状态机的容错处理 91

5.2.3有限状态机的性能指标 91

5.2.4有限状态机设计思想 91

5.3有限状态机的VHDL描述 92

5.3.1“三进程”描述 92

5.3.2“双进程”描述 95

5.3.3“单进程”描述 97

5.3.4状态机的VHDL描述总结 99

5.4有限状态机VHDL设计实例 102

5.4.1交通灯控制器 102

5.4.2乒乓游戏机 106

5.5 本章总结 110

第6章VHDL程序设计难点解析 111

6.1面向硬件的设计思维 111

6.1.1硬件电路设计不是编写计算机指令 111

6.1.2模块化与层次化是硬件电路设计的基本方法 112

6.1.3硬件电路可以从不同抽象层次进行描述 113

6.1.4结构体的描述方式 113

6.2组合电路与时序电路 115

6.2.1概述 115

6.2.2组合电路设计 116

6.2.3时序电路设计 117

6.2.4同步时序电路与异步时序电路 118

6.3程序中的信号与变量 118

6.3.1概述 119

6.3.2信号赋值与变量赋值 119

6.3.3信号的应用——进程间通信 123

6.3.4变量赋值的应用——算法描述 125

6.4进程中的多边沿触发问题 126

6.4.1概述 127

6.4.2不可综合的多沿触发 127

6.4.3多沿触发协同工作 128

6.5基本算术运算实现及其难点 130

6.5.1数字在硬件电路中的表示 130

6.5.2数据溢出及其处理 131

6.5.3数据截断 138

6.6锁存器 139

6.6.1锁存器概述 139

6.6.2锁存器的产生及处理策略 139

6.6.3锁存器的应用 141

6.7本章总结 141

第7章VHDL高级层次化设计 143

7.1层次化设计概述 143

7.1.1层次化设计的优点 143

7.1.2 VHDL层次化设计基础 144

7.2基于VHDL的层次化设计 144

7.2.1元件与元件例化 144

7.2.2类属参数映射 144

7.2.3配置 147

7.2.4库和程序包 152

7.3模块的参数化设计 156

7.3.1概述 156

7.3.2参数的分类 157

7.3.3参数传递机制 157

7.4参数化设计中常用的描述语句 160

7.4.1 FOR LOOP语句 160

7.4.2 FOR GENERATE语句 161

7.4.3 IF GENERATE语句 162

7.4.4 EXIT语句和NEXT语句 162

7.5本章总结 162

第8章VHDL程序的综合 164

8.1 VHDL基本操作符的综合 164

8.1.1逻辑运算符的综合 164

8.1.2关系运算符的综合 164

8.1.3算术运算符的综合 165

8.1.4其他运算操作符的综合 165

8.1.5带常数的操作符及其综合 166

8.2 VHDL基本数据类型的综合 167

8.2.1标准逻辑类型的综合 167

8.2.2整数类型的综合 168

8.2.3枚举类型的综合 168

8.3参数化VHDL程序的综合 169

8.3.1类属参数映射的综合 169

8.3.2非限制数据的综合 169

8.4 VHDL程序的综合流程 169

8.4.1 RTL级综合 170

8.4.2模块生成器 170

8.4.3门级综合 171

8.4.4器件级综合 171

8.5本章总结 172

第9章 面向仿真的VHDL程序设计 173

9.1 VHDL的可综合性与可仿真特性 173

9.1.1 VHDL的可综合特性 173

9.1.2 VHDL的可仿真特性 174

9.2常用的VHDL仿真语句 174

9.2.1 AFTER语句 174

9.2.2 WAIT FOR语句 175

9.2.3 WAIT语句 175

9.2.4 ASSERT语句 176

9.2.5其他语句 176

9.3仿真激励的产生 176

9.3.1初始化 177

9.3.2时钟信号 177

9.3.3复位信号 178

9.3.4数据信号 179

9.4 VHDL测试平台 180

9.4.1 VHDL测试平台综述 180

9.4.2 VHDL Test Bench应用举例 182

9.4.3基于text 1O的VHDL Test Bench 186

9.5本章总结 192

第10章Xilinx Spartan 3E系列FPGA简介 193

10.1 FPGA基础知识 193

10.1.1 FPGA简介 193

10.1.2使用FPGA的优势 193

10.1.3 FPGA的分类 194

10.2 Xilinx Spartan 3E系列FPGA简介 194

10.2.1内部结构简介 194

10.2.2基本工作原理 198

10.3基于FPGA的开发与设计 199

10.3.1 FPGA典型开发流程 199

10.3.2 FPGA设计的性能指标 201

10.4本章总结 202

第11章Xilinx ISE Design Suite 10.1使用指南 203

11.1 ISE Design Suite 10.1简介与安装 203

11.1.1 ISE Design Suite 10.1版本新特点 203

11.1.2 ISE Design Suite 10.1的主要组件 203

11.1.3 ISE Design Suite 10.1的安装 206

11.2基于ISE的VHDL程序开发流程 210

11.2.1软件界面与基本操作 210

11.2.2新建工程 213

11.2.3 VHDL代码输入 214

11.2.4功能仿真 218

11.2.5代码综合 223

11.2.6用户约束文件 225

11.2.7设计实现 227

11.2.8器件配置 229

11.3在线逻辑分析仪ChipScope Pro 237

11.3.1 ChipScope Pro工具简介 238

11.3.2在ISE中调用ChipScope组件 240

11.4本章总结 247

第12章 基本功能模块的VHDL实现 248

12.1分频电路设计 248

12.1.1偶数倍分频 248

12.1.2奇数倍分频 249

12.2同步整形与按键消抖 252

12.2.1同步整形电路原理与实现 252

12.2.2按键消抖电路原理与实现 253

12.3按键扫描电路设计 255

12.3.1矩阵式键盘简介 256

12.3.2按键扫描电路的VHDL实现 259

12.4数码管接口电路设计 261

12.4.1七段数码管简介 261

12.4.2动态扫描数码管接口电路的实现 263

12.4.3特殊显示效果的实现 265

12.5字符型16×2 LCD接口电路设计 269

12.5.1字符型16×2 LCD简介 269

12.5.2字符型16×2 LCD接口电路的实现 273

12.6 PS/2键盘接口电路设计 279

12.6.1 PS/2键盘标准简介 279

12.6.2 PS/2键盘接口电路的实现 282

12.7 VGA接口电路设计 284

12.7.1 VGA显示原理简介 284

12.7.2 VGA接口电路的实现 286

12.8伪随机序列的产生 289

12.8.1伪随机序列及其性质 289

12.8.2 m序列发生器的实现 291

12.9 SPI同步接口及其应用 292

12.9.1 SPI同步接口简介 292

12.9.2 SPI同步接口应用实例 293

12.10 Xilinx FPGA常用硬核模块的调用 296

12.10.1 DCM硬核模块的调用 96

12.10.2 block RAM的调用 300

12.11本章总结 305

第13章DES算法的VHDL实现 306

13.1 DES算法的原理 306

13.1.1 DES概述 306

13.1.2 DES算法原理 306

13.1.3 DES解密方法 312

13.2 DES算法的VHDL实现 312

13.2.1总体设计 312

13.2.2子密钥产生模块 313

13.2.3组合逻辑运算模块 320

13.2.4时序控制模块——状态机 336

13.3系统综合与仿真 343

13.3.1系统综合 343

13.3.2系统仿真 344

13.4本章总结 348

附录A VHDL关键字和预定义程序包 349

A.1 VHDL关键字 349

A.2 VHDL预定义程序包 350

A.2.1 standard程序包 350

A.2.2 std_logic_1164程序包 352

参考文献 357