指令集名称 | 描述 | 版本 | 状态 |
---|---|---|---|
RV32I | 基本整数指令集, 32位元 | 2.1 | 已批准 |
RV32E | 基本整数指令集(嵌入式系统), 32位元, 16 个暂存器 | 2.0 | 已批准 |
RV64I | 基本整数指令集, 64位元 | 2.1 | 已批准 |
RV64E | 基本整数指令集(嵌入式系统), 64位元, 16 个暂存器 | 2.0 | 已批准 |
RV128I | 基本整数指令集, 128位元 | 1.7 | 开放 |
指令集名称 | 描述 | 版本 | 状态 |
---|---|---|---|
M | 整数乘除法标准扩充 | 2.0 | 已批准 |
A | 不可中断指令(Atomic)标准扩充 | 2.1 | 已批准 |
F | 单精度浮点标准扩充 | 2.2 | 已批准 |
D | 双精度浮点标准扩充 | 2.2 | 已批准 |
Zicsr | 控制与状态寄存器 | 2.0 | 已批准 |
Zifencei | 指令抓取屏障 | 2.0 | 已批准 |
G | 所有以上的扩充指令集以及基本指令集的总和的简称 | 不适用 | 不适用 |
Q | 四精度浮点标准扩充 | 2.2 | 已批准 |
L | 十进位浮点标准扩充 | 0.0 | 开放 |
C | 压缩指令标准扩充 | 2.0 | 已批准 |
B | 位元运算标准扩充 | 1.0 | 已批准 |
J | 动态指令翻译标准扩充 | 0.0 | 开放 |
T | 顺序记忆体存取标准扩充 | 0.0 | 开放 |
P | 单指令多资料流(SIMD)运算标准扩充 | 0.9.10 | 开放 |
V | 向量运算标准扩充 | 1.0 | 冻结 |
Zk | 标量加密标准扩充 | 1.0.1 | 已批准 |
H | Hypervisor 标准扩充 | 1.0 | 已批准 |
S | Supervisor 标准扩充 | 1.12 | 已批准 |
Zam | 非对齐不可中断指令标准扩展 | 0.1 | 开放 |
Zihintpause | 暂停提示 | 2.0 | 已批准 |
Zihintntl | 非时间局部性提示 | 0.2 | 开放 |
Zfa | 额外浮点运算指令标准扩展 | 0.1 | 开放 |
Zfh | 半精度浮点标准扩展 | 1.0 | 已批准 |
Zfhmin | 半精度浮点最小集标准扩展 | 1.0 | 已批准 |
Zfinx | 整数寄存器单精度浮点标准扩展 | 1.0 | 已批准 |
Zdinx | 整数寄存器双精度浮点标准扩展 | 1.0 | 已批准 |
Zhinx | 整数寄存器半精度浮点标准扩展 | 1.0 | 已批准 |
Zhinxmin | 整数寄存器半精度浮点最小集标准扩展 | 1.0 | 已批准 |
Zmmul | 整数纯乘法标准扩展 | 1.0 | 已批准 |
Ztso | 全存储排序标准扩展 | 1.0 | 已批准 |
以上指令集状态更新截止 2023-12-13,最新状态可通过 https://zh.wikipedia.org/zh-hans/RISC-V 查询
基本指令集、扩展整数或浮点运算、多CPU系统使用的同步指令扩展,标准扩展指令MAFD被认为是大部分的一般运算都需要的,所以有一个字母的简称 G 用来表示 IMAFDZicsr_Zifencei。
使用嵌入式系统的一个小的32位电脑可能用 RV32EC,而大型的64位电脑可以用 RV64GC,即 RV64IMAFDCZicsr_Zifencei 的简称。
随着扩展指令集数量的增加,指令集标准提供了另外一种命名方式,用 Z 前缀紧接着字母名称表示标准扩展,例如 Zifencei 表示指令抓取屏障扩展。