《数字系统设计与EDA技术(第2版)/全国高等职业教育规划教材》从初学者的角度出发,介绍了EDA技术的基础知识、EDA开发软件QuartusⅡ的使用方法和VHDL硬件描述语言的语法规则,针对EDA技术的特点,通过设计比较器、加法器、编码器、计数器、寄存器、计时器、电子密码锁和智力竞赛抢答器等典型电路,从入门、熟练、应用和发展4个层次来阐述EDA技术,使读者感到易学、易懂。
计算机技术和电子技术的不断发展给数字系统的设计方法带来了全新的变革,基于电子设计自动化(Electronic Design Automation,EDA)技术的设计方法正在成为现代数字系统设计的主流。电子工程技术人员利用可编程逻辑器件和EDA开发软件,使用硬件描述语言就可以设计出所需要的数字系统,减少了开发成本和开发时问。
高职高专以就业为导向、以职业能力培养为主体的指导思想,必然要把教学重点从以逻辑门和触发器等通用器件为载体、以真值表和逻辑方程为表达方式、以手工调试的传统数字电路设计方法向以可编程逻辑器件为载体、以硬件描述语言为表达方式、以EDA技术为调试手段的现代数字系统设计方法转换。针对EDA技术的特点和发展趋势,本书介绍了数字系统和EDA技术的相关知识,通过具体的设计实例讲解Ahera公司EDA开发工具QuartusⅡ软件的使用方法、VHDL硬件描述语言的语法规则,通过设计比较器、加法器、编码器、计数器、寄存器、计时器、电子密码锁和智力竞赛抢答器等典型电路,由浅入深、循序渐进地学习EDA技术,全书共分为以下7章:
第1章主要讲授数字系统的相关概念、数字系统的设计方法以及EDA技术的发展趋势。读者通过本章的学习能够对可编程逻辑器件、EDA软件和硬件描述语言有所认识。
第2章主要讲授逻辑代数、逻辑门和集成触发器等逻辑电路的基础知识,安排了两次用传统方法验证数字电路逻辑关系的实训。本章的学习能够将传统的数字电子技术与现代数字系统相衔接,保持知识的连贯性,同时也符合由浅入深、循序渐进的学习规律。
第3章本章从应用角度出发,在讲解了可编程原理后,全面介绍了可编程逻辑器件的结构和分类,系统地阐述了Altera公司主流芯片的结构和性能。
第4章通过具体的设计项目,讲解EDA开发工具QuartusⅡ软件的使用方法,展示了利用EDA软件对数字系统进行编辑、编译和仿真的全部过程,读者能够了解QuartusⅡ软件的功能,并学会使用。
第5章、第6章主要讲解VHDL硬件描述语言的数据结构和语法规则,通过设计比较器、加法器、编码器、计数器和寄存器等电路,学习数字系统的设计方法和步骤,熟悉掌握QuartusⅡ软件的使用方法,读者能够学会设计文件的编辑、编译、波形仿真和编程下载的全部过程,能够认识和分析简单的VHDL程序。
第7章可作为综合实训,由键控数码显示电路、节日彩灯控制器、篮球比赛计时器、智力竞赛抢答器和电子密码锁组成,通过相对复杂的设计项目,从不同的层面展示各种设计思路和方法。使读者具有初步设计能力,能够编写简单的程序。
本书由黑龙江农业工程职业学院于润伟主编,黑龙江农业工程职业学院朱晓慧、张晓峰,北京信息职业技术学院黄一平参与编写,全书统稿工作由于润伟完成。
由于编者水平有限,对一些问题的理解和处理难免有不当之处,衷心希望使用本书的读者批评指正。
编者
出版说明
前言
第1章 认识EDA技术
1.1数字系统
1.1.1数字系统的组成
1.1.2数字系统设计方法
1.1.3数字系统设计流程
1.2EDA技术
1.2.1EDA技术的发展历史
1.2.2EDA技术的特点
1.3EDA技术的主要内容
1.3.1硬件描述语言
1.3.2可编程逻辑器件
1.3.3:EDA软件
1.4EDA技术的发展趋势
1.4.1可编程逻辑器件的发展趋势
1.4.2开发工具的发展趋势
1.4.3系统描述方式的发展趋势
1.5习题
第2章 数字电路基础
2.1逻辑门电路和触发器
2.1.1逻辑门电路
2.1.2触发器
2.2逻辑代数
2.2.1逻辑代数的基本公式与定律
2.2.2逻辑代数的化简方法
2.3逻辑电路的分析与设计
2.3.1组合逻辑电路的分析
2.3.2时序逻辑电路的分析
2.3.3组合逻辑电路的设计
2.4实训
2.4.1楼梯照明电路的设计
2.4.2三人表决器的设计
2.5习题
第3章 可编程逻辑器件
3.1概述
3.1.1PLD的特点和分类
3.1.2PLD的编程工艺
3.1.3PLD中阵列的表示方法
3.1.4简单可编程逻辑器件
3.2Altera公司的可编程逻辑器件
3.2.1Altera公司的CPLD
3.2.2Altera公司的F'PGA
3.2.3CPLD与FPGA的选用
3.3实训GW48一PK:2教学实验平台认识
3.4习题
第4章 QuartusⅡ开发软件
4.1软件的获得与授权
4.1.1软件的获得
4.1.2软件的授权
4.2设计向导
4.2.1项目建立
4.2.2编辑文件
4.2.3编译和仿真
4.2.4器件编程
4.3数据比较器的设计
4.3.1同比较器
4.3.2大小比较器
4.4加法器的设计
4.4.1半加器
4.4.2全加器
4.4.3四位加/减法器
4.5实训
4.5.1四位数据同比较器的设计
4.5.2应用QuartusⅡ1分析VHDL程序
4.6习题
第5章 VHDL语言的并行语句
5.1VHDL程序的结构
5.1.1库和程序包
5.1.2VHDL的实体
5.1.3VHDL的结构体
5.2VHDL的数据结构
5.2.1标识符
5.2.2数据对象
5.2.3数据类型
5.2.4数据类型间的转换
5.2.5VHDL的表达式
5.3并行语句
5.3.1信号赋值语句
5.3.2块语句
5.3.3进程语句
5.3.4元件例化语句
5.3.5生成语句
5.4编码器的设计
5.4.18—3普通编码器的设计
5.4.28421一BCD优先编码器
5.5实训
5.5.13—8线译码器的设计
5.5.2全减器的设计
5.6习题
第6章 VHDL言的顺序语句
6.1VHDL程序的开发流程
6.1.1vHDL语言的特点
6.1.2VHDL的开发流程
6.2VHDL的顺序语句
6.2.1IF语句
6.2.2CASE语句
6.2.3子程序
6.2.4LOOP语句
6.3计数器的设计
6.3.1基本二进制递增计数器
6.3.2同步清零可逆计数器
6.3.3异步清零可逆计数器
6.4寄存器的设计
6.4.1基本寄存器
6.4.2循环移位寄存器
6.4.3双向移位寄存器
6.5实训
6.5.1边沿JK触发器的设计
6.5.2交通灯控制器的设计
6.6习题
第7章 数字系统设计综合实训
7.1键控数码显示电路
7.1.1静态显示
7.1.2动态显示
7.2节日彩灯控制器
7.2.1项目说明
7.2.2设计方案
7.2.3项目实现
7.2.4功能扩展与项目评价
7.3篮球比赛计时器
7.3.1项目说明
7.3.2设计方案
7.3.3项目实现
7.3.4功能扩展与项目评价
7.4智力竞赛抢答器
7.4.1项目说明
7.4.2设计方案
7.4.3项目实现
7.4.4功能扩展与项目评价
7.5电子密码锁
7.5.1项目说明
7.5.2设计方案
7.5.3项目实现
7.5.4功能扩展与项目评价
7.6习题
部分习题答案
参考文献
1.2.1EDA技术的发展历史
正因为EDA技术丰富的内容以及与电子技术各学科领域的相关性,其发展历史同大规模集成电路设计技术、计算机辅助工程、可编程逻辑器件以及电子设计技术和工艺的发展是同步的。电子技术的发展过程,可大致将EDA技术的发展历史分为以下4个阶段:
1)计算机辅助设计(CAD):20世纪70年代,在集成电路制作方面,可编程逻辑技术及其器件已经问世,计算机作为一种运算工具已在科研领域得到广泛应用。到了20世纪70年代后期,CAD的概念已见雏形,人们开始将产品设计过程中具有高度重复性的工作(例如画图布线等工作),用图形处理CAD软件工具代替,其中具有代表性的工具是澳大利亚ProtelTechnology公司开发的Tango布线软件。但由于布线画图软件受到当时计算机工作平台的限制,其性能一般,支持的工程也有限。这一阶段是EDA技术发展的初期。
2)计算机辅助工程设计(CAED):20世纪80年代,集成电路设计进人了CM0S(互补场效应管)时代,复杂可编程逻辑器件已进入商业应用,相应的辅助设计软件也已投入使用。在20世纪80年代末,出现了具有自动综合能力的CAED工具,在印制电路板设计方面的逻辑图输人、自动布局布线和印制电路板分析以及在数字系统设计方面的逻辑设计、逻辑仿真、逻辑方程综合和化简等,都担任了重要的角色。特别是各种硬件描述语言的出现,为电子设计自动化解决了电路建模、标准文档及仿真测试等问题。但是,CAED阶段的软件工具是从逻辑图出发,设计数字系统必须提供具体的元件图形,制约了优化设计,难以适应复杂的数字系统设计。
3)电子设计自动化(EDA):20世纪90年代,集成电路设计工艺步入了超深亚微米阶段,集成百万个逻辑门以上的大规模可编程逻辑器件的陆续面世,以及基于计算机技术的面向用户、低成本、大规模ASIC(专用集成电路)设计技术的应用,促进了EDA技术的形成。各大电子器件公司对于兼容各种硬件实现方案和支持标准硬件描述语言的EDA工具软件的研究,有效地将EDA技术推向成熟。这个阶段发展起来的EDA工具,目的是在设计前期将设计师从事的许多高层次设计工作由软件工具完成,可以将用户的要求转换为设计技术规范,能够有效地解决可用的设计资源与理想设计目标之间的矛盾,按具体的硬件、软件和算法分解设计等。
4)可编程片上系统(SOPC)的开发:进入21世纪后,EDA工具是以系统级设计为核心,包括系统行为级描述与结构综合、系统仿真与测试验证、系统划分与指标分配、系统决策与文件生成等一整套的电子系统设计自动化工具。这时的EDA工具不仅具有电子系统设计能力,还能提供独立于工艺和厂家的系统级设计能力,具有高级抽象的设计构思手段。随着达数百万门高密度的可编程逻辑器件的出现,系统没计者能够将整个数字系统实现在一个可编程芯片上,即SOPC。
1.2.2EDA技术的特点
传统的数字电子系统或集成电路设计中,手工设计占了较大的比例,复杂电路的设计和调试工作十分困难。对于集成电路设计而言,设计实现过程与具体生产工艺直接相关,因此可移植性很差。而且,只有在设计出样机或生产出芯片后才能进行实测。另外,如果某一过程存在错误,查找和修改就十分不便。
……