RISC-V ISA Explorer ยท Base ISA

RV64E: Embedded Base (64-bit, 16 regs)

Ratified

Embedded 64-bit base with only 16 integer registers, trading register count for smaller, cheaper cores.

Typical use: Efficient 64-bit controllers

Specification

Open RV64E in the explorer

Dependencies

Incompatible with

Instructions (53)

MnemonicNameEncodingMatchMask
ADDInteger add0000000----------000-----01100110x330xfe00707f
ADDIAdd immediate-----------------000-----00100110x130x707f
ADDIWAdd immediate word-----------------000-----00110110x1b0x707f
ADDWAdd word0000000----------000-----01110110x3b0xfe00707f
ANDAnd0000000----------111-----01100110x70330xfe00707f
ANDIAnd immediate-----------------111-----00100110x70130x707f
AUIPCAdd upper immediate to pc-------------------------00101110x170x7f
BEQBranch if equal-----------------000-----11000110x630x707f
BGEBranch if greater than or equal-----------------101-----11000110x50630x707f
BGEUBranch if greater than or equal unsigned-----------------111-----11000110x70630x707f
BLTBranch if less than-----------------100-----11000110x40630x707f
BLTUBranch if less than unsigned-----------------110-----11000110x60630x707f
BNEBranch if not equal-----------------001-----11000110x10630x707f
EBREAKBreakpoint exception000000000001000000000000011100110x1000730xffffffff
ECALLEnvironment call000000000000000000000000011100110x730xffffffff
FENCEMemory ordering fence-----------------000-----00011110xf0x707f
FENCE.TSOMemory ordering fence, total store ordering100000110011-----000-----00011110x8330000f0xfff0707f
JALJump and link-------------------------11011110x6f0x7f
JALRJump and link register-----------------000-----11001110x670x707f
LBLoad byte-----------------000-----00000110x30x707f
LBULoad byte unsigned-----------------100-----00000110x40030x707f
LDLoad doubleword-----------------011-----00000110x30030x707f
LHLoad halfword-----------------001-----00000110x10030x707f
LHULoad halfword unsigned-----------------101-----00000110x50030x707f
LUILoad upper immediate-------------------------01101110x370x7f
LWLoad word-----------------010-----00000110x20030x707f
LWULoad word unsigned-----------------110-----00000110x60030x707f
OROr0000000----------110-----01100110x60330xfe00707f
ORIOr immediate-----------------110-----00100110x60130x707f
SBStore byte-----------------000-----01000110x230x707f
SDStore doubleword-----------------011-----01000110x30230x707f
SHStore halfword-----------------001-----01000110x10230x707f
SLLShift left logical0000000----------001-----01100110x10330xfe00707f
SLLIShift left logical immediate000000-----------001-----00100110x10130xfc00707f
SLLIWShift left logical immediate word0000000----------001-----00110110x101b0xfe00707f
SLLWShift left logical word0000000----------001-----01110110x103b0xfe00707f
SLTSet on less than0000000----------010-----01100110x20330xfe00707f
SLTISet on less than immediate-----------------010-----00100110x20130x707f
SLTIUSet on less than immediate unsigned-----------------011-----00100110x30130x707f
SLTUSet on less than unsigned0000000----------011-----01100110x30330xfe00707f
SRAShift right arithmetic0100000----------101-----01100110x400050330xfe00707f
SRAIShift right arithmetic immediate010000-----------101-----00100110x400050130xfc00707f
SRAIWShift right arithmetic immediate word0100000----------101-----00110110x4000501b0xfe00707f
SRAWShift right arithmetic word0100000----------101-----01110110x4000503b0xfe00707f
SRLShift right logical0000000----------101-----01100110x50330xfe00707f
SRLIShift right logical immediate000000-----------101-----00100110x50130xfc00707f
SRLIWShift right logical immediate word0000000----------101-----00110110x501b0xfe00707f
SRLWShift right logical word0000000----------101-----01110110x503b0xfe00707f
SUBSubtract0100000----------000-----01100110x400000330xfe00707f
SUBWSubtract word0100000----------000-----01110110x4000003b0xfe00707f
SWStore word-----------------010-----01000110x20230x707f
XORExclusive Or0000000----------100-----01100110x40330xfe00707f
XORIExclusive Or immediate-----------------100-----00100110x40130x707f