数字电子技术基础上一页下一页回目录退出第十章可编程逻辑器件10.3高密度PLD简介10.1PLD的基本概念10.2低密度PLD10.4基于可编程逻辑器件的数字系统设计流程数字电子技术基础上一页下一页回目录退出引言前面介绍的组合电路和时序电路的集成芯片都属于标准逻辑器件,它们的功能是固定的,比如译码器只能实现译码,计数器只能实现计数。标准逻辑器件可用于任何数字电路的设计中,但却很难实现复杂的逻辑电路。为此,人们生产了一种集成的半成品芯片,出厂时不具有特定的逻辑功能,用户可根据需要对其编程而赋予某种逻辑功能,使其成为一种专用芯片。这种半成品芯片就是可编程逻辑器件(ProgrammableLogicDevice,简称PLD)。可编程逻辑器件是超大规模集成技术和电子设计自动化(EDA)技术相结合的产物。是数字电路向着超高集成度、超低功耗、超小型封装和专用化方向发展生产出的一种新型芯片。本章简要介绍可编程逻辑器件的种类、基本结构、工作原理等。数字电子技术基础上一页下一页回目录退出10.1PLD的基本结构与分类一、PLD的由来数字集成电路就其应用而言可以分为三大类。第一类是通用芯片。是指那些具有基本功能的数字器件,比如我们学过的门电路、触发器、各种组合逻辑电路和时序逻辑电路等。它们可用来设计各种各样的数字电路。缺点:很难实现一个复杂的数字系统。第二类是专用芯片(ASIC)。是为某种专门用途而设计,并将整个系统集成在一个芯片上。如手机、电视机、数码相机、单片机等等,其核心都是专用的集成芯片。缺点:它的开发周期长、成本高,只适用于那些大批量生产的电子产品。第三类就是可编程逻辑芯片(PLD)。它相当于一种集成的半成品芯片,出厂时不具有特定的逻辑功能,用户可根据需要对其进行编程而赋予某种逻辑功能,使其成为一种专用芯片。数字电子技术基础上一页下一页回目录退出二.PLD的结构框图由输入缓冲、与阵列、或阵列和输出结构四部分组成可以实现与-或逻辑的与阵列和或阵列是电路的核心输入缓冲阵列与阵列或输出结构...外部输入.出.输.反馈输入10.1PLD的结构与分类数字电子技术基础上一页下一页回目录退出低密度PLDPROMEPROMEEPROMPLAPALGAL高密度PLDFPGACPLDPLD三、PLD的分类低密度PLD通常是指那些集成度小于1000门/每片的PLD。高密度PLD一般是指那些集成度大于1000门/每片的PLD。10.1PLD的结构与分类数字电子技术基础上一页下一页回目录退出(1)输入缓冲器四、PLD的电路表示方法ACAB,(2)PLD的连线方式ACABC1B编程连接不连接固定连接10.1PLD的结构与分类数字电子技术基础上一页下一页回目录退出(3)PLD的与门表示方法(4)PLD的或门表示方法&ABCF&CBACBAFF≥1ABCF2CBA≥1FCBAF(5)PLD的三态门表示方法AENLAENLLΔ1ENAENA1LΔ10.1PLD的结构与分类数字电子技术基础上一页下一页回目录退出类型阵列输出方式与或ROM固定可编程三态、OCPLA可编程可编程三态、OC、高电平有效、低电平有效、寄存器PAL可编程固定三态、高电平有效、低电平有效、输入/输出、寄存器GAL可编程固定由用户编程定义低密度PLD的四种基本类型:10.2低密度PLD数字电子技术基础上一页下一页回目录退出一、ROM也是一种可编程逻辑器件ROM的基本结构:一个固定的与阵列和一个可编程的或阵列&&固定“与”阵列02O1OO≤1≤1≤1可编程“或”阵列21&1&&I&0I&I&1110.2低密度PLD数字电子技术基础上一页下一页回目录退出例1.已知某组合逻辑电路的真值表,用ROM设计该逻辑电路。输入输出ABCLFG000001010011100101110111000110101000101010011100真值表(1)由真值表写出最小项表达式:L=m1+m2+m4+m7F=m1+m5+m6G=m2+m4+m6(2)画出用ROM实现的阵列图&≤1&LGBAF1C1&&&&&1&≤1≤110.2低密度PLD数字电子技术基础上一页下一页回目录退出二、可编程逻辑阵列PLA不仅或阵列可编程,与阵列也可编程。111&&&&&&≤1≤1≤1IIIOOO221100可编程“与”阵列可编程“或”阵列PLA有组合型和时序型两种类型,分别实现组合电路和时序电路。10.2低密度PLD真值表输出(8421码)输出(余3码)00000001001000110100010101100111100010010011010001010110011110001001101010111100L3L2L1L0A3A2A1A0解:(1)列出真值表:1.组合型PLA应用举例用PLA设计一个将余3码变换成8421BCD码的组合逻辑电路。10.2低密度PLD数字电子技术基础上一页下一页回目录退出(2)用卡诺图进行化简,化简后得到的逻辑表达式为:00AL10011AAAAL001222AAAAAAAAL130033AAAAAL123(3)画出用PLA实现该码变换器的电路图&&&&&&≤11≤11≤1&&1A3A21A0A1≤11LL0L3L210.2低密度PLD数字电子技术基础上一页下一页回目录退出2.时序型PLA应用举例用时序型的PLA设计一个可逆的同步4位二进制计数器。当控制信号X=1时为加法计数;当X=0时为减法计数,Rd为清零信号。(1)由第六章的介绍可知,各触发器的驱动方程为:21021033QQQXQQXQKJ101022QQXQXQKJ0011QXXQKJ100KJ01011001Q1011Q3Q1100110120111100000001010101000110Q011111110000100100011X/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/10.2低密度PLD数字电子技术基础上一页下一页回目录退出PLA与PROM相比,有效地提高了芯片利用率,缩小了系统体积。缺点是:制造工艺复杂,器件工作速度不够高。(2)根据驱动方程,画出PLA的阵列图。&&≤1≤1≤1&&1JQ2Q2Q1Q1Q0Q01KC11J1KC11J1KC11J1KC1Q33QCPRdX&&1110.2低密度PLD数字电子技术基础上一页下一页回目录退出PAL是在PLA之后出现的一种PLD。它的结构是与阵列可编程,而或阵列固定,这种结构可使得编程比较简单。三、可编程阵列逻辑PAL&1I011I12I≤1O0&≤11O&≤12OO3≤1&10.2低密度PLD数字电子技术基础上一页下一页回目录退出例用PAL实现2线—4线译码器。(1)根据2线—4线译码器的真值表,写出逻辑表达式:BEI111A≤1≤1&&≤1≤1&&1Y0Y2YY3BAEIY0BAEIY1BAEIY2ABEIY3(2)画出用PAL实现的阵列图。10.2低密度PLD数字电子技术基础上一页下一页回目录退出四、通用阵列逻辑GALGAL用可编程的输出逻辑宏单元OLMC代替了固定输出结构。1、GAL的结构GAL16V8包括:一个64×32位的可编程与阵列、8个输入逻辑宏单元(OLMC)、9个输入缓冲器、8个三态输出缓冲器和8个反馈/输入缓冲器。94(5)8819CC1(14)OLMC8GAL16V81(13)81(19)V1OLMCOLMC187(12)1513118(18)OLMC20288171611211081116(17)OLMC(64×32)1113OLMC11415(16)11可编程与阵列111OLMC8OLMCCLK10.2低密度PLD数字电子技术基础上一页下一页回目录退出包括一个或门,一个异或门,一个D触发器,四个数据选择器(MUX)2、输出宏单元OLMC1来自与11100100VCC01101001QQ1100D1逻辑阵列反馈CLKOE来自邻级的输出PTMUXTSMUXOMUXFMUXOECLKXOR(n)I/O(n)乘积项数据选择器三态数据选择器输出数据选择器反馈数据选择器输出缓冲器10.2低密度PLD数字电子技术基础上一页下一页回目录退出GAL芯片内部设置有82位结构控制字,其中SYN、ACO、AC1(n)、SOR(n)决定OLMC处于不同的工作模式。SYNACOAC1(n)XOR(n)工作模式输出极性备注101/专用输入/1和11脚为数据输入、三态门禁止1000专用组合输出低电平有效1和11脚为数据输入、三态门选通1高电平有效1110反馈组合输出低电平有效1和11脚为数据输入、三态门选通信号是第一乘积项,反馈信号取自I/O1高电平有效0110时序电路组合输出低电平有效1脚接CLK,11脚接,至少另有一个OLMC为寄存器输出模式1高电平有效0100寄存器输出低电平有效1脚接CLK,11脚接1高电平有效OEOEOLMC的5种工作模式10.2低密度PLD数字电子技术基础上一页下一页回目录退出10.3高密度PLA高密度PLD主要有现场可编程门阵列FPGA和复杂可编程逻辑器件CPLD两大类。一、复杂可编程逻辑器件CPLDCPLD是在GAL的基础上发展起来的,它是将许多逻辑块(一个逻辑块就相当于一个GAL)连同可编程的内部连线集成在单块芯片上。丰富的内部连线为块与块之间提供了快速、具有固定延时的通路,通过编程修改内部连线即可改变器件的逻辑功能。1.MAX7000S系列的系统结构(Altera公司的产品)采用E2PROM工艺,由逻辑阵列块LAB、可编程的互连矩阵PIA、输入/输出控制块等几部分组成。每个LAB中包含16个宏单元,每个宏单元由可编程的与/或电路和可编程的触发器组成。各LAB之间通过PIA连接。宏单元1to16LABAI/O块控制…1to16LABB宏单元I/O…366to166to166to166to166to163616166to16I/O引脚6to166to16I/O引脚…6to161to1666to16PIA16宏单元36宏单元6366to16…6to16I/O6…I/O166to166to161to166to16…66to16LABDLABCGCLK1OE2/GCLK2OE1GCLRn6输出使能块控制6输出使能I/O引脚I/O引脚块控制块控制10.3高密度PLD数字电子技术基础上一页下一页回目录退出2.MAX7000S系列中的宏单元Vcc乘积项选择矩阵D/TQ逻辑阵列…………共享扩展项(16个)…来自PLA的36个信号………全局清除全局时钟2来自I/O引脚PRN去I/O控制块去PIACLRNENA清除选择可编程寄存器EEPROM编程位作为选择器的控制信号快速输入选择时钟/使能选择寄存器旁路选择并联扩展项10.3高密度PLD数字电子技术基础上一页下一页回目录退出MAX7000S系列器件的主要模块数目模块器件所含门数宏单元数LAB数最大I/O引脚数EPM7032S32600236EPM7064S641250468EPM7128S12825008100EPM7160S160320010104EPM7192S192375012124EPM7256S25650001616410.3高密度PLD数字电子技术基础上一页下一页回目录退出二、现场可编程逻辑阵列FPGAFPGA一般采用SRAM工艺或Flash工艺。从结构上讲,它不是使用可编程与阵列或固定的或阵列,而是基于查找表(LUT)的结构。1.查找表(LTU)的概念(举例)真值表A3A2A1A0L00000001001000110100010101100111100010011010101111001101111011110110100110010110011001001110011110000011110001A0A1A2A3L01101001100101102选1选择器2位SRAM410.3高密度PLD数字电子技术基础上一页下一页回目录退出2.FLEX10K的逻辑单元(Altera