多层次存储器

存储器概述

存储器分类

存储器是计算机系统中的记忆设备,用来存放程序和数据。
构成存储器的存储介质,目前主要采用半导体器件和磁性材料。一个双稳态半导体电路或一个CMOS晶体管或磁性材料的存储元,均可以存储一位二进制代码。这个二进制代码位是存储器中最小的存储单元,称为存储位元。由若干存储位元组成一个存储单元,然后再由许多存储单元组成一个存储器
根据存储材料的性能及使用方法不同,存储器有各种不同的分类方法。

  1. 存储介质: 半导体存储器,磁表面存储器;
  2. 存取方式: 随机存储器,顺序存储器;
  3. 存储内容可变性: 只读存储器(ROM),随机读写存储器(RAM);
  4. 信息易失性: 易失性存储器,非易失性存储器;
  5. 系统中的作用: 内部存储器、外部存储器;(主存储器、高速缓冲存储器、辅助存储器、控制存储器)

存储器的分级

CPU能直接访问的存储器称为内存储器,它包括cache和主存储器。CPU不能直接访问外存储器,外存储器的信息必须调入内存储器后才能为CPU进行处理。
多层次存储器_第1张图片
多层次存储器_第2张图片

主存储器的技术指标

字存储单元(Word): 存放一个机器字长的存储单元;
字节存储单元(Byte): 存放一个字节的单元;
存储容量: 存储器中可以容纳存储单元总数;
存取时间: 又称存储器访问时间,一次读操作命令发出到该操作完成,将数据读出到数据总线上所经历的时间;
存储周期: 指连续启动两次读操作所需间隔的最小时间;
存储器带宽: 单位时间里存储器所存取的信息量,通常以位/秒(b/s)或字节/秒(B/s)做度量单位。

SRAM存储器

基本的静态存储元阵列

多层次存储器_第3张图片
所有的SRAM的特征是用一个锁存器(触发器)作为存储元。只要直流供电电源一直加在这个记忆电路上,它就无限地保持记忆的1状态或0状态。如果电源断电,那么存储的数据(1或0)就会丢失。
任何一个SRAM,都有三组信号线与外部打交道:①地址线,上图中有6条即 A 0 A_0 A0 A 1 A_1 A1 A 2 A_2 A2 A 3 A_3 A3 A 4 A_4 A4 A 5 A_5 A5,它指定了存储器的容量是 2 6 = 64 2^6=64 26=64个存储单元。②数据线,上图中有4条即 I / O 0 I/O_0 I/O0 I / O 1 I/O_1 I/O1 I / O 2 I/O_2 I/O2 I / O 4 I/O_4 I/O4,它指定了存储器的字长是4位,因此存储位元的总数是64×4=256。③控制线,上图中 R / W ^ R/\widehat{W} R/W ,它指定了对存储器进行读( R / W ^ R/\widehat{W} R/W 高电平),还是进行写( R / W ^ R/\widehat{W} R/W 低电平)。注意,读写操作不会同时发生。
地址译码器输出有64条选择线,我们称为行线,它的作用是打卡每个存储位元的输入与非门。当外部输入数据为1时,锁存器便记忆了1;当外部输入数据为0时,锁存器便记忆了0。

基本的SRAM逻辑结构

多层次存储器_第4张图片
图(a)为结构图;图(b)为逻辑图。
图(a)表示存储容量为32K×8位的SRAM逻辑结构图。它的地址线共15条,其中x方向8条( A 0 A_0 A0 ~ A 7 A_7 A7),经行译码输出256行,y方向7条( A 8 A_8 A8 ~ A 14 A_{14} A14),经列译码输出128列,存储阵列为三维结构,即256行×128列×8位。双向数据线有8条,即 I / O 0 I/O_0 I/O0 ~ I / O 7 I/O_7 I/O7。向SRAM写入时,8个输入缓冲器被打开,而8个输出缓冲器被关闭,因而8条I/O数据线上的数据写入到存储阵列中去。从SRAM读出时,8个数据缓冲器被打开,8个输入缓冲器被关闭,读出的数据送到8条I/O数据线上。
控制信号中 C S ‾ \overline{CS} CS是片选信号, C S ‾ \overline{CS} CS有效时(低电平),门 G 1 G_1 G1 G 2 G_2 G2均被打开。 O E ‾ \overline{OE} OE为读写使能信号, O E ‾ \overline{OE} OE有效时(低电平),门 G 2 G_2 G2开启,当写命令 W E ‾ \overline{WE} WE=1时(高电平),门 G 1 G_1 G1关闭,存储器进行读操作。写操作时, W E ‾ \overline{WE} WE=0,门 G 1 G_1 G1开启,门 G 2 G_2 G2关闭。注意,门 G 1 G_1 G1 G 2 G_2 G2是互锁的,一个开启时另一个必定关闭,这样保证了读时不写,写时不读。

