东北石油大学EDA原理与应用EDA原理与应用第2章EDA工具设计流程东北石油大学EDA原理与应用第2章EDA工具设计流程本章首先介绍FPGA/CPLD和ASIC设计的流程,然后分别介绍与这些设计流程中各环节密切相关的EDA工具软件,最后就Max+PlusII的基本情况和IP核作一简述。一个完整的、典型的EDA设计流程既是自顶向下设计方法的具体实施途径,也是EDA工具软件本身的组成结构。东北石油大学EDA原理与应用图形/HDL文本方式综合FPGA/CPLD适配FPGA/CPLD编程下载FPGA/CPLD器件和电路系统时序与功能门级仿真1、功能仿真2、时序仿真逻辑综合器结构综合器1、针对SRAM结构的配置2、JTAG方式下载功能仿真2.1FPGA/CPLD设计流程应用FPGA/CPLD的EDA开发流程:东北石油大学EDA原理与应用2.1.1设计输入(原理图/HDL文本编辑)1.图形输入图形输入原理图输入状态图输入波形图输入设计者将所设计的系统或电路以开发软件要求的某种形式表现出来,此过程称为设计输入。设计输入有两种形式:图形输入和文本输入。东北石油大学EDA原理与应用原理图输入方式:利用EDA工具提供的图形编辑器以原理图的方式进行输入,原理图由逻辑器件和连接线构成。原理图输入方式比较容易掌握,直观且方便,而且编辑器中有许多现成的单元器件可以利用,自己也可以根据需要设计元件。设计方式接近于底层电路布局,因此容易控制逻辑资源的耗用,节省面积。2.1.1设计输入(原理图/HDL文本编辑)东北石油大学EDA原理与应用然而原理图输入法的优点同时也是它的缺点:①随着设计规模的增大,设计的易读性迅速下降,对于图中密密麻麻的电路连线,极难搞清电路的实际功能;②一旦完成,电路结构的改变将十分困难,因而几乎没有可再利用的设计模块;③综合优化的空间很小,不能实现自顶向下设计;④移植困难、入档困难、交流困难、设计交付困难,因为不可能存在一个标准化的原理图编辑器。2.1.1设计输入(原理图/HDL文本编辑)东北石油大学EDA原理与应用状态图输入方式:根据电路的控制条件和不同的转换方式,以图形的方式表示状态图进行输入。在EDA工具的状态图编辑器上绘出状态图,填好时钟信号名、状态转换条件、状态机类型等要素后,就可以自动生成VHDL程序。波形图输入方式:将待设计的电路看成是一个黑盒子,只需要告诉EDA工具黑盒子电路的输入和输出时序波形图,EDA工具就能据此完成黑盒子电路的设计。2.1.1设计输入(原理图/HDL文本编辑)东北石油大学EDA原理与应用基本RS触发器电路组成和逻辑符号SRQQSRQQ(a)逻辑图(b)逻辑符号&&SR信号输入端,低电平有效。信号输出端:Q=0、Q=1的状态称0状态Q=1、Q=0的状态称1状态,东北石油大学EDA原理与应用SRQQ&&工作原理RSQ1001010①R=0、S=1时:由于R=0,不论原来Q为0还是1,都有Q=1;再由S=1、Q=1可得Q=0。即不论触发器原来处于什么状态都将变成0状态,这种情况称将触发器置0或复位。R端称为触发器的置0端或复位端。东北石油大学EDA原理与应用SRQQ&&0110RSQ010②R=1、S=0时:由于S=0,不论原来Q为0还是1,都有Q=1;再由R=1、Q=1可得Q=0。即不论触发器原来处于什么状态都将变成1状态,这种情况称将触发器置1或置位。S端称为触发器的置1端或置位端。101东北石油大学EDA原理与应用SRQQ&&1110③R=1、S=1时:根据与非门的逻辑功能不难推知,触发器保持原有状态不变,即原来的状态被触发器存储起来,这体现了触发器具有记忆能力。RSQ10001111不变100东北石油大学EDA原理与应用SRQQ&&0011RSQ10001111不变00不定?④R=0、S=0时:Q=Q=1,不符合触发器的逻辑关系。并且由于与非门延迟时间不可能完全相等,在两输入端的0同时撤除后,将不能确定触发器是处于1状态还是0状态。所以触发器不允许出现这种情况,这就是基本RS触发器的约束条件。1DDRS0DDRS东北石油大学EDA原理与应用RSnQ1nQ功能000001不用不用不允许0100110001nQ置01001011111nQ置111011101nnQQ1保持特性表(真值表)现态:触发器接收输入信号之前的状态,也就是触发器原来的稳定状态。次态:触发器接收输入信号之后所处的新的稳定状态。东北石油大学EDA原理与应用见MAx+plus工程RS_SCH东北石油大学EDA原理与应用波形图反映触发器输入信号取值和状态之间对应关系的图形称为波形图RSQQ置1置0置1置1置1保持不允许保持东北石油大学EDA原理与应用2.HDL文本输入这种方式与传统的计算机软件语言编辑输入基本一致,就是将使用了某种硬件描述语言(HDL)的电路设计文本,如VHDL或Verilog的源程序,进行编辑输入。可以说,应用HDL的文本输入方法克服了上述原理图输入法存在的所有弊端,为EDA技术的应用和发展打开了一个广阔的天地。2.1.1设计输入(原理图/HDL文本编辑)东北石油大学EDA原理与应用LIBRARYIEEE;--RS.vhdUSEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYRSISPORT(S,R,res:INstd_logic;Q,NOT_Q:outstd_logic);ENDRS;ARCHITECTUREbehavOFRSISsignalsel1,sel2:std_logic;BEGINprocess(res,sel1,sel2)beginifres='0'thensel1='0';sel2='1';elsif(S=‘1'andR=‘0')thensel1='0';sel2='1';elsif(S=‘0'andR=‘1')thensel1='1';sel2='0';elsif(S=‘1'andR=‘1')thensel1=sel1;sel2=sel2;endif;Q=sel1;NOT_Q=sel2;endprocess;ENDbehav;2.1.1设计输入(原理图/HDL文本编辑)东北石油大学EDA原理与应用整个综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图或状态图形描述,依据给定的硬件结构和约束条件进行编译、转换、优化,最终获得门级电路甚至更底层的电路描述网表文件。由此可见,综合器工作前,必须给定最后实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用某种网表文件的方式对应起来,成为相应的映射关系。这个映射过程不是唯一的,并且综合优化也不是单一方向的,为了达到速度、面积、性能的要求,往往需要对综合加以约束,即综合约束。2.1.2综合东北石油大学EDA原理与应用2.1.3适配适配器也称结构综合器,它的功能是将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件。逻辑综合通过后必须利用适配器将综合后网表文件针对某一具体的目标器件进行逻辑映射操作,其中包括底层器件配置、逻辑分割、逻辑优化、逻辑布局布线操作。适配所选定的目标器件(FPGA/CPLD芯片)必须属于原综合器指定的目标器件系列。适配器适配对象直接与器件的结构细节相对应。适配完成后可以利用适配所产生的仿真文件作精确的时序仿真,同时产生可用于编程的文件。东北石油大学EDA原理与应用2.1.4时序仿真和功能仿真在编程下载前必须利用EDA工具对适配生成的结果进行模拟测试,即仿真。时序仿真功能仿真就是接近真实器件运行特性的仿真,仿真文件中己包含了器件硬件特性参数,因而,仿真精度高。是直接对VHDL、原理图描述或其他描述形式的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求的过程,仿真过程不涉及任何具体器件的硬件特性。东北石油大学EDA原理与应用2.1.5编程下载如果编译、综合、适配和仿真等过程都没有发现问题,即满足原设计的要求,则可以将由适配器产生的配置/下载文件通过编程器或下载电缆载入目标芯片FPGA或CPLD中。通常,将对CPLD的下载称为编程(Program),对FPGA中的SRAM进行直接下载的方式称为配置(Configure)。FPGA与CPLD的辨别和分类主要是根据其结构特点和工作原理。通常的分类方法是:将以乘积项结构方式构成逻辑行为的器件称为CPLD,将以查找表法结构方式构成逻辑行为的器件称为FPGA。东北石油大学EDA原理与应用2.1.6硬件测试最后是将含有载入了设计的FPGA或CPLD的硬件系统进行统一测试,以便最终验证设计项目在目标系统上的实际工作情况,以排除错误,改进设计。东北石油大学EDA原理与应用2.2ASIC及其设计流程(了解)ASIC(ApplicationSpecificIntegratedCircuits,专用集成电路)主要指用于某一专门用途的集成电路器件,ASIC分类大致可分为数字ASIC、模拟ASIC和数模混合ASIC。数字ASIC模拟ASIC混合ASICASIC东北石油大学EDA原理与应用2.2.1ASIC设计方法按版图结构及制造方法分,有半定制(Semi-custom)和全定制(Full-custom)两种实现方法。全定制方法是一种基于晶体管级的,手工设计版图的制造方法。半定制法是一种约束性设计方式,约束的目的是简化设计,缩短设计周期,降低设计成本,提高设计正确率。ASIC设计方法全定制法半定制法门阵列法标准单元法可编程逻辑器件法可编程逻辑器件是一种半定制的逻辑芯片,与门阵列法、标准单元法之间的区别在于芯片内部的逻辑资源和连线资源不是由厂家预先定制好的,可以方便的通过编程下载获得重新配置。东北石油大学EDA原理与应用2.2.2一般ASIC设计的流程系统规格说明系统划分逻辑设计与综合综合后仿真芯片测试版图设计版图验证参数提取与后仿真制版、流片东北石油大学EDA原理与应用2.3常用EDA工具(了解)本节主要介绍当今广泛使用的以开发FPGA和CPLD为主的EDA工具,及部分关于ASIC设计的EDA工具。EDA工具体大致可以分为如下5个模块:设计输入编辑器仿真器HDL综合器适配器(或布局布线器)下载器东北石油大学EDA原理与应用EDA工具软件1、ALTERA:MAX+PLUSII、QUARTUSII2、LATTICE:ispEXPERTSYSTEM、ispSynarioispDesignExpertSYSTEMispCOMPILER、PAC-DESIGNER3、XILINX:FOUNDATION、ISE4、FPGACompiler、FPGAExpress、Synplify、LeonardoSpectrum...EDA公司:CADENCE、EXEMPLAR、MENTORGRAPHICS、OrCAD、SYNOPSYS、SYNPLICITY、VIEWLOGIC、...东北石油大学EDA原理与应用主要内容Max+plusII软件的安装方法;Max+plusII工程的基本设计流程;通过简单的实例演示,熟悉Max+plusII软件的用户界面、常用工具和设计流程;2.4AlteraMax+plusII概述东北石油大学EDA原理与应用2.4.1Max+plusII软件的安装把Max+plusII安装光盘放入计算机的光驱中,在自动出现的光盘安装目录中选择安装Max+plusII软件安装光盘将自动引导完成软件的安装;软件安装完成之后,在软件中指定Altera公司的授权文件(License.dat),才能正常使用;授权文件可以在Altera的网页上申请或者购买获得。也可以用安装光盘自带的适用于教学实验的版本。东北石油大学EDA原理与应用2.4.2Max+plusII软件的用户界面启动Max+plusII软件后默认的界面主要由标题栏、菜单栏、工具栏、资源管理窗口、编译状态显示窗口、信息显示窗口和工程工作区等部分组成