看板 Grad-ProbAsk 關於我們 聯絡資訊
https://i.imgur.com/usX3LCB.jpg
https://i.imgur.com/oPvFOej.jpg
請問第六個Cycle的Processor 2 beqz $t0, try判斷原先的$t0為零而branch到try之後 最終$t0的值為何為零? (為何store conditional仍失敗?) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.173.211.168 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1662780797.A.827.html ※ 編輯: u04fup (1.173.211.168 臺灣), 09/10/2022 11:34:32 ※ 編輯: u04fup (1.173.211.168 臺灣), 09/10/2022 11:40:39
irisowo: sc 仍失敗是什麼意思?這題感覺把指令完成的結果放在同一 09/15 02:30
irisowo: 行耶~ 09/15 02:30
irisowo: cycle 5 時processor 2 存取失敗,故將processor2 的 $t0 09/15 02:30
irisowo: 設成0,下一行判斷要不要跳而已(?) 09/15 02:30
irisowo: 如果你是要問為什麼會存失敗,回去看ll跟sc 的用法就好~ 09/15 02:31
irisowo: 他們兩個是成對使用,會紀錄位址有沒有被改寫。 09/15 02:31
irisowo: 所以processor2 先下ll ,接著取值的位置被processor 1改 09/15 02:31
irisowo: 成2,所以processor 2要用sc 改值時會失敗~ 09/15 02:31
懂了,感謝您 ※ 編輯: u04fup (1.175.223.120 臺灣), 09/15/2022 17:38:23