Bootstrap

RISCV指令集中的CSR寄存器与相关指令

risc-v 特权指令

CSR 相关指令

在这里插入图片描述
SYSTEM主操作码用于编码RISC-V ISA中的所有特权指令。这些指令可以分为两大类:

  • 一类是在Zicsr扩展中定义的自动读-修改-写控制和状态寄存器(csr)。
  • 一类是所有其他特权指令。

ISA对于标准的RISC-V ISA留出了一个12位的编码空间(csr[11:0]),最多可容纳4,096个csr。
CSR地址的上4位(CSR[11:8])用于根据特权级别对CSR的读写可访问性进行编码。
上面两位(csr[11:10])表示寄存器是读/写(00、01或10)还是只读(11)。
接下来的两位(csr[9:8])编码了可以访问csr的最低权限级别。

部分CSR寄存器:

在这里插入图片描述

1. CSRRW:

在这里插入图片描述

2. CSRRWI:

在这里插入图片描述

3. CSRRS

在这里插入图片描述

4. CSRRSI

在这里插入图片描述

5. CSRRC

在这里插入图片描述

6. CSRRCI

在这里插入图片描述

7. ECALL

在这里插入图片描述

8. MRET

在这里插入图片描述

参考链接USTC CECS 2023/lab4/priv/

;