Cache-主存地址映射

主存物理地址 = 块号 + 块内地址

块内地址根据块内二进制数所占的位数,占了几(假设为n)位就分成2的n次方组,那么除了块内地址其他都是块号。

那么进行主存分块后,假设CPU得到了一个主存的物理地址,那么可以把物理地址这一小块所在的一大块(这一大块有2的n次方个小块)全都放到cache里,这样能够加快计算机的运行速度。主存和cache进行信息交换的时候,就是以这一大块为单位进行信息交换的,而大块的标识就是他的块号。

cache(缓存)位于CPU内部,其读取速度快于主存,但容量小于主存。cache中存放的是程序需要用到的数据,CPU处理时直接从cache中读取数据速度要快于从主存中读取。

Cache主存映射的三种方式

直接映射 : 主存物理地址 = 标记 + cache行号 + 块内地址

全相连映射 : 主存物理地址 =  标记 + 块内地址

组相联映射 : 主存物理地址 = 标号 + 组号 + 块内地址(把cache分成组,每个组的映射必须一一对应,相当于直接映射,但是组内的映射是可以随机的,相当于全相联映射)  

仔细观察上面三个式子不难发现,每一种映射都有块内地址,而我们知道,主存物理地址 = 块号 + 块内地址,因此映射是把块号分别用标记+cache行号,标记+组号,标记来表示。

标记是用来唯一的表示一个块,而标记也是存储在cache里面,而其他的都是不存储隐含的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值