• 掌握 PLIC 的优先级仲裁与 claim/complete 协议
  • 将外设中断源安全路由到多核上下文
  • 保证中断处理路径可重入、可恢复、可验证

13.1 PLIC 工作模型

  1. 外设拉起中断源 irq_i
  2. PLIC 根据优先级与使能计算 pending。
  3. CPU 读取 claim 得到中断号。
  4. CPU 处理后写 complete 完成清除流程。

13.2 核心寄存器

  1. Priority:每个源的优先级。
  2. Pending:源是否待处理。
  3. Enable:每个 context 的使能位图。
  4. Threshold:低于阈值不投递。

13.3 Claim/Complete 语义

  1. claim 读取会“消费”一个可服务中断。
  2. complete 写回对应中断号,通知处理结束。
  3. claim 与 complete 不匹配会导致中断状态异常。

13.4 多核注意事项

  1. 每核 context 独立配置。
  2. 同一中断源同一时刻只能被一个 context claim。
  3. 需防止重复投递与丢中断。

13.5 最小验证

  1. 单源单核:完整 claim/complete 回路。
  2. 多源同拍:优先级选择正确。
  3. 双核竞争:同一源不被双重 claim。

更新时间: