• 方案介绍
  • 相关推荐
申请入驻 产业图谱

32位MIPS CPU处理器Quartus软件verilog语言

05/08 10:42
1189
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

名称:32位MIPS CPU处理器Quartus软件verilog语言

软件:Quartus

语言:Verilog

要求:设计MIPS处理器,支持MIPS指令的CPU

演示视频

1. 设计说明

本设计为32位MIPS处理器,完全支持[MIPS手册上]上的所有核心指令。

系统框图如下:

运行周期

(a) 当时钟触发程序计数器(PC)时,帮助从模块read_instruction中获取下一条指令。

(b) inst_parser模块实现指令类型(R型、I型、J型),然后将指令解析为操作码、rs、rt、rd、移位量、函数、地址和立即数。

(c) 当操作码和功能码发生变化时,control_unit控制的所有信号都将被重置。

(d) 如果rs或rt寄存器发生变化并且存在读取信号,则read_registers模块将触发。

(e) 有关寄存器的信号,如“读取寄存器”或“写入寄存器”信号。%1

(f) 如果运算是算术运算,则rs和rt寄存器的内容以及移位量值将发送去ALU(算术逻辑单元)。

(g) 如果(e)信号是“写入寄存器”信号,则将结果发送到寄存器。%1

(h) 如果信号是关于内存的,如“写入内存”或“从内存读取”,则返回发送到内存。。。

(i) 控制存储器信号

(j) 如果信号是“从内存读取”,并且结果必须写入寄存器(lw命令),则将结果发送到read_register模块

单周期数据路径如下:

共有7个模块:

-Mips_core,主模块。

-read_instructions,读取下一条指令

-inst_parser,指令分析器

-control_unit,处理器的控制单元

-ALU32位,32位算术逻辑单元。

-read_data_memory,数据路径的数据内存

-read_registers:控制寄存器操作

2. 工程文件

3. 程序文件

4. 程序编译

5. RTL图

6. Testbench

7. 仿真图

相关推荐