第一部分 引言 2
第1章 数字信息简述 2
1.1数字信号 2
1.2数字信号噪声容限 3
1.3数字信号表示复杂数据 6
1.4数字逻辑函数 8
1.5数字电路与系统的硬件描述语言(VHDL) 10
1.6系统中的数字逻辑 11
总结 12
文献解读 13
练习 13
第2章 数字系统设计实践 15
2.1设计过程 15
2.2数字系统由芯片和电路板组成 19
2.3计算机辅助设计工具 22
2.4摩尔定律和数字系统发展 23
总结 24
文献解读 25
练习 25
第二部分 组合逻辑 28
第3章 布尔代数 28
3.1原理 28
3.2内容 29
3.3对偶函数 30
3.4标准型 31
3.5从方程式到逻辑门 31
3.6硬件描述语言中的布尔表达式 33
总结 36
文献解读 36
练习 36
第4章 CMOS逻辑电路 38
4.1开关逻辑 38
4.2 MOS晶体管的开关模型 41
4.3 CMOS门电路 46
总结 53
文献解读 53
练习 53
第5章 CMOS电路的延时和功耗 56
5.1 CMOS静态延时 56
5.2大负载下的驱动扇出 58
5.3逻辑努力的扇入 59
5.4延时计算 61
5.5延时优化 63
5.6导线延时 65
5.7 CMOS电路的功耗 68
总结 69
文献解读 70
练习 70
第6章 组合逻辑电路 73
6.1组合逻辑 73
6.2闭包 74
6.3真值表、最小项、“与”门标准形式 74
6.4“与”电路的蕴含项 76
6.5卡诺图 78
6.6封装函数 80
6.7从封装转变为门 81
6.8不完全的指标函数 81
6.9实现和之积 82
6.10冒险 84
总结 86
文献解读 86
练习 86
第7章 组合逻辑电路的VHDL描述 89
7.1基本数字电路的VHDL描述 89
7.2素数电路的测试文件 100
7.3七段译码器 104
总结 108
文献解读 109
练习 109
第8章 组合逻辑电路基本单元 111
8.1多位标记 111
8.2译码器 111
8.3多路复用器 115
8.4编码器 121
8.5仲裁器和优先编码器 125
8.6比较器 129
8.7移位器 132
8.8 ROM 133
8.9读/写存储器 137
8.10可编程逻辑阵列 139
8.11数据表 140
8.12知识产权模块 141
总结 142
文献解读 142
练习 143
第9章 组合逻辑电路设计实例 144
9.1倍三电路 144
9.2明天电路 147
9.3优先级仲裁器 149
9.4井字游戏电路 151
总结 158
练习 159
第三部分 算术运算电路 162
第10章 算术运算电路 162
10.1二进制数 162
10.2二进制加法 164
10.3负数和减法 168
10.4乘法器 174
10.5除法 176
总结 179
练习 180
第11章 定点数和浮点数 184
11.1误差的表示:准度、精度和分辨率 184
11.2定点数 185
11.3浮点数 189
总结 194
文献解读 195
练习 195
第12章 快速运算电路 197
12.1超前进位 197
12.2 Booth重编码 202
12.3华莱士树 205
12.4综合注意事项 209
总结 210
文献解读 210
练习 210
第13章 算术运算电路设计实例 212
13.1复数乘法器 212
13.2定点格式和浮点格式之间的转换 214
13.3 FIR滤波器 218
总结 220
文献解读 220
练习 220
第四部分 同步时序逻辑 224
第14章 时序逻辑 224
14.1时序电路 224
14.2同步时序电路 226
14.3交通灯控制器 228
14.4状态分配 230
14.5有限状态机的实现 231
14.6有限状态机的VHDL实现 233
总结 239
文献解读 240
练习 240
第15章 时序约束 242
15.1传播延时和污染延时 242
15.2触发器 244
15.3建立时间和保持时间约束 244
15.4时钟偏移的影响 247
15.5时序示例 248
15.6时序和逻辑综合 249
总结 250
文献解读 251
练习 251
第16章 数据通路的时序逻辑 254
16.1计数器 254
16.2移位寄存器 261
16.3控制和数据划分 265
总结 279
练习 279
第17章 分解有限状态机 281
17.1闪光器设计 281
17.2交通信号灯控制器 289
总结 296
练习 296
第18章 微代码 299
18.1简单的微代码状态机 299
18.2指令序列 302
18.3多路分支 306
18.4多种指令类型 308
18.5微代码子程序 311
18.6简单的计算器 313
总结 319
文献解读 320
练习 320
第19章 时序示例 322
19.1 3分频计数器 322
19.2 SOS检测器 324
19.3井字棋游戏 327
19.4赫夫曼编码器/解码器 329
总结 335
文献解读 335
练习 335
第五部分 实践设计 338
第20章 验证和测试 338
20.1设计验证 338
20.2测试 340
总结 344
文献解读 344
练习 345
第六部分 系统级设计 348
第21章 系统级设计 348
21.1系统设计过程 348
21.2设计规范 348
21.3划分 352
总结 354
文献解读 355
练习 355
第22章 接口和系统级时序 356
22.1接口时序 356
22.2接口划分和选择 358
22.3串行和打包接口 359
22.4同步时序 360
22.5时序表 361
22.6接口和时序示例 363
总结 366
练习 367
第23章 流水线 369
23.1普通流水线 369
23.2流水线示例 371
23.3逐位进位加法器流水线结构设计示例 373
23.4流水线停滞 376
23.5双重缓冲 378
23.6负载平衡 380
23.7可变负载 381
23.8资源共享 385
总结 386
文献解读 386
练习 386
第24章 互连 388
24.1抽象互连 388
24.2总线 388
24.3交叉开关 390
24.4互连网络 392
总结 394
文献解读 395
练习 395
第25章 存储系统 396
25.1存储基元 396
25.2位片和堆存储器 399
25.3交叉存储器 400
25.4高速缓存 403
总结 406
文献解读 406
练习 406
第七部分 异步逻辑 410
第26章 异步时序电路 410
26.1流表分析 410
26.2流表综合:触发电路 412
26.3竞争和状态赋值 415
总结 418
文献解读 419
练习 419
第27章 触发器 421
27.1锁存器内部结构 421
27.2触发器的内部结构 423
27.3 CMOS锁存器和触发器 425
27.4锁存器的流表 426
27.5 D触发器的流表综合 427
总结 429
文献解读 429
练习 429
第28章 亚稳态和同步故障 431
28.1同步故障 431
28.2亚稳态 432
28.3进入并且留在非法状态的可能性 434
28.4亚稳态的验证 435
总结 438
文献解读 438
练习 438
第29章 同步器的设计 440
29.1同步器的用途 440
29.2强力同步器 441
29.3多比特信号问题 442
29.4 FIFO同步器 443
总结 450
文献解读 450
练习 450
附录 VHDL编码风格和语法指南 454
附录A VHDL编码风格 454
附录B VHDL语法指南 462
参考文献 483