Project

General

Profile

RISC-V Instruction Set » History » Revision 18

Revision 17 (Andrei Tatarnikov, 07/26/2018 02:54 PM) → Revision 18/50 (Andrei Tatarnikov, 07/26/2018 02:59 PM)

h1. RISC-V Instruction Set 

 {font-weight:bold; background:#ddd}. |/2. *Category* |\2. *RISC-V (Version 2.2)* |\2. *MicroTESK* | 
 {background:#dde}. | *Instructions* | *Amount* | *Instructions* | *Amount* | 
 {background:#fcc}. | Arithmetic Logic Unit | ADDI 
 SLTI 
 SLTIU 
 XLEN 
 ANDI 
 ORI 
 XORI 
 SRLI 
 SLLI 
 LUI 
 AUIPC 
 ADD 
 SUB 
 SLT 
 SLTU 
 AND 
 OR 
 XOR 
 SLL 
 SRL 
 SRA | 21+ |    | 0+ | 
 {background:#fcc}. | Branch| JAL 
 JALR 
 BEQ 
 BNE 
 BLT 
 BLTU 
 BGE 
 BGEU 
 BGT 
 BGTU 
 BLE 
 BLEU 
 BLT 
 BLTU 
 BGE 
 BGEU | 16 |    | 0+ | 
 {background:#ff9}. | Memory Access | LW 
 LH 
 LHU 
 LB 
 LBU 
 SW 
 SH 
 SB | 8 |    | 0 | 
 {background:#fcc}. | System | CSRRW 
 CSRRS 
 CSRRC 
 CSRRWI 
 CSRRSI 
 CSRRCI 
 RDCYCLE 
 RDTIME 
 RDINSTRET | 9 |    | 0 | 
 {background:#cfc}. | Other | NOP | 1 | NOP | 1 | 
 {background:#ddd}. | Total: || 65 |    | 1+ | 

 {background:#cfc}. |100%| 
 {background:#ff9}. |50+%| 
 {background:#fcc}. |0+%| 


 h1. Instructions supported by MicroTESK for RISC-V 

 {font-weight:bold; background:#ddd}. | Instruction Set | Instructions | Specified | Validated | 
 | RV32I     |    |    ?    | ?    | 
 | RV64I     |    |    ?    | ?    | 
 {background:#cfc}. | *RV32M* | MUL 
                                
           MULH 
                                
           MULHSU 
                                
           MULHU 
                                
           DIV 
                                
           DIVU 
                                
           REM 
                                
           REMU | Yes (8/8) | Yes (8/8) | 
 {background:#cfc}. | *RV64M* | MULW 
                                
           DIVW 
                                
           DIVUW 
                                
           REMW 
                                
           REMUW | Yes (5/5) | Yes (5/5) | 
 {background:#cfc}. | *RV32A* | LR.W 
                                
           SC.W 
                                
           AMOSWAP.W 
                                
           AMOADD.W 
                                
           AMOXOR.W 
                                
           AMOAND.W 
                                
           AMOOR.W 
                                
           AMOMIN.W 
                                
           AMOMAX.W 
                                
           AMOMINU.W 
                                
           AMOMAXU.W | Yes (11/11) | Yes (11/11) | 
 {background:#cfc}. | *RV64A* | LR.D 
                                
            SC.D 
                                
            AMOSWAP.D 
                                
            AMOADD.D 
                                
            AMOXOR.D 
                                
            AMOAND.D 
                                
            AMOOR.D 
                                
            AMOMIN.D 
                                
            AMOMAX.D 
                                
            AMOMINU.D 
                                
            AMOMAXU.D | Yes (11/11) | Yes (11/11) | 
 {background:#ff9}. | *RV32F* | FLW 
                                FSW 
                                FMADD.S 
                                FMSUB.S 
                                FNMSUB.S 
                                FNMADD.S 
                                FADD.S 
                                FSUB.S 
                                FMUL.S 
                                FDIV.S 
                                FSQRT.S 
                                FSGNJ.S 
                                FSGNJN.S 
                                FSGNJX.S 
                                FMIN.S 
                                FMAX.S 
                                FCVT.W.S 
                                FCVT.WU.S 
                                FMV.X.W (FMV.X.S) 
                                FEQ.S 
                                FLT.S 
                                FLE.S 
                                FCLASS.S 
                                FCVT.S.W 
                                FCVT.S.WU 
                                FMV.W.X (FMV.S.X) | Yes (26/26) | Partially (?/26) | 
 {background:#ff9}. | *RV64F* | FCVT.L.S 
                                FCVT.LU.S 
                                FCVT.S.L 
                                FCVT.S.LU | Yes (4/4) | Partially (?/4) | 
 {background:#ff9}. | *RV32D* | FLD 
                                FSD 
                                FMADD.D 
                                FMSUB.D 
                                FNMSUB.D 
                                FNMADD.D 
                                FADD.D 
                                FSUB.D 
                                FMUL.D 
                                FDIV.D 
                                FSQRT.D 
                                FSGNJ.D 
                                FSGNJN.D 
                                FSGNJX.D 
                                FMIN.D 
                                FMAX.D 
                                FCVT.S.D 
                                FCVT.D.S 
                                FEQ.D 
                                FLT.D 
                                FLE.D 
                                FCLASS.D 
                                FCVT.W.D 
                                FCVT.WU.D 
                                FCVT.D.W 
                                FCVT.D.WU | Yes (26/26) | Partially Yes (?/26) | 
 {background:#ff9}. | *RV64D* RV64D    | FCVT.L.D 
                                
                                                    FCVT.LU.D 
                                
                                                    FMV.X.D 
                                
                                                    FCVT.D.L 
                                
                                                    FCVT.D.LU 
                                
                                                    FMV.D.X          |     6    | Yes (6/6) | Partially (?/26) No    | 
 {background:#ddd}. | Total |    |     | | 

 {background:#cfc}. |    Fully supported | 
 {background:#ff9}. |    Partially supported | 
 {background:#fcc}. |    Unsupported |