Chapter 01概述 2
1.1背景 2
1.2数字逻辑 5
1.3 Verilog 7
Chapter 02基本逻辑门 9
2.1真值表和逻辑表达式 9
2.1.1 3种基本逻辑门 9
2.1.2 4种常用逻辑门 10
2.2正逻辑和负逻辑:德摩根定律 12
2.3基于乘积和的设计 14
2.4基于和项积的设计 15
习题 21
Chapter 03布尔代数和逻辑表达式 26
3.1布尔定律(Boolean Theorems) 26
3.1.1单变量布尔定律 26
3.1.2双变量和三变量的布尔定律 27
3.2卡诺图(Karnaugh Maps) 30
3.2.1 2变量卡诺图 31
3.2.2 3变量卡诺图 32
3.2.3 4变量卡诺图 34
3.3计算机化简方法 35
3.3.1乘积项的表格形式 35
3.3.2素蕴含项 36
3.3.3本质素蕴含项 38
习题 43
Chapter 04实现数字电路 46
4.1实现门 46
4.2晶体管一晶体管逻辑(TTL) 48
4.3可编程逻辑器件(PLD和CPLD) 49
4.3.1一个2输入1输出的PLD 49
4.3.2 GAL 16V8 50
4.3.3 CPLD 52
4.4现场可编程门阵列(FPGA) 52
习题 55
Chapter 05组合逻辑 58
5.1多路选择器(Multiplexer) 58
5.1.1 2选1多路选择器 58
5.1.2 4选1多路选择器 59
5.1.3 4位2选1多路选择器 60
5.1.4 4选1多路选择器的逻辑方程 65
5.2 7段显示管 73
5.3比较器 86
5.3.1级联比较器 86
5.3.2 TTL比较器 87
5.4译码器和编码器 92
5.4.1译码器(Decoders) 92
5.4.2 TTL译码器 93
5.4.3编码器(Encoder) 94
5.4.4优先编码器(Priority Encoder) 94
5.4.5 TTL编码器 95
5.5编码转换器 101
5.5.1二进制—BCD码转换器 101
5.5.2移位加3算法(Shift and Add 3 Algorithm) 101
5.5.3格雷码转换器(Gray Code Converters) 103
习题 108
Chapter 06运算电路 112
6.1加法器 112
6.1.1半加器 112
6.1.2全加器 112
6.1.3进位和溢出 114
6.1.4 TTL加法器 116
6.2减法器 120
6.2.1半减器 120
6.2.2全减器 121
6.2.3加/减法电路 122
6.3移位器 125
6.4乘法运算 126
6.4.1二进制乘法 126
6.4.2有符号乘法 129
6.5除法运算 132
6.6算术逻辑单元(ALU) 135
习题 138
Chapter 07时序电路 142
7.1锁存器和触发器 142
7.1.1 SR锁存器 142
7.1.2时钟触发SR锁存器 143
7.1.3 D锁存器 143
7.1.4边沿触发的D触发器 144
7.2寄存器(Registers) 151
7.3移位寄存器 156
7.4计数器(Counters) 162
7.4.1任意波形的实现 164
7.4.2 3位计数器的Verilog行为描述 166
7.5脉冲宽度调制器(PWM) 175
7.5.1使用PWM控制一个直流电动机的速度 176
7.5.2使用PWM控制一个伺服电动机的位置 177
7.5.3产生一个频率为2 kHz的PWM信号 179
7.6 BASYS2/ NEXYS2板例程 181
习题 192
Chapter 08有限状态机 196
8.1米里状态机和摩尔状态机 196
8.2摩尔状态机序列检测器 196
8.3米里状态机序列检测器 198
习题 213
Chapter 09数据通道和控制单元 215
9.1 Verilog中的while语句 215
9.2数据通道和控制单元 216
Chapter 10整合数据通道和控制单元 238
10.1改进的GCD算法 238
10.2改进的整数平方根算法 243
Chapter 11存储器(Memory) 249
11.1只读存储器 249
11.2分布式的存储器 253
Chapter 12 VGA控制器 263
12.1时序 263
12.2其他标准图像模式 265
Chapter 13 PS/2接口 289
13.1概述 289
13.2键盘 291
13.3鼠标 295
附录A 代码仿真及设计实现 305
附录B 数字系统 314
附录C Verilog快速参考指南 324