现代数字电路与系统设计
作者:江国强 著
出版时间:2017年版
内容简介
全书共8章,包括Verilog HDL、门电路的设计、组合逻辑电路的设计、触发器的设计、时序逻辑电路的设计、存储器的设计、常用EDA软件。数字电路及系统设计都是基于Verilog HDL完成的,每个设计都经过了电子设计自动化(EDA)软件的编译和仿真,或经过EDA试验开发系统平台的验证,确保无误。
目录
目 录\t
第1章 Verilog HDL\t9
1.1 Verilog HDL设计模块的基本结构\t9
1.1.1 模块端口定义\t9
1.1.2 模块内容\t10
1.2 Verilog HDL的词法\t12
1.2.1 空白符和注释\t12
1.2.2 常数\t12
1.2.3 字符串\t13
1.2.4 关键词\t13
1.2.5 标识符\t14
1.2.6 操作符\t14
1.2.7 Verilog HDL数据对象\t17
1.3 Verilog HDL的语句\t20
1.3.1 赋值语句\t20
1.3.2 条件语句\t21
1.3.3 循环语句\t23
1.3.4 结构声明语句\t24
1.3.5 语句的顺序执行与并行执行\t26
1.4 Verilog HDL仿真\t26
1.4.1 Verilog HDL仿真支持语句\t27
1.4.2 Verilog HDL测试平台软件的设计\t31
第2章 门电路的设计\t35
2.1 用assign语句设计门电路\t35
2.1.1 四-2输入与非门7400的设计\t36
2.1.2 六反相器7404的设计\t37
2.2 用门级元件例化方式设计门电路\t38
2.2.1用元件例化方式设计四-2输入端与非门7400\t38
2.2.2 用门级元件例化方式设计六反相器7404\t39
2.3 三态输出电路的设计\t39
2.3.1 三态输出门的设计\t39
2.3.2 集成三态输出缓冲器的设计\t41
第3章 组合逻辑电路的设计\t44
3.1 算术运算电路的设计\t44
3.1.1 一般运算电路的设计\t44
3.1.2 集成运算电路的设计\t51
3.2 编码器的设计\t55
3.2.1 普通编码器的设计\t55
3.2.2 集成编码器的设计\t59
3.3 译码器的设计\t63
3.3.1 4线-10线BCD译码器7442的设计\t63
3.3.2 4线-16译码器74154的设计\t64
3.3.3 3线-8线译码器74138的设计\t66
3.3.4 七段显示译码器7448的设计\t67
3.4 数据选择器的设计\t69
3.4.1 8选1数据选择器74151的设计\t69
3.4.2 双4选1数据选择器74153的设计\t71
3.4.3 16选1数据选择器161mux的设计\t72
3.4.4 三态输出8选1数据选择器74251的设计\t73
3.5 数值比较器的设计\t75
3.5.1 4位数值比较器7485的设计\t75
3.5.2 8位数值比较器74684的设计\t76
3.5.3 带使能控制的8位数值比较器74686的设计\t77
3.6 奇偶校验器的设计\t78
3.6.1 8位奇偶产生器/校验器74180的设计\t79
3.6.2 9位奇偶产生器74280\t80
3.7 码转换器的设计\t81
3.7.1 BCD编码之间的码转换器的设计\t81
3.7.2 数制之间的码转换器的设计\t84
3.7.3 明码与密码转换器的设计\t88
第4章 触发器的设计\t91
4.1 RS触发器的设计\t91
4.1.1 基本RS触发器的设计\t91
4.1.2 钟控RS触发器的设计\t93
4.2 D触发器的设计\t94
4.2.1 D锁存器的设计\t94
4.2.2 D触发器的设计\t94
4.2.3 集成D触发器的设计\t95
4.3 JK触发器的设计\t96
4.3.1具有置位端的JK触发器7471的设计\t96
4.3.2 具有异步复位的JK触发器7472\t98
4.3.3 具有异步置位和共用异步复位与时钟的双JK触发器7478的设计\t99
第5章 时序逻辑电路的设计\t101
5.1 数码寄存器的设计\t101
5.1.1 8D锁存器74273的设计\t101
5.1.2 8D锁存器(三态输出)CT74373的设计\t102
5.2 移位寄存器的设计\t103
5.2.1 4位移位寄存器74178的设计\t104
5.2.2 双向移位寄存器74194的设计\t105
5.3 计数器的设计\t106
4.3.1 十进制同步计数器(异步复位)74160的设计\t106
5.3.2 4位二进制同步计数器(异步复位)74161的设计\t108
5.3.3 4位二进制同步计数器(同步复位)74163的设计\t110
5.3.4 4位二进制同步加/减计数器74191的设计\t111
5.4 专用数字电路的设计\t112
5.4.1 顺序脉冲发生器的设计\t112
5.4.2 序列信号发生器的设计\t114
5.4.3 伪随机信号发生器的设计\t114
5.4.4 序列信号检测器的设计\t116
5.4.5 流水灯控制器的设计\t117
5.4.6 抢答器的设计\t118
5.4.7 串行数据检测器的设计\t120
第6章 存储器的设计\t124
6.1 RAM的设计\t124
6.2 ROM的设计\t125
第7章 数字电路系统的设计\t128
7.1 数字电路系统的设计方法\t128
7.1.1 数字电路系统设计的图形编辑方式\t128
7.1.2 用元件例化方式实现系统设计\t130
7.2 8位串行加法器的设计\t132
7.2.1 基本元件的设计\t132
7.2.2 8位串行加法器的顶层设计\t135
7.3 24小时计时器的设计\t137
7.3.1 2千万分频器的设计\t137
7.3.2 60进制分频器的设计\t138
7.3.3 24进制分频器的设计\t139
7.3.4 24小时计时器的顶层设计\t140
7.4 万年历的设计\t140
7.4.1 控制器的设计\t141
7.4.2 数据选择器mux_4的设计\t142
7.4.3 数据选择器mux_16的设计\t142
7.4.4年月日计时器的设计\t143
7.4.5 万年历的顶层设计\t145
7.5 倒计时器的设计\t146
7.5.1 控制器contr100_s的设计\t146
7.5.2 60进制减法计数器的设计\t147
7.5.3 24进制减法计数器的设计\t148
7.5.4 100进制减法计数器的设计\t149
7.5.5 倒计时器的顶层设计\t149
7.6 交通灯控制器的设计\t150
7.6.1 100进制减法计数器的设计\t151
7.6.2 控制器的设计\t151
7.6.3 交通灯控制器的顶层设计\t152
7.7 出租车计费器的设计\t154
7.7.1 计费器的设计\t155
7.7.2 出租车计费器的顶层设计\t156
7.8 波形发生器的设计\t156
7.8.1 计数器cnt256的设计\t157
7.8.2 存储器rom0的设计\t158
7.8.3多路选择器mux_1的设计\t161
7.8.4 波形发生器的顶层设计\t161
7.9 数字电压表的设计\t162
7.9.1 分频器clkgen的设计\t163
7.9.2 控制器contr_2的设计\t163
7.9.3 存储器myrom_dyb的设计\t165
7.9.4 数字电压表的顶层设计\t168
7.10 8位十进制频率计设计\t169
7.10.1 测频控制信号发生器testctl的设计\t169
7.10.2 十进制加法计数器cnt10x8的设计\t170
7.10.3 8位十进制锁存器reg4x8的设计\t172
7.10.4 频率计的顶层设计\t172
第8章 常用EDA软件\t174
8.1 Quartus II 13.0软件\t174
8.1.1 Quartus II软件的主界面\t174
8.1.2 Quartus II的图形编辑输入法\t175
8.1.3 Quartus II的文本编辑输入法\t190
8.1.4 嵌入式逻辑分析仪的使用方法\t192
8.1.5 嵌入式锁相环的设计方法\t195
8.1.6 设计优化\t199
8.1.7 Quartus II的RTL阅读器\t200
8.2 ModelSim\t202
8.2.1 ModelSim的图形用户交互方式\t202
8.2.2 ModelSim的交互命令方式\t206
8.2.3 ModelSim的批处理工作方式\t208
8.2.4 在Quartus II 13.0中使用ModelSim仿真\t209
8.3 基于Matlab/DSP Builder的DSP模块设计\t214
8.3.1 设计原理\t214
8.3.2 DSP Builder的层次设计\t226
8.4 Nios II嵌入式系统开发软件\t227
8.4.1 Nios II的硬件开发\t227
8.4.2 Qsys系统的编译与下载\t232
8.4.3 Nios II嵌入式系统的软件调试\t256
8.4.4 Nios II的常用组件与编程\t261
8.4.5 基于Nios II的Qsys系统应用\t272
主要参考文献\t284