Project

General

Profile

RISC-V Instruction Set » History » Version 20

Andrei Tatarnikov, 07/26/2018 03:14 PM

1 7 Andrei Tatarnikov
h1. Instructions supported by MicroTESK for RISC-V
2
3 11 Andrei Tatarnikov
{font-weight:bold; background:#ddd}. | Instruction Set | Instructions | Specified | Validated |
4 19 Andrei Tatarnikov
{background:#cfc}. | *RV32I* | LUI
5
                               AUIPC
6
                               JAL
7
                               JALR
8
                               BEQ
9
                               BNE
10
                               BLT
11
                               BGE
12
                               BLTU
13
                               BGEU
14
                               LB
15
                               LH
16
                               LW
17
                               LBU
18
                               LHU
19
                               SB
20
                               SH
21
                               SW
22
                               ADDI
23
                               SLTI
24
                               SLTIU
25
                               XORI
26
                               ORI
27
                               ANDI
28
                               SLLI
29
                               SRLI
30
                               SRAI
31
                               SLL
32
                               SRL
33
                               SRA
34
                               ADD
35
                               SUB
36
                               SLT
37
                               SLTU
38
                               XOR
39
                               OR
40
                               AND | Yes (37/37) | (37/37) |
41 10 Andrei Tatarnikov
| RV64I   |  |  ?  | ?  |
42 15 Andrei Tatarnikov
{background:#cfc}. | *RV32M* | MUL
43 18 Andrei Tatarnikov
                               MULH
44
                               MULHSU
45
                               MULHU
46
                               DIV
47
                               DIVU
48
                               REM
49
                               REMU | Yes (8/8) | Yes (8/8) |
50 15 Andrei Tatarnikov
{background:#cfc}. | *RV64M* | MULW
51 18 Andrei Tatarnikov
                               DIVW
52
                               DIVUW
53
                               REMW
54
                               REMUW | Yes (5/5) | Yes (5/5) |
55 15 Andrei Tatarnikov
{background:#cfc}. | *RV32A* | LR.W
56 18 Andrei Tatarnikov
                               SC.W
57
                               AMOSWAP.W
58
                               AMOADD.W
59
                               AMOXOR.W
60
                               AMOAND.W
61
                               AMOOR.W
62
                               AMOMIN.W
63
                               AMOMAX.W
64
                               AMOMINU.W
65
                               AMOMAXU.W | Yes (11/11) | Yes (11/11) |
66 15 Andrei Tatarnikov
{background:#cfc}. | *RV64A* | LR.D
67 18 Andrei Tatarnikov
                               SC.D
68
                               AMOSWAP.D
69
                               AMOADD.D
70
                               AMOXOR.D
71
                               AMOAND.D
72
                               AMOOR.D
73
                               AMOMIN.D
74
                               AMOMAX.D
75
                               AMOMINU.D
76
                               AMOMAXU.D | Yes (11/11) | Yes (11/11) |
77 15 Andrei Tatarnikov
{background:#ff9}. | *RV32F* | FLW
78 17 Andrei Tatarnikov
                               FSW
79
                               FMADD.S
80
                               FMSUB.S
81
                               FNMSUB.S
82
                               FNMADD.S
83
                               FADD.S
84
                               FSUB.S
85
                               FMUL.S
86
                               FDIV.S
87
                               FSQRT.S
88
                               FSGNJ.S
89
                               FSGNJN.S
90
                               FSGNJX.S
91
                               FMIN.S
92
                               FMAX.S
93
                               FCVT.W.S
94
                               FCVT.WU.S
95
                               FMV.X.W (FMV.X.S)
96
                               FEQ.S
97
                               FLT.S
98
                               FLE.S
99
                               FCLASS.S
100
                               FCVT.S.W
101
                               FCVT.S.WU
102
                               FMV.W.X (FMV.S.X) | Yes (26/26) | Partially (?/26) |
103
{background:#ff9}. | *RV64F* | FCVT.L.S
104
                               FCVT.LU.S
105
                               FCVT.S.L
106
                               FCVT.S.LU | Yes (4/4) | Partially (?/4) |
107
{background:#ff9}. | *RV32D* | FLD
108
                               FSD
109
                               FMADD.D
110
                               FMSUB.D
111
                               FNMSUB.D
112
                               FNMADD.D
113
                               FADD.D
114
                               FSUB.D
115
                               FMUL.D
116
                               FDIV.D
117
                               FSQRT.D
118
                               FSGNJ.D
119
                               FSGNJN.D
120
                               FSGNJX.D
121
                               FMIN.D
122
                               FMAX.D
123
                               FCVT.S.D
124
                               FCVT.D.S
125
                               FEQ.D
126
                               FLT.D
127
                               FLE.D
128
                               FCLASS.D
129
                               FCVT.W.D
130
                               FCVT.WU.D
131
                               FCVT.D.W
132 18 Andrei Tatarnikov
                               FCVT.D.WU | Yes (26/26) | Partially (?/26) |
133
{background:#ff9}. | *RV64D* | FCVT.L.D
134
                               FCVT.LU.D
135
                               FMV.X.D
136
                               FCVT.D.L
137
                               FCVT.D.LU
138
                               FMV.D.X   | Yes (6/6) | Partially (?/26)  |
139 10 Andrei Tatarnikov
{background:#ddd}. | Total |  |   | |
140 7 Andrei Tatarnikov
141
{background:#cfc}. |  Fully supported |
142 10 Andrei Tatarnikov
{background:#ff9}. |  Partially supported |
143 7 Andrei Tatarnikov
{background:#fcc}. |  Unsupported |