《数字系统设计与Verilog HDL 第4版》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:王金明编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2011
  • ISBN:9787121124259
  • 页数:398 页
图书介绍:本书根据EDA课程教学要求,以提高数字设计能力为目的,系统阐述了数字系统开发的相关知识,主要内容包括:EDA技术、FPGA/CPLD器件、Verilog硬件描述语言等。全书以Quartus Ⅱ、Synplify Pro软件为平台,以Verilog-1995和Verilog-2001语言标准为依据,以可综合的设计为重点,以大量经过验证的数字设计实例为依据,系统阐述了数字系统设计的方法与技术,由浅入深地介绍了Verilog工程开发的知识与技能。

第1章 EDA技术概述 1

1.1 EDA技术及其发展 1

1.2 Top-down设计与IP核复用 4

1.2.1 Top-down设计 4

1.2.2 Bottom-up设计 5

1.2.3 IP复用技术与SoC 5

1.3 数字设计的流程 7

1.3.1 设计输入 7

1.3.2 综合 9

1.3.3 布局布线 9

1.3.4 仿真 10

1.3.5 编程配置 10

1.4 常用的EDA软件工具 10

1.5 EDA技术的发展趋势 14

习题1 15

第2章 FPGA/CPLD器件 16

2.1 PLD器件概述 16

2.1.1 PLD器件的发展历程 16

2.1.2 PLD器件的分类 17

2.2 PLD的基本原理与结构 19

2.2.1 PLD器件的基本结构 19

2.2.2 PLD电路的表示方法 20

2.3 低密度PLD的原理与结构 21

2.4 CPLD的原理与结构 26

2.4.1 宏单元结构 26

2.4.2 典型CPLD的结构 27

2.5 FPGA的原理与结构 30

2.5.1 查找表结构 30

2.5.2 典型FPGA的结构 32

2.6 FPGA/CPLD的编程元件 37

2.7 边界扫描测试技术 41

2.8 FPGA/CPLD的编程与配置 43

2.8.1 在系统可编程 43

2.8.2 CPLD器件的编程 44

2.8.3 FPGA器件的配置 44

2.9 FPGA/CPLD器件概述 50

2.10 FPGA/CPLD的发展趋势 54

习题2 55

第3章 Quartus Ⅱ集成开发工具 56

3.1 Quartus Ⅱ原理图设计 56

3.1.1 半加器原理图设计输入 56

3.1.2 编译与仿真 60

3.1.3 1位全加器编译与仿真 64

3.2 Quartus Ⅱ的优化设置 65

3.2.1 分析与综合设置 65

3.2.2 优化布局布线 67

3.2.3 设计可靠性检查 72

3.3 Quartus Ⅱ的时序分析 73

3.3.1 时序设置与分析 73

3.3.2 时序逼近 75

3.4 基于宏功能模块的设计 77

3.4.1 乘法器模块 77

3.4.2 除法器模块 81

3.4.3 计数器模块 83

3.4.4 常数模块 85

3.4.5 锁相环模块 86

3.4.6 存储器模块 89

3.4.7 其他模块 93

习题3 96

第4章 Verilog设计初步 102

4.1 Verilog简介 102

4.2 Verilog模块的结构 103

4.3 Verilog基本组合电路设计 107

4.3.1 用Verilog设计基本组合电路 107

4.3.2 用Verilog设计加法器 107

4.4 Verilog基本时序电路设计 110

4.4.1 用Verilog设计触发器 110

4.4.2 用Verilog设计计数器 111

4.5 Synplify Pro综合器 113

4.6 Synplify综合器 118

习题4 120

第5章 Verilog语法与要素 121

5.1 Verilog语言要素 121

5.2 常量 122

5.2.1 整数(Integer) 122

5.2.2 实数(Real) 124

5.2.3 字符串(Strings) 124

5.3 数据类型 125

5.3.1 net型 125

5.3.2 variable型 126

5.4 参数 128

5.5 向量 130

5.6 运算符 132

习题5 136

第6章 Verilog行为语句 137

6.1 过程语句 137

6.1.1 always过程语句 138

6.1.2 initial过程语句 141

6.2 块语句 142

6.2.1 串行块begin-end 142

6.2.2 并行块fork-join 143

6.3 赋值语句 144

6.3.1 持续赋值与过程赋值 144

6.3.2 阻塞赋值与非阻塞赋值 145

6.4 条件语句 146

6.4.1 if-else语句 147

6.4.2 case语句 148

6.5 循环语句 152

6.5.1 for语句 153

6.5.2 repeat、while、forever语句 154

6.6 编译指示语句 156

6.7 任务与函数 157

6.7.1 任务(task) 157

6.7.2 函数(function) 160

6.8 顺序执行与并发执行 163

习题6 164

第7章 Verilog设计的层次与风格 166

7.1 Verilog设计的层次 166

7.2 门级结构描述 166

7.2.1 Verilog HDL内置门元件 167

7.2.2 门级结构描述 169

7.3 行为描述 170

7.4 数据流描述 171

7.5 不同描述风格的设计 172

