您好,欢迎访问三七文档
第2章可编程逻辑器件基础EDA技术与VHDL设计可编程逻辑器件基础可编程逻辑器件(ProgrammableLogicDevice,简称PLD)是20世纪70年代发展起来的一种新型逻辑器件,它是大规模集成电路技术的飞速发展与计算机辅助设计(CAD)、计算机辅助生产(CAM)和计算机辅助测试(CAT)相结合的一种产物,是现代数字电子系统向着超高集成度、超低功耗、超小型封装和专用化方向发展的重要基础。2.1概述PLD器件的基本结构CPLD/FPGA的结构特点可编程逻辑器件的编程元件可编程逻辑器件的基本资源可编程逻辑器件的测试技术可编程逻辑器件的设计与开发2.22.32.42.52.62.7可编程逻辑器件基础可编程逻辑器件是一种由用户编程实现所需功能的半定制集成电路,近年来发展十分迅速,已在国内外的计算机硬件、工业控制、智能仪表、数字视听设备、家用电器等领域得到了广泛的应用。可编程逻辑器件与EDA技术的结合,使得系统设计人员与芯片设计人员的相互渗透,从而快速、方便地构建数字系统。学习ASIC技术,掌握可编程逻辑器件的设计方法,已成为现代电子系统设计人员必须具备的基本技能之一。2.1概述综观可编程逻辑器件的发展情况,大体可以分为六个发展阶段:(1)20世纪70年代初,熔丝编程的可编程只读存储器PROM和可编程逻辑阵列PLA是最早的可编程逻辑器件。(2)20世纪70年代末,对PLA器件进行了改进,AMD公司推出了可编程阵列逻辑。(3)20世纪80年代初,Lattice公司发明了电可擦写的、比PAL器件使用更灵活的通用可编程阵列逻辑GAL。2.1.1可编程逻辑器件发展历程(4)20世纪80年代中期,Xilinx公司提出了现场可编程的概念,同时生产出了世界上第一个FPGA器件。(5)20世纪80年代末,Lattice公司又提出了在系统可编程的概念,即ISP技术,并且推出了一系列的具备在系统可编程能力的CPLD器件。(6)进入20世纪90年代以后,集成电路技术进入到飞速发展的时期。并且出现了内嵌复杂功能块(如加法器、乘法器、RAM、PLLCPU核、DSP核等)的超大规模器件SOPC(SystemOnaProgrammableChip)。2.1.1可编程逻辑器件发展历程按集成度分类集成度是集成电路一项很重要的指标,如果从集成密度上分类,可分为低密度可编程逻辑器件(LDPLD)和高密度可编程逻辑器件(HDPLD)。2.1.2可编程逻辑器件分类可编程逻辑器件低密度可编程逻辑器件(LDPLD)高密度可编程逻辑器件(HDPLD)PROMEPLDCPLDFPGAPLAPALGAL按器件结构分类乘积项结构器件。其基本结构为“与—或阵列”的器件。大部分简单的PLD和CPLD都属于这个范畴。查找表结构器件。其基本结构类似于“门阵列”的器件,它由简单的查找表组成可编程逻辑门,再构成阵列形式。大多数FPGA属于此类器件。2.1.2可编程逻辑器件分类按编程工艺分类熔丝(Fuse)型器件。反熔丝(Antifuse)型器件。UEPROM型器件,即紫外线擦除/电可编程器件。E2PROM编程器件,即电可擦写编程器件。SRAM型器件,即SRAM查找表结构的器件。Flash型器件。2.1.2可编程逻辑器件分类缩短研制周期,整个设计通常只需几天便完成,缩短了产品研制周期,有利于产品的快速上市。降低设计成本,采用可编程逻辑器件为降低投资风险提供了合理的选择途径,它不需掩膜制作费用,在设计的初期或在小批量的试制阶段,其平均单片成本远低于门阵列。提高设计灵活性,可编程逻辑器件是一种由用户编程实现芯片功能的器件,与由工厂编程的掩膜ASIC相比,具有更好的设计灵活性。2.1.3可编程逻辑器件的优势向高密度、大规模的方向发展。向系统内可重构的方向发展。向低电压、低功耗的方向发展。向高速可预测延时器件的方向发展。向混合可编程技术方向发展。2.1.4可编程逻辑器件的发展趋势2.2.1基本结构PLD器件种类较多,不同厂商生产的PLD器件结构差别较大,本节选择PLD器件中一些具有代表性的结构来说明其实现的主要逻辑功能。图中所示为PLD器件的基本结构框图,它由输入缓冲电路、与阵列、或阵列、输出缓冲电路等四部分组成。2.2PLD器件的基本结构输入缓冲电路与阵列或阵列输出缓冲电路输入输出2.2.1基本结构依据可编程的部位可将PLD器件分为可编程只读存储器PROM、可编程逻辑阵列PLA、可编程阵列逻辑PAL、通用阵列逻辑GAL等四种最基本的类型,如表所示。2.2PLD器件的基本结构器件名与阵列或阵列输出电路PROM固定可编程固定PLA可编程可编程固定PAL可编程固定固定GAL可编程固定可组态2.2.1基本结构大部分FPGA器件采用了可编程查找表结构,这种结构基于SRAM查找表,采用RAM“数据”查找的方式。一个N输入查找表(LUT)可以实现N个输入变量的任何逻辑功能,如N输入“与”、N输入“异或”等。图中所示为4输入LUT。2.2PLD器件的基本结构查找表LUT输入1输入2输入4输入3输出2.2.2电路符号在常用的EDA软件中,原理图一般是用图中所示的“常用符号”来描述表示的。2.2PLD器件的基本结构2.2.2电路符号接入PLD内部的与或阵列输入缓冲器电路,一般采用互补结构,可用图a来表示,它等效于b的逻辑结构。图c为PLD中与阵列的简化图形,图d为PLD中或阵列的简化图表示。AAA(b)PLD的互补输入2.2PLD器件的基本结构AAA(a)PLD的互补缓冲器(c)PLD中与阵列的表示F=ABDABCD(d)PLD中或阵列的表示F=A+CABCD2.2.3PROMPROM即可编程只读存储器(ProgrammableReadOnlyMemory),ROM除了用作只读存储器外,还可作为PLD使用。一个ROM器件主要由地址译码部分、ROM单元阵列和输出缓冲部分构成。2.2PLD器件的基本结构地址译码器存储单元阵列A0A1An-1………W0W1Wp-1F0F1Fm-1P=2n2.2.3PROM为了更清晰直观法表示PROM中固定的与阵列和可编程的或阵列,PROM可以表示为PLD阵列图,以4×2PROM为例,如图所示。2.2PLD器件的基本结构A1与阵列1AA00AA1A0F0F1固定或阵列(可编程)2.2.4PLA可编程逻辑阵列PLA对PROM进行了改进。PROM的与阵列可编程,而或阵列不可编程;PLA则是与阵列和或阵列都可编程,PLA的阵列如图所示。2.2PLD器件的基本结构A1阵列1AA00AA1A0F0F1(可编程)或阵列(可编程)PLA与PROM的比较图中是6×3PLA与8×3PROM的比较,两者可以实现相同的逻辑功能,PLA只需要6(2×3)条乘积项线,而不是PROM的8(23)条。节省了2条。当PLA的规模增大时,这个优势更加明显。2.2PLD器件的基本结构A1A0F1F2A2F0A1A0F1F2A2F02.2.5PALPLA的利用率很高,但是软件算法过于复杂,运行速度下降。PAL的结构与PLA相似,也包含与阵列、或阵列,但是或阵列是固定,只有与阵列可编程。PAL的结构和常用表示如图所示。2.2PLD器件的基本结构A1A0F0F1F0F1A1A0PAL的常用表示PAL的结构2.2.6GAL1985年,Lattice公司在PAL的基础上设计出了通用阵列逻辑器件GAL。GAL采用了E2PROM工艺,具有电可擦除重复编程的特点,彻底解决了熔丝型可编程器件的一次可编程问题。2.2PLD器件的基本结构高密度可编程逻辑器件(HDPLD)主要包括CPLD和FPGA,它们的逻辑规模都比较大,能够实现一些复杂的数字系统功能。高密度可编程逻辑器件近年来发展很快,目前已有集成度高达300万门以上、系统频率为200MHz以上的HDPLD供用户使用。CPLD是由GAL发展起来的,其主体仍是与—或阵列,并以可编程逻辑宏单元为基础,可编程连线集中在一个全局布线区;FPGA是以基本门单元为基础,构成门单元阵列,可编程的连线分布在门单元与门单元之间的布线区。下面分别介绍当前主流CPLD/FPGA器件的结构与特点。2.3CPLD/FPGA的结构特点2.3.1Lattice公司的CPLD/FPGALattice是最早推出PLD的公司,其推出的CPLD产品主要有ispLSI、ispMACH等系列。20世纪90年代以来,Lattice首先发明了ISP(In-SystemProgrammability)下载方式,并将E2CMOS与ISP相结合,使CPLD的应用领域有了巨大的扩展。ispLSI器件系列ispMACH4000系列LatticeEC&ECP系列2.3CPLD/FPGA的结构特点2.3.1Lattice公司的CPLD/FPGAispLSI器件的基本结构:ispLSI器件都属于乘积项方式构成可编程逻辑的阵列型CPLD,基本结构由四部分组成:通用逻辑块GLB、集总布线区GRP、输入输出单元IOC和输出布线区ORP。2.3CPLD/FPGA的结构特点2.3.2Xilinx公司的CPLD/FPGAXilinx在1985年首次推出了FPGA,随后不断推出新的集成度更高、速度更快、价格更低、功耗更低的FPGA器件系列。Virtex-4系列FPGASpartanII&Spartan-3&Spartan3E器件系列FPGAXC9500&XC9500XL系列CPLD2.3CPLD/FPGA的结构特点2.3.2Xilinx公司的CPLD/FPGAXilinx公司FPGA的基本结构:由三个部分组成:可编程逻辑块CLB(ConfigurableLogicBlocks)、可编程输入/输出块IOB(InPut/OutputBlock)和可编程内部连接PI(ProgrammableInterconnect)。2.3CPLD/FPGA的结构特点2.3.3Altera和Actel公司的CPLD/FPGAAltera是著名的PLD生产厂商,Altera公司的可编程逻辑器件具有高性能、高集成度和高性价比的优点,此外它还提供了功能全面的开发工具和丰富的IP核、宏功能库等。Altera公司目前能够提供以下5类宏功能模块:(1)数字信号处理类。(2)图像处理类。(3)通信类。(4)接口类。(5)处理器及外围功能模块。2.3CPLD/FPGA的结构特点2.3.4CPLD和FPGA的异同根据结构特点和工作原理,以乘积项结构方式构成逻辑行为的器件称为CPLD,以查找表法结构方式构成逻辑行为器件称为FPGA。FPGA和CPLD都是可编程ASIC,有许多共同的特点,但由于CPLD和FPGA硬件结构上的差异,使得它们具有各自的特点:在结构工艺方面;在触发器数量上;在逻辑规模和复杂度方面;在时延方面;…2.3CPLD/FPGA的结构特点可编程逻辑器件可以由用户编程实现专门要求的功能,主要是由于其提供了四种可编程资源:即位于芯片内部的可编程功能单元;位于芯片四周的可编程I/O;分布在芯片各处的可编程布线资源和片内存储块RAM。这里以FPGA为例,对这些资源作一个概括。2.4可编程逻辑器件的基本资源1.RAM查找表在SRAM查找表结构中输入变量作为地址用来从RAM存储器中选择数值,RAM存储器中预先加载进去要实现函数的真值表数值,因此可以实现输入变量的所有可能的逻辑函数。可以利用器件中相应结构的RAM寻址机构或分开的译码器由RAM的Q端输出选取它的输入数据。这个机构提供了有效的面积和可预测的延时,随输入变量数目的增加按比例改变。2.4.1功能单元2.基于多路开关的功能单元采用这种形式的功能单元是基于如下的考虑,即只要在多路开关的输入端放置输入的变量、反变量、固定的0和1等相应的组合,两输入变量的所有函数就可以由单个2选1的多路开关来实现。2.4.1功能单元3.固定功能单元此类功能单元提供单个固定的功能。单个固定功能有单级简单和严时短的优点,它的主要
本文标题:可编程逻辑器件基础
链接地址:https://www.777doc.com/doc-50919 .html