4位地址
标记1位
索引2位
偏移量1位
每个数据块2个字节
4套(每套1块)
我正在尝试确定以下地址是命中还是未命中。我正在介绍我到目前为止获得的信息。(所有积分都将归于堆栈溢出)
地址
14
套装3
V=0
标签=1
偏移=0
9
设置0
V=0
标签=1
偏移=1
2
套装1
V=0
标签=0
偏移=0
6
套装3
V=1
标签=0
偏移=0
3.
套装1
V=1
标签=0
偏移=1
发布于 2013-12-03 16:45:04
由于它是一个直接映射缓存,并且它有4个组,这意味着它有4个数据块的容量。
1)地址14,其二进制形式为: 1110
假设在一开始缓存是空的,我们得到了一个未命中,我们将这个词存储在缓存中。标签1,在集合#3处。
2)地址9,二进制为: 1001
标签1,设置0,我们有一个失误。因此,我们将其存储在集合0中。
3)二进制地址2;0010
这个块放在集合1上,它是空的。我们找到了一个未命中的,并将其存储起来。使用标记0
4)二进制地址6: 0110因为我们已经在集合3中存储了一个块,所以我们对其进行比较。因为它们的标签是不同的标签0 !=标签1,我们驱逐前一个,并存储新的。小姐
5)二进制形式的地址3: 0011这个块在集合1中,因为我们在集合1中已经有一个块,所以我们对其进行比较。因为他们的标签等于0= 0,所以我们得到了匹配。
https://stackoverflow.com/questions/20345252
复制相似问题