LAB2 PB13204003 施钰婷

实验二 Cache 模拟器


实验目的

  • 加深对Cache的基本概念、基本组织结构以及基本工作原理的理解;
  • 掌握Cache容量、相联度、块大小对Cache性能的影响;
  • 掌握降低Cache不命中率的各种方法以及这些方法对提高Cache性能的好处;
  • 理解LRU与随机法的基本思想以及它们对Cache性能的影响。

实现内容

  • 能够设置 Cache 总的大小
  • 能够设置 Cache 块的大小
  • 能够设置Cache 的映射机制:直接映射、n-路组相联
  • 能够设置 Cache 的替换策略:LRU、FIFO
  • 能够设置 Cache 的写策略:写回法、写直达法
  • 能够设置将 Cache 分为数据 Cache 和 指令 Cache
  • 能够设置预取策略

实验原理

Cache结构
  • 采用分层分级结构,越接近CPU则速度越快,存储空间越小。
LAB2 PB13204003 施钰婷_第1张图片
Cache分层结构
Cache功能
  • Cache可以协调从CPU到主存的读写速度差异和存储空间差异,通过若干层cache,以接近CPU的速度读取主存主存大小的存储空间。
  • 提供“缓存”的目的是为了让数据访问的速度适应CPU的处理速度,其基于的原理是内存中“程序执行与数据访问的局域性行为”,即一定程序执行时间和空间内,被访问的代码集中于一部分。
映射机制
  • 直接映射:每一个内存块地址都可通过模运算对应到一个唯一缓存块上。这是一种多对一映射:多个内存块地址须共享一个缓存区域。
  • 组相联映射:把存储空间组织成多个组,每个组有若干数据块。通过建立内存数据和组索引的对应关系,一个内存块可以被载入到对应组内的任一数据块上。
  • 全相连:内存中的数据块可以被放置到缓存的任意区域。
n路组关联
换页算法

电脑内存空间的大小固定,无法容纳服务器上所有的文件,所以当有新的文件要被置换入缓存时,必须根据一定的原则来替换掉适当的文件。

  • 先进先出算法(FIFO):最先进入的内容作为替换对象
  • 最久未使用算法(LRU):最久没有访问的内容作为替换对象
写策略
  • 写回法:将缓存中的页换回主存中时,将修改过的快加载回主存。
  • 写直达法:在修改缓存中的页时,直接也写回主存。

你可能感兴趣的:(LAB2 PB13204003 施钰婷)