EDA是当今世界上先进的电子电路设计技术,广泛应用于通信、工业自动化、智能仪表、图像处理和计算机等领域,它是电子工程师必须掌握的技术之一。本书注重基础知识讲解、由浅入深,既有关于EDA技术、大规模可编程逻辑器件和VHDL的系统介绍,又有丰富的设计应用实例,便于学生消化和理解。全书共7章,主要内容包括:EDA技术概述、可编程逻辑器件、Quartus Ⅱ软件安装及使用、VHDL入门基础、VHDL的语句、有限状态机和VHDL设计实例。
本书可作为高等院校电子类、通信类及计算机类等相关专业二年级及以上学生的教材,也可作为电子技术工程技术人员的参考用书。
本书是在第1版的基础上,为了适应EDA技术的发展与高校教学改革的需求,在保持第1版基本特色的前提下,进行了修订。
本书在2017年作为安徽省省级规划教材项目立项建设,并在2020年教育厅项目验收工作中评为优秀。本书是以PLD、EDA设计工具、VHDL三方面内容为主线展开的,全书共7章。本次修订主要体现在以下几个方面:
1注重软件的更新,更加完善地讲解了软件的特色功能
Quartus Ⅱ软件基本每年都在更新,虽然更新力度不同,但太老旧的版本显然不符合实际需求。本书将第1版所使用的Quartus Ⅱ 90升级为Quartus Ⅱ 150,并对新版软件不自带仿真功能、没有元件库的问题,给出了简单的解决方法,即官方下载“Quartus Ⅱ 150+ModelsimAltera103d+ Cyclone Ⅳ”。当然,读者可以举一反三,按照教材所讲述的方法,根据自己的实际需求选择不同的方案。书中介绍了Quartus Ⅱ的基本使用方法,还加入了自定义模块和调用方法、编程下载固化程序的方法、IP核的调用方法、SignalTap Ⅱ在线调试方法等更加完善的内容。
2由于硬件描述语言的移植性比较好,本次修订弱化硬件的影响
硬件描述语言的移植性很好,在某一型号FPGA芯片上调试成功的代码很容易移植到其他的芯片上,尤其是同一公司的硬件产品。因此读者只要熟悉自己使用的硬件平台即可方便地将本书的例程移植到自己的平台上。因此除了必要的步骤,本书很少提到具体的硬件型号、硬件电路等,弱化不同平台对教材的影响。
3重质不重量、求实不求新、注重对读者的引导
此次修订对教材的例子和第7章设计实例进行了很大程度的更新,但是重点在于对原有例子的深入挖掘,更加具体地介绍设计的仿真、验证等,增加了“想一想”等栏目,引导学生吃透例子,并进一步在原有实例的基础上自行设计其他电路。第7章删除了一些老旧、晦涩难懂的例子,补充了一些简单易懂的例子,以方便初学者完成由简单例子到综合、复杂设计的顺利过渡。书中的例子没有刻意追求过多过新,而是将编者多年教学过程中学生出现问题较多的知识点进行了加强和延伸。编者以务实的态度编写本书,希望其成为教师教学和学生学习的好帮手。难度大的新例程会在教材配套电子资源或者线上资源中提供。
4结合教育改革和发展的新趋势,本书配备了更加丰富的线上资源
随着近几年高校教学改革的发展,出现了多种多样的现代化教学形式,慕课、SPOC、翻转课堂等,尤其是新冠疫情期间,线上教学在全国深入地开展,对传统教学形式和教材形式都带来了很大的冲击。编者认为,线下教师面对面教学形式是无可替代的,纸质教材也是无可替代的。但是,其他教学形式都可称为线下教学的有机补充,教材的其他配套网络资源也可以为教学提供较大的便利。因此本书在国内知名网站有慕课资源(目前在“E会学”和“学堂在线”平台,后期可能会有更新)、网络配套电子资源(机械工业出版社教育服务网,后期会继续更新),并将开设微信公众号,不定期更新例程。
本书此次修订由于玉亭、张丽华担任主编,丁伯圣、涂德凤担任副主编。第1章由张丽华修订,第2章由涂德凤修订,第3章由于玉亭、丁伯圣修订,第4章由于玉亭、钟玲玲修订,第5章由于玉亭修订,第6章由于玉亭、吴旭华修订,第7章由所有项目组成员共同修订。全书由张丽华、于玉亭统稿。另外,感谢张芬、王松涛、彭瑾参与编写了本书的第1版。感谢皮赛电子朱工给本书的支持。
本书是几位老师在多年EDA教学经验的基础上精心编写而成的,由于作者水平有限,书中疏漏之处在所难免,希望同行和广大读者批评指正。
本书提供配套的电子课件,授课教师可登录机械工业出版社教育服务网(wwwcmpeducom)注册免费下载。
前言
第1章绪论
11EDA技术综述
111EDA技术含义
112EDA技术发展历程
12ASIC设计
13HDL
131HDL发展历程
132常用HDL
14 EDA的工具软件
15EDA设计流程
本章小结
习题
第2章可编程逻辑器件
21可编程逻辑器件概述
211PLD的发展历程
212PLD的分类
213PLD的电路表示法
22低密度可编程逻辑器件
221可编程只读存储器
222可编程逻辑阵列器件
223可编程阵列逻辑器件
224通用阵列逻辑器件
23复杂可编程逻辑器件
24现场可编程门阵列器件
241查找表的原理与结构
242Xilinx公司XC4000系列FPGA
简介
25CPLD/FPGA开发应用选择
本章小结
习题
第3章Quartus Ⅱ软件安装及使用
31Quartus Ⅱ简介
32Quartus Ⅱ 150软件的下载与安装
321下载
322安装
33设计入门
331开发流程
332基本使用
333Quartus Ⅱ设计入门
34全加器设计
35原理图输入法之IP核的使用方法
36Signal Tap Ⅱ使用方法
本章小结
习题
第4章VHDL入门基础
41VHDL基本结构
411实体
412结构体
413GENERIC参数传递
42VHDL文字规则
421数字型文字
422字符串文字
423标识符
424下标
43VHDL数据对象
431常量
432变量
433信号
44VHDL数据类型
441VHDL预定义数据类型
442用户自定义数据类型
443其他类型
45数据类型转换
451使用转换函数
452使用类型标记法转换数据类型
46VHDL操作符
47VHDL预定义属性
本章小结
习题
第5章VHDL的语句
51进程语句
52顺序语句
521赋值语句
522IF语句
523CASE语句
524LOOP语句
525NEXT语句
526EXIT语句
527WAIT语句
528NULL语句
529RETURN语句
53并行语句
531进程语句
532并行信号赋值语句
533元件例化语句
534生成语句
535块语句
54设计库和程序包
541设计库
542程序包
55子程序
551函数
552过程
56配置
本章小结
习题
第6章有限状态机
61概述
62VHDL一般状态机
63Moore型状态机设计
64Mealy型状态机设计
65状态编码
66非法状态处理
本章小结
习题
第7章VHDL设计实例
71序列信号发生器设计
72简易数字频率计设计
721设计要求
722原理描述
723频率计的层次化设计方案
73多功能信号发生器的设计
731设计的基本思路
732系统总体方案设计
733函数发生器的硬件设计
734函数发生器的软件设计
735顶层设计
736仿真结果
74交通灯控制器的设计
741交通灯控制器的设计要求
742系统组成
743层次化设计和软件仿真
本章小结
习题
部分习题参考答案
参考文献