主存与Cache的地址映像

发布者:温柔的爱情最新更新时间:2015-09-23 来源: eefocus关键字:主存  Cache  地址映像 手机看文章 扫描二维码
随时随地手机看文章
与主存容量相比,Cache的容量很小,它所保存的信息仅是主存信息的一个子集,且cache与主存的信息交换是以块为单位。主存每个块的大小和Cache中块的大小相等,为了把信息放到Cache中,必须事先规定好主存与cache之间的地址映像方式,即某一个Cache块可以作为哪些主存块的副本(即映像)。映像方式一旦确定,就决定了访问Cache时对主存地址的理解,因而也就决定了Cache的组织结构。目前有三种地址映像方式:直接映像、全相联映像和组相联映像。
主存地址=主存块号+块内地址。
主存分为2n块,则主存块号为n位。
1。直接映像(Direct Mapping) :只比较一次。主存地址被理解为标记(区号)、块号(对应的cache中的块号)、块内地址。主存块号被分解为标记和块号(位数由cache的块数决定)。
采用直接映像时,Cache的某一块只能和固定的一些主存块建立映像关系,主存的某一块只能对应一个Cache块。
2。全相联映像(Associative Mapping) :与cache中的所有块比较。主存地址被理解为由两部分组成:标记(主存块号)和块内地址。 主存块号全部就是标记。
  采用全相联映像时,Cache的某一块可以和任一主存块建立映像关系,而主存中某一块也可以映像到cache中任一块位置上,由于Cache的某一块可以和任一主存块建立映像关系,所以 Cache的标记部分必须记录主存块块地址的全部信息。例如,主存分为2n块,块的地址为n位,标记也应为n位。
为了判断是否命中,主存地址的标记部分需要和Cache的所有块的标记进行比较。为了缩短比较的时间,将主存地址的标记部分和Cache的所有块的标记同时进行比较。如果命中,则按块内地址访问Cache中的命中块(其标记与主存地址给出的标记相同);如果未命中,则访问主存。
全相联映像的优点是灵活,Cache利用率高。缺点有两个:一是标记位数增加了(需要记录主存块块地址的全部信息),使得Cache的电路规模变大,成本变高;二是比较器难于设计和实现(通常采用“按内容寻址的”相联存储器)。因此,只有小容量Cache才采用这种映像方式。
3。组相联映像(Set Associative Mapping) :与cache一个组中的所有块。主存地址被理解为由三部分组成:标记、组号和块内地址。主存块号由标记和组号分割了,组号占主存块号的低位(位数由cache的组熟决定)。
 组相联映像方式是介于直接映像和全相联映像之间的一种折中方案。设Cache中共有 m个块,在采用组相联映像方式时,将m个Cache块分成u组(set),每组k个块(即m=u×k),组间直接映像,而组内全相联映像(如图3.42所示)。所谓组间直接映像,是指某组中的Cache块只能与固定的一些主存块建立映像关系。
所谓组内全相联映像,是指和某Cache组相对应的主存块可以和该组内的任意一个Cache块建立映像关系。


例子:
高速缓存Cache 与主存间采用全相联地址映像方式,高速缓存的容量为4MB,分为4 块,每块1MB,主存容量为256MB。 若主存读写时间为30ns,高速缓存的读写时间为3ns,平均读写时间为3.27ns,则该高速缓存的命中率为___(3)___%。若地址变换表如下所示,则主存地址为8888888H时,高速缓存地址为___(4)___H。
  地址变换表
38H
88H
59H
67H

  (3)A. 90      B. 95      C. 97      D. 99
  (4)A. 488888    B. 388888    C. 288888    D.188888
主存容量为 256MB表示由28个二进制数地址也对应由7个十六进制数8888888H ,每块 IMB说明块内地址是20位二进制数也就是5位十六进制数88888,剩下的2位十六进制数88H代表块地址(全相联映射)。

 

