推 frank1688: 32bits=4Byte=1word ,cache 的data size = 8word,所以 06/15 23:08
→ frank1688: 塞8筆沒問題,另外你第二個問題的話你在把address多切 06/15 23:08
→ frank1688: 個bit去判斷說在哪一個word(因為1個block只有2word 1b 06/15 23:08
→ frank1688: it就夠)offset 可以一直切 個人理解是這樣 06/15 23:08
→ eecheng87: 可是上面塞的八個資料tag都不一樣,為神麼可以塞到同一 06/16 15:11
→ eecheng87: 個set(2個word) 06/16 15:11
→ eecheng87: 抱歉....請忽略我上面的問題 06/16 15:13
→ eecheng87: 感謝f大,我懂了 06/16 15:14
→ eecheng87: 可是既然有word offset不就代表一次要拿的memory data 06/16 16:36
→ eecheng87: 是2 word,那這樣整個cache不就只能存4筆memory data? 06/16 16:36
→ frank1688: 沒有 blockoffset 是切來判斷在一個Block 的哪一個word 06/17 00:52
→ frank1688: 的 我覺得你可能對offset 有點誤解 offset不是固定的 06/17 00:52
→ frank1688: 舉個例 假設我今天要用來區別我的address 是在word中 06/17 00:52
→ frank1688: 的哪個byte 用address 最低的2個bit判斷就可以了,而這 06/17 00:52
→ frank1688: 2bit就叫byte offset 那如果我今天想要判斷在一個2word 06/17 00:52
→ frank1688: 的block 中的哪一個word 就需要除了address最低2bit外 06/17 00:52
→ frank1688: (byte offset) 多1bit去判斷在2word 裡面的哪一個word 06/17 00:52
→ frank1688: 。所以一切是看你要怎麼切的。 06/17 00:52
→ frank1688: 我的理解是這樣 ,講的可能不好,也有可能有錯XD 06/17 00:52
→ eecheng87: 還是感謝你的回答~ 06/17 09:47