Risc-V指令集中文文档 - 迈克老狼

时间:2024-03-10 12:20:35

Risc-V指令集中文文档

     RiscV官方文档规范:https://riscv.org/specifications/

     Risc-V文档包括:非特权指令集架构(最早称作用户层指令集架构)文档和特权指令集架构文档,下面这两个文件的官网链接。

     一些有用的文档,论坛和开源rtl实施链接:

     蜂鸟e203 riscv:https://github.com/SI-RISCV/e200_opensource

     RISCY is an in-order 4-stage RISC-V RV32IMFCXpulp CPU:https://github.com/pulp-platform/riscv

     Risc-V中文手册:http://crva.io/documents/RISC-V-Reader-Chinese-v2p1.pdf

     芯来公司的Risc-V论坛:https://bbs.nucleisys.com/

《手把手教你设计CPU:RISC-V处理器篇》
《RISC-V架构与嵌入式开发快速入门》
《computer architecture a quantitative approach 6th》
《Computer Organization and Design RISC-V Edition The Hardware Software Interface》

    Risc-V的指令集是模块化的,非特权指令集主要包括以下模块,其中有些模块已经正式被RiscV基金会批准生效。有些模块是冻结状态,有些模块仍然是草案,还在讨论之中。

基础模块:

RVWMO, V2.0, 批准(Ratified):  RiscV内存一致性模型。

RV32I, V2.1, 批准(Ratified):  基础的32位整数指令集,32位地址空间,寄存器是32位。

RV64IV2.1,批准(Ratified):   基础的64位整数指令集,64位地址空间,寄存器是64位。

RV32E, V1.9, 草案(Draft):  嵌入式架构,仅有16个整数寄存器。

RV128IV1.7草案(Draft):  基础的的128位整数指令集,支持128位地址空间。

扩展模块:

ZiFencei,V2.0,批准(Ratified):  Instruction-Fetch Fence。

Zicsr,  V2.0, 批准(Ratified):  控制和状体寄存器指令。

M,  V2.0,  批准(Ratified):  支持乘法和除法指令。

A,V2.0,冻结(Freeze):  支持原子操作指令和Load-Reserved/store-Conditional指令。

F,V2.2,批准(Ratified):  单精度浮点指令。

D,V2.2,批准(Ratified):  双精度浮点指令。

Q,V2.2,批准(Ratified):  四精度浮点指令。

C,V2.0,批准(Ratified):  支持编码长度为16的压缩指令。

Ztso, V0.1, 冻结(Freeze):  Total Store ordering。

Counters, V2.0, 草案(Draft):  性能统计Counters

L,V0.0, 草案(Draft):  十进制浮点数,IEEE754-2008。

B,V0.0,草案(Draft):  位操作指令。

J,V0.0,  草案(Draft):  支持动态转化语言。

T,V0.0,草案(Draft):  transactional memory operations。

P,V0.2,草案(Draft):  Packed-SIMD Instructions。

V,V0.2,草案(Draft):  向量操作指令。

N,V1.1,草案(Draft):  用户层的终端和异常指令。

Zam,V0.1,草案(Draft):  非对齐的原子指令。



本文档的主要内容:

1. Riscv简要概括

2. Riscv整数指令集 RV32I V2.1

……