[理工] pipeline harzard判斷
題目
第2跟第3小題:
http://i.imgur.com/Ht9ScNo.jpg

2.找出有forwarding跟沒有forwarding情況下所有的harzard
3.為了減少clock cycle time,把MEM stage一分為二,找出所有的hazard
答案
http://i.imgur.com/uqIcyfL.jpg

想問兩個問題
1.
第2小題,without forwarding那邊I2跟I4為何會有harzard? 因為I2跟I3已經有hazard,如果透過compiler在I2跟I3間插入兩個nop指令,I2跟I4的距離不就>2了嗎?
像這樣
add $2,$3,$3
nop
nop
add $1,$1,$2
sw $1,20($2)
還是說要看有沒有hazard以還沒插入nop的情況為準?
2.
第3小題為什麼在with forwarding的情況下只有I1跟I3有hazard,I2跟I4不會有嗎?
add $2,$3,$3在MEM2階段應該沒辦法透過forwarding去救sw $1,20($2)吧,MEM harzard不是要到WB階段經過multiplexer才把線拉去forwarding嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.13.48.122
※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1492953726.A.FB9.html
→
04/23 21:22, , 1F
04/23 21:22, 1F
→
04/23 21:29, , 2F
04/23 21:29, 2F
※ 編輯: shownlin (101.13.48.122), 04/23/2017 22:52:52
推
04/24 00:58, , 3F
04/24 00:58, 3F
→
04/24 01:00, , 4F
04/24 01:00, 4F
→
04/24 01:00, , 5F
04/24 01:00, 5F
→
04/24 01:01, , 6F
04/24 01:01, 6F
→
04/24 01:01, , 7F
04/24 01:01, 7F
推
04/24 01:05, , 8F
04/24 01:05, 8F
→
04/24 01:06, , 9F
04/24 01:06, 9F
→
04/24 01:07, , 10F
04/24 01:07, 10F
→
04/24 01:07, , 11F
04/24 01:07, 11F
推
04/24 02:07, , 12F
04/24 02:07, 12F
所以Data Hazard跟Data Dependency是一樣的東西嗎?
因為我以為發生hazard就代表一定會有penalty存在...
另外第二題就是要想成MEM1跟MEM2兩個都有各自的pass路徑囉?
原本是想成原本的forwarding因為一分為二,
所以bypass的路徑一定是落在MEM1或MEM2其中一個階段...
所以是指原本的EX Hazard 和 MEM Hazard之外又多了一條pass的路徑?
※ 編輯: shownlin (220.135.175.163), 04/24/2017 03:56:46
→
04/24 17:23, , 13F
04/24 17:23, 13F
→
04/24 17:24, , 14F
04/24 17:24, 14F
→
04/24 17:26, , 15F
04/24 17:26, 15F
→
04/24 17:27, , 16F
04/24 17:27, 16F
→
04/24 17:28, , 17F
04/24 17:28, 17F
→
04/24 19:00, , 18F
04/24 19:00, 18F
→
04/24 19:00, , 19F
04/24 19:00, 19F
→
04/24 19:01, , 20F
04/24 19:01, 20F
→
04/24 20:03, , 21F
04/24 20:03, 21F
→
04/24 20:05, , 22F
04/24 20:05, 22F
→
04/24 20:06, , 23F
04/24 20:06, 23F
→
04/24 20:07, , 24F
04/24 20:07, 24F