【发布时间】:2013-11-24 00:52:27
【问题描述】:
我正在寻找具有 16 个单字块和一个使用 8 个 2 字块的缓存的二进制地址、标记、索引和命中或未命中,这些块在开始时都假定为空
假设我有参考的说明 4、4、32、31、5、32
对于第一个缓存(16 个单字块),您必须首先将 4 转换为二进制,然后将该二进制值拆分以获取标记,然后如果您再次找到该索引,它将被标记为命中
话虽如此,我相信下表使用这种方法是正确的。
Ref | Binary | Tag | Index | Hit or Miss
4 00000100 0000 0100 miss
4 00000100 0000 0100 hit
32 00100000 0010 0000 miss
31 00011111 0001 1111 miss
5 00000101 0000 0101 miss
32 00100000 0010 0000 hit
我希望对第二个缓存(8 个双字块)执行相同的操作,但我不确定如何继续。
我认为二进制文件对于数字来说是相同的,但是我对如何从中确定标签和索引以及在与第一个缓存相同的引用指令上是否存在命中或未命中感到困惑。
如何确定标签、索引以及它在此缓存中是否命中或未命中?
【问题讨论】:
标签: caching