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指令手册,不再赘述。

相关推荐
云雾J视界6 天前
FPGA+RISC-V架构解析:构建高效传感器数据采集系统
fpga开发·架构·uart·risc-v·i2c·adxl345
电子科技圈8 天前
IAR与Quintauris携手推进RISC-V汽车实时应用的功能安全软件开发
嵌入式硬件·安全·设计模式·编辑器·汽车·risc-v
CinzWS9 天前
RISC-V RV32MCU 架构、启动与运行机制深度剖析
risc-v·exception
stay_cloud9 天前
RISC-V MCU 串口通信记录 —— 基于Genesys2
mcu·uart·risc-v
ChipCamp9 天前
芯片开发验证之RISC-V编译器:绕过构建的烦恼,直接用Arduino的
编译器·risc-v·objdump·汇编器·objcopy
全球通史12 天前
[特殊字符] RISC-V实战:从0到100+FPS!进迭时空(Spacemit)开发板YOLOv8部署终极指南
嵌入式硬件·yolo·risc-v
码界奇点13 天前
Linux进程间通信三System V 共享内存完全指南原理系统调用与 C 封装实现
linux·c语言·网络·c++·ux·risc-v
飞凌嵌入式14 天前
【玩转多核异构】T153核心板RISC-V核的实时性应用解析
linux·嵌入式硬件·嵌入式·risc-v
卡奥斯开源社区官方14 天前
NVIDIA CUDA全面支持RISC-V深度解析:技术原理、开发实操与生态红利
risc-v
爱喝矿泉水的猛男14 天前
单周期Risc-V指令拆分与datapath绘制
运维·服务器·risc-v