第11章电子设计自动化

上传人:熏** 文档编号:243142284 上传时间:2024-09-16 格式:PPT 页数:39 大小:326.50KB
返回 下载 相关 举报
第11章电子设计自动化_第1页
第1页 / 共39页
第11章电子设计自动化_第2页
第2页 / 共39页
第11章电子设计自动化_第3页
第3页 / 共39页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,主编 李中发,制作 李中发,2005年1月,电子技术,第11章 电子设计自动化,学习要点,了解,EDA,技术的发展概况,了解简单可编程逻辑器件的构造和工作原理,掌握用,PROM,和,PLA,实现组合逻辑函数的方法,了解高密度可编程逻辑器件的构造及应用,11.1 电子设计自动化概述,11.2 简单可编程逻辑器件,11.3 高密度可编程逻辑器件,11.4,PLD,开发工具,Max+plus,第11章 电子设计自动化,11.1,电子设计自动化概述,EDA,技术:,是指以计算机硬件和系统软件为基本工作平台,利用,PLD,器件和,EDA,开发工具,在计算机上完成电路的功能设计、逻辑设计、性能分析、时序测试直至印刷电路板(简称,PCB),的自动设计。,11.1.1,EDA,技术发展概况,集成电路技术方面:1958年出现了第一块数字集成电路。20世纪60年代初出现了小规模集成电路和中规模集成电路,。1967,年,数字集成电路跨入大规模集成电路时代,在一块芯片上集成1000个以上的晶体管。1977年出现了在一块芯片上集成13万个晶体管的集成电路,从而使数字集成电路进入了超大规模集成电路时代。1998年,数字集成电路达到了在一块芯片上集成超过一亿个晶体管或基本单元的规模。,从20世纪70年代起,在集成电路版图设计方面,出现了基于门阵列和标准单元的计算机辅助设计工具;在系统设计方面,出现了计算机辅助电路分析工具和逻辑综合与优化工具,以及简单可编程逻辑器件。20世纪80年代出现了,PCB,自动布局布线工具,标准的硬件描述语言,HDL,及其仿真工具,以及复杂可编程逻辑器件。20世纪90年代出现了可编程模拟电路,以及标准,HDL,的综合工具,电子设计才真正进入了自动化时期。进入21世纪,又出现了可编程片上系统。,11.1.2,EDA,技术的特征,现代,EDA,技术的基本特征是采用高级语言描述,具有系统级仿真和综合能力。与这些基本特征有关的技术有自顶向下设计方法、硬件描述语言(,HDL)、,逻辑综合优化、开放性和标准化以及库的引入。,11.1.3,电子系统的仿真、综合与实现,电子系统的仿真是用计算机模仿电子系统的实际工作情况。因此,仿真时要在计算机上建立电子元件和模块的功能模型,还要将系统(电路)的构成描述给计算机。此外,设计工程师还要为被仿真的电路设计适当的输入信号,在计算机模拟结果出来后要对其进行分析,从而判定电路正确与否。根据设计验证的不同层次和要求,仿真分为系统仿真、逻辑仿真、时序仿真、电路仿真等。,电子系统的综合是将较高层次的描述转换为由低层次便于实现的模块所装配成的统一实体。综合分高层综合、逻辑综合和版图综合。高层综合是从系统级(算法级)的行为(功能)描述产生功能级的结构描述。逻辑综合是将功能级描述转化为逻辑(门)级的描述。版图综合是在逻辑综合完成后,由门级和电路级向物理版图描述的转换,完成最终的布局布线。,电子系统的实现方式通常有通用集成电路、可编程器件和定制集成电路3种方式。,11.2 简单可编程逻辑器件,11.2.1,PLD,的结构、分类和内部电路表示方法,PLD,的基本结构,PLD,内部电路的简化画法,SPLD,的分类,11.2.2,PROM,及其应用,PROM,的阵列结构,例,用,PROM,实现下列一组函数,用,PROM,实现组合逻辑函数的方法与,ROM,相同,即首先列出要实现的逻辑函数的真值表,然后再根据真值表画出用,PROM,实现这些逻辑函数的阵列图。,真值表,阵列图,11.2.3,PLA,及其应用,PLA,的阵列结构,用,PLA,实现逻辑函数的基本原理是基于函数的最简与或表达式,故,首先需要将逻辑函数化为最简与或表达式,然后根据最简与或表达式画出,PLA,的阵列图。,例,用,PLA,实现下列一组函数,化简,阵列图,11.2.4,PAL,及其应用,PAL,的阵列结构,专用输出结构,可编程,I/O,结构,带反馈的寄存器结构,异或型输出结构,例,如图所示为用,PAL,实现的一组组合逻辑函数,试写出该组逻辑函数的表达式。,解,根据如图所示,PAL,与阵列的编程情况可知,函数,Y,3,是由4个与项相加组成的,这4个与项分别为,ABC,、,BCD,、,ACD,和,ABD,,,所以函数,Y,3,的表达式为:,同理,函数,Y,2,是由3个与项、和相加组成的,函数,Y,1,是由2个与项和相加组成的,函数,Y,0,是由个与项,AB,和相加组成的,所以:,11.2.5,GAL,GAL,器件在制造工艺上采用了,EECMOS,工艺,可以反复编程,且集成度比,PAL,有了较大的提高,其与阵列的规模大大超过了,PAL,,每个或门的输入端数增加到810个,可实现较为复杂的逻辑函数。在结构上,,GAL,不但直接继承了,PAL,器件的由一个可编程与阵列驱动一个固定或阵列的结构,而且还具有可编程的输出逻辑宏单元(简称,OLMC)。,通过对,OLMC,编程,可实现多种形式的输出,使用起来比,PAL,更加灵活方便。,GAL16V8,中,OLMC,的结构,11.3 高密度可编程逻辑器件,CPLD,基本上沿用了,GAL,的阵列结构,在一个器件内集成了多个类似,GAL,的大模块,大模块之间通过一个可编程集中布线区连接起来。在,GAL,中只有一部分引脚是可编程的(,OLMC),,其他引脚都是固定的输入脚。而在,CPLD,中,所有的信号引脚都可编程,既可做输入,又可做输出,故称为,I/O,脚。,11.3.1,CPLD,如图所示给出了一个典型,CPLD,的内部结构框图。总布线区(,GRP),是一个二维的开关阵列,负责将输入信号送入通用逻辑模块,并提供通用逻辑模块之间的连接通路。在,GRP,两侧各有一个巨模块,每个巨模块含8个通用逻辑模块(,GLB)、,一个输出布线区(,ORP)、,一组输入总线和16个输入/输出模块(,IOC)。,11.3.2,FPGA,FPGA,是由普通的门阵列(需在制造厂加工,又称为掩膜门阵列)发展而来的,其结构与,CPLD,大不相同,其内部含有成千上万个较小的逻辑单元,所以在布局上呈二维分布。要将如此众多的逻辑单元连接起来,需要丰富的连线资源,其布线的难度和复杂性较高。,Xilinx,公司的,XC,系列,FPGA,器件由可编程输入/输出模块(简称,IOB)、,可编程逻辑模块(简称,CLB),和可编程连线资源(简称,PI)3,种可编程逻辑单元组成。,XC,系列,FPGA,的内部结构框图,可编程输入/输出模块(,I/OB),XC,系列,FPGA,的,CLB,结构,XC,系列,FPGA,的,PI,连接方式,11.3.3,CPLD/FPGA,的编程技术,在系统编程技术,ISP,:,ISP,技术采用,EECMOS,工艺,其编程数据存储在,EEPROM,中,通过电信号擦写,无需专用的编程器就可编程,可预先将器件安装在电路板上,预留编程口(插座),用微机通过编程电缆就可以在线对器件编程,使用非常方便。,ISP,技术采取了在信号引脚上增加三态门和增加编程接口与控制电路两项措施来实现在系统编程。,在线配置技术,ICR,:ICR,技术采用,SRAM,工艺,在线写入,无需专用的写入器。由于,SRAM,所存信息掉电时无法保存,因此每次通电都必须重新写入编程数据,这类,FPGA,的编程称为配置。由于,SRAM,的写入次数没有限制,因此可无穷多次的配置。,FPGA,有多种在线配置方式可分成被动配置和主动配置两类。,反熔丝编程技术,:反熔丝开关是由在多晶硅与扩散层之间夹有特殊介质的可编程低阻元件构成的开关。未编程时多晶硅与扩散层呈高阻状态;在多晶硅和扩散层两端加上编程电压时介质击穿,多晶硅与扩散层导通。由于介质一旦被击穿就无法还原,所以这是一种一次性编程方法。,11.4,PLD,开发工具,MAX+plus,11.4.1,PLD,的设计过程,设计输入,:将所设计的电路以开发软件要求的某种形式表达出来,并输入到相应的软件中。主要包括原理图输入方式、硬件描述语言输入方式、高级设计输入方式、波形设计输入方式、层次设计输入方式和底层设计输入方式,最常用的是原理图输入方式和硬件描述语言输入方式两种。,设计实现,:由,EDA,开发工具根据设计输入文件自动生成用于器件编程、波形仿真及延时分析等所需的数据文件。通常设计实现是由,EDA,开发工具自动完成的,设计者只能通过设置一些控制参数来控制设计实现过程。设计实现时主要完成优化和合并、映射、布局和布线以及生成编程文件4个任务。,设计校验,:包括功能仿真和时序仿真两部分,这一步通过功能仿真器和时序分析器来完成,利用编译器产生的数据文件自动完成逻辑功能仿真和时序特性仿真。在仿真文件中加载不同的激励,可以观察中间结果以及输出波形。必要时,可以返回设计输入阶段,修改设计输入,最终达到设计要求。,下载编程,:将设计阶段生成的编程文件(熔丝图文件或位流文件)装入到可编程器件中。由于器件编程需要满足一定的条件,如编程电压、编程时序、编程算法等,因此,对于不能进行在系统编程(,ISP),的,CPLD,器件和不能在线配置(,ICR),的,FPGA,器件,需要编程专用设备(编程器)完成器件编程。,11.4.2 设计输入,指定项目名称,:在管理器窗口的,FileProject,菜单中选择,Name,项打开,Project Name,对话框,从,Project Name,对话框中选择适当的驱动器和目录,键入项目名后点击,OK。,1建立原理图设计文件,(1)打开原理图编辑器。在管理器窗口的,File,菜单中选择,New,打开,New,列表框。从,New,列表框中选择,Graphic Editor File,和.,gdf,项,然后点击,OK。,此时便会出现一个原理图编辑窗口。,(2)输入元件和模块。在原理图编辑窗口空白处双击鼠标左键或在,Symbol,菜单中选择,Enter Symbol,,打开,Enter Symbol,对话框。从,Enter Symbol,对话框中选择适当的库及所需的器件(模块),然后点击,OK。,这样所选元件(模块)就会出现在编辑窗口。重复这一步,选择需要的所有模块。相同的模块可以采用复制的方法产生。用鼠标左键选中器件并按住左键拖动,可以将模块放到适当的位置。,(3)放置输入、输出引脚。输入、输出引脚的处理方法与元件一样。在原理图编辑窗口空白处双击鼠标左键或在,Symbol,菜单中选择,Enter Symbol,便打开了,Enter Symbol,对话框。在,Symbol Name,框中键入,input、output,或,bidir,,,分别代表输入、输出和双向,I/O。,点击,OK。,这样输入或输出引脚便会出现在编辑窗口中。重复这一步产生所有的输入和输出引脚,也可以通过复制的方法得到所有引脚。电源和地与输入、输出引脚类似,也作为特殊元件,采用上述方法在,Symbol Name,中键入,VCC(,电源)或,GND(,地),即可使它们出现在编辑窗口中。,(4)连线。将电路图中的两个端口相连的方法:将鼠标指向一个端口,鼠标箭头会自动变成十字“+”。一直按住鼠标左键拖至另一端口。放开左键,则会在两个端口间产生一根连线。连线时若需要转弯,则在转折处松一下左键,再按住继续移动。连线的粗细通过点鼠标右键弹出菜单中的,Line Style,来选择,粗线代表总线。,(5)输入/输出引脚和内部连线命名。输入/输出引脚命名:在引脚的,PIN-NAME,位置双击鼠标左键,然后键入信号名。内部连线的命名方法是:选中连线,然后键入信号名。总线的信号名一般用,Xn-1.0,表示,其中的单个信号名为,Xn,-1、,Xn,-2、X0。,(6)保存文件。在,File,菜单中选择,Save As,或,Save,,如是第一次保存,需输入文件名。,(7)建立默认的符号文件。在层次化设计中,如果当前编辑的文件不是顶层文件,则往往需要为其产生一个符号,将其打包成一个模块,以便在上层电路设计时加以引用。建立符号文件的方法是,在,File,菜单中选择,Create Default Symbol,项即可。,2建立,HDL,设计文件,(1)打开文本编辑器。在管理器窗口的,File,菜单中选择,New,打开,New,列表框。选择,Text Editor File,,此时便会出现一个文本编辑窗口。点击,OK。,(2)选择,HDL,种类。在,File,菜单中选择,Save As,或,Save,,或在工具栏点击按钮,打开,Save As,对话框,键入文件名并选择文件扩展名,,MAX+plus,支持3种,HDL:VHDL、,Verilog,HDL,和,Altera,HDL,,对应的扩展名依次为,vhd,、v,和,tdf,。,这一步也可以等到,HDL,源码输入完以后再做,但先确定,HDL,种类可以在键入,HDL,源码时自动检查并显示其中的语法错误。,(3)输入,HDL,源码。,(4)保存文件。在,File,菜单中选择,Save,,保存输入的,HDL,源码。,(5)建立默认的符号文件。与由原理图生成符号文件的方法一样。,11.4.3 设计实现,1编译与网络表提取,运行编译器的方法:在,MAX+plus,菜单中选,Compiler,选项。启动编译器后首先进行编译与电路网络表提取工作。做完这一工作后编译器便停下来等待用户的指示。如果编译中未发现错误,则可以点击窗口中的,Start,,接着做设计实现的工作。,2参数设置,编译器有很多参数设置,但并不是每一项都需要用户去设置,有些设置编译器可自动选择(如器件选择、引脚分配等),而其他的设置往往有默认值。,3运行设计实现,做好必要的设置后,在编译器窗口中按,Start,就可以连续执行后续的设计步骤,产生的数据文件的扩展名会出现在各个执行框的下方。,11.4.4 设计校验,1建立波形文件,(1)打开波形图编辑器。在管理器窗口的,File,菜单中选择,New,打开,New,列表框。选择,Waveform Editor File,和.,scf,项,按,OK。,此时便会出现一个波形图编辑窗口。,(2)设定时间参数。从,File,菜单中选择,End Time,项,键入仿真结束时间,按,OK。,在,Options,菜单中选择,Grid Time,项,键入显示网格间距的时间,按,OK。,(3)确定需观察的信号。在,Node,菜单中选择,Enter Nodes From SNF(SNF,指仿真网络表文件)项,打开,Enter Nodes From SNF,对话框。在,Type,框中选择信号类别,最常用的是,Input,和,Output(,输入、输出)。点,List,按钮,将所选类别的所有信号均列于,Available Nodes & Groups,框中。从,Available Nodes & Groups,框中选择信号,然后按“=”箭头,使所选信号名进入,Selected Nodes & Groups,框。按,OK,,所选信号将出现在波形图编辑窗口中。然后根据需要编辑输入波形。最后在,File,菜单中选择,Save As,或,Save,。如是第一次保存,需输入文件名。,2运行仿真程序,在,MAX+,plusII,菜单中选,Simulator,选项,打开仿真对话框。按,Start,开始仿真。仿真结束后按,Open SCF,,在波形编辑窗口中将显示出仿真结果(波形)。,3仿真结果分析,仿真结果分析由用户人工进行。,11.4.5 下载编程,1选择编程文件,在编程界面下,从,File,菜单中选择,Convert SRAM Object Files,命令可以由*.,SOF,文件产生*.,POF,文件,选择,Save Programming Data As,命令可读出已编程器件中的数据或由*.,JED,文件生成*.,POF,文件。,2下载编程步骤,(1)打开编程窗口。在,MAX+,plusII,菜单中选,Programmer,选项,打开编程窗口。,(2)硬件连接。在编程界面下,从,Options,菜单中选择,Hardware Setup,,再在,Hardware Setup,对话框中选择,ByteBlaster,或,BitBlaster,,,然后用下载电缆将,PC,机并口(若选,ByteBlaster,),或串口(若选,BitBlaster,),与电路板上的,PLD,连接起来(通过接插件)。请注意:这一步工作最好在关断,PC,机和电路板电源的情况下进行,可以在开机前预先接好。,(3)选择编程文件。默认情况下,编程文件已根据当前项目名选好,并显示在编程窗口的右上角。如果发现编程文件名不对,可在,File,菜单中点,Select Programming File,项进行选择。,(4)下载。在编程窗口中按,Program(,对,CPLD,或配置用,EPROM,,此时文件为*.,POF),或,Configure(,对,FPGA,,此时文件为*.,SOF)。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!