SXLEN-1:0
VALUE
WARLS 模式陷阱返回虚拟地址。sepc 是 WARL,必须能保存所有有效虚拟地址;bit 0 恒为 0;当 IALIGN=32 时,bit 1 读取时被屏蔽为 0,但仍可写入保存。
这个字段控制什么
- - S 模式陷阱返回虚拟地址。sepc 是 WARL,必须能保存所有有效虚拟地址;bit 0 恒为 0;当 IALIGN=32 时,bit 1 读取时被屏蔽为 0,但仍可写入保存。
常见取值
这个字段更适合结合上下文字段解释,不用按固定枚举背诵。
监管者异常程序计数器,保存进入 S 模式陷阱时的虚拟地址。
S 模式陷阱返回虚拟地址。sepc 是 WARL,必须能保存所有有效虚拟地址;bit 0 恒为 0;当 IALIGN=32 时,bit 1 读取时被屏蔽为 0,但仍可写入保存。
这个字段更适合结合上下文字段解释,不用按固定枚举背诵。
sepc 保存 S 模式陷阱返回地址。它不是普通整数寄存器:地址字段是 WARL,bit 0 固定为 0,IALIGN=32 时读取会屏蔽 bit 1。
进入 S 模式陷阱后读取 sepc,确定返回或诊断所需的虚拟地址。
如果 handler 需要跳过或重试指令,按 WARL 规则写入新的 sepc。
执行 SRET 前确认 sepc、sstatus.SPP/SPIE 等返回状态一致。
不能只看 CSR 名称判断。官方 CSR 地址编码和表格给出最低访问特权级;sepc 当前记录为 S模式,权限不足或未实现时访问会触发非法指令异常。
sepc 是 WARL。写入的地址不一定按普通整数原样保留;bit 0 固定为 0,IALIGN=32 时 bit 1 读取会被屏蔽。