- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
54高速缓冲存储器
5.4高速缓冲存储器 1.高速缓存 CACHE用途设置在 CPU 和 主存储器之间,完成高速与 CPU交换信息,尽量避免 CPU不必要地多次直接访问慢速的主存储器,从而提高计算机系统的运行效率。 2.高速缓存 CACHE实现原理把CPU最近最可能用到的少量信息(数据或指令)从主存复制到CACHE中,当CPU下次再用到这些信息时,它就不必访问慢速的主存,而直接从快速的CACHE中得到,从而提高了速度。 3.评价CACHE性能的关键指标 要有足够高的命中率,当CPU需用主存中的数据时,多数情况下可以直接从CACHE中得到,尽量少读主存储器。称二者之比为命中率。 一、CACHE的基本运行原理 1、 CACHE的存储单元的组成 CACHE的存储单元是由三部分组成的1位有效位:“0”表示该单元尚未使用,“1”表示数据有效 (1) CACHE单元不一定以字为单位与主存实现相互对应,因为存储一个完整的主存地址占用位数太多。(2) CACHE与主存交换信息时,不一定每次以一个主存字为单位进行交换,常用的是以字块的形式(cache line size)进行数据传送。 二、CACHE的3种映像方式 地址映像:把主存地址的数据复制到cache时,还要把该主存的地址经过某种函数关系处理后写进CACHE的标志字段,这一过程称为CACHE的地址映像。 地址变换:在程序执行时,要把主存地址变换为访问CACHE的地址,这一过程称为CACHE的地址变换。这二者的处理方案是密切相关的 1、全相联映像方式 全相联映像方式的优缺点地址映像:写入CACHE时,要将主存的全部地址写入CACHE的标志字段地址变换:用读主存的整个地址去与CACHE中的每一个单元的标志字段进行比较。 优点:使用灵活、方便缺点:比较地址字段必须与整个CACHE中每一个单元的标志字段都进行比较,所以线路复杂,成本太高,难以实现,只是适用于容量小的CACHE。 2、直接映射方式 直接映射方式地址映像:写入CACHE时,仅将主存的区段号写入CACHE的标志字段地址变换:要将读主存地址中的区段内偏移地址去访问CACHE的一个单元,只需用主存地址的区段号与标志字段内容进行比较。 3、多路(两路)组相联方式 多路(两路)组相联方式实现原理把 CACHE存储器组织为同等容量的多体结构,例如2个存储体。主存仍然划分成容量等于每个CACHE存储体的多个区段。 三、 CACHE存储器实用中的几个问题 CACHE存储器的重要技术指标是它的命中率,影响 CACHE 命中率的因素有:1.CACHE 的容量与命中率的关系虽然容量大一些好,但CACHE 容量达到一定大小之后,再增加其容量对命中率的提高并不明显。2、 Cache Line Size ( CACHE每次与内存交换信息的单位量)与命中率的关系:每次交换信息的单位量适中,不是以一个字为单位,而是以几个字(称为CACHE行容量,通常为4~32个字节)在主存与CACHE之间实现信息传送。 3、多级的CACHE结构与命中率的关系 5、写CACHE的策略和对系统的影响(1)一个外设向主存写入了一个数据,该主存单元原先的副本在CACHE中,出现不一致,此时最简单的办法就是把CACHE中相应单元的有效位清除掉,当CPU再次需这一主存单元时,只能从主存重新取得而不会使用CACHE中的旧值。(2)改写主存储器的策略若CPU改写了 CACHE 一单元内容后且尚未改变主存相应单元内容,则出现数据不一致性。两种解决办法: 第1.接下来直接改写主存单元内容。简便易行, 但可能带来系统运行效率不高的问题,该后未被使用。 第2.拖后改写主存单元内容,一直拖到有另外的设备要读该内容过时的主存单元时。首先停止这一读操作,接下来改写主存内容,之后再起动已停下来的读操作,否则不必改写。矛盾是如何检查是否应该改写,通过监视地址总线完成,记下无效单元地址用于比较。 控制复杂些,但可以提供更高系统的运行效率。 4.4 虚拟存储器部件 1.虚拟存储器的核心思路根据程序运行的局部性原理,一个程序运行时,在一小段时间内,只会用到程序和数据的很小一部分,仅把这部分程序和数据装入主存储器即可。更多的部分可以在用到时随时从磁盘调入主存。在操作系统和相应硬件的支持下,数据在磁盘和主存之间按程序运行的需要自动成批量地完成交换。 虚拟存储器中经常使用两种基本管理技术:◎段式存储管理,◎页式存储管理。核心问题都在于处理数据的存放与调度。 一、段式存储管理 1、段:通常一个大的程序是由在逻辑上、处理功能上有一定的独立性的程序段组成的,可用段名或段号来标明程序段,每个段的长度是随意的,由指令的条数确定。 2、段式存储管理:当运行
文档评论(0)