读/写周期波形图

多层次存储器_第5张图片
在读周期中,地址线先有效,以便进行地址译码,选中存储单元。为了读出数据,片选信号 C S ‾ \overline{CS} CS和读出使能信号 O E ‾ \overline{OE} OE也必须有效(由高电平变为低电平)。从地址有效开始经 t A Q t_{AQ} tAQ(读出)时间,数据总线I/O上出现了有效的读出数据。之后 C S ‾ \overline{CS} CS O E ‾ \overline{OE} OE信号恢复高电平, t R C t_{RC} tRC以后才允许地址总线发生改变。 t R C t_{RC} tRC时间我们叫读周期时间
在写周期中,也是地址线先有效,接着片选信号 C S ‾ \overline{CS} CS有效,写命令 W E ‾ \overline{WE} WE有效(低电平),此时数据总线I/O上必须置写入数据,在 t W D t_{WD} tWD时间段将数据写入存储器。之后撤消写命令 W E ‾ \overline{WE} WE C S ‾ \overline{CS} CS。为了写入可靠,I/O线的写入数据要有维持时间 t h D t_{hD} thD C S ‾ \overline{CS} CS的维持时间也比读周期长。 t W C t_{WC} tWC时间叫做写周期时间。为了控制方便,一般取 t R C t_{RC} tRC= t W C t_{WC} tWC,通常叫做存取周期

DRAM存储器

DRAM存储元的记忆原理

SRAM存储器的存储元是一个触发器,它具有两个稳定的状态。而DRAM存储器的存储元是由一个MOS晶体管和电容器组成的记忆电路。其中MOS管作为开关使用,而所存储的信息1或0则是由电容器上的电荷量来体现——当电容器充满电荷时,代表存储了1,当电容器放电没有电荷时,代表存储了0。
多层次存储器_第6张图片
图(a)表示写1到存储元。此时输出缓冲器关闭、刷新缓冲器关闭,输入缓冲器打开(R/ W ‾ \overline{W} W为低),输入数据 D I N D_{IN} DIN=1送到存储元位线上,而行选线为高,打开MOS管,于是位线上的高电平给电容器充电,表示存储了1。
图(b)表示写0到存储元。此时输出缓冲器和刷新缓冲器关闭,输入缓冲器打开,输入数据 D I N D_{IN} DIN=0送到存储元位线上;行选线为高,打开MOS管,于是电容上的电荷通过MOS管和位线放电,表示存储了0。
图©表示从存储元读出1。输入缓冲器和刷新缓冲器关闭,输出缓冲器/读放打开(R/ W ‾ \overline{W} W为高)。行选线为高,打开MOS管,电容上所存储的1送到位线上,通过输出缓冲器/读出放大器发送到 D O U T D_{OUT} DOUT,即 D O U T D_{OUT} DOUT=1。
图(d)表示图©读出1后存储元重写1。此时输入缓冲器关闭,刷新缓冲器打开,输出缓冲器/读放打开,读出数据 D O U T D_{OUT} DOUT=1又经刷新缓冲器送到位线上,再经MOS管写到电容上。

DRAM芯片的逻辑结构

多层次存储器_第7张图片
与SRAM不同的是:
(1)增加了行地址锁存器和列地址锁存器。
(2)增加了刷新计数器和相应的控制电路。

读/写周期、刷新周期

电容的衰减特性,需要每隔8ms到16ms(早期芯片2ms)进行一次充电叫刷新。

刷新方式有两种:
集中式刷新:所有行在一个刷新周期中都被刷新;
分散式刷新:每一行刷新插入到正读/写周期之中;

分布式刷新:集中式刷新与分散式刷新相结合的方式。
多层次存储器_第8张图片

多层次存储器_第9张图片
多层次存储器_第10张图片

你可能感兴趣的:(计算机组成原理)