新書推薦:
《
血色帝国:近代英国社会与美洲移民
》
售價:HK$
58.2
《
海外中国研究·王羲之:六朝贵族的世界(艺术系列)
》
售價:HK$
178.1
《
唐宋绘画史 全彩插图版
》
售價:HK$
98.6
《
海洋、岛屿和革命:当南方遭遇帝国(文明的另一种声音)
》
售價:HK$
106.4
《
铝合金先进成型技术
》
售價:HK$
266.6
《
英雄之旅:把人生活成一个好故事
》
售價:HK$
87.4
《
分析性一体的涌现:进入精神分析的核心
》
售價:HK$
122.1
《
火枪与账簿:早期经济全球化时代的中国与东亚世界
》
售價:HK$
77.3
|
內容簡介: |
本书根据EDA课程教学要求,以提高数字设计能力为目的,系统阐述FPGA数字系统开发的相关知识,主要内容包括EDA技术概述、FPGACPLD器件、Verilog硬件描述语言等。全书以Quartus Prime、Synplify Pro软件为平台,以Verilog1995和Verilog2001语言标准为依据,以可综合的设计为重点,通过大量经过验证的数字设计实例,阐述数字系统设计的方法与技术,由浅入深地介绍Verilog工程开发的知识与技能。本书的特点是:着眼于实用,紧密联系教学实际,实例丰富。全书深入浅出,概念清晰,语言流畅。
|
關於作者: |
王金明,南京解放军理工大学通信学院教授,长期从事数字系数设计、电子电路设计方面课程的教学与科研工作。
|
目錄:
|
第1章EDA技术概述1
1.1EDA技术及其发展1
1.2Top-down设计与IP核复用4
1.2.1Top-down设计4
1.2.2Bottom-up设计5
1.2.3IP复用技术与SoC5
1.3数字设计的流程7
1.3.1设计输入7
1.3.2综合9
1.3.3布局布线9
1.3.4仿真10
1.3.5编程配置10
1.4常用的EDA软件工具10
1.5EDA技术的发展趋势14
习题115
第2章FPGACPLD器件16
2.1PLD器件概述16
2.1.1PLD器件的发展历程16
2.1.2PLD器件的分类17
2.2PLD的基本原理与结构19
2.2.1PLD器件的基本结构19
2.2.2PLD电路的表示方法20
2.3低密度PLD的原理与结构21
2.4CPLD的原理与结构26
2.4.1宏单元结构26
2.4.2典型CPLD的结构27
2.5FPGA的原理与结构30
2.5.1查找表结构30
2.5.2典型FPGA的结构32
2.5.3Cyclone IV器件结构35
2.6FPGACPLD的编程元件38
2.7边界扫描测试技术42
2.8FPGACPLD的编程与配置44
2.8.1在系统可编程44
2.8.2FPGA器件的配置45
2.8.3Cyclone IV器件的编程46
2.9FPGACPLD器件概述49
2.10FPGACPLD的发展趋势52
习题253
第3章Quartus Prime使用指南54
3.1Quartus Prime原理图设计55
3.1.1半加器原理图设计输入55
3.1.21位全加器设计输入60
3.1.31位全加器的编译61
3.1.41位全加器的仿真63
3.1.51位全加器的下载67
3.2基于IP核的设计71
3.2.1模24方向可控计数器71
3.2.244无符号数乘法器78
3.3SignalTap II的使用方法84
3.4Quartus Prime的优化设置与时序分析88
习题393
实验与设计95
3-1简易数字钟95
3-2m序列发生器97
3-38位带符号乘法器97
3-4用常量模块实现补码转换幅度码电路101
第4章Verilog设计初步102
4.1Verilog简介102
4.2Verilog模块的结构103
4.3Verilog基本组合电路设计107
4.3.1用Verilog设计基本组合电路107
4.3.2用Verilog设计加法器107
4.4Verilog基本时序电路设计110
4.4.1用Verilog设计触发器110
4.4.2用Verilog设计计数器111
习题4113
实验与设计113
4-1Synplify Pro综合器的使用方法113
4-2Synplify综合器的使用方法117
第5章Verilog语法与要素119
5.1Verilog语言要素119
5.2常量120
5.2.1整数(Integer)120
5.2.2实数(Real)122
5.2.3字符串(Strings)122
5.3数据类型123
5.3.1net型123
5.3.2variable型124
5.4参数126
5.5向量128
5.6运算符130
习题5134
实验与设计135
5-1用altpll锁相环宏模块实现倍频和分频135
第6章Verilog行为语句140
6.1过程语句140
6.1.1always过程语句141
6.1.2initial过程语句144
6.2块语句145
6.2.1串行块begin-end145
6.2.2并行块fork-join146
6.3赋值语句147
6.3.1持续赋值与过程赋值147
6.3.2阻塞赋值与非阻塞赋值148
6.4条件语句149
6.4.1if-else语句150
6.4.2case语句151
6.5循环语句155
6.5.1for语句156
6.5.2repeat、while、forever语句157
6.6编译指示语句159
6.7任务与函数160
6.7.1任务(task)160
6.7.2函数(function)162
6.8顺序执行与并发执行166
习题6167
实验与设计167
6-144矩阵键盘检测电路167
第7章Verilog设计的层次与风格170
7.1Verilog设计的层次170
7.2门级结构描述170
7.2.1Verilog HDL内置门元件171
7.2.2门级结构描述173
7.3行为描述174
7.4数据流描述175
7.5不同描述风格的设计176
7.5.1半加器设计176
7.5.21位全加器设计177
7.5.34位加法器设计179
7.6多层次结构电路的设计179
7.7基本组合电路设计182
7.7.1门电路182
7.7.2编译码器182
7.7.3其他组合电路184
7.8基本时序电路设计185
7.8.1触发器185
7.8.2锁存器与寄存器185
7.8.3计数器与串并转换器187
7.8.4简易微处理器188
7.9三态逻辑设计190
习题7192
实验与设计192
7-1数字表决器192
7-2FIFO缓存器设计195
第8章Verilog有限状态机设计199
8.1有限状态机199
8.2有限状态机的Verilog描述201
8.2.1用三个过程描述202
8.2.2用两个过程描述203
8.2.3单过程描述方式205
8.3状 态 编 码207
8.3.1常用的编码方式207
8.3.2状态编码的定义211
8.4有限状态机设计要点213
8.4.1复位和起始状态的选择213
8.4.2多余状态的处理213
习题8215
实验与设计215
8-1流水灯控制器215
8-2汽车尾灯控制器217
8-3状态机AD采样控制电路218
8-4用状态机实现字符液晶显示控制219
第9章Verilog设计进阶226
9.1加法器设计226
9.1.1级连加法器226
9.1.2数据流描述的加法器227
9.1.3超前进位加法器228
9.1.4流水线加法器229
9.2乘法器设计230
9.2.1并行乘法器230
9.2.2移位相加乘法器232
9.2.3布斯乘法器234
9.2.4查找表乘法器237
9.3奇数分频与小数分频237
9.3.1奇数分频237
9.3.2半整数分频与小数分频239
9.4VGA图像的显示与控制241
9.4.1VGA图像显示原理与时序241
9.4.2VGA图像显示与控制的实现244
9.5点阵式液晶显示控制250
9.6乐曲演奏电路255
习题9260
实验与设计262
9-1数字跑表262
9-2实用多功能数字钟269
第10章Verilog设计的优化278
10.1设计的可综合性278
10.2流水线设计技术280
10.3资源共享284
10.4过程286
10.5阻塞赋值与非阻塞赋值288
习题10292
实验与设计292
10-1小数分频292
10-2如何在FPGA设计中消除毛刺294
10-3消抖动电路297
第11章Verilog Test Bench与仿真298
11.1系统任务与系统函数298
11.2用户自定义元件302
11.2.1组合电路UDP元件303
11.2.2时序逻辑UDP元件304
11.3延时模型的表示306
11.3.1时间标尺定义`timescale306
11.3.2延时的表示与延时说明块307
11.4Test Bench测试平台308
11.5组合和时序电路的仿真310
11.5.1组合电路的仿真310
11.5.2时序电路的仿真312
习题11313
实验与设计314
11-1用ModelSim SE仿真8位二进制加法器314
11-2用ModelSim SE仿真乘累加器322
第12章Verilog语言的发展324
12.1Verilog2001语法结构324
12.1.1语法结构的扩展与增强324
12.1.2设计管理330
12.1.3系统任务和系统函数的扩展332
12.1.4VCD文件的扩展335
12.2Verilog2002语法结构336
12.2.1硬件单元建模337
12.2.2属性340
12.2.3编程语言接口344
习题12345
第13章通信与信号处理设计实例346
13.1m序列发生器346
13.1.1m序列的原理与性质346
13.1.2m序列产生器设计348
13.2Gold码350
13.2.1Gold码的原理与性质350
13.2.2Gold码产生器设计351
13.3CRC校验码353
13.4FSK解调355
13.5数字过零检测与等精度频率测量358
13.5.1数字过零检测法358
13.5.2等精度频率测量359
13.6QPSK调制器的FPGA实现362
13.7FIR数字滤波器365
习题13369
实验与设计369
13-1信号音产生器369
13-2异步串行接口(UART)376
附录AVerilog HDL(IEEE Std 13641995)关键字382
附录BVerilog HDL(IEEE Std 13642001)关键字383
附录CDE2115介绍384
附录D有关术语与缩略语386
参考文献391
|
內容試閱:
|
第6版前言
本书在第5版的基础上主要做了如下修订:
(1)将设计工具从Quartus II 9.0升级为Quartus Prime 16.0。从Quartus II 10.0开始,Quartus II软件取消了自带的波形仿真工具,转而采用专业第三方仿真工具ModelSim进行仿真;Quartus II 13.1之后Quartus II只支持64位操作系统(Windows 7,8,10);从Quartus II 15.1开始Quartus II开发工具改称Quartus Prime;2016年5月Altera发布了Quartus Prime 16.0版本。Quartus Prime 16.0相比Quartus II 9.0,支持的器件更新,自带的免费IP更多,编译速度更快,支持System Verilog2005和VHDL2008,作为设计者我们应该积极地适应EDA设计工具的这种变化,并尽可能采用新版本。
(2)将实验板从DE2、DE270升级为DE2115。从Quartus II 13.1版本开始,Quartus II软件已不再支持Cyclone I和Cyclone II器件(Cyclone I和Cyclone II业已停产),所以基于Cyclone II器件的DE2和DE270实验板,用Quartus II 13.1版本后的Quartus II已不能下载。DE2115实验板基于Cyclone IV FPGA器件(EP4CE115F29),器件新,资源更丰富,同时,在外设和使用习惯等方面与DE270基本保持一致,所以本书将针对的实验板改为DE2115。
(3)更新了有关ModelSim仿真的内容。本书介绍了两个版本的ModelSim的使用方法,一个是Altera的OEM版本ModelSim-Altera;同时在第11章中详细介绍了ModelSim SE进行功能和时序仿真的过程,ModelSim SE的功能更强更全面一些。
(4)更新了部分有关FPGA器件结构的内容,使之尽量反映FPGA器件的发展。
(5)更新和修正了设计案例,将设计案例基于DE2115实验板重新做了修改和验证。
由于FPGA芯片和EDA软件的不断更新换代,同时因作者时间和精力所限,本书虽经不断改版和修正,仍不免有诸多疏漏和遗憾,一些案例也有继续发挥和改进的空间,同时一些新的例程限于篇幅未能在书中得到反映。基于本教材的慕课(MOOC)教学资源建设正在实施中,建成后将会在华信教育网推出。本书与作者的另一拙作《数字系统设计与VHDL》(即将修订改版)互为补充,前者以Verilog语言开发为主,后者则以VHDL语言的设计为重点。
感谢友晶科技的彭显恩经理和尹作娟女士,鑫合欣的王婷女士在本书写作过程中给予作者的大力支持;感谢美国威斯康星大学麦迪逊分校的Yu Hen Hu教授在作者访学期间在学术上和教学上给予作者的无私帮助与支持;感谢本书责任编辑窦昊先生与作者多年的鼎力合作。
本书疏漏与错误之处,希望读者和同行给予批评指正。
E-mail:wjm_ice@163.com
编著者
2016年8月于解放军理工大学
第5版前言
本书在第4版的基础上做了部分修订,增加了实验与设计的内容,使之更便于实践教学。本书的主要内容包括FPGACPLD器件、EDA设计工具(包括Quartus II、Synplify Pro、ModelSim等)、Verilog硬件描述语言,以及一些典型的数字设计实例。书中的实例多数在Altera的DE2或DE270实验板上做了实际验证,并尽量给出程序综合与仿真的结果,以便于对照。此外,对于EDA软件工具、实验平台、设计案例均做了精心选择,是作者认为目前较有典型性和代表性的方案。
本书的定位是作为EDA技术、FPGA开发或数字设计方面的教材。在编写的过程中,遵循的是重视基础、面向应用的原则,力图在有限的篇幅内,将EDA技术与FPGA设计相关的知识简明扼要、深入浅出地进行阐述,并融入作者在教学、科研中的实践经验。EDA技术是一门实践性的课程,所以选择一些具有趣味性的设计案例,有助于学生由浅入深快速地掌握设计语言,并通过实践加深体会。另外,本书与作者的另一拙作《数字系统设计与VHDL》(电子工业出版社,2010年5月)互为补充,前者以Verilog语言开发为主,后者则以VHDL语言的设计为重点。
全书共13章。第1章对EDA技术做了综述;第2章介绍FPGACPLD器件的结构与编程配置;第3章介绍Quartus II集成开发工具以及基于宏功能模块的设计;第4章对Verilog程序设计进行初步介绍;在第5、6章中,系统介绍Verilog的语法、语句、任务与函数等内容;第7章讨论Verilog设计的层次与风格;第8章是有关有限状态机的内容;第9章列举了一些典型电路的设计与实现;第10章讨论设计优化的问题;第11章是Verilog仿真与验证的内容;在第12章中就Verilog2001、Verilog2002标准对Verilog语言所做的扩展与增强做了较为全面的介绍;第13章是通信和信号处理等较为复杂的数字逻辑系统的设计举例。另外,在附录中除了给出Verilog HDL关键字和有关术语、缩略语之外,还对Altera的DE2和DE270实验平台做了介绍。
本书在撰写的过程中力求准确、简约,避免烦琐,以期做到深入浅出。所有举例均经过综合工具或仿真工具的验证。EDA技术是一门实践性很强的技术,同时EDA技术的发展又非常迅速,要真正掌握数字设计技术,成为行家里手,需要设计者在实践中不断摸索与积累,逐步提高自己的实际能力与水平。本书虽经很大努力,但由于编著者水平所限,书中疏漏与错误之处在所难免,希望同行和广大读者给予批评指正。
E-mail:wjm_ice@163.com
编著者
2013年12月于解放军理工大学
|
|