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

本文详细描述了使用Quartus软件和Verilog语言设计的32位MIPS处理器,包括系统框图、各模块功能(如指令解析、控制单元等)、数据路径和测试环境。着重展示了单周期数据流程及工程文件的构成。
摘要由CSDN通过智能技术生成

名称: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. 仿真图

源代码

 扫描文章末尾的公众号二维码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值