MIPS架構與指令簡介
1 什么是MIPS?
MIPS是世界上很流行的一種RISC處理器。MIPS的意思是“無內部互鎖流水級的微處理器”(Microprocessor without interlocked pipelined stages),其機制是盡量利用軟件辦法避免流水線中的數據相關問題。它最早是在80年代初期由斯坦福(Stanford)大學Hennessy教授領導的研究小組研制出來的。MIPS公司的R系列就是在此基礎上開發(fā)的RISC工業(yè)產品的微處理器。這些系列產品為很多計算機公司采用構成各種工作站和計算機系統(tǒng)。MIPS是出現最早的商業(yè)RISC架構芯片之一,新的架構集成了所有原來MIPS指令集,并增加了許多更強大的功能。
1)MIPS架構
組成MIPS架構的主要部件有
• program counter (PC) –程序計數器
• instruction register (IR)-指令寄存器
• register file-寄存器堆
• arithmetic and logic unit (ALU) -算數邏輯單元
• memory-內存
(1)PC(Program counter-程序計數器)
PC是一個寄存器,存放著下一條將要取出指令的地址,也稱作指令指針。
(2)Memory
Memory分為兩部分,一部分是Instruction memory,為了存儲指令只讀。另一部分是data memory 存儲被指令操作的數據,可讀可寫。
(3)Instruction register (IR)-指令寄存器
保存當前正在解碼的指令的寄存器。
(4)Register file-寄存器堆
寄存器:存儲 32 位值的組件 MIPS寄存器文件包含32個寄存器。
(5)Arithmetic and logic unit (ALU)-算數邏輯單元
實現二進制算術和邏輯運算。
(6)Control unit—控制單元
控制數據路徑的組件以實現 FDX 循環(huán)。
2)MIPS指令
• I-Type (Immediate)
• J-Type (Jump)
• R-Type (Register)
(1)I-TYPE
Op:操作碼
Rs:源操作數
Rt:目的操作數
Immediate:16bit補碼的立即數
(2)J-Type
Op:操作碼
Target:目標地址
(3) R-Type
Op:operation code (opcode)
Rs:first source register number
Rt:second source register number
Rd:destination register number
Shamt:shift amount(00000 for now)
Funct:function code (extends opcode)