看板 Grad-ProbAsk 關於我們 聯絡資訊
https://i.imgur.com/3zNiWMH.jpg 想請教第三小題 前面已有人問過,但我還是有一個疑問 問題ㄧ:解答中2 or 31的值是怎麼來的呢? 前面已有人回答:「因為beq指令的RegDst是X(所以可以是1也可以是0),所以他可能會有兩個值,可以選Instructions [20-16]或者[15-11] 」 問題二:所以此題的WriteRegister的input可以來自rs或rt欄位,對嗎? 感謝回答的各位 ----- Sent from JPTT on my iPhone -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.251.239.160 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1577545114.A.34F.html
mistel: 簡單一點想,其實進入write register的值他的來源有兩種 12/28 23:09
謝謝m大回答,所以說b小題的Write Register的值是多少不重要嗎? 所以若不是寫2及31這兩個答案也可以嗎?
mistel: ,分別是rt或是rd,在一般寫入的情況為了寫入正確的值所 12/28 23:09
mistel: 以我們會控制多工器讓rt或rd的值流入,但在beq時我們並不 12/28 23:09
mistel: 在乎這個值是什麼,所以rt或rd流入都沒差,反正ALU會把re 12/28 23:09
mistel: gWrite設成0, 在0這個訊號會把錯誤的值擋下來 12/28 23:09
mistel: 2. rt或rd 去對照一下single cycle machine的電路圖rs的 12/28 23:13
mistel: 是25-21 rt對應20-16 rd對應的是15-11 只是在beq這個指令 12/28 23:13
mistel: 中,流入regWrite的是rt跟rd,而原本應該是pseudo addres 12/28 23:13
還有想再請教一個問題,指令最前面六位元的op code需要背嗎?
mistel: s的15-0也會流到他該流的地方 12/28 23:13
※ 編輯: jean20157 (111.251.239.160 臺灣), 12/29/2019 07:58:09 ※ 編輯: jean20157 (111.251.239.160 臺灣), 12/29/2019 07:58:55
mistel: 不是都可以,流進去的值就那兩種,所以你只能寫那兩種 12/29 08:56
mistel: OP CODE不用背 12/29 08:57
了解,謝謝m大! ※ 編輯: jean20157 (111.251.239.160 臺灣), 12/29/2019 11:54:10