※ 本文轉寄自 ptt.cc, 文章原始頁面
標題

105清大 計系一題

時間
最新2021-01-21 15:49:00
留言59則留言,4人參與討論
推噓14 ( 14045 )
https://i.imgur.com/JurYcIF.jpg
105清大 計系一題
請教一下板上的各位 第2題的a b要怎麼回答呢 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.76.42.36 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1579528022.A.A95.html

59 則留言

mistel, 1F
reservations station用來存還無法進入function unit的指

mistel, 2F

mistel, 3F
reorder buffer存指令out of order execution後的結果,

mistel, 4F
在需要的時候重新commit

mistel, 5F
打錯 在需要的時候重新執行 不需要的時候就commit

mistel, 6F
b小題應該只是reorder buffer在power-off指令超前時重新

mistel, 7F
執行一次吧? 不太確定reservation station有沒有特別的

mistel, 8F
工作要做...

ok8752665, 9F
b的話 張凡說法是 要確保reservation那的fp指令都做完

ok8752665, 10F
然後reorder buffer的fp指令也都commit完後 再commit p

ok8752665, 11F
ower off指令

mistel, 12F
好像懂了 power-off指令跟前面的指令沒有data dependency

mistel, 13F
,所以對於分析資料流來判斷重新執行的reorder buffer是

mistel, 14F
無法運作的,所以reservation station才要負責額外的工作

mistel, 15F
? 不知道這樣對嗎?

DLHZ, 16F
reservation station store the operands and the operation

DLHZ, 17F
應該比較精確一點

DLHZ, 18F
reorder buffer在需要的時候重新執行是指?

ok8752665, 19F
branch猜錯的時候吧

DLHZ, 20F
我認為單純寫出個別要做的事情就好 這指令感覺硬體也要有相

DLHZ, 21F
對應的功能 所以檢查什麼應該是另外設計 可能跟他原本能不能

DLHZ, 22F
比較沒關係

mistel, 23F
我指的是超前執行導致出現hazard的情況

mistel, 24F
瞭解 感謝

DLHZ, 25F
@ok branch出錯reorder buffer應該是flush才對

DLHZ, 26F
@mi 先fetch了不是也會等到operands ready嗎?

ok8752665, 27F
喔喔 我是想說猜錯會FLUSH然後重抓叫重新執行 不然重新

ok8752665, 28F
執行具體來說是怎樣 超前執行的hazard應該也是control

ok8752665, 29F
Hazard吧 data hazard應該不會超前執行吧

DLHZ, 30F
因為我的印象中相關的資料都沒提到重新執行這件事 剛剛去找

DLHZ, 31F
了一下也沒有 所以想知道重新執行這件事的目的是什麼

mistel, 32F
是我理解有誤嗎? superscalar上不同種類的指令因為用到

mistel, 33F
的function unit不同,所以我們無法保證他們的執行順序是

mistel, 34F
跟原本的執行順序一致的,所以我們不能保證原本像WAR這種

mistel, 35F
的hazard會跑出正確的結果

mistel, 36F
看了一下reorder unit只是確定指令沒有出錯,所以如果有

mistel, 37F
出錯就是flush這樣? 我一直以為有出錯就會把出錯指令拿

mistel, 38F
回reservation station重新執行

DLHZ, 39F
war跟waw這些hazard的話reservation station本身設計(regist

DLHZ, 40F
er renaming, buffering spurce operands)就會避免這些問題

DLHZ, 41F
所以因為hazard而重新執行應該是不會發生的

ok8752665, 42F
我也不知道 我上正課跟題目班 印象中張凡都只有帶過

ok8752665, 43F
說反正會有硬體跟軟體去解決hazard 沒特別說如何解決

mistel, 44F
所有speculation都要有一個排除執行錯誤的機制吧?課本雖

mistel, 45F
然沒有講清楚,但是他確實有說reorder buffer要hold resu

mistel, 46F
lts until it is safe to store

DLHZ, 47F
safe指的是跟儲存的result有關的操作都完成時 Computer arch

DLHZ, 48F
itecture中的ch2.6有

mistel, 49F
原來如此 所以所謂的in order commit這個階段就已經不會

mistel, 50F
有任何有問題的指令了嗎?

DLHZ, 51F
是 除了branch missprediction 其他在設計上都會處理好

mistel, 52F
感謝 真希望趕快考完來拜讀A Quantitative Approach這本

mistel, 53F

DLHZ, 54F
此時不看更待何時XD!!

chiuchang, 55F
噢 原來啊 我明白了 謝謝各位

mistel, 56F
我擔心現在亂看然後似懂非懂的 考出來更慘烈

mistel, 57F
不過真的有感覺到白算盤的東西比較淺一點...

DLHZ, 58F
那相信在座的各位都會希望你現在看的

chiuchang, 59F
各位都是20天後的考生嗎