cache在全相联映射,直接映射和级相联映射三种情况下从主存调入数据到cache中的方法

本文详细解析了全相联映射、直接映射和组相联映射三种cache调入数据的方法。全相联映射中,地址由主存字块标记和字块内地址组成;直接映射涉及主存字块标记、cache字块地址和字块内地址;组相联映射则引入组地址,主存字块标记、组地址和字块内地址共同决定数据在cache的位置。文章通过具体例子说明了如何判断地址命中与未命中,并阐述了不同映射方式下数据存取的逻辑。
摘要由CSDN通过智能技术生成

一,全相联映射

需要考虑的因素:①,cache每个块的大小,即能存放多少个字节,根据这个容量的大小判断需要多少位来表示这个容量,比如如果cache的每个块的大小为16B,那么就需要使用四位字节内地址来表示这个数,全相联映射需要的数据格式为主存字块标记和字块内地址,然后再通过将主存的地址二进制化,分割不同的两部分,后面的高地址位为cache的字块内地址,至于需要多少位取决于cache每个块的块容量大小,需要用多少位来表示,然后剩余的位充当主存字块标记,而放在块内的地址便是主存字块标记+000(0个字块内地址位)~主存字块标记+111(1个字块内地址位)

 (这是表示全相联映射的情况) 

二,直接映射

需要考虑的因素:主存字块标记+cache字块地址+字块内地址。

判断方法:首先字块内地址的确定方式需要取决于cache每块能存放在字节大小,然后在判断需要用多少二进制位可以去判断这个容量大小,比如说当容量大小为16B时,可以用四位去表示这个容量大小。其次,cache字块地址需要看cache有多少个块,然后需要用多少个二进制位去表示这些块,比如说有8个cache块,那么就需要使用3位二进制位去表示这个cache字块地址,剩下的主存字块标记就是总的主存地址二进制位数减去用来表示cache字块地址和字块内地址的二进制位数,假如说总的主存二进制位数有1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值