引论 1
第1章 数制与编码 12
1-1 数制 12
1.1.1 十进制和任意进制 12
1.1.2 二进制 13
1.1.3 二进制数的算术运算 16
1.1.4 十六进制和八进制 19
1-2 二值编码 20
1.2.1 格雷码 21
1.2.2 带符号数的编码表示法 23
1.2.3 用反码和补码进行加/减运算 24
1.2.4 二-十进制码 27
1.2.5 ASCII码 30
1-3 可靠性编码 31
1.3.1 奇偶校验码 32
1.3.2 Berger码 32
1.3.3 纠错码的基本概念 33
1-4 应用实例 33
本章习题 35
第2章 组合逻辑函数 39
2-1 布尔代数 39
2.1.1 代入规则 41
2.1.2 反演规则 41
2.1.3 对偶规则 42
2-2 逻辑函数和逻辑表达式 42
2.2.1 导出逻辑表达式与真值表 43
2.2.2 积之和表达式与最小项表达式 44
2.2.3 和之积表达式与最大项表达式 46
2-3 逻辑图 48
2-4 卡诺图及逻辑化简 52
2.4.1 真值表与卡诺图 52
2.4.2 表达式与卡诺图 54
2.4.3 由卡诺图写出最简表达式 57
2.4.4 未完全规定的逻辑函数的化简 61
2-5 计算机辅助逻辑化简 63
2.5.1 逻辑函数的描述 64
2.5.2 蕴涵 65
2.5.3 一种启发式逻辑函数最小化算法 66
2.5.4 ESPRESSO算法 67
本章习题 69
第3章 组合逻辑电路设计 77
3-1 集成逻辑电路的电气特性 77
3.1.1 集成电路的主要电气指标 78
3.1.2 逻辑电路的输出结构 83
3.1.3 正、负逻辑极性 84
3.1.4 逻辑符号 85
3-2 组合逻辑电路的门级实现 86
3-3 常用组合逻辑模块及其应用 92
3.3.1 4位并行加法器 92
3.3.2 数值比较器 95
3.3.3 编码器 96
3.3.4 译码器 98
3.3.5 数据选择器 104
3-4 基于功能分解的组合电路设计方法 109
3.4.1 功能分析和函数分解 109
3.4.2 改进原电路,实现逻辑功能 113
3.4.3 积木块化设计 115
3-5 险象与竞争 118
3.5.1 不考虑延迟时的电路输出 119
3.5.2 逻辑险象及其消除 119
3.5.3 功能险象 122
3.5.4 输入信号的上升及下降时间引起的毛刺 125
3.5.5 动态险象 125
本章习题 127
第4章 时序电路基础 135
4-1 集成锁存器和触发器 135
4.1.1 S-R锁存器 135
4.1.2 时钟S-R锁存器 140
4.1.3 D触发器 142
4.1.4 J-K触发器 147
4.1.5 T与T'触发器 150
4.1.6 脉冲反馈型异步计数器 151
4-2 同步时序电路 153
4.2.1 同步时序电路的结构和代数法描述 153
4.2.2 米里型电路的状态表(图) 155
4.2.3 莫尔型电路的状态表(图) 158
4.2.4 功能表描述 159
4.2.5 自启动 161
4.2.6 异步信号的处理 164
4-3 集成计数器及其应用 166
4.3.1 集成计数器 166
4.3.2 任意模计数器 169
4.3.3 计数器的扩展 171
4.3.4 集成计数器应用举例 173
4-4 集成移位寄存器及其应用 176
4.4.1 集成移位寄存器 176
4.4.2 移位型计数器 177
4.4.3 串-并变换器及并-串变换器 178
4.4.4 线性移位寄存器 181
4-5 存储器 182
4.5.1 随机访问存储器 183
4.5.2 只读存储器 190
4.5.3 存储器扩展与地址译码 194
4-6 异步时序电路分析 196
4.6.1 脉冲异步电路分析 197
4.6.2 电平异步电路分析 202
4-7 应用实例 210
4.7.1 数码预置电路 211
4.7.2 键盘扫描电路 211
4.7.3 报警装置的密码控制电路 213
本章习题 216
第5章 时序电路设计 232
5-1 原始状态表的建立 232
5-2 用触发器实现同步时序电路 239
5.2.1 状态化简 240
5.2.2 状态分配 244
5.2.3 导出激励方程和输出方程 245
5.2.4 设计举例 248
5.2.5 时钟偏移 249
5-3 用MSI时序模块实现同步时序电路 251
5.3.1 用集成计数器设计同步时序电路 252
5.3.2 用多D触发器设计同步时序电路 255
5-4 脉冲异步时序电路的设计 257
本章习题 262
第6章 数字系统设计与仿真 267
6-1 算法流程图及ASM图 268
6.1.1 算法流程图 270
6.1.2 算法设计 271
6.1.3 电路划分与逻辑框图 274
6.1.4 数据处理单元的设计 277
6.1.5 ASM图 278
6.1.6 控制单元的设计 282
6.1.7 设计举例 286
6-2 硬件描述语言VHDL 294
6.2.1 设计实体 295
6.2.2 数据对象、类型及运算符 298
6.2.3 顺序语句 301
6.2.4 并行语句 303
6.2.5 程序包与设计库 309
6.2.6 应用实例 310
6-3 数字系统的仿真验证 317
6.3.1 逻辑验证和逻辑模拟 317
6.3.2 逻辑仿真的工具及应用 319
本章习题 325
第7章 可编程逻辑器件及其应用 328
7-1 PLD的基本原理 330
7.1.1 PLD的基本组成 330
7.1.2 PLD的编程 331
7.1.3 阵列结构 331
7.1.4 PLD中阵列的表示方法 333
7-2 简单可编程逻辑器件SPLD 335
7.2.1 可编程只读存储器PROM 336
7.2.2 可编程逻辑阵列PLA 340
7.2.3 可编程阵列逻辑PAL 343
7.2.4 通用阵列逻辑GAL 347
7.2.5 输出逻辑宏单元OLMC 348
7.2.6 OLMC的输出结构 349
7-3 高密度可编程逻辑器件HDPLD 351
7.3.1 HDPLD概述 351
7.3.2 HDPLD组成 352
7.3.3 HDPLD的宏单元 360
7.3.4 HDPLD的输入/输出单元 362
7.3.5 HDPLD的可编程连线资源 364
7.3.6 ISP和ICR编程技术 366
7-4 用PLD实现数字系统 367
7.4.1 常用PLD器件与开发工具 367
7.4.2 设计流程 369
7.4.3 设计实例 370
本章习题 383
第8章 数字电路测试和可测试设计 392
8-1 数字电路的故障检测 392
8.1.1 故障模型 394
8.1.2 用通路敏化法导出测试码 395
8.1.3 构成完全检测测试集 397
8.1.4 伪穷举测试和伪随机测试 398
8.1.5 同步时序电路的测试 399
8-2 数字电路的可测试设计 400
8.2.1 可控制性和可观察性 400
8.2.2 改善电路可测试性的方法 402
8.2.3 扫描设计技术 405
8-3 边界扫描设计 408
8.3.1 边界扫描芯片的结构 408
8.3.2 利用边界扫描设计进行板级故障检测 413
8-4 内自测试 415
8.4.1 测试设备和内自测试组成 415
8.4.2 特征分析器 416
8.4.3 内建逻辑模块观察器 418
本章习题 420
第9章 集成数模和模数转换器的原理与组成 423
9-1 集成数模转换器 423
9.1.1 常用D/A转换技术 425
9.1.2 集成DAC的组成 435
9.1.3 DAC的主要技术参数 436
9.1.4 集成DAC芯片的选择 439
9.1.5 典型集成DAC应用举例 441
9-2 集成模数转换器 444
9.2.1 A/D转换的一般过程 445
9.2.2 常用A/D转换技术 449
9.2.3 集成ADC的组成 466
9.2.4 ADC的主要技术参数 467
9.2.5 集成ADC芯片的选择 468
9.2.6 典型集成ADC应用举例 470
9-3 ADC和DAC的应用实例——数据采集和控制系统 471
9.3.1 系统功能 472
9.3.2 系统方案 472
9.3.3 电路设计 474
本章习题 476
参考书目 488
汉英名词术语对照 489