看板 Grad-ProbAsk 關於我們 聯絡資訊
想問一題出現在白算盤4.15的題目 https://i.imgur.com/M8CMz7h.jpg 題目大概是在問如果用不同的predict方法,會造成幾個額外的cycle 而可以在ex知道branch的結果 提供的答案是 https://i.imgur.com/KCzqNSA.jpg 需要額外3個,但我覺得是兩個 下面用always not taken猜法 branch. F D E M W 猜not taken. F D E M W 下個指令 F D E M W 此刻知道 F D E M W branch結果 所以清掉前兩個 cycle的東西 但是答案說是三個,想請問為神麼 編輯: 上面cycle圖因為手機排版,我想表達的是每條指令都差一個cycle -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.236.38.212 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1558845440.A.693.html ※ 編輯: eecheng87 (36.236.38.212), 05/26/2019 12:38:50 ※ 編輯: eecheng87 (36.236.38.212), 05/26/2019 12:40:45 ※ 編輯: eecheng87 (36.236.38.212), 05/26/2019 12:42:14 ※ 編輯: eecheng87 (36.236.38.212), 05/26/2019 12:42:40 ※ 編輯: eecheng87 (36.236.38.212), 05/26/2019 12:43:24
b10007034: 我想你的想法跟pg.320搞混了,這邊算是比較tricky的地 05/26 20:24
b10007034: 方,pg.320可以用這樣的方法為什麼前面提到的不行? 05/26 20:25
b10007034: 你可以仔細觀察一下,文字(pg.318)提到flush的話,是一 05/26 20:26
b10007034: 次flush哪些stage? 05/26 20:27
b10007034: 還有pg.304 Figure4.51他的branch AND gate畫在哪? 05/26 20:28
b10007034: 能回答這兩個問題的話,你的疑問就不在了。 05/26 20:29
eecheng87: @b10007034 那個and gate是在m,可是這題不是說在ex就 05/26 22:14
eecheng87: 知道了? 05/26 22:14
eecheng87: 318說的flush要沖掉三個state,這是指還沒把檢查branch 05/26 22:21
eecheng87: 提前的情況吧,因為原版的在ex做完才知道 05/26 22:21
eecheng87: 至於你問的第一個問題我還是不太懂,方便解釋一下嗎, 05/26 22:22
eecheng87: 感謝你 05/26 22:22
b10007034: tricky的地方就是課本沒把block diagram畫出來branch 05/27 11:38
b10007034: and gate在哪裡,加上課本只有提到兩種方法 05/27 11:38
b10007034: 改良前後,所以我認為這邊的branch outcome指的是addr 05/27 11:39
b10007034: 及zero的結果 05/27 11:41
b10007034: 另外你的想法cost要為2個cycle的話,只要and gate在EX 05/27 11:44
eecheng87: 嗯嗯,感謝你 05/27 14:03