微型计算机原理与及接口技术-----第六章 存储器
(1)存储器可分为:CPU寄存器、高速缓冲存储器、主存储器简称主存或内存,辅助存储器简称外存或辅存。
(2)半导体存储器的分类:1.按制造工艺的分为:双极型存储器和MOS存储器2.按信息存储方式可分为:半导体存储器可分为随机存取存储器RAM和只读存储器ROMRAM中存储的信息在断电后会丢失,是一种易失性的存储器。 *随机存取存储器RAM(random access memory)又称为读写存储器,其特点是信息可以按地址随时读出或写入。 RAM分为两类: 静态RAM:读写速度快,但集成度低、容量小。主要用作Cache或小系统的内存储器 动态RAM:读写速度慢,以电荷的形式存储信息集成度高单片容量大,多用在存储量较大的系统之中。由于存储内容经过一定时间之后会自动消失,所以必须周期性的进行刷新。**两者的比较:静态RAM是靠双稳态触发器来记忆信息的;动态RAM是靠MOS电路中的栅极电容来记忆信息的。由于电容上的电荷会泄漏,需要定时给与补充,所以动态RAM需要设置刷新电路。但动态RAM比静态RAM集成度高、功耗低,从而成本也低,适于作大容量存储器。所以主内存通常采用动态RAM,而高速缓冲存储器(Cache)则使用静态RAM。 *只读存储器ROM(read only memory):闪速存储器
(3)半导体存储器的性能指标
主要包括:存储容量、存取速度、功耗、可靠性。1.存储器的容量反应了存储空间的大小,存储容量常以字节、字为单位。 1KB=2^10B,*在用存储芯片设计内存存储器是,存储芯片的容量用其能存储的二进制位数来表示,一般描述为:N×M(其中,N表示芯片的存储单元数,M表示每单元的存储位数) 【例如:SRAM芯片6264的容量为:8K×8,他有8K个存储单元每个存储单元存储8位二进制数据】2.存取速速:直接影响计算机主机运行速度。3.可靠性:是指存储器对磁场、温度等因素的干扰4.性能/性价比:体积小、重量轻、价格便宜且使用方便是微型机的首要特点5.功耗:使用低功耗存储器芯片构成存储器系统不仅可以减少对电源容量的要求,而且还可以减少发热量,提高存储器的稳定性
(4)半导体存储器的一般结构及组成
半导体随机存储器一般由存储矩阵、地址译码器、三状态双向缓冲器和控制逻辑电路等部分。
····存储体是存储器中存储信息的部分,由大量的基本存储电路组成。每个基本存储电路存放一位二进制信息
存储排列N×1称为位结构,N×8称为字结构 ····地址译码器是将CPU发送来的地址信号进行译码后产生地址编码,以便选中存储矩阵中的某一个或几个基本存储电路进行读/写操作。 ···存储器控制电路通过相应的信号引脚,接收来自CPU或外部电路的控制信号,经过组合变换后,对存储、地址译码驱动电路和三态双向缓冲器进行控制 读写信号有以下几种表示方法:OD :禁止输出引线端,高电平有效时,禁止芯片将寻址单元内的数据输出;OE:输出开放引线端,高电平有效允许芯片将寻址单元内的数据输出;R/W:读写控制引线端,高电平时进行读操作,低电平时进行写操作。W/E:低电平有效数据总线上的数据被写入寻址的单元
·····三态双向缓冲器:作用是是组成半导体RAM的各个存储芯很方便地与系统数据总线相连接。
(5)随机存取存储器RAM*基本存储电路:静态RAM是以触发器为基本存储单元,在工作的过程中只要一次写入数据后,由T1~T6 6个晶体管字或行选线、D和D一横数据或线组成。*基本存储电路的工作过程 当该存储单元被选中时,字选择线为高电平,门控管T5、T6导通,触发器与I/O接通; 写入时,写入数据是信号从I/O线和I/O(非)进入; 当进行读操作时行选线和列选线同时有效,于是T5~T8全部导通静态RAM的主要优点是工作不稳定,不需要外加刷新电路,从而简化了电路的设计。*静态RAM的电路结构存储体是一个由64×64=4096个六管静态存储器组成的存储矩阵,只有行列均被选中的存储单元,才能进行读出信息和写入信息操作*静态RAM芯片举例常用的SRAM芯片有AS7C164(8KB×8),AS7C256A(32KB×8),AS7C1024B(128KB×8)等多种 下面介绍各引脚的功能: A12~A0:13根地址线; I/O7~I/O0:8根数据线 CE1(非),CE2(非):2根片选线; WE(非):1根读写线; OE(非):一根输出使能线; Vcc和GND:1根电源线和1跟地线 NC:1根无用线
····写入数据的过程:
首先要写入单元的地址送到芯片的地址线A0~A12上,需要写入的数据送到数据线上,在CE1(非)、CE2同时有效(CE1(非)=0,CE2=1)的情况下,若WE(非)端为低电平,OE端状态任意,则数据可以写入指定的额存储单元中。(6)动态RAM ····动态存储器和静态存储器不同,动态RAM的基本存储电路利用电容存储电荷的原理来保存信息,其结构简单、集成度高、成本低、功耗小。动态RAM必须采用定时刷新,来维持电荷的的相同。 ····动态存储器的刷新方式*动态RAM利用极间电容上的电荷来存储数据,当电容有电荷时,为逻辑1,没有电荷时为逻辑0;*为了在读出之后,仍能保存所存储的信息,读出放大器对这些电容上的电压值读取之后又立即进行重新读写(刷新),所谓刷新就是不断地每隔一定时间对动态存储器的所有单元进行读出,经读出放大器放大后再重新写入原电路中,已维持电容上的电荷。
····CPU刷新周期进行,根据时间可分为:
定时集中刷新方式:是集中一段时间对所有基本存储电路进行刷新一遍,然后才开始工作。非同步刷新方式:需要刷新周期读写周期的选择电路当刷新读写周期出现冲突时,会增加读写周期的时间。这种方式每隔一定时间进行一次刷新,与CPU操作无关。 *同步刷新方式:在每个指令周期中利用CPU不进行读写操作的期间进行刷新操作。 ····动态DRAM的芯片举例下面介绍各引脚的功能: RAS(非):行地址选通信号,输入,低电平有效。 CAS(非):列地址选通信号,输入,低电平有效。 WE(非):写允许控制信号 VSS/VSSQ:地引脚 CS(非):芯片选端,低电平有效 CLK:时钟输入 CKE:时钟使能端
(7)RAM存储容量的扩展方法
目前存储器的芯片的基本存储单元排列成N×1 ,N×4 ,N×8;三种结构 使用他们设计时需要考虑两方面的问题: 【一是要使存储单元包含的位数满足要求(微机中一般为8位1B);二要使存储单元的个数符合存储容量的需求】 下面是三种的方法:1.位扩展方式(8K×1变成8K×8 需要8片芯片) 该方式只进行位数扩充,它是把各存储器芯片的地址片选信号线和读写控制信号线相应地并联起来,而将各个芯片的数据线引出,分别相应的连接到系统的数据总线 存储器的字数和存储芯片的字数一直,每一个芯片对应一个数据线2.字扩展方式(16K×8变成64K×8 需要4片) 3.字位扩展方式(当存储器芯片包含的存储单元数J小于存储容量M且各存储单元中所包含的位数K小于字长N(微机中一般为8)) 一个容量为M×N的存储器,所需包含J×K这样的芯片总数:用N/K快芯片组成一组,共M/J组
例题:对于下列RAM芯片组排列,各需要多少个RAM芯片,多少个芯片组?多少根片内地址选择线?多少根片组选择线?1.512×4RAM组成16K×8存储容量 芯片组:(2^14)/(2^9)=2^5=32(组) 总共芯片:8/4=2(片/组) 2×32=64(片) 片内地址线:9根(直接等于自身有的芯片组的指数 512) 片组地址线:5根(直接等于球出来的芯片组的指数)
(7)RAM存储器与CPU的连接
CPU与静态的RAM存储器连接主要解决数据总线、地址总线和控制总线的连接问题。需要注意一下几点:1.数据总线的连接:数据总线是双向的,CPU对存储器的访问主要是数据读出和写入。2.地址总线的连接它通常分为两部分一部分直接与存储芯片用以片内寻址的地址线连接,通常是从A0开始的低址;另一部分则经译码器译码,产生的片选信号与存储器的片选端连接,一般是高地址部分的地址线3控制总线的连接:控制信号RD 写控制信号WR,存储器读信号MEMR(memory read) 存储器的写信号MEMW (MeMeory write)与非门
(8)只读存储器ROM
只读存储器中的各基本存储单元电路所存信息在机器运行期间只能读出不能写入;行列之间的耦合单元为二极管 只读存储器的分类:1.掩模式ROM 简称ROM其中的信息是在芯片制造时由厂家写入,一旦成为商品,它的信息是不可修改的,通常放一些不需要修改的程序或数据2.可编程ROM也叫做现场编程ROM (PROM)由用户自行输入但只能写入一次,一旦写入不可修改,PROM只有双极型产品是作为高速计算机的微程序存储器,功耗比较大3.可擦除ROM可改写额PROM是一种反复编程的ROM简称EPROM,采取的方法是 写入---擦除---再写入,实现反复编程的目的。EPROM可分为紫外线擦除的和电擦除的4.Flash存储器Flash存储器是一种新型的半导体存储器,可实现大规模快速电擦除,编程速度快断电后具有可靠性
(8)高速缓冲存储器(Cache)
提高存储器带宽的措施是在主存存储器与CPU之间增加一个高速缓冲存储器来存储频繁的指令和数据,以提高访问操作的平均速度。Cache是一种存储空间小而存取速度却很高的一种存储器。 Cache的基本结构和工作原理:1.Cache工作结构Cache系统主要由:Cache、地址映射像、变换机结构以及Cache组策略和更新策略这三部分组成。2.Cache的工作原理它是基于程序访问局部性的,像这种对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象,就称为程序反问局部性。指令地址的分布是连续的。
课外拓展:
···设主存有(2^n)个单元,地址码为n位,将主存分页(块),每页有B个字节,则共分成M=(2^n)/B 页 ····在Cache中每页外加一个标记。主存地址为n位,且n=m+b,则可得出主存的页数 M=2^m,页内字节数B=2^b; Cache地址码为(c+b)位,Cache的页数为2^c