Cache的原理与地址映像机制讲课.pptx

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Cache原理 与地址映像机制;重点;1. 问题的提出;1. 问题的提出;主存块 调入 缓存;(1) 主存和缓存的编址; 命中率 命中率:CPU访问cache的次数占总访问次数的比例。设NC表示cache完成存取的总次数,NM表示主存完成存取的总次数,h为命中率,则有: h=NC/(NC+NM) 若tC表示命中时的cache访问时间,tm表示未命中时的主存访问时间,则cache/主存系统的平均访问时间ta为:            ta=htc+(1-h)tm 目标:以较小的硬件代价使cache/主存系统的平均访问时间ta越接近tc越好,用e表示访问效率表示。 设tm/tc=r则有: e= tc / ta=1/(r+(1-r)h) 命中率h越接近于1越好,r值以5~10为宜,不宜太大。;3. Cache 的 读 操作;;二、地址映射机制;二、地址映像机制;二、地址映像机制;检索过程:根据内存地址中的t位标记与cache的标记位相比较,然后将块地址与cache的块地址相比较,判断是否命中。 特点:硬件实现简单,成本低。但每个主存块只有一个固定的行可以存放。当cache的行数较少时发生冲突的可能性很大,频繁的置换会使cache的效率下降。 直接映射方式一般用于大容量的cache中。 ;二、地址映像机制;二、地址映像机制;全相联映射方式的检索过程:CPU发出内存地址的块号部分(s位)与cache中所有行中的标记部分同时比较,若某行的标记与要访问的块号相同,命中,则再根据块内地址(b位)从该行中读取相应字;否则,未命中,则按内存地址从主存中读取一个字。 优点:灵活,cache可以得到充分利用。但当行数较多时要实现所有行中的标记部分同时参与比较,电路实现困难。 全相联映射方式一般用于小容量cache。;二、地址映像机制;二、地址映像机制;组相联映射;检索过程:根据地址中的组地址找到cache的相应组,然后将该组的标记部分与内存地址的块号同时比较,判断是否命中。 特点:组内有一定的灵活性,而且因组内行数的减少,比较的硬件电路比全相联方式简单些。 组相联映射的每组的行数v一般取值较小,典型值为2,4,8,16。为强调比较器的规模和存放的灵活性,常称组相联为v路组相联。;例如: 设有一个cache的容量为2K字,每个块为16字,求 (1) 该cache可容纳多少个块? (2) 如果主存的容量是256K字,则有多少个块? (3) 主存的字地址有多少位?Cache 字地址有多少位? (4) 在直接映象方式下,主存中的第i块映象到cache中哪一个块中? ;★先进先出(FIFO)算法 把最先调入cache的字块替换出去 优点:实现容易、开销小 缺点:可能把一些常用的程序,如子程序、循环程序块,作为最早进入Cache块,替换出去 ;先进先出替换策略;★近期最少使用(LRU)算法 ??? LRU算法将近期内长久未被访问过的行换出。每行也设置一个计数器,cache每命中一次,命中行计数器清零,其它各行计数器增1。当需要替换时,将计数值最大的行换出。   这种算法保护了刚拷贝到cache中的新数据行,有较高的命中率。 ;近期最少使用替换策略;★随机替换   随机替换策略从特定的行位置中随机地选取一行换出。在硬件上容易实现,且速度也比前两种策略快。   缺点是降低了命中率和cache工作效率。

文档评论(0)

金不换 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档