三、存储器层次结构
存储元 存储单元 存储器
为了解决对存储器要求容量大、速度快、成本低三者之间的矛盾,目前通常采用多级存储器体系结构,即使用高速缓冲存储器、主存储器和外存储器
存储容量、存储时间、存储器带宽、存储周期
地址线、数据线数量的确定:
存储容量为2r*m位(存储单元数量为2r,每个存储单元有m个bit位)
需要:地址线r根,数据线m根
SRAM 静态随机读写存储器
特点:容量小、功耗高、速度快
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下
(为什么要双译码) (怎样读出多个位)
单译码 适用于小容量存储器
双译码 适用于大容量存储器
DRAM存储元
四管动态存储元
刷新 假读:
刷新周期:从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍为止的时间间隔
DRAM的刷新:动态MOS存储器采用“读出”方式进行刷新,从上一次对整个存储器刷新结束到写一次对整个存储器全部刷新一遍为止,这一段时间间隔叫刷新周期
常用的刷新方式有三种:集中式、分散式、异步式
集中式刷新
在整个刷新间隔内,前一段时间重复进行读/写周期或维持周期,等到需要进行刷新操作时,便暂停读/写或维持周期,而逐行刷新整个存储器,它适用于高速存储器
分散式刷新
在整个刷新间隔内,前一段时间重复进行读/写周期或维持周期,等到需要进行刷新操作时,便暂停读/写或维持周期,而逐行刷新整个存储器,它适用于高速存储器
异步式刷新
在2ms内分散的把128行刷新一遍,2ms/128=15.5μs,每隔15.5μs刷新一行
ROM和RAM
ROM和RAM都是采用随机存取方式进行信息访问(非随机存取:磁盘、磁带、光盘,需要旋转、转动,顺序存取)
存储器与CPU连接
存储容量扩充
位扩展法:
字扩展法:
字位扩展:
适用于给定的芯片字长位数较短(位数少),同时给定的芯片存储容量较小(字数少),此时需要字位同时扩展,连接时:每个芯片具有不同的地址线、不同的数据线
双端口存储器
双端口存储器是指同一个存储器具有两组相互独立的读写控制线路,是一种高速工作的存储器
它提供了两个相互独立的端口,即左端口右端口,分别具有各自的地址线、 数据线和控制线,可以对存储器中任何位置上的数据进行独立的存取操作,可以实现一个存储器挂接两个CPU
多模块交叉存储器
顺序方式、交叉方式
cache存储器
引入基础:程序的局部性原理——程序对存储空间90%的访问局限于存储空间10%的区域中,另外10%的访问则分布在存储空间90%的区域中
时间局限性(被再次访问)、空间局限性(左邻右舍被再次访问)
CPU访问主存/cache:按字访问
cache与主存之间:以块为信息交互
cache的命中率应尽可能接近100%
cache的平均访问时间
全相联映射:
直接映射:
组相联映射:
替换策略
常用替换算法:最不经常使用法、近期最少使用法、随机替换、先进先出法
cache的写操作策略
虚拟存储器
1.页式虚拟存储器
2.段式虚拟存储器
3.段页式虚拟存储器
替换算法