CSR 位字段

RISC-V vstopi CSR 寄存器详解

地址 0xEB0特权级 Hypervisor 直接访问 / VS 别名访问访问 HRO(Hypervisor 只读) / VSXLENHypervisor 与虚拟化 CSR

vstopi 是VS 顶层中断只读报告 CSR。

字段映射

按 bit 字段理解 vstopi

1 个关键字段
VSXLEN-1:0

VSTOPI

只读

vstopi 的VS 顶层中断相关字段;详细编码按 AIA 规范解释。

这个字段控制什么

  • - vstopi 的VS 顶层中断相关字段;详细编码按 AIA 规范解释。

常见取值

这个字段更适合结合上下文字段解释,不用按固定枚举背诵。

打开官方手册
官方依据与检索要点

vstopi 是 AIA 虚拟中断 CSR。独立 CSR 地址用于 M/HS 侧管理;当 V=1 时,guest 对相应 supervisor CSR 的访问会替代到 VS 状态,除非官方扩展另有规定。

vstopi 的地址、访问类和宽度按官方 CSR 表核对:0xEB0,HRO(Hypervisor 只读),VSXLEN。
AIA 定义 h 六组虚拟中断 CSR 来增强 hvip 对 VS-level 中断注入的控制。
vstopi 是 VS-level top interrupt 的只读报告 CSR。
vstopi 是只读 CSR;读取到的保留位或实现定义值只按官方规范和实现行为解释。

读这个 CSR 时先看什么

  • - vstopi 的独立 CSR 地址按官方表属于 HRO(Hypervisor 只读) 访问类;VS/VU guest 通常通过对应 supervisor CSR 别名访问 VS 状态。
  • - 读取前确认 H/AIA/Sstc/Smstateen/Smcsrind 等定义该 CSR 的扩展已经实现。

写入前的风险检查

  • - vstopi 是只读 CSR;软件不应写入。

放回真实流程里理解

1

确认实现 AIA,并确认是否存在 IMSIC 或相关 guest interrupt file。

2

按 AIA 对 top interrupt、enable、pending、priority 或 delivery-control 的定义解释字段。

3

检查 mstateen0/hstateen0 对相关 AIA 状态的访问控制。

常见问题

vstopi 属于哪一类 AIA 状态?

vstopi 属于 AIA 的 Hypervisor/VS 虚拟中断状态,围绕 VS 顶层中断 使用。

vstopi 的访问受 state-enable 控制吗?

在实现 Smstateen 与 AIA 时,mstateen0/hstateen0 的 AIA、IMSIC 或 CSRIND 位可能控制较低特权级或 VM 对相关 AIA 状态的访问。