Verilog HDL与FPGA数字系统设计 第2版
定 价:99 元
丛书名:电子与嵌入式系统设计丛书
- 作者:主编罗杰
- 出版时间:2022/3/1
- ISBN:9787111575757
- 出 版 社:机械工业出版社
- 中图法分类:TP332.1
- 页码:
- 纸张:胶版纸
- 版次:
- 开本:16开
本书是根据数字技术的发展和EDA课程教学要求,以及作者多年教学与实践经验的基础上而编写的,目标是快速地提高读者的数字电路(或系统)设计能力。内容覆盖了数字逻辑基础、Verilog HDL基础知识与建模方法、有限状态机设计、可编程逻辑器件及其开发工具、数字电路与系统设计实例、静态时序分析工具以及可编程片上系统等相关知识。
本书将数字逻辑设计和Verilog HDL有机地结合在一起,以可综合的Verilog设计为重点,方便读者快速地掌握Verilog HDL建模方法,以及用FPGA实现数字电路(或系统)的技巧。本书以Quartus Prime 18.1等软件为工具,所有程序都通过了DE2-115(或DE1-SOC)开发板的硬件测试,读者可参考使用。
本书可用作高等院校电气信息类等专业本、专科生的教材或教学参考书,也可以作为电子技术课程设计、电子设计大赛或数字系统设计工程技术人员学习EDA技术的参考书。
1.华中科技大学全国大学生电子设计竞赛培训教材。2.将数字电路和Verilog HDL相互结合,用FPGA实现电路,实践性强。3.配合在大学中广泛使用的FPGA平台,课程资源和实例丰富,便于老师开设新课程。教辅资源(PPT、实例代码等)可以在华章图书网站该书的链接下载。
《Verilog HDL与FPGA数字系统设计》一书自2015年出版以来,得到了广大读者的关心与支持,已经重印9次。但是,随着FPGA/CPLD数字系统设计技术的飞速发展,原书中有些内容已显得陈旧。因此,这一版本在初版的基础上主要进行了如下修订:
1)更新了部分FPGA器件内容,新增可编程片上系统(System On Programmable Chip,SOPC)技术的硬件及软件开发。为压缩篇幅,删除了第1版第10章“异步串口通信及UART实现”。
2)全面梳理,更正错误和疏漏,完善内容;改写了部分示例代码,使之更规范,增加了若干示例。本书所有Verilog代码均经过实际的下载和验证,FPGA开发平台为DE2-115和DE1-SOC。
3)本书以Quartus Prime 18.1和ModelSim 10.5b等设计软件为工具。
目前,硬件描述语言和FPGA设计技术在教学、科研和大学生电子设计竞赛等各种赛事活动中起着重要作用,很多学校单独开设“EDA技术”课程,以便学生能够掌握这些技术。本书可作为EDA技术、FPGA开发或数字系统设计方面的入门教材,并且不要求读者掌握数字电路基础知识。
参加本版修订工作的有华中科技大学的罗杰(第1~5章,第7、8章及附录)和王贞炎(第10章),武汉工程大学的杨志芳(第6、9章),中南民族大学的陈军波(第11、12章)。罗杰为主编,负责全书的策划、组织和定稿。
本书在修订过程中,得到华中科技大学教务处的立项支持,还得到Intel FPGA大学计划部经理袁亚东先生的帮助,在此表示衷心的感谢。由于EDA技术发展速度快,各种FPGA器件不断更新换代,加之编者水平有限,书中一定会有疏漏和不妥之处,欢迎广大读者批评指正,并帮助我们不断改进。您可以发送邮件到1210286415@qq.com,我们会阅读所有来信,并尽快给予回复。
编者
2021年8月
前言
第1版前言
教学建议
篇 数字系统基础
第1章 数字逻辑设计基础 / 2
本章目的 / 2
1.1 数制及其相互转换 / 2
1.1.1 数制 / 2
1.1.2 不同进制数的相互转换 / 4
1.2 二进制代码 / 5
1.2.1 二-十进制编码 / 5
1.2.2 格雷码 / 6
1.2.3 奇偶校验码 / 8
1.2.4 ASCII字符编码 / 9
1.3 逻辑运算及逻辑门 / 11
1.3.1 基本逻辑运算 / 11
1.3.2 常用复合逻辑运算 / 14
1.3.3 集成逻辑门电路简介 / 15
1.3.4 三态门 / 20
1.4 逻辑代数的基本公式和规则 / 21
1.4.1 逻辑代数的基本定律和恒等式 / 21
1.4.2 逻辑代数的基本规则 / 22
1.4.3 逻辑函数表达式的形式 / 23
1.5 逻辑函数的代数化简法 / 25
1.6 逻辑函数的卡诺图化简法 / 26
1.6.1 逻辑函数的小项及其性质 / 26
1.6.2 逻辑函数的小项表达式 / 27
1.6.3 用卡诺图表示逻辑函数 / 28
1.6.4 用卡诺图化简逻辑函数 / 31
1.6.5 用卡诺图化简含无关项的逻辑函数 / 33
1.7 组合逻辑电路设计 / 35
1.7.1 设计组合逻辑电路的一般步骤 / 35
1.7.2 组合逻辑电路设计举例 / 36
小结 / 40
习题 / 40
第2章 Verilog HDL入门与功能仿真 / 42
本章目的 / 42
2.1 硬件描述语言简介 / 42
2.1.1 硬件描述语言的起源 / 42
2.1.2 硬件描述语言的特点 / 43
2.2 Verilog HDL程序的基本结构 / 44
2.2.1 Verilog HDL模块组成 / 44
2.2.2 Verilog HDL模块举例 / 45
2.3 编写测试模块 / 47
2.4 ModelSim仿真软件的使用 / 49
2.4.1 创建工作目录 / 50
2.4.2 输入源文件 / 50
2.4.3 建立工作库 / 50
2.4.4 编译设计文件 / 50
2.4.5 将设计文件载入仿真器 / 52
2.4.6 运行仿真 / 53
2.4.7 调试结果 / 54
2.5 Verilog HDL基本语法规则 / 57
2.5.1 词法规定 / 57
2.5.2 逻辑值集合 / 57
2.5.3 常量及其表示 / 58
2.5.4 数据类型 / 60
2.6 编译指令、系统任务和系统函数 / 67
2.6.1 Verilog HDL编译器指令 / 67
2.6.2 Verilog HDL系统任务 / 69
2.6.3 Verilog HDL系统函数 / 71
小结 / 72
习题 / 73
第3章 组合逻辑电路建模 / 74
本章目的 / 74
3.1 Verilog HDL门级建模 / 74
3.1.1 多输入门 / 74
3.1.2 多输出门 / 76
3.1.3 三态门 / 76
3.1.4 门级建模举例 / 77
3.2 Verilog HDL数据流建模 / 79
3.2.1 数据流建模 / 79
3.2.2 表达式与操作数 / 82
3.2.3 运算符 / 82
3.2.4 运算符的优先级别 / 87
3.3 组合电路的行为级建模 / 88
3.4 分层次的电路设计方法 / 96
3.4.1 设计方法 / 96
3.4.2 模块实例引用语句 / 98
3.4.3 迭代结构 / 100
3.5 常用组合电路及其设计 / 102
3.5.1 编码器 / 103
3.5.2 二进制译码器 / 104
3.5.3 七段显示译码器 / 106
3.5.4 二进制数与8421码的转换 / 108
小结 / 115
习题 / 115
第4章 时序逻辑电路建模 / 119
本章目的 / 119
4.1 锁存器 / 119
4.1.1 基本SR锁存器 / 119
4.1.2 门控D锁存器 / 121
4.1.3 门控D锁存器的Verilog HDL建模 / 122
4.2 触发器 / 123
4.2.1 D触发器的逻辑功能 / 123
4.2.2 有清零输入和预置输入的D触发器 / 124
4.2.3 有使能端的D触发器 / 125
4.2.4 时序逻辑电路建模基础 / 126
4.2.5 D触发器及其应用电路的建模 / 128
4.3 寄存器和移位寄存器 / 131
4.3.1 寄存器建模 / 131
4.3.2 移位寄存器建模 / 132
4.3.3 移位寄存器应用电路建模 / 136
4.4 同步计数器 / 138
4.4.1 同步计数器的设计 / 138
4.4.2 同步计数器的Verilog HDL建模 / 142
4.5 Verilog HDL函数与任务的使用 / 146
4.5.1 函数说明语句 / 146
4.5.2 任务说明语句 / 149
4.6 m序列码产生电路设计 / 151
小结 / 155
习题 / 156
第5章 有限状态机设计 / 158
本章目的 / 158
5.1 状态机的基本概念 / 158
5.1.1 状态机的基本结构及类型 / 158
5.1.2 状态机的状态图表示法 / 159
5.1.3 状态机的设计步骤 / 160
5.2 基于Verilog HDL的状态机描述方法 / 160
5.2.1 状态图的建立过程 / 160
5.2.2 状态图的描述方法 / 161
5.3 状态机设计中的关键技术 / 165
5.3.1 状态编码 / 165
5.3.2 消除输出端产生的毛刺 / 166
5.3.3 使用One-Hot编码方案设计状态机 / 168
5.4 状态机设计举例 / 170
5.4.1 十字路口交通灯控制电路设计 / 170
5.4.2 汽车尾灯控制电路设计 / 176
小结