学习目标

  • 理解 PLIC
  • 实现中断路由
  • 支持多核中断

13.1 PLIC 结构

reg [31:0] priority [127:0];
reg [31:0] pending;
reg [31:0] enable [1:0];  // 每核使能

wire [6:0] irq_id = find_highest_priority();

13.2 中断流程

  1. 外设产生中断
  2. PLIC 仲裁
  3. 发送到目标核心
  4. 核心响应并清除

思考:如何分配中断到不同核?

下一步

第 14 章:DMA 控制器

更新时间: