第十讲(cache存储器)!.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文档。上传文档
查看更多
第3章 内部存储器 南大科技学院 主讲 罗少彬 Email :luoshaobin2010@163.com Phone:83#####Cache概念: (1)CPU与主存储器之间的一种高速缓冲装置 (2)Cache-主存层次结构:由硬件变换地址和控制调度。 Cache具有如下特点: ① 位于CPU与主存之间,是存储器层次结构中级别最高的一级; ② 容量比主存小,目前一般有数KB到数MB; ③ 速度一般比主存快5--10倍,通常由存储速度高的SRAM组成; ④ 其内容是主存的部分副本; ⑤ 其用途可用来存放指令,也可用来存放数据; ⑥ 快存的功能全部由硬件实现,并对程序员透明。 例:设有一个cache的容量为2K字,每个块为16字,求 (1) 该cache可容纳多少个块? (2) 如果主存的容量是256K字,则有多少个块? (3) 主存的地址有多少位?cache地址有多少位? (4) 在直接映象方式下,主存中的第i块映象到cache中哪一个块中? (5) 进行地址映象时,存储器的地址分成哪几段?各段分别有多少位? 先进先出替换策略 近期最久未使用替换策略 直接映象的块分配情况 访问顺序 1 2 3 4 5 6 7 8 地址 22 26 22 26 16 4 16 18 块分配 情况 22 操作状态 调进 22 26 调进 22 26 命中 22 26 命中 22 26 16 调进 22 4 16 26 调进 22 16 26 4 命中 22 16 18 4 替换 Cache的容量和块的大小是影响Cache的效率的重要因素。 一般来说,Cache的存储容量比主存的容量小得多; 但不能太小,太小会使命中率太低; 也没有必要过大,过大不仅会增加成本,而且当容量超过一 定值后,命中率随容量的增加将不会有明显地增长。 但随着芯片价格的下降,Cache的容量不断增大,已由几K发展到几十K,甚至到几百K字节。 因此,cache容量是总成本价与命中率的折衷值。 如:80386的主存最大容量为4G,与其配套的cache容量为 16KB或32KB,其命中率为95%。 Cache容量与命中率 块长与命中率 块长与命中率的关系更为复杂,它取决于程序的局部特性。块长的最优值很难确定,通常: 每块取4至8个可编址单位(字或字节)较好; 也可取一个主存周期所能调出主存的信息长度。 例如,CARY-1的主存是16个交叉体,每个体为单字宽, 其指令cache的块长为16个字; IBM 370/168机主存是4体交叉,每个体宽为64位 (8个字),其cache块长为32个字。 Cache存储器组织 Cache基本原理 替换策略与写操作策略 奔腾PC机的Cache 本讲主要内容 替换策略 当一个新的主存块要调入到cache,而允许存放此块的行位置都被其它主存块占满时,就要产生替换,因为cache工作原理要求它应尽量保存最新的数据。 (1)对于采用直接映射方式的cache来说: 因一个主存块只有一个特定的行位置可存放,所以问题解决很简单,把此特定行位置上的原主存块妥善处理后,换出Cache即可。 (2)对于全相联的cache来说,它的全部行都是可被替换的特定行;而组相联的cache中同组各路的行都是可被替换的特定行: 这样就要从允许存放新主存块的若干特定行中选取一行换出。 替换问题与cache的组织方式紧密相关 如何选取就涉及到替换策略或称替换算法的采用。以硬件 实现的常用算法主要有以下三种。 FIFO(First In First Out)算法是把一组中最先调入 Cache的字块替换出去,不需要随时记录各个字块的使用情 况,所以实现容易,开销小。 (1)先进先出(FIFO)算法   LRU (Least Recently Used)算法是将最近最少使用的行换出。需要二维计数,实现复杂,速度慢。 LFU (Least Frequently Used)算法是将最久未被访问过的行换出。 方法: 每行设置一个计数器,cache每命中一次,命中行计数器清零,其它各行计数器增1,因此它是未访问次数计数器。当需要替换时,比较各特定行的计数值,将计数值最大的行换出。这种算法显然保护了刚拷贝进新数据的行,符合cache工作原理,因而使

文档评论(0)

风凰传奇 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档