笔记整理来源王道考研
存储器的基本概念
分类
按存储介质
- 半导体存储器
- 磁表面存储器(具有非易失性)
- 磁盘(直接存取)
- 磁带(顺序存现)
- 磁芯存储器
- 光盘存储器(不易失性)
按存取方式
- 随机存储器RAM
- 静态(触发器原理)
- 动态(电容原理)
- 只读存储器ROM(只能读,不能写)
- 串行访问存储器(按照其物理地址的先后顺序寻找地址)
性能指标
性能指标
速度,容量,每位价格(位价)
- 一般来说,速度越高,位价就越高;容量越大,位价就越低;容量越大,速度必越低
层次化结构
主存简单模型和寻址概念
主存储器
- 存储元<存储单元<存储体(都是物理实体)
- 存储容量=存储单元个数*存储字长 (按二进制位)
- 存储容量=存储单元个数*存储字长/8 (按字节总数)
存储容量256MB
,2^8\*2^10\*2^10
Byte,对应28位地址线位数
K–M--G–T
- n位地址–2^n个存储单元(和MAR位数相同)
- 片选线–芯片的控制开关
寻址
总容量1KB
,即1024Byte
,地址线10位,10根
- 按字节寻址,
1K
个单元,每个单元1B
- 按字寻址,256个单元,每个单元
4B
多字节存放
- 大端方式:字节从左到右,高位字节在高位地址存放
- 小端方式:字节从右到左,高位字节在低位地址存放(符合计算机的思维)
半导体存储器RAM
半导体存储芯片的基本结构
- 地址线:单向输入,其位数与存储字的个数有关
- 数据线:双向的,其位数与读出或写入的数据位数有关
随机存取存储器
- 静态随机存储器
- 动态随机存储器
DRAM的刷新
-
刷新周期:
2ms
,(电容上的电荷只能维持2ms
) -
每次刷新多少存储单元:以行为单位,每次刷新一行存储单元
-
为什么要用行列地址:减少选通线的数量
-
如何刷新:有硬件支持,读出一行的信息后重新写入,占用1个读/写周期
-
在什么时候刷新
读写周期
0.5us
,有三种不同的思路
SARM的读周期
存取周期=存取时间+恢复时间
SARM的写周期
半导体存储器ROM
特点
- 非易失性,可靠性高
- 结构简单,位密度比RAM高
分类
主存与CPU的连接
主存容量扩展-位扩展
多片芯片为一组
主存容量扩展-字扩展
线选法 | 译码片选法 |
---|---|
n条线–>n个选片信号 | n条线–>2^n选片信好 |
电路简单 | 电路复杂 |
地址空间不连续 | 地址空间可连续,可以增加逻辑设计 |
因为这些芯片同一时间只能有一个工作,所以通过译码片对不同的芯片进行控制,n条线对应2^n选片信号
译码器
“使能端口”可以控制移码器的工作状态,在没有O的端口设置1,其它设置0,就能使译码器正常工作;其它的编码都不能使译码器正常工作
字位同时扩展
例题
双口RAM和多模块存储器
单体多字存储器
- 由于程序和数据在存储体内是连续存放的,因此CPU取出的信息也是连续的
多体并行存储器
- 采用多体模块组成的存储器,每个模块有相同的容量和存取速度,它们既能并行工作,又能交叉工作
m个模块组成的地位交叉编址存储器,可以将带宽提升为m倍
流水线方式
- 假设低位交叉的存储器模块数为
n
,存取周期为T
,总线传输周期为t
,那么当采用流水线方式存取时,应满足T=nt
; - 为了保证启动某体后,经过
nt
时间再次启动该体时,它的上次存取操作已经完成,要求低位交叉存储器的模块数大于等于n
- 连续存储
n
个字所需的时间t'
为
t ′ = T + ( n − 1 ) t t'=T+(n-1)t t′=T+(n−1)t
局部性原理及性能分析
高速缓冲存储器
- 由于
I/O
设备向主存请求的级别高于CPU
访存 - 为了避免
CPU
与I/O
设备争抢访存,可在CPU
与主存之间加一级缓存,主存可将CPU
要取的信息提前送至缓存,一旦主存在与I/O
设备交换时,CPU
可直接从缓存中读取信息。
- 空间局部性:在最近的未来要使用到信息(指令和数据),很可能与现在正在使用的信息在存储空间上是邻近的
- 时间局部性:在最近的未来要使用的信息,很可能是现在正在使用的信息
使用高速缓冲存储器作为中介,将
CPU
要使用的数据从主存中取出放在缓冲Cache
中,然后Cache
和CPU
直接对话,提高访问效率
例题
直接访问主存
先访问Cache,没有命中的话,再去访问主存
地址映射方式
- 主存中的块放到Cache的哪个位置?
- 空位随意放:全相联映射
- 对号入座:直接映射
- 按号分组,组内随意放:组相联映射
- Cache满了如何处理?
- 随机算法
- 先进先出算法
- 近期最少使用算法
- 最不经常使用算法
- 空位随意放
- 对号入座(取余方法)
- 按号分组,组内随意放
替换算法和写策略
- 随机算法
- 先进先出算法
- 近期最少使用算法
- 最不经常使用算法
- 全相联映射
- 直接映射
- 组相连映射(二路)
先进先出
近期最少使用
写策略——命中
- 写回法
-
全写法
写策略——没有命中
-
写分配法
-
非写分配法
写回法搭配写分配法
全写法搭配非写分配法
例题
- 不存在替换问题,因为Cache没有满,而且是从上到下挨个存储的
虚拟存储器
https://blog.csdn.net/chen1083376511/article/details/81902755
- 页式虚拟存储器
- 段式虚拟存储器
- 段页式虚拟存储器
快表
例题