背景:

处理器发展的同时可编程逻辑器件也在发展,在上面可以实现十分复杂的电路,比如处理器,现在有很多可以下载到可编程逻辑器件上的运行 的处理器eg:NiosII,OR1200,LeON3,OpenSparc等,称为软核处理器。

MIPS简介:

它是一款开源处理器,OpenMIPS结构的32位五级流水线标量处理器.可以使用MIPS编译开发,使用VHDL和Verilog HDL两种语言编写。

一.Chapter-1

1.

 

自己动手写Chapter1

 

 

1.1 ISA的概念

1.1.1

自己动手写Chapter1

1.1.2 根据ISA的不同将计算机分为CISC(复杂指令计算机)对应的0,1编码长度不一,RISC(精简指令计算机)每条对应的是固定的。

1.1.3

自己动手写Chapter1

MIPS(Microprocessor without Interlocked piped stages)无内索流水线微处理器

1.1.4

自己动手写Chapter1

 

1.1.5

自己动手写Chapter1

1.1.6

MIPS32架构定义32个通用寄存器,使用S0,S1...S32表示,都是32位

自己动手写Chapter1

自己动手写Chapter1

自己动手写Chapter1

1.16 字节次序

自己动手写Chapter1

 

 

 

1.16 指令格式

自己动手写Chapter1

 

 

1.17 寻址方式

MIPS32架构的寻址方式有四种

分别是寄存器寻址,立即数寻址,寄存器寻址,和PC相对寻址

其中寄存器寻址,PC相对寻址的介如下

自己动手写Chapter1

 

自己动手写Chapter1

 

1.18 协处理器 CPO

协处理器用来表示处理器的一个可选部件,负责处理指令集的某个扩展,拥有与处理器相对独立的寄存器

MIPS架构提供最多四个协处理器

CP0~CP3

CP0----------------------------->系统控制,eg:配置CPU工作状态,高速缓存控制,异常控制,存储管理单元控制等。

CP1,3----------------------------->浮点处理单元

CP2——————————>被保留用于特定实现

1.19

异常

自己动手写Chapter1

 

 

1.20(简要摘要)

本书目标实现一款兼容MIPS32指令集架构处理器。命名OpenMIPS,用verilogHDL编译后的代码下载到FPGA芯片上

组成实际的硬件电路

教学版,要求尽量简单,eg:在一个时钟周期就可以取到指令,完成存储,加载数据,比较理想化,流水线运行

实践版,在教学版上实现Wishbone总线接口,这样就可以将其挂在Wishbone总线上,从而可以使用

SDRAM,FLASH,GPIO,UART,LCD等模块的控制器,成为一个实际作用 的处理器

 

 

 

 

 

 

 

 

 

 

 

 

 

相关文章: