《数字逻辑电路的EDA设计.ppt》由会员分享,可在线阅读,更多相关《数字逻辑电路的EDA设计.ppt(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 EDA(EDA(Electronic Design AutomationElectronic Design Automation)电子设计自动化电子设计自动化 EDA EDA技术是以微电子技术为物理层面,现技术是以微电子技术为物理层面,现代电子设计技术为灵魂,计算机软件技术为手代电子设计技术为灵魂,计算机软件技术为手段,最终形成集成电子系统或专用集成电路段,最终形成集成电子系统或专用集成电路ASICASIC为目的一门新兴技术。为目的一门新兴技术。6.1、EDA技术概述技术概述 使用对象:使用对象:n专用集成电路专用集成电路ASICASIC的芯片设计研发人员的芯片设计研发人员n广大的电子线路设
2、计人员广大的电子线路设计人员电子设计自动化电子设计自动化EDAEDA(Electronic Design Electronic Design AutomationAutomation)技术是以大规模)技术是以大规模可编程逻辑可编程逻辑器件器件为设计载体,通过为设计载体,通过硬件描述语言硬件描述语言设计,设计,EDAEDA软件软件编译、仿真,最终编译、仿真,最终下载下载到设计载体到设计载体中,从而完成系统电路设计任务的新一代中,从而完成系统电路设计任务的新一代设计技术。设计技术。、EDAEDA技术的发展及技术特色技术的发展及技术特色 EDAEDA技术与技术与计算机、集成电路、电子系统设计计算机、
3、集成电路、电子系统设计的发展密切相关,汇集了计算机科学领域的大多的发展密切相关,汇集了计算机科学领域的大多数最新研究成果,以高性能的计算机作为工作平数最新研究成果,以高性能的计算机作为工作平台,开发出来的一整套电子设计系统软件。台,开发出来的一整套电子设计系统软件。EDAEDA技技术经历了三个发展阶段。术经历了三个发展阶段。2020世纪世纪7070年代的计算机辅助设计(年代的计算机辅助设计(CADCAD)阶段。)阶段。2020世纪世纪8080年代的计算机辅助工程设计(年代的计算机辅助工程设计(CAEDCAED)阶段。阶段。2020世纪世纪9090年代电子系统设计自动化(年代电子系统设计自动化(
4、EDAEDA)阶)阶段。段。在这个阶段分别开发了一个个独立的软件工在这个阶段分别开发了一个个独立的软件工具,主要有电路原理图绘制、具,主要有电路原理图绘制、PCBPCB(印刷电路板)(印刷电路板)图绘制、电路模拟、逻辑模拟等。图绘制、电路模拟、逻辑模拟等。它们利用计算机的图形编辑、分析和计算等它们利用计算机的图形编辑、分析和计算等能力,协助工程师设计电子线路,使设计人员从大能力,协助工程师设计电子线路,使设计人员从大量繁琐、重复计算和绘图工作中解脱出来。量繁琐、重复计算和绘图工作中解脱出来。但总体来看自动化程度低,需要人工干预整但总体来看自动化程度低,需要人工干预整个设计过程。美国个设计过程。
5、美国AccelAccel公司开发的公司开发的TangoTango布线软件布线软件就是最具代表性的产品。就是最具代表性的产品。20世纪世纪70年代的计算机辅助设计(年代的计算机辅助设计(CAD)阶段)阶段这一阶段的这一阶段的EDAEDA工具以逻辑模拟、定时分析、工具以逻辑模拟、定时分析、故障仿真、自动布局和布线为核心,重点解决电故障仿真、自动布局和布线为核心,重点解决电路设计完成之前的路设计完成之前的功能测试问题功能测试问题,代替了设计师,代替了设计师的部分工作,利用这些工具,设计师能在产品制的部分工作,利用这些工具,设计师能在产品制造之前预知产品的功能与性能。我们所熟悉的造之前预知产品的功能与
6、性能。我们所熟悉的orCADorCAD和和ProtelProtel早期的版本是这一阶段中两种典型早期的版本是这一阶段中两种典型的设计工具。的设计工具。但是大部分但是大部分从原理图出发从原理图出发的的EDAEDA工具仍然不工具仍然不能适应复杂电子系统的设计要求,而具体化的元能适应复杂电子系统的设计要求,而具体化的元件图形制约着优化设计。件图形制约着优化设计。2020世纪世纪8080年代的计算机辅助工程设计年代的计算机辅助工程设计(CAED)(CAED)阶段阶段2020世纪世纪9090年代,设计师逐步从使用硬件转向设年代,设计师逐步从使用硬件转向设计硬件,从单个电子产品的开发转向系统级的电子计硬件
7、,从单个电子产品的开发转向系统级的电子产品开发产品开发SOCSOC(System on a Chip,System on a Chip,即片上系统集成即片上系统集成)。)。EDAEDA工具是以系统级设计为核心,包括系统行工具是以系统级设计为核心,包括系统行为级描述与结构综合、系统仿真与测试验证、系统为级描述与结构综合、系统仿真与测试验证、系统划分与指标分配、系统决策与文件生成等一整套的划分与指标分配、系统决策与文件生成等一整套的电子系统设计自动化工具。这时的电子系统设计自动化工具。这时的EDAEDA工具不仅具有工具不仅具有电子系统设计的能力,而且还能提供独立于工艺和电子系统设计的能力,而且还能
8、提供独立于工艺和厂家的系统级设计,具有高级抽象的设计构思手段。厂家的系统级设计,具有高级抽象的设计构思手段。具备上述功能的具备上述功能的EDAEDA软件,可以使得电子工程软件,可以使得电子工程师在不熟悉半导体工艺的情况下,完成电子系统的师在不熟悉半导体工艺的情况下,完成电子系统的设计。设计。20世纪世纪90年代电子系统设计自动化年代电子系统设计自动化(EDA)阶段阶段6.1.2 EDA技术的内容技术的内容三三部部分分大规模可编程逻辑器件大规模可编程逻辑器件硬件描述语言硬件描述语言EDAEDA开发软件开发软件一、可编程逻辑器件一、可编程逻辑器件集集成成电电路路专用集成电路专用集成电路 (ASIC
9、)通用集成电路:通用集成电路:TTL系列、系列、CMOS系列、存储器、系列、存储器、MCU掩膜掩膜ASIC可编程可编程ASIC简单可编程器件简单可编程器件(PAL、GAL)复杂可编程器件复杂可编程器件 (CPLD)现场可编程门阵列现场可编程门阵列(FPGA)ASICASIC(Application(Application Specific Specific Integrated Integrated CircuitsCircuits)直直译译为为“专用集成电路专用集成电路”,ASICASIC在构成电子系统时具有以下几个方面的优越性:在构成电子系统时具有以下几个方面的优越性:(1)提高了产品的可
10、靠性提高了产品的可靠性。用。用ASIC芯片进行系统集成后,外芯片进行系统集成后,外部连线减少,为调试和维修带来极大的方便,系统可靠性部连线减少,为调试和维修带来极大的方便,系统可靠性明显提高。明显提高。(2)易于获得高性能易于获得高性能。ASIC针对专门的用途而特别设计,它针对专门的用途而特别设计,它是系统设计、电路设计和工艺设计的紧密结合,这种一体是系统设计、电路设计和工艺设计的紧密结合,这种一体化的设计有利于得到前所未有的高性能系统。化的设计有利于得到前所未有的高性能系统。(3)可增强产品的保密性和竞争力可增强产品的保密性和竞争力。电子产品中的。电子产品中的ASIC芯片芯片对用户来说相当于
11、一个对用户来说相当于一个“黑盒子黑盒子”。(4)在大批量应用时,可显著降低产品的综合成本在大批量应用时,可显著降低产品的综合成本。用。用ASIC来设计和生产产品大幅度减少了印刷电路板面积及其他元来设计和生产产品大幅度减少了印刷电路板面积及其他元器件数量,降低了装配调试费用。器件数量,降低了装配调试费用。(5)提高了产品的工作速度提高了产品的工作速度。(6)缩小了体积,减轻了重量,降低了功耗缩小了体积,减轻了重量,降低了功耗。可编程可编程ASIC的优点(与掩膜的优点(与掩膜ASIC相比):相比):1缩短了研制周期缩短了研制周期 可可编编程程ASIC可可以以按按一一定定的的规规格格型型号号像像通通
12、用用器器件件一一样样在在市市场场上上买买到到。由由于于采采用用先先进进的的EDA,可可编编程程ASIC 的的设设计计与与编编程程均均十十分分方方便便和和有有效效,整整个个设设计计通通常常只只需需几几天天便便可可完完成成,缩缩短短了产品研制周期,有利于产品的快速上市。了产品研制周期,有利于产品的快速上市。2降低了设计成本降低了设计成本 制制作作掩掩膜膜ASIC的的前前期期投投资资费费用用较较高高,只只有有在在生生产产批批量量很很大大的的情情况况下下才才有有价价值值。这这种种设设计计方方法法还还需需承承担担很很大大的的风风险险,因因为为一一旦旦设设计计中中有有错错误误或或设设计计不不完完善善,则则
13、全全套套掩掩膜膜便便不不能能再再用用。采采用用可可编编程程ASIC为为降降低低投投资资风风险险提提供供了了合合理理的的选选择择途途径径,它它不需掩膜制作费用,比直接设计掩膜不需掩膜制作费用,比直接设计掩膜ASIC费用小、成功率高。费用小、成功率高。3提高了设计灵活性提高了设计灵活性 可可编编程程ASIC是是一一种种由由用用户户编编程程实实现现芯芯片片功功能能的的器器件件,与由工厂编程的掩膜与由工厂编程的掩膜ASIC相比,它具有更好的设计灵活性。相比,它具有更好的设计灵活性。l ABELABEL语言语言l VHDLVHDL语言语言l VerilogVerilog HDL HDL语言语言6.4 6
14、.4 硬件描述语言硬件描述语言(HDLHDL)VHDLVHDL和和Verilog-HDLVerilog-HDL语言先后成为语言先后成为IEEEIEEE标准标准IEEE(Institute of Electrical and Electronics Engineers)美国电气及电子工程师学会美国电气及电子工程师学会ABELABEL硬件描述语言硬件描述语言 ABEL-HDLABEL-HDL是是美美国国DATA DATA I/OI/O公公司司开开发发的的硬硬件件描描述述语语言言。支支持持布布尔尔方方程程、真真值值表表、状状态态图图等等逻逻辑辑表表达达方方式式,能能准准确确地地表表达达计计数数器器、
15、译译码码器器等等的的逻逻辑功能。辑功能。由由于于ABELABEL是是在在早早期期的的简简单单可可编编程程逻逻辑辑器器件件(如如GAL)GAL)的的基基础础上上发发展展而而来来的的,因因此此进进行行较较复复杂杂的的逻逻辑辑设设计计时时,ABEL-HDLABEL-HDL与与VHDLVHDL、Verilog-HDLVerilog-HDL这这些些从从集集成电路发展起来的成电路发展起来的HDLHDL相比稍显逊色。相比稍显逊色。ABEL-HDLABEL-HDL语语言言的的开开发发工工具具很很多多,有有DOSDOS版版的的ABEL4.0(ABEL4.0(目目前前主主要要用用于于GALGAL的的开开发发)、L
16、atticeLattice的的ispLeverispLever、XilinxXilinx的的FoundationFoundation等软件等软件ABELABEL硬件描述语言硬件描述语言MODULE A01MODULE A01 A,B,C,D A,B,C,DPIN;PIN;E EPIN ISTYPECOM;PIN ISTYPECOM;EQUATIONS EQUATIONS E=!(A&B#C&D);E=!(A&B#C&D);END END Verilog-HDLVerilog-HDL硬件描述语言硬件描述语言 Verilog-HDLVerilog-HDL是是 在在 19831983年年 由由 GD
17、A(Gateway GDA(Gateway Design Automation)Design Automation)公司的公司的Phil MoorbyPhil Moorby首创的。首创的。Verilog-HDLVerilog-HDL是是专专门门为为ASICASIC设设计计而而开开发发的的,本本身身即即适适合合ASICASIC设设计计。在在亚亚微微米米和和深深亚亚微微米米ASICASIC已已成成为为电电子子设设计计主主流流的的今今天天,Verilog-HDLVerilog-HDL的的发发展展前前景景是是非非常常远远大大的的。Verilog-HDLVerilog-HDL较较为为适适合合算算法法级级
18、(Algorithm)(Algorithm)、寄寄存存器器传传输输级级(RTL)(RTL)、逻逻辑辑级级(Logic)(Logic)和和门门级级(Gate)(Gate)设设计计,而而对对于于特特大大型型的的系系统级设计,则统级设计,则VHDLVHDL更为适合。更为适合。module AOI(A,B,C,D,E);/module AOI(A,B,C,D,E);/模块名为模块名为AOIAOIinput A,B,C,D;input A,B,C,D;/定定义义模模块块的的输输入入端端口口A A,B B,C C,D Doutput E;output E;/定义模块的输出端口定义模块的输出端口E Eass
19、ign E=(A&B)|(C&D);assign E=(A&B)|(C&D);/模模块块内内的的逻辑描述逻辑描述endmoduleendmoduleVerilog-HDLVerilog-HDL硬件描述语言硬件描述语言VHDLVHDL硬件描述语言硬件描述语言 VHDLVHDL(Very(Very High High Speed Speed Integrated Integrated Circuits Circuits Hardware Hardware Description Description LanguageLanguage,超超高高速速集集成成电电路路硬硬件件描描述述语语言言)是是美美
20、国国国国防防部部于于2020世世纪纪8080年年代代后后期期出出于于军军事工业的需要开发的。事工业的需要开发的。VHDLVHDL语语言言涵涵盖盖面面广广,抽抽象象描描述述能能力力强强,支支持持硬硬件件的的设计、验证、综合与测试。设计、验证、综合与测试。各各种种硬硬件件描描述述语语言言中中,VHDLVHDL的的抽抽象象描描述述能能力力最最强强,因因此此运运用用VHDLVHDL进进行行复复杂杂电电路路设设计计时时,往往往往采采用用自自顶顶向向下下分分层层设设计计的的方方法法。首首先先从从系系统统级级功功能能设设计计开开始始,对对系系统统的的高高层层模模块块进进行行行行为为与与功功能能描描述述并并进
21、进行行高高层层次次的的功功能能仿仿真,然后从高层模块开始往下逐级细化描述。真,然后从高层模块开始往下逐级细化描述。ENTITY A01 ISENTITY A01 ISPORT(A,B,C,DPORT(A,B,C,D:IN BIT;:IN BIT;E E:OUT BIT);:OUT BIT);END A01;END A01;ARCHITECTURE a OF A01 ISARCHITECTURE a OF A01 ISBEGINBEGINE=NOT(A AND B)OR(C AND D);E=NOT(A AND B)OR(C AND D);END a;END a;VHDLVHDL硬件描述语言硬件
22、描述语言VHDLVHDL和和Verilog-HDLVerilog-HDL的比较的比较l VHDLVHDL语语言言是是一一种种高高级级描描述述语语言言,适适用用于于电电路路高级建模,综合的效率和效果都比较好。高级建模,综合的效率和效果都比较好。lVerilogVerilog语语言言是是一一种种较较低低级级的的描描述述语语言言,最最适适于描述门级电路,易于控制电路资源。于描述门级电路,易于控制电路资源。学习学习HDL的几点重要提示的几点重要提示1.了解了解HDL的可综合性问题:的可综合性问题:HDL有两种用途:系统仿真和硬件实现。有两种用途:系统仿真和硬件实现。如果程如果程序只用于仿真,那么几乎所
23、有的语法和编程方法都可序只用于仿真,那么几乎所有的语法和编程方法都可以使用。以使用。但如果我们的程序是用于硬件实现(例如:但如果我们的程序是用于硬件实现(例如:用于用于FPGA设计),那么我们就必须保证程序设计),那么我们就必须保证程序“可综合可综合”(程序的功能可以用硬件电路实现)。(程序的功能可以用硬件电路实现)。不可综合的不可综合的HDL语句在软件综合时将被忽略或者报错。语句在软件综合时将被忽略或者报错。我们应当我们应当牢记一点:牢记一点:“所有的所有的HDL描述都可以用于仿真,但不描述都可以用于仿真,但不是所有的是所有的HDL描述都能用硬件实现。描述都能用硬件实现。”2.用硬件电路设计
24、思想来编写用硬件电路设计思想来编写HDL:学好学好HDL的关键是充分理解的关键是充分理解HDL语语句和硬件电路的关系。句和硬件电路的关系。编写编写HDL,就是,就是在描述一个电路,我们写完一段程序以在描述一个电路,我们写完一段程序以后,应当对生成的电路有一些大体上的后,应当对生成的电路有一些大体上的了解,了解,而不能用纯软件的设计思路来编而不能用纯软件的设计思路来编写硬件描述语言。写硬件描述语言。要做到这一点,需要要做到这一点,需要我们多实践,多思考,多总结。我们多实践,多思考,多总结。3.语法掌握贵在精,不在多语法掌握贵在精,不在多30%的基本的基本HDL语句就可以完成语句就可以完成95%以
25、上的电路设计,很多生僻的语句以上的电路设计,很多生僻的语句并不能被所有的综合软件所支持,在程并不能被所有的综合软件所支持,在程序移植或者更换软件平台时,容易产生序移植或者更换软件平台时,容易产生兼容性问题,也不利于其他人阅读和修兼容性问题,也不利于其他人阅读和修改。建议多用心钻研常用语句,理解这改。建议多用心钻研常用语句,理解这些语句的硬件含义,这比多掌握几个新些语句的硬件含义,这比多掌握几个新语法要有用的多。语法要有用的多。HDL与原理图输入法的关系与原理图输入法的关系HDL和传统的原理图输入方法的关系就好比和传统的原理图输入方法的关系就好比是高级语言和汇编语言的关系。是高级语言和汇编语言的
26、关系。HDL的可移植性的可移植性好,使用方便,但效率不如原理图;原理图输入好,使用方便,但效率不如原理图;原理图输入的可控性好,效率高,比较直观,但设计大规模的可控性好,效率高,比较直观,但设计大规模CPLD/FPGA时显得很烦琐,移植性差。在真正时显得很烦琐,移植性差。在真正的的PLD/FPGA设计中,通常建议采用原理图和设计中,通常建议采用原理图和HDL结合的方法来设计,适合用原理图的地方就结合的方法来设计,适合用原理图的地方就用原理图,适合用用原理图,适合用HDL的地方就用的地方就用HDL,并没有,并没有强制的规定。在最短的时间内,用自己最熟悉的强制的规定。在最短的时间内,用自己最熟悉的
27、工具设计出高效,稳定,符合设计要求的电路才工具设计出高效,稳定,符合设计要求的电路才是我们的最终目的。是我们的最终目的。HDL开发流程开发流程用用VHDL/VerilogHD语言开发语言开发PLD/FPGA的完整流程为:的完整流程为:1.文本编辑:文本编辑:用任何文本编辑器都可以进行,也用任何文本编辑器都可以进行,也可以用专用的可以用专用的HDL编辑环境。通常编辑环境。通常VHDL文件保存为文件保存为.vhd文件,文件,Verilog文文件保存为件保存为.v文件文件2.功能仿真:功能仿真:将文件调入将文件调入HDL仿真软件进行功能仿仿真软件进行功能仿真,检查逻辑功能是否正确真,检查逻辑功能是否
28、正确.3.逻辑综合:逻辑综合:将源文件调入逻辑综合软件进行综合,将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式和信号即把语言综合成最简的布尔表达式和信号的连接关系。逻辑综合软件会生成的连接关系。逻辑综合软件会生成.edf(edif)的)的EDA工业标准文件。工业标准文件。4.布局布线:布局布线:将将.edf文件调入文件调入PLD厂家提供的软件中进厂家提供的软件中进行布线,即把设计好的逻辑安放到行布线,即把设计好的逻辑安放到PLD/FPGA内内5.时序仿真:时序仿真:需要利用在布局布线中获得的精确参数,需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序。(也叫后仿真)
29、用仿真软件验证电路的时序。(也叫后仿真)6.编程下载:编程下载:确认仿真无误后,将文件下载到芯片中确认仿真无误后,将文件下载到芯片中l LatticeLattice公司:公司:ispLEVERispLEVERl Xilinx Xilinx公司公司:Foundation:Foundationl AlteraAltera公司公司:MAX+plusMAX+plus,QuartusQuartusEDAEDA设计软件设计软件 专业专业EDAEDA软件商提供的,称为第三方设计软件软件商提供的,称为第三方设计软件 如如CadenceCadence、MentalMental、SynopsysSynopsys、
30、ViewlogicViewlogic和和DATA DATA I/OI/O公公司司的的设设计计软软件件。第第三三方方软软件件往往往往能能够够开开发发多多家家公公司司的的器器件件,在在利利用用第第三三方方软软件件设设计计具具体体型型号号的的器器件件时时,需需要要器器件件制制造造商商提提供供器器件件库库和和适适配配器器(Fitter)(Fitter)软件。软件。ispLEVER是是Lattice公司推出的一套公司推出的一套EDA软件。设计输入可采用原理图、硬件软件。设计输入可采用原理图、硬件描述语言、混合输入三种方式。能对所设计描述语言、混合输入三种方式。能对所设计的数字电子系统进行功能仿真和时序仿
31、真。的数字电子系统进行功能仿真和时序仿真。编译器是此软件的核心,能进行逻辑优化,编译器是此软件的核心,能进行逻辑优化,将逻辑映射到器件中去,自动完成布局与布将逻辑映射到器件中去,自动完成布局与布线并生成编程所需要的熔丝图文件。软件中线并生成编程所需要的熔丝图文件。软件中的的ConstraintsEditor工具允许经由一个图工具允许经由一个图形用户接口选择形用户接口选择I/O设置和引脚分配。软件设置和引脚分配。软件包含包含Synolicity公司的公司的“Synplify”综合工综合工具和具和Lattice的的ispVM器件编程工具。器件编程工具。作业作业1、掌握频率计测量原理;、掌握频率计测量原理;2、画出频率测量原理方框图、画出频率测量原理方框图3、设计一个带有置零端、使能端和进位输出、设计一个带有置零端、使能端和进位输出端的端的8421BCD码十进制计数器。(置零低电码十进制计数器。(置零低电平有效、使能端高电平有效)平有效、使能端高电平有效)
限制150内