《VHDL及数字电路验证》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:刘树林,刘宁庄,王媛媛编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2017
  • ISBN:9787121302503
  • 页数:291 页
图书介绍:本书内容除绪论外主要分为两大部分:第一部分(第2~7章)以理论知识为主,系统介绍硬件描述语言(VHDL)的程序框架及组成、数据类型、数据对象、主要描述语句、语言属性和构造体描述风格,着重于可综合门级电路、使用频率较高的描述语句的学习应用。第二部分(第8~13章)围绕数字电路的设计验证展开论述,主要介绍组合和时序逻辑电路设计、状态机设计验证、典型IP核的设计验证以及FPGA最小系统应用设计。本书遵循“淡化理论,够用为度”的原则,通俗易懂,精练实用,配有大量的设计实例。

第1章 绪论 1

1.1 电路系统 1

1.1.1 电路系统的分类 1

1.1.2 模拟电路系统及其特点 1

1.1.3 数字电路系统及其特点 2

1.2 VHDL语言的产生背景、功能及特点 2

1.2.1 EDA概念 2

1.2.2 EDA技术发展阶段 2

1.2.3 EDA技术的研究内容 4

1.2.4 HDL语言的概念及分类 5

1.2.5 VHDL语言的发展及特点 6

1.3 PLD与FPGA 7

1.3.1 简单低密度器件(SPLD) 8

1.3.2 CPLD 9

1.3.3 FPGA 12

1.3.4 器件供应商及第三方软件介绍 13

习题 16

第2章 VHDL程序框架及组成 17

2.1 概述 17

2.2 语法规则及命名 17

2.2.1 书写规定 17

2.2.2 标识符 18

2.2.3 扩展标识符 18

2.2.4 保留字及专用字 19

2.3 VHDL基本架构 19

2.3.1 设计库 20

2.3.2 包集合 22

2.3.3 实体 24

2.3.4 构造体 26

2.3.5 配置 28

2.4 小结 31

习题 31

第3章 VHDL语言数据类型 32

3.1 数据类型概述 32

3.2 标准预定义数据类型 32

3.2.1 可综合数据类型 33

3.2.2 不可综合数据类型 36

3.3 用户自定义数据类型 38

3.3.1 枚举类型 39

3.3.2 数组类型 39

3.3.3 记录类型 40

3.3.4 寻址类型 41

3.3.5 文件类型 41

3.4 数据类型的转换 42

3.5 小结 44

习题 44

第4章 VHDL语言数据对象及运算操作符 45

4.1 数据对象及其分类 45

4.1.1 常量 45

4.1.2 信号 46

4.1.3 变量 47

4.1.4 文件 49

4.2 运算操作符 51

4.2.1 逻辑运算符 51

4.2.2 算术运算符 52

4.2.3 关系运算符 52

4.2.4 移位操作符 53

4.2.5 并置运算符 54

4.3 小结 55

习题 55

第5章 VHDL语言主要描述语句 57

5.1 概述 57

5.2 并发描述语句 57

5.2.1 进程语句 58

5.2.2 信号代入语句 59

5.2.3 元件例化语句 64

5.2.4 过程调用语句 69

5.2.5 类属语句 71

5.2.6 生成语句 72

5.2.7 并行仿真语句 75

5.2.8 块语句 77

5.3 顺序描述语句 78

5.3.1 进程语句 79

5.3.2 赋值语句 79

5.3.3 条件判断语句 81

5.3.4 CASE语句 83

5.3.5 调用语句 87

5.3.6 循环语句 90

5.3.7 仿真描述语句 94

5.3.8 空语句 98

5.4 小结 99

习题 99

第6章 VHDL语言属性 100

6.1 概述 100

6.2 数值类属性 100

6.2.1 常规数据类型的数值属性 101

6.2.2 数组类型的数值属性 101

6.2.3 块的数值属性 102

6.3 函数类属性 103

6.3.1 函数数据类型属性 103

6.3.2 函数数组属性 105

6.3.3 函数信号属性 106

6.3.4 信号类属性 110

6.4 数据类型属性 113

6.5 数据区间类属性 113

6.6 用户自定义属性 114

6.7 小结 115

习题 115

第7章 VHDL语言构造体的描述方式 117

7.1 概述 117

7.2 行为描述方式 117

7.2.1 行为描述方式的概念和特点 117

7.2.2 行为描述方式举例 117

7.3 结构化描述方式 119

7.3.1 结构化描述方式的概念和特点 119

7.3.2 结构化描述举例 119

7.4 数据流描述方式 123

7.4.1 数据流描述方式的概念和特点 123

7.4.2 数据流描述方式举例 124

7.5 混合描述方式 125

7.5.1 混合描述方式的概念和特点 125

7.5.2 混合描述方式举例 126

7.6 数据流描述中应注意的问题 126

7.6.1 非法状态传递问题 126

