Project

General

Profile

RISC-V Instruction Set » History » Version 30

Andrei Tatarnikov, 07/26/2018 04:37 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 30 Andrei Tatarnikov
{background:#cfc}. | *RV32I (User)* | LUI
5 19 Andrei Tatarnikov
                               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 23 Andrei Tatarnikov
                               AND | Yes (37/37) | Yes (37/37) |
41 30 Andrei Tatarnikov
{background:#cfc}. | *RV64I (User)* | LWU
42 22 Andrei Tatarnikov
                               LD
43
                               SD
44
                               ADDIW
45
                               SLLIW
46
                               SRLIW
47
                               SRAIW
48
                               ADDW
49
                               SUBW
50
                               SLLW
51 1 Alexander Protsenko
                               SRLW
52
                               SRAW | Yes (12/12) | Yes (12/12) |
53 30 Andrei Tatarnikov
{background:#ff9}. | *RV32I (System)* | ECALL
54
                                        EBREAK
55
                                        FENCE
56
                                        FENCE.I
57
                                        MRET
58
                                        SRET
59
                                        URET
60
                                        WFI
61
                                        CSRRW
62
                                        CSRRS
63
                                        CSRRC
64
                                        CSRRWI
65
                                        CSRRSI
66
                                        CSRRCI | Yes (14/14) | No (0/14)
67
68
69 15 Andrei Tatarnikov
{background:#cfc}. | *RV32M* | MUL
70 18 Andrei Tatarnikov
                               MULH
71
                               MULHSU
72
                               MULHU
73
                               DIV
74
                               DIVU
75
                               REM
76
                               REMU | Yes (8/8) | Yes (8/8) |
77 15 Andrei Tatarnikov
{background:#cfc}. | *RV64M* | MULW
78 18 Andrei Tatarnikov
                               DIVW
79
                               DIVUW
80
                               REMW
81
                               REMUW | Yes (5/5) | Yes (5/5) |
82 15 Andrei Tatarnikov
{background:#cfc}. | *RV32A* | LR.W
83 18 Andrei Tatarnikov
                               SC.W
84
                               AMOSWAP.W
85
                               AMOADD.W
86
                               AMOXOR.W
87
                               AMOAND.W
88
                               AMOOR.W
89
                               AMOMIN.W
90
                               AMOMAX.W
91
                               AMOMINU.W
92
                               AMOMAXU.W | Yes (11/11) | Yes (11/11) |
93 15 Andrei Tatarnikov
{background:#cfc}. | *RV64A* | LR.D
94 18 Andrei Tatarnikov
                               SC.D
95
                               AMOSWAP.D
96
                               AMOADD.D
97
                               AMOXOR.D
98
                               AMOAND.D
99
                               AMOOR.D
100
                               AMOMIN.D
101
                               AMOMAX.D
102
                               AMOMINU.D
103
                               AMOMAXU.D | Yes (11/11) | Yes (11/11) |
104 15 Andrei Tatarnikov
{background:#ff9}. | *RV32F* | FLW
105 17 Andrei Tatarnikov
                               FSW
106
                               FMADD.S
107
                               FMSUB.S
108
                               FNMSUB.S
109
                               FNMADD.S
110
                               FADD.S
111
                               FSUB.S
112
                               FMUL.S
113
                               FDIV.S
114
                               FSQRT.S
115
                               FSGNJ.S
116
                               FSGNJN.S
117
                               FSGNJX.S
118
                               FMIN.S
119
                               FMAX.S
120
                               FCVT.W.S
121
                               FCVT.WU.S
122
                               FMV.X.W (FMV.X.S)
123
                               FEQ.S
124
                               FLT.S
125
                               FLE.S
126
                               FCLASS.S
127
                               FCVT.S.W
128
                               FCVT.S.WU
129
                               FMV.W.X (FMV.S.X) | Yes (26/26) | Partially (?/26) |
130
{background:#ff9}. | *RV64F* | FCVT.L.S
131
                               FCVT.LU.S
132
                               FCVT.S.L
133
                               FCVT.S.LU | Yes (4/4) | Partially (?/4) |
134
{background:#ff9}. | *RV32D* | FLD
135
                               FSD
136
                               FMADD.D
137
                               FMSUB.D
138
                               FNMSUB.D
139
                               FNMADD.D
140
                               FADD.D
141
                               FSUB.D
142
                               FMUL.D
143
                               FDIV.D
144
                               FSQRT.D
145
                               FSGNJ.D
146
                               FSGNJN.D
147
                               FSGNJX.D
148
                               FMIN.D
149
                               FMAX.D
150
                               FCVT.S.D
151
                               FCVT.D.S
152
                               FEQ.D
153
                               FLT.D
154
                               FLE.D
155
                               FCLASS.D
156
                               FCVT.W.D
157
                               FCVT.WU.D
158
                               FCVT.D.W
159 18 Andrei Tatarnikov
                               FCVT.D.WU | Yes (26/26) | Partially (?/26) |
160
{background:#ff9}. | *RV64D* | FCVT.L.D
161
                               FCVT.LU.D
162
                               FMV.X.D
163
                               FCVT.D.L
164
                               FCVT.D.LU
165 1 Alexander Protsenko
                               FMV.D.X   | Yes (6/6) | Partially (?/6)  |
166 28 Andrei Tatarnikov
{background:#ff9}. | *RVC*   | C.ADDI4SPN
167
                               C.FLD
168
                               C.LQ
169
                               C.LW
170
                               C.FLW
171
                               C.LD
172
                               C.FSD
173
                               C.SQ
174
                               C.SW
175
                               C.FSW
176
                               C.SD
177
                               C.NOP
178
                               C.ADDI
179
                               C.JAL
180
                               C.ADDIW
181
                               C.LI
182
                               C.ADDI16SP
183
                               C.LUI
184
                               C.SRLI
185
                               C.SRLI64
186
                               C.SRAI
187
                               C.SRAI64
188
                               C.ANDI
189
                               C.SUB
190
                               C.XOR
191
                               C.OR
192
                               C.AND
193
                               C.SUBW
194
                               C.ADDW
195
                               C.J
196
                               C.BEQZ
197
                               C.BNEZ
198
                               C.SLLI
199
                               C.SLLI64
200
                               C.FLDSP
201
                               C.LQSP
202
                               C.LWSP
203
                               C.FLWSP
204
                               C.LDSP
205
                               C.JR
206
                               C.MV
207
                               C.EBREAK
208
                               C.JALR
209
                               C.ADD
210
                               C.FSDSP
211
                               C.SQSP
212
                               C.SWSP
213
                               C.FSWSP
214
                               C.SDSP | Yes (49/49) | Partially (36/49)
215 27 Andrei Tatarnikov
                                                        Excluding (13): 
216
                                                        C.LQ
217
                                                        C.FLW
218
                                                        C.SQ
219
                                                        C.FSW
220
                                                        C.NOP
221
                                                        C.SRLI64
222
                                                        C.SRAI64
223
                                                        C.SLLI64
224
                                                        C.LQSP
225
                                                        C.FLWSP
226
                                                        C.EBREAK
227
                                                        C.SQSP
228
                                                        C.FSWSP |
229 10 Andrei Tatarnikov
{background:#ddd}. | Total |  |   | |
230 7 Andrei Tatarnikov
231
{background:#cfc}. |  Fully supported |
232 10 Andrei Tatarnikov
{background:#ff9}. |  Partially supported |
233 7 Andrei Tatarnikov
{background:#fcc}. |  Unsupported |