1、第 6 章存储器和可编程逻辑器件1 1第 6 章存储器和可编程逻辑器件6.1存储器存储器6.2随机存取的存储器随机存取的存储器(RAM)6.3可编程逻辑器件可编程逻辑器件第 6 章存储器和可编程逻辑器件2 2 6.1 存存 储储 器器6.1.1 概述概述 存储器是数字系统中用于存储大量二进制信息的部件,可以存放各种程序、数据和资料。当前,随着集成技术的发展,半导体存储器已逐渐取代穿孔卡片、纸带、磁芯存储器等旧的存储手段。第 6 章存储器和可编程逻辑器件3 3半导体存储器按照内部信息的存取方式不同分为只读存储器(ROM)和随机存取存储器(RAM)两大类。每个存储器的存储容量为字线位线。不同的存储
2、器,存储容量不同,功能也有一定的差异。第 6 章存储器和可编程逻辑器件4 46.1.2 只读存储器(只读存储器(ROM)只读存储器(ROM)有掩膜ROM、可编程ROM、可改写ROM。掩膜只读存储器(ROM)是在制造时把信息存放在此存储器中,使用时不再重新写入,需要时读出即可;它只能读取所存储的信息,而不能改变已存内容,并且在断电后不丢失其中存储内容,故又称固定只读存储器。ROM主要由地址译码器、存储矩阵和输出缓冲器三部分组成,如图6.1所示。第 6 章存储器和可编程逻辑器件5 5图6.1 ROM框图第 6 章存储器和可编程逻辑器件6 6每个存储单元中固定存放着由若干位组成的二进制数码称为“字”
3、。为了读取不同存储单元中所存的字,将各单元编上代码称为地址。在输入不同地址时,就能在存储器输出端读出相应的字,即“地址”的输入代码与“字”的输出数码有固定的对应关系。如图6.1所示,它有2n个存储单元,每个单元存放一个字,一共可以存放2n个字;每字有m位,即容量为2nm(字线位线)。第 6 章存储器和可编程逻辑器件7 7ROM中地址译码器实现了地址输入变量的“与”运算,存储矩阵实现了字线的“或”运算,即形成了各个输出逻辑函数。因此,ROM实际上是由与阵列和或阵列构成的电路,与阵列相当于地址译码器,或阵列相当于存储矩阵,如图6.2所示。如有一个容量为4字 4位的ROM,它就有2(4=22)根地址
4、线,4根字线,4根位线,如图6.3所示。第 6 章存储器和可编程逻辑器件8 8图 6.2 ROM阵列框图第 6 章存储器和可编程逻辑器件9 9图 6.3 44 ROM的阵列图第 6 章存储器和可编程逻辑器件1010存储体可以由二极管、三极管和MOS管来实现。二极管矩阵ROM如图6.4所示,W0、W1、W2、W3是字线,D0、D1、D2、D3是位线,ROM的容量即为字线位线,所以图6.4所示ROM的容量为44=16,即存储体有16个存储单元。第 6 章存储器和可编程逻辑器件1111图 6.4 二极管ROM结构图第 6 章存储器和可编程逻辑器件12121.如何读字当地址码A1A0=00时,译码输出
5、使字线W0为高电平,与其相连的二极管都导通,把高电平“1”送到位线上,于是D3、D0端得到高电平“1”,W0和D1、D2之间没有接二极管,故D1、D2端是低电平“0”。这样,在D3D2D1D0端读到一个字1001,它就是该矩阵第一行的字输出。第 6 章存储器和可编程逻辑器件1313当地址码A1A0=01时,字线W1为高电平,在位线输出端D3D2D1D0读到字0111,对应矩阵第二行的字输出。同理分析地址码为10和11时,输出端将读到矩阵第三、第四行的字输出分别为1110、0101。任何时候,地址译码器的输出决定了只有一条字线是高电平,所以在ROM的输出端只会读到惟一对应的一个字。第 6 章存储
6、器和可编程逻辑器件14142.如何实现组合逻辑电路如图6.3所示,ROM中的地址译码器形成了输入变量的最小项,即实现了逻辑变量的“与”运算;ROM中的存储矩阵实现了最小项的或运算,即形成了各个逻辑函数;与阵列中的垂直线Wi代表与逻辑,交叉圆点代表与逻辑的输入变量;或阵列中的水平线D代表或逻辑,交叉圆点代表字线输入。第 6 章存储器和可编程逻辑器件1515 例 1 用ROM实现一位二进制全加器。解 全加器的真值表如表6.1所示,A、B为两个加数,Ci1为低位进位,S为本位的和,Ci为本位的进位。由表6.1可写出最小项表达式为:第 6 章存储器和可编程逻辑器件1616根据上式,可画出全加器的ROM
7、阵列图如图6.5所示,Ci1为低位进位,Ci为本位进位。第 6 章存储器和可编程逻辑器件1717图 6.5 全加器阵列图第 6 章存储器和可编程逻辑器件1818例 2 用ROM实现下列逻辑函数:解 由表达式画出ROM的阵列图如图6.6所示。第 6 章存储器和可编程逻辑器件1919图6.6 例2的ROM阵列图第 6 章存储器和可编程逻辑器件20206.1.3 可编程只读存储器可编程只读存储器PROM在出厂时,存储体的内容为全0或全1,用户可根据需要将某些内容改写,也就是编程。常用的双极型工艺ROM,采用烧毁熔断丝的方法使三极管由导通变为截止,使三极管不起作用,存储器变为“0”信息;而未被熔断熔丝
8、的地方,即表示为“1”信息。PROM只实现一次编写的目的,写好后就不可更改。第 6 章存储器和可编程逻辑器件2121如果想对一个ROM芯片反复编程,多次使用,需用可擦除编程ROM即EPROM。常用的MOS工艺制造的EPROM用注入电荷的办法编程,此过程可逆,当用紫外光照射以后,旧内容被擦除。擦除后的芯片内容可能是全1,也可能是全0,视制造工艺而不同,之后可再次编程。第 6 章存储器和可编程逻辑器件22226.1.4 ROM容量的扩展容量的扩展1.ROM的信号引线如图6.7所示,除了地址线和数据线(字输出线)外,ROM还有地线(GND)、电源线(VCC)以及用来控制ROM工作的控制线为芯片使能控
9、制线(CS),使能输出控制线称片选线。当CS=1时,芯片处于等待状态,ROM不工作,输出呈高阻态;当CS=0时,ROM工作。第 6 章存储器和可编程逻辑器件2323图6.7 ROM的信号引线第 6 章存储器和可编程逻辑器件24242.ROM容量的扩展位扩展(即字长扩展):位扩展比较简单,只需要用同一地址信号控制n个相同字数的ROM,即可达到扩展的目的。由2561 ROM扩展为2568 ROM的存储器,如图6.8所示,即将八块2561 ROM的所有地址线、CS(片选线)分别对应并接在一起,而每一片的位输出作为整个ROM输出的一位。第 6 章存储器和可编程逻辑器件2525图6.8 ROM位扩展第
10、6 章存储器和可编程逻辑器件26262568 ROM需 2561 ROM的芯片数为字扩展:如图6.9所示是由四片10248 ROM扩展为40968 ROM。图中,每片ROM有10根地址输入线,其寻址范围为210=1024个信息单元,每一单元为八位二进制数。这些ROM均有片选端。第 6 章存储器和可编程逻辑器件2727当其为低电平时,该片被选中才工作;为高电平时,对应ROM不工作,各片ROM 的片选端由2线/4线译码器控制;译码器的输入是系统的高位地址A11、A10,其输出是各片ROM的片选信号,若A11A10=10,则ROM(3)片的 CS,有效为“0”,各片ROM的片选信号无效为“1”,故选
11、中第三片,只有该片的信息可以读出,送到位线上,读出的内容则由低位地址A9A0决定,四片ROM轮流工作,完成字扩展。第 6 章存储器和可编程逻辑器件2828图6.9 ROM字扩展第 6 章存储器和可编程逻辑器件2929 6.2 随机存取的存储器随机存取的存储器(RAM)随机存取存储器一般由存储矩阵、地址译码器、片选控制和读/写控制电路等组成。其容量也为字线位线,同样可以利用I/O(输入/输出)线、R/W(读/写)线及CS(片选)线来实现容量的扩展,如图6.10所示为2568 RAM扩展成10248 RAM,其连接方法与ROM的相同,只是多了读/写控制(R/W)。第 6 章存储器和可编程逻辑器件3
12、030图 6.10 2568 RAM扩展成10248存储器第 6 章存储器和可编程逻辑器件3131 6.3 可编程逻辑器件可编程逻辑器件6.3.1 可编程逻辑阵列可编程逻辑阵列(PLA)1.实现组合逻辑电路例 3 用PLA 实现一位二进制全加器。解 由全加器真值表,用卡诺图化简得最简逻辑表达式为:式中:A、B为两个加数,C为低位进位,S为本位和,Ci为本位向高位的进位。第 6 章存储器和可编程逻辑器件3232用这些乘积项组成S和Ci表达式如下:S=P0+P1+P2+P3Ci=P4+P5+P6 根据上式,可画出由PLA实现全加器的阵列结构图如图6.11所示。第 6 章存储器和可编程逻辑器件333
13、3图6.11 用PLA实现一位二进制全加器第 6 章存储器和可编程逻辑器件34342.实现时序逻辑电路例4 用PLA实现具有七段显示输出的十进制计数器,即从(0)10(9)10。解 十进制计数的状态转换表(8421 BCD码)如表6.2所示。由表可得四个JK触发器的卡诺图如图6.12所示,其化简结果为:第 6 章存储器和可编程逻辑器件3535第 6 章存储器和可编程逻辑器件3636图6.12 十进制计数器的卡诺图第 6 章存储器和可编程逻辑器件3737十进制七段显示译码器的功能表如表6.3所示。第 6 章存储器和可编程逻辑器件3838由表6.3可得七段(ag)表达式为:根据上式可得PLA阵列图
14、如图6.13所示。第 6 章存储器和可编程逻辑器件3939图6.13 用PLA实现七段显示十进制计数器第 6 章存储器和可编程逻辑器件40406.3.2 可编程阵列逻辑可编程阵列逻辑(PAL)1.PAL的输出结构PAL基本结构与PLA相似,所不同的是PAL结构中,与门阵列是可编程的,而或门阵列是固定连接的。也就是说,每个输出是若干个乘积项之和,其中乘积项的数目是固定的,如图6.14所示,每个输出对应的乘积项为两个。在PAL的现有产品中,最多的乘积项可达8个。第 6 章存储器和可编程逻辑器件4141图6.14 PAL基本结构第 6 章存储器和可编程逻辑器件42422.PAL的几种输出结构PAL具
15、有多种输出结构。组合逻辑常采用“专用输出的基本门阵列结构”,其输出结构如图6.15所示。图中,若输出部分采用或非门输出时,为低电平有效器件;若采用或门输出时,为高电平有效器件。第 6 章存储器和可编程逻辑器件4343图6.15 专用输出门阵列结构第 6 章存储器和可编程逻辑器件4444PAL实现时序逻辑电路功能时,其输出结构如图6.16所示,输出部分采用了一个D触发器,其输出通过选通三态缓冲器送到输出端,构成时序逻辑电路。第 6 章存储器和可编程逻辑器件4545图6.16 时序输出结构第 6 章存储器和可编程逻辑器件46463.PAL的特点PAL和SSI、MSI通用标准器件相比有许多优点:提高
16、了功能密度,节省了空间。通常一片PAL可以代替24片MSI。同时PAL只有20多种型号,但可以代替90%的通用SSI、MSI器件,因而进行系统设计时可以大大减少器件的种类。第 6 章存储器和可编程逻辑器件4747 提高了设计的灵活性,且编程和使用都比较方便。有上电复位功能,可以防止非法复制。PAL的主要缺点是由于它采用双极型熔丝工艺(PROM结构),只能一次性编程,因而使用者仍要承担一定的风险。第 6 章存储器和可编程逻辑器件48486.3.3 通用阵列逻辑通用阵列逻辑(GAL)如图6.17所示是GAL16V8的逻辑电路图,它有16 个输入引脚(其中八个为固定输入引脚)和八个输出引脚。其内部结
17、构是由八个输入缓冲器,八个输出反馈/输入缓冲器,八个输出三态缓冲器,八个输出逻辑宏单元OLMC,88个与门构成的与门阵列以及时钟和输出选通信号输入缓冲器等组成。第 6 章存储器和可编程逻辑器件4949图6.17 GAL16V8逻辑图第 6 章存储器和可编程逻辑器件5050一个OLMC由与阵列输出组成,其内部结构如图6.18所示,每个OLMC包括或门阵列中的一个或门,或门的每一个输入对应一个乘积项,因此或门的输出为有关乘积项之和。图中的异或门用于控制输出信号的极性,当XOR(n)端为1时,异或门起反相器作用,反之为同相器,XOR(n)对应于结构控制字中的一位,n为引脚号;D触发器对异或门的输出状
18、态起记忆作用,使GAL适用于时序逻辑电路。第 6 章存储器和可编程逻辑器件5151图6.18 OLMC内部结构第 6 章存储器和可编程逻辑器件5252多路开关状态取决于结构控制字中的AC0和AC1(n)位的值。例如,TSMUX的控制信号是AC0和AC1(n),当AC0AC1(n)=11时,表示多路开关TSMUX的数据输入端11被选通,表示三态门的选通信号是第一乘积项。表6.4列出有关控制信号与OLMC的配置关系。第 6 章存储器和可编程逻辑器件5353第 6 章存储器和可编程逻辑器件5454表6.4中SYN、AC0、AC1(n)和XOR(n)都是结构控制字中可编程位。SYN=0时,GAL器件有寄存输出能力;SYN=1时,GAL为一个纯粹组合逻辑器件。在两个宏单元OLMC(12)和OLMC(19)中,SYN还代替了AC1(m),而SYN代替了AC0,以仿真PAL的型号。XOR(n)位决定着每个输出的极性,当XOR(n)=0时,输出低电平有效;当XOR(n)=1 时,输出高电平有效。