现代微机结构高速缓存.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
现代微机结构高速缓存

② 程序特征与Cache的读写 怎样判断哪些数据和程序代码是经常被访问的? “程序执行的局部性规律” 包括:时间局部性规律和空间局部性规律 — 时间局部性规律: 指程序中近期被访问的信息可能很快将被再次访问; 典型情况是程序中存在着大量的循环。 — 空间局部性规律: 那些在访问地址上相邻近的信息可能很快被访问; 典型情况是程序顺序执行。 按照“局部性规律”, 数据/代码被访问后, 该数据和代码以及临近的数据代码近期被再次访问的概率, 大于近期未被访问的数据/代码被访问的概率。 因此, 一个数据代码被访问后, 被认为是经常被访问的数据和代码, 将其存入Cache , 使Cache有更高的命中率。程序执行的局部性规律具有普适性, 如: ? LRU淘汰算法 ? 动态分支预测技术 ? 内存中存放近期被访问的页表, 大多数情况都能够满足应用需求③ 命中率 ? Cache容量与命中率 ? Cache的结构 ? 与软件以及所处理的数据量大小成反比④ Cache的淘汰算法 ? 先进先出算法 ? 随机淘汰 ? LRU(最近最久未使用淘汰)算法一、高速缓存的结构及工作原理 高速缓存的三种主要结构: ? 全关联式高速缓存 ? 直接对应式高速缓存 ? 多组关联式高速缓存 注: 数据/代码是否在Cache的判断: 通过判断该数据/代码的地址是否在Cache中, 而不是判断该数据本身。 1、全关联式高速缓存 高速缓存由两部分组成, 即地址部分(称为标签)和数据部分, 如下图所示(假设地址24位, 字长32位):内存地址标签(地址) 数据FFFFFCFFFFF8FFFFF416339C0000001122334487654321 ......................…......FFFFFC2468246800000012345678FFFFF43333222216339FFFF811223344Cache假设:处理器读取FFFFFC地址单元, 首先用该地址查找Cache, 不命中。 将数入处理器, 同时将地址FFFFFC写入Cache标签字段, 对应数入Cache数据字段。 处理器对存贮器的访问过程:读操作:CPU发出地址后, 首先查找Cache的标签字段, 如果存在该地址(命中Cache), 读取Cache中该地址对应的数据本分; 若不存在该地址(称为不命中), 仍从主存单元中读取数据, 并同时将该地址和对应的数据分别写入Cache的标签字段和数据部分。上述过程符合“程序实行的时间局部性规律”, 如果下次再访问该地址, 即可命中。写操作:CPU写数据时, 首先查找Cache , 有该地址则命中, 将该数据写入Cache而不写内存。全关联式的优缺点分别是:优点:直观、结构简单, Cache中数据的存放位置灵活。缺点:Cache越大, 速度越慢。速度慢,平均查找次数为Cache容量的一半。 2、直接对应式高速缓存 ① 结构及工作原理 假设:主存容量16M(24位地址), Cache容量为64K, 字长32位。? 将16M内存空间逻辑上分为每64K为一个页面, 共计可分为16M?64K=256(个页面);? 将存储空间的地址看作一个二维的地址, 即页号和页内地址; ? 与内存二维地址相对应, Cache中的地址也分为页号和页内地址, 分别称为标签字段 (即页号)和索引字段(即页内地址) 。页面 索引标签页面...页面? 对于所有总共256页, 需要8位地址作为标签(即地址的高8位A23~A16), 指明访问哪一个页面; 每页64K。? 需要16位地址作为页内地址A15 ~ A0 , 指明访问一页的哪个单元。如下图所示:指示某一单元指示某一页面数据标签索引FFFCFFF8?0000?FFFCFFF8FFF4000800040000................FFFCFFF8FFFCFFF8?0000 1234567824682468 .......2468246813571357....FF页0112345678....321345278901页01246824681287654321寻址过程: 以读取01FFF8单元为例译码地址的低16位FFF8, 找到索引位置, 取地址的高8位01与FFF8对应的标签字段相比较, 相等则命中, 不相等则不命中。 00页② 特征说明 ? 所有页面的页地址竞争同一标签字段 即只要索引值相同, 256个页面的页地址竞争该索引值对应的标签字段; ? 索引不变, 只需修改标签字段 索引字段保持不变, 变化的是标

文档评论(0)

peili2018 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档