电子设计自动化技术.ppt

上传人:牧羊曲112 文档编号:6003810 上传时间:2023-09-13 格式:PPT 页数:45 大小:1.45MB
返回 下载 相关 举报
电子设计自动化技术.ppt_第1页
第1页 / 共45页
电子设计自动化技术.ppt_第2页
第2页 / 共45页
电子设计自动化技术.ppt_第3页
第3页 / 共45页
电子设计自动化技术.ppt_第4页
第4页 / 共45页
电子设计自动化技术.ppt_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《电子设计自动化技术.ppt》由会员分享,可在线阅读,更多相关《电子设计自动化技术.ppt(45页珍藏版)》请在三一办公上搜索。

1、书名:电子设计自动化技术ISBN:978-7-111-24285-7作者:张永生出版社:机械工业出版社本书配有电子课件,第2章 可编程逻辑器件及编程开发技术,学习目标:1)了解可编程逻辑器件及相关编程开发技术;2)熟悉可编程逻辑器件的基本结构。,第2章 可编程逻辑器件及编程开发技术,2.1可编程逻辑器件概述2.2 可编程逻辑器件基本结构4.3 PAL和GAL器件的基本结构2.4 CPLD的基本结构本章小结本章习题,返回主目录,2.1可编程逻辑器件概述,广义上的可编程逻辑器件是指一切通过软件手段更改、配置器件内部连接结构和逻辑单元,完成既定功能的数字集成电路。在数字电子系统领域,存在三种基本的器

2、件类型:存储器、微处理器和逻辑器件。存储器用于存储随机信息。微处理器执行软件指令以完成范围广泛的任务。逻辑器件提供特定的功能。,常用的可编程逻辑器件主要有三大类:简单的逻辑阵列(PAL/GAL)复杂可编程逻辑器件(CPLD)现场可编程逻辑器件(FPGA)等 逻辑器件可分为两大类:即固定逻辑器件和可编程逻辑器件。固定逻辑器件中的电路是永久性的,它们完成一种或一组功能,一旦制造完成,就无法改变;可编程逻辑器件(PLD)的功能可在任何时间改变,以实现多种不同的功能。对于可编程逻辑器件,设计人员可利用价格低廉的软件工具快速开发、仿真和测试其设计。然后,可快速将其设计编程到器件中,并立即在实际运行的电路

3、中对设计进行测试。,2.2 可编程逻辑器件基本结构,以比较简单的PLD可编程逻辑器件为例,其基本结构如图2-1所示。图2-1 PLD的基本结构框图,输入缓冲电路可以产生输入变量的原变量和反变 量,与阵列由与门构成用以产生乘积项,或阵列由或 门构成用以产生乘积项之和形式的函数。输出电路相对于不同PLD有所不同,有些是组合输 出结构,有些是时序输出结构,可以形成时序电路。输出信号还可通过内部反馈到与阵列的输入端。,2.2.1 组合逻辑与时序逻辑的逻辑函数表达式,组合逻辑电路是具有一组输出和一组输入的非记忆性逻辑电路,它的基本特点是任何时刻的输出信号状态仅取决于该时刻各个输入信号状态的组合,而与电路

4、在输入信号作用前的状态无关。组合电路是由门电路组成的,但不包含存储信号的记忆单元,输出与输入间无反馈通路,信号是单向传输,且存在传输延迟时间。,组合逻辑电路的功能描述方法有真值表、逻辑表达式、逻辑图、卡诺图和波形图等。时序逻辑电路意时刻的输出信号不仅和当时的输入信号有关,而且还与电路原来的状态有关。时序逻辑电路必然包含存储记忆单元电路。描述时序电路逻辑功能的方法有:三个方程(输出方程、驱动方程、状态方程)、状态转换表、状态转换图和时序图等。,1组合逻辑的逻辑函数表达式,Yi=Fi(X1,X2,X3,Xm),i=1,2,3,m式中:Xi为输入布尔量,Yi为输出布尔量。逻辑函数式可实现最佳化,如果

5、不允许反变量输入时,可以在逻辑门的输入端加接反相器(非门)来消除反变量。逻辑式的最简化与逻辑电路的最简化并非始终一致。用最少的门电路来实现最简化逻辑式的逻辑关系,这就是逻辑电路最佳化的问题。逻辑电路的最佳化也要从逻辑式入手,这就是逻辑式的最佳化。,实现最佳化的步骤如下:1、化简给出的与或型逻辑式;2、确定各个与项的代替因子;3、寻找对各个与项都能适用的公共代替因子,若实在找不到,只好通过加接非门来获得反变量;4、Morgan定理将使用代替因子的与或式展成与非表达式,用与非门即可实现最佳化线路。,例如,P=,按上述步骤进行优化后得到的表达式为 F=其对应实现的逻辑图如图2-2所示。,图2-2 最

6、佳化逻辑图,2时序逻辑的逻辑函数表达式,一般同步时序逻辑电路结构框图如图2-3所示。图2-3 同步时序逻辑电路结构框图,一般同步时序逻辑电路按其状态的改变方式不同,可分为同步时序逻辑与异步时序逻辑。同步时序逻辑是在同一个时钟脉冲控制下改变状态,而异步时序逻辑则是在输入信号(脉冲或电位)控制下改变状态。由图2-3可见,同步时序逻辑电路由组合逻辑电路和记忆电路两部分组成。,其中:X1,X2,.Xn,外部输入信号;Q1,Q2,.Qk,触发器的输出,称为状态变量;Z1,Z2,.Zm,对外输出信号;Y1,Y2,.Yk,触发器的激励信号。一般同步时序逻辑可用三组逻辑方程来描述,输出方程(1)Zi=fi(X

7、1,X2.Xn;Q1n,Q2n.Qkn),i=1,2,.m 激励方程(2)Yi=gi(X1,X2.Xn;Q1n,Q2n.Qkn),i=1,2,k状态方程(3)Qin+1=hi(X1,X2.Xn;Q1n,Q2n.Qkn),i=1,2,.k 方程(1)表明:输出Zi不仅与该时刻的输入Xi有关,还与电路的现态Qin有关。满足这种关系的同步时序逻辑电路称为米里型时序逻辑。如果输出Zi仅是现态的函数,与输入Xi无关,即方程(1)变为Zi=fi(Q1n,Q2n.Qkn)。满足这种关系的同步时序逻辑电路称为摩尔型时序逻辑,它是米里型时序逻辑的特例。,2.2.2 PLD器件的结构模型,固定逻辑器件和PLD各有

8、自己的优点。PLD在设计过程中为客户提供了更大的灵活性,因为对于PLD来说,设计反复只需要简单地改变编程文件就可以了,而且设计改变的结果可立即在工作器件中看到。通过因特网将新的编程文件下载到PLD就可以在系统中创建出新的硬件逻辑,这一策略可以使设计人员集中精力设计新产品结构、软件工具和IP核心,先进的工艺技术在一系列关键领域为PLD提供了帮助:更快的性能、集成更多功能、降低功耗和成本等。,以MAX7000为例,基于乘积项的PLD内部结构 如图2-4所示 图2-4 基于乘积项的PLD内部结构,这种PLD的结构可分为三块:宏单元(Macrocell),可编程连线(PIA)和I/O控制块。宏单元是P

9、LD的基本结构,由它来实现基本的逻辑功能。图2-4中LAB A,LAB B、LAB C、LAB D是多个宏单元的集合,可编程连线负责信号传递,连接所有的宏单元。I/O控制块负责输入输出的电气特性控制,图中左上方的 INPUT/GCLK1,INPUT/GCLRn,INPUT/OE1,INPUT/OE2 是全局时钟、清零和输出使能信号,这几个信号有专用连线与PLD中每个宏单元相连。,宏单元的具体结构如图2-5所示:图2-5 图2-5左侧是乘积项阵列,实际就是一个与或阵列,每一个交叉点都是一个可编程熔丝,如果导通就可实现“与”逻辑。后面的乘积项选择矩阵是一个“或”阵列。两者一起共同完成组合逻辑。图2

10、-5右侧是一个可编程D触发器,它的时钟、清零输入都可以编程选择。,2.3 PAL和GAL器件的基本结构,可编程逻辑器件PLD是EDA得以实现的硬件基础,通过编程,可灵活方便地构建和修改数字电子系统。,PLD诞生及简单PLD发展阶段,20世纪70年代,熔丝编程的PROM的出现,标志着PLD的诞生。20世纪70年代末,AMD公司对PLA进行了改进,推出了PAL(Programmable Array Logic)器件,PAL与PLA相似,也由与阵列和或阵列组成,但在编程接点上与PAL不同,而与PROM相似,或阵列是固定的,只有与阵列可编程。或阵列固定与阵列可编程结构,简化了编程算法,运行速度也提高了

