第七章 可编程逻辑器件PLD 简介 第一节 可编程逻辑器件PLD概述 第二节 可编程逻辑器件PLD的基本单元 第三节 可编程只读存储器PROM和可编程逻辑阵列PLA 第四节 可编程阵列逻辑PAL和通用阵列逻辑GAL 第五节 高密度可编程逻辑器件HDPLD原理及应用 第六节 现场可编程门阵列FPGA 第七节 随机存取存储器RAM 小 结
焊点多,可靠性下降; 系统规模增加,成本升高; 传统的逻辑系统:当规模增大时 功耗增加; 连接线与点增多 抗干扰下降 占用空间扩大。
半定制(Semi-Custom Design IC) 厂商直接做出。 如:表芯 系统放在一个芯片内 专用集成电路(简称ASIC) 用户定制 集成电路 厂商做出半成品 全定制(Full Custom Design IC) ASIC 半定制(Semi-Custom Design IC) 标准单元(Standard Cell) 半定制 门阵列(Gate Array) 可编程逻辑器件(Programmable Logic Device) MAX7128S 近年来PLD从芯片密度、速度等方面发展迅速,已成为一个重要分支。
第一节 可编程逻辑器件PLD概述 PLD是70年代发展起来的新型逻辑器件,相继出现了ROM、 PROM、PLA、PAL、GAL、EPLD和FPGA等。 可由或阵列直接输出, 构成组合; 通过寄存器输出, 构成时序方式输出。 输出既可以是低电平有 效,又可以是高电平有效。 PLD主体 它们组成结构基本相似如下: 一、PLD的基本结构 输出函数 输入信号 输入 电路 与门 阵列 或门 阵列 输出 电路 互补 输入 乘积项 和项 可直接 输出 也可反馈到输入 反馈输入信号
二、PLD的逻辑符号表示方法 1. 输入缓冲器表示方法 PLD具有较大的与或阵列,逻辑图 的画法与传统的画法有所不同。 A 2. 与门和或门的表示方法 A B C D F2 A B C D F1 × 编程连接 固定连接 F1=A•B•C F2=B+C+D
下图列出了连接的三种特殊情况: 1.输入全编程,输出为0。 2.也可简单地对应的与门中画叉,因此E=D。 3.乘积项与任何输入信号都没有接通,相当与门输出为1。
下图给出最简单的PROM电路图,右图是左图的简化形式。 编程连接点 (或) 固定连接点 (与) 实现的函数为:
PLD基本结构大致相同,根据与或阵列是否可编程分为三类: (1)与固定、或编程:ROM和PROM (2)与或全编程:PLA (3)与编程、或固定:PAL、GAL和HDPLD 1. 与固定、或编程:与阵列全固定,ROM和PROM。 全译码 A B C 连接点编程时,需画一个叉。 0 0 0 0 0 1 0 1 0 1 1 1
× × 可编程 可编程 2. 与、或全编程: 在PLD中,它的灵活性最高。 代表器件是PLA(Programmable Logic Array),下图给出了PLA的阵列结构。 在PLD中,它的灵活性最高。 由于与或阵列均能编程的特点,在实现函数时,所需的是简化后的乘积项之和,这样阵列规模比PROM小得多。 不象PROM那样与阵列需要全译码。 × × × × 可编程 可编程
3. 与编程、或固定:代表器件PAL(Programmable Array Logic) 和GAL(Generic Array Logic)。 在这种结构中,或阵列固定若干个乘积项输出,见下图。 每个交叉点都可编程。 × × O1为两个乘积项之和。 O1
四、PLD的性能特点 各种PLD的结构特点 采用PLD设计数字系统和中小规模相比具有如下特点:
4. 提高系统处理速度:用PLD与或两级结构实现任何逻辑功能,比用中小规模器件所需的逻辑级数少。这不仅简化了系统设计,而且减少了级间延迟,提高了系统的处理速度; 7.系统具有加密功能:某些PLD器件,如GAL或高密度可编程逻辑器件本身具有加密功能。设计者在设计时选中加密项,可编程逻辑器件就被加密。器件的逻辑功能无法被读出,有效地防止电路被抄袭。
五、用PLD实现逻辑电路的方法与过程 用可编程逻辑器件设计电路需要相应的开发软件平台和编程器,可编程逻辑器件开发软件和相应的编程器多种多样。 特别是一些较高级的软件平台,一个系统除了方案设计和输入电路外,其它功能都可用编程软件自动完成。 可编程逻辑器件设计电路过程如下图所示。 电 路方 设案 计 设 计 输 入 优 化 电 路 选 择 器 件 编 程 器时 件序 功检 能查
第二节 可编程逻辑器件PLD的基本单元 编程单元:PLD中用来存放数据的基本单元。 编 程 单 元 易失性单元: 这种基本单元采用的是静态随机存储器(SRAM)结构,其特点是掉电以后信息就要丢失。以后讲到的现场可编程门阵列(FPGA)采用这种编程单元。 非易失性单元: 非易失性有多种编程单元,其特点是掉电后信息不会丢失,它一般用于只读存储器。 编程单元采用 的是浮栅技术。 编 程 方 式 一次编程: 信息一次编程固定好,编程元件是PROM。 用户根据需要将数据储存在编程单元中,并可以多次写入和擦除,编程元件是UV EPROM和E2PROM等。 多次编程:
一、熔丝型开关 1 1 1 0 0 1 0 0 0 0 用高压将PLICE介质击穿。 二、反熔丝型开关 A Y 十进制 1 1 1 A 1 Y 2 3 4 十进制 1 1 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 1 9 1 1 0 0 1 0 0 0 0 用高压将PLICE介质击穿。 二、反熔丝型开关
三、浮栅编程技术 开启电压VT1。 开启电压VT2。 × × 用浮栅编程技术生产的编程单元是一种能多次改写的ROM,即已写入的内容可以擦去,也可以重新写入新的内容。 (一)叠栅型(SIMOS)存储单元 + + 开启电压 5V GND 开启电压VT1。 25V GND 无 1 有 1 + + + + 开启电压加大 开启电压VT2。 × ×
问题:浮栅上的电荷无放电通路,没法泄漏。 用紫外线照射芯片上的玻璃窗,则形成光电电流,把栅极电子带回到多晶硅衬底,SIMOS管恢复到初始的导通状态。
(二)隧道型(FLOTOX)储存单元 FLOTOX管的结构剖面示意图如图所示。 前面研究的可擦写存储器的缺点是擦除已存入的信息必须用紫外光照射一定的时间,因此不能用于快速改变储存信息的场合。 它与叠栅型管的不同在于浮栅延长区与漏区N 之间的交叠处有一个厚度约为80埃的薄绝缘层。 隧道型储存单元制成的存储器克服了这一缺点,它称为电可改写只读存储器E2PROM,即电擦除、电编程的只读存储器。 向浮栅写入 电荷时,G加25 V,D接GND。 擦除浮栅 电荷时,G加5 V,D接25V。 面积大 隧道80埃
闪速存储单元又称为快擦快写存储单元,右图是闪速存储单元剖面图。 (三)闪速型(Flash)存储单元 闪速存储单元又称为快擦快写存储单元,右图是闪速存储单元剖面图。 N+ N+ 闪速存储单元去掉了隧道型存储单元的选择管,它不像E2PROM那样一次只能擦除一个字,而是可以用一个信号,在几毫秒内擦除一大区段。 Flash工作原理类似于叠栅型存储单元,但有两点不同之处: 因此,闪速存储单元比隧道型存储单元的芯片结构更简单、更有效,使用闪速存储单元制成的PLD器件密度更高。 1. 闪速存储单元源极的区域Sn+大于漏极的区域Dn+,两区域不是对称的,使浮栅上的电子进行分级双扩散,电子扩散的速度远远大于叠栅型存储单元; 2. 叠栅存储单元的浮栅到P型衬底间的氧化物层约200埃左右,而闪速存储单元的氧化物层更薄,约为100埃。
(四)六管静态存储单元 闪速存储单元的可再编程能力约为10万次左右,但还是不及SRAM那样有无限制的再编程能力,以SRAM为存储单元的现场可编程门阵列(FPGA)可以实现无限次从一种运行逻辑转换到另一种运行逻辑的功能。 下图是SRAM六管存储单元,由两个具有有源下拉n沟道晶体管和有源上拉p沟道晶体管交互耦合的倒相器组成。 高和低电平是用具有分别到电源VCC和地GND的低阻抗通道的有源器件定义的两个电平。 D1、D2为两个传输NMOS管,其栅极接到字线,源极分别接到两条互补的位线上,起传输作用。
第三节 可编程只读存储器PROM和可编程逻辑阵列PLA PROM的结构是与阵列固定、或阵列可编程的PLD器件。对于有大量输入信号的PROM,比较适合作为存储器来存放数据,它在计算机系统和数据自动控制等方面起着重要的作用。 对于较少的输入信号组成的与阵列固定、或阵列可编程的器件中,也可以很方便地实现任意组合逻辑函数。 例1: 下图是一个8(字线)×4(数据)的存储器数据阵列图。
由地址译码器选中不同的字线,被选中字线上的四位数据通过输出缓冲器输出。 3-8线译码器 8×4存储单元矩阵 地址码输入端 1 字线 输出缓冲器 数据输出端 0 0 0 0 由地址译码器选中不同的字线,被选中字线上的四位数据通过输出缓冲器输出。 将左图地址扩展成n条地 址线,n位地址码可寻址2n个 信息单元,产生字线为2n条, 其输出若是m位,则存储器的 总容量为2n×m位。 如当地址码A2A1A0=000时,通过地址译码器,使字线P0=1,将字线P0上的存储单元存储的数据0000输出,即D0~D3=0000。更详细的内容,请同学参看表7-3
EPROM有各种类型的产品,下图是紫外线擦除、电可编程的EPROM2716器件逻辑框图和引脚图。 GND EPROM2716是211×8位可改写存储器,有11位地址线A0~A10,产生字线为2048条,D7~D0是8位数据输出/输入线,编程或读操作时,数据由此输入或输出。 CS为片选控制信号,是低电平有效。 OE/PGM为读出/写入控制端低电平时输出有效,高电平进行编程,写入数据。
若当EPROM2716的容量不能满足使用要求,且仅有2716芯片时,可用多片并联来扩展地址线和数据线。下图是将2片2716扩展成2048×16的数据的连接示意图。 两片的数据线 排列成D0~D15 其余线全部并联。
从组合电路角度来看: 存储矩阵为或阵列把乘积 项组合成m个逻辑函数输出。 地址译码器产生2n个字线为固定与阵列产生2n个乘积项。 输入地址信号为电路的输入逻辑变量。 例2:试用适当容量的PROM实现两个两位二进制数比较的比较器。 (1)两个两位二进制数分别为A1A0和B1B0,当A1A0大于B1B0时,F1=1,A1A0等于B1B0时,F2=1,A1A0小于B1B0时,F3=1,下表给出了两位二进制数比较结果的输入输出对照表。
由此可写出输出逻辑函数的最小项表达式为: F1=m(4,8,9,12,13,14) F2=m(0,5,10,15) F3=m(1,2,3,6,7,11) (2)把A1A0和B1B0作为PROM的输入信号,F1、F2和F3为或阵列的输出,下图是用PROM实现比较器的阵列图。
4个地址进行全译码,产生16个乘积项。 3个输出产生3个乘积项之和函数。 (3)选用PROM的容量16×3位可满足要求。 . 16 (3)选用PROM的容量16×3位可满足要求。 4个地址进行全译码,产生16个乘积项。 3个输出产生3个乘积项之和函数。 可见,以PROM实现简单的组合逻辑电路函数是很方便的。 一般PROM输入地址线较多,容量也较大,又因为PROM的与阵列固定,必须进行全译码,产生全部的最小项。 实际上,大多数组合逻辑函数的最小项不超过40个,使得PROM芯片的面积利用率不高,功耗增加。 为解决这一问题,考虑与阵列也设计成可编程形式来实现组合逻辑,由这一设想发明了可编程逻辑阵列(PLA)。
二、可编程逻辑阵列PLA 可编程逻辑阵列PLA和PROM相比之下,有如下特点: (一)PROM是与阵列固定、或阵列可编程,而PLA是与和或阵列全可编程; (二)PROM与阵列是全译码的形式,而PLA是根据需要产生乘积项,从而减小了阵列的规模; (三)PROM实现的逻辑函数采用最小项表达式来描述。而用PLA实现逻辑函数时,运用简化后的最简与或式; (四)在PLA中,对多输入、多输出的逻辑函数可以利用公共的与项,因而提高了阵列的利用率。
例4: 试用PLA实现四位自然二进制码转换成四位格雷码。 (1)设四位自然二进制码为B3B2B1B0,四位格雷码为G3G2G1G0,其对应的真值表如下表所示。 NO B3 B2 B1 B0 G3 G2 G1 G0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 根据表列出逻辑函数并简化,得最简输出表达式如下:
四个自然二进制码输入 七个乘积项 与阵列 或阵列 (2)转换器有四个输入信号,化简后需用到7个不同的乘积项,组成4 个输出函数,故选用四输入的7×4PLA实现,下图是四位自然二进制码转换为四位格雷码转换器PLA阵列图。 四个自然二进制码输入 × × × 7项 × × × 七个乘积项 × × G0=B1B0+B1B0 G3=B3 4个输出 与阵列 右图仅用了七个乘积项,比PROM全译码少用9个,实现的逻辑功能是一样的。从而降低了芯片的面积,提高了芯片的利用率,所以用它来实现多输入、多输出的复杂逻辑函数较PROM有优越之处。 或阵列 PLA除了能实现各种组合电路外,还可以在或阵列之后接入触发器组,作为反馈输入信号,实现时序逻辑电路。
例5:PLA和D触发器组成的同步时序电路如图所示,要求: (1)写出电路的驱动方程、输出方程。 (2)分析电路功能,画出电路的状态转换图。 D Q0 Q0 D Q1 Q1 D Q2 Q2 QCC CP 解:(1) 根据PLA与或阵列的输入/ 输出关系,可直接得到各触发器的激励方程及输出方程: D0 D0 = Q0 + Q1Q0 D0 = Q0 + Q1Q0 D1 = Q1Q0 + Q1Q0 D2 = Q0 Q2+ Q2Q0 QCC = Q0 Q1Q2+ Q0 Q1 Q2
(2)先设定电路的状态,根据触发器的激励方程和输出方程,可列出下表所示的电路状态转换表。 Q2 Q1 Q0 D2 D1 D0 Q2n+1Q1n+1Q0n+1 QCC 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 根据状态转换表,画出下图所示的电路状态转换图。 111 110 000 101 该电路是能够自启动的同步六进制计数器。 100 010 011 001
从以上设计发现,用PLA设计电路能够节省存储单元等等优点。 但是由于PLA制作工艺复杂,并且不具备优秀的软件开发工具的支持,使得PLA的性能价格比不理想,使其发展受到限制。 以后科技工作者发明了性能价格比更加良好的器件可编程阵列逻辑(PAL)。
第四节 可编程阵列逻辑PAL和 通用阵列逻辑GAL PAL的结构是与阵列可编程和或阵列固定,这种结构为大多数逻辑函数提供了较高级的性能,为PLD进一步的发展奠定了基础。 (一)PAL的基本结构 PAL器件的输入、输出结构以及输入、输出的数目是由集成电路制造商根据实际设计情况大致估计确定。PAL器件的型号很多,它的典型输出结构通常有四种,其余的结构是在这四种结构基础上变形而来。
1. 专用输出基本门阵列结构 四个乘积项通过 输入信号 或非门低电平输出。 一个输入 四个整积项 如输出采用或门,为高电平有 效PAL器件。 1. 专用输出基本门阵列结构 四个乘积项通过 或非门低电平输出。 输入信号 一个输入 四个整积项 I I 如输出采用或门,为高电平有 效PAL器件。 若采用互补输出的或门,为互 补输出器件。
两个输入,一个来自外部I,另一来自反馈I/O。 可编程I/O结构如下图所示。 8个乘积项 可编程I/O结构如下图所示。 当最上面的乘积项为高电平时,三 态门开通,I/O可作为输出或反馈;乘积 项为低电平时,三态门关断,作为输入。
3. 寄存器型输出结构:也称作时序结构,如下图所示。 8个乘积项 CP和使能是PAL的公共端。 触发器的Q端 通过三态缓冲器 送到输出引脚。 或门输出通过D触发器, 在CP的上升沿时到达输出。 触发器的反相端反馈 回与阵列,作为输入参与 更复杂的时序逻辑运算。
4. 带异或门的寄存器型输出结构 把乘积项分割 成两个和项。 增加了一个异或门 两个和项异或之后,在时钟 上升沿到来时存入触发器内。 有些PAL器件是由数个同一结构类型组成,有的则是由不同类型结构混合组成。 如由8个寄存器型输出结构组成的PAL器件命名为PAL16R8,由8个可编程I/O结构组成的PAL器件则命名为PAL16L8。
二、通用阵列逻辑GAL器件 (二)PAL16L8的使用 PAL的例题请同学参看图7-35、图7-36和例6。 应用PAL16L8设计组合逻辑电路,主要步骤是将输出和激励写成最简与或表达式,然后确定PAL16L8的引脚和编程。 目前能够支持PAL的编程软件已相当成熟,芯片应用也很 普及,但是由于其集成密度不高、编程不够灵活,且只能一次 编程,很难胜任功能较复杂的电路与系统。 二、通用阵列逻辑GAL器件 采用E2CMOS工艺和灵活的输出结构,有电擦写反复编程的特性。 与PAL相比,GAL的输出结构配置了可以任意组态的输出逻辑宏单元OLMC(Output Logic Macro Cell)。
GAL和PAL在结构上的区别见下图: PAL结构 适当地 为OLMC进 行编程, GAL就可以 在功能上代 替前面讨论 过的PAL各 种类型及其 派生类型。 GAL结构
(一)GAL器件结构和特点 GAL器件型号定义和PAL一样根据输入输出的数量来确定,GAL16V8中的16表示阵列的输入端数量,8表示输出端数量,V则表示输出形式可以改变的普通型。 1. GAL16V8的基本结构(下图) 一个共用时钟CLK 8个输出缓冲器 8个反馈缓冲器 8个输入缓冲器 8个OLMC
输出逻辑宏单元OLMC 由或门、异或门、D触发器、多路选择器MUX、时钟控制、使能控制和编程元件等组成,如下图: 2. GAL输出逻辑宏单元OLMC的组成 输出逻辑宏单元OLMC 由或门、异或门、D触发器、多路选择器MUX、时钟控制、使能控制和编程元件等组成,如下图: 组合输出 时序输出
输出逻辑宏单元由对AC1(n) 和AC0进行编程决定PTMUX、TSMUX、OMUX和FMUX的输出,共有5种基本组态: 3. 输出逻辑宏单元OLMC组态 输出逻辑宏单元由对AC1(n) 和AC0进行编程决定PTMUX、TSMUX、OMUX和FMUX的输出,共有5种基本组态: 此时AC1(n)=1,AC0=0,使TSMUX输出为0,三态输出缓冲器的输出呈现高电阻,本单元输出功能被禁止。 专用输入组态、专用输出组态、复合输入/输出组态、寄存器组态和寄存器组合I/O组态。8个宏单元可以处于相同的组态,或者有选择地处于不同组态。 0 1 (1) 专用输入组态 : I/O可以作为输入端,提供给相邻的逻辑宏单元。 本级输入信号却来自另一相邻宏单元。
(2) 专用输出组态: 通过编程,使第一条乘积项经过乘积项数据选择器作为或门的输入。 AC1(n)=0,AC0=0,四路反馈数据选择器FMUX输出接在低电平。 本单元的反馈信号和相邻单元的信号都被阻断。 异或门的输出不经过D触发器,直接由处于使能状态的三态门输出。
(3)同学自学。 (4)寄存器组态:当AC1(n)=0,AC0=1时,如下图所示。 此时OMUX选中触发器的同相输出Q端作为输出信号。 OE、CLK作为输出缓冲器的使能信号和时钟,为公共端。 或门的输入有8个乘积项。 反馈输入信号来自D触发器的反相端。
4. GAL是继PAL之后具有较高性能的PLD,和PAL相比,具有以 下特点: 有较高的通用性和灵活性:它的每个逻辑宏单元可以根据 需要任意组态,既可实现组合电路,又可实现时序电路。 (2) 100%可编程:GAL采用浮栅编程技术,使与阵列以及逻 辑宏单元可以反复编程,当编程或逻辑设计有错时,可 以擦除重新编程、反复修改,直到得到正确的结果,因 而每个芯片可100%编程。 (3) 100%可测试:GAL的宏单元接成时序状态,可以通过测 试软件对它门的状态进行预置,从而可以随意将电路置 于某一状态,以缩短测试过程,保证电路在编程以后, 对编程结果100%可测。 (4) 高性能的E2COMS工艺:GAL的高速度、低功耗,编 程数据可保存20年以上。 正是由于这些良好的特性,使GAL器件成为数字系统设计的初期理想器件。
(二)GAL器件的编程方法和应用 对GAL编程是设计电路的最后一个环节。除了对与阵列编程之外,还要对逻辑宏单元进行编程,以达到预定的输出逻辑关系。 这样应当具备GAL编程的开发系统:软件开发平台和硬件编程设备,而软件平台是不可缺少的。 目前GAL的编程方法有两种: 一种是早期的GAL器件编程需要使用专门的编程器,将需要编程的GAL器件插入编程器进行编程,然后将编程后的GAL器件连接在电路中的系统。 另一种是新一代的GAL器件,可以脱离开编程器,直接在设计者的电路系统上编程。
GAL的开发软件有许多种,大体上分为两类: 一类是汇编型软件,如FM,这类软件没有简化功能,要求输入文件采用最简与或式的逻辑描述方式; 另一类是编译软件,如Synario软件平台,这类软件的特点是待实现的逻辑电路由设计者根据软件平台规定的图形输入文件或可编程逻辑设计语言编写的语言输入文件进行描述,然后软件平台对设计者的电路描述进行转换,分析,简化,模拟仿真、自动进行错误定位等。 同学自行学习GAL例题。 GAL器件仍然存在着以下问题: 时钟必须共用; 或的乘积项最多只有8个; GAL器件规模小,达不到单片内集成一个数字系统的要求; 尽管GAL器件有加密的功能,但随着解密技术的发展,对于这种阵列规模小的可编程逻辑器件解密已不是难题。
第五节 高密度可编程逻辑器件HDPLD原理及应用 HDPLD(High Density Programmable Logic Device)在单片芯片内可以集成成千上万个等效门,因此在单片高密度可编程逻辑器件内集成数字电路系统成为可能。 HDPLD器件在结构上仍延续GAL的结构原理,因而还是电擦写、电编程的EPLD器件。 一、在系统编程芯片EPM7128S的基本结构
一、在系统编程芯片EPM7128S的基本结构 在系统编程芯片EPM7128S是Altera公司生产的高密度、高性能CMOS可编程逻辑器件之一,下图是PLCC封装84端子的引脚图。 TMS、TDI、 TDO和TCK是在 系统编程引脚。 它有4个直 接输入(INPUT) 64个 I/O引脚
下图是EPM7128S器件结构图:由8个相似的逻辑阵列块(Logic Array Block,LAB)、一个可编程内连矩阵(PIA)和多个输入/输出控制块(I/O Block)组成。
二、EPM7128S的特点 (一)高集成密度; (二)速度高、低功耗、抗噪声容限较大; (三)在系统编程能力; (四)可测试性能力; (五)线或功能; (六)异步时钟、异步清除功能; (七)单片多系统能力; (八)很强的加密能力。
第六节 现场可编程门阵列FPGA 前面讨论的可编程逻辑器件基本组成部分是与阵列、或阵列和输出电路。再加上触发器则可实现时序电路。 本节介绍的FPGA(Field Programmable Gate Array)不像PLD那样受结构的限制,它可以靠门与门的连接来实现任何复杂的逻辑电路,更适合实现多级逻辑功能。 陆续推出的各种新型的现场可编程门阵列FPGA。功能更加丰富。具有很高的密度和速度等等。
一、现场可编程门阵列FPGA结构 FPGA的编程单元是基于静态存储器(SRAM)结构,从理论上讲,具有无限次重复编程的能力。 下面介绍XILINX公司的XC4000E系列芯片,见下图: 可配置逻辑 模块CLB 输入/输出 模块I/OB 编程开关 矩阵PSM 可编程连 线PI
二、现场可编程门阵列FPGA的特点 (一)SRAM结构:可以无限次编程,但它属于易失性元件,掉电后芯片内信息丢失。通电之后,要为FPGA重新配置逻辑,FPGA配置方式有七种。请同学参考有关文献。 (二)内部连线结构:HDPLD的信号汇总于编程内连矩阵,然后分配到各个宏单元。它的信号通路固定,系统速度可以预测。而FPGA的内连线是分布在CLB周围,而且编程的种类和编程点很多,布线相当灵活,其在系统速度方面低于HDPLD的速度。 (三)芯片逻辑利用率:由于FPGA的CLB规模小,可分为两个独立的电路,又有丰富的连线,所以系统综合时可进行充分的优化,以达到逻辑最高的利用。 (四)芯片功耗:高密度可编程逻辑器件HDPLD的功耗一般在0.5W~2.5W之间,而FPGA芯片功耗0.25mW~5mW之间,静态时几乎没有功耗,所以称FPGA为零功耗器件。
第七节 随机存取存储器(RAM) 在计算机及数据处理系统中需要存放大量数据、中间结果、表格等设备,这就是随机存取存储器RAM。 RAM可分为单极型和双极型:双极型工作速率高,但是集成度不如单极型的高。目前,由于工艺水平的不断提高,单极型RAM的速率已经可以和双极型RAM相比,而且单极型RAM具有功耗低的优点。这里只以单极型RAM为例进行分析。 单极型RAM又可分为静态RAM与动态RAM:静态RAM是用MOS管触发器来存储代码,所用MOS管较多、集成度低、功耗也较大。动态RAM是用栅极分布电容保存信息,它的存储单元所需要的MOS管较少,因此集成度高、功耗也小。静态RAM使用方便,不需要刷新。
一、RAM的基本结构 存储矩阵、 RAM的基本结构如下图所示: 地址译码器 和读写电路 数据输入 和输出信号 地址 读写控制信号 片选信号
下图是二元寻址的M字×1位RAM结构图,它的存储矩阵是α×β位。地址译码器分行译码器和列译码器,只有行及列共同选中的单元才能进行读、写。这种寻址的方式所需要行线和列线的总数较少。例如要存储256字×1位的容量,采用一元寻址就需要256条字线,若采用二元寻址只需α=16,β=16,共32条线也就可以了。 行 地 址 全 0 β 1 1 列 地 址 全 α R W
二、存储单元 MOS管可以工作于静态,也可以工作于动态,而双极型管单元大多工作于静态。 RAM中的存储单元可由双极型管组成,也可由MOS管组成。 (一)MOS静态单元如下图所示: T0、T1、T2及T3构成 R-S触发器。 1 T4及T5是行选管, 是一行中公用的 T6及T7是列选管, 是一列公用的 当使能为低电平,写也为低电 平时,三态门2将输入数据Di通过 T6、T4作用于T3栅极,同时将Di的 互补值通过T7及T5作用于T2的栅极, 从而使触发器按Di翻转,完成写入。 1 1 1
(二)动态MOS存储单元如下图 栅极电容保留信息只 有一段时间,需定期地刷 新,以免信息丢失,所以 在每一行上设有刷新电路。 动态存储单元,靠 栅极电容C1及C2存储电 荷。 当刷新端为高电压时, 负载管T3、T4导通,同时 行线加高电压使T6、T5导 通,构成R-S触发器,其状 态由C1及C2中的电压决定。 当X、Y线为高电平 时,T5、T6、T7及T8都 导通,此单元接至数据线。 如写入“1”,只需在数 据线D上作用“1”便可以给 C2充上足够的电荷,而C1则 不被充电,表示记入了“1”。
4. PROM除了存储数据外,还可以组成逻辑函数; 小 结 1. 存储器分为RAM 和ROM ; 2. RAM是随机存取存储器,分动态和静态; 3. PROM是编程只读存储器,可用来存储程序、固定数据。 程序及数据是以二进制码的形式事先存入PROM中; 4. PROM除了存储数据外,还可以组成逻辑函数; 5. 编程逻辑器件还包括EPROM、PLA、PAL和GAL等; 6. HDPLD分为EPLD和FPGA; 7. EPLD实现组合逻辑函数是从任何组合逻辑电路均可表示为 与或表达式,加上触发器可实现时序电路的原理出发而构成。
作 业 7-1 7-2 7-3 7-4 7-6 7-7 7-8 7-10 7-11 7-12 7-13 7-14 7-17 7-18 7-21 7-22