知识门户

返回

第3章 寄存器与总线

第一篇 基础篇

3.1 寄存器组设计#

寄存器是 CPU 内部最快速的存储单元。在我们的 MCU 原型中,我们需要设计两种寄存器:

  • 通用寄存器(GPR):用于算术运算和临时数据存储
  • 特殊功能寄存器(SFR):用于控制和状态指示

3.2 总线架构#

module bus_arbiter (
    input  clk,
    input  rst_n,
    input  [7:0] addr_bus_a,
    input  [7:0] data_bus_a,
    input  [7:0] addr_bus_b,
    input  [7:0] data_bus_b,
    output [7:0] addr_bus,
    output [7:0] data_bus
);
    // 简单的轮询仲裁
endmodule
verilog

3.3 地址空间映射#

一个完整的地址映射表:

地址范围设备说明
0x00-0x0F通用寄存器R0-R15
0x10-0x1FSFR状态与控制
0x20-0x3FSRAM内部数据存储
0x40-0x7F外设GPIO/UART/Timer