U
读写选择记录 VU-mode 中的控制转移;该字段必须实现为可写。
这个字段控制什么
- - 选择记录 VU-mode 中的控制转移;该字段必须实现为可写。
vsctrctl(0x24E)是 H 扩展存在时 VS-mode 的 64 位 CTR 控制 CSR;V=1 时它替代 sctrctl。
选择记录 VU-mode 中的控制转移;该字段必须实现为可写。
选择记录 VS-mode 中的控制转移;该字段必须实现为可写。
保留位。软件读取时忽略并在写入时保留;未定义实现为只读 0。
启用返回地址栈(RAS)仿真模式;置 1 时记录调用、弹出函数返回、以返回加调用处理协程交换、禁止其他转移类型,并忽略 47:32 类型过滤位和 xTE。
当 VS-mode 未选择记录时,允许记录陷入 VS-mode 的外部陷阱;如果实现外部陷阱记录且实现 H 扩展,则必须实现 vsctrctl.STE。
保留位。软件读取时忽略并在写入时保留;未定义实现为只读 0。
断点异常陷入 VS-mode 时置 sctrstatus.FROZEN;该字段必须实现为可写。
本地计数器溢出中断陷入 VS-mode 时置 sctrstatus.FROZEN;实现 Sscofpmf 时该位必须可写。
保留位。软件读取时忽略并在写入时保留;未定义实现为只读 0。
禁止记录异常。
禁止记录中断。
禁止记录陷阱返回。
启用记录未采用分支;这是使能位而不是 inhibit 位。
禁止记录采用分支。
保留位。软件读取时忽略并在写入时保留;未定义实现为只读 0。
禁止记录间接调用。
禁止记录直接调用。
禁止记录不带链接的间接跳转。
禁止记录不带链接的直接跳转。
禁止记录协程交换。
禁止记录函数返回。
禁止记录带链接的其他间接跳转。
禁止记录带链接的其他直接跳转。
保留位。软件读取时忽略并在写入时保留;未定义实现为只读 0。
WARL custom bits;值 0 必须对应标准 CTR 行为。
vsctrctl 是 guest 可见的 CTR 控制副本。V=1 时它替代 sctrctl,使 guest 能配置 VS/VU 记录和过滤;V=0 时这些 guest 配置不影响 host CTR 行为。
确认 H、Smctr/Ssctr 与 Sscsrind 已实现,并检查 state-enable 门控。
在 V=1 guest 中通过 sctrctl alias 配置 VS/VU 记录使能、STE、冻结和过滤字段。
通过 vsiselect/vsireg* 或 siselect/sireg* alias 读取 CTR entry;sctrstatus.FROZEN 和深度仍是共享的 supervisor CTR 状态。
H 扩展实现时,vsctrctl 是 VS-mode 版本的 sctrctl;V=1 时对 sctrctl 的访问替代到 vsctrctl。
不能。规范说明 RV32 不能访问 xctrctl[63:32],且未定义 vsctrctlh 高半 CSR。