RISC-V中断控制器硬件设计实战

📚 共计 30 章节
01
中断控制器概述
中断基本概念 · RISC-V系统作用 · PLIC/CLINT/AIA类型
基础架构
02
RISC-V特权架构与中断
M/S/U模式中断处理 · mtvec/stvec寄存器详解
特权级寄存器
03
CLINT核心架构
寄存器布局(msip/mtimecmp/mtime) · 内存映射与访问
CLINT寄存器
04
CLINT时序与中断产生
软件中断(MSI)触发 · 定时器中断(MTI)比较匹配
时序中断源
05
CLINT的Verilog实现(一)
顶层模块设计 · TileLink/APB握手协议
Verilog总线
06
CLINT的Verilog实现(二)
msip寄存器阵列 · 多核软件中断广播/定向
多核广播
07
CLINT的Verilog实现(三)
mtime/mtimecmp计数器 · 64位比较器低功耗
低功耗计数器
08
CLINT的Verilog实现(四)
中断仲裁与输出 · Pending/Clear机制
仲裁状态机
09
CLINT的功能验证(一)
UVM环境搭建 · 基于RISC-V指令的序列生成
UVM验证
10
CLINT的功能验证(二)
定向测试(软件/定时器/边界) · 覆盖率分析
测试覆盖率
11
PLIC核心架构
全局中断源管理 · Priority/Threshold寄存器
PLIC优先级
12
PLIC中断使能与挂起
IE寄存器组 · IP寄存器与跨时钟域同步
使能CDC
13
PLIC中断仲裁机制
优先级仲裁器 · Round-Robin调度算法
仲裁调度
14
PLIC中断通知与完成
Claim/Complete机制 · 目标上下文管理
握手上下文
15
PLIC的Verilog实现(一)
顶层划分 · APB/AXI-Lite从机寄存器读写
VerilogAPB
16
PLIC的Verilog实现(二)
中断源同步与边沿检测 · 电平/脉冲中断差异
同步边沿
17
PLIC的Verilog实现(三)
优先级比较器阵列 · 多目标并行仲裁分发
比较器并行
18
PLIC的Verilog实现(四)
Claim/Complete状态机 · 中断向量基址偏移
状态机向量
19
PLIC的功能验证(一)
SystemVerilog定向测试 · 多中断源同时触发
SV定向
20
PLIC的功能验证(二)
随机测试+形式化 · 延迟与吞吐量分析
随机形式化
21
AIA(高级中断架构)入门
AIA改进 · IMSIC与APLIC概述
AIA进阶
22
IMSIC核心设计
Interrupt File寄存器 · MSI地址映射投递
IMSICMSI
23
IMSIC的Verilog实现
中断文件状态机 · VS-mode虚拟中断支持
状态机虚拟化
24
APLIC核心设计
域(Domain)与组(Group) · 消息转换转发
APLIC
25
APLIC的Verilog实现
域配置寄存器 · 基于消息的跨电源域中断
跨域低功耗
26
中断控制器的低功耗设计
时钟门控 · 电源域划分与隔离单元
低功耗门控
27
中断控制器的DFT
扫描链插入 · MBIST与测试模式旁路
DFT可测试
28
中断控制器与CPU集成
Coreplex接口 · 硬件向量化/快速入口优化
集成优化
29
中断控制器在SoC中的验证
裸机系统级测试 · 嵌套与优先级抢占
SoC系统验证
30
项目实战:CLINT+PLIC SoC
搭建RISC-V SoC · 运行FreeRTOS任务切换
实战FreeRTOS