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

这不是一个技术问题,而是一个经济问题。从技术上说,能制造出多高速度的CPU,就能制造出同样速度的存储器,只不过是我们是否愿意付出如此高的价格。 有没有更好的办法?能否用廉价的高容量存储器实现相对的高速度呢? * 一般32位的嵌入式微处理器都内置Cache * * * * * 1. 前两种方式的折衷方案。组间为全相连,组内为直接映射。 * 8个字节的数据 * 画图 * 四个字节的 * * * * 1、这张图是否始终成立? 块/总 2、块越大缺失率越小,这是否意味着块就是越大越好呢? 块越大缺失损失越大 * * * The design goal is to present the user with as much memory as is available in the cheapest technology (points to the disk). While by taking advantage of the principle of locality, we like to provide the user an average access speed that is very close to the speed that is offered by the fastest technology. (We will go over this slide in details in the next lecture on caches). +1 = 16 min. (X:56) * 段式存储管理的核心问题在于设立和管理段表;段表也是主存中的可再定位的一段信息,用于变换程序中的逻辑地址为主存单元的实际地址。 * 利用高速缓存来存页表 * * 影响 CACHE 命中率的因素 从 CACHE 本身诸因素看,可能: 1. CACHE 的容量,大一些好 2. CACHE 与主存储器每次交换 信息的单位量(Cache Line Size)适中 3. CACHE 不同的组织方式,多路组相联更好 4. CACHE 的多级组织可提高命中率 5. CACHE 装满后的换字算法 * Cache命中率 Cache Size in KB Hit Rate * 块大小和缺失率的关系 * 块大小的权衡 一般来说,数据块较大可以更好地利用空间局部性,但是: 数据块大意味着缺失损失的增大: 需要花费更长的时间来装入数据块 若块大小相对Cache总容量来说太大的话,命中率将降低 Cache块数太少 一般来说,平均访问时间 = 命中时间 x 命中率 + 失效损失 x 缺失率 缺失损失 块大小 缺失率 利用空间局部性 较少的数据块: 弥补时间局部性 平均访 问时间 增加了缺失损失 和缺失率 块大小 块大小 * 多级Cache 采用两级或更多级cache来提高命中率 将Cache分解为指令Cache和数据Cache * Cache的替换算法 1. 先进先出算法(FIFO) 将最早调入Cache的字块替换出去。容易实现,开销小。 2. 最近最少使用算法(LRU) 需要计算字块的使用次数,开销大,但平均命中率比FIFO要高。 3. 随机替换(RAND) * 要解决的主要问题 如何保证Cache和主存数据一致性? * 改写主存储器的策略 若 CPU 改写了 CACHE 一单元内容后且尚未改变主存相应单元内容,则出现数据不一致性。有两种解决办法: 1.接下来直接改写主存单元内容(Write Through) 简便易行, 但可能带来系统运行效率不高的问题。需要写入缓冲存储器。 2.拖后改写主存单元内容(Write Back) 一直拖到有另外的设备要读该内容过时的主存单元时,则首先停止这一读操作,接下来改写主存内容,之后再起动已停下来的读操作。 Example caches StrongARM: 16 Kbyte, 32-way, 32-byte block instruction cache. 16 Kbyte, 32-way, 32-byte block data cache (write-back). C55x: Various models have 16KB, 24KB cache. CPUs Caches. Memory management. * 存储容量需求 应用需求 多媒体信息处理 语音、图形、图象? 软件需求 Nathan软件第一定律:软件是一种可以膨胀到充满整个容器的气体。 技术需求 多进程、多道程序 给程序员一个比实际内存大得多的编址空间! * 提高存储器容量 降低主存储器成本,在同样成本下,可以获得更大的主存容量。 主存的价格到今天也是依然比较昂贵 程序对主存的“胃口”的增加和

文档评论(0)

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

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

1亿VIP精品文档

相关文档