RV64 - 64位地址指令

RV64 - 64位地址指令

  • [1 RV64G介绍](#1 RV64G介绍)
  • [2 RV64G增加的指令](#2 RV64G增加的指令)

本文属于《 RISC-V指令集基础系列教程》之一,欢迎查看其它文章。

1 RV64G介绍

RV32I + RV32M + RV32A + RV32F + RV32D = RV32G,那么RV32G 指令的64 位版本 -- RV64G 指令,其示意图,如下(图9.1 至9.4)所示:



灰色部分是将操作扩展到64 位寄存器的旧RV32指令,而深(红)色部分是RV64的新指令。

由图可见,将RISC-V 扩展为64 位只需加入少数指令:32 位指令的字(word)、双字(doubleword)和长字(long)版本,并将包括PC 的所有寄存器扩展为64 位。因此,RV64I 中sub指令的操作数是两个64 位数,而非RV32I 中的32 位数。RV64 和RV32 很接近,但实际上是不同的ISA:RV64 增加少量指令,基础指令的行为也稍有不同。

尽管RV64I 的地址和默认数据大小均为64 位,32 位字仍是程序中的有效数据类型。因此,像RV32I 需要支持字节和半字操作一样,RV64I 也需要支持字操作。

2 RV64G增加的指令

RV64I增加的指令,如下所示:

RV64M增加的指令,如下所示:

RV64A增加的指令,如下所示:

RV64F增加的指令,如下所示:

RV64D增加的指令,如下所示:

本文中的这些指令较多,具体指令详细含义,见RISC-V指令手册,不再赘述。

相关推荐
openKylin3 天前
填补空白!openKylin率先完成RISC-V商业打印驱动全适配
risc-v
wa的一声哭了5 天前
python基础知识pip配置pip.conf文件
java·服务器·开发语言·python·pip·risc-v·os
GateWorld8 天前
RISC-V:开源芯浪潮下的技术突围与职业新赛道 (二) RISC-V架构深度解剖(上)
架构·risc-v·指令集精简·寄存器设计·特权架构·模块化扩展
inquisiter9 天前
在RISC-V开发板上更换SBI
risc-v
GateWorld9 天前
RISC-V:开源芯浪潮下的技术突围与职业新赛道 (一)为什么RISC-V是颠覆性创新?
开源·risc-v
OpenAnolis小助手9 天前
Anolis OS 23 架构支持家族新成员:Anolis OS 23.3 版本及 RISC-V 预览版发布
开源·操作系统·龙蜥社区·risc-v·anolis os·龙蜥操作系统
天高云淡ylz9 天前
各类电子设备镜像格式及文件系统统计
linux·windows·risc-v
yangn025 天前
RISC-V h拓展
risc-v
夏天Aileft25 天前
Qemu搭建RISC-V,运行opensbi+u-boot+img
qemu·risc-v
yangn025 天前
RISC-V 指令集拓展类别
risc-v