目 录
第1章 EDA技术概述 1
1.1 EDA技术 2
1.1.1 EDA技术的概念 2
1.1.2 EDA技术的特点 2
1.1.3 EDA技术的发展 2
1.2 EDA技术的知识体系 3
1.2.1 EDA技术的主要内容 3
1.2.2 可编程逻辑器件 5
1.2.3 可编程逻辑语言 5
1.2.4 EDA开发工具 7
1.3 EDA设计流程 8
1.3.1 设计输入 8
1.3.2 综合 9
1.3.3 适配 9
1.3.4 仿真 10
1.3.5 编程下载 10
1.3.6 硬件验证 11
1.4 EDA技术的设计方法 11
1.4.1 基于VHDL的自顶向下的
设计方法 11
1.4.2 EDA设计方法与传统数字
系统设计方法的比较 11
1.4.3 基于IP的设计 12
1.5 给初学者的学习建议 13
本章小结 14
习题 14
第2章 可编程逻辑器件基础 17
2.1 可编程逻辑器件概述 18
2.1.1 数字集成电路的分类 18
2.1.2 可编程逻辑器件的理论基础 19
2.1.3 可编程逻辑器件的发展历程 19
2.1.4 可编程逻辑器件的分类 19
2.1.5 可编程逻辑器件的发展趋势 22
2.2 简单PLD基本结构原理 22
2.3 CPLD和FPGA的基本结构 24
2.3.1 CPLD的基本结构 25
2.3.2 FPGA的基本结构 26
2.4 CPLD和FPGA的比较 29
2.5 CPLD和FPGA的编程与配置技术 30
2.5.1 Altera公司的下载电缆 30
2.5.2 Altera公司FPGA器件的
编程/配置模式 31
2.6 可编程逻辑器件主要生产厂商及
典型器件 31
本章小结 32
习题 32
第3章 VHDL程序初步
——程序结构 35
3.1 初识VHDL程序 36
3.2 VHDL体系结构概述 38
3.2.1 VHDL体系结构 38
3.2.2 库、程序包 39
3.2.3 实体 40
3.2.4 结构体 43
3.2.5 配置 44
3.3 结构体描述方式 45
3.3.1 行为描述方式 45
3.3.2 数据流描述方式 46
3.3.3 结构描述方式 48
3.4 D触发器的VHDL描述概述 50
3.4.1 D触发器的VHDL描述 50
3.4.2 不完整条件语句 54
本章小结 56
习题 56
第4章 VHDL基础 59
4.1 VHDL的语言要素 60
4.1.1 VHDL文字规则 60
4.1.2 数据对象 62
4.1.3 VHDL数据类型 67
4.1.4 VHDL数据类型转换 69
4.1.5 VHDL运算符 70
4.2 VHDL语句 72
4.2.1 VHDL的顺序语句 72
4.2.2 VHDL的并行语句 86
4.2.3 VHDL的属性语句 99
本章小结 101
习题 101
第5章 QuartusⅡ集成开发软件
初步 107
5.1 QuartusⅡ软件概述 108
5.1.1 QuartusⅡ软件开发流程 108
5.1.2 QuartusⅡ软件的特点 108
5.1.3 QuartusⅡ软件的图形用户
界面 109
5.2 原理图编辑方法 109
5.2.1 半加器电路输入与编辑 110
5.2.2 半加器的综合 116
5.2.3 半加器的仿真 117
5.2.4 半加器的编程下载 124
5.3 用文本编辑方法设计编码器 130
5.3.1 8线-3线编码器的文本输入
与编辑 131
5.3.2 综合与仿真 132
5.3.3 生成符号文件和RTL
阅读器 132
5.4 ModelSim软件应用 133
5.4.1 ModelSim软件的使用方法 133
5.4.2 使用ModelSim仿真
QuartusⅡ已有文件 138
5.4.3 ModelSim的时序仿真 138
本章小结 139
习题 139
第6章 VHDL设计方法 143
6.1 自底向上混合设计——六十进制
计数器设计 144
6.2 自顶向下混合设计 148
6.2.1 十六进制计数译码
显示电路设计 148
6.2.2 一位全加器的自顶向下
混合设计 155
本章小结 158
习题 158
第7章 有限状态机设计 159
7.1 有限状态机概述 160
7.1.1 有限状态机的概念和分类 160
7.1.2 有限状态机的状态转换图 161
7.1.3 有限状态机的设计流程 161
7.1.4 有限状态机的VHDL描述 162
7.2 Moore型状态机 166
7.2.1 三进程描述 166
7.2.2 双进程描述 168
7.2.3 单进程描述 169
7.3 Mealy型状态机 171
7.4 设计实例——十字路口交通灯
控制器 172
7.5 Quartus软件状态图输入法 175
本章小结 178
习题 179
第8章 宏功能模块及应用 181
8.1 QuartusⅡ宏功能模块概述 182
8.2 宏功能模块定制管理器 183
8.2.1 宏功能模块定制管理器
的使用 183
8.2.2 8位加法计数器的定制 183
8.2.3 宏功能模块定制管理器
文件 187
8.3 宏功能模块的应用 187
8.3.1 Arithmetic宏功能模块 187
8.3.2 Gates宏功能模块 191
8.3.3 I/O宏功能模块 193
8.3.4 Memory Compiler宏功能
模块 197
本章小结 203
习题 204
第9章 VHDL基本逻辑电路设计 205
9.1 基本组合逻辑电路设计 206
9.1.1 门电路设计 206
9.1.2 编码器设计 209
9.1.3 译码器设计 213
9.1.4 加、减法器设计 220
9.1.5 双向电路和三态控制
电路设计 223
9.1.6 ROM设计 225
9.1.7 乘法器设计 227
9.2 基本时序逻辑电路设计 229
9.2.1 触发器设计 229
9.2.2 移位寄存器设计 234
9.2.3 计数器设计 237
9.2.4 分频器设计 242
本章小结 248
习题 248
第10章 接口电路设计 251
10.1 LED控制电路设计 252
10.1.1 基础知识 252
10.1.2 12路彩灯控制器的设计 252
10.1.3 彩灯控制电路的设计 254
10.2 蜂鸣器控制电路设计 256
10.2.1 基础知识 256
10.2.2 蜂鸣器控制电路的设计 257
10.3 拨码开关控制电路设计 260
10.3.1 基础知识 260
10.3.2 拨码开关控制电路的设计 261
10.4 按键消抖电路设计 263
10.4.1 同步整形消抖电路的设计 263
10.4.2 计数法消抖电路的设计 264
10.5 数码管控制电路设计 266
10.5.1 基础知识 266
10.5.2 静态数码管显示电路的
设计 267
10.5.3 动态数码管扫描显示电路
的设计 270
10.6 矩阵键盘控制电路设计 274
10.6.1 基础知识 274
10.6.2 矩阵键盘扫描电路的设计 275
10.7 8×8点阵显示控制电路设计 279
10.7.1 基础知识 279
10.7.2 行扫描8×8点阵数码管
显示电路的设计 280
10.7.3 列扫描16×16点阵数码管
显示电路的设计 282
本章小结 286
习题 286
参考文献 287
