1一、EDA的概念1、定义:电子(系统)设计的自动化,或电子线路或系统的计算机辅助设计。是基于计算机平台的一整套先进的设计电子系统的软件工具。2、研究对象:电子电路与系统设计的全过程:低频、高频、微波电路、线性与非线性电路、模拟和数字电路、分离电路和集成电路。3、设计的层次三个层次:系统级电路级物理实现级。4.EDA技术发展的三个阶段CAD阶段(70s):EDA的初级阶段。利用功能有限的计算机进行简单的电路性能分析和预测,PCB的计算机辅助布局布线,如smartwork。CAE阶段(80s):CAD工具逐步完善和发展,将许多单点工具集成在一起使用,EDA阶段(90s):超大规模集成电路时代,集成电路工艺水平达到深亚微米,一个芯片可集成上千万个晶体管,速度达gigabit/s,对电子设计的工具提出了更高的要求,同时也促进了设计工具的发展。出现了众多的ICCAD工具,如CADENCE,MENTORGRAPHICS,SYNOPSIS等著名公司的EDA软件;中国的熊猫系统等。6、现代EDA技术的特点1)采用硬件描述语言(HDL);具有如下突出优点:语言的公开性和可利用性、设计与工艺无关、宽范围的描述能力、便于大规模系统设计和设计的可复用、交流、保存、修改;2)高层综合和优化:开发工具支持系统级的综合和仿真,可更好地支持自上而下的设计方法;3)并行工程:系统化的、集成化的、并行的产品及相关过程的开发模式,支持多人同时并行进行设计工作。4)开放性和标准化:EDA工具的相互兼容,有利于资源共享。二、数字系统的设计思想系统级设计功能级描述功能仿真门级描述时序仿真;自上而下逐级细化的设计方法。设计需要经过“设计-验证-修改-再验证”的过程。三、IP核复用技术与SOC1、IP复用技术1)何谓IP复用技术:IntellectualProperty(IP)原指知识产权、著作权等,在IC设计领域指具有某种功能的虚拟电路模块。设计系统时使用或反复使用某些IP称IP复用。2)IP分硬核、固核和软核三种。硬核指固定的版图模块,用户不能修改;软核指用HDL描述的功能模块,用户可以进行修改;固核介于硬核和软核之间,用户可进行一些修改。2、SOC1)定义:SystemOnaChip系统芯片,即把整个系统集成在一片芯片中。2)硬件和软件技术发展到今天,用户已经可以通过编程设计自己的系统,该系统可以包括微处理器(MCU)、RAM/ROM和逻辑电路等。四、数字系统的实现方式1、全定制(fullcustom)方式:基于版图的设计方法,分通用和专用集成电路设计;2、半定制(semicustom)设计:是在厂家提供的基本单元的基础上的进行的二次设计,又有一下三种方式:门阵列(gatearray):在半成品基础上的设计方式。半成品含有加工好的大量的晶体2管和IO焊盘,但没有布线。布线由用户设计,实现特定的功能。标准单元(standardcell):利用厂家的标准单元进行设计的方式。PLD方式:器件已经制造好,用户自己编程便可实现各种功能。5、硬件描述语言的不足电路采用高级的简明结构HDL描述,它意味着放弃了对电路门级实现定义的控制;由综合工具生成的逻辑实现效果不好;工具的不同导致综合质量的不同。第二部分可编程逻辑器件(PLD)1、ASIC:ApplicationSpecificIntegratedCircuits,即专用集成电路,是面向特定用户、具有专门用途的芯片,并依此区别于通用芯片.2、PLD,ProgrammableLogicDevices,是20世纪70s发展起来的一种新型器件,它的应用和发展不仅简化了电路设计,降低了成本,提高了系统的可靠性,且给数字系统的设计带来了革命性变化。(二)PLD的分类(p18)(四)CPLD的结构与特点(EMP7032内部结构图)CPLD是在PAL、GAL的基础上发展起来的阵列型PLD,具有高密度高速度的优点。从结构上看,CPLD一般包括3种结构:宏单元:主要包括与或阵列、触发器和多路选择器等电路,可独立配置为组合逻辑或时序逻辑;可编程IO单元:可独立配置为输入、输出和双向IO;可编程内部连线(PIA):其作用是在各逻辑宏单元之间以及宏单元和IO之间提供互连网络。(五)FPGA的结构与特点(FLEX10K10内部结构图)与CPLD相比,FPGA具有更高的集成度、更强的逻辑功能和更大的灵活性。一般由3部分组成:可配置逻辑块(CLB,ConfigurableLogicBlock)3输入输出模块(IOB)可编程互连线(PI)片内RAM(五)FPGA的结构与特点1、可配置逻辑块(CLB,ConfigurableLogicBlock):是FPGA的基本结构单元,不仅能实现逻辑函数,还可以配置成RAM等形式。其显著特点是内部有查找表(LUT);2、输入输出模块(IOB):作用同CPLD;3、可编程互连线(PI):作用同CPLD,不同点是其布线延时不固定,与路径有关,而CPLD的固定。4、片内RAM:其读的速度(3-4ns)和写的速度(5ns)非常快,比任何片外解决方案快很多倍,可配置成各种形式。六)在系统可编程(ISP)与边界扫描(BST)技术1、在系统可编程:ISP,InSystemProgrammable,指的是对器件、电路板或整个电子系统的逻辑功能可随时进行修改或重构的能力。2、边界扫描测试(BST)技术:由于器件越来越复杂,表面封装技术和电路板制造技术的进步,使得电路板的变小变密,传统的测试方法很难实现。(七)PLD产品概述:PLD的发展趋势向大规模、高集成度方向发展;向低电压、低功耗、低价格的方向发展;向高速可预测延时方向发展;在PLD内嵌入多种功能模块;向模数混合可编程的方向发展。二、ALTERA可编程逻辑器件(二)MAX7000系列器件MAX7000系列内部结构:组成模块:(1)LAB:LogicArrayBlock,逻辑阵列块,内含16个宏单元,是器件的主要组成部分;(2)MC:Macrocell,宏单元,由逻辑阵列、乘积项选择矩阵和可编程触发器组成,用于实现各种逻辑;(宏单元结构图)(3)EPT:ExpanderProductTerm,扩展乘积项,用于辅助逻辑阵列实现复杂的逻辑;(4)PIA:ProgrammableInterconnectArray,可编程连线阵列,把LAB相互连接构成所需的逻辑。这个全局总线是可编程通道,它把器件中任何信号源连到其目的地;MAX系列的PIA有固定的布线延时,而FLEX系列的布线延时与路径有关;(5)I/OControlBlock:I/O控制块,它允许每个I/O单独地配置为输入、输出和双向输入输出中的一种方式。(图)(三)FLEX10K系列内部结构:小结1)FLEX系列器件的特点:1.容量大,用于实现复杂的电路和系统2.内部含有ROM/RAM;3.内部含LUT,尽量采用查表法实现逻辑函数;4.FLEX器件内部布局布线的延时与路径有关。2)器件的特性设定1.电压摆率(Slew-Rate)设定:设置低噪声/高速度方式;2.漏极开路(Open-Drain)设定:3.多电压(MultiVolt)I/O接口:FLEX10K的核和外围IO可以工作于不同的电压,其中Vccin4引脚为内核和输入缓冲器提供工作电压,Vccio为I/O引脚提供工作电压。第三部分可编程逻辑器件开发软件第四部分:基于原理图输入的数字电路(系统)设计2参数化计数器的使用(lpm_counter)1)输入信号选择data[]:数据输入,用于预置数;clock:输入时钟;clk_en:输入时钟使能;cnt_en:计数器使能;updown:加(1)减(0)法选择;aclr:异步清零;aset:异步置数(AVALUE);aload:异步置数(data[]);sclr:同步清零;sload:同步置数(data[]);sset:同步置数(SVALUE)。2)输出信号选择q[]:计数值输出;eq[15..0]:计数值译码输出:q[]=0eq[0]=1;q[]=1eq[1]=1;……q[]=15eq[15]=1;53参数化RAM/ROM的使用(lpm_rom)设计要点1:存储器输入输出的选择:INPUTSOUTPUTSaddress[]:输入地址q[]:存储器输出Inclock:输入锁存时钟Outclock:输出锁存时钟memenab:使能(六)小结(一)基于PLD的数字系统设计的优点1、系统开发周期短设计输入方法灵活多样;软件仿真,错误自动定位修改方便;2、系统体积小3、系统可靠性好4、系统保密性好5、价格?可进一步降低价格。(二)系统的设计思想1、TOP-DOWN:用于设计性能级:概念-〉产品说明书(性能指标)-〉系统输入输出图(黑匣子);功能级:系统输入输出图-〉系统框图(功能划分)-〉功能实现-〉仿真-〉网表;结构级:原理图网表-〉版图布局-〉版图布线-〉后仿真-〉网表物理级:基本逻辑单元的设计。重要概念:fromconcepttonetlist;fromconcepttolayout;fromconcepttoproduct;2、bottom-up:用于实现基本逻辑单元-〉子功能模块-〉子系统-〉系统(三)基于MAXPLUSII的系统设计流程3.1概念-〉功能模块3.2设计输入1、原理图输入方法最基本的方法;充分利用已有基本单元,74XX等;6缺点:不够灵活(虽然编译时可自动消除冗余电路),如32位加法器等。例1:多路选择器输入信号:in1[3..0],in2[3..0],in3[3..0],d[2..0];输出信号:q[3..0];要求:d[]=110时,q[]=in1[];d[]=101时q[]=in2[];d[]=011时q[]=in3[];点评:该多路选择器不属于常规电路,没有现成的电路(74XX),用原理图输入非常麻烦,但用文本输入则方便快捷。SUBDESIGNtrymux(in1[3..0],in2[3..0],in3[3..0],d[2..0]:INPUT;q[3..0]:OUTPUT;)begindefaultsq[]=GND;enddefaults;cased[]iswhenB110=q[]=in1[];whenB101=q[]=in2[];whenB011=q[]=in3[];endcase;end;例2:地址发生器输入信号:clk;输出信号:111-110-101-011-110…;要求:每来一个时钟脉冲,产生循环地址110、101、011;初始值为111。点评:1)本地址发生器也不是规范电路,用原理图输入方法非常麻烦,但用AHDL非常方便;2)在AHDL中,状态机是非常好用的工具,可方便地实现各种时间序列,如计数器、序列发生器、地址发生器、波形发生器等。73.3设计编译编译的功能为:逻辑综合、逻辑试配1、选择一个器件系列,不知具体选用哪个型号时选AUTO;2、打开DesignDoctor,进行错误检测和错误定位;3、打开保护位:选择是否设置保护位;选择保留资源(reservedsources)的比例;I/O和逻辑单元一般留10%,使器件留有修改的余地。4、选择全局的项目逻辑综合方式:选择是否自动选全局clock、clear、preset、outputenable(缺省);5、打开FLOORPLANEDITOR观察试配结果可以为某些型号指定引脚号;一般不能全部指定,否则影响试配的成功;3.4设计仿真1、编辑输入波形,注意要覆盖设计电路的所有功能;2、输入/输出信号可以从SNF选择,把有用的、关键的信号选出,不重要的中间波形可不选;3、信号可选group形式或单个形式;4、选择前仿真还是后仿真;5、结果不对时,重新设计电路。3.5设计的下载1、用编程卡+主编程器+适配器下载;2、用BYTEBLASTER/BITBLASTER下载(ISP器件);3.5通电试验1、每个VCC与GND之间要加0.1
本文标题:EDA整理
链接地址:https://www.777doc.com/doc-2911021 .html