Skip to content
jiajianong edited this page Jun 15, 2022 · 1 revision

CPU0

CPU0 是一個簡易的32位元處理器,主要用於教學,設計為簡單、容易理解,基本上不用考慮成本和速度。

CPU0的結構

CPU = ALU+暫存器+控制單元

ALU

採用二補數的方式進行整數運算。

具有加、减、乘、除、邏輯運算與旋轉移位等功能

ALU 可被想像成是 CPU 當中的小型處理器。

控制單元(Control Unit)

根據IR當中的運算碼決定 ALU 的運算類型。

控制資料的傳遞方向。

根據狀態暫存器 SW 的內容,決定是否要跳躍

CPU0的暫存器

R0:永遠為0

R1-R15:有15個可存取暫存器

CPUO的指令集

包含四大類的指令

  1. 載入儲存: LD, ST, ...

  2. 運算指令:ADD, SUB, XOR, SHL, ROL, ...

  3. 跳躍指令:JMP, JGT, JGE, ...

  4. 堆疊指令:PUSH, POP, ...

參考資料:https://speakerdeck.com/ccckmit/xi-tong-cheng-shi-di-2-zhang-dian-nao-de-ying-ti-jie-gou

Clone this wiki locally