看板 Grad-ProbAsk 關於我們 聯絡資訊
http://i.imgur.com/9lrsPxN.jpg http://i.imgur.com/cDsgf1V.jpg 小弟一直搞不清楚這種類型題目觀念QQ 知道word address首先要先轉byte address,但是該除多少要怎麼判斷? 第一小題中,轉block先除4,這個4是代表什麼意思?題目說total size是16words,是代表 總共是4個block(0~3)嗎? 第二小題,轉block除2,這個2是因為他是2-way嗎?之後又再去除4,這動作又是什麼意思 呢QQ (看到題目會先把他們轉成二進位,但是之後該怎麼切出index 跟tag一直不太清楚QQ ) 不知道各位大大能否點一下小弟,感謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.31.163.65 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1483279214.A.7E7.html
Transfat: 第一個除以4的4是一個block有幾個word, 題目說4-word 01/01 22:08
Transfat: block,所以word address轉block address先除4 01/01 22:08
Transfat: 得到block address之後要再求tag和index,就把block addr 01/01 22:09
Transfat: ess 除以Cache有幾個block(blcok總數),題目說total siz 01/01 22:09
Transfat: e是16 words, 代表總共有4個block, 所以再除4, 商數就是 01/01 22:10
Transfat: tag,餘數就是index. 轉成二進位的好處是如果block總數 01/01 22:10
Transfat: 和每個block有幾word都是2的倍數的話,就可以當做是移動 01/01 22:11
Transfat: 小數點,假如除4就是小數點往左移兩格(和十進位除100差 01/01 22:11
Transfat: 不多意思. 01/01 22:11
Transfat: 第二題他說是2-way set, 所以一個set就只剩8個word,題 01/01 22:14
Transfat: 目說是2-words block, 代表每個block有兩個words, 每個 01/01 22:14
Transfat: set有8個words, 所以每個set有4個blocks,同理,我們去把 01/01 22:15
Transfat: word address除以每個block有幾個words(這邊是兩個words 01/01 22:15
Transfat: ), 會得到block address,再除以每個set有幾個block(4個 01/01 22:15
Transfat: ),會得到商數=tag, 餘數=index 01/01 22:16
Transfat: 有時候題目會很賤給你word address,又給你16-byte block 01/01 22:17
Transfat: 看你要先把words address轉成byte address或是把16-byte 01/01 22:18
Transfat: 轉成4-word block, 反正我們目的是要算出block address 01/01 22:18
Transfat: block address就像是block的編號一樣 01/01 22:18
yupog2003: 推T大講解詳細 01/01 22:26
yellow60127: 謝T大~剛重做了幾題,有種豁然的感覺! 01/01 23:13