微机原理与接口技术第06章(XP).ppt
第 6章,主存储器及其接口电路,第4章:微处理器外部特性,教学重点存储器的分类RAM存储器及其接口了解只读存储器ROM,半导体存储器概述,存储器是计算机中信息存放的载体,是计算机中的重要组成部分。我们总是希望存储器容量越大越好,速度越快越好。然而大容量、高速度必然带来高成本。因此,必须找到一个适当的平衡点;现代的计算机系统中都是采用多级存储体系结构来做为容量、速度和成本间的折衷。如下图所示。本章介绍采用半导体存储器及其组成主存的方法,6.1 半导体存储器的分类,6.1 半导体存储器的分类,1.RAM按制造工艺可分为双极型:速度快、集成度低、功耗大,一般用在高档微机中或用做CacheMOS型:速度慢、集成度高、功耗低。微机的主存储器一般为它。根据是否有刷新电路又可分为:静态RAM:以六管构成的触发器作为基本存储电路,存储的信息相对稳定,无需刷新电路;速度比DRAM快但集成度不如DRAM,功耗也较DRM为大。动态RAM:以单管线路构成其基本的存储电路,因此集成度高,成本也相对便宜。但其中的信息易消失,故需要专门的硬件刷新电路。,读写存储器RAM小结,2.只读存储器ROM,掩膜ROM:信息制作在芯片中,不可更改PROM:允许一次编程,此后不可更改EPROM:用紫外光擦除,擦除后可编程;并允许用户多次擦除和编程EEPROM(E2PROM):采用加电方法在线进行擦除和编程,也可多次擦写Flash Memory(闪存):能够快速擦写的EEPROM,但只能按块的方式(Block)擦除,6.2 RAM的结构,一个基本的存储电路中只能存放二进制中的一个位。如果要形成大容量的记忆体,就必须将大量的存储电路有规则地组织起来,这样就构成了存储体。在存储体中,为了区别不同的存储单元,通过给每个单元一个惟一的编号地址来选择不同的存储单元。,图示,6.2 RAM的结构示意图,片选端CS*:有效时,可以对该芯片进行读写操作,写WE*(Write Enable):控制写操作。有效时,数据进入芯片中相当于系统的WR*。,输出OE*(Output Enable)控制读操作。有效时,芯片内数据输出。相当于RD*。,典型的RAM连接示意图,每个存储单元具有一个唯一的地址,可存储1个或多个二进制数据位,在大容量的存储体中,通常将存储单元组织成矩阵的形式。这样做可以节省译码和驱动电路,存储体,每个存储单元具有一个唯一的地址,可存储1位(位片结构)或多位(字片结构)二进制数据存储容量与地址、数据线个数有关:芯片的存储容量2MN存储单元数存储单元的位数 M:芯片的地址线根数 N:芯片的数据线根数,地址译码方式,对存储体的译码有两种方式:单译码结构:字线选择所有位;双译码结构:通过行列地址线来选择存储单元双译码可以减少选择线的数目,从而简化芯片设计主要采用的译码结构,地址译码方式(续),在上图中,存储单元可以是一位,也可以是多位。如果是多位,则可以将多位并起来。,单译码:16个4位的存储单元,双译码:1024个存储单元,一个实际的例子-Intel 2114,Intel 2114是一个1K4位的SRAM。其外部引脚图如图6-8所示。,存储容量为10244位18个引脚:10根地址线A9A04根数据线I/O4I/O1:相当于D0D3片选CS*读写WE*:当其为低电平时,写入数据;为高电平时,读出数据;,SRAM2114与CPU的连接,存储容量为10244,即其有1024个单元,每个单元4位;因此,选中这1024个单元需要10根地址线A0A9。,6.2.3 RAM与CPU的连接,在将RAM与CPU连接时,主要连接以下三个部分的信号线:数据线 地址线 读写控制线,6.2.3 RAM与CPU的连接(续1),存储芯片与CPU总线的连接,还要考虑以下方面的问题:CPU的总线负载能力CPU的总线驱动能力有限,因此应考虑CPU能否带动总线上包括存储器在内的连接器件。必要时就要加上缓冲器。存储芯片与CPU总线时序的配合CPU能否与存储器的存取速度相配合。如果不能满足,可以考虑更换芯片,或在总线周期中插入等待状态TW存储器的地址分配和选片,1.存储芯片容量的扩充,当进行存储器组织时,所给芯片的容量往往与需要不同,如数据的位数不够,或总的容量不足,此时就必须进行容量扩充。若芯片的数据线不足8根:一次不能从一个芯片中访问到8位数据,此时应利用多个芯片扩充数据位;这个扩充方式简称“位扩充”而如果总的容量不足则需利用多个存储芯片扩充容量,用存储芯片的片选端对多个存储芯片(组)进行寻址;这种扩充简称为“地址扩充”或“字扩充”,演示,演示,2.1KB RAM的连接,RAM芯片有1位、4位、8位等不同的结构。在构成1KB RAM时,可以选择不同的芯片,因此有就有不同的连接。采用1K1位的RAM,位扩展,2.1KB RAM的连接,采用2564位的RAM,既有字扩展,也有位扩展,两种连接方式的比较:,这两种连接方式虽然都可以构成1KB RAM,但两者有以下区别:从连接的负载来看:前一种连接每条地址线有8个负载(8片RAM),而每根数据线只连接一个负载;后一种连接A0A7每根地址线也是连接8个负载,而每根数据线连接4个负载;因此,从负载的角度来说,前一种比后一种好。从芯片的封装来看:一般而言,芯片封装的引脚越多,则合格率越低;前一种每个芯片的地址数据线有11根,而后一个有12根;因此,从芯片的封装角度来说,也是前一种比后一种好;所以,现代的RAM基本上都是按位封装的。,2.1KB RAM的连接,思考:如果采用Intel 2114,则如何构成1KB RAM?如果所用的芯片的容量为1288位,则又如何构成1KB RAM?,图示,图示,3.2KB RAM的连接,采用Intel 2114,构成2KB RAM的连接结构图如下所示:,63,1,0,3.存储芯片地址线的连接,芯片的地址线通常应全部与系统的低位地址总线相连寻址时,这部分地址的译码是在存储芯片内完成的,我们称为“片内译码”,如2114的1K片内地址,3.存储芯片片选端的译码,而如果存储系统利用多个存储芯片扩充容量,也就是进行“字扩充”时,它扩充了存储器地址范围,此时需要利用存储芯片的片选端对多个存储芯片(组)进行寻址;这个寻址方法,主要通过将存储芯片的片选端与系统的高位地址线相关联来实现,如下图所示:,3.存储芯片片选端的译码,系统的高位地址线与存储芯片的片选端相连时,有以下几种译码方式:全译码部分译码线性译码,(1)全译码,所有的系统地址线均参与对存储单元的译码寻址包括低位地址线对芯片内各存储单元的译码寻址(片内译码),高位地址线对存储芯片的译码寻址(片选译码)采用全译码,每个存储单元的地址都是唯一的,不存在地址重复译码电路可能比较复杂、连线也较多,全译码示例,(2)部分译码,只有部分(高位)地址线参与对存储芯片的译码每个存储单元将对应多个地址(地址重复),需要选取一个可用地址可简化译码电路的设计但系统的部分地址空间将被浪费,部分译码示例,(3)线选译码,只用少数几根高位地址线进行芯片的译码,且每根负责选中一个芯片(组)虽构成简单,但地址空间严重浪费必然会出现地址重复一个存储地址会对应多个存储单元多个存储单元共用的存储地址不应使用,线选译码示例,切记:A14 A1300的情况不能出现00000H01FFFH的地址不可使用,地址重复,一个存储单元具有多个存储地址的现象原因:有些高位地址线没有用、可任意使用地址:出现地址重复时,常选取其中既好用、又不冲突的一个“可用地址”选取的原则:高位地址全为0的地址(先考虑片内,再考虑“选片”),片选端译码小结,存储芯片的片选控制端可以被看作是一根最高位地址线在系统中,主要与地址发生联系:包括地址空间的选择(接系统的IO/M*信号)和高位地址的译码选择(与系统的高位地址线相关联)对一些存储芯片通过片选无效可关闭内部的输出驱动机制,起到降低功耗的作用,4.存储器的读周期,存取时间是存储器的一个重要指标。存储器读周期的典型波型如下图所示(Intel 2114):,TRC:读取周期两次读取存储器所允许的最小时间间隔有效地址维持的时间,TA:读取时间给出地址到数据稳定出现在外部总线上的时间,其它:TCO:片选到输出稳定TCX:片选到输出有效TOTD:从断开片选到输出变为三态TOHA:地址改变后的维持时间,4.存储器的读周期(续1),存储器的读取周期必备的两个条件:地址有效经TA时间;片选有效经过TCO时间;只有在这两个条件都满足时,数据的输出才稳定;反之,如果TRC过短,而TCO太长,则数据无法稳定地出现在DB上,造成数据无法正确读取;,4.存储器的读周期(续2),以2114-2为例,其TA=200 ns,CPU存储器读时序如图6-17所示。为了输出地址的准备时间为 TCLAV=110 ns。发出地址到数据稳定出现的时间为:TCLAV+TA=310 ns;而在8088CPU中,CPU读数据是在T4时刻,而为了保证读入的数据的稳定,会提前TDVCL(约30ns)读。CPU开始读数的时间为:3T-30=3200-30=570 ns开始读的时间数据已稳定出现的时间,即可以很好地配合。,SRAM 2114的写周期,TWC写入周期两次写入存储器所允许的最小时间间隔有效地址维持的时间,TW写入时间从写入命令发出到数据进入存储单元的时间写信号有效时间,TAW:地址有效后到WE*有效的延迟时间。以避免当WE*有效时地址还在改变造成误写入。,TWR:数据写入后,应撤消WE*、CS*,再撤消地址信号,以避免误写入。,6.2.4 动态RAM 存储器2164A,存储容量为64K116个引脚:8根地址线A7A0(为了减少封装的引脚,采用行、列地址变换的方式)1根数据输入线DIN1根数据输出线DOUT行地址选通RAS*列地址选通CAS*读写控制WE*电源线VDD地线VSS,注:2164A没有专门的片选信号。当RAS*信号有效时,即认为是片选信号。,DRAM 2164A的内部结构,2164内部共有4个128128的存储矩阵构成。每个128128的存储矩阵有7条行地址和7条列地址线进行选择。,当给定一个16位地址时,行地址的低7位(RA6RA0)从每个矩阵中选择一行,列地址的低7位(CA6CA0)从每个矩阵中选择一列,每个矩阵中被选择的行和被选择的列交汇处的单元被选中,最后由4选1 I0门从4个矩阵的被选单元中选定一个(由RA7和CA7控制),进行读或写。,DRAM 2164的读周期,存储地址需要分两批传送行地址选通信号RAS*有效,开始传送行地址随后,列地址选通信号CAS*有效,传送列地址,CAS*相当于片选信号读写信号WE*读有效数据从DOUT引脚输出,TRC:RAS有效到数据读取时间TRAS:RAS保持时间TRCD:RAS与CAS信号间隔时间TASR:行地址领先于RAS的时间TRAH:行地址在RAS后的保持时间TCAH:列地址在CAS后的保持时间,DRAM 2164的写周期,存储地址需要分两批传送行地址选通信号RAS*有效,开始传送行地址随后,列地址选通信号CAS*有效,传送列地址读写信号WE*写有效数据从DIN引脚进入存储单元,DRAM 2164的读修改写周期,TWCS,TDS,列地址,地址,TWR,TCAH,TASC,TASR,TRAH,TCAS,TRCD,TRC,TRAS,TRAC,DRAM 2164的刷新,采用“仅行地址有效”方法刷新行地址选通RAS*有效,传送行地址列地址选通CAS*无效,没有列地址芯片内部实现一行存储单元的刷新没有数据输入输出存储系统中所有芯片同时进行刷新DRAM必须每隔固定时间就刷新,6.3 几种新型的RAM,EDO RAM:扩展数据输出与一般的DRAM的区别:其数据输出时间相对延长了。这样,在给出下一个列地址以及对其译码的同时,外部读取设备仍可通过锁存器采样数据;同步DRAM(Synchronous DRAM,简称SDRAM):与系统时钟同步,可取消等待周期,减少数据存储时间在每一个时钟的上升沿读写,在同一时钟周期内可完成数据的访问和刷新采用突发模式,一次读写可传输一整块数据,6.3 几种新型的RAM,Rambus DRAM:突发存取的高速动态存储器Intel曾经主推的一种内存类型,但似乎已经失败在设计上有革命性飞跃:基于更小内存带宽可得到更高速度的理由,采用高速16位总线,其速度可高达400MHz可在时钟的上升、下降沿同时读写,故理论上400MHz的总线速度相当于800MHz工作速率,其带宽为:2400MHz2=1600MBps或1.6 GBps),6.3 几种新型的RAM,DDRSDRAM:双数据率 在每个时钟的上升、下降沿时均可读写,故速度是普通SDRAM的双倍数据带宽:每秒传输的最大数据量。如DDR 400,其系统总线频率为200MHz,则带宽为:8字节200MHz2=3200MBps,6.4 只读存储器-(1)掩膜式只读存储器,MROM的内容是由生产厂家按用户要求在芯片的生产过程中写入的,写入后不能修改。,掩膜ROM的内容,复合译码结构电路,(2)EPROM(可擦除可编程ROM),顶部开有一个圆形的石英窗口,用于紫外线透过擦除原有信息一般使用专门的编程器(烧写器)进行编程,编程后,应该贴上不透光封条出厂未编程前,每个基本存储单元都是信息1,编程就是将某些单元写入信息0,EPROM基本存储电路,EPROM芯片2716,存储容量为2K824个引脚:11根地址线A10A08根数据线DO7DO0片选/编程CE*/PGM读写OE*编程电压VPP,功能,(3)EEPROM(电可擦除可编程ROM),用加电方法,进行在线(无需拔下,直接在电路中)擦写(擦除和编程一次完成)有字节擦写、块擦写和整片擦写方法并行EEPROM:多位同时进行串行EEPROM:只有一位数据线,(4)Flash ROM:闪存,Flash:闪存与EEPROM的区别:容量大与RAM的区别:寿命较短,编程较慢发展速度惊人,目前单片容量已达1Gb广泛应用于计算机技术的各个领域,第6章教学要求,1.了解各类半导体存储器的应用特点;2.熟悉半导体存储器芯片的结构;3.理解SRAM读写原理、DRAM读写和刷新原理、EPROM和EEPROM工作方式4.掌握存储芯片与CPU连接的方法,特别是片选端的处理;5.了解存储芯片与CPU连接的总线驱动和时序配合问题。,VCC(+5V),基本电路:由两个增强型的NMOS反相器交叉耦合而成的触发器,带有选中电路的六管静态存储单元,六管静态存储单元,单管动态存储单元,SRAM 2114的功能,EPROM 2716的功能,存储芯片的位扩充-由8个16K1位的RAM组成16KB 的RAM,存储芯片的字扩充-由4个16K8位的RAM组成64KB的RAM,参考答案:(一)用2114构成1KB RAM,参考答案:(二)用1288 位RAM构成1KB RAM,