[理工] 计组p20......!

楼主: Aa841018 (andrew)   2018-12-27 14:44:15
https://i.imgur.com/IkCfKrG.jpg
不好意思同一题连问两次
只是实在是有个点卡住想不通:
(3)(1+22+128)/128
中,怎么惟独offset需要单位换算,而tag vaild都不需要?
如果说offset.需要4*4*8
那tag不是应该也要22*4*8吗?
作者: wei12f8158 (WEI)   2018-12-27 14:51:00
都是换成bit啊,那个128是Block size in bits,所以2^4*8=128 bits然后因为Offset是对Block size取Log,所以可以用Offset反推Block size,3-0有4位所以取2^4可推得一个Block是16 byte,然后1 byte=8 bits所以16*8=128 bits
楼主: Aa841018 (andrew)   2018-12-27 15:52:00
可是block不是都以word为单位,怎么2^4单位会是byte?
作者: wei12f8158 (WEI)   2018-12-27 16:09:00
block以word为单位?没有这个规定唷,端看题目怎么问的,这题给了32bits的总长,再依序切成Tag,Index跟Offset的bits
楼主: Aa841018 (andrew)   2018-12-27 16:44:00
那2^4 单位是byte是规定的吧?
作者: z3588191   2018-12-27 22:10:00
在Cache里存的是 valid | tag | datavalid:1bit tag:22bit data: 8btye阿是16byte 所以总共是1+22+16*8

Links booklink

Contact Us: admin [ a t ] ucptt.com