CSR 位字段

RISC-V vcsr CSR 寄存器详解

地址 0x00F特权级 User/向量访问 读写 / XLEN用户级向量状态 CSR

vcsr 是 XLEN 位读写向量控制与状态 CSR,通过 bit 2:1 和 bit 0 分别访问 vxrm 与 vxsat。

字段映射

按 bit 字段理解 vcsr

3 个关键字段
XLEN-1:3

Reserved

Reserved

保留位。

这个字段控制什么

  • - 保留位。

常见取值

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

打开官方手册
2:1

VXRM

读写

向量定点舍入模式;镜像独立 vxrm CSR 的 vxrm[1:0]。

这个字段控制什么

  • - 向量定点舍入模式;镜像独立 vxrm CSR 的 vxrm[1:0]。

常见取值

0RNU

向最近值舍入,平局向上(加 0.5 LSB)。

1RNE

向最近偶数舍入。

2RDN

向下舍入;舍入增量为零。

3ROD

向奇数舍入;将舍去位 OR 入最低位(jam)。

打开官方手册
0

VXSAT

读写

定点累积饱和标志;镜像独立 vxsat CSR 的 vxsat[0]。

这个字段控制什么

  • - 定点累积饱和标志;镜像独立 vxsat CSR 的 vxsat[0]。

常见取值

00

未指示定点指令为适配目标格式而饱和输出值。

11

指示至少一次定点指令为适配目标格式而饱和输出值。

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

vcsr 的低三位镜像 vxrm 舍入模式和 vxsat 累积饱和标志。

Table 47 定义 vcsr[2:1] 为 vxrm、vcsr[0] 为 vxsat,XLEN-1:3 为保留位。
vxrm 与 vxsat 的独立 CSR 也可访问这些字段。

读这个 CSR 时先看什么

  • - 访问向量 CSR 时,若 mstatus.VS 为 Off,会触发非法指令异常。
  • - vcsr 的低三位提供对独立 vxrm 和 vxsat CSR 的字段访问。

写入前的风险检查

  • - 仅 Table 47 定义的低三位具有本页所述含义;不要将保留位解释为其他控制字段。
  • - vxrm 与 vxsat 字段也可经各自独立 CSR 地址访问。

放回真实流程里理解

1

通过 vcsr[2:1] 读取或设置舍入模式。

2

通过 vcsr[0] 读取或设置累计饱和标志。

常见问题

vcsr 是否复制了 vxrm 和 vxsat?

vcsr 是 XLEN 位读写向量控制与状态 CSR,通过 bit 2:1 和 bit 0 分别访问 vxrm 与 vxsat。