跳转至

CPU 核心模块

1. 模块概述

CPU 核心模块是整个 SoC 的核心处理单元,基于 RISC-V RV32IMC 指令集架构。

2. 接口

2.1 时钟与复位

信号 方向 描述
clk input 主时钟 (500MHz)
rst_n input 异步复位,低有效

2.2 指令接口 (AXI4)

信号 方向 描述
i_awvalid output 写地址有效
i_awready input 写地址就绪
i_wvalid output 写数据有效
i_wready input 写数据就绪
i_bvalid input 写响应有效
i_arvalid output 读地址有效
i_arready input 读地址就绪
i_rvalid input 读数据有效
i_rdata input 读数据

2.3 数据接口 (AXI4)

信号 方向 描述
d_awvalid output 写地址有效
d_awready input 写地址就绪
d_wvalid output 写数据有效
d_wready input 写数据就绪
d_bvalid input 写响应有效
d_arvalid output 读地址有效
d_arready input 读地址就绪
d_rvalid input 读数据有效
d_rdata input 读数据

2.4 中断接口

信号 方向 描述
irq input 外部中断请求
mtime_irq input 定时器中断

3. 功能描述

3.1 流水线架构

  • 5 级经典 RISC 流水线
  • IF (取指) → ID (译码) → EX (执行) → MEM (访存) → WB (写回)

3.2 支持的指令集

  • RV32I: 基本整数指令
  • M: 乘除法扩展
  • C: 压缩指令扩展

3.3 异常与中断

  • 支持 RISC-V 标准异常
  • 支持机器模式中断
  • 中断向量表可配置

4. 性能指标

指标
DMIPS/MHz 2.5
Coremark/MHz 3.0
CPI 1.0 (理想)

5. 实现文件

文件 描述
cpu_core.v 顶层模块
if_stage.v 取指级
id_stage.v 译码级
ex_stage.v 执行级
mem_stage.v 访存级
wb_stage.v 写回级
regfile.v 寄存器文件
alu.v ALU
mul_div.v 乘法器/除法器