第六章存储器系统本章主要讨论内存储器系统,在介绍三类典型的半导体存储器芯片的结构原理与工作特性的基础上,着重讲述半导体存储器芯片与微处理器的接口技术。6.1重点与难点本章的学习重点是8088的存储器组织;存储芯片的片选方法(全译码、部分译码、线选);存储器的扩展方法(位扩展、字节容量扩展)。主要掌握的知识要点如下:6.1.1半导体存储器的基本知识1.SRAM、DRAM、EPROM和ROM的区别RAM的特点是存储器中信息能读能写,且对存储器中任一存储单元进行读写操作所需时间基本上是一样的,RAM中信息在关机后立即消失。根据是否采用刷新技术,又可分为静态RAM(SRAM)和动态RAM(DRAM)两种。SRAM是利用半导体触发器的两个稳定状态表示“1”和“0”;DRAM是利用MOS管的栅极对其衬间的分布电容来保存信息,以存储电荷的多少,即电容端电压的高低来表示“1”和“0”;ROM的特点是用户在使用时只能读出其中信息,不能修改和写入新的信息;EPROM可由用户自行写入程序和数据,写入后的内容可由紫外线照射擦除,然后再重新写入新的内容,EPROM可多次擦除,多次写入。一般工作条件下,EPROM是只读的。2.导体存储器芯片的主要性能指标(1)存储容量:存储容量是指存储器可以容纳的二进制信息量,以存储单元的总位数表示,通常也用存储器的地址寄存器的编址数与存储字位数的乘积来表示。(2)存储速度:有关存储器的存储速度主要有两个时间参数:TA:访问时间(AccessTime),从启动一次存储器操作,到完成该操作所经历的时间。TMC:存储周期(MemoryCycle),启动两次独立的存储器操作之间所需的最小时间间隔。(3)存储器的可靠性:用MTBF—平均故障间隔时间(MeanTimeBetweenFailures)来衡量。MTBF越长,可靠性越高。(4)性能/价格比:是一个综合性指标,性能主要包括存储容量、存储速度和可靠性。3.半导体存储器的基本结构半导体存储器的基本结构如下图所示。MAR地址译码器读/写MDR存储体MB时序/控制CPUM位地址N位数据控制信号4.存储器的数据组织计算机系统中,作为一个整体的一次存放或取出内存储器的数据称为“存储字”,在现代计算机系统中,特别是微机系统中,内存储器一般都是以字节为单位编址,即一个存储地址对应一个8位存储单元(位)。一个16位的存储字占两个连续的8位存储单元。Intel80x86系统中,16位存储字或32位存储字的地址是2个或4个存储单元中最低端的存储单元中的地址,而此最低端存储单元中存放的是16位或32位字中最低8位。6.1.2半导体存储器的结构及典型的半导体存储芯片1.RAM芯片6116的外特性6116为2K×8位容量的SRAM芯片,片内有16K存储单元,有11条地址线A10~A0用来寻址2K(2048)个地址;8条数据线I/O1~I/O8,字长8位,2048个地址中的每一个地址对应8个存储单元(位),以8条数据线来实现8位数据的读写;3条控制线分别是片选信号、写允许信号和输出允许信号。6116的芯片控制信号I/O引脚方式HXX高阻未选中LLHDOUT读出LXLDIN写入注:X为任意。为有效电平是6116能工作的必要条件,相当于使芯片工作的开门信号。在有效的条件下,决定6116读或者写的主要条件是。为低电平时写入6116,为高电平,且为低电平时,从6116读出。2.DRAM芯片2164的外特性2164为64×1位容量的DRAM芯片,芯片内部有16条地址线,用来寻址64K个地址;1条数据线。64个地址中的每一地址对应1个存储单元,从1条数据线上实现1位数据的读写。要实现8位数据传输,必须采用8个2164芯片,由此可组成64KB的内存。需要注意的是,2164芯片的外部引脚只有8条地址线(A7~A0),片内有地址锁存器,可利用2条控制线(行地址选通)和(列地址选通),先由将8位行地址送到片内行地址锁存器,然后由将后送入的8位列地址送到片内列地址锁存器。而数据线只有2条,一条是输入DIN,一条是输出DOUT。3.EPROM芯片2732的外特性2732为4K×8位的EPROM芯片,有12条地址线A11~A0;8条数据线D7~D0;2条控制线;片选信号,用来选择需要读或者编程的芯片;输出允许信号,用来把输出数据送数据线。信号线与编程电源VPP共用二条引线,表示为/VPP。当2732工作于“读”方式时,/VPP接低电平;当2732工作于“编辑”方式时,/VPP接+21V。而引脚接低电平时,选中该存储器芯片;引脚接高电平时,该EPROM芯片处于低功耗状态。在2732与CPU连接时,引脚同地址译码器输出相连,/VPP引脚同CPU的读引脚相连。6.1.3存储器与CPU的连接要求熟练掌握存储器接口的基本技术,特别是数据线的连接、控制信号线的连接、存储器的地址分配及片选问题、CPU与存储器的时序配合问题。1.典型的3-8线译码器芯片74LS138的应用74LS138是一个专用的3-8线译码器,在存储器接口和I/O外设口中得到了广泛的应用。74LS138有三个输入端A、B、C。三个控制端G1、、,以及8个输出端~。在作为存储器接口的地址译码器中,74LS138的C、B、A通常接CPU的高位地址线中最低3位,高位地址是指向存储器芯片的地址线连接后的地址线,若内存芯片有12条地址线,则CPU的A11~A0同芯片内的12条地址线相连,余下的8根地址线A19~A12,即高位地址线。通常74LS138的C、B、A分别同高位地址线中的A14、A13与A12相连,G1、、同余下的高位地址线以及IO/、或等控制线连接。而8个输出端~分别接8个存储器芯片的片选端(,),用来选中对应的存储器芯片。2.采用基本门电路实现内存芯片的片选从74LS138构成的地址译码器电路可见,74LS138的输出~中某一条线同内存芯片的片选端或相连,只要内存芯片的(或)为有效低电平,则该内存芯片可处于读/写状态,而同相连的(i可以是0~7间的一个正数)有效,是在同74LS138输入端C、B、A和控制端G1、、相连的高位地址线,以及IO/、或信号线满足一定条件而实现的,这就是片选的基本原理。据此,我们可以用一个简单的门电路—“与非门”“或门”同样实现内存芯片的片选。3.存储空间的地址分配和片选技术一个2K×8位的存储芯片在8088系统的1MB的内存总地址00000H-FFFFFH中究竟占有哪一段地址,这就是地址分配问题。三种片选技术包括:全译码法是指系统地址总线中除用于片内寻址以外的全部高位地址线参加译码,把译码器的输出信号作为各芯片的片选信号,以实现片选。部分译码法是将高位地址线中某几位(而不是全部)地址参加译码器译码,作为片选信号,仍用地址线低位部分直接或者通过系统总线连到存储器芯片的地址输入端实现片内寻址。线选法是指直接用地址总线的高位地址中的某一位或几位直接作为存储器芯片的片选信号();用地址线的低位实现对芯片的片内寻址。4.地址重叠现象在采用部分译码法线选法实现片选时,未参加译码的高位地址线的状态可为任意,由此形成地址重叠现象。5.动态存储器的连接(1)行地址和列地址的形成通过二选一选择器74LS158把CPU的16位地址线A15~A0分为低8位地址A7~A0(行地址)和高8位地址A15~A8(列地址)。(2)行地址选通信号和列地址选通信号的产生能读懂和的产生电路。该电路由两级译码电路组成,第二级译码电路由两个74LS138分别产生4个行地址选通信号(~)四个列地址选通信号(~);第一级译码是一个256×4位的ROM,用来产生第二级译码工作所需的条件。(3)动态RAM的接口,要了解动态RAM刷新原理。6.控制信号的连接CPU与存储器交换信息时,CPU都设有相应的控制信号,如、、IO/和READY(总线控制器提供存储器的控制信号有、、;PC总线提供存储器的控制信号有、等)。一般可直接连至存储器的端,连接存储器的端。如果存储器只有一根读写信号线,例如2114的,CPU的、可由外接电路组成信号,或者根据时序分析确定能否直接接至信号。7.CPU的时序和存储器芯片的存取速度的配合问题在存储器芯片已经确定的情况下,对慢速的存储器,需要CPU总线周期插入等待状态Tw,相应需设置等待信号的产生电路。6.2例题解析1.用1024×1位RAM芯片设计一个128KB的存储系统,问需要()片芯片组成?A.1024B.2048C.128D.256解:在组成存储器系统时,所需存储器芯片的数目可由下面的公式确定:芯片数=存储器系统的存储容量/芯片容量这个公式对于使用上述任何一种扩展方法所组成的存储器系统的设计都是适用的。128KB的存储系统共含有128×1024×8个存储单位,需要1024×1位的RAM芯片共128×1024×8/(1024×1)=128×8=1024片。所以选A。2.用一片EPROM的芯片构成系统内存,其地址范围为F0000H~F0FFFH,无地址重叠,该内存的存储容量为()。A.2KBB.4KBC.8KBD.16KB解:在现代计算机中,特别是微机系统中,内存储器一般都是以字节为单位编址,即一个存储地址对应一个8位存储单元。对于本题而言根据EPROM芯片的地址范围,可计算出它的存储容量,即F0FFFH-F0000H+1=1000H=4KB。所以选B。3.某单元的逻辑地址为:4B09H:5678H,则该存储单元的物理地址为:。解:物理地址=段地址×10H+段内偏移地址=4B09H×10H+5678H=4B090H+5678H=50708H4.有一静态RAM芯片的地址线为A12~A0,数据线为D7~D0,则该存储器芯片的存储容量为()。A.2K×4位B.4KBC.8KBD.1K×4位解:该静态RAM芯片共有13条地址线(寻址能力为213),8条数据线(字长为8位),因此它的存储容量为213×8=8K×8位。选择C。5.简述EPRAM芯片Intel2732A的各引脚功能。答:2732A的存储容量为4K×8位,有12条地址线A11~A0,8条数据线O7~O0,2条控制线中为芯片允许线,用来选择芯片;为输出允许线,用来把输出的数据送上数据线;只有当这两条控制线同时有效时,才能从输出端得到读出的数据。6.8088CPU与存储器芯片2716和6116的连接如图所示,请分别写出2片芯片的存储容量和地址范围(先用二进制表示,然后把无关位设置0后写出16进制表示)。答:HM6116芯片的存储容量为2K×8位,2716芯片的存储容量也为2K×8位,且它们的引脚兼容。以6116为例的8088的A15~A11和A19、A18不参加译码,这些位的数值应不予考虑,当A17为1,A16为0时才能选中6116,此时,A10~A0的取值可以从00000000000到11111111111。所以存储容量:2716为2KB;6116为2KB。地址范围:2716为××01×××××00000000000B至××01×××××11111111111B,即10000H~107FFH;6116为××10×××××00000000000B至××10×××××11111111111B,即20000H~207FFH。A17A16CECE100~AA100~AA27166116100~AA6.3习题与参考答案1.计算机存储器是怎样分类的?其中半导体存储器又是怎样分类的?2.存储器有哪些技术指标?3.存储系统的层次结构是如何构成的?试述各层次存储器的作用。4.试述六管静态存储电路的工作原理和特点。5.试述单管动态存储电路的工作原理和特点。6.在半导体存储器芯片中,地址双译码方式相对于地址单译码方式有什么优点?7.一般的半导体存储器芯片的引脚应包括哪些信号?8.有的RAM芯片(如Intel2164A)外部只有八根地址线,却具有64K位的寻址能力,这是为什么?其中RAS与CAS信号起着什么作用?怎样起作用的?9.简述ERPOM的结构与工作原理。10.在CPU与存储器的连接时要考虑哪些方面的问题?11.请比较全