第1章 EDA技术概述 1
1.1 EDA技术的发展过程 1
1.2 EDA技术的主要内容 3
1.3 EDA系统的构成 5
1.4 EDA设计的基本流程 6
1.4.1 设计输入 6
1.4.2 逻辑综合和优化 7
1.4.3 适配 9
1.4.4 仿真 9
1.4.5 目标器件的编程和下载 10
1.4.6 硬件测试 11
1.4.7 硬件电路设计方法 11
1.5 EDA技术的发展方向 15
1.5.1 输入方式的发展趋势 15
1.5.2 具有混合信号处理能力的EDA工具 16
1.5.3 仿真工具的发展 16
1.5.4 综合工具的开发 17
1.5.5 EDA技术应用方面的发展 17
本章小结 18
习题 18
第2章 可编程逻辑器件 19
2.1 可编程逻辑器件发展概述 19
2.2 可编程逻辑器件的分类 21
2.3 简单可编程逻辑器件 22
2.3.1 电路符号表示 23
2.3.2 PROM结构 24
2.3.3 PLA基本结构 25
2.3.4 PAL基本结构 26
2.3.5 GAL基本结构 26
2.4 复杂可编程逻辑器件(CPLD) 29
2.5 现场可编程逻辑门阵列(FPGA) 35
2.6 专用集成电路(ASIC) 37
2.7 流行可编程器件介绍 40
2.7.1 Lattice公司的CPLD系列 40
2.7.2 Xilinx公司的产品 42
2.7.3 Altera公司的FPGA和CPLD器件系列 44
2.8 CPLD与FPGA的开发应用 45
2.8.1 CPLD与FPGA的开发形式 45
2.8.2 CPLD与FPGA的区别 46
2.8.3 CPLD与FPGA的编程与配置 47
本章小结 49
习题 49
第3章 可编程逻辑器件开发软件 50
3.1 MAX+plus Ⅱ软件概述 50
3.1.1 MAX+plus Ⅱ软件的特点 50
3.1.2 MAX+plus Ⅱ软件的分类 51
3.1.3 MAX+plus Ⅱ学生版软件的功能 52
3.1.4 MAX+plus Ⅱ软件的安装 56
3.1.5 MAX+plus Ⅱ软件的设计流程 60
3.2 MAX+plus Ⅱ软件设计实例 63
3.2.1 模为12计数器的设计 64
3.2.2 设计流程总结 82
3.2.3 常用菜单 83
3.2.4 工具条 85
3.2.5 模为60计数器的设计 87
3.2.6 图形的层次化设计——时钟电路设计 89
3.2.7 可调参数元件(LPM)的应用 93
3.2.8 常见错误及处理 100
3.3 Quartus Ⅱ软件概述 101
3.3.1 Quartus Ⅱ软件特点 101
3.3.2 Quartus Ⅱ软件设计流程 102
本章小结 114
习题 114
第4章 硬件描述语言VHDL 115
4.1 VHDL概述 115
4.1.1 VHDL的发展 115
4.1.2 自顶向下的设计方法 116
4.1.3 VHDL的特点 117
4.2 VHDL程序的基本结构 118
4.3 VHDL组成结构详解 120
4.3.1 实体(Entity) 120
4.3.2 结构体(Architecture) 123
4.3.3 程序包(Package) 125
4.3.4 库(Library) 127
4.3.5 配置(Configuration) 129
4.4 VHDL的语言要素 131
4.4.1 文字规则 131
4.4.2 数据对象 134
4.4.3 数据类型 137
4.5 VHDL的表达式 144
4.5.1 VHDL语言的运算操作符 144
4.5.2 操作数 146
4.6 VHDL属性描述 147
本章小结 148
习 题 148
第5章 VHDL常用语句 150
5.1 顺序语句 150
5.1.1 赋值语句 151
5.1.2 IF语句 152
5.1.3 CASE语句 156
5.1.4 子程序 158
5.1.5 LOOP语句 162
5.1.6 NEXT语句 164
5.1.7 EXIT语句 165
5.1.8 返回(RETURN)语句 165
5.1.9 WAIT语句 166
5.1.1 0 NULL语句 167
5.2 并行语句 168
5.2.1 并行信号赋值语句 168
5.2.2 进程(PROCESS)语句 171
5.2.3 元件例化语句 173
5.2.4 BLOCK语句 176
5.2.5 生成语句 179
5.3 参数化元件设计 181
5.4 并行过程调用 182
5.5 VHDL的描述方式 183
5.5.1 行为描述 183
5.5.2 数据流描述 184
5.5.3 结构描述 185
本章小结 186
习题 186
第6章 常用电路设计 187
6.1 组合电路 187
6.1.1 门电路 187
6.1.2 编码器 191
6.1.3 译码器 192
6.1.4 运算器 193
6.1.5 选择器 194
6.1.6 比较器 195
6.1.7 三态门 195
6.1.8 三态总线缓冲器 196
6.2 时序电路设计 198
6.2.1 时钟信号 198
6.2.2 复位信号 200
6.2.3 D触发器 202
6.2.4 JK触发器 205
6.2.5 计数器 206
6.2.6 寄存器 217
6.2.7 移位寄存器 219
6.2.8 堆栈 222
6.3 SRAM存储器设计 224
6.4 状态机 225
6.4.1 米立型状态机 225
6.4.2 摩尔型状态机 229
本章小结 234
习题 234
第7章 VHDL综合应用 235
7.1 多路彩灯控制器的设计 235
7.2 电梯控制器的设计 239
7.3 数字钟 247
7.4 电子密码锁 255
7.5 数字温度表 264
本章小结 271
习题 271
第8章 EDA技术实验 272
8.1 七人表决器 272
8.2 格雷码变换电路 274
8.3 BCD码加法器 277
8.4 英语字母显示电路 279
8.5 数控分频器的设计 281
8.6 可控脉冲发生器 282
8.7 正负脉宽数控调制信号发生器 285
8.8 音乐演奏电路 288
8.9 乒乓球游戏机 296
本章小结 301
附录A EDA实验开发系统介绍 302
A.1 系统概述 302
A.2 硬件结构及原理图 303
附录B 程序包文件 315
参考文献 339