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