MIPS架构与指令简介

1 什么是MIPS?

MIPS架构与指令简介_分布式

       MIPS是世界上很流行的一种RISC处理器。MIPS的意思是“无内部互锁流水级的微处理器”(Microprocessor without interlocked pipelined stages),其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福(Stanford)大学Hennessy教授领导的研究小组研制出来的。MIPS公司的R系列就是在此基础上开发的RISC工业产品的微处理器。这些系列产品为很多计算机公司采用构成各种工作站和计算机系统。MIPS是出现最早的商业RISC架构芯片之一,新的架构集成了所有原来MIPS指令集,并增加了许多更强大的功能。

1)MIPS架构

MIPS架构与指令简介_js_02

组成MIPS架构的主要部件有

• program counter (PC) –程序计数器

• instruction register (IR)-指令寄存器

• register file-寄存器堆

• arithmetic and logic unit (ALU) -算数逻辑单元

• memory-内存

(1)PC(Program counter-程序计数器)

MIPS架构与指令简介_js_03

PC是一个寄存器,存放着下一条将要取出指令的地址,也称作指令指针。

(2)Memory

   MIPS架构与指令简介_java_04

Memory分为两部分,一部分是Instruction memory,为了存储指令只读。另一部分是data memory 存储被指令操作的数据,可读可写。

(3)Instruction register (IR)-指令寄存器

MIPS架构与指令简介_js_05

保存当前正在解码的指令的寄存器。

    (4)Register file-寄存器堆

MIPS架构与指令简介_分布式_06

    寄存器:存储 32 位值的组件 MIPS寄存器文件包含32个寄存器。

(5)Arithmetic and logic unit (ALU)-算数逻辑单元

MIPS架构与指令简介_js_07

实现二进制算术和逻辑运算。

(6)Control unit—控制单元

MIPS架构与指令简介_java_08

控制数据路径的组件以实现 FDX 循环。

2)MIPS指令

       • I-Type (Immediate)

       • J-Type (Jump)

       • R-Type (Register)

(1)I-TYPE

MIPS架构与指令简介_java_09

        Op:操作码

        Rs:源操作数

        Rt:目的操作数

        Immediate:16bit补码的立即数

(2)J-Type

MIPS架构与指令简介_分布式_10

  Op:操作码

  Target:目标地址

(3) R-Type

MIPS架构与指令简介_编程语言_11

  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)