主存
结构
位数关系
MDR=数据线宽度
MAR=地址线宽度
数据线宽度与机器字长
MDR与存储字长
MAR与主存容量
线与引脚
普通存储器
DRAM
地址线复用
行列选通线代替片选
编址方式
按字节编址
按字编址
按半字编址
扩展
字扩展
增加存储单元(存储字)个数
逻辑上组成组
地址高位用于片选
位扩展
增加存储字长
逻辑上黏在一起
无需片选
和低位交叉编址的同时启动类似
字位扩展
存储周期与总线周期(多模块存储器)
边界对其
K字节的数据的起始地址必须是K的倍数
大端和小端
大端
- 数据高位放在地址低位
- 与阅读顺序一致
- 高字节为字地址
小端
- 数据高位放在地址高位
- 与阅读顺序相反
- 低字节为字地址
Cache
原理
地址结构
普通主存地址
直接映射
组相连
全相连
cache行的内容
访存过程
1.CPU给出主存地址
2.根据主存地址中间的cache行号字段找到对应的cache行
3.对比cache行和主存地址的cache位,并观察cache行的有效位
平均访问时间
p*Tc+(1-p)*(Tc+Tm)
Tc+(1-p)Tm
写策略
写命中
全写法
同时写cache和主存
回写法
信息只被写入cache而不写入主存
只有此块被替换出时才写回主存
写不命中
写分配法
先在主存块中更新相应存储单元,然后分配一个cache行,更新主存块进去
非写分配法
仅更新主存单元而不装入主存块到cache中
命中率
如果每个对象按顺序访问并且不会回头,在cache发生替换之前可以只分析一个块的命中率来代替整体
注意访问的对象是否能把cache塞满,或者放不下时会塞满cache几轮,因为替换算法会影响到后续的命中率
虚拟内存


虚拟存储的原理
虚拟地址空间
虚页号+页内地址
地址连续
每个进程的虚拟地址空间一样大
主存地址空间
实页号(页框号)+页内地址
同一个进程的某些存储单元的主存地址通常不连续
地址转换的过程
磁盘
结构
磁头
柱面
扇区
平均存取时间
寻道时间+旋转延迟时间+传输时间