第2章EDA设计流程及其工具第2章EDA设计流程及其工具本章首先介绍FPGA/CPLD开发和ASIC设计的流程,然后分别介绍与这些设计流程中各环节密切相关的EDA工具软件,最后就MAX+plusII的基本情况作一简述。原理图/VHDL文本编辑综合FPGA/CPLD适配FPGA/CPLD编程下载FPGA/CPLD器件和电路系统时序与功能门级仿真1、功能仿真2、时序仿真逻辑综合器结构综合器1、isp方式下载2、JTAG方式下载3、针对SRAM结构的配置2.1FPGA/CPLD设计流程应用FPGA/CPLD的EDA开发流程:2.1.1设计输入(原理图/HDL文本编辑)1.图形输入图形输入原理图输入状态图输入波形图输入2.HDL文本输入2.1.1设计输入(原理图/HDL文本编辑)这种方式与传统的计算机软件语言编辑输入基本一致。就是将使用了某种硬件描述语言(HDL)的电路设计文本,如VHDL或Verilog的源程序,进行编辑输入。可以说,应用HDL的文本输入方法克服了上述原理图输入法存在的所有弊端,为EDA技术的应用和发展打开了一个广阔的天地。2.1.2综合整个综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图或状态图形描述,依据给定的硬件结构组件和约束控制条件进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述网表文件。由此可见,综合器工作前,必须给定最后实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用某种网表文件的方式对应起来,成为相应互的映射关系。2.1.3适配适配器也称结构综合器,它的功能是将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件,如JEDEC、Jam格式的文件。适配所选定的目标器件(FPGA/CPLD芯片)必须属于原综合器指定的目标器件系列。逻辑综合通过后必须利用适配器将综合后网表文件针对某一具体的目标器件进行逻辑映射操作,其中包括底层器件配置、逻辑分割、逻辑优化、逻辑布局布线操作。适配完成后可以利用适配所产生的仿真文件作精确的时序仿真,同时产生可用于编程的文件。2.1.4时序仿真与功能仿真时序仿真功能仿真就是接近真实器件运行特性的仿真,仿真文件中己包含了器件硬件特性参数,因而,仿真精度高。是直接对VHDL、原理图描述或其他描述形式的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求的过程,仿真过程不涉及任何具体器件的硬件特性。2.1.5编程下载通常,将对CPLD的下载称为编程(Program),对FPGA中的SRAM进行直接下载的方式称为配置(Configure),但对于OTPFPGA的下载和对FPGA的专用配置ROM的下载仍称为编程。FPGA与CPLD的辨别和分类主要是根据其结构特点和工作原理。通常的分类方法是:将以乘积项结构方式构成逻辑行为的器件称为CPLD,如Lattice的ispLSI系列、Xilinx的XC9500系列、Altera的MAX7000S系列和Lattice(原Vantis)的Mach系列等。将以查表法结构方式构成逻辑行为的器件称为FPGA,如Xilinx的SPARTAN系列、Altera的FLEX10K或ACEX1K系列等。2.1.6硬件测试最后是将含有载入了设计的FPGA或CPLD的硬件系统进行统一测试,以便最终验证设计项目在目标系统上的实际工作情况,以排除错误,改进设计。2.2ASIC及其设计流程ASIC(ApplicationSpecificIntegratedCircuits,专用集成电路)是相对于通用集成电路而言的,ASIC主要指用于某一专门用途的集成电路器件。ASIC分类大致可分为数字ASIC、模拟ASIC和数模混合ASIC。数字ASIC模拟ASIC混合ASICASIC2.2.1ASIC设计方法按版图结构及制造方法分,有半定制(Semi-custom)和全定制(Full-custom)两种实现方法。全定制方法是一种基于晶体管级的,手工设计版图的制造方法。半定制法是一种约束性设计方式,约束的目的是简化设计,缩短设计周期,降低设计成本,提高设计正确率。ASIC设计方法全定制法半定制法门阵列法标准单元法可编程逻辑器件法2.2.2一般ASIC设计的流程系统规格说明系统划分逻辑设计与综合综合后仿真芯片测试版图设计版图验证参数提取与后仿真制版、流片2.3常用EDA工具本节主要介绍当今广泛使用的以开发FPGA和CPLD为主的EDA工具,及部分关于ASIC设计的EDA工具。EDA工具大致可以分为如下5个模块:设计输入编辑器仿真器HDL综合器适配器(或布局布线器)下载器2.3常用EDA工具2.3.1设计输入编辑器2.3.2HDL综合器性能良好的FPGA/CPLD设计的HDL综合器有如下三种:Synopsys公司的FPGACompiler、FPGAExpress综合器。Synplicity公司的SynplifyPro综合器。Mentor子公司ExemplarLogic的LeonardoSpectrum综合器。综合器的使用也有两种模式:图形模式和命令行模式(Shell模式)。2.3常用EDA工具2.3.3仿真器按处理的硬件描述语言类型分,HDL仿真器可分为:(1)VHDL仿真器。(2)Verilog仿真器。(3)MixedHDL仿真器(混合HDL仿真器,同时处理Verilog与VHDL)。(4)其他HDL仿真器(针对其他HDL语言的仿真)。按仿真的电路描述级别的不同,HDL仿真器可以单独或综合完成以下各仿真步骤:(1)系统级仿真。(2)行为级仿真。(3)RTL级仿真。(4)门级时序仿真。2.3常用EDA工具2.3.4适配器(布局布线器)2.3.5下载器(编程器)适配器的任务是完成目标系统在器件上的布局布线。适配,即结构综合通常都由可编程逻辑器件的厂商提供的专门针对器件开发的软件来完成。这些软件可以单独或嵌入在厂商的针对自己产品的集成EDA开发环境中存在。EDA工具软件1、ALTERA:MAX+PLUSII、QUARTUSII3、LATTICE:ispEXPERTSYSTEM、ispSynarioispDesignExpertSYSTEMispCOMPILER、PAC-DESIGNER2、XILINX:FOUNDATION、ISE4、FPGACompiler、FPGAExpress、Synplify、LeonardoSpectrum...EDA公司:CADENCE、EXEMPLAR、MENTORGRAPHICS、OrCAD、SYNOPSYS、SYNPLICITY、VIEWLOGIC、...2.4MAX+plusII概述图形或HDL编辑器MAX+plusII设计流程编译网表提取、数据库建立、逻辑综合、逻辑分割、适配延时网表提取、编程文件汇编编程器设计输入综合或编辑适配器件下载仿真MAX+plusII的启动界面:2.4MAX+plusII概述MAX+plusII的原理图编辑器MAX+plusII的HDL文本编辑器MAX+plusII的波形编辑器