第七章存储系统讲解.ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章 存储系统 7.1 存储系统的层次结构 7.2 高速缓冲存储器(cache) 7.2.1 Cache的工作原理 Cache的命中率 Cache的访问 7.2.2 Cache存储器组织 1. 地址映像 直接映像方式的优缺点 (2)全相联映像 (3)组相联映像 作业 p180 7.3 7.5 7.6 7.7 补充: 有一个“Cache - 主存”层次结构的存储器,主存容量为8块,Cache容量为4块,采用直接地址映像。 对于如下的主存块访问流0,1,2,5,4,6,4,7,1,2,4,1,3,7,2,如果开始时Cache内容为空,请列出每次访问后Cache各块的分配情况; 指出块命中的时刻; 求出Cache的命中率。 解:在直接地址映像方式下,主存块所对应的Cache块号为 2. 替换算法 习题7.12: 7.2.4 多层次Cache存储器 3. Cache的一致性问题 7.4 相联存储器 * * CPU CACHE 主存(内存) 辅存(外存) 根据各种存储器的存储容量、存取速度和价格比的不同,将它们按照一定的体系结构组织起来,使所放的程序和数据按照一定的层次分布在各种存储器中。 访存的局部性规律:程序对存储空间的访问有90%是局限于10%的区域内,而另外10%的访问则分布在其余的90%的区域中。 (1)时间局部性:如果一个存储单元被访问,则可能这个存储单元很快会被再次访问。 (2)空间局部性:如果一个存储单元被访问,则这个存储单元及其邻近的单元可能很快会被访问。 Cache介于CPU和主存之间,由小容量的SRAM和高速缓存控制器组成。它的工作速度数倍于主存,全部功能由硬件实现。由于转换速度快,软件人员丝毫未感到Cache的存在,这种特性称为Cache的透明性。 Cache内部是用同主存内部同样大小的块组成,故由于Cache存储容量小,所以块的数目少。 在Cache中,每一块外加有一个标记,指明它是主存的哪一块的副本,所以该标记的内容相当于主存中块的编号。块内字节数与主存相同(如图7.2)。 字块2c-1 . . . . . . 标记 cache 字块0 字块1 0 1 2c-1 . . . . . . 主存 字块0 字块1 0 1 2m-1 块2M-1 Cache地址 主存地址 主存块号 块内地址 块号 块内地址 m位 b位 c位 b位 为了说明标记是否有效,每个cache块还设置有一个“有效”位。 程序执行时,如果cache不命中,则将该数据或指令块从主存中的调入cache的某一块,并且将该块的“有效”位置1。 当CPU发出读请求时,主存地址的高m位或者其中几位和cache的标记做比较: 如果能找到一个标记与其相等,则说明需要的数据已经在cache中,这种情况称为访问cache命中(hit)。此时直接访问cache即可。 如果找不到(所有的标记都与之不相等),则说明需要的数据尚未调入cache,这种情况称为访问cache不命中(miss)。此时需要从主存将该数据所在的整个字块调入cache。 命中率:CPU所要访问的信息在cache中的比率 影响命中率的因素:cache的容量、块的大小等 平均存取时间 设cache的存取时间为tc ,命中率为h,主存的存取时间为tm,则平均存取时间为:h* tc +(1-h)*(tc + tm) (1)读 Memory Cache CPU Memory Cache Memory CPU 不命中 Cache CPU 命中 (2)写 CPU Cache, CPU Memory CPU Cache , 设置标志位 Cache Memory 命中 CPU Memory 不命中 Write through Write back (1)主存的块放入cache的什么地方?即地址映像方法,根据主存地址来构成cache地址,这样的地址间的逻辑关系,称为地址映像。(程序在执行时,应将主存地址变换成cache地址,这个过程,叫做地址变换) (2)cache在放满后怎么替换块?即块的替换策略。它决定将哪一块移出去以调入要访问的块。 (3)写cache时,是否写主存?即块的更新策略。它决定了在写操作中,何时将数据写入主存。 Cache的设计中要考虑的问题: 三种地址映像方法: 直接映像、全相联映像和组相联映像 (

文档评论(0)

美洲行 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档