《可编程逻辑器件的工作原理及应用.ppt》由会员分享,可在线阅读,更多相关《可编程逻辑器件的工作原理及应用.ppt(183页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第七章第七章第七章第七章 可编程逻辑器可编程逻辑器可编程逻辑器可编程逻辑器件的工作原理及应用件的工作原理及应用件的工作原理及应用件的工作原理及应用主讲:司杨主讲:司杨制作:张海峰制作:张海峰电工教研室第七章第七章 可编程逻辑器件的工作原理及应用可编程逻辑器件的工作原理及应用7.1可编程逻辑器件的编程原理可编程逻辑器件的编程原理17.2CPLD和和FPGA的结构和特点的结构和特点27.3MAX_PLUS_II的基本使用方的基本使用方法与可编程逻辑器件的应用举例法与可编程逻辑器件的应用举例3电工教研室7.1 7.1 可编程逻辑器件的编程原理可编程逻辑器件的编程原理7.1.1 7.1.1 概述概述一
2、、数字电路的发展与可编程器件的出现一、数字电路的发展与可编程器件的出现二、二、PLDPLD的发展态势的发展态势三、可编程逻辑器件的分类三、可编程逻辑器件的分类l1.按集成密度划分为7.1.2 PLD7.1.2 PLD的结构、表示方法的结构、表示方法l1.PLD的基本结构l2.PLD的逻辑符号表示方法l3.编程连接技术l4.低密度可编程逻辑器件电工教研室6.1.3 6.1.3 可编程只读存储器可编程只读存储器PROMPROM6.1.4 6.1.4 可编程逻辑阵列可编程逻辑阵列 PLAPLA一、一、PLAPLA基本结构基本结构二、二、PLAPLA应用举例应用举例6.1.5 6.1.5 可编程阵列逻
3、辑可编程阵列逻辑 PALPAL6.1.6 6.1.6 通用阵列逻辑通用阵列逻辑 GALGAL一、一、GAL16V8GAL16V8总体结构总体结构二、输出逻辑宏单元(二、输出逻辑宏单元(OLMCOLMC)l1.OLMC的结构l2.GAL16V8的结构控制字l3.OLMC的配置三、行地址结构三、行地址结构6.1.2 PLD6.1.2 PLD的结构、表示方法的结构、表示方法一、数字电路的发展与可编程器件的出现一、数字电路的发展与可编程器件的出现集成度:集成度:高效、低耗、高精度、高稳定、智能化。高效、低耗、高精度、高稳定、智能化。VLSICLSICSSICMSIC7.1.1 7.1.1 概述概述专用
4、型:专用型:ASIC(Application Specific Integratel Circuit)逻辑功能逻辑功能:通用型:通用型:54/74系列、系列、74HC系列、系列、74HCT系列等系列等随系统规模扩大:随系统规模扩大:焊点多,可靠性下降焊点多,可靠性下降功耗增加、成本升高功耗增加、成本升高占用空间扩大占用空间扩大要承担设计风险、要承担设计风险、周期长、成本高周期长、成本高可编程器件可编程器件 (PLD:Programmable Logic Device)系统设计师们希望自己设计系统设计师们希望自己设计 ASICASIC芯片,缩短设计周期,芯片,缩短设计周期,能在实验室设计好后,立
5、即投入实际应用。能在实验室设计好后,立即投入实际应用。VLSIC二、二、PLD的发展态势的发展态势n向低电压和低功耗方向发展,向低电压和低功耗方向发展,5V 3.3V 2.5V 1.8V 更低更低n向高集成度、高速度方向发展向高集成度、高速度方向发展 集成度已达到集成度已达到400万门以上万门以上n向数、模混合可编程方向发展向数、模混合可编程方向发展n向内嵌多种功能模块向内嵌多种功能模块方向发展方向发展 RAM,ROM,DSP,CPU等等PROMPLAPALGAL低密度可编程逻辑器件低密度可编程逻辑器件(LDPLD)EPLDCPLDFPGA高密度可编程逻辑器件高密度可编程逻辑器件(HDPLD)
6、可编程逻辑器件可编程逻辑器件(PLD)1.按集成密度划分为按集成密度划分为三、可编程逻辑器件的分类三、可编程逻辑器件的分类7.1.2 PLD的结构、表示方法的结构、表示方法与门与门阵列阵列或门或门阵列阵列乘积项乘积项和项和项PLD主体主体输入输入电路电路输入信号输入信号互补互补输入输入输出输出电路电路输出函数输出函数反馈输入信号反馈输入信号 可由或阵列直接输出,构成组合输出;可由或阵列直接输出,构成组合输出;通过寄存器输出,构成时序方式输出通过寄存器输出,构成时序方式输出。1.PLD的基本结构的基本结构与门与门阵列阵列或门或门阵列阵列乘积项乘积项和项和项互补互补输入输入2.2.PLD的的逻辑符
7、号表示方法逻辑符号表示方法(1)(1)连接的方式连接的方式(2)(2)基本门电路的表示方式基本门电路的表示方式F1=ABC与门与门或门或门A B C DF1 AB C&L AB C1L DF1=A+B+C+D 三态输出缓冲器三态输出缓冲器输出恒等于输出恒等于0 0的与门的与门输出为输出为1 1的与门的与门输入缓冲器输入缓冲器简化简化熔丝编程技术熔丝编程技术是用熔丝作为开关元件,这些开关元是用熔丝作为开关元件,这些开关元件平时(在未编程时)处于连通状态,加电编程时,件平时(在未编程时)处于连通状态,加电编程时,在不需要连接处将熔丝熔断,保留在器件内的熔丝在不需要连接处将熔丝熔断,保留在器件内的熔
8、丝模式决定相应器件的逻辑功能。模式决定相应器件的逻辑功能。反熔丝编程技术反熔丝编程技术也称熔通编程技术,这类器件是用也称熔通编程技术,这类器件是用逆熔丝作为开关元件。这些开关元件在未编程时处逆熔丝作为开关元件。这些开关元件在未编程时处于开路状态,编程时,在需要连接处的逆熔丝开关于开路状态,编程时,在需要连接处的逆熔丝开关元件两端加上编程电压,逆熔丝将由高阻抗变为低元件两端加上编程电压,逆熔丝将由高阻抗变为低阻抗,实现两点间的连接,编程后器件内的反熔丝阻抗,实现两点间的连接,编程后器件内的反熔丝模式决定了相应器件的逻辑功能。模式决定了相应器件的逻辑功能。(1)熔丝)熔丝(Fuse)和反熔丝和反熔
9、丝(Anti-fuse)编程技术编程技术3.3.编程连接技术编程连接技术熔丝结构熔丝结构反熔丝结构示意反熔丝结构示意n体积小,集成度高,速度高,易加密,抗干扰,耐高温n只能一次编程,在设计初期阶段不灵活 PLD表示的与门表示的与门熔丝工艺的与门原理图熔丝工艺的与门原理图L=ABCVCC+(5V)R 3kW L D1 D2 D3 A B C 高电平高电平A、B、C有一个输入低电平有一个输入低电平0VA、B、C三个都输入高电平三个都输入高电平+5V5V0V5V低电平低电平5V5V5VL=ABC L VCC A B C D L VCC A B C D 熔丝图中熔丝图中 L=AB(4)SRAM编程技术
10、编程技术与浮栅型熔丝结构基本相同。与浮栅型熔丝结构基本相同。SRAM编程技术编程技术是在是在FPGA器件中采用的主要编程工艺之一。器件中采用的主要编程工艺之一。SRAM型的型的FPGA是易失性的,断电后其内部编程是易失性的,断电后其内部编程数据(构造代码)将丢失,需在外部配接数据(构造代码)将丢失,需在外部配接ROM存放存放FPGA的编程数据。的编程数据。n可反复编程,实现系统功能的动态重构可反复编程,实现系统功能的动态重构n每次上电需重新下载,实际应用时需外每次上电需重新下载,实际应用时需外挂挂EEPROM用于保存程序用于保存程序(2)(2)浮浮栅栅MOS管开关管开关用不同的浮栅用不同的浮栅
11、MOS管连接的管连接的PLD,编程信息的擦除方法,编程信息的擦除方法也不同。也不同。SIMOS管连接的管连接的PLD,采用紫外光照射擦除;,采用紫外光照射擦除;Flotox MOS管和快闪叠栅管和快闪叠栅MOS管,采用电擦除方法。管,采用电擦除方法。浮浮栅栅MOS管管叠栅注入叠栅注入MOS(SIMOS)管管浮栅隧道氧化层浮栅隧道氧化层MOS(Flotox MOS)管管快闪快闪(Flash)叠栅叠栅MOS管管 当浮栅上带有负电荷时,使得当浮栅上带有负电荷时,使得MOS管的开启电压变高,如管的开启电压变高,如果给控制栅加上果给控制栅加上VT1控制电压,控制电压,MOS管仍处于截止状态。管仍处于截止
12、状态。当浮栅上没有电荷时,给控制栅加上大于当浮栅上没有电荷时,给控制栅加上大于VT1的控制电压的控制电压,MOS管导通。管导通。a.叠栅注入叠栅注入MOS(SIMOS)管管 25V25VGND5V5VGND iD VT1 VT2 vGS 浮栅无电子 O 编程前 iD VT1 VT2 vGS 浮栅无电子 浮栅有电子 O 编程前 编程后 5V5VGND5V5VGND导通导通截止截止若要擦除,可用若要擦除,可用紫外线或紫外线或X射线,距管子射线,距管子2厘米处照射厘米处照射15-20分钟。分钟。L=BC连接连接连接连接断开断开断开断开连接连接连接连接断开断开断开断开1 1 1 1浮栅延长区与漏区浮栅
13、延长区与漏区N+之间的之间的交叠处有一个厚度约为交叠处有一个厚度约为80A(埃埃)的薄绝缘层的薄绝缘层遂道区。遂道区。当遂道区的电场强度大到一当遂道区的电场强度大到一定程度,使漏区与浮栅间出定程度,使漏区与浮栅间出现导电遂道,形成电流将浮现导电遂道,形成电流将浮栅电荷泄放掉。栅电荷泄放掉。遂道遂道MOS管管是用电擦除的,是用电擦除的,擦除速度快。擦除速度快。b.浮栅隧道氧化层浮栅隧道氧化层MOS(Flotox MOS)管管 结构特点结构特点:1.闪速存储器存储单元闪速存储器存储单元MOS管的源极管的源极N+区大于漏极区大于漏极N+区,而区,而SIMOS管的源极管的源极N+区和漏极区和漏极N+区
14、是对称的;区是对称的;2.浮栅到浮栅到P型衬底间的氧化型衬底间的氧化绝缘层比绝缘层比SIMOS管的更薄。管的更薄。c.快闪快闪叠栅叠栅MOS管开关管开关(Flash Memory)(自学)(自学)特点:结构简单、集成度高、特点:结构简单、集成度高、编程可靠、擦除快捷。编程可靠、擦除快捷。PLD中的三种与、或阵列中的三种与、或阵列与阵列、或阵列与阵列、或阵列均可编程均可编程(PLA)与阵列固定,或阵与阵列固定,或阵列可编程列可编程(PROM)与阵列可编程,或与阵列可编程,或阵列固定阵列固定(PAL和和GAL等等)三种与、或阵列有什么应用特点?三种与、或阵列有什么应用特点?输出函数为最小输出函数为
15、最小项表达式项表达式输出函数的乘积项数不输出函数的乘积项数不可变可变每个每个乘积项所含变乘积项所含变量数可变量数可变输出函数的乘积项数可变输出函数的乘积项数可变每每个个乘积项所含变量数可变乘积项所含变量数可变4.4.低密度可编程逻辑器件低密度可编程逻辑器件(LDPLD:(LDPLD:Low-Density PLDLow-Density PLD)(1)PROM(Programmable ROM)20世纪世纪70年代初。年代初。与阵列固定,或阵列可编程。与阵列固定,或阵列可编程。(2)PLA(Programmable Logic Array)20世纪世纪 70年代初。年代初。与阵列、或阵列都可编程
16、。与阵列、或阵列都可编程。(3)PAL(Programmable Array Logic)20世纪世纪70年代末年代末。与阵列可编程,或阵列固定。与阵列可编程,或阵列固定。(4)GAL(Generic Array Logic)20世纪世纪80年代初。年代初。大部分与阵列可编程,或阵列固定。大部分与阵列可编程,或阵列固定。7.1.3 7.1.3 可编程只读存储器可编程只读存储器PROM PROM 与阵列与阵列(固定固定)D2D1D0或阵列或阵列(可编程可编程)A2A1A0完完全全译译码码阵阵列列实现组合逻辑函数:实现组合逻辑函数:将函数写为将函数写为最小项之最小项之和和形式,将对应的与形式,将对
17、应的与项或起来即可。项或起来即可。容量与门数容量与门数或门数或门数 2 2n nmm利用效率低。利用效率低。例:试用例:试用PROMPROM实现实现4 4位二进制码到位二进制码到GrayGray码的转换。码的转换。转换真值表转换真值表与阵列与阵列或阵列或阵列A2A1A0A3D2D1D0D37.1.4 可编程逻辑阵列可编程逻辑阵列 PLA 一、一、PLA基本结构基本结构 图图 PLA的基本结构的基本结构&1二、二、PLA应用举例应用举例 例例 用用PLA器件实现函数器件实现函数 解解:用:用PLA器件实现,需器件实现,需3个输入端,个输入端,2个输出端。个输出端。用卡诺图法化简,得出用卡诺图法化
18、简,得出F1、F2的最简与或式:的最简与或式:相应的实现电路如图所示。相应的实现电路如图所示。图图10.5.2 用用PLA实现组合函数的设计实现组合函数的设计&1 例例 由由PLA构成的逻辑电路如图所构成的逻辑电路如图所示,试写出该电路的逻辑表达式,示,试写出该电路的逻辑表达式,并确定其逻辑功能并确定其逻辑功能。写出该电路的逻辑表达式:写出该电路的逻辑表达式:AnBnCnAnBnAnCnBnCn全加器全加器AnBnCnAnBnCnAnBnCn试写出该电路的逻辑表达式。试写出该电路的逻辑表达式。求状态、驱动和输出方程求状态、驱动和输出方程比较得驱动方程:比较得驱动方程:画阵列图画阵列图1JC11
19、K1JC11KX1CPQ1Q2Y7.1.5 可编程阵列逻辑可编程阵列逻辑 PAL除了具有与阵列和或阵列以外,还有输除了具有与阵列和或阵列以外,还有输出和反馈电路:出和反馈电路:l专用输出结构专用输出结构l可编程输入可编程输入/输出结构输出结构l寄存器输出结构寄存器输出结构l异或输出结构异或输出结构图图 PAL器件的基本电路结构器件的基本电路结构&1图图 专用输出专用输出结构结构&11特点:或非门输出或互补输出特点:或非门输出或互补输出常用器件:常用器件:PAL16L8,PAL20L10等等图图 可编程输入可编程输入/输出输出结构结构1(1)端口既可做输入也可做输出)端口既可做输入也可做输出(2
20、)做输出端口时,输出信号又可被反馈到)做输出端口时,输出信号又可被反馈到输入,构成简单的触发器。输入,构成简单的触发器。图图 寄存器输出结构寄存器输出结构&1(1)增加了增加了D触发器触发器,整个整个PAL的所有的所有D触发器共用一个触发器共用一个时钟和输出使能信号。时钟和输出使能信号。(2)可构成同步时序逻辑电路可构成同步时序逻辑电路图图 异或输出异或输出结构结构&=11增加了异或门,使时序逻辑电路的设计得到简化。增加了异或门,使时序逻辑电路的设计得到简化。例例1:用:用PAL设计一个带使能端(低电平有效)的设计一个带使能端(低电平有效)的2/4线译码器,输出低电平有效。线译码器,输出低电平
21、有效。解:使能输入:解:使能输入:EN;译码地址输入:译码地址输入:A1和和A0;输出为:输出为:Y0,Y1,Y2,Y3。由真值表可知:由真值表可知:Y0=A1 A0,Y1=A1A0,Y2=A1 A0,Y3=A1A0,最好选用低电平输出有效的专用输出结构或可编程最好选用低电平输出有效的专用输出结构或可编程I/O型型PAL。由要求有使能输出,应选用带有三态输出的。由要求有使能输出,应选用带有三态输出的PAL器件。选用器件。选用PAL16L8器件实现的简化示意如图:器件实现的简化示意如图:11 EN 1 1 EN 1 1 EN 1 1 EN 1 1 1ENA0A1Y0Y1Y2Y3例例1实现电路图实
22、现电路图6.1.6 通用阵列逻辑通用阵列逻辑 GAL一、一、GAL16V8总体结构总体结构8个输入缓冲器(引脚个输入缓冲器(引脚29);8个输出缓冲个输出缓冲反相反相器(引脚器(引脚1219);8个个输输出出反反馈馈/输输入入缓缓冲冲器器(既既可可做做输输入入也也可可做做输出),因此为输出),因此为16V8;1个时钟输入缓冲器;个时钟输入缓冲器;1个选通信号输入个选通信号输入反相反相器;器;20个引脚的器件;个引脚的器件;1111ENEN&19192 27 70 00 31 1CLKCLKOLMCOLMC(1919)1.1.88个与门,可实现个与门,可实现64个乘积项个乘积项(Product
23、Term)。2.2.每个与门有每个与门有32个输入端(每个乘积项可包含个输入端(每个乘积项可包含16个变量)。个变量)。3.3.每个输出端最多只能包含每个输出端最多只能包含8个乘积项,当表达个乘积项,当表达式逻辑化简后,乘积项数多于式逻辑化简后,乘积项数多于8个时,则必须个时,则必须适当拆开,再分配给另一个适当拆开,再分配给另一个OLMC。4.4.最多有最多有16个引脚作为输入端(指个引脚作为输入端(指16个输入变个输入变量,量,CLK不属于输入变量),最多有不属于输入变量),最多有8个引脚个引脚作为输出端。作为输出端。二、输出逻辑宏单元(二、输出逻辑宏单元(OLMC)1.OLMC的结构:的结
24、构:(1)8输入的或门输入的或门(2)异或门:控制输出信号的极性异或门:控制输出信号的极性 高电平有效高电平有效 低电平有效低电平有效(3)DFF(4)4个多路选择器个多路选择器乘积项多路选择器乘积项多路选择器(PTMUX Product Term Multiplexer)三态多路选择器三态多路选择器(TSMUX)输出多路选择器输出多路选择器(OMUX)反馈多路选择器反馈多路选择器(FMUX)1 1 1 1 1 01 0 1 1 0 0 0 1 1 0 1 00 0 1 0 0 0 I/OI/O(n n)Q Q来自邻级输出来自邻级输出(m)AC0AC1(n)AC1(m)1212、1919号号O
25、LMCOLMC中的中的FMUXFMUX:ACAC0 0为为SYNSYN,ACAC1 1(m)(m)为为SYNSYN。图图10.6.2 OLMC10.6.2 OLMC的的结构框图结构框图表表 FMUX FMUX的控制功能表的控制功能表AC0AC1(n)AC1(m)反馈信号来源反馈信号来源10本单元触发器本单元触发器Q端端11本单元本单元I./O端端01邻级邻级(m)输出输出00低电平低电平“0”(地地)*在在OLMC(12)OLMC(12)和和OLMC(19)OLMC(19)中中SYNSYN代替代替ACAC0 0,SYNSYN代替代替ACAC1 1(m)(m)。2.GAL16V8的结构控制字的结
26、构控制字GAL16V8的各种配置由结构控制字确定。的各种配置由结构控制字确定。图图10.7.3 GAL16V8结构控制字的组成结构控制字的组成32位位乘积项乘积项禁止位禁止位4位位XOR(n)1位位SYN8位位AC1(n)1位位AC04位位XOR(n)32位位乘积项乘积项禁止位禁止位82位位121516191219(n)(n)(n)PT63PT32PT31PT03.OLMC的配置的配置1ENEN1CLKCLKNCNCNCNCOEOENCNCNCNC来自邻级来自邻级输出输出(m)(m)至另一个邻级至另一个邻级CLKCLKOEOE(a)(a)专用输入模式专用输入模式(b)专用组合输出模式1ENEN
27、1CLKCLKNCNCOEOENCNC=11VccVccXOR(n)NCNCNCNCNCNCCLKCLKOEOE1ENEN1CLKCLKNCNCOEOENCNC=11XOR(n)XOR(n)NCNCCLKCLKNCNCOEOE来自邻级来自邻级输出(输出(m m)OLMC(n)OLMC(n)I/O(n)I/O(n)NCNC来自来自与阵与阵列列反反馈馈(c c)反馈组合输出模式)反馈组合输出模式(d)时序电路中的组合输出模式1ENEN1CLKCLKOEOE=11XORXOR(n n)CLKCLKOEOE来自邻级来自邻级输出输出(m)(m)I/O(n)I/O(n)NCNC来自来自与阵与阵列列反反馈馈
28、(e)寄存器输出模式 1ENEN1CLKCLKOEOE=11XOR(n)XOR(n)CLKCLKOEOE来自邻级来自邻级输出(输出(m m)I/O(n)I/O(n)NCNC来自来自与阵与阵列列反反馈馈OLMC(n)OLMC(n)QDQ图 OLMC的5种工作模式下的简化电路 三、行地址结构三、行地址结构 图 GAL16V8编程单元的地址分配 移移 位位 寄寄 存存 器器与逻辑阵列与逻辑阵列与逻辑阵列与逻辑阵列PT63 PT32PT31 PT003132电电 子子 标标 签签电电 子子 标标 签签保保 留留 地地 址址 空空 间间3359结结 构构 控控 制制 字字6082位加密单元加密单元保留保
29、留整体擦除整体擦除616263SDOSDISCLK行行 地地 址址 熔丝图熔丝图0000 00000011 1010对应对应 -共共64行行031SUPPERSUPPERL L编程器采用编程器采用下拉式菜单下拉式菜单技术技术和和多窗口多窗口技术,人机界面良好,操作使用技术,人机界面良好,操作使用简单,我们以它为例进行编程介绍。简单,我们以它为例进行编程介绍。例例1:用:用GAL设计一个带使能端(低电平有效)的设计一个带使能端(低电平有效)的2/4线译码器,输出低电平有效。线译码器,输出低电平有效。解:解:2个信号输入个信号输入A1,A0;一个使能控制端,一个使能控制端,4个输出端。个输出端。选
30、择选择 EN由由11引脚输入,引脚输入,Y3,Y2,Y1,Y0分别由分别由OLMC(12)OLMC(15)提供。提供。应配置为专用组合输出模式:应配置为专用组合输出模式:AC0=0,AC1=1;XOR=0;SYN=1;乘积项数为;乘积项数为1。OLMC(n)乘积乘积项数项数SYN AC0 AC1(n)XOR(n)输出极输出极性性配置模式配置模式1514131211111111000000000000低电平低电平低电平低电平低电平低电平低电平低电平专用组合专用组合专用组合专用组合专用组合专用组合专用组合专用组合OLMC的配置:的配置:例例人的血型有人的血型有A、B、AB、O型型4种。输血时输血者
31、的血种。输血时输血者的血型与受血者的血型必须符合图所示的关系。试用型与受血者的血型必须符合图所示的关系。试用1片片GAL16V8设计一个逻辑电路,判断输血者的血型与受血设计一个逻辑电路,判断输血者的血型与受血者的血型是否符合上述规定。者的血型是否符合上述规定。解:设定输血者血型用解:设定输血者血型用X1、X2表示,表示,受血者血型用受血者血型用X3、X4表示。表示。取取值值组组合合为为0011时时,分分别别表表示示血血型型为为A、B、AB、O型;型;输输出出为为F:取取值值为为1时时,表表示示血血型型相相符符,否则,表示血型不符。否则,表示血型不符。根据题意得到真值表为:根据题意得到真值表为:
32、X1X2X3X4F00001000100010100110010000101101101011101000010010101011011011001110111110111111例的真值表例的真值表由真值表,经卡诺图法化简由真值表,经卡诺图法化简 X3X4X1X20001111000110111111111101电工教研室7.2 CPLD7.2 CPLD和和FPGAFPGA的结构和特点的结构和特点6.2.1 PLD6.2.1 PLD的发展和现状的发展和现状一、一、PLDPLD的发展历程的发展历程二、二、PLDPLD的现状的现状6.2.2 CPLD/FPGA6.2.2 CPLD/FPGA的特点的
33、特点l1.1.基本结构基本结构l2.2.编程工艺编程工艺l3.3.器件规模器件规模l4.FPGA/CPLD4.FPGA/CPLD生产商生产商6.2.3 6.2.3 复杂可编程逻辑器件(复杂可编程逻辑器件(CPLDCPLD)的结构和基本原理)的结构和基本原理一、一、复杂可编程逻辑器件(复杂可编程逻辑器件(CPLDCPLD)的结构)的结构l1.可编程逻辑阵列(LAB)l2.可编程I/O单元(IOC)l3.可编程内部连线(PIA)电工教研室6.2.4 6.2.4 现场可编程门阵列(现场可编程门阵列(FPGAFPGA)的结构和基本原理)的结构和基本原理一、一、FPGAFPGA的基本结构的基本结构 l1
34、.可编程逻辑块(CLB)l2.输入/输出模块(IOB)l3.可编程互连资源(PIR)二、二、CPLDCPLD与与FPGAFPGA的区别的区别三、大的三、大的PLDPLD生产厂家生产厂家四、四、FPGAFPGA和和CPLDCPLD的选用的选用l1.器件的资源l2.芯片速度l3.器件功耗l4.FPGA/CPLD的选择l5.FPGA/CPLD封装7.2.1PLD的发展和现状的发展和现状l一、一、PLD的发展历程的发展历程lPROM、EPROM、EEPROM只能完成简单的数字逻辑功能lPAL、GAL、PLAPLD能以乘积和的形式完成大量的组合逻辑功能(规模较小)lCPLD、FPGA设计与制造集成电路的
35、任务已不完全由半导体厂商来独立承担。系统设计师们更愿意自己设计专用集成电路(ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(FPLD),其中应用最广泛的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)。几乎所有应用门阵列、PLD和中小规模通用数字集成电路的场合均可应用FPGA和CPLD器件。70年代年代80年代年代90年代年代PROM 和和PLA 器器件件改改进进的的 PLA 器器件件GAL器器件件FPGA器器件件EPLD 器器件件CPLD器器件件内嵌复杂内嵌复杂功能模块功
36、能模块的的SOPCCPLD器件FPGA器件二、二、PLD的现状的现状目前,使用较广泛的PLD有CPLD和FPGA两大类。CPLD:(ComplexProgrammableLogicDevice)复杂的可编程逻辑器件。专指那些集成规模大于1000门以上的可编程逻辑器件。ROM型器件停电数据可保存。FPGA:(FieldProgrammableGateArray)现场可编程门阵列。它是一种由掩膜可编程门阵列和可编程逻辑器件两者演变而来的通用型用户可编程器件。RAM型器件停电数据不可保存,须与存储器连用。7.2.2CPLD/FPGA的特点的特点lCPLDn可编程逻辑宏单元LMC,LogicMacro
37、Cell(结构较复杂)n复杂的I/O控制块(完成芯片上逻辑与外部封装脚的接口)n逻辑单元之间采用连续式互连结构(固定长度的金属线)n内部延时时间固定,可预测lFPGAn可编程逻辑功能块(实现用户功能的基本单元)n可编程I/O块(完成芯片上逻辑与外部封装脚的接口)n逻辑单元之间采用分段式互连结构(不同长度的金属线)n内部延时时间不固定,预测性差1.基本结构CPLDFPGA集总式互连分布式互连lCPLDEPROMEEROMFLASHlFPGA反熔丝(Actel)RAM(Xillinx)2.编程工艺CPLDFPGA集成规模 小(最大数万门)大(最高达百万门)单元粒度 大(PAL结构)小(PROM结构
38、)互连方式 集总总线分段总线、长线、专用互连编程工艺 EPROM、EEROM、FlashSRAM编程类型 ROM型RAM型,须与存储器连用3.器件规模ALTERAFPGA:FLEX系列:10K、10A、10KE,EPF10K30E APEX系列:20K、20KE EP20K200E ACEX系列:1K系列 EP1K30、EP1K100 STRATIX系列:EP1系列 EP1S30、EP1S120CPLD:MAX7000/S/A/B系列:EPM7128S MAX9000/A系列FPGA:XC3000系列,XC4000系列,XC5000系列 Virtex系列 SPARTAN系列:XCS10、XCS
39、20、XCS30CPLD:XC9500系列:XC95108、XC95256XILINX4FPGA/CPLD生产商LATTICEVANTIS(AMD)ispLSI系列:1K、2K、3K、5K、8K ispLSI1016 、ispLSI2032、ispLSI1032E、ispLSI3256A MACH系列 ispPAC系列:其它其它PLD公司:公司:ACTEL公司:公司:ACT1/2/3、40MXATMEL公司:公司:ATF1500AS系列、系列、40MXCYPRESS公司:公司:QUIKLOGIC公司公司:CPLD:SO MUCH IC!FPGA CPLDFPGA/CPLD生产商5.可编程逻辑器
40、件结构示意图输入/输出单元互连资源逻辑块7.2.3 复杂可编程逻辑器件(复杂可编程逻辑器件(CPLD)的结构和基本原理)的结构和基本原理现在一般把所有超过某一集成度(如现在一般把所有超过某一集成度(如1000门门以上)的以上)的PLD器件都称为器件都称为CPLD。CPLD由可编程由可编程逻辑的功能块围绕一个可编程互连矩阵构成。由固逻辑的功能块围绕一个可编程互连矩阵构成。由固定长度的金属线实现逻辑单元之间的互连,并增加定长度的金属线实现逻辑单元之间的互连,并增加了了I/O控制模块的数量和功能。可以把控制模块的数量和功能。可以把CPLD的基的基本结构看成由本结构看成由可编程逻辑阵列(可编程逻辑阵列
41、(LAB)、可编程可编程I/O控制模块和可编程内部连线(控制模块和可编程内部连线(PIA)等三部分组)等三部分组成。成。LABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABI/O控制模块控制模块PIAMAX7123的结构的结构一、一、复杂可编程逻辑器件(复杂可编程逻辑器件(CPLD)的结构)的结构1可编程逻辑阵列(可编程逻辑阵列(LAB)可编程逻辑阵列又若干个可编程逻辑宏单元可编程逻辑阵列又若干个可编程逻辑宏单元(LogicMacroCell,LMC)组成,)组成,LMC内部内部主要包括与阵列、或阵列、可编程触发器和多路主要包括与阵列、或阵列、可编程
42、触发器和多路选择器等电路,能独立地配置为时序或组合工作选择器等电路,能独立地配置为时序或组合工作方式。方式。宏单元结构图宏单元结构图CPLD中与、或门的表示方法中与、或门的表示方法AB C DP(乘积项乘积项)ACDP P=A A C C D DAB C DF(或项或项)F=A+B+DABD(1)乘积项共享结构)乘积项共享结构在在CPLD的宏单元中,如果输出表达式的与的宏单元中,如果输出表达式的与项较多,对应的或门输入端不够用时,可以借助项较多,对应的或门输入端不够用时,可以借助可编程开关将同一单元(或其他单元)中的其他可编程开关将同一单元(或其他单元)中的其他或门与之联合起来使用,或者在每个
43、宏单元中提或门与之联合起来使用,或者在每个宏单元中提供未使用的乘积项给其他宏单元使用。供未使用的乘积项给其他宏单元使用。EPM7128E乘积项扩展和并联扩展项的结构图乘积项扩展和并联扩展项的结构图(2)多触发器结构)多触发器结构早期可编程器件的每个输出宏单元(早期可编程器件的每个输出宏单元(OLMC)只有一个触发器,而只有一个触发器,而CPLD的宏单元内通常含两个或的宏单元内通常含两个或两个以上的触发器,其中只有一个触发器与输出端相两个以上的触发器,其中只有一个触发器与输出端相连,其余触发器的输出不与输出端相连,但可以通过连,其余触发器的输出不与输出端相连,但可以通过相应的缓冲电路反馈到与阵列
44、,从而与其他触发器一相应的缓冲电路反馈到与阵列,从而与其他触发器一起构成较复杂的时序电路。这些不与输出端相连的内起构成较复杂的时序电路。这些不与输出端相连的内部触发器就称为部触发器就称为“隐埋隐埋”触发器。这种结构可以不增触发器。这种结构可以不增加引脚数目,而增加其内部资源。加引脚数目,而增加其内部资源。(3)异步时钟)异步时钟早期可编程器件只能实现同步时序电路,早期可编程器件只能实现同步时序电路,在在CPLD器件中各触发器的时钟可以异步工作,器件中各触发器的时钟可以异步工作,有些器件中触发器的时钟还可以通过数据选择有些器件中触发器的时钟还可以通过数据选择器或时钟网络进行选择。此外,器或时钟网
45、络进行选择。此外,OLMC内触发内触发器的异步清零和异步置位也可以用乘积项进行器的异步清零和异步置位也可以用乘积项进行控制,因而使用更加灵活。控制,因而使用更加灵活。2可编程可编程I/O单元(单元(IOC)CPLD的的 I/O单单 元元(Input/Output Cell,IOC),是是内内部部信信号号到到I/O引引脚脚的的接接口口部部分分。根根据据器器件件和和功功能能的的不不同同,各各种种器器件件的的结结构构也也不不相相同同。由由于于阵阵列列型型器器件件通通常常只只有有少少数数几几个个专专用用输输入入端端,大大部部分分端端口口均均为为I/O端端,而而且且系系统统的的输输入入信信号号通通常常需
46、要锁存。因此需要锁存。因此I/O常作为一个独立单元来处理。常作为一个独立单元来处理。3可编程内部连线(可编程内部连线(PIA)可可编编程程内内部部连连线线的的作作用用是是在在各各逻逻辑辑宏宏单单元元之之间间以以及及逻逻辑辑宏宏单单元元和和I/O单单元元之之间间提提供供互互连连网网络络。各各逻逻辑辑宏宏单单元元通通过过可可编编程程连连线线阵阵列列接接收收来来自自输输入入端端的的信信号号,并并将将宏宏单单元元的的信信号号送送目目的的地地。这这种种互互连连机机制制有有很很大大的的灵灵活活性性,它它允允许许在在不不影影响响引引脚脚分分配配的的情情况况下下改变内部的设计。改变内部的设计。7.2.4 现场
47、可编程门阵列(现场可编程门阵列(FPGA)的结构和基本原理)的结构和基本原理FPGA出出现现在在20世世纪纪80年年代代中中期期,与与阵阵列列型型PLD有有所所不不同同,FPGA由由许许多多独独立立的的可可编编程程逻逻辑辑模模块块组组成成,用用户户可可以以通通过过编编程程将将这这些些模模块块连连接接起起来来实实现现不不同同的的设设计计。FPGA具具有有更更高高的的集集成成度度、更更强强的的逻逻辑辑实实现现能能力力和和更更好好的设计灵活性。的设计灵活性。FPGA器件具有高密度、高速率、系列化、标准化、器件具有高密度、高速率、系列化、标准化、小型化、多功能、低功耗、低成本,设计灵活方便,可小型化、
48、多功能、低功耗、低成本,设计灵活方便,可无限次反复编程,并可现场模拟调试验证等特点。无限次反复编程,并可现场模拟调试验证等特点。FPGA是现场可编程门阵列(是现场可编程门阵列(Field Programmable Gate Array)的简称,)的简称,80年代年代中期由美国中期由美国Xilinx公司首先推出,是一种大规模公司首先推出,是一种大规模可编程数字集成电路器件它能使用户借助计可编程数字集成电路器件它能使用户借助计算机自行设计自己需要的专用集成电路芯片,算机自行设计自己需要的专用集成电路芯片,在计算机上进行功能仿真和实时仿真,及时发在计算机上进行功能仿真和实时仿真,及时发现问题,调整电
49、路,改进设计方案现问题,调整电路,改进设计方案FPGA由由可可编编程程逻逻辑辑块块(CLB)、输输入入/输输出出模模块块(IOB)及及可可编编程程互互连连资资源源(PIR)等等三三种种可可编编程程电电路路和和一一个个SRAM结结构构的的配配置置存存储储单单元元组组成成。CLB是是实实现现逻逻辑辑功功能能的的基基本本单单元元,它它们们通通常常规规则则地地排排列列成成一一个个阵阵列列,散散布布于于整整个个芯芯片片中中;可可编编程程输输入入/输输出出模模块块(IOB)主主要要完完成成芯芯片片上上的的逻逻辑辑与与外外部部引引脚脚的的接接口口,它它通通常常排排列列在在芯芯片片的的四四周周;可可编编程程互
50、互连连资资源源(IR)包包括括各各种种长长度度的的连连线线线线段段和和一一些些可可编编程程连连接接开开关关,它它们们将将各各个个CLB之之间间或或CLB与与IOB之之间间以以及及IOB之之间间连连接接起起来来,构构成成特特定定功能的电路。功能的电路。一、一、FPGA的基本结构的基本结构(1)CLB:(2)IOB:分布于芯片中央,实现规模不大的组合、分布于芯片中央,实现规模不大的组合、时序电路。时序电路。分布于芯片四周,实现内部逻辑电路与分布于芯片四周,实现内部逻辑电路与芯片外部引脚的连接。芯片外部引脚的连接。(3)IR:包括不同类型的金属线、可编程的开关包括不同类型的金属线、可编程的开关矩阵、