7.6.2 进程中时钟沿的使用问题 128

7.6.3 综合电路问题 128

7.7 小结 132

习题 132

第8章 数字逻辑电路设计 133

8.1 概述 133

8.2 组合逻辑电路设计 133

8.2.1 选择器和分配器 133

8.2.2 编码器和译码器 138

8.2.3 数字比较器 144

8.2.4 加法器 146

8.2.5 三态门及总线缓冲器 148

8.2.6 奇偶校验器 152

8.3 时序逻辑电路设计 153

8.3.1 触发器 153

8.3.2 寄存器的设计 159

8.3.3 计数器 162

8.4 小结 168

习题 168

第9章 状态机设计 169

9.1 概述 169

9.2 状态机的特点 170

9.3 状态机的组成 170

9.4 状态机的描述风格 174

9.5 状态机的状态编码 175

9.5.1 直接输出型编码 175

9.5.2 顺序编码 176

9.5.3 格雷码编码 176

9.5.4 独热码编码 177

9.6 状态机剩余状态处理 178

9.7 有限状态机的复位 179

9.8 小结 183

习题 183

第10章 MODELSIM仿真与测试平台的搭建 184

10.1 引言 184

10.2 ModelSim仿真软件 184

10.2.1 ModelSim简介 184

10.2.2 ModelSim软件的安装及破解 184

10.2.3 软件仿真步骤 188

10.3 测试及验证平台 192

10.3.1 仿真软件编辑输入 193

10.3.2 仿真输入波形的产生 193

10.3.3 测试平台的搭建 198

10.4 小结 201

习题 201

第11章 QUARTUS Ⅱ集成开发环境 202

11.1 概述 202

11.2 Quartus Ⅱ软件开发流程 203

11.2.1 新建工程设计流程 204

11.2.2 设计输入流程 207

11.2.3 编译及综合流程 217

11.2.4 仿真验证 220

11.2.5 硬件下载与验证 224

11.3 Quartus Ⅱ软件其他常用功能应用 227

11.3.1 嵌入式逻辑分析仪 227

11.3.2 信号探针 230

11.3.3 功耗分析工具 231

11.3.4 存储器内容编辑 233

11.3.5 逻辑分析仪接口编辑器 235

11.4 小结 236

习题 236

第12章 FPGA器件及其开发平台 237

12.1 FPGA工作原理 237

12.2 Altera FPGA芯片 237

12.2.1 Altera PLD芯片的分类 237

12.2.2 Altera PLD的命名 237

12.2.3 Cylone系列FPGA的功能和结构 238

12.3 FPGA与CPLD的比较 245

12.3.1 FPGA与CPLD的相同点 245

12.3.2 CPLD和FPGA的区别 245

12.4 FPGA开发流程 246

12.5 FPGA开发平台:最小系统设计 247

12.5.1 FPGA芯片有关引脚 247

12.5.2 PROM芯片型号及电路连接 248

12.5.3 全局时钟发生电路 249

12.5.4 JTAG下载电路 250

12.5.5 电源电路设计 250

12.5.6 其他IO接口电路 251

12.6 小结 252

习题 252

第13章 FPGA典型应用设计 253

13.1 IP知识产权模块 253

13.1.1 IP模块的概念 253

13.1.2 IP模块的分类 253

13.1.3 IP模块的复用 254

13.2 分频器的设计验证 255

13.2.1 奇偶数分频器通用IP核的设计 255

13.2.2 占空比可调的分频器的设计 258

13.3 交通灯控制器的设计 260

13.3.1 设计要求 260

13.3.2 设计原理 260

13.3.3 VHDL语句描述 261

13.3.4 元件符号及端口说明 262

13.3.5 仿真验证 263

13.4 串口异步收发控制器的设计 263

13.4.1 UART数据帧格式 264

13.4.2 UART的实现 264

13.5 I2C总线通信控制器的设计 274

13.5.1 I2C总线简介 274

13.5.2 I2C总线帧格式 274

13.5.3 I2C总线顶层模块设计 275

13.5.4 I2C时钟模块的设计 275

13.5.5 I2C写数据模块设计 276

13.6 并行ADC0809控制模块设计 279

13.6.1 设计原理 279

13.6.2 状态机设计 279

13.6.3 VHDL语言描述 280

13.6.4 测试平台的设计 281

13.6.5 仿真结果 282

13.7 串行DAC TLC5615控制模块设计 282

13.7.1 设计原理 283

13.7.2 设计状态图 283

13.7.3 VHDL源程序 283

13.7.4 元件符号及端口说明 285

13.7.5 仿真验证 285

13.8 正弦信号发生器的设计 285

13.8.1 正弦信号发生器工作原理 285

13.8.2 定制初始化数据文件 286

13.8.3 定制LPM ROM元件 286

13.9 小结 289

习题 289

主要参考文献 291