第1章 数字系统设计概述 1
1.1 引言 1
1.2 ASIC和FPGA 2
1.3 数字设计的层次 4
1.4 硬件描述语言 5
1.5 典型设计流程 7
本章小结 8
习题与思考题1 8
第2章 组合逻辑电路设计回顾 9
2.1 数字电路的基本概念 9
2.2 布尔代数和逻辑门 10
2.3 逻辑函数的化简 14
2.4 组合逻辑电路的设计方法 18
2.5 若干常用组合逻辑电路 19
本章小结 28
习题与思考题2 28
第3章 时序逻辑设计回顾 29
3.1 时序逻辑电路 29
3.2 基本存储元件 30
3.3 时序逻辑电路的分析 36
3.4 时序逻辑电路的设计 38
3.5 若干常用的时序逻辑电路 42
本章小结 48
习题与思考题3 48
第4章 Verilog硬件描述语言 50
4.1 引言 50
4.2 第1个Verilog HDL实例 50
4.3 基本词法规定 52
4.4 数据类型 54
4.5 程序框架 56
4.6 结构级描述 59
4.7 门级描述 61
4.8 Testbench 66
本章小结 68
习题与思考题4 68
第5章 组合逻辑电路 70
5.1 引言 70
5.2 连续赋值语句 70
5.3 Verilog HDL操作符 72
5.4 组合逻辑always块 75
5.5 If语句 79
5.6 case语句 85
5.7 条件语句的综合 89
5.8 可重用设计 92
5.9 组合逻辑电路设计实例 95
5.10 高效的HDL描述 112
5.11 组合逻辑电路设计要点 134
本章小结 138
习题与思考题5 138
第6章 基本时序逻辑电路 140
6.1 引言 140
6.2 时序逻辑电路 140
6.3 同步时序逻辑电路 143
6.4 基于原语的时序电路设计 146
6.5 基本存储元件的Verilog HDL实现 147
6.6 设计实例 152
6.7 时序逻辑电路的Testbench 165
6.8 时序逻辑电路设计要点 169
本章小结 177
习题与思考题6 178
第7章 同步时序逻辑电路的时序分析 179
7.1 引言 179
7.2 Verilog HDL的抽象层次 179
7.3 同步时序电路的时序分析方法 181
7.4 组合逻辑的传播延迟 184
7.5 时序逻辑电路的传播延迟 187
7.6 提高电路的最高工作频率 192
7.7 提高电路的建立时间和保持时间 194
本章小结 196
习题与思考题7 196
第8章 有限状态机 197
8.1 引言 197
8.2 有限状态机 197
8.3 米利状态机和摩尔状态机 198
8.4 状态转换图和算法状态机图 203
8.5 有限状态机的性能和时序 208
8.6 状态赋值 211
8.7 FSM的Verilog HDL实现 216
8.8 输出缓冲器 231
8.9 设计实例 238
本章小结 247
习题与思考题8 247
第9章 数据通道(FSMD) 249
9.1 引言 249
9.2 寄存器传输级设计 250
9.3 FSMD设计原理 253
9.4 FSMD设计方法和步骤 256
9.5 流水线设计 270
9.6 FSMD设计实例 285
本章小结 292
习题与思考题9 292
第10章 FSMD设计实践 294
10.1 引言 294
10.2 定点数的表示及饱和算术运算 294
10.3 混合方程 297
10.4 混合方程的直接实现 300
10.5 输入寄存器和输出寄存器 304
10.6 流水线设计和流水线执行单元 304
10.7 资源共享数据通道的设计 308
10.8 带有握手信号的数据通道 313
10.9 具有输入总线的数据通道 317
10.10 递归计算、初始化和计算 321
10.11 复杂数据通道的设计方法 326
10.12 寄存器的Schedule 329
10.13 数据流图的等价变形 337
本章小结 337
习题与思考题10 338
第11章 SPI主机接口设计 339
11.1 引言 339
11.2 SPI总线标准 339
11.3 SPI主机功能描述 342
11.4 微控制器接口模块 344
11.5 SPI主机接口模块 356
本章小结 379
习题与思考题11 379
参考文献 380