11、,适用于中小规模可编程电路。,乘积项可编程结构PLD的发展与成熟阶段,20世纪80年代初,Lattice公司开始研究一种新的乘积项可编程结构PLD。它首次在PLD上采用EEPROM工艺,能够电擦除重复编程,使修改电路不需更换硬件,在编程结构上,GAL沿用了PAL或阵列固定与阵列可编程结构,而对PAL的输出I/O结构进行了改进,增加了输出逻辑宏单元OLMC(output Logic Macro Cell),OLMC设有多种组态,使得每个I/O引脚可配置成专用组合输出、组合输出双向口、寄存器输出、寄存器输出双向口、专用输入等多种功能,为电路设计提供了极大的灵活性。同时,也解决了PAL器件一种输出I

12、/O结构方式就有一种器件的问题,具有通用性。,复杂可编程器件的发展与成熟阶段,20世纪80年代中期,Xilinx公司提出了现场可编程(Field Programmability)的概念,并生产出世界上第一片FPGA器件。FPGA器件一般采用SRAM工艺,编程结构为可编程的查找表的概念,并推出了一系列具有ISP功能的复杂可编程逻辑器件CPLD将PLD推向了一个新的发展时期。CPLD器件采用EEPROM工艺,编程结构在GAL器件基础上进行了扩展和改进,使得PLD更加灵活,应用更加广泛。,2.3.1 PAL器件的基本结构,PAL主要由门阵列、可编程的输入/输出和带有反馈的寄存器构成。其门阵列如图2-

13、6所示,由可编程的“与”阵列和固定的“或”阵列构成,每个输出都具有78个乘积项。对于大多数逻辑功能,这种“与”阵列可编程方法都能提供较好的性能和有效结构。PAL器件设有一个“保密熔丝”,在确定对PAL编程正确无误以后,熔断该熔丝,可禁止其内部熔丝图的读出,有效防止复制和仿造。,图2-6,以最简与或表达式为基础,PAL器件可以取代任何逻辑电路器件,且有可靠性高,设计灵活,速度快等优点,但由于PAL多是采用肖特基TTL和双极型PROM熔断丝连接工艺,一旦编程完成并写入PAL,将无法改变,是一次性编程器件,这是PAL的一个劣势。,2.3.2 GAL器件的基本结构,通用逻辑阵列GAL是一种较为理想的P

14、LD器件,目前已得到广泛应用。它的主体仍采用与或阵列结构,其与门阵列可编程,或门阵列是固定的,并且每个输出端对应有一个输出逻辑宏单元(OLMC),该单元的工作模式和输出极性也是可编程的。GAL克服了PAL只能编程一次的缺点,采用电擦除工艺,使整个器件的逻辑功能可以重新配置,重复擦写。同时GAL可以实现更为复杂的逻辑功能,编程数据可保存20年以上,但GAL器件对设计异步时序电路很困难,这是它的劣势。,2.4 CPLD 的基本结构,(1)芯片的功能特点 独有的“双逻辑块”结构,可同时保证器件的高速度和高集成度;用户可选择I/O电平(3.3V或5V),适合于不同电平器件的联用;宏单元结构的每个宏单元

15、(Macrocell)都有算术逻辑单元(ALU)和快速进位逻辑,高效的算术逻辑运算,并使逻辑点阵间有100%的可互连性;每个输入管脚皆可编程为直接、锁存或寄存方式;24mA驱动输出;可编程电源管理模式,可控制宏单元速度和功耗;高速算术逻辑进位网络,每位进位延迟仅仅1ns;保密位,可保护芯片内部的逻辑不被复制;每位进位延迟仅仅1ns,43-61MHz 18位累加器;0.8Macon 工艺制造,逻辑安全可靠。,2.4.1 Xinlinx公司XC7300系列器件结构,2411 XC7300系列特性简介,(2)双逻辑块结构,它的内部有两种结构,类似于PLA的功能块,一种称为“快速功能块”(FFB),另

16、一种叫“高密度功能块”(FB),如图2-7所示。图2-7 XC7300双逻辑块示意图,(3)用户可选I/O电平标准,XC7300系列具有用户可选择的I/O电平(3.5V或5V),所以很容易连接不同电平的器件在一个系统中应用,图2-8是XC7300和不同电平标准的器件相联的示意图。图2-8 XC7300和不同电平标准的器件相联,(4)从PAL转换至XC7300,XC7300提供了非常简单高效的从标准PAL转换到XC7300设计的方法,工程师们不必重新进行设计,而其“通用互连矩阵”可保证PAL原有的逻辑连接可100%转换过来。Xilinx公司提供的转换软件很容易把一个PAL逻辑转换到XC7300并