7.5.1 半加器设计 172

7.5.2 1位全加器设计 173

7.5.3 4位加法器设计 175

7.6 多层次结构电路的设计 176

7.7 基本组合电路设计 178

7.7.1 门电路 178

7.7.2 编译码器 178

7.7.3 其他组合电路 180

7.8 基本时序电路设计 181

7.8.1 触发器 181

7.8.2 锁存器与寄存器 181

7.8.3 计数器与串并转换器 183

7.8.4 简易微处理器 184

7.9 三态逻辑设计 186

7.10 RAM存储器设计 188

7.11 FIFO缓存器设计 190

7.11.1 用参数化模块库定制FIFO 191

7.11.2 用Verilog描述FIFO 193

习题7 194

第8章 Verilog有限状态机设计 195

8.1 有限状态机 195

8.2 有限状态机的Verilog描述 197

8.2.1 用三个过程进行描述 198

8.2.2 用两个过程描述 199

8.2.3 单过程描述方式 201

8.3 状态编码 203

8.3.1 常用的编码方式 203

8.3.2 状态编码的定义 207

8.4 有限状态机设计要点 209

8.4.1 复位和起始状态的选择 209

8.4.2 多余状态的处理 209

8.5 用状态机设计流水灯 211

8.6 状态机A/D采样控制电路 212

习题8 214

第9章 Verilog设计进阶 215

9.1 加法器设计 215

9.1.1 级连加法器 215

9.1.2 数据流描述的加法器 216

9.1.3 超前进位加法器 217

9.1.4 流水线加法器 218

9.2 乘法器设计 219

9.2.1 并行乘法器 219

9.2.2 移位相加乘法器 221

9.2.3 加法树乘法器 224

9.2.4 查找表乘法器 225

9.3 乘累加器 225

9.4 奇数分频与小数分频 227

9.4.1 奇数分频 227

9.4.2 半整数分频与小数分频 228

9.5 数字跑表 231

9.6 实用多功能数字钟 234

9.7 字符液晶显示控制 243

9.7.1 字符液晶H1602B 243

9.7.2 用状态机实现字符显示控制 246

9.8 VGA图像的显示与控制 250

9.8.1 DE2-70的VGA显示电路 250

9.8.2 VGA图像显示原理与时序 251

9.8.3 VGA图像显示与控制的实现 254

9.9 点阵式液晶显示控制 259

9.10 乐曲演奏电路 264

9.11 异步串行接口(UART)设计 270

9.11.1 UART传输协议 270

9.11.2 UART接口设计 271

习题9 275

第10章 Verilog设计的优化 278

10.1 设计的可综合性 278

10.2 流水线设计技术 280

10.3 资源共享 284

10.4 过程 286

10.5 阻塞赋值与非阻塞赋值 288

10.6 FPGA设计中毛刺的消除 292

习题10 294

第11章 Verilog仿真与验证 295

11.1 系统任务与系统函数 295

11.2 用户自定义元件 299

11.2.1 组合电路UDP元件 300

11.2.2 时序逻辑UDP元件 302

11.3 延时模型的表示 304

11.3.1 时间标尺定义timescale 304

11.3.2 延时的表示与延时说明块 305

11.4 测试平台 306

11.5 ModelSim仿真实例 309

11.5.1 图形界面仿真方式 310

11.5.2 命令行仿真方式 314

11.6 数字电路的仿真 315

11.6.1 组合电路的仿真 315

11.6.2 时序电路的仿真 317

习题11 318

第12章 Verilog语言的发展 319

12.1 Verilog—2001语法结构 319

12.1.1 语法结构的扩展与增强 319

12.1.2 设计管理 325

12.1.3 系统任务和系统函数的扩展 327

12.1.4 VCD文件的扩展 330

12.2 Verilog—2002语法结构 331

12.2.1 硬件单元建模 332

12.2.2 属性 335

12.2.3 编程语言接口 339

习题12 340

第13章 通信与信号处理设计实例 341

13.1 m序列发生器 341

13.1.1 m序列的原理与性质 341

13.1.2 m序列产生器设计 343

13.2 Gold码 345

13.2.1 Gold码的原理与性质 345

13.2.2 Gold码产生器设计 346

13.3 CRC校验码 348

13.4 FSK解调 350

13.5 数字过零检测与等精度频率测量 352

13.5.1 数字过零检测法 353

13.5.2 等精度频率测量 354

13.6 QPSK调制器的FPGA实现 357

13.7 FIR数字滤波器 360

13.8 FPGA信号处理基础及浮点计算实例 364

13.8.1 定点数的表示法 364

13.8.2 浮点数的表示法 365

13.8.3 定点数到浮点数的格式转换 367

13.8.4 浮点数乘法 369

13.8.5 浮点数加法 372

13.8.6 浮点数除法 375

习题13 377

附录A Verilog HDL(IEEE Std 1364—1995)关键字 378

附录B Verilog HDL(1EEE Std 1364—2001)关键字 379

附录C DE2系统介绍 380

附录D DE2—70系统介绍 386

附录E 有关术语与缩略语 393

参考文献 398