[理学]2007计算机组成与结构7.ppt

  1. 1、本文档共262页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]2007计算机组成与结构7

这种系统不断发展和完善,就逐步形成了现在广泛使用的虚拟存储系统。 在系统中,应用程序员可用机器指令地址码对整个程序统一编址,如同程序员具有对应这个地址码宽度的全部虚存空间一样。 该空间可以比主存实际空间大得多,以致可以存得下整个程序。这种指令地址码称为虚地址(虚存地址、虚拟地址)或逻辑地址,其对应的存储容量称为虚存容量或虚存空间;而把实际主存的地址称为物理地址或实(存)地址,其对应的存储容量称为主存容量、实存容量或实(主)存空间。 在速度方面,计算机的主存和CPU一直保持了大约一个数量级的差距。 显然这个差距限制了CPU速度潜力的发挥。为了弥合这个差距,必须进一步从计算机系统结构上去研究。 设置高速缓冲存储器(cache)是解决存取速度的重要方法。在CPU和主存中间设置高速缓冲存储器,构成高速缓存(cache)—主存层次 要求cache在速度上能跟得上CPU的要求。 cache—主存间的地址映像和调度吸取了比它较早出现的主—辅存存储层次的技术,不同的是因其速度要求高,不是由软、硬件结合而完全由硬件来实现。 高速缓冲存储器,简称高速缓存,是20世纪60年代末发展起来的一项计算机存储技术,英文名字叫cache memory (简称cache)。 Cache的特点: 位于CPU与主存之间,是存储器层次结构中级别最高的一级。 (全部功能由硬件实现,并且对程序员是透明的。) 容量比主存小,目前一般有数KB到数MB。 速度一般比主存快5~10倍。 由快速半导体存储元件组成。 其内容是主存的部分副本。 可用来存放指令,也可用来存放数据。 7.2.1 cache存储器工作原理 程序的局部性原理(两个方面的含义) 时间局部性:是指如果一个存储单元被访问,则可能该单元会很快被再次访问。 (这是因为程序存在着循环) 空间局部性:是指如果一个存储单元被访问,则该单元邻近的单元也可能很快被访问。 (这是因为程序中大部分指令是顺序存储、顺序执行的,数据一般也是以向量、数组、树、表等形式簇聚地存储在一起的) 在cache中,每一块外加有一个标记,指明它是主存的哪一块的副本,所以该标记的内容相当于主存中块的编号,设主存地址为n位,且n=m+b,则可得出:主存的块数M=2m,块内字节数B=2b。cache地址码为(c+b)位。cache的块数为2c。块内字节数与主存相同。 主存的块数为: 16MB/4B=4M(块)=222,即m=22 块内字节数B=2b=4,b=2 主存地址为n位(n=24,主存容量16MB ),且n=m+b=22+2=24 cache的块数为2c =8KB/4B=2K(块)= 211 ,即c= 11 块内字节数B=2b=4,b=2 cache地址码为(c+b)位=11+2=13 块的大小称为“块长”。 块长一般取一个主存周期所能调出的信息长度。 在从主存读出新的字块调入cache存储器时,如果遇到cache存储器中相应的位置已被其他字块占有,那么就必须去掉一个旧的字块,让位于一个新的字块。 这种替换应该遵循一定的规则,最好能使被替换的字块是下一段时间内估计最少使用的。这些规则称为替换策略或替换算法。 由替换部件加以实现。 Cache的写操作: 问题的产生: cache存储器中保存的字块是主存中相应字块的一个副本,这些副本与主存中的内容能否保持一致。 (这是cache能否可靠工作的一个关键问题) 当CPU发出写请求时,如果cache命中,有可能会遇到cache与主存中的内容不一致的问题。 例如:由于CPU写cache,把cache某单元中的内容从X修改成了X’,而主存对应单元中的内容仍然是X,没有改变。所以如果cache命中,需要进行一定的写处理,处理的方法有: 写直达法和写回法。 写直达法: 是指CPU在执行写操作时,必须把数据同时写入cache和主存。 这种方法实现简单,而且能随时保持主存数据的正确性,但可能增加多次不必要的主存写入,会降低存取速度。 写回法: 是指CPU在执行写操作时,被写数据只写入cache,不写入主存。 (仅当需要替换时,才把已经修改过的cache块写回到主存) 实现方法:

文档评论(0)

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

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

1亿VIP精品文档

相关文档