我很抱歉,如果這是錯誤的堆棧交換;它似乎是最接近一個可能對計算機體系結構有所幫助的地方。對於在計算機系統中的作業問題,有人問我:直接映射緩存命中/小姐
Consider three direct mapped caches X, Y, and Z each interpreting an
8-bit address slightly differently according to the {tag:setIdx:byteOffset}
format specified. For each address in the reference stream, indicate whether the
access will hit (H) or miss (M) in each cache.
C1 C2 C3
Address Formats: {2:2:4} {2:3:3} {2:4:2}
Address References in Binary: 00000010, 00000100...
我應該說是否每個地址的引用將導致一個命中或缺失,但我不知道從哪裏開始。
對於格式,我認爲標記意味着緩存塊中數據的標記,setIdx意味着給出的位數以表示緩存中不同的塊,偏移量是塊中的特定字節可以選擇。
我覺得我不明白什麼是命中或錯過。我認爲有三種類型:強制性,能力和衝突。如果我不知道緩存中已有什麼,我怎麼會知道哪個是強制性錯過?如何判斷給定標籤格式的緩存容量?
感謝您的任何提示或提示。
那麼字節偏移是什麼? – KWJ2104
字節偏移量是一個塊的大小。例如,使用與上面相同的參考,假設C1在塊{00}中加載了{00 00 0010},則該塊包含存儲器{00 00 0000}到{00 00 1111}。但是,如果您嘗試查找{01 00 0010},則會因爲標記不同而錯過。 (另外我假設這是一個單向集合關聯映射) –