83 复杂可编程逻辑器件(CPLD)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

8.3复杂可编程逻辑器件(CPLD)8.3.1概述8.3.2CPLD的基本结构8.3.3CPLD的分区阵列结构8.3.4典型器件及应用举例ComplexProgrammableLogicDevice器件名称集成规模/门I/O端数宏单元数触发器数编程EPM956012000216560772EEPROMEPM5032600243232EPROMEPF10K1010000134-(1)720SRAMEPX81603200172160160快闪SRAMAT510051005252128EPROMATV750750101020EPROMpLSI332014000160320480EEPROMpLSI20321000323232EEPROMM5-51220000256512512EEPROMXC402525000192-(2)2560SRAMXC7354-(3)5454108EPROM表8-3-1部分CPLD产品(1)有576个逻辑单元;(2)有1024个可编程逻辑模块;(3)等效6个PAL22V108.3.1概述CPLD大致可以分为两类,一类是由GAL器件发展而来,其主体是与阵列和宏单元结构,称为CPLD的基本结构;另一类是分区阵列结构的CPLD。8.3.2CPLD的基本结构逻辑图1.共享相邻乘积项和结构每个逻辑单元中含有两个或项输出,而每个或项均由固定的几个乘积项输入。每个或项输出均可连接到相邻的连接单元,甚至本单元中的两个或项都可用于相邻的两个逻辑单元。2.“隐埋”触发器结构在CPLD基本结构的宏单元内含有两个或两个以上的触发器,其中只有一个触发器可与I/O引出端相连,其余均为“隐埋”触发器。它们不与I/O引出端相连,但有自己的内部输入信号,其输出可以通过相应的缓冲电路反馈到与阵列,构成较复杂的时序电路。≥1≥1≥1C11KQ1JRI/O输出选择反馈选择极性选择结构选择输出使能时钟反馈到逻辑阵列来自逻辑阵列同步时钟VCC图8-3-2触发器类型可编程结构3.触发器类型可编程结构通过对输出触发器编程,可实现4种不同类型的触发器结构,即D、T、J-K和R-S触发器。它们与逻辑宏单元相配置,可实现多种逻辑电路结构。小规模PLD互联资源(a)(b)(c)图8-3-3CPLD三种全局互联结构示意8.3.3CPLD的分区阵列结构分区阵列结构,即将整个器件分为若干个区。有的区包含若干个I/O端、输入端及规模较小的与、或阵列和宏单元,相当于一个小规模的PLD;有的区只是完成某些特定的逻辑功能。各区之间可通过几种结构的可编程全局互连总线连接。UIMFFB输出FBI/O模块FBFFBFBFB输出I/O模块快速输入图8-3-4通用互连阵列UIM结构1.通用互连阵列UIM(UniversalInterconnectMatrix)结构UIM结构中含有快速功能模块FFB和高集成度功能模块FB。两种模块以及I/O模块通过通用互连矩阵连接。FFB和FB都采用GAL型结构。FFB适用于快速编(解)码和高速时序逻辑电路;FB适用于逻辑功能复杂且对时序要求不高的场合及复杂的组合逻辑电路。采用通用互连矩阵UIM进行器件内部逻辑连接,可保证所有连接路径延迟时间相同。MAX结构由逻辑阵列块LAB(LogicArrayBlock)、I/O模块和可编程互连阵列PIA(ProgrammableInterconnectArray)构成。逻辑图2.多阵列矩阵MAX(MultipleArrayMatrix)结构MAX结构中,每个宏单元有一个可编程的与阵列和一个固定的或阵列,以及一个具有独立可编程时钟、时钟使能、清除和置位功能的可配置触发器。每16个宏单元组成一组,构成一个灵活的逻辑阵列模块LAB。多个LAB通过可编程互连阵列PIA和全局总线相连。每个LAB还与相应的I/O控制模块相连,以提供直接的输入和输出通道。3.灵活逻辑单元阵列FLEX(FlexibleLogicElementMatrix)结构逻辑图FLEX结构由嵌入阵列块EAB、逻辑阵列模块LAB、逻辑单元LE、I/O单元IOE和行列快速互连通道构成。LE是FLEX结构中最小的逻辑单元,每个LE含有一个提供4输入组合逻辑函数的查找表LUT以及一个能提供时序逻辑能力的可编程寄存器。每8个LE组成一组,构成一个LAB。每个LAB是独立的一个模块,其中的LE具有共同的输入、互连与控制信号。EAB由RAM/ROM和相关的输入、输出寄存器构成。可提供多位片内存储器。LAB和EAB排成行与列,构成二维逻辑阵列,内部信号的互连是通过行、列快速互连通道和LAB局部互连通道实现的。4.其他结构形式(1)大块结构逻辑图全局布线区GRP可将所有器件内的逻辑连接起来,并提供固定的传输延迟时间,以实现时序与器件内部逻辑布线无关的设计。通用逻辑块GLB由与阵列、乘积项共享阵列和逻辑宏单元构成。每个GLB相当于一个GAL器件,可编程为5种工作模式,并具有乘积项共享功能。输入/输出单元IOC可编程为输入、输出和双向模式。输出布线区ORP是介于GLB和IOC之间的可编程互连阵列,以连接GLB输出到I/O单元。时钟发生器I/0单元输出开关矩阵输入开关矩阵宏单元逻辑分配器与阵列时钟发生器I/0单元输出开关矩阵输入开关矩阵宏单元逻辑分配器与阵列时钟发生器I/0单元输出开关矩阵输入开关矩阵宏单元逻辑分配器与阵列时钟发生器I/0单元输出开关矩阵输入开关矩阵宏单元逻辑分配器与阵列......中央开关矩阵时钟GAL块GAL块图8-3-8中央开关矩阵结构(2)中央开关矩阵结构中央开关矩阵结构由多个GAL块和一个中央可编程开关矩阵互连而成。接收所有来自专用输入和输入到中央开关矩阵的信号,并将它们送到各GAL块。图8-3-9XC7354的基本结构UIMFFB1输出9129FB6219I/O模块318FB52193FFB2输出9129FB3219I/O模块318FB42193快速输入12128.3.4典型器件及应用举例(一)XC7354器件1.基本结构XC7354属于通用互连阵列UIM结构型器件。由4个高集成度功能模块FB和2个快速功能模块FFB构成,模块之间通过通用互连矩阵UIM连接。1295&≥1&12C11DQ2快速时钟全局高速输出使能前面宏单元的乘积和与阵列乘积项控制后面宏单元的乘积和每个宏单元5个独享乘积项寄存器透明控制9个宏单元之一反馈到UIM从引出端反馈到UIM9个来自FFB宏单元的反馈24个来自UIM的输入12个快速输入图8-3-10XC7354快速功能模块FFB原理图S/R(1)快速功能模块(FFB)24个输入,每个输入可从三种输入信号中选择。共45个乘积项,每5个驱动1个宏单元,其中4个经或非运算作为触发器输入,第5个作为S/R信号。1≥1&≥1&1C1QC11D/1TQ1D/1T宏单元N+1S/R宏单元N快速时钟来自前面宏单元单个乘积项输出可提供8~36个乘积项和输出图8-3-11快速功能模块乘积项的扩展每个宏单元的乘积项或门可以利用快速功能模块的乘积项分配电路被扩展,提供乘积项分配的灵活性。将乘积项的和分配到相邻宏单元,相当于使乘积项的或门扩展了4个输入,因此最多可实现36个乘积项的复杂逻辑电路。(2)高集成度功能模块(FB)逻辑图FB采用GAL型结构,带有可编程乘积项阵列和可编程多个宏单元。各FB通过UIM连接,每个FB可以从UIM接收21个信号,还可以从快速外输入引出端得到3个信号。每个FB包含9个宏单元,每个宏单元包括5个独享乘积项。每个模块中还有12个共享乘积项,可以被模块中的任意1个或9个宏单元使用。算术逻辑单元ALU的输出驱动一个可编程D触发器,其时钟源是可编程的。宏单元的输出除驱动器件的输出缓冲器外,还可反馈作为UIM的输入。图8-3-13ALU原理图=1≥1函数发生器&D1D2&进位链控制进位输入去宏单元触发器进位输出乘积项和D1乘积项和D2或非或与非与反输入反输入原输入原输入或非或与非与异或非异或逻辑功能逻辑功能21DD21DD21DD1D1D21DD21DD21DD21DD21DD2D2D21DD21DD表8-3-22输入函数发生器逻辑功能ALU有两种编程模式,即逻辑编程模式和算术编程模式。在逻辑编程模式中,ALU是一个2输入函数发生器,产生任何2输入的逻辑函数;在算术编程模式中,ALU可被编程为一个具有超前进位的全加器,产生2输入的算术和或算术差。超前进位可以在相邻宏单元传递,甚至可以跨越FB传递。(3)通用互连矩阵(UIM)UIM从每个宏单元的输出端、I/O引出端和专用输入引出端上输入信号,通过无限制的交叉开关对FB产生21个输出,对FFB产生24个输出。各UIM输入可通过编程连接到任何UIM的输出,信号通过UIM的延迟是固定的,与UIM内部的布线、扇入和扇出无关。(4)I/O模块逻辑图宏单元直接通过三态输出缓冲器驱动输出,每个三态缓冲器由OE乘积项单独控制。两个专用快速使能信号可用来代替OE乘积项或同OE乘积项一起控制输出。每个器件信号输入可以被设置为直通模式、锁存模式和寄存模式。2.应用举例例8-4用XC7354器件实现一个4位超前进位加法器。图8-3-154位超前进位加法器的ALU配置D1D2CinCoutFA0B0D1D2CinCoutFA1B1D1D2CinCoutFA2B2D1D2CinCoutFA3B3宏单元1寄存器S0宏单元2寄存器S1宏单元3寄存器S2宏单元4寄存器S3宏单元5寄存器Sout4位超前进位加法器A0B0A1B1A2B2A3B3CinS0S1S2S3Cout解使用XC7354中一个FB中相邻的5个宏单元,即可实现4位超前进位加法器。(二)EPF10K20器件1.基本结构EPF10K20器件采用SRAM制造工艺和灵活逻辑单元阵列FLEX结构,主要由嵌入阵列块(EAB)、逻辑阵列块(LAB)、逻辑单元(LE)、I/O单元(IOE)和行、列快速互连通道构成。EPF10K20带有6个EAB、144个LAB和1152个逻辑单元,最大I/O数目为189,嵌入阵列块EAB可提供12288位存储器。EPF10K20还包含6个专用输入引出端,可用于高速全局控制信号。(1)逻辑单元(LE)逻辑单元LE(LogicElement)是EPF10K20结构中最小的逻辑单位。查找表LUT进位链级联链置位/复位逻辑≥1DATA1DATA2DATA3DATA4进位输入级联输入可编程触发器PRn1DC1ENACLRnQ到快速互联通道到LAB局部互联通道时钟选择进位输出级联输出LABCTRL1LABCTRL2全局复位LABCTRL3LABCTRL4图8-3-16EPF10K20逻辑单元每个LE含有一个4输入查找表LUT,能快速产生4变量的任意逻辑函数输出。LE还包括一个带同步使能的可编程触发器和一个进位链、一个级联链。LE产生两个输出,可独立进行控制。≥14输入LUT图8-3-17EPF10K20逻辑单元正常工作模式&●1DC1ENAQ到快速互联通道到局部互联通道级联输入进位输入DATA1DATA2DATA3DATA4级联输出进位链和级联链可连接邻近的LE而不占用局部互连通道。进位链适用于实现高速计数器和加法器,级联链可实现最小时延的多输出逻辑函数。EPF10K20逻辑单元有4种工作模式,即正常模式、运算模式、加/减计数模式和可清除的计数模式,每种模式对LE资源的使用不同。00000140011103110010201010011000000CPnQ3nQ2nQ113nQ12nQ11nQ表8-3-3五进制计数器状态转移表例8-5用查找表LUT结构实现一个五进制计数器。解用当前状态作为地址码,输出寄存器作为地址寄存器,采用查找表LUT实现五进制计数器结构如下:输出寄存器LUT1LUT2LUT3000001010011100nQ3nQ2nQ113nQ12nQ11nQD1D2D3地址码001010011100000地址码表图8-3-18LUT实现五进制计数器结构图4LE14LE24LE34LE44LE

1 / 33
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功