[爆卦]Data hazard是什麼?優點缺點精華區懶人包

為什麼這篇Data hazard鄉民發文收入到精華區:因為在Data hazard這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者livingforest (ecec780)看板Grad-ProbAsk標題[理工] 計組 da...


想請問第二小題的是否resolvable by forwarding
我畫出來的pipeline和forwarding跟解答不太一樣

我的想法是(I1, I3), (I4, I6)的data hazard因為register在同個cycle先寫入後讀取
所以在第5、第9個cycle時,I3的$t2和I6的$t4可以得到正確的值,不需forwarding
剩下的就如我畫出來的

不知道我是不是有什麼地方搞錯了

https://imgur.com/huDMHMS

https://imgur.com/CVy5kCT

https://imgur.com/42Lk8aQ

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.115.45.229 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1597682509.A.A46.html
※ 編輯: livingforest (59.115.45.229 臺灣), 08/18/2020 00:46:07
NTUmaki: 4,6 你想想看 add 什麼時候才會寫入暫存器? 1,3 我不清 08/18 18:32
NTUmaki: 楚 他一個是從記憶load 我不確定是不是會比讀暫存器還快 08/18 18:32
NTUmaki: 老師上課說先寫後讀是針對暫存器那邊,記憶體我記得沒說 08/18 18:34
NTUmaki: 過誰會先 但是牽扯到記憶體應該比暫存器還慢 所以我覺得 08/18 18:34
NTUmaki: 他會先拿暫存器舊值,然後才會被load進新值 08/18 18:34
livingforest: add最快在EX產生正確的值,然後到MEM forwarding給s 08/18 21:04
livingforest: w,可是5,6遇到load use需要stall一個cycle,sw在st 08/18 21:04
livingforest: all的那個cycle時add將正確的值寫入暫存器sw再從暫 08/18 21:04
livingforest: 存器讀出,這樣不就不需要forwarding了嗎? 08/18 21:04
jason35512: 13 46間都剛好有一個load use所以會stall一個clock 09/11 14:44
jason35512: 所以那兩個都不用fowarding就可以拿到正確的值 09/11 14:44
jason35512: 在先寫後讀的前提下 09/11 14:45

你可能也想看看

搜尋相關網站