跳至主要內容

2.主存储器


警告

双端口RAM已经从408删除,只需要掌握多模块存储器

SRAM 和 DRAM

相关信息

  1. SRAM:存储元是用双稳态触发器(六晶体管 MOS),非破坏性读出,一般用于高速缓冲存储器
  2. DRAM:利用存储元电路中栅极电容上的电荷来存储信息,存取速度比 SRAM 的慢,每隔一定时间必须刷新[1],通常取2ms,称为刷新周期
    1. 集中刷新
    2. 分散刷新
    3. 异步刷新

提示

  1. 每次刷新多少存储单元?以行为单位,每次刷新一行
  2. DRAM的地址复用技术,在送地址的时候分两次送,这样地址线就只需要n/2根

这种一维的存储器,当n很大时译码器输出端需要连接的线比较大,实现难度大

image.png
image.png

进而提出二维的存储器,前n/2位表示行

image.png
image.png

DRAM 的读写周期

image.png
image.png

两者比较

SRAM 和 DRAM 各自的特点
SRAM 和 DRAM 各自的特点

注意 DRAM 送行列地址是分两次的

相关习题

image.png
问的是芯片的引脚数

只读存储器

ROM的类型

根据制造工艺的不同,ROM可分为掩模式只读存储器(MROM)、一次可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、Flash存储器和固态硬盘(SSD)。

主存储器的基本组成

主存储器的基本组成框图
主存储器的基本组成框图

相关信息

  • 指令执行过程中需要访问主存时,CPU 首先把被访问单元的地址送到 MAR 中,然后通过地址线将主存地址送到主存中的地址寄存器,以便地址译码器进行译码选中相应单元,同时 CPU 将读写信号通过控制线送到主存的读写控制电路。如果是写操作,那么CPU 同时将要写的信息送到MDR 中,在读写控制电路的控制下,经数据线将信号写入选中的单元;如果是读操作,那么主存读出选中单元的内容送到数据线,然后送到MDR 中。
  • 数据线的宽度与 MDR 的宽度相同,地址线的宽度与 MAR 的宽度相同
  • DRAM 芯片容量较大,地址位数较多,为了减少芯片的地址引脚数,通常采用地址引脚复用技术,行地址和列地址通过相同的引脚分先后两次输入,这样地址引脚数可减少一半

多模块存储器

单体多字存储器

一次并行读出 m 个字,地址必须顺序排列并处于同一存储单元。

单体多字系统在一个存取周期内,从同一地址取出 m 条指令,然后将指令逐条送至 CPU 执行,即每隔 1/m 存取周期,CPU 向主存取一条指令。这显然提高了单体存储器的工作速度。

多体并行存储器

image.png
image.png

(1)高位交叉编址(顺序方式)

访问一个连续主存块时,总是先在一个模块内访问,等到该模块访问完才转到下一个模块访问,CPU 总是按顺序访问存储模块,各模块不能被并行访问,因而不能提高存储器的吞吐率

(2)低位交叉编址(交叉方式)

模块序号 =访存地址%存储器交叉模块数

设模块字长等于数据总线宽度,模块存取一个字的存取周期为TT,总线传送周期为rr,为实现流水线方式存取,存储器交叉模块数应大于等于

m=Tr m=\frac{T}{r}

这样,连续存取mm个字所需的时间为

t1=T+(m1)r t_{1}=T+(m-1)r

注意

  • 交叉编址默认低位交叉

  1. 刷新是有存储器自动完成的不需要cpu控制 ↩︎