您好,欢迎访问三七文档
第2章PLD器件2.1概述2.2PLD的分类2.3PLD的基本原理与结构2.4低密度PLD的原理与结构2.5CPLD的原理与结构2.6FPGA的原理与结构2.7PLD器件的编程元件2.8边界扫描测试技术2.9在系统编程2.10FPGA/CPLD器件概述内容第2章PLD器件可编程逻辑器件PLD(programmablelogicdevice):PLD是做为一种通用集成电路生产的,他的逻辑功能按照用户对器件编程来搞定。一般的PLD的集成度很高,足以满足设计一般的数字系统的需要。这样就可以由设计人员自行编程而把一个数字系统“集成”在一片PLD上,而不必去请芯片制造厂商设计和制作专用的集成电路芯片了。2.1概论PLD的发展历程20世纪70年代的PROM和PLA器件AMD公司推出PAL器件20世纪80代美国Lattice公司GAL器件FPGA器件EPLD器件CPLD器件内嵌复杂功能模块的SoPC◆1985年,美国Xilinx公司推出了现场可编程门阵列(FPGA,FieldProgrammableGateArray)◆CPLD(ComplexProgrammableLogicDevice),即复杂可编程逻辑器件,是从EPLD改进而来的。PLD的发展PLD的集成度分类可编程逻辑器件(PLD)简单PLD复杂PLDPROMPALPLAGALCPLDFPGA一般将GAL22V10(500门~750门)作为简单PLD和高密度PLD的分水岭2.2PLD的分类四种SPLD器件的区别PLD器件按照可以编程的次数可以分为两类:(1)一次性编程器件(OTP,OneTimeProgrammable)(2)可多次编程器件OTP类器件的特点是:只允许对器件编程一次,不能修改,而可多次编程器件则允许对器件多次编程,适合于在科研开发中使用。按编程特点分类(1)熔丝(Fuse)(2)反熔丝(Antifuse)编程元件(3)紫外线擦除、电可编程,如EPROM。(4)电擦除、电可编程方式,(EEPROM、快闪存储器(FlashMemory)),如多数CPLD(5)静态存储器(SRAM)结构,如多数FPGA按编程元件和编程工艺划分非易失性器件易失性器件(1)基于乘积项(Product-Term)结构的PLD器件。(2)基于查找表(LookUpTable,LUT)结构的PLD器件。按结构特点分类输入缓冲电路与阵列或阵列输出缓冲电路输入输出……PLD器件的原理结构图2.3PLD的基本原理与结构缺点:器件规模不容易做的很大。目前绝大多数的FPGA采用查找表结构。数字电路符号表示常用逻辑门符号与现有国标符号的对照PLD电路符号表示与门、或门的表示PLD连接表示法(a)固定连接(b)可编程连接(c)未连接2.4低密度PLD的原理与结构简单PLDPROMPALPLAGAL2.4低密度PLD的原理与结构PROM与阵列(不可编程)或阵列(可编程)………0A1A1nA0W1W1pW0F1F1mFnp2PROM的逻辑阵列结构PROMPROM表达的PLD阵列图与阵列(固定)或阵列(可编程)0A1A1A1A0A0A1F0FPROM中包含一个固定的与阵列与一个可编程的或阵列PROM用PROM完成半加器逻辑阵列01110100AAFAAAAF与阵列(固定)或阵列(可编程)0A1A1A1A0A0A1F0FPLAPLA逻辑阵列示意图与阵列(可编程)或阵列(可编程)0A1A1A1A0A0A1F0FPLA在结构上由可编程的与阵列与一个可编程的或阵列构成。图中PLA只包含4个乘积项。优点:芯片利用率高、节省芯片面积;缺点:对开发软件要求高、优化算法复杂、运行速度低。PLA与PROM的比较0A1A1F0F2A2F0A1A1F0F2A2FPALPAL结构PAL的常用表示0A1A1F0F0A1A1F0FPAL的与阵列是可编程,或阵列是固定的。优点:送到或门的乘积项是固定的大大简化了设计算法;PALPAL22V10部分结构图GALGAL22V10的结构(局部)GAL器件在与或阵列上沿用了PAL的与阵列是可编程,或阵列是固定的。但在输出结果上做了较大改进,设计了独特的输出逻辑宏单元(OLMC)GAL22V10的OLMC结构CPLD器件是在PAL、GAL基础上发展起来的,的,它由可编程逻辑宏单元、可编程I/O单元,和可编程内部连线3大部分组成。每个宏单元由类似PAL的电路块构成。每个宏模块通过芯片内部的连线资源互连,并连接到I/O块。2.5CPLD的原理与结构CPLD器件的结构2.5CPLD的原理与结构可编程逻辑宏单元可编程I/O单元可编程连线阵列(1)可编程逻辑宏单元可编程逻辑宏单元是器件的逻辑组成核心,宏单元内部主要包括与阵列和或阵列、可编程触发器和多路选择器等电路,能独立地配置为时序逻辑或组合逻辑工作方式。2.5.1宏单元结构①多触发器结构和“隐埋”触发器结构。GAL器件每个输出宏单元只有一个触发器,而CPLD的宏单元内通常含两个或两个以上的触发器,其中一个触发器与输出端相连,其余触发器的输出不与输出端相连,但可以通过相应的缓冲电路反馈到与阵列,从而与其他触发器一起构成较复杂的时序电路。CPLD的逻辑宏单元特点:CPLD的逻辑宏单元特点:②乘积项共享结构。在PAL和GAL的与或阵列中,每个或门的输入乘积项最多为8个,当要实现多于8个乘积项的“与-或”逻辑函数时,必须将“与-或”函数表达式进行逻辑变换。在CPLD宏单元中,如果输出表达式的与项较多,对应的或门输出端不够用时,可以借助可编程开关将同一单元(或其他单元)中的其他或门与之联合起来使用,或者在每个宏单元中提供未使用的乘积项供其他宏单元使用和共享,从而提高了资源利用率,实现快速复杂的逻辑函数。CPLD的逻辑宏单元特点:③异步时钟和时钟选择。CPLD器件与PAL、GAL相比,其触发器的时钟即可以同步工作又可以异步工作,有些器件中触发器的时钟还可以通过数据选择器或时钟网络进行选择。此外,逻辑宏单元内触发器的异步清零和异步置位也可以用乘积项进行控制,因而使用起来更加灵活。(2)可编程I/O单元输入/输出单元,简称I/O单元(或IOC),它是芯片内部信号到I/O引脚的接口部分。由于阵列型HDPLD通常只有几个专用输入端,大部分端口均为I/O端,而且系统的输入信号常常需要锁存,因此,I/O常作为一个独立单元来处理。负责输入/输出电器特性控制,比如可以设定集电极开路输出、摆率控制、三态输出等。(3)可编程连线阵列(ProgrammableInterconnetArray,PIA)CPLD器件提供丰富的内部可编程连线资源。可编程内部连线的作用是给各逻辑宏单元之间及逻辑宏单元与I/O单元之间提供互连网络。各逻辑宏单元通过可编程内部连线接收来自专用输入端或通用输入端的信号,并将宏单元的信号反馈到其需要到达的目的地。这种互连机制有很大的灵活性,它允许在不影响引脚分配的情况下改变内部的设计。典型CPLD器件的结构MAX7000S器件的内部结构宏单元,用来实现基本逻辑功能。可编程连线负责信号传递,连接所有宏单元。负责输入/输出电气特性控制,例如设定集电极开路输出、三态输出等MAX7000S器件的宏单元结构乘积项阵列,与阵列或阵列,与乘积项阵列构成组合逻辑。可编程触发器,根据需要触发器可以分别配置为具有可编程时钟控制的D、JK或SR触发器工作方式,它的时钟、清零输入都可以通过编程选择,可以使用专用的全局清零和全局时钟,也可使用内部逻辑产生时钟和清零。如果不需要触发,也可将触发器盘路,信号直接输给PIA或输出到I/O引脚。对于简单的逻辑函数,只需要一个宏单元即可完成,但对于复杂电路,一个宏单元是不能实现的,这时就需要通过并联扩展项和共享扩展项将多个宏单元相连,宏单元的输出也可以连接到可编程连线阵列,作为另一个宏单元的输入,这样CPLD就可以实现更为复杂的逻辑关系。2.6.1查找表(Look-upTable,LUT)结构2.6FPGA的原理与结构由于CPLD是由与或阵列构成的,器件规模不容易做的很大,后来人们构造出另一种可编程的逻辑结构,即查找表结构,大部分FPGA采用查找表结构。查找表原理类似于ROM,其物理结构是静态存储器(SRAM),N个输入项的逻辑函数可以由一个2N位容量的SRAM来实现,函数值存放在SRAM中,SRAM的地址线起输入作用,SRAM的输出为逻辑函数值,由连线开关实现与其他功能块的连接。查找表结构4输入LUT及内部结构图2.6FPGA的原理与结构基于查找表结构的特点:(1)一个N输入查找表可以实现N个输入变量的任何逻辑功能。(3)器件的LUT的输入变量一般是4个或5个,所以存储单元的个数一般是16个或32个。输入变量多于4个或5个的逻辑函数,可以用多个查找表级联来实现。(2)一个N输入查找表需要对应2Nbits的SRAM存储单元。FPGA逻辑块中,除了有LUT外,一般还包含触发器等电路。作用:将LUT输出值保存,用以实现时序逻辑电路。也可将触发器旁路,实现组合逻辑功能。FPGA器件的内部结构示意图LUT加上触发器结构典型FPGA的结构Xilinx的FPGA器件XC4000,属于中等规模FPGA器件,XC4000的基本逻辑块为可配置逻辑块(ConfigurableLogicBlock,CLB)可配置逻辑块(CLB)输入/输出模块(I/OBlock,IOB)布线通道(RoutingChannels)典型FPGA的结构(1)XC4000器件的CLB结构D触发器,具有异步置位和复位端,有公共的时钟输入端。主要用来实现寄存器逻辑。数据选择器可以被编程,用来选择触发器的输入信号、时钟有效边沿和输出信号等。1.可配置逻辑块(CLB)单长线:CLB的输入端和输出端与相邻单长线相连。双长线:将两个不相邻的CLB连接起来。2.布线通道布线通道用来提供高速可靠的内部连线,它将CLB之间、CLB和IOB之间连接起来,以构成复杂的逻辑。布线通道由许多金属线段构成。CPLD与FPGA区别:结构不同,CPLD乘积项阵列,FPGA基于SRAM查找表结构。集成度不同应用范围不同,CPLD(与或)逻辑能力强,而寄存器少,适合控制密集系统。FPGA逻辑能力弱,但寄存器多,适用于数字密集型系统。使用方法不同,CPLD非易失,FPGA易失外部添加器件存储数据。1.熔丝(Fuse)型器件2.反熔丝(Anti-fuse)型器件3.EPROM型,紫外线擦除电可编程4.EEPROM型6.SRAM型5.Flash型2.7PLD器件的编程元件浮栅编程元件1.熔丝型开关一般在需要编程的互连节点上设置相应的熔丝开关。在编程时,需要保持连接的节点保留熔丝,需要去除连接的节点烧断熔丝。熔丝开关烧断后不能回复,只能编程一次。PROM、EPLD和FPGA等。缺点:编程电流大、占用芯片面积大。2.反熔丝型开关通过击穿介质来达到连通线路的目的。这些开关元件在未编程时处于开路状态,编程时,在其两端加上编程电压,反熔丝就会由高阻抗变为低阻抗,从而实现两个极间的连通,而编程电压撤出后也一直处于导通状态。PLICE反熔丝介质未编程时呈现很高的阻抗,当加上18V的编程电压将其击穿后,阻抗很低,反熔丝在硅片上只占一个通孔的面积。特点:占用硅片面积小,适宜做集成度很高的可编程逻辑器件的编程元件。3.浮栅编程元件用浮栅存储电荷的方法来保存编程数据的,因此断电时,存数的数据是不会丢失的。(1)EPROM基本结构是浮栅管,相当于一个电子开关。当浮栅管没有注入电子时,浮栅导通;反之,截止。(2)EEPROM(3)闪速存储器(FlashMemory)有G1,G2两个栅极,G1没有引出线为浮栅,G2控制栅,在D和S间加几十伏电压脉冲,在沟道中产生足够强电场,令电子加速跃入浮栅,G1带负电荷,G1开启电压变得很高,即使G2栅加高电平,该管也无法导通,相当于存储了“0”反之,G1栅无电子积累,MOS管开启电压低,当G2栅为高时,该管导通,相当于存储了“1”。EPROM出厂时为全“1”状态,使用者根据需要写“0”,在写“0”
本文标题:第2章PLD器件
链接地址:https://www.777doc.com/doc-51157 .html