RISC-Vの基本命令セットRV32Iについて(2)
条件分岐命令(Conditional Branches)
imm |
rs2 |
rs1 |
funct3 |
imm |
opcode |
mnemonic
|
説明
|
[31:25] |
[24:20] |
[19:15] |
[14:12] |
[11:7] |
[6:0] |
offset |
rs2 |
rs1 |
000 |
offset |
1100011 |
BEQ |
「rs1=rs2」の時に分岐 |
offset |
rs2 |
rs1 |
001 |
offset |
1100011 |
BNE |
「rs1≠rs2」の時に分岐 |
offset |
rs2 |
rs1 |
100 |
offset |
1100011 |
BLT |
符号付きで「rs1<rs2」の時に分岐 |
offset |
rs2 |
rs1 |
101 |
offset |
1100011 |
BGE |
符号付きで「rs1≥rs2」の時に分岐 |
offset |
rs2 |
rs1 |
110 |
offset |
1100011 |
BLTU |
符号なしで「rs1<rs2」の時に分岐 |
offset |
rs2 |
rs1 |
111 |
offset |
1100011 |
BGEU |
符号なしで「rs1≥rs2」の時に分岐 |
ロード/ストア命令(Load and Store Instructions)
ロード命令
imm |
rs1 |
funct3 |
rd |
opcode |
mnemonic
|
説明
|
[31:20] |
[19:15] |
[14:12] |
[11:7] |
[6:0] |
offset |
base |
000 |
dest |
0000011 |
LB |
8ビットデータをロード(符号拡張) |
offset |
base |
001 |
dest |
0000011 |
LH |
16ビットデータをロード(符号拡張) |
offset |
base |
010 |
dest |
0000011 |
LW |
32ビットデータをロード |
offset |
base |
100 |
dest |
0000011 |
LBU |
8ビットデータをロード(ゼロ拡張) |
offset |
base |
101 |
dest |
0000011 |
LHU |
16ビットデータをロード(ゼロ拡張) |
ストア命令
imm |
rs2 |
rs1 |
funct3 |
rd |
opcode |
mnemonic
|
説明
|
[31:25] |
[24:20] |
[19:15] |
[14:12] |
[11:7] |
[6:0] |
offset |
src |
base |
000 |
dest |
0100011 |
SB |
8ビットデータをストア |
offset |
src |
base |
001 |
dest |
0100011 |
SH |
16ビットデータをストア |
offset |
src |
base |
010 |
dest |
0100011 |
SW |
32ビットデータをストア |
制御およびステータスレジスタ命令(CSR:Control and Status Register Instructions)
CSR Instructions
csr |
rs1 |
funct3 |
rd |
opcode |
mnemonic
|
説明
|
[31:20] |
[19:15] |
[14:12] |
[11:7] |
[6:0] |
source/dest |
source |
001 |
dest |
1110011 |
CSRRW |
CSRの交換(read only) |
source/dest |
source |
010 |
dest |
1110011 |
CSRRS |
CSRの各ビットマスク付きセット(read only) |
source/dest |
source |
011 |
dest |
1110011 |
CSRRC |
CSRの各ビットマスク付きクリア(read only) |
source/dest |
uimm |
101 |
dest |
1110011 |
CSRRWI |
CSRの即値との交換(read only) |
source/dest |
uimm |
110 |
dest |
1110011 |
CSRRSI |
CSRの即値による各ビットマスク付きセット(read only) |
source/dest |
uimm |
111 |
dest |
1110011 |
CSRRCI |
CSRの即値による各ビットマスク付きクリア(read only) |
備考
近日中に追記予定。
参考
Specifications - RISC-V Foundation