CPLD/FPGA与ASIC设计实践教程

2010年科学出版社出版的图书
《CPLD/FPGA与ASIC设计实践教程》是2010年9月1日科学出版社出版的图书，作者是邹道胜
内容简介
《CPLD/FPGA与ASIC设计实践教程(第2版)》以大规模可编程逻辑器件为基础，详细介绍了PLD、CPLD/FPGA器件的原理和开发技术。第1～3章介绍EDA技术和可编程逻辑器件的原理，CPLD/FPGA器件的性能指标与选型、编程方法和下载电路，以及常用EDA设计软件的使用。第4～6章先详细介绍Verilog HDL语言，然后按照数字电路与逻辑设计课程的顺序，通过实例说明常用数字逻辑电路的实现方法，并讨论利用Verilog HDL设计可综合的数字电路的方法与技巧。第7、8章是设计实验部分，包括经典数字电路设计练习和综合性设计项目。第9章介绍嵌入式系统的发展趋势、SoPC设计技术及其应用等。
《CPLD/FPGA与ASIC设计实践教程(第2版)》可作为高等院校电子电气类、机电类等专业数字系统设计课程的教材，也可作为相关领域工程技术人员的参考书。
图书目录
丛书序
第二版前言
第一版前言
第1章 绪论 1
1.1 概述 1
1.1.1 电子器件的发展 1
1.1.2 电子设计技术的发展 2
1.2 EDA技术的发展史 2
1.2.1 EDA概念 2
1.2.2 EDA技术的发展 3
1.3 CPLD/FPGA的发展史 4
1.3.1 数字集成电路的分类 4
1.3.2 可编程逻辑器件的发展史 5
1.4 常用EDA设计工具介绍 6
1.4.1 电子电路设计与仿真工具 6
1.4.2 PCB设计软件 7
1.4.3 IC设计软件 7
1.4.4 CPLD/FPGA应用设计工具 8
1.5 数字系统的设计方法 13
1.5.1 数字电路设计的基本方法 13
1.5.2 现代数字系统的设计方法 14
1.5.3 CPLD/FPGA应用设计流程 15
1.5.4 基于Quartus II的设计流程 17
1.5.5 基于ISE的设计流程 18
思考与练习题 20
第2章 可编程逻辑器件基础 22
2.1 引言 22
2.2 PLD器件及其分类 23
2.2.1 PLD器件 23
2.2.2 PLD的分类 24
2.3 可编程逻辑器件结构简介 24
2.3.1 标准门单元、电路示意和PAL 等效图 24
2.3.2 PLD的逻辑表示方法 24
2.3.3 PLD的基本结构 25
2.4 CPLD/FPGA的结构和原理 30
2.4.1 EPLD 和CPLD的基本结构 30
2.4.2 FPGA 的基本结构 36
2.5 CPLD/FPGA 器件的编程 41
2.5.1 Altera公司的EPLD/CPLD器件及其配置与编程 41
2.5.2 Lattice公司的ISP-CPLD器件及其编程 47
2.5.3 Xilinx公司的CPLD/FPGA器件及其编程 48
2.5.4 CPLD/FPGA通用下载电路设计 50
2.6 边界扫描测试技术 53
思考与练习题 55
第3章 EDA工具应用设计实践 56
3.1 Quartus II简介 56
3.2 Quartus II的使用方法 57
3.2.1 原理图输入法 57
3.2.2 HDL输入法 70
思考与练习题 73
第4章 数字系统与Verilog HDL描述 74
4.1 Verilog HDL的一般结构 74
4.1.1 电子系统、电路和模块 74
4.1.2 Verilog HDL模块的结构 75
4.1.3 Verilog HDL模块的描述方式 77
4.2 数字电路的Verilog HDL模型与设计 85
4.2.1 交通灯监视电路设计 85
4.2.2 四位二进制数/8421BCD码 86
4.2.3 函数发生器设计 87
4.2.4 四选一数据选择器 90
4.2.5 三进制计数器设计 92
4.2.6 移位寄存器设计 94
4.2.7 伪随机序列信号发生器设计 95
思考与练习题 97
第5章 Verilog HDL语言基础 99
5.1 为什么要用Verilog HDL 99
5.1.1 概述 99
5.1.2 Verilog HDL和VHDL比较 99
5.1.3 Verilog HDL语言的主要功能 102
5.1.4 传统数字电路设计方法的回顾 102
5.2 Verilog HDL基础语法 104
5.2.1 Verilog HDL的词法 104
5.2.2 Verilog HDL的数据类型 106
5.2.3 Verilog HDL运算符及表达式 110
5.2.4 系统任务与系统函数 116
5.2.5 Verilog HDL的仿真 120
5.3 Verilog HDL行为描述 124
5.3.1 行为描述的结构 124
5.3.2 语句块 127
5.3.3 控制语句 129
5.3.4 赋值语句 135
5.3.5 任务与函数结构 140
5.3.6 时序控制 143
5.3.7 用户定义的原语 144
思考与练习题 147
第6章 Verilog HDL设计进阶 149
6.1 Verilog HDL编程风格 149
6.2 组合逻辑电路设计 151
6.2.1 基本的门电路 151
6.2.2 数据比较器 153
6.2.3 数据选择器 153
6.2.4 编码器和译码器设计 154
6.3 时序逻辑电路设计 155
6.3.1 触发器设计 156
6.3.2 数据锁存器设计 157
6.3.3 数据寄存器设计 157
6.3.4 移位寄存器设计 158
6.3.5 计数器设计 158
6.4 状态机设计 160
6.4.1 状态机的结构 160
6.4.2 利用Verilog HDL设计状态机 160
6.5 设计方法与技巧 164
6.5.1 逻辑综合 164
6.5.2 综合工具的性能 165
6.5.3 综合的一般原则 165
6.5.4 HDL编码指导 167
6.5.5 如何消除毛刺 168
6.5.6 阻塞赋值与非阻塞赋值的区别 169
6.5.7 代码对综合的影响 172
6.5.8 用always 块实现较复杂的组合逻辑电路 175
6.5.9 Verilog HDL中函数的使用 176
6.5.10 Verilog HDL中任务的使用 176
思考与练习题 177
第7章 综合设计实例 180
7.1 篮球30秒可控计时器 180
7.2 汽车尾灯控制电路 183
7.3 交通控制灯逻辑电路 186
7.4 简易电子钟 189
7.5 环行计数器与扭环行计数器 192
7.6 洗衣机控制电路 194
7.7 八位可逆计数器和三角波发生器 200
7.8 简易数字频率计 202
思考与练习题 208
第8章 设计实验项目 212
8.1 可逆四位码变换器 212
8.2 可逆计数器 213
8.3 步进电机脉冲分配器电路 213
8.4 伪随机信号产生器 214
8.5 舞台彩灯控制电路 215
8.6 数字跑表电路 216
8.7 电子密码锁 219
8.8 数字式竞赛抢答器 224
8.9 脉冲按键电话显示器 227
8.10 出租车自动计费器设计 231
8.11 电话计费器 235
8.12 多功能数字钟设计 240
第9章 SoPC设计 244
9.1 SoPC概述 244
9.2 SoPC设计 245
9.2.1 FPGA的主要应用 245
9.2.2 SoPC设计技术 246
9.2.3 SoPC应用设计 249
9.3 SoPC设计实例 253
9.3.1 设计项目 253
9.3.2 设计任务 253
9.3.3 总体设计 253
9.3.4 概要设计 254
9.3.5 详细设计 256
9.3.6 下载测试 263
9.3.7 设计实现 263
9.3.8 部分程序源代码 267
附录A Verilog HDL关键字 275
附录B MY-FPGA-EP1C3开发板介绍 276
参考文献 280
参考文献