目录
一、Cache基本概念和原理
缓存Cache的功能:弥补CPU和主存之间的速度差异,提高CPU访问主存的平均速度
- 空间局部性:在最近的未来要用到的信息(指令和数据),很可能和现在正在使用的信息在存储空间上是相邻的。(数组元素、顺序执行的指令代码)
- 时间局部性:在最近的未来要用到的信息,很可能是现在正在使用的信息。(循环执行的指令代码)
- 基于局部性原理,CPU将当前访问的地址“周围”的部分数据放到Cache中
基于局部性原理,Cache将当前访问的地址“周围”的部分数据放入Cache中,如何界定周围?
二、Cache和主存的映射关系
不同映射方式的主存地址划分
三、Cache替换算法
四、Cache写策略
Cache的多层次设计的考虑因素:
- Cache的总容量
- Cache的行大小
- Cache的地址映射方式
- 指令和数据共用一个Cache还是分用不同Cache
- Cache的层次
分离Cache:分为指令Cache和数据Cache
- 可消除流水线中取指令部件和执行单元间的竞争(适用于超标量流水线)
- 是Cache结构的发展趋势
单级Cache和多级Cache:将Cache分为一级(L1)、二级(L2)、三级(L3),提高性能