1、容量为64块的Cache采用组相联方式映像,字块大小为128个字,每4块为一组。若主存容量为4096块,且以字编址,那么主存地址应该为__(7)__位,主存区号为__(8)__位。 (7)A.16 B.17 C.18 D.19
(8)A.5 B.6 C.7 D.
解析:本题目涉及到Cache的工作存储原理知识,Cache作为主存局部区域的副本,用来存放当前活跃的程序和数据。将局部范围的内容从主存复制到Cache中,使CPU高速的从Cache中读取数据,速度比访问主存快很多。Cache有三种映像方式。

这里,由于主存容量为4096块(或“页”),且每块为128个字,所以,主存地址为4096*128=2^n;n=19
主存可以划分为4096/64=64组,所以主存区号为2^n=64;n=6.
答案选择(7)D (8)B

0
1
2
3

关键字:主存  Cache  地址映像 引用地址:主存与Cache的地址映像

上一篇:液晶1602/1620/1604的问题及解答
下一篇:Emu8086-学习汇编语言的好帮手

推荐阅读最新更新时间:2024-03-16 14:32

Spansion® EcoRAM架构突破主存储容量
Spansion 今天发布了其 Spansion® EcoRAM™ 解决方案的架构和性能细节。 Spansion EcoRAM 技术采用创新的存储子系统架构 , 创建了一种全新的存储器种类 , 在低功耗、高性能和大容量方面处于领先水平 , 特别适合互联网服务、分析、石油和天然气、政府部门、生物信息学以及商业智能等领域的读取密集型应用。 Spansion EcoRAM 架构的设计目的在于充分利用现有以及将来会出现的、由 Intel 和 AMD 提供的高速连接解决方案。由于该架构采用搭载了Spansion EcoRAM存储器的标准X86服务器,商用服务器通过选用32GB的Spansion EcoRAM 双列直插内存
[工业控制]
Tensilica业界最小32位可授权处理器——钻石标准处理器106Micro
美国加州SANTA CLARA 及中国北京2007年11月6日讯 –Tensilica公司今天发布业界最小32位可授权处理器–钻石标准处理器106Micro。106Micro在130/90nm G制程下占用面积分别为0.26/0.13mm2,比ARM7和Cortex-M3都要小,性能却可达到1.22DMIPS/MHz, 高于ARM9E提供的性能。低功耗设计的106Micro处理器主要用于SOC中完成控制任务,同时也是从8/16位控制器向32位处理器过渡的理想选择。 Tensilica总裁及首席执行官Chris Rowen博士表示,“无数SOC设计,皆追求尽可能小的微控制器来协调各部分任务的执行,特别是在已经包含一个或多个重量
[新品]
ARM的CACHE原理
Cache的工作原理是基于程序访问的局部性。 对大量典型程序运行情况的分析结果表明,在一个较短的时间间隔内,由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内。指令地址的分布本来就是连 续的,再加上循环程序段和子程序段要重复执行多次。因此,对这些地址的访问就自然地具有时间上集中分布的倾向。 数据分布的这种集中倾向不如指令明显,但对数组的存储和访问以及工作单元的选择都可以使存储器地址相对集中。这种对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象,就称为程序访问的局部性。 根据程序的局部性原理,可以在主存和CPU通用寄存器之间设置一个高速的容量相对较小的存储器,把正在执行的指令地址附近的一部分指令或数据从主存调
[单片机]
linux系统之arm架构的CPU与Cache
【摘要】 【写作原因】 【问题构造】 【分析一】总体流程 【分析二】get_free_pages与mmap 【分析三】CPU与TLB 【分析四】cpu与L1cache 【分析五】cpu与L2cache 【总结】 注意:请使用谷歌浏览器阅读(IE浏览器排版混乱) 【摘要】 无论是arm还是powerpc、mips、x86等,提高memory的访问速度都是cpu提高自身性能的重要手段,cache由此而来;无论是Linux还是windows操作系统,充分利用cpu特性,提高系统性能都是不错选择,就像进程上下文切换中页表的切换是linux对MMU的完美利用。性能是软件永恒的主题,了解MMU对软件
[单片机]
linux系统之arm架构的CPU与<font color='red'>Cache</font>
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved