1、 8.1 存储器存储器 8.2 可编程逻辑器件可编程逻辑器件 8.3 CPLD、FPGA和在系统编程技术和在系统编程技术 小结小结第第8章章 存储器和可编程逻辑器件存储器和可编程逻辑器件8.1 半导体存储器半导体存储器 数字信息在运算或处理过程中,需要使用专门的存储器进行较长时间的存储。正是因为有了存储器,计算机才有了对信息的记忆功能。半导体存储器以其品种多、容量大、速度快、耗电省、体积小、操作方便、维护容易等优点,在数字设备中得到广泛应用。目前,微型计算机的内存普遍采用了大容量的半导体存储器。存储器是用以存储一系列二进制数码的器件。根据功能的不同,半导体存储器可以分为随机存取存储器(RAM)
2、和只读存储器(ROM)。按照存储机理的不同,RAM又可分为静态RAM和动态RAM 随机存取存储器RAM用于存放数据或指令,工作时能够随时在任意指定单元存入或取出数据,但断电后所存信息便会丢失,是易失性存储器。RAM有双极型和MOS型两种。双极型RAM工作速度高,但制造工艺复杂,成本高,功耗大,集成度低,主要用于高速工作场合。MOS型RAM集成度高、功耗低、价格便宜,因而应用十分广泛。MOS型RAM按其工作方式不同又分为静态RAM(SRAM)和动态RAM(DRAM)两类。8.1.1 随机存取存储器(RAM)1RAM的基本结构RAM的基本结构如图8.1所示,它由存储矩阵、地址译码器和读写控制电路三
3、部分组成;进出RAM的信号线有3类:即地址线、数据线和控制线。RAM的基本结构图8.1.1 随机存取存储器(RAM)1RAM的基本结构RAM的结构示意框图用以决定芯片是否工作读出及写入数据的通道用以决定对被选中的单元是读还是写由大量寄存器构成的矩阵用以决定访问哪个字单元8.1.1 随机存取存储器(RAM)1RAM的基本结构1 024B1位RAM的存储矩阵和地址译码器1.存储矩阵 存储矩阵由大量存储单元构成,通常排列成矩阵形式,每个存储单元存放1位二进制数据。存储器一般以字为单位组织内部结构,一个字含有若干个存储单元,存储单元的个数称为字长。字数和字长的乘积叫做存储器的容量。RAM有多字1位和多
4、字多位两种结构形式。在多字1位结构中,每个寄存器都只有1位,例如一个容量为10241位的RAM,就是一个有1024个1位寄存器的RAM。多字多位结构中,每个寄存器都有多位,例如一个容量为2564位的RAM,就是一个有1024个存储单元的RAM,这些单元排成32行32列的矩阵形式,如图所示。图8.2 2564 RAM存储矩阵 2的5次方=322的3次方=8*4=32X0X1X2X318 根列选择线 Y0 Y1 Y732根行选择线容量为2564 RAM的存储矩阵存储单元1024个存储单元排成32行32列的矩阵每根行选择线选择一行每根列选择线选择一个字列Y11,X21,位于X2和Y1交叉处的字单元可
5、以进行读出或写入操作,而其余任何字单元都不会被选中。地址的选择通过地址译码器来实现。地址译码器由行译码器和列译码器组成。行、列译码器的输出即为行、列选择线,由它们共同确定欲选择的地址单元。A0A1A2A3A4X0X1X2X31A5 A6 A7Y0 Y1 Y7行译码器列 译 码 器2564 RAM存储矩阵中,256个字需要8位地址码A7A0。其中高3位A7A5用于列译码输入,低5位A4A0用于行译码输入。A7A0=00100010时,Y1=1、X2=1,选中X2和Y1交叉的字单元。000100 0 12.地址译码器 地址译码器用以决定访问哪个字单元,它将外部给出的地址进行译码,找到惟一对应的字单
6、元。一般RAM都采用两级译码,即行译码器和列译码器。行、列译码器的输出即为行、列选择线,由它们共同确定欲选择的地址单元。3.读写控制电路 读写控制电路对电路工作状态进行控制,一般包含片选和读写控制两种作用,片选信号(CS)用以决定芯片是否工作,当片选信号有效时,芯片被选中,RAM可以正常工作,否则芯片不工作。读写控制信号(R/W)用以决定对被选中的单元是读还是写,R/W为高电平时进行读操作,低电平时进行写操作。片选、读写控制电路如图所示。8.1.1 随机存取存储器(RAM)1RAM的基本结构RAM的输入/输出控制电路2RAM的存储单元(1)六管NMOS静态存储单元 六管NMOS静态存储单元 六
7、管静态存储单元电路如图所示。其中MOS管为NMOS,V1V4组成的两个反相器交叉耦合构成一个基本RS触发器,用于存储一位二进制信息,V5、V6为门控管,由行译码器输出的字线Xi控制其导通或截止;V7、V8也是门控管,由列译码器输出Yj控制其导通或截止,也是数据写入或读出的控制电路。8.1.1 随机存取存储器(RAM)2RAM的存储单元(2)双极型晶体管存储单元 双极型晶体管存储单元8.1.1 随机存取存储器(RAM)2RAM的存储单元(3)四管动态MOS存储单元 四管动态MOS存储单元8.1.1 随机存取存储器(RAM)3RAM的容量扩展 (1)位扩展 1K1位RAM扩展成10248位RAM系
8、统8.1.1 随机存取存储器(RAM)3RAM的容量扩展 (2)字扩展 1K8位RAM扩展成8K8位RAM系统8.1.1 随机存取存储器(RAM)4RAM的芯片(1)芯片引脚排列图 静态RAM6116引脚排列图8.1.1 随机存取存储器(RAM)4RAM的芯片(2)芯片工作方式和控制信号之间的关系 静态RAM 6116的工作方式与控制信号之间的关系工作状态1高阻态低功耗维持001稳定输出读00稳定输入写CSOEWE010AA07DD8.1.2 只读存储器(ROM)只读存储器因为其内容只能读出不能写入而得名,常用于存储数字系统及计算机中不需改写的数据,如数据转换表、计算机操作系统程序等。ROM存
9、储的数据不会因为断电而消失,即具有非易失性。8.1.2 只读存储器(ROM)1.ROM的分类(1)固定ROM 固定ROM也称掩膜ROM。这种ROM在制造时,厂家利用掩膜技术直接把数据写入存储器。ROM制成后,其存储的数据也就固定不变了,用户对这类芯片无法进行任何修改。(2)一次性可编程ROM(PROM)PROM在出厂时,存储内容全为1或全为0。用户可根据自己的需要,利用编程器将某些单元改写为0或1。PROM一旦进行了编程,就不能第二次修改了。8.1.2 只读存储器(ROM)1.ROM的分类 (3)光可擦除可编程ROM(EPROM)EPROM是采用浮栅技术生产的可编程存储器,它的存储单元多采用N
10、沟道叠栅MOS管,信息的存储是通过MOS管浮栅上的电荷分布来决定的,编程过程就是一个电荷注入过程。编程结束后,尽管撤除了电源,但是由于绝缘层的包围,注入到浮栅上的电荷无法泄漏,因此电荷分布维持不变,EPROM也就成为非易失性存储器件了。(4)电可擦除可编程ROM(E2PROM)E2PROM也是采用浮栅技术生产的可编程ROM。但是,构成存储单元的是隧道MOS管。隧道MOS管也是利用浮栅是否存有电荷来存储二值数据的,不同的是隧道MOS管是用电擦除的,并且擦除的速度要快得多,擦除时间一般为毫秒数量级。8.1.2 只读存储器(ROM)1.ROM的分类 (5)快闪存储器(Flash Memory)快闪存
11、储器的存储单元也采用浮栅型MOS管,存储器中数据的擦除和写入是分开进行的,数据写入方式与EPROM相同,需要输入一个较高的电压。因此,要为芯片提供两组电源。一个字的写入时间约为200ms,一般一只芯片可以擦/写100次以上。2.ROM的结构及工作原理(1)ROM的内部结构 ROM的内部结构 ROM的一般结构框图如图8.8所示。它由地址译码器、存储矩阵和输出缓冲电路三部分组成,它有n条地址输入线,m位数据输出线。存储矩阵共有2n个字,每个字有m位。当地址译码器选中某一个字时,该字的若干位同时读出。输出缓冲电路通常由三态门或OC门组成。8.1.2 只读存储器(ROM)2.ROM的结构及工作原理(1
12、)ROM的内部结构 ROM的内部结构存储容量字线数位线数NM(位)(2)ROM的基本工作原理 二极管ROM电路 ROM1、用、用ROM实现组合逻辑函数实现组合逻辑函数CBACBCAYCBBCABYBCACABYBAY4321A B C被 选 中 的 字 线Y1 Y2 Y3 Y40 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 110CBAW11CABW12CBAW13BCAW14CBAW15CBAW16CABW17 ABCW0 0 1 10 0 0 01 0 0 11 1 1 01 0 1 01 1 0 10 1 1 10 1 1 0例例 用ROM实现下列一组逻辑函
13、数。解解 (1)列真值表Y1 Y2 Y3 Y4W0=ABCW1=ABCW2=ABCW3=ABCW4=ABCW5=ABCW6=ABCW7=ABC地址译码器ABC(2)选择合适的ROM,对照真值表画出逻辑函数的阵列图。2、用、用ROM作函数运算表作函数运算表用ROM构成能实现函数yx2的运算表电路。例例设x的取值范围为015的正整数,则对应的是4位二进制正整数,用BB3B2B1B0表示。根据yx2可算出y的最大值是152225,可以用8位二进制数YY7Y6Y5Y4Y3Y2Y1Y0表示。由此可列出YB2即yx2的真值表。输 入输 出注B3 B2 B1 B0Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y
14、0十进制数0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 10 0 0 0 0 0 0 00 0 0 0 0 0 0 10 0 0 0 0 1 0 00 0 0 0 1 0 0 10 0 0 1 0 0 0 00 0 0 1 1 0 0 10 0 1 0 0 1 0 10 0 1 1 0 0 0 10 1 0 0 0 0 0 00 1 0 1 0 0 0 10 1 1 0 0 1 0 00 1 1 1 1 0 0 11 0
15、 0 1 0 0 0 01 0 1 0 1 0 0 11 1 0 0 0 1 0 01 1 1 0 0 0 0 10149162536496481100121144169196225真真值值表表0000000100100011010001010110011110001001101010111100110111101111Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0地址译码器B3B2B1B0W0W1W2W3W4W5W6W7W8W9W10W11W12W13W14W15阵列图阵列图3、用、用ROM作字符发生器电路作字符发生器电路输出缓冲器A2A1A0 D4 D3 D2 D1 D0地址译码器用用RO
16、M存储字符存储字符Z3.常用的EPROM芯片 EPROM 2764的外部引脚图EPROM2764的实物图Intel 2764 EPROM的引脚信号功能引脚功能A12A0地址输入D7D0数据芯片使能编程脉冲Vpp、Vcc电压输入CEPGM3.常用的EPROM芯片 EEPROM28256的外部引脚图4.ROM容量的扩展(1)字长的扩展两片2764扩展成16K16位EPROM的连线图4.ROM容量的扩展(2)字数的扩展8片2764扩展成64K8位EPROM的连线图 可编程逻辑器件(PLD)是一种由用户编程以实现某种逻辑功能的新型器件,数字系统可由与门、或门来实现。它为多输入多输出的组合逻辑或时序逻辑
17、电路提供了一体化的解决方案。在实际电路设计中,PLD可代替各种小规模和中规模集成电路,从而节省电路板空间、减少集成电路数目和降低成本。因此在数字电路及数字系统设计中得到了广泛应用。前面介绍的PROM、EPROM和EEPROM都是可编程的,但通常不作为PLD的一类。可编程逻辑器件主要包括可编程逻辑阵列(PLA)、可编程阵列逻辑(PAL)、通用阵列逻辑(GAL)、CPLD及FPGA等。8.2 可编程逻辑器件可编程逻辑器件 所有PLD都由可编程阵列组成,有两类阵列:与门阵列和或门阵列。PLA由可编程与门阵列和可编程或门阵列组成。PAL由可编程与门阵列和带有输出逻辑电路的固定或门阵列组成。它是最常用的
18、一次性可编程逻辑器件,采用双极型TTL或ECL制造工艺实现。GAL由可编程与门阵列和带有可编程输出逻辑电路的固定或门阵列组成。GAL与PAL两者之间的区别:GAL可以多次编程,且带有可编程的输出逻辑电路。8.2 可编程逻辑器件可编程逻辑器件图8.18 PLD的基本结构 8.2.1 可编程逻辑器件的特点及表示方法 可编程逻辑器件目前得到了广泛的应用,它具有如下特点。集成度高、功能强。用很少的器件完成很强的功能。系统设计速度快。由于编程工作由用户完成,不必像全定式电路那样依赖于厂家;也不必像用小规模集成电路(SSI)或中规模集成电路(MSI)器件设计系统那样进行复杂的接线和调试,大大缩短了开发周期
19、。设计灵活。不受标准系列器件在逻辑功能上的限制。设计自由度大,利于发挥设计者的创造性。成本低。PLD密度高,每片高达十几万个门。阵列中十字交叉处的连接情况有三种,如图8.21所示。图8.21 交叉点的联接方式8.2.1 可编程逻辑器件的特点及表示方法 PLD中各种门电路的简化表示法乘积线8.2.2 可编程阵列逻辑(PAL)的电路结构 PAL的基本电路结构8.2.2 可编程阵列逻辑(PAL)的电路结构 PAL16L8器件结构及引脚图8.2.3 通用阵列逻辑(GAL)GAL16V8的阵列结构图和引脚图8.2.3 通用阵列逻辑(GAL)GAL器件设计流程 CPLD和FPGA是继PAL和GAL后规模更
20、大、密度更高的可编程逻辑器件。而在系统编程(In-System Programmying,ISP)技术是20世纪90年代发展起来一种PLD新技术,ISP器件被誉为第四代可编程逻辑器件。这三种可编程的逻辑器件在数字系统设计中各有优势。8.3 CPLD、FPGA和在系统编程技术简介和在系统编程技术简介 8.3.1 CPLD简介 CPLD的基本结构图8.3.2 FPGA简介 FPGA的基本结构图8.3.3 ISP技术简介 在系统编程,是指用户可以在自己设计的目标系统上,为实现预定逻辑功能而对逻辑器件进行编程或改写。使用ISP技术可实现几乎所有类型的数字逻辑电路功能,使得在一块芯片上由用户自行实现大规
21、模数字系统的设想成为现实,这是PLD设计技术发展中的一次重要变革。8.3.3 ISP技术简介 ISP技术及其系列产品有ispLSI、ispGAL和ispGDS,其显著特点是在系统可编程功能,它结合了可编程逻辑器件结构灵活、性能优越、设计简单等特点,为用户提供了传统的PLD技术无法达到的灵活性,用户无需昂贵的编程器就可以直接使用系列产品ispLSI、ispGAL和ispGDS器件编程构造数字系统。这种“硬件软做”的方法对于芯片的设计与应用开发、电路的调试与修改、电子产品的升级换代、缩短产品研制周期、降低生产成本、提高产品竟争能力都具有重要意义,不仅给用户带来了极大的时间效益和经济效益,而且使可编程技术发生了实质性的飞越。ispLSI、ispGAL和ispGDS等可编程逻辑器件是继CPLD、EPLD、FPGA之后的一个更新的家族成员,而且FPGA中有部分器件就具有在系统编程能力和远程控制能力。存储器是一种可以存储数据或信息的半导体器件,它是现代数字系统特别是计算机中的重要组成部分。按照所存内容的易失性,存储器可分为随机存取存储器和只读存储器。可编程逻辑器件的应用越来越广泛,用户可以通过编程确定该类器件的逻辑功能。普通可编程逻辑器件PAL和GAL结构简单,具有成本低、速度高等优点,但其规模较小,难于实现复杂的逻辑。而CPLD和FPGA具有集成度高、使用方便和灵活等特点。小小 结结