[理工] 计组 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