《EDA技术与应用讲义EDA设计流程及其工具.pptx》由会员分享,可在线阅读,更多相关《EDA技术与应用讲义EDA设计流程及其工具.pptx(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、EDA设计的一般步骤1.电路的模块划分2.设计输入3.器件和引脚指配4.编译与排错5.功能仿真和时序仿真6.编程与配置,设计代码的芯片运行第1页/共32页电路的模块划分人工 根据电路功能进行模块划分合理的模块划分关系到1.电路的性能2.实现的难易程度根据模块划分和系统功能确定:PLD芯片型号模块划分后,就可以进行 具体设计 了第2页/共32页设计输入一般EDA软件允许3种设计输入:1.HDL语言2.电路图3.波形输入第3页/共32页何为?器件和引脚指配器件指配F为设计输入选择合适的PLD器件型号何谓引脚指配F将设计代码(图形)中的端口(PORT)和PLD芯片的引脚 (PIN)对应起来的.指配文
2、件FMAX+PLUSII:“*.acf”FQuartusII:“*.qsf”第4页/共32页器件和引脚指配的方法方法有2种1.在软件的菜单界面中指配2.修改指配文件(是文本文件)第5页/共32页菜单界面中指配第6页/共32页修改指配文件CHIPio_2d_lockBEGIN|iVD:INPUT_PIN=7;|iHD:INPUT_PIN=8;|iDENA:INPUT_PIN=6;|iCLK:INPUT_PIN=211;|oCLK:OUTPUT_PIN=237;|oVD:OUTPUT_PIN=234;|oHD:OUTPUT_PIN=233;|oDENA:OUTPUT_PIN=235;.DEVICE
3、=EPF10K30AQC240-2;END;.第7页/共32页编译与排错编译过程有2种,作用分别为:1.语法编译:只是综合并输出网表F编译设计文件,综合产生门级代码F编译器只运行到综合这步就停止了F编译器只产生估算的延时数值2.完全的编译:包括编译,网表输出,综合,配置器件F编译器除了完成以上的步骤,还要将设计配置到ALTERA的器件中去F编译器根据器件特性产生真正的延时时间和给器件的配置文件第8页/共32页功能仿真和时序仿真仿真的概念:在设计代码下载到芯片前,在EDA软件中对设计的输出进行波形仿真。常用的2种仿真模式1.功能仿真对设计的逻辑功能进行仿真2.时序仿真对设计的逻辑功能和信号的时间
4、延时进行仿真。仿真前还要做的工作输入信号的建立Quartus II软件中关于仿真的原文第9页/共32页2种 仿真文件1.矢量波形文件:vaVectorWaveformFile(.vwf)2.文本矢量文件vatext-basedVectorFile(.vec),第10页/共32页编程与配置最后,如果仿真 也正确 的话,那我们就可以 将设计代码 配置或者编程 到 芯片 中了编程的文件类型对于CPLD或者EPC2,ECS1等配置芯片,编程文件扩展名为:“*.POF“配置的文件类型对于FPGA芯片,配置文件扩展名为:“*.SOF“第11页/共32页硬件设计和软件设计的时间协调1.软件模块划分,器件的初
5、步信号确定(主要是根据需要的I/O引脚的数量)2.软件设计,硬件外围电路设计和器件选择3.软件仿真4.仿真完成后,器件信号的重新审核,进行硬件电路图设计5.综合调试6.完成第12页/共32页设计的几个问题如何组织多个设计文件的系统?,项目的概念。时钟系统如何设计?电路的设计功耗高速信号的软件和硬件设计第13页/共32页The end.第14页/共32页以下内容为正文的引用,可不阅读。第15页/共32页常用EDA工具软件EDA软件方面,大体可以分为两类:1.PLD器件厂商提供的EDA工具。较著名的如:I.Altera公司的Max+plusII和QuartusII、II.Xilinx公司的Foun
6、dationSeries、III.Latice-Vantis公司的ispEXERTSystem。2.第三方专业软件公司提供的EDA工具。常用的有:I.Synopsys公司的FPGACompilerII、II.ExemplarLogic公司的LeonardoSpectrum、III.Synplicity公司的Synplify。第三方工具软件是对CPLD/FPGA生产厂家开发软件的补充和优化,如通常认为Max+plusII和QuartusII对VHDL/VerilogHDL逻辑综合能力不强,如果采用专用的HDL工具进行逻辑综合,会有效地提高综合质量。第16页/共32页ALTERA 公司的EDA合作
7、伙伴 第17页/共32页硬件描述语言:起源是电子电路的文本描述。最早的发明者:美国国防部,VHDL,1983大浪淘沙,为大者二:VHDL 和 Verilog HDL其他的小兄弟:ABEL、AHDL、System Verilog、System C。第18页/共32页一个D触发器的VHDL代码例子1.-VHDLcodeposition:p83_ex4_11_DFF12.-3.-LIBARYIEEE;4.-USEIEEE.STD_LOGIC_1164.ALL;5.ENTITYDFF1IS6.PORT(CLK:INBIT;7.D:INBIT;8.Q:OUTBIT9.);10.ENDENTITYDFF1
8、;11.ARCHITECTUREbhvOFDFF1IS12.BEGIN13.PROCESS(CLK)14.BEGIN15.IFCLKEVENTAND(CLK=1)AND(CLKLAST_VALUE=0)THEN16.-严格的CLK信号上升沿定义17.Q第24页/共32页Compiler Netlist Extractor(编译器网表提取器)TheCompilermodulethatconvertseachdesignfileinaproject(oreachcellofanEDIFInputFile)intoaseparatebinaryCNF.Thefilename(s)oftheCNF(s
9、)arebasedontheprojectname.ExampleTheCompilerNetlistExtractoralsocreatesasingleHIFthatdocumentsthehierarchicalconnectionsbetweendesignfiles.Thismodulecontainsabuilt-inEDIFNetlistReader,VerilogNetlistReader,VHDLNetlistReader,andconvertersthattranslateADFsandSMFsforusewithMAX+PLUSII.Duringnetlistextrac
10、tion,thismodulecheckseachdesignfileforproblemssuchasduplicatenodenames,missinginputsandoutputs,andoutputsthataretiedtogether.返回第25页/共32页Database Builder(数据库构建器):The Compiler module that builds a single,fully flattened project database that integrates all the design files in a project hierarchy.The D
11、atabase Builder uses the HIF to link the CNFs that describe the project.Based on the HIF data,the Database Builder copies each CNF into the project database.Each CNF is inserted into the database as many times as it is used within the original hierarchical project.The database thus preserves the ele
12、ctrical connectivity of the project.The Compiler uses this database for the remainder of project processing.Each subsequent Compiler module updates the database until it contains the fully optimized project.In the beginning,the database contains only the original netlists;at the end,it contains a fu
13、lly minimized,fitted project,which the Assembler uses to create one or more files for device programming.As it creates the database,the Database Builder examines the logical completeness and consistency of the project,and checks for boundary connectivity and syntactical errors(e.g.,a node without a
14、source or destination).Most errors are detected and can be easily corrected at this stage of project processing.返回第26页/共32页Logic SynthesizerTheCompilermodulethatsynthesizesthelogicinaprojectsdesignfiles.UsingthedatabasecreatedbytheDatabaseBuilder,theLogicSynthesizercalculatesBooleanequationsforeachi
15、nputtoaprimitiveandminimizesthelogicaccordingtoyourspecifications.ForprojectsthatuseJKorSRflipflops,theLogicSynthesizercheckseachcasetodeterminewhetheraDorTflipflopwillimplementtheprojectmoreefficiently.DorTflipflopsaresubstitutedwhereappropriate,andtheresultingequationsareminimizedaccordingly.TheLo
16、gicSynthesizeralsosynthesizesequationsforflipflopstoimplementstateregistersofstatemachines.AnequationforeachstatebitisoptimallyimplementedwitheitheraDorTflipflop.Ifnostatebitassignmentshavebeenmade,orifanincompletesetofstatebitassignmentshasbeencreated,theLogicSynthesizerautomaticallycreatesasetofst
17、atebitstoencodethestatemachine.Theseencodingsarechosentominimizetheresourcesused.返回第27页/共32页Fitter(适配器)TheCompilermodulethatfitsthelogicofaprojectintooneormoredevices.UsingthedatabaseupdatedbythePartitioner,theFittermatchesthelogicrequirementsoftheprojectwiththeavailableresourcesofoneormoredevices.I
18、tassignseachlogicfunctiontothebestlogiccelllocationandselectsappropriateinterconnectionpathsandpinassignments.TheFitterattemptstomatchanyresourceassignmentsmadefortheprojectwiththeresourcesonthedevice.Ifitcannotfindafit,theFitterallowsyoutooverridesomeorallofyourassignmentsorterminatecompilation.The
19、FittermodulegeneratesaFitFilethatdocumentspin,buriedlogiccell,chip,clique,anddeviceassignmentsmadebytheFittermoduleinthelastsuccessfulcompilation.Eachtimetheprojectcompilessuccessfully,theFitFileisoverwritten.Youcanback-annotatetheassignmentsinthefiletopreservetheminfuturecompilations.返回第28页/共32页Tim
20、ing SNF Extractor(时序SNF文件提取器)TheCompilermodulethatcreatesatimingSNFcontainingthelogicandtiminginformationrequiredfortimingsimulation,delayprediction,andtiminganalysis.TheTimingSNFExtractoristurnedonwiththeTimingSNFExtractorcommand(Processingmenu).ItisalsoturnedonautomaticallywhenyouturnontheEDIFNetl
21、istWriter,VerilogNetlistWriter,orVHDLNetlistWritercommand(Interfacesmenu).TheTimingSNFExtractorcannotbeturnedonatthesametimeastheFunctionalSNFExtractorortheLinkedSNFExtractor.AtimingSNFdescribesthefullyoptimizedcircuitafteralllogicsynthesisandfittinghavebeencompleted.Regardlessofwhetheraprojectispar
22、titionedintomultipledevices,thetimingSNFdescribesaprojectasawhole.Therefore,timingsimulationandtiminganalysis(includingdelayprediction)areavailableonlyfortheprojectasawhole.Neithertimingsimulationnorfunctionaltestingisavailableforindividualdevicesinamulti-deviceproject.Functionaltestingisavailableon
23、lyforasingle-deviceproject.返回第29页/共32页Assembler(汇编器)TheCompilermodulethatcreatesoneormoreprogrammingfilesforprogrammingorconfiguringthedevice(s)foraproject.TheAssemblermodulecompletesprojectprocessingbyconvertingtheFittersdevice,logiccell,andpinassignmentsintoaprogrammingimageforthedevice(s),inthefo
24、rmofoneormorePOFs,SOFs,HexFiles,TTFs,JamFiles,JBCFiles,and/orJEDECFiles.POFsandJEDECFilesarealwaysgenerated;SOFs,HexFiles,andTTFsarealwaysgeneratediftheprojectusesACEX1K,FLEX6000,FLEX8000orFLEX10Kdevices;andJamFilesandJBCFilesarealwaysgeneratedforMAX9000,MAX7000B,MAX7000AEorMAX3000Aprojects.Ifyoutur
25、nontheEnableJTAGSupportoptionintheClassic&MAXGlobalProjectDeviceOptionsdialogbox(Assignmenu)ortheClassic&MAXIndividualDeviceOptionsdialogbox,theAssemblerwillalsogenerateJamFilesandJBCFilesforMAX7000AorMAX7000Sprojects.Aftercompilation,youcanalsouseSOFstocreatedifferenttypesoffilesforconfiguringFLEX6
26、000,FLEX8000andFLEX10KdeviceswithConvertSRAMObjectFiles(Filemenu).TheprogrammingfilescanthenbeprocessedbytheMAX+PLUSIIProgrammerandtheMPUorAPUhardwaretoproduceworkingdevices.SeveralotherprogramminghardwaremanufacturersalsoprovideprogrammingsupportforAlteradevices.返回第30页/共32页Simulation Mode Functiona
27、lSimulatesthebehaviorofflattenednetlistsextractedfromthedesignfiles.YoucanuseTclcommandsandscriptstocontrolsimulationandtoprovidevectorstimuli.YoucanalsoprovidevectorstimuliinaVectorWaveformFile(.vwf)oratext-basedVectorFile(.vec),althoughtheSimulatorusesonlythesequenceoflogiclevelchanges,andnottheir
28、timing,fromthevectorstimuli.Thistypeofsimulationalsoallowsyoutochecksimulationcoverage(theratioofoutputportsactuallytogglingbetween1and0duringsimulation,comparedtothetotalnumberofoutputportspresentinthenetlist).TimingUsesafullycompilednetlistthatincludesestimatedoractualtiminginformation.YoucanuseTc
29、lcommandsandscriptstocontrolsimulationandtoprovidevectorstimuli.YoucanalsoprovidevectorstimuliinaVectorWaveformFile(.vwf)oratext-basedVectorFile(.vec).Thistypeofsimulationalsoallowsyoutochecksetupandholdtimes,detectglitches,andchecksimulationcoverage(theratioofoutputportsactuallytogglingbetween1and0duringsimulation,comparedtothetotalnumberofoutputportspresentinthenetlist).Timing using Fast Timing ModelPerformsatimingsimulationusingtheFastTimingModeltosimulatefastestpossibletimingconditionswiththefastestdevicespeedgrade第31页/共32页感谢您的欣赏!第32页/共32页
限制150内