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位。
RV64I,V2.1,批准(Ratified): 基础的64位整数指令集,64位地址空间,寄存器是64位。
RV32E, V1.9, 草案(Draft): 嵌入式架构,仅有16个整数寄存器。
RV128I,V1.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
……