[理工] 計組 cache

作者: yoz4ni (yoooooz)   2019-12-15 14:00:36
想請問一下
如果一個block是4word,那byte offset會是4bit,所以Cache裡面的Data那個欄位會分成16個區塊
那每一個區塊裡面是放memory的位址嗎?
一個區塊也只有8bit的空間,感覺也不能放memory的資料在裡面?
https://i.imgur.com/5NUZT4z.jpg
作者: zuchang (chang)   2019-12-15 14:24:00
4bit 是byte+block offset 就是我們常用的offsetdata裡面是有16bytes=4wordTLB才是放記憶體位址
作者: yoz4ni (yoooooz)   2019-12-15 14:33:00
所以Cache裡的Data欄位是存放什麼東西?
作者: zuchang (chang)   2019-12-15 14:40:00
就mem data 大小只要超過1word就能存啊==
作者: a9778875 (Mine)   2019-12-15 14:40:00
就是存放memory裡的資料或指令啊,不同架構就會有不同的設計,不能單用MIPS的架構來想
作者: cry589036511 (JJin)   2019-12-15 14:42:00
就是mem裡面的data
作者: a9778875 (Mine)   2019-12-15 14:42:00
也許考計算機就會這樣設計吧哈哈*計算題
作者: yoz4ni (yoooooz)   2019-12-15 14:47:00
所以1word的資料會放在4word的Data裡面?那切成16塊,每一快是要做什麼
作者: cry589036511 (JJin)   2019-12-15 15:02:00
如果某一word資料不在cache裡面,cache會去mem抓這一word的資料,但是block 4 word,所以會再抓其他3個word 上來,所以block 裡面一定會放滿
作者: pyramidinc (PyramidInc)   2019-12-15 15:02:00
他一個block 是4 word 所以他data那邊就是放 4 words的資料量
作者: yoz4ni (yoooooz)   2019-12-15 15:07:00
那怎麼不是切4塊就好,要切成16塊
作者: cry589036511 (JJin)   2019-12-15 15:09:00
因為一個word4個byte所以需要byte offset 得知是4個byte中的哪一個
作者: yoz4ni (yoooooz)   2019-12-15 15:23:00
不太懂! 如果1block是4word 那切成16塊,如果memory為17的話,那是在第二個block的第2塊? 那之後哩OAO
作者: zuchang (chang)   2019-12-15 15:25:00
不要用塊來想 單位用精確一點 比較簡單如果是第17bye 那就是第二個block的第二個byte
作者: yoz4ni (yoooooz)   2019-12-15 15:34:00
那知道在第二個block的第二個byte之後下一步是要做什麼?
作者: rrrr01012   2019-12-15 15:51:00
作者: yoz4ni (yoooooz)   2019-12-15 16:19:00
所以每個memory裡面的資料都只有8bit ?
作者: rrrr01012   2019-12-15 20:40:00
應該說若以byte當address,cache中的資料就是以byte當基本單位。

Links booklink

Contact Us: admin [ a t ] ucptt.com