Project

General

Profile

RISC-V Instruction Set » History » Version 11

Andrei Tatarnikov, 07/26/2018 01:53 PM

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