1、第8章 半导体存储器和可编程逻辑器件第第8章章 半导体存储器和可编程逻辑器件半导体存储器和可编程逻辑器件8.1 半导体存储器8.2 可编程逻辑器件8.3 本章小结8.4 例题精选8.5 自我检测题第8章 半导体存储器和可编程逻辑器件8.1.1 半导体存储器的分类半导体存储器的分类半导体存储器的种类很多,首先从存取功能上可以分为只读存储器(ReadOnlyMemory,ROM)和随机存储器(Random Access Memory,RAM)两大类。另外,从制造工艺上又可以把存储器分为双极型和MOS型。存储器的存储容量和存取时间是反映系统性能的两个重要指标。8.1 半导体存储器半导体存储器第8章
2、半导体存储器和可编程逻辑器件8.1.2 只读存储器只读存储器(ROM)的结构及工作原理的结构及工作原理1.掩膜只读存储器掩膜只读存储器 固定ROM又称为掩膜ROM,这种ROM在制造时,生产厂家利用掩膜技术把数据写入存储器中,一旦ROM制成,其存储的数据也就固定不变了。ROM的电路结构包含存储矩阵、地址译码器和输出缓冲器三个组成部分,如图8.1.1所示。存储矩阵由许多存储单元排列而成。第8章 半导体存储器和可编程逻辑器件图 8.1.1 ROM的电路结构框图第8章 半导体存储器和可编程逻辑器件1)二极管固定ROM 图8.1.2是具有2位地址输入码和4位数据输出的二极管固定ROM的电路结构图,2线-
3、4线地址译码器的地址线为A1A0,输出为W0W3,2位地址代码A1A0能给出4个不同的地址。第8章 半导体存储器和可编程逻辑器件图 8.1.2 二极管固定ROM的电路结构图第8章 半导体存储器和可编程逻辑器件在读取数据时,首先输入指定的地址码,令=0,在数据输出端D3D0可获得该地址所存储的数据字。例如当A1A0=10时,W2=1,而其他字线均为低电平。由于只有d2一根线与W2间接有二极管,因此这个二极管导通后使d2为高电平,而d0、d1和d3为低电平。如果这时=0,即可在数据输出端得到D3D2D1D0=0100。全部4个地址内的存储内容如表8.1.1所示。第8章 半导体存储器和可编程逻辑器件
4、表表8.1.1 图图8.1.2 ROM中的数据表中的数据表第8章 半导体存储器和可编程逻辑器件2)MOS管固定ROMMOS管固定ROM是由译码器、存储矩阵和输出缓冲器三部分组成的,但它们都是用MOS管组成的。图8.1.3给出了MOS管存储矩阵的原理图。在大规模集成电路中,MOS管大多做成对称结构,同时也为了画图的方便,一般都采用图中所用的简化画法。第8章 半导体存储器和可编程逻辑器件图 8.1.3 用MOS管构成的存储矩阵原理图第8章 半导体存储器和可编程逻辑器件2.可编程只读存储器可编程只读存储器PROM在出厂时,存储内容为全1(或全0),用户根据需要,将某些单元改写为0(或1)。PROM的
5、总体结构与固定ROM一样,同样由存储矩阵、地址译码器和输出电路组成。不过在出厂时已经在存储矩阵的所有交叉点上全部制作了存储器件,即相当于在所有存储单元中都存入了1。第8章 半导体存储器和可编程逻辑器件在编程前,存储矩阵中的全部存储单元的熔丝都是连通的,如图8.1.4 所示,即每个单元存储的都是1。用户可根据需要,借助一定的编程工具,将某些存储单元上的熔丝用大电流熔断,该单元存储的内容就变为0,此过程称为编程。熔丝熔断后不能再接上,故PROM只能进行一次编程。PROM的内容一经写入,就不可能修改了,所以它只能写入一次。因此,PROM仍不能满足研制过程中常修改存储内容的要求。这就要求生产一种可以擦
6、除重写的ROM。第8章 半导体存储器和可编程逻辑器件图 8.1.4 PROM的可编程存储单元第8章 半导体存储器和可编程逻辑器件3.可擦除的可编程只读存储器可擦除的可编程只读存储器1)EPROM(UVEPROM)EPROM是采用浮栅技术生产的可编程存储器,它的存储单元多采用N沟道叠栅MOS管,所以也称这种存储单元为叠层栅存储单元,如图8.1.5所示。第8章 半导体存储器和可编程逻辑器件图 8.1.5 EPROM(a)浮栅MOS管的结构;(b)EPROM存储单元第8章 半导体存储器和可编程逻辑器件2)E2PROM E2PROM只需在高电压脉冲或在工作电压下就可以进行擦除,而不要借助紫外线照射,所
7、以比EPROM更灵活方便,而且还有字擦除(只擦一个或一些字)功能。E2PROM的一个存储单元如图8.1.6所示,图中V2为门控管,V1是另一种叠层栅MOS管,称为浮栅隧道氧化层MOS管(Floating gate Tunnel Oxide),简称Flotox管。它的结构如图8.1.7所示。第8章 半导体存储器和可编程逻辑器件图 8.1.6 E2PROM 存储单元第8章 半导体存储器和可编程逻辑器件图 8.1.7 Flotox管的结构和图形符号第8章 半导体存储器和可编程逻辑器件3)快闪存储器(Flash Memory)图8.1.8是快闪存储器采用的叠栅MOS管的结构示意图。图 8.1.8 叠栅
8、MOS管的结构和图形符号第8章 半导体存储器和可编程逻辑器件8.1.3 随机存储器随机存储器(RAM)的结构及工作原理的结构及工作原理 随机(随机读/写)存储器简称RAM。1.静态随机存储器静态随机存储器1)SRAM的静态存储单元 SRAM的静态存储单元是在静态触发器的基础上附加门控管而构成的。因此,它是靠触发器的自保功能存储数据的。SRAM中存储单元的结构如图8.1.9所示。第8章 半导体存储器和可编程逻辑器件图 8.1.9 六管NMOS管静态存储单元第8章 半导体存储器和可编程逻辑器件2)SRAM的结构和工作原理SRAM电路通常由存储矩阵、地址译码器和读/写控制电路(也叫输入/输出电路)三
9、部分组成,如图8.1.10 所示。(1)存储矩阵。(2)地址译码器。(3)读/写控制电路。第8章 半导体存储器和可编程逻辑器件图 8.1.10 SRAM的结构框图第8章 半导体存储器和可编程逻辑器件2.动态随机存储器动态随机存储器1)DRAM的动态存储单元(1)三管动态MOS存储单元。三管动态MOS存储单元的电路结构如图8.1.11 所示。存储单元以MOS管V2及其栅极电容C为基础构成,数据存于栅极电容C中。电容上的电压UC控制着V2的开关状态,给出位线上的高、低电平。控制读和写的字线和位线是分开的。读的字选线控制着V3的开关状态,写的字选线控制着V1的开关状态。V4是同一列存储单元公用的预充
10、电MOS管。第8章 半导体存储器和可编程逻辑器件图 8.1.11 三管动态MOS存储单元的电路结构第8章 半导体存储器和可编程逻辑器件(2)四管动态MOS存储单元。图8.1.12 是四管动态存储单元的电路结构图。V1和V2是两只N沟道增强型的MOS管,它们的栅极和漏极交叉相连,数据以电荷的形式存储在V1和V2的栅极电容C1和C2上,而电容C1和C2上的电压又控制着V1和V2导通或截止,产生位线B和上的高低电平。第8章 半导体存储器和可编程逻辑器件图 8.1.12 四管动态MOS存储单元的电路结构第8章 半导体存储器和可编程逻辑器件2)DRAM的总体结构从总体上讲,DRAM仍然包含存储矩阵、地址
11、译码器和输入/输出电路三个组成部分。为了在提高集成度的同时减少器件引脚的数目,目前的容量DRAM多半都采用1位输入、1位输出和地址分时输入的方式。图8.1.13 是一个64K1位DRAM总体结构框图。第8章 半导体存储器和可编程逻辑器件图 8.1.13 DRAM的总体结构框图第8章 半导体存储器和可编程逻辑器件8.1.4 存储器容量的扩展存储器容量的扩展1.位扩展方式位扩展方式如果每一片ROM或RAM中的字数已经够用而每个字的位数不够用时,应采用位扩展的连接方式,将多片ROM或RAM组合成位数更多的存储器。RAM的位扩展连接方式如图8.1.14所示。在这个例子中,用8片10241位的RAM接成
12、了一个10248位的RAM。第8章 半导体存储器和可编程逻辑器件图 8.1.14 RAM的位扩展方式第8章 半导体存储器和可编程逻辑器件2.字扩展方式字扩展方式 图8.1.15 是用字扩展方式将四片2568位的RAM接成一个10248位RAM的例子。第8章 半导体存储器和可编程逻辑器件图 8.1.15 RAM的字扩展接法第8章 半导体存储器和可编程逻辑器件表表8.1.2 图图8.1.15 中各片中各片RAM 电路的地址分配电路的地址分配第8章 半导体存储器和可编程逻辑器件8.1.5 存储器在组合逻辑设计中的应用存储器在组合逻辑设计中的应用用ROM实现逻辑函数一般按以下步骤进行:(1)根据逻辑函
13、数的输入、输出变量数,确定ROM容量,选择合适的ROM。(2)写出逻辑函数的最小项表达式,画出ROM阵列图。(3)根据阵列图对ROM进行编程。第8章 半导体存储器和可编程逻辑器件8.2.1 可编程逻辑器件的分类可编程逻辑器件的分类 在数字电子系统领域,存在三种基本的器件类型:存储器、微处理器和逻辑器件。逻辑器件又可分为两大类:固定逻辑器件和可编程逻辑器件(Programmable LogicDevice,PLD)。8.2 可编程逻辑器件可编程逻辑器件第8章 半导体存储器和可编程逻辑器件可编程逻辑器件均采用可编程元件来存储编程信息。常用的可编程器件有五类:(1)熔丝(Fuse)或反熔丝(Anti
14、 Fuse)编程器件。(2)UVEPROM 编程器件,即紫外线擦除/电气编程器件。(3)E2PROM 编程器件,即电可擦写编程器件。(4)Flash Memory(快闪存储器)编程器件。(5)SRAM编程器件。第8章 半导体存储器和可编程逻辑器件8.2.2 可编程逻辑器件的基本结构可编程逻辑器件的基本结构1.简单简单PLD的基本结构的基本结构1)PLD表示方法由于PLD内部电路结构十分复杂,为便于画图,本章首先介绍目前国际、国内通行的逻辑图形符号画法。图8.2.1是PLD 连接的表示方法,其中图8.2.1(a)表示固定连接,图8.2.1(b)表示编程连接,图8.2.1(c)表示不连接。第8章
15、半导体存储器和可编程逻辑器件图 8.2.1 PLD 连接的表示方法(a)固定连接;(b)编程连接;(c)不连接第8章 半导体存储器和可编程逻辑器件图8.2.2是图8.2.1的基本逻辑门的PLD表示法。其中图8.2.2(a)是缓冲器的表示法。图8.2.2(b)和图8.2.2(c)是三态输出反相器。图8.2.2(d)表示的是一个三输入的与门,根据连接关系可知,与门输出P=AC;当一个与门的所有输入变量都连接时,可以像图8.2.2(e)那样表示,这时,P=ABC。图8.2.2(f)表示的是一个三输入或门,或门输出P=ABC。第8章 半导体存储器和可编程逻辑器件图 8.2.2 基本逻辑门的PLD表示法
16、第8章 半导体存储器和可编程逻辑器件与-或阵列是用多个与门和或门构成的一种阵列结构。从理论上来讲,任何一个组合逻辑电路都可以表示成与-或阵列的形式。如图8.2.3(a)所示的电路具有不可编程的与阵列和可编程的或阵列。从图中可以看出输出变量的逻辑表达式为Y1(A,B)=m(0,1,3)Y2(A,B)=m(0,2,3)有时为了方便,可以将阵列中的逻辑门省略掉,简化成图8.2.3(b)的形式。第8章 半导体存储器和可编程逻辑器件图 8.2.3 与-或阵列第8章 半导体存储器和可编程逻辑器件2)PLD的基本结构 简单PLD电路由输入电路、与阵列、或阵列和输出电路四部分组成,如图8.2.4所示。图 8.
17、2.4 简单PLD的基本结构第8章 半导体存储器和可编程逻辑器件依据可编程的电路资源,简单PLD又可分成PROM、PLA、PAL 和GAL四种,其结构特点如表8.2.1 所示。8.2.1 四种简单四种简单PLD的结构特点的结构特点第8章 半导体存储器和可编程逻辑器件2.可编程阵列逻辑可编程阵列逻辑(PAL)1)专用输出结构 专用输出结构的共同特点是输出端只能用作输出信号,因为下面将会看到在另外一种输出结构中,输出端在一定条件下可以作为输入使用。专用输出结构的PAL中不含触发器,只能用来实现组合电路,其输出电路是一个或门,或者是一个或非门,还有的PAL采用互补输出的或门。图8.2.5所示为一个采
18、用或非门的专用输出结构。第8章 半导体存储器和可编程逻辑器件图 8.2.5 PAL的专用输出结构第8章 半导体存储器和可编程逻辑器件2)可编程I/O(输入/输出)结构 在可编程I/O 结构中,器件端口的工作状态(输入或者输出)是可以控制的。如图8.2.6所示的是一个可编程I/O 结构的输出电路,包括一个三态输出缓冲器和一个将端口上的信号送到与阵列上的互补输出缓冲器。不难发现,三态输出缓冲器的使能信号来自于与阵列的输出,是可编程的。在图中所示的编程情况下,当I1=I0=0 时,使能信号OE=1,端口处于输出状态;否则,OE=0,三态输出缓冲器输出为高阻抗,端口处于输入状态。第8章 半导体存储器和
19、可编程逻辑器件图 8.2.6 PAL的可编程I/O结构第8章 半导体存储器和可编程逻辑器件3)寄存器输出结构 寄存器输出结构在输出三态缓冲器的与-或逻辑阵列的输出之间串入了由D触发器组成的寄存器,同时,触发器的状态又经过互补输出的缓冲器反馈到与逻辑阵列的输入端,如图8.2.7所示。第8章 半导体存储器和可编程逻辑器件图 8.2.7 寄存器输出结构第8章 半导体存储器和可编程逻辑器件4)异或输出结构 图8.2.8所示的输出结构与寄存器输出结构类似,只不过在或阵列输出与触发器之间又设置了异或门,这种结构被称为异或输出结构。图 8.2.8 PAL的异或输出结构第8章 半导体存储器和可编程逻辑器件3.
20、通用阵列逻辑通用阵列逻辑(GAL)1)GAL的基本结构 图8.2.9 是GAL16V8的电路结构图及其引脚图。第8章 半导体存储器和可编程逻辑器件图 8.2.9 GAL16V8的电路结构图及引脚图(a)逻辑图;(b)引脚图第8章 半导体存储器和可编程逻辑器件电路结构图主要由五部分组成:(1)8个输入缓冲器(引脚29作为固定输入端口);(2)8个三态结构的输出缓冲器(引脚1219作为I/O端口);(3)8个OLMC(OLMC12OLMC19);(4)与阵列和OLMC之间的8个反馈缓冲器;(5)一个规模为3264位的可编程与阵列,共有32个输入和64个乘积项,平均分配给8个OLMC。第8章 半导体
21、存储器和可编程逻辑器件2)GAL编程单元的行地址映射图 图8.2.10是GAL16V8的编程单元的行地址映射图,表示在GAL16V8中编程单元的地址分配和功能划分。第8章 半导体存储器和可编程逻辑器件图 8.2.10 GAL16V8编程单元的地址映射图第8章 半导体存储器和可编程逻辑器件3)GAL的输出逻辑宏单元(OLMC)GAL器件的每一个输出端都有一个OLMC,输出结构取决于对OLMC结构控制字的编程。图8.2.11给出了GAL16V8的OLMC结构图及其GAL的结构控制字示意图。第8章 半导体存储器和可编程逻辑器件图 8.2.11 GAL16V8的OLMC结构框图及其GAL的结构控制字示
22、意图(a)GAL16V8的OLMC结构框图;(b)GAL的结构控制字示意图第8章 半导体存储器和可编程逻辑器件OLMC 的四种工作模式(或组态):当AC0=0且AC1(n)=0时,OLMC为专用组合输出模式,如图8.2.12(a)所示;当AC0=0且AC1(n)=1时,OLMC为专用输入模式,如图8.2.12(b)所示;当AC0=1且AC1(n)=0且SYN=0时,OLMC为寄存器输出模式,如图8.2.12(c)所示;当AC0=1且AC1(n)=1时,OLMC为组合输入/输出模式,如图8.2.12(d)所示。第8章 半导体存储器和可编程逻辑器件图 8.2.12 OLMC 的四种工作模式(a)专
23、用组合输出;(b)专用输入;(c)寄存器输出;(d)组合输入/输出第8章 半导体存储器和可编程逻辑器件4)GAL 器件的优缺点 在简单PLD中,GAL是应用最广泛的一种,主要有以下优点:(1)与中、小规模标准器件相比,减少了设计中所用的芯片数量。(2)引入了OLMC这种结构,提高了器件的通用性。(3)采用E2PROM 编程工艺,器件可以用电擦除并重复编程,编程次数一般都在100次以上,将设计风险降到最低。(4)采用CMOS制造工艺,速度高、功耗小。(5)具有上电复位和寄存器同步预置功能。(6)具有加密功能,可在一定程度上防止非法复制。第8章 半导体存储器和可编程逻辑器件但是GAL也有明显的不足
24、之处:(1)电路的结构还不够灵活。例如在GAL中,所有的寄存器的时钟端都连在一起,使用由外部引脚输入的统一时钟,这样单片GAL就不能实现异步时序电路。(2)GAL仍属于低密度PLD器件,而且正是由于电路的规模较小,因而不需要读取编程信息就可以通过测试等方法分析出某个GAL实现的逻辑功能,使得GAL可加密的优点不能完全发挥。事实上,目前市场上已有多种GAL解密软件。第8章 半导体存储器和可编程逻辑器件8.2.3 可编程逻辑器件在数字逻辑电路设计中的应用可编程逻辑器件在数字逻辑电路设计中的应用FPLA的输出电路一般是不可编程的,但有些型号的FPLA 器件在每一个或门的输出端增加了一个可编程的异或门
25、,以便于对输出信号的极性进行控制,如图8.2.13 所示。当编程单元为1时,或阵列输出S与经过异或门以后的输出Y同相;当编程单元为0时,S与Y反相。第8章 半导体存储器和可编程逻辑器件图 8.2.13 FPLA的异或输出结构第8章 半导体存储器和可编程逻辑器件例例8.2.1 用FPLA 实现从4位二进制码到格雷码的转换。解解 4位二进制码转换为格雷码的真值表如表8.2.2 所示。表表8.2.2 4 位二进制码转换为格雷码的真值表位二进制码转换为格雷码的真值表第8章 半导体存储器和可编程逻辑器件图8.2.14所示的是按上式编程后的逻辑图。时序逻辑FPLA在或阵列的输出和与阵列的输入之间增加了由触
26、发器组成的反馈通路,其结构框图如图8.2.15 所示,因而它可以实现时序逻辑。若采用组合逻辑FPLA来实现时序电路,则需要外接触发器单元。第8章 半导体存储器和可编程逻辑器件图 8.2.14 例8.2.1 的FPLA编程后的逻辑图第8章 半导体存储器和可编程逻辑器件图 8.2.15 时序逻辑FPLA的结构框图第8章 半导体存储器和可编程逻辑器件例例8.2.2 用时序逻辑FPLA实现具有异步清零和同步置数功能的3位移位寄存器。解解 设异步清零信号为低电平有效;同步预置数端LD为高电平有效;串行输入信号为Din;并行输入信号为A、B、C;时钟信号为CP。若触发器为D触发器,则激励方程为第8章 半导
27、体存储器和可编程逻辑器件可以根据这些数据来选择合适的FPLA器件。该电路的FPLA阵列图如图8.2.16所示。FPLA 的这种结构有利于提高对芯片的利用率,在ASIC设计中应用得较多。但由于FPLA 器件的制造工艺复杂,又一直缺乏高质量的开发工具,因而其使用并不广泛。第8章 半导体存储器和可编程逻辑器件图 8.2.16 例8.2.2 的FPLA编程后的逻辑图第8章 半导体存储器和可编程逻辑器件1.本章重点内容本章重点内容(1)只读存储器(ROM)和随机存储器(RAM)功能特点、存储器的扩展及使用方法。(2)可编程逻辑器件电路的表示方法、特点和应用。2.本章难点内容本章难点内容(1)存储器设计实
28、现组合、时序电路。(2)可编程逻辑器件内部电路结构和工作过程,但不是教学的重点。8.3 本章小结本章小结第8章 半导体存储器和可编程逻辑器件3.本章需注意的问题本章需注意的问题(1)存储器的基本结构、分类、特点及工作原理。(2)存储器的功能、容量扩展和使用方法。(3)用ROM实现组合、时序逻辑函数。(4)各种存储器存储单元的基本工作原理。(5)电子器件的发展、分类及各类型的特点。(6)可编程逻辑器件电路的表示方法。(7)可编程逻辑器件的基本结构和基本工作原理。第8章 半导体存储器和可编程逻辑器件例例 8.4.1 用ROM实现4位二进制码到格雷码的转换。解解 (1)输入是4位二进制码B3B0,输
29、出是4位格雷码,故选用容量为244的ROM。(2)列出4位二进制码转换为格雷码的真值表,如表8.4.1所示。8.4 例题精选例题精选第8章 半导体存储器和可编程逻辑器件表表 8.4.1 4位二进制码转换为格雷码的真值表位二进制码转换为格雷码的真值表第8章 半导体存储器和可编程逻辑器件由表可写出下列最小项表达式:G3=(8,9,10,11,12,13,14,15)G2=(4,5,6,7,8,9,10,11)G1=(2,3,4,5,10,11,12,13)G0=(1,2,5,6,9,10,13,14)第8章 半导体存储器和可编程逻辑器件(3)可画出4位二进制码转换为4位格雷码的矩阵图,如图8.4.
30、1所示。图 8.4.1 4位二进制码转换为4位格雷码的阵列图第8章 半导体存储器和可编程逻辑器件例例 8.4.2 用PAL实现逻辑函数:Y1(X1、X2、X3)m(3,4,6,7)Y2(X1、X2、X3)m(0,2,3,4,7)解解 首先对上述逻辑函数进行化简后可得:Y1=X3X1+X2X1Y2=X3X2+X2X1+X2X1图8.4.2 是按上式编程后PAL的逻辑图。第8章 半导体存储器和可编程逻辑器件图 8.4.2 例8.4.2 编程后PAL的逻辑图第8章 半导体存储器和可编程逻辑器件1.在存储器的结构中,什么叫“字”?什么叫“字长”?如何标注存储器的容量?2.DRAM中存储的数据不进行周期
31、性的刷新,其数据将会丢失;而SRAM中存储的数据无须刷新,只要电源不断电就可以永久保存,为什么?3.EPROM、E2PROM和快闪存储器有什么共同之处?它们的主要区别是什么?8.5 自自 我我 检检 测测 题题第8章 半导体存储器和可编程逻辑器件4.哪几种ROM具有多次擦除重写功能?哪种ROM的擦除过程就是数据写入过程?5.从存取方式比较ROM和RAM。6.动态存储器和静态存储器在电路结构和读/写操作上有何不同?7.用164位的ROM 设计一个将2个2位二进制数相乘的乘法器电路,列出ROM的数据表,画出存储矩阵的点阵图。8.试确定用ROM实现将8位二进制数转换成十进制数(用BCD码表示)的转换电路,实现这个逻辑函数时所需的容量。第8章 半导体存储器和可编程逻辑器件9.用ROM设计一个组合逻辑电路,用来产生下列一组逻辑函数:列出ROM应有的数据表,画出存储矩阵的点阵图。第8章 半导体存储器和可编程逻辑器件10.具有16位地址码可同时存取8位数据的RAM 集成片,其存储容量为多少?11.可编程逻辑器件有哪些种类?共同特点是什么?12.比较GAL和PAL器件在电路结构上有何异同点?