Project

General

Profile

RISC-V Instruction Set » History » Version 10

Andrei Tatarnikov, 05/09/2018 05:27 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 10 Andrei Tatarnikov
{font-weight:bold; background:#ddd}. | Instruction Set | Instructions | Amount | Validation Tests |
70
| RV32I   |  |  ?  | ?  |
71
| RV64I   |  |  ?  | ?  |
72
| RV32M |  |  ?  | ?  |
73
| RV64M |  |  ?  | ?  |
74
| RV32A  |  |  ?  | ?  |
75
| RV64A  |  |  ?  | ?  |
76
| RV32F  |  FLW +
77
    FSW +
78
    FMADD.S +
79
    FMSUB.S +
80
    FNMSUB.S +
81
    FNMADD.S +
82
    FADD.S +
83
    FSUB.S +
84
    FMUL.S +
85
    FDIV.S +
86
    FSQRT.S +
87
    FSGNJ.S +
88
    FSGNJN.S +
89
    FSGNJX.S +
90
    FMIN.S +
91
    FMAX.S +
92
    FCVT.W.S +
93
    FCVT.WU.S +
94
    FMV.X.W (FMV.X.S) +
95
    FEQ.S +
96
    FLT.S +
97
    FLE.S +
98
    FCLASS.S
99
    FCVT.S.W +
100
    FCVT.S.WU +
101
    FMV.W.X (FMV.S.X) +
102
|  26  | ?  |
103
{background:#ff9}. | RV64F  |  FCVT.L.S
104 8 Andrei Tatarnikov
                                                   FCVT.LU.S
105
                                                   FCVT.S.L
106 10 Andrei Tatarnikov
                                                   FCVT.S.LU |  4  | No |
107
{background:#ff9}. | RV32D  | FLD
108 8 Andrei Tatarnikov
                                                   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 1 Alexander Protsenko
                                                   FSGNJN.D
120
                                                   FSGNJX.D
121 8 Andrei Tatarnikov
                                                   FMIN.D
122
                                                   FMAX.D
123 1 Alexander Protsenko
                                                   FCVT.S.D
124
                                                   FCVT.D.S
125 8 Andrei Tatarnikov
                                                   FEQ.D
126 1 Alexander Protsenko
                                                   FLT.D
127 8 Andrei Tatarnikov
                                                   FLE.D
128
                                                   FCLASS.D
129
                                                   FCVT.W.D
130
                                                   FCVT.WU.D
131
                                                   FCVT.D.W
132 10 Andrei Tatarnikov
                                                   FCVT.D.WU |  26  | No  |
133
{background:#ff9}. | RV64D  | FCVT.L.D
134 7 Andrei Tatarnikov
                                                   FCVT.LU.D
135
                                                   FMV.X.D
136
                                                   FCVT.D.L
137
                                                   FCVT.D.LU
138 10 Andrei Tatarnikov
                                                   FMV.D.X        |   6  | No  |
139
{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 |