Cache之直接映射

原创 2016年08月28日 16:18:07

Cache之直接映射

@(组成原理)

直接映射的再次理解:
首先,理清楚这种映射下的主存物理地址位数的分配。

核心目的:加快主存和CPU之间的交换,目的在快。区别于虚拟地址的目的是扩大容量以及逻辑上容易编写程序等。

主存地址分为两个大的部分:高m位和低b位。
高m位又分为最高的t位,称之为主存字块标记,和次低c位,称之为Cache字块地址。
对应的Cache的地址结构是:高t位和低b位。

这里写图片描述

有一个问题,Cache字块地址它自己是不管的对吗?主存知道但是Cache自己是不知道的。

从二者的最低位都是b位,我们知道,因为字块的大小一样,因此位数也是一样的。

主存地址中,可以根据中间的c位计算出共计有2^c块Cache块,当然也可以根据Cache的总容量与字块的大小自行计算。

情景:
因此,现在给你一个主存块,根据它的地址结构,让你帮它找一个可用的Cache块。
脑海中要有一个印象,Cache块是比较宝贵的。主存块能以进入到Cacahe块为荣。主存块数远远大于Cache块数的。
毕竟,物以稀为贵。

直接映射中,一个主存块只能对应到一个Cache块。

根据主存的地址,当前块映射到的Cache块,和2^c块之后的主存块映射的是同一个Cache块。

这里我们来推导一下Cache块号的计算方式:
设i是Cache块号,j是主存块号。i的范围当然就是 [0,2c1],j的范围是[0, 2m1]

i=jmod2c

换成汉字就是取出主存地址中间的c位代表的数字,即为Cache块号。

这样就完了?

么有。

为什么要设计高t位呢?

因为要确定Cache心里装的到底是不是当下主存自以为的根据中间c位计算出来那个Cache块。
因为Cache还可能装着别人嘛。

所以要精确匹配是不是(有点像DNA那啥)。

这些就是直接映射的最核心的概念理解,其他的细节是比较容易理解的,比如在Cache存储中还加有效位的概念等。

版权声明:本文为博主原创文章,未经博主允许不得转载。

主存到Cache直接映射、全相联映射和组相联映射

Cache的容量很小,它保存的内容只是主存内容的一个子集,且Cache与主存的数据交换是以块为单位的。为了把信息放到Cache中,必须应用某种函数把主存地址定位到Cache中,这称为地址映射。在信息按...

Cache 地址映射

Cache的容量很小,它保存的内容只是主存内容的一个子集,且Cache与主存的数据交换是以块为单位的。为了把信息放到Cache中,必须应用某种函数把主存地址定位到Cache中,这称为地址映射。在信息按...

计算机组成原理——主存与cache的映射关系

特点:指主存的一个字块可以映像到整个Cache的任何一个字块中。这种映射方法比较灵活,cache的利用率高,但地址转换速度慢,且需要采用某种置换算法将cache中的内容调入调出,实现起来系统开销大。...

Cache 功能、映射方法

cache是一种高速缓冲寄存器,是为解决CPU和主存之间速度不匹配而采用的一项重要技术。 主存与cache的地址映射方式有全相联方式、直接方式和组相联方式三种。...
  • jxq0816
  • jxq0816
  • 2014年01月04日 21:05
  • 1775

cache和内存的映射方式

cache是一种高速缓冲存储器,她的主要作用是提高CPU数据输入的速率,调和CPU速度与内存存储速度之间的巨大差异。 通俗一点说就是CPU太快,内存速度相对比较慢,而cache的速度快,但是cach...

高速缓存与主存的三种映射方式

1、全相联映射方式 全相联映射是指主存中任意一个块都可以映射到cache中任意一个块的方式,也就是说,当主存中的某一块需调入cache时,可根据当时cache的块占用或分配情况,选择一个块给主存块存...

寄存器映射与直接操作寄存器

存储器本身不具有地址信息,它的地址是由芯片厂商或用户分配,给物理存储器分配逻辑地址的过程就称为存储器映射,通过这些逻辑地址就可以访问到相应的存储器的物理存储单元。如果给存储器再分配一个地址就叫存储器重...
  • wjgwrr
  • wjgwrr
  • 2017年06月02日 23:08
  • 965

Cache与主存之间的"全相联映射","直接映射"和"组相联映射"的区别

Cache与主存之间的全相联映射,直接映射和组相联映射的区别 1.高速缓冲存储器的功能、结构与工作原理   高速缓冲存储器是存在于主存与CPU之间的一级存储器, 由静态存储芯片(SRAM)组成,容量比...

(转)Cache与主存之间的全相联映射,直接映射和组相联映射的区别

Cache与主存之间的全相联映射,直接映射和组相联映射的区别 1.高速缓冲存储器的功能、结构与工作原理   高速缓冲存储器是存在于主存与CPU之间的一级存储器, 由静态存储芯片(SRAM)组成,容量比...
  • stardhb
  • stardhb
  • 2015年04月06日 11:23
  • 6513

主存cache的地址映射

CPU对存储器的访问,通常是一次读写一个字单元。当CPU访 Cache不命中时,需将存储在主存中的字单元连同其后若干个字一同调入Cache中,之所以这样做,是为了使其后的访存能在Cache中命中。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Cache之直接映射
举报原因:
原因补充:

(最多只允许输入30个字)