湖南大学计算机及通信学院.pptx

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
湖南大学计算机及通信学院;第九章 存储层次;9.1 存储器的层次结构;9.2 Cache存储器;1. 相联存储器的内部组织结构;读数据 CPU必须给出两个值: 第一个值:要被匹配的数据值(参数或数据) 第二个值:哪些位需要检查(屏蔽位或关键 位) 如果满足如下的公式,则匹配就会发生;例如(参考图9.2):;3. 将数据写回相联存储器 CPU把数据送到数据寄存器并发出写信号。相联存储器检查所有单元的有效位,并找到有效位为0的一个单元,如果找到,把数据存到这个单元,同时将有效位设为1。如果没有找到,必须采用替换算法清除一个单元来保存数据。;常见的替换算法;64K 8位内存;作用于数据行或数据块的相联存储器;9.2.3 直接映象的Cache存储器;索引;Cache容量: 1K;相对简单的CPU中,块大小为4字节的直接映像/view29/M0;9.2.4 组相联映像的cache存储器;考察大小为1k的2路组相联/view29/M02/18/08/wKh2EmSk;相对简单CPU中具有4字节数据行的2路组相联cache;9.2.5 在cache中替换数据;例:在一个4路组相联/view29/M02/18/08/wKh2EmSkSoaAJo 1. /view29/M02/18/08/wKh2EmSkSoaAJoekAFEvkPfcEXk27 T D C V C c 2 1 B b 1 1 A a 0 1 - - - 0;9.2.6 写数据到cache;处理写失效问题 按写分配法 把单元装入cache,然后使用写直达法或写回法把数据写到cache 不按写分配法 直接更新物理内存中的值,而不把值写回 Cache。;9.2.7 cache的性能;表9.1;2. 如何计算命中率和平均访问时间? 例:CPU访问下列顺序单元: 每一个值的下标是由物理内存地址的低3位来描述的。 A0 B0 C2 A0 D1 B0 E4 F5 A0 C2 D1 B0 G3 C2 H7 I6 A0 B0 现在我们确定在三种不同cache配置下的命中率和平均访问时间。 假设: Tc=10ns Tp=60ns;8字节相联/view29/M02/18/08/wKh2EmSkSoaAJoekAFEv;;8字节的2路组相联cache Cache使用LRU替换策略。 命中率:h = 0.389 平均访问时间:Tm = 40.56ns;考虑这个同样的系统。有2字节的数据行 组成相关行的数据对; A和J;B和D;C和G;E和F;I和H使用相同的替换策略 (相联cache采用FIFO,组相联采用LRU)相同的访问时间(Tc=10ns,Tp=60ns);Dat a;Data;9.3 虚拟存储器;9.3.1 分页;一个页面或者包含程序指令或者包含数据,不能同时包含两者 可能导致内部碎片问题 内部碎片:假设MMU实现的页式 存储器中每个页面大小为4K,一个4K+1大小的程序需要MMU分 配两个存储器页面,尽管它的第二个页面只用了4K单元的一个单元,这就是所谓的内存碎片;图9.10 相对简单CPU一种可能的内存配置;分页系统必须解决的问题:;存储管理单元处理上述所有问题;图9.11 存储器层次结构中的MMU配置;在处理器需要访问数据,MMU将数 据从逻辑地址装入物理地址的整个处理过程中,CPU没有访问物理单元的任何信息;页表的概念;相对简单CPU的页表,有16K的物理内存,页面大小为4K。 页表包含了16个单元,每一单元对应逻辑地址空间的一个页面,它包含一个2bit的域,表明了该逻辑页存储在哪一个页框中;MMU中逻辑地址到物理地址的转换;图9.13 用页表将逻辑地址转换成物理地址;图9.13所示的MMU并没有很好的转换地址?;图9.14 使用TLB转换逻辑地址到物理地址;例:考虑一台含有相对简单CPU,相同内存配置的计算机。它必须取、翻译和执行下列程序(如表9.8);表9.8 使用LRU替换算法的部分页表和TLB值;表9.9使用FIFO替换算法的部分页表和TLB值;9.3.1 分段;外部碎片:内存驻留有3个段,另有8K自由空间。而这8K空间被划分开了,于是不移动或撤除某个当前载入段的话,大小超过 3K的段已无法装入内存(如图9.16);分段机制中逻辑地址到物理地址的转换;段号输入到段表中,如果段已被装入内存,输出段的起始地址和段大小 如果段不在物理内存中,就产生一个缺段,MMU装入新段到内存中 偏移量与段大小进行比较,如果前者大于后者,或者相等,说明所访问单元不在段内,就产生一个错误 如果偏移量有效,则与段地址的起始值相加,形成一个正确的物理内存地址;分段机制中的一个严重缺陷;带分页的分段;图9.17段页式机制中逻辑地址转换为物理地址;段页式机制中的优点:;9.3.3 存储器保护;9.4

文档评论(0)

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

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

1亿VIP精品文档

相关文档