二、高速缓冲存储器(Cache)

介绍: 高速缓冲存储器是存在于主存与CPU之间的一级存储器, 由静态存储芯片(SRAM)组成,容量比较小但速度比主存高得多,接近于CPU的速度。很多大、中型计算机以及新近的一些小型机、微型机也都采用高速缓冲存储器。

大致原理: 高速缓冲存储器的容量一般只有主存储器的几百分之一,但它的存取速度能与中央处理器相匹配。***根据程序局部性原理(),正在使用的主存储器某一单元邻近的那些单元将被用到的可能性很大。因而,当中央处理器存取主存储器某一单元时,计算机硬件就自动地将包括该单元在内的那一组单元内容调入高速缓冲存储器,中央处理器即将存取的主存储器单元很可能就在刚刚调入到高速缓冲存储器的那一组单元内,于是中央处理器就可以直接对高速缓冲存储器进行存取。***在整个处理过程中,如果中央处理器绝大多数存取主存储器的操作能为存取高速缓冲存储器所代替,计算机系统处理速度就能显著提高,当然这样cache也成为了内存
主要由三大部分组成
1Cache存储体:存放由主存调入的指令与数据块。
2地址转换部件:建立目录表以实现主存地址到缓存地址的转换。
3替换部件:在缓存已满时按一定策略进行数据块替换,并修改地址转换部件。

地址映象与转换
地址映象是指某一数据在内存中的地址与在缓冲中的地址,两者之间的对应关系
直接映射(Direct Mapping)
全局关联映射(Fully Associative Mapping)
组关联映射(Set Associate Mappin
(三种映射方式的具体内容再更)

2 多级cache
a)多级cache的产生背景
cache被集中到cpu,这是因为设计者发现由于硅的局限性以及高时钟平率的要求,一级Cache的容量已经无法更大了。在CPU管芯面积不能太大的情况下,L1级高速缓存的容量不可能做得太大,一般服务器CPU的L1缓存的容量通常在32—256KB
b)二级cache的特性
1. 二级Cache的容量通常是一级容量的10倍甚至更多,因而能处理很多一级cache 缺失引起的访问。二级Cache访问通常小于10个处理器周期。
2. 主存访问时间通常大于100个处理器周期
制作材料,高速的动态ram(价格便宜,体积较小容量较大,速度较慢)
静态ram (集成度低导致体积大,贵,)

C)应用二级cache的好处
cache的应用原理本质是对内存中高频率内容的复制映射,利用使用一个大的二Cache来处理一级Cache的缺失,从而降低缺失代价。

你可能感兴趣的:(二、高速缓冲存储器(Cache))