From 23848b18cf0db5d536c5dc2620236ffe80aed380 Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Sun, 4 Aug 2019 07:50:24 +0100 Subject: [PATCH] add transcendentals --- rv_major_opcode_1010011.mdwn | 40 ++++++++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/rv_major_opcode_1010011.mdwn b/rv_major_opcode_1010011.mdwn index a60c00e19..e78b0dc15 100644 --- a/rv_major_opcode_1010011.mdwn +++ b/rv_major_opcode_1010011.mdwn @@ -1,5 +1,12 @@ +# Summary FP Opcodes + +* Zfrsqrt - Recip SQRT +* Zftrans - Transcendentals (FSIN, FCOS, FATAN, FPOW, FEXP, FLOG, FRCP) + # Main FP opcode 1010011 table +Proposed new encodings in **bold** + [[!table data=""" 31..27 | 26..25 | 24..20 |19..15| 14...12| 11..7 | 6....0 | function | funct5 | SDHQ | rs2 | rs1 | funct3 | rd | opcode | | @@ -20,7 +27,7 @@ funct5 | SDHQ | rs2 | rs1 | funct3 | rd | opcode | | 01100 | xx | rs2 | rs1 | yyy | rd | 1010011 | ? | 01101 | xx | rs2 | rs1 | yyy | rd | 1010011 | ? | 01110 | xx | rs2 | rs1 | yyy | rd | 1010011 | ? | -01111 | xx | xxxxx | rs1 | yyy | rd | 1010011 | tb=01111 | +01111 | xx | rs2 | rs1 | yyy | rd | 1010011 | **FPOW.XX** | 10000 | xx | rs2 | rs1 | yyy | rd | 1010011 | ? | 10001 | xx | rs2 | rs1 | yyy | rd | 1010011 | ? | 10010 | xx | rs2 | rs1 | yyy | rd | 1010011 | ? | @@ -81,7 +88,36 @@ funct5 | SDHQ | rs2 | rs1 | funct3 | rd | opcode | | ------ | ----- | ----- | -----| ----- | ----- | ------- | -------- | 01011 | xx | 00000 | rs1 | yyy | rd | 1010011 | FSQRT.xx | 01011 | xx | 00001 | rs1 | yyy | rd | 1010011 | **FRSQRT.xx** | -01011 | xx | rs2!=0 | rs1 | yyy | rd | 1010011 | ?rs2 | +01011 | xx | 00010 | rs1 | yyy | rd | 1010011 | **FSIN.xx** | +01011 | xx | 00011 | rs1 | yyy | rd | 1010011 | **FCOS.xx** | +01011 | xx | 00100 | rs1 | yyy | rd | 1010011 | **FATAN.xx** | +01011 | xx | 00101 | rs1 | yyy | rd | 1010011 | **FEXP.xx** | +01011 | xx | 00110 | rs1 | yyy | rd | 1010011 | **FLOG.xx** | +01011 | xx | 00111 | rs1 | yyy | rd | 1010011 | **FRCP.xx** | +01011 | xx | 01000 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 01001 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 01010 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 01011 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 01100 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 01101 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 01110 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 01111 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 10000 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 10001 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 10010 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 10011 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 10100 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 10101 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 10110 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 10111 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 11000 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 11001 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 11010 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 11011 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 11100 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 11101 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 11110 | rs1 | yyy | rd | 1010011 | ? | +01011 | xx | 11111 | rs1 | yyy | rd | 1010011 | ? | """]] # funct5 = 10100 -- 2.30.2