[计算机体系结构]第5章存储层次.ppt

  1. 1、本文档共108页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 存 储 层 次 5.1 存储器的层次结构 存储器是计算机的核心部件之一,其性能直接关 系到整个计算机系统性能的高低。存储器的三个主 要指标是:速度、容量和价格(即每位价格)。如何 以合理的价格,设计容量和速度满足计算机系统需 求的存储器系统,始终是计算机体系结构设计中的 关键问题之一。 解决问题的办法必须切合实际地综合考虑:从实 现“容量大、价格”的要去来看,应采用能提供大容 量技术的存储器技术;但从满足性能需求的角度来 看,又应采用昂贵且容量较小的快速存储器。走出 这种困境的唯一方法,就是采用多种存储技术,构 成存储器的层次结构,如图5.1所示。 在多级存储层次中,最靠近CPU的M1速度最快、 容量最小、价格最高;而远离CPU的Mn则是速度最 慢、容量最大、价格最低。 存储系统的设计目标是:M1的速度,Mn的容量和 价格。 层次存储器设计的依据:程序局部性原理。 在层次存储中,靠近CPU的存储器中的数据一般 都是其下一层存储器中数据的子集。 CPU访存时的基本原则:有近及远,首先是访问 M1 , 若在M1中找不到所要的数据,就要访问M2 , 将包含所需数据的块或页面调入M1 。若在M2中还 找不到,就要访问M3 ,依此类推。如果所有层次中 都没有,就出现错误。。 5.1.2 存储层次的性能参数 研究方法:层次存储器基本问题通过两层存储器 结构进行研究。 对于由M1和M2构成的两级存储层次结构,假设 M1、M2的容量、访问时间和每位价格分别为S1、 TA1、C1和S2、TA2、C2。 1. 存储层次的平均每位价格 显然,当S1S2时,C ? C2。 2. 命中率H 命中率为CPU访问存储系统时, 在M1中找到所需信息的概率。 访问M1和M2的次数为N1和N2。 不命中率或失效率F是指CPU访存时在M1找不到所 需信息的概率。 3. 平均访问时间TA 分两种情况来考虑CPU的一次访存: (1)当命中时,访问时间即为TA1。 TA1常称为命中 时间(hit-time)。 (2)大多数二级存储层次结构下,当不命中M1时, 就必须从M2中访问这个字,并把包含所请求的字的 信息块传送到M1 ,之后CPU才能访问这个字。假设 传送一个信息块所需的时间为TB,则不命中时的访 问时间为: TA2+TB=TA1+TM 其中TM=TA2+TB,它为从向M2发出访问请求到把整 个数据块调入M1中所需的时间。TM常称为失效开销。 根据以上分析可知: TA=HTA1+(1-H)(TA1+TM ) =TA1+(1-H)TM 或 TA=TA1+FTM 5.1.3 “Cache-主存”和“主存-辅存”层次 1. “Cache-主存”层次 CPU和主存之间在性能上的差距越来越大,如图 5.2所示。现代计算机都采用Cache来解决这个问题。 “Cache-主存”层次的工作几乎完全由硬件实现, 因此它不但对应用程序员是透明的,而且对系统程 序员几乎也是透明的。 2. “主存-辅存”层次 为了弥补主存容量,在主存外面增加一个容量更 大、每位价格更低、但速度更慢的存储器(称为辅存, 一般是硬盘)。“它们依靠辅助软硬件的作用,构成 一个整体,如图5.3所示。主存-辅存”层次常被用来 实现虚拟存储器,向编程人员提供大量的程序空间。 3. “Cache-主存”层和“主存-辅存”层的简单比较 表5.1对“Cache-主存”层和“主存-辅存”层做了一个 简单的比较。 5.1.4 两级存储层次之间的四个基本问题 对于具体存储层次而言,将研究一下四个问题: 1. 当把一个块调入高一层(靠近CPU)存储器时,可以放到哪些位置上?(映象规则) 2. 当要访问的块在高一层存储器时,如何找到该块?(查找算法) 3. 当发生失效时,应替换哪一块?(替换算法) 4. 当进行写访问时,应进行哪些操作?(写策略) 5.2 Cache基本知识 Cache用于解决上述四个基本问题,即映象规则、 查找算法、替换算法以及写策略。 Cache是按块进行管理的,Cache和主存均被分割成 大小不同的块,信息以块为单位调入Cache。 CPU的访存地址被分割成块地址和块内地址两部分: 主存地址: 块地址 块内位移 主存块地址用于查找在Cache中的位置,块内位移 用于确定所访问的数据在该块中的位置。 5.2.1 映象规则 三种映象规则如图5.4所示。 1. 全相联:主存中的任一块可以被放置到Ca

您可能关注的文档

文档评论(0)

***** + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档