第3章-存储系统.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
直接映射方式的优点是比较电路硬件结构简单,成本低。缺点是每个主存块只有一个固定的行位置可存放,容易产生冲突。因此适合大容量Cache采用。 -组相联映射方式:主存有256块,Cache有4行 全级联映射存放位置灵活,命中率高,但比较电路相对复杂;直接映射方式比较电路硬件结构简单,但位置固定,命中率低;两者的优缺点正好相反。组级联方式是两种方法的折中考虑。它将Cache分成u组,每组v行,主存块存放到哪个组是固定的,至于存到该组哪一行是灵活的,有如下函数关系: Cache的总行数m=u×v  块存放的组号q=j mod u 设4行Cache共分2组,每组2行,则允许存于Cache第: L0组:B0,B2,B4,共128块; L1组:B1,B3,B5,共128块; 字0 字1 字2 字3 …… 字0 字1 字2 字3 …… 字0 字1 字2 字3 B0 B7 B255 字2 Cache 0000001 L0 0000000 L0 0000011 L1 0100100 L1 0000011 1 10 CAM 2 2 0000011110 L0 L1 相等,命中 比较 标记 组相联映射方式中的每组行数v一般取值较小,这种规模的v路比较器容易设计和实现。而块在组中的排放又有一定的灵活性,冲突减少。 字0 字1 字2 字3 …… 字0 字1 字2 字3 …… 字0 字1 字2 字3 B0 B11 B255 字2 Cache 0000001 L0 0000000 L0 0000011 L1 0100100 L1 0000101 1 10 CAM 2 0000101110 L0 L1 比较 不相等没有读命中 组级联映射的主存地址表示成: 标记 组号 块内地址 字块2m-1 字块2c-r+1 字块2c-r + 1 字块2c-r 字块2c-r -1 字块1 字块0 … … … L3行 标记 L1行 标记 2c-1行 标记 L2行 标记 L0行 标记 2c-2行 标记 … … … … 0组 1组 D-1组 i= j mod D t位 t位 (D=2d=2c-r) Cache存储器(每组2r行) 主存储器 某一主存块 j 按模 D 映射到缓存的 第 i 组 中的 任一行 字块0 L1行 L0行 字块2c-r 字块2c-r+1 m位 块内 地址 主存字 块标记 t位 d位 b位 Cache 组号 替换策略 Cache工作原理要求它尽量保存最新数据,当新的主存块需要拷贝到Cache中,但存放此块的位置被其他主存块占用必然要产生替换。 替换问题与采用的地址映射方式有关,直接映射的Cache来说,只要把此特定位置上的原主存块换出Cache即可,不需要替换算法。对全相联和组相联Cache来说, 就要从允许存放新主存块的若干特定行中选取一行换出。采用何种方式决定决定将那一行换出就是替换策略。 常用的替换策略有三种: - 随机替换 - 最不经常使用(LFU)算法 - 最近最少使用(LRU)算法 -随机替换策略 从特定的行位置中随机地选取一行换出。在硬件上容易实现,且速度也比后两种策略快。缺点是很可能刚换出的行马上又要使用,降低了命中率和Cache工作效率。 -最不经常使用(LFU)算法 这种算法每行设置一个计数器。从0开始计数,每访问一次,被访行的计数器增1。当需要替换时将计数值最小的行换出,同时将这些行的计数器都清零。LFU算法将一段时间内被访问次数最少的那行数据换出,不能严格反映近期访问情况。 -最近最少使用(LRU)算法 LRU算法将近期内长久未被访问过的行换出。每行也设置一个计数器,Cache每命中一次,命中行计数器清零,其它各行计数器增1。当需要替换时,将计数值最大的行换出。这种算法保护了刚拷贝到Cache中的新数据行,有较高的命中率。 设在一个采用组相联映像方式的Cache中,主存有B0~B7共8块组成,访问时间是200ns;Cache有C0~C3共4行,分为2组。每行的大小为32个字,访问时间是20ns。采用LRU替换算法且Cache为空。一个程序执行过程中依次访问块地址流如下: B1,B4,B6,B3,B4,B6,B1,B4,B2,B5 写出主存地址的格式,并标出各字段的长度 画出Cache/主存之间各个块的映像对应关系 计算Cache/主存系统的平均访问时间以及效率。 标记 组号 行内字地址 1、主存地址格式如下:

文档评论(0)

gl5000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档