作者privatewind (傷神客)
看板Grad-ProbAsk
標題Re: [理工] 計組的RAW WAR
時間Fri Aug 13 19:40:57 2010
※ 引述《MVPkobe (每一口氣都要活出誓約!!)》之銘言:
: 假如指令為 sw S1 0(S2)
: lw S3 4(S2)
: 會發生RAW嗎,答案是不會
: 可是sw不是把S1寫入S2了嗎? lw的S2也是做讀取
: 這樣不就是RAW的定義嗎,先寫入在讀取?
: 還是我搞錯RAW的定義了
RAW- Read after write
sw S1,0(S2) # Mem[S2+0] = S1
lw S3,4(S2) # S3 = Mem[S2+4]
RAW是在描述hazard怎麼發生的
換言之,如果根本沒有hazard就不會有所謂的RAW
註: hazard有很多種,會用到RAW來描述發生環境的只有data hazard
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.126.187.85
→ privatewind:忘了說 答案是不會 08/13 19:42
→ privatewind:另外就是lw及sw是memory reference instuction 08/13 19:43
推 MVPkobe:是說這本來就沒有hazard嗎? lw不會讀到比sw更早的S2嗎? 08/13 19:45
→ privatewind:請注意S2本身的值根本沒有更動 08/13 19:49
→ privatewind:在指令後面我有給 psedocode :) 08/13 19:51
→ daniel770624:只有讀S2.. 08/15 05:01