[理工] 計組pipeline branch predict

看板Grad-ProbAsk作者 (EEcheng)時間6年前 (2019/05/26 12:37), 6年前編輯推噓1(1017)
留言18則, 2人參與, 6年前最新討論串1/1
想問一題出現在白算盤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

05/26 20:24, 6年前 , 1F
我想你的想法跟pg.320搞混了,這邊算是比較tricky的地
05/26 20:24, 1F

05/26 20:25, 6年前 , 2F
方,pg.320可以用這樣的方法為什麼前面提到的不行?
05/26 20:25, 2F

05/26 20:26, 6年前 , 3F
你可以仔細觀察一下,文字(pg.318)提到flush的話,是一
05/26 20:26, 3F

05/26 20:27, 6年前 , 4F
次flush哪些stage?
05/26 20:27, 4F

05/26 20:28, 6年前 , 5F
還有pg.304 Figure4.51他的branch AND gate畫在哪?
05/26 20:28, 5F

05/26 20:29, 6年前 , 6F
能回答這兩個問題的話,你的疑問就不在了。
05/26 20:29, 6F

05/26 22:14, 6年前 , 7F
@b10007034 那個and gate是在m,可是這題不是說在ex就
05/26 22:14, 7F

05/26 22:14, 6年前 , 8F
知道了?
05/26 22:14, 8F

05/26 22:21, 6年前 , 9F
318說的flush要沖掉三個state,這是指還沒把檢查branch
05/26 22:21, 9F

05/26 22:21, 6年前 , 10F
提前的情況吧,因為原版的在ex做完才知道
05/26 22:21, 10F

05/26 22:22, 6年前 , 11F
至於你問的第一個問題我還是不太懂,方便解釋一下嗎,
05/26 22:22, 11F

05/26 22:22, 6年前 , 12F
感謝你
05/26 22:22, 12F

05/27 11:38, 6年前 , 13F
tricky的地方就是課本沒把block diagram畫出來branch
05/27 11:38, 13F

05/27 11:38, 6年前 , 14F
and gate在哪裡,加上課本只有提到兩種方法
05/27 11:38, 14F

05/27 11:39, 6年前 , 15F
改良前後,所以我認為這邊的branch outcome指的是addr
05/27 11:39, 15F

05/27 11:41, 6年前 , 16F
及zero的結果
05/27 11:41, 16F

05/27 11:44, 6年前 , 17F
另外你的想法cost要為2個cycle的話,只要and gate在EX
05/27 11:44, 17F

05/27 14:03, 6年前 , 18F
嗯嗯,感謝你
05/27 14:03, 18F
文章代碼(AID): #1SwXW0QJ (Grad-ProbAsk)