【不叫賭俠的陳小刀】評論
CPU處理指令流程:取指(fetch)取值階段從存儲器讀取指令位元組,放到指令存儲器(CPU中)中,地址為程式計數器(PC)的值。它按順序的方式計算當前指令的下一條指令的地址(即PC的值加上已取出指令的長度)。解碼(decode)ALU從暫存器檔案(通用暫存器的集合)讀入最多兩個運算元。(即一次最多讀取兩個暫存器中的內容)執行(execute)在執行階段會根據指令的類型,將算數/邏輯單元(ALU)用於不同的目的。對其他指令,它會作為一個加法器來計算增加或減少棧指針,或者計算有效地址,或者只是簡單地加0,將一個輸入傳遞到輸出。條件碼暫存器(CC)有三個條件位。ALU負責計算條件碼新值。當執行一條跳轉指令時,會根據條件碼和跳轉類型來計算分支信號cnd。訪存(memory)訪存階段,數據存儲器(CPU中)讀出或寫入一個存儲器字。指令和數據存儲器訪問的是相同的存儲器位置,但是用於不同的目的。寫回(write back)寫回階段最多可以寫兩個結果到暫存器檔案。暫存器檔案有兩個寫連線埠。連線埠E用來寫ALU計算出來的值,而連線埠M用來寫從數據存儲器中讀出的值。更新PC(PC update)根據指令代碼和分支標誌,從前幾步得出的信號值中,選出下一個PC的值。