计算机组成与体系结构——Cache——2020.11.21

(一)Cache-概念

  • 在计算机的存储系统体系中,Cache是访问速度最快的层次(若有寄存器,则寄存器最快)
  • 使用Cache改善系统性能的依据是程序的局部性原理
  • 如果以h代表对Cache的访问命中率,t1表示Cache的周期时间,t2表示主存储器周期时间,以只读操作为例,使用“Cache+主存储器”的系统的平均周期为t3,则:
    - t3 = h × t1 + (1-h) ×t2
    - 其中,(1-h)又称为失效率

(二)Cache-映象

  • 硬件直接控制
  • 直接相联映象:硬件电路较简单,但冲突率很高
  • 全相联映象:电路难于设计和实现,只适用于小容量的cache,冲突率较低
  • 组相联映象:直接相联与全相联的折中
  • 地址映象是将主存与Cache的存储空间划分为若干大小相同的页(或称为块)
    - 例如,某机的主存容量为1G,划分为2048页,每页512KB
    - Cache容量为8M,划分为16页,每页512KB

(三)Cache-全相联映象
计算机组成与体系结构——Cache——2020.11.21

  • 没有任何限制
  • 主存和Cache可以有任意的对应关系
  • 页表记录一下主存与Cache的对应关系
  • 将主存的地址放到Cache中,由于他们的页是一样的,所以页内地址也是一样的
  • 对于518KB,默认按字节存储,说明每页512K个存储单元——>219——>19位
  • 主存最大页是2048页,说明需要211,所以需要11位来存储就可以了
  • 主页页号都找到了,那么整个主存的具体地址就找到了
  • 如何找到对应的Cache的地址呢?根据页表,查主存页号对应的Cache页号

(四)Cache-直接相联映象
计算机组成与体系结构——Cache——2020.11.21

  • 主存不仅分页,还要分区
  • 每个分区的大小与Cache是一样的
  • 每个区的第一页只能放在Cache的第一页,依次递推
  • 如果指定的页,有东西了,那么就冲突了,因为只能放在指定的位置

(五)Cache-组相联映象
计算机组成与体系结构——Cache——2020.11.21

  • 先分区再分组
——高岸为谷,深谷为陵——