首页 > 解决方案 > RISCV32 与 RISCV64

问题描述

Riscv32 和 Riscv64 有什么区别?我一直在研究 ISA 文档,但在任何地方都找不到清楚地提到它,所以现在很困惑。

不幸的是,我无法从谷歌找到任何关于此的文档。任何指针?

标签: riscvriscv32

解决方案


RISC V 有很多选择。RV32I 和 RV64I 是基本指令集,分别为 32 位和 64 位。还有一个 128 位版本 RV128I 和一个较小的 32 位版本 RV32E,它只有 16 个通用寄存器,而其他有 32 个寄存器。

对于基本指令集,它们添加了可选的扩展,例如浮点、乘法和除法等,因此就像 RV32IMAC 基于 RV32I 以及 M、A 和 C 扩展。

RV32I、RV64I 和 RV128I 之间的主要区别在于寄存器的宽度,宽度为 32、64 或 128 位。

也有一些操作码差异。较大的宽度增加了一些指令来处理较大的尺寸。例如,RV64I 使用与 RV32I 相同的操作码进行加法,但表示 64 位加法而不是 32 位加法,而 RV64I 中有一个新的操作码用于仅进行 32 位加法 (addw)。RV64I 使用与 RV32I 相同的操作码进行加载和存储,但包括用于加载/存储 64 位值的新操作码。

也可以看看:


推荐阅读