17、对其进行优化。图2-9是从PAL转换到XC7300的示意图。图2-9 从PAL转换到XC7300的示意图,(5)开发工具及应用范围,Xilinx公司提供的DS550 EPLD转换器(XEPLD)是一种价格低、人机界面友好的软件工具,因其能很容易地直接把标准的方程转换到EPLD中而著称,整个设计过程很简单,如图2-10所示。图2-10 基于PAL方程的设计流程,2412 XC7300系列产品相关说明,XC7300系列器件是高密度的PLD,它具有设计周期短、风险小、修改容易、开发成本低、系统结构灵活和集成度高等一系列优点,是实现复杂逻辑功能,提高系统性能、集成度和可靠性的有力工具,在很多应用中正逐

18、步取代门阵列。高密度可编程逻辑器件(简称高密度PLD)是相对于传统简单PLD(如PAL/GAL)而言的,是可编程门阵列(FPGA)和复杂PLD(CPLD)的总称。一般来说,复杂PLD是在一块芯片上集成的多个PAL块,其基本逻辑单元是乘积项。其逻辑单元与输入输出单元的连接关系是固定的,各个PAL块可以通过共享的可编程互连资源交换信息,实现PAL块之间的互连。复杂PLD的主要特点是速度可预测性较好,对典型设计往往容易获得较高的性能,但集成度往往不够高,体系结构灵活性差,适用范围较窄。,可编程门阵列得名于其体系结构与传统掩膜编程门阵列的相似性,FPGA的特点是体系结构和逻辑单元很灵活,集成度较高,可

19、以集成各种逻辑,适用范围宽,但速度可预测性差,与逻辑分割、布局布线、逻辑单元的结构和粒度。一般来说,FPGA多采用SRAM和Antifuse编程技术,复杂PLD则多采用UV-EPROM和EEPROM编程技术。,2.4.2 Altera公司MAX7000系列器件的结构,MAX 7000系列是Altera公司第二代MAX结构的器件。(1)MAX7000的特性和功能 MAX7000E系列包括EPM7128E,EPM7160E,EPM7192E和EPM7256E,增加了几个新的特性,附加全局时钟,附加输出使能控制,增加连线资源,快速输入寄存器和一个可编程的电压摆率。,2421 MAX7000系列器件概

20、况,(2)MAX 7000的结构,1)逻辑阵列块,MAX7000的结构主要是由高性能的称为逻辑阵列块(LAB)的灵活逻辑阵列模块以及它们之间的连线构成的。2)宏单元,MAX7000的宏单元可以单独的配置为时序逻辑和组合逻辑工作方式,宏单元由三个功能块组成:逻辑阵列、乘积项选择矩阵和可编程触发器。3)扩展乘积项,MAX7000具有共享和并联扩展乘积项。4)可编程连线阵列,在可编程连线阵列上布线,将各LAB 相互连接构成所需的逻辑,这个全局总线是可编程的通道,它把器件中任何信号源连到其目的地。5)I/O控制块,I/O控制块允许每个I/O引脚单独的配置为输出、输入和双向工作方式。所有I/O引脚都有一

21、个三态缓冲器,它能由全局输出使能信号中的一个控制,或者把使能端直接接地(GND)或接到电源(Vcc)上。,(3)MAX 7000的试配设计,开始设计之前应避免进行引脚和宏单元的分配,要尽可能地为将来变更设计保留一些器件资源。利用ignore previous Fit(放弃以前的试配)命令编译设计,这时命令参数要选择使编译器灵活性最大的情况 只要有可能,就利用全局寄存器控制信号。利用LCELL/SOFT缓冲器分解复杂逻辑。,2422 MAX7000系列器件的结构特性,可以概括为:1)LAB,MAX7000系列器件是基于高性能、灵活的逻辑阵列模件-LAB的。2)宏单元(Macrocell),每个宏

22、单元可被独立地配置组合逻辑和时序逻辑,它由以下功能单元组成:逻辑阵列(Logic Array),乘积项选择矩阵和可编程的寄存器。3)扩展乘积项(Expander Product Terms)当逻辑比较复杂时,一个宏单元中的乘积项可能不够用,尽管可以用另一个宏单元产生提供所需的逻辑,但这增加了延时。MAX7000在同一个LAB中为每个宏单元提供了扩展乘积项,这使得逻辑占用更少的资源而获得更高的速度。4)可编程连线阵列(PIA)将所有输出连接到所有器件内的输入。所有MAX7000系列的I/O管脚、宏单元的输出可作为PIA的输入,使得这些信号可在整个器件内可用。,(1)系列器件特点,该系列是以第二代

23、多阵列结构为基础的高性能CMOS器件:高密度,6005000个EPLD系列MAX7128E,提供5000个门。图2-11 MAX7000的结构图,(2)结构框架,MAX7000的结构如图2.11所示,其中I/O为输入输出模块,FB为逻辑阵列模块(LAB),这些模块由可编程互连矩阵相互连接。专用输入信号包含4个专用输入信号,它们能用作专用输入或每一个宏单元与I/O引脚的全局控制信号。时钟、清除和输出使能逻辑阵列块称为LAB,每个LAB由16个宏单元组成,多个LAB通过可编程连线阵列互连,每一个LAB有来自PIA的36个信号、用于寄存器辅助功能的控制信号和I/O引脚到寄存器的直接通道宏单元,宏单元

24、可以单独配置为组合逻辑和时序逻辑工作方式,它由三个功能块组成:逻辑阵列、乘积项选择矩阵和可编程触发器。扩展乘积项可以使一个宏单元实现更复杂的逻辑函数,而不使用两个宏单元可编程连线阵列,该阵列将各个LAB互连在一起构成所需的逻辑功能,I/O控制块允许每个I/O引脚可以单独配置为输入、输出或是双向工作方式。,主动串行配置(AS),该配置使用ALTERA公司提供的配置EPROM(如EPC1213)作为器件的配置数据源,配置EPROM以串行位流(bit-stream)方式向器件提供数据,典型电路见图2-12。图2-12 主动串行配置 在该图中,FLEX8000的nCONFIG 引脚接电源,使该器件有开

25、机自动配置能力。,使用并行EPROM以APU或APD方式配置FLEX8000的一般电路如图2-13所示。所有FLEX8000芯片通过自己的18条地址线向EPROM提供地址。图2-13 主动并行配置,被动串行配置(PS)方式采用外部控制器,通过串行位(BIT)流来配置FLEX8000,FLEX8000,通过5条线与外部控制器连接。外部控制器有如下几种:ALTERA公司的PL-MPU编程部件和FLEX卸载电缆(DOWNLOAD CABLE);智能主机(微机或单片机)。外部控制器有如下几种:ALTERA公司的PL-MPU编程部件和FLEX卸载电缆(DOWNLOAD CABLE);智能主机(微机或单片

26、机);ALTERA公司的Bit Blaster电缆,该电缆与RS232接口兼容。使用ALTERA的FLEX卸载电缆进行被动串行配置图2-14所示。图2-14 被动串行配置图,FLEX的卸载电缆一端接MPU主编程部件的EPROM适配器,另一端与要编程的目的板中待配置FLEX器件连接起来,向FLEX器件提供5个信号,配置数据取自MAX+PLUS软件编译形成的SRAM目标文件(*。SOF)在线重新配置。MAX+PLUS配置与编程支持该软件可以产生4种不同的类型的编程文件:SRAM文件,该文件(SRAM Object File)(*.SOF)用于被动串行配置,可使用MAX+PLUS编程器、FLEX卸载

27、电缆和ALTERA编程部件将数据直接装入系统中的FLEX8000,利用该文件可以生成POF、TTF和HEX文件;编程目标文件;该文件(Programer Object File)(*.POF)用于主动串行配置(AS)ALTERA的配置EPROM,MAX+PLUS软件为每一个设计自动生成一个POF文件;十六进制文件(Inter格式文件),该文件(Hexadecimal File)(*.HEX)是Inter HEX格式的ASC文件,使用APU或APD方式配置FLEX8000时需使用标准的并行EPROM,通用烧录器可以完成此项工作;列表文本文件,该文件(Tabular Text File)(*.TT

28、F)是一个表格式的文件,它提供的是逗号分割开的文件,可以用于PPA、PPS和一位宽的PS方式配置数据。,本章小节,基于对可编程逻辑器件的概述,本章主要讨论了:可编程逻辑器件的基本结构,包括组合逻辑与时序逻辑的逻辑函数表达式、PLD器件的结构模型;PAL和GAL器件的基本结构。最后在CPLD的基本结构介绍中,对Xinlinx公司XC7300系列器件和Altera公司MAX7000系列器件的硬件结构细节及编程技术中用到的硬件技术细节作了比较详细的说明。,本章习题,2-1 简述可编程逻辑器件的基本组成结构。2-2 简述PLD的逻辑实现原理。2-3试比较PAL和GAL器件基本结构的异同点。2-4 简述XC 7300系列器件的主要特性。2-5简述MAX 7000系列器件的主要特性。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号