mirror of
https://github.com/rdolbeau/VexRiscvBPluginGenerator.git
synced 2025-04-18 18:44:42 -04:00
move AES to v0.8 of Kscalar
This commit is contained in:
parent
3506dbbe10
commit
219844c69c
5 changed files with 48 additions and 48 deletions
|
@ -369,14 +369,14 @@ class CryptoZknePlugin extends Plugin[VexRiscv] {
|
|||
RS3_USE -> True,
|
||||
IS_CryptoZkne -> True
|
||||
)
|
||||
def aes32esmi0_KEY = M"0000000----------010-----0101011"
|
||||
def aes32esmi1_KEY = M"0100000----------010-----0101011"
|
||||
def aes32esmi2_KEY = M"1000000----------010-----0101011"
|
||||
def aes32esmi3_KEY = M"1100000----------010-----0101011"
|
||||
def aes32esi0_KEY = M"0000001----------010-----0101011"
|
||||
def aes32esi1_KEY = M"0100001----------010-----0101011"
|
||||
def aes32esi2_KEY = M"1000001----------010-----0101011"
|
||||
def aes32esi3_KEY = M"1100001----------010-----0101011"
|
||||
def aes32esmi0_KEY = M"0011011----------000-----0110011"
|
||||
def aes32esmi1_KEY = M"0111011----------000-----0110011"
|
||||
def aes32esmi2_KEY = M"1011011----------000-----0110011"
|
||||
def aes32esmi3_KEY = M"1111011----------000-----0110011"
|
||||
def aes32esi0_KEY = M"0011001----------000-----0110011"
|
||||
def aes32esi1_KEY = M"0111001----------000-----0110011"
|
||||
def aes32esi2_KEY = M"1011001----------000-----0110011"
|
||||
def aes32esi3_KEY = M"1111001----------000-----0110011"
|
||||
val decoderService = pipeline.service(classOf[DecoderService])
|
||||
decoderService.addDefault(IS_CryptoZkne, False)
|
||||
decoderService.add(List(
|
||||
|
|
|
@ -46,14 +46,14 @@ asm("#define reg_t6 31\n");
|
|||
return r; \
|
||||
}
|
||||
|
||||
ASM2MACRO(AES32ESMI0,0x0000202b)
|
||||
ASM2MACRO(AES32ESMI1,0x4000202b)
|
||||
ASM2MACRO(AES32ESMI2,0x8000202b)
|
||||
ASM2MACRO(AES32ESMI3,0xc000202b)
|
||||
ASM2MACRO(AES32ESI0,0x0200202b)
|
||||
ASM2MACRO(AES32ESI1,0x4200202b)
|
||||
ASM2MACRO(AES32ESI2,0x8200202b)
|
||||
ASM2MACRO(AES32ESI3,0xc200202b)
|
||||
ASM2MACRO(AES32ESMI0,0x36000033)
|
||||
ASM2MACRO(AES32ESMI1,0x76000033)
|
||||
ASM2MACRO(AES32ESMI2,0xb6000033)
|
||||
ASM2MACRO(AES32ESMI3,0xf6000033)
|
||||
ASM2MACRO(AES32ESI0,0x32000033)
|
||||
ASM2MACRO(AES32ESI1,0x72000033)
|
||||
ASM2MACRO(AES32ESI2,0xb2000033)
|
||||
ASM2MACRO(AES32ESI3,0xf2000033)
|
||||
FUN2(aes32esmi0,AES32ESMI0)
|
||||
FUN2(aes32esmi1,AES32ESMI1)
|
||||
FUN2(aes32esmi2,AES32ESMI2)
|
||||
|
|
|
@ -72,14 +72,14 @@ asm("#define reg_t6 31\n");
|
|||
return r; \
|
||||
}
|
||||
|
||||
ASM2MACRO(AES32ESMI0,0x0000202b)
|
||||
ASM2MACRO(AES32ESMI1,0x4000202b)
|
||||
ASM2MACRO(AES32ESMI2,0x8000202b)
|
||||
ASM2MACRO(AES32ESMI3,0xc000202b)
|
||||
ASM2MACRO(AES32ESI0,0x0200202b)
|
||||
ASM2MACRO(AES32ESI1,0x4200202b)
|
||||
ASM2MACRO(AES32ESI2,0x8200202b)
|
||||
ASM2MACRO(AES32ESI3,0xc200202b)
|
||||
ASM2MACRO(AES32ESMI0,0x36000033)
|
||||
ASM2MACRO(AES32ESMI1,0x76000033)
|
||||
ASM2MACRO(AES32ESMI2,0xb6000033)
|
||||
ASM2MACRO(AES32ESMI3,0xf6000033)
|
||||
ASM2MACRO(AES32ESI0,0x32000033)
|
||||
ASM2MACRO(AES32ESI1,0x72000033)
|
||||
ASM2MACRO(AES32ESI2,0xb2000033)
|
||||
ASM2MACRO(AES32ESI3,0xf2000033)
|
||||
FUN2(aes32esmi0,AES32ESMI0)
|
||||
FUN2(aes32esmi1,AES32ESMI1)
|
||||
FUN2(aes32esmi2,AES32ESMI2)
|
||||
|
|
|
@ -64,14 +64,14 @@ asm("#define reg_t6 31\n");
|
|||
return r; \
|
||||
}
|
||||
|
||||
ASM2MACRO(AES32ESMI0,0x0000202b)
|
||||
ASM2MACRO(AES32ESMI1,0x4000202b)
|
||||
ASM2MACRO(AES32ESMI2,0x8000202b)
|
||||
ASM2MACRO(AES32ESMI3,0xc000202b)
|
||||
ASM2MACRO(AES32ESI0,0x0200202b)
|
||||
ASM2MACRO(AES32ESI1,0x4200202b)
|
||||
ASM2MACRO(AES32ESI2,0x8200202b)
|
||||
ASM2MACRO(AES32ESI3,0xc200202b)
|
||||
ASM2MACRO(AES32ESMI0,0x36000033)
|
||||
ASM2MACRO(AES32ESMI1,0x76000033)
|
||||
ASM2MACRO(AES32ESMI2,0xb6000033)
|
||||
ASM2MACRO(AES32ESMI3,0xf6000033)
|
||||
ASM2MACRO(AES32ESI0,0x32000033)
|
||||
ASM2MACRO(AES32ESI1,0x72000033)
|
||||
ASM2MACRO(AES32ESI2,0xb2000033)
|
||||
ASM2MACRO(AES32ESI3,0xf2000033)
|
||||
FUN2(aes32esmi0,AES32ESMI0)
|
||||
FUN2(aes32esmi1,AES32ESMI1)
|
||||
FUN2(aes32esmi2,AES32ESMI2)
|
||||
|
|
32
data_aes.txt
32
data_aes.txt
|
@ -1,20 +1,20 @@
|
|||
//#define MATCH_AES32ESMI 0x202b
|
||||
//#define MASK_AES32ESMI 0x3e00707f
|
||||
//#define MATCH_AES32ESI 0x200202b
|
||||
//#define MASK_AES32ESI 0x3e00707f
|
||||
//{"aes32esmi" , 0, INSN_CLASS_ZSCRYPTO, "d,s,t,w", MATCH_AES32ESMI, MASK_AES32ESMI, match_opcode, 0},
|
||||
//{"aes32esi" , 0, INSN_CLASS_ZSCRYPTO, "d,s,t,w", MATCH_AES32ESI, MASK_AES32ESI, match_opcode, 0},
|
||||
//bs 00000 rs2 rs1 010 rd 0101011 aes32esmi
|
||||
//bs 00001 rs2 rs1 010 rd 0101011 aes32esi
|
||||
//for v0.8 of K scalar
|
||||
//#define MASK_AES32ESMI 0x3e00707f
|
||||
//#define MATCH_AES32ESMI 0x36000033
|
||||
//#define MASK_AES32ESI 0x3e00707f
|
||||
//#define MATCH_AES32ESI 0x32000033
|
||||
//bs 11011 rs2 rs1==rd 000 rd 0110011 aes32esmi
|
||||
//bs 11001 rs2 rs1==rd 000 rd 0110011 aes32esi
|
||||
|
||||
I aes32esmi0 aes32esmi0 0000000----------010-----0101011 aes0 Zkne
|
||||
I aes32esmi1 aes32esmi1 0100000----------010-----0101011 aes0 Zkne
|
||||
I aes32esmi2 aes32esmi2 1000000----------010-----0101011 aes0 Zkne
|
||||
I aes32esmi3 aes32esmi3 1100000----------010-----0101011 aes0 Zkne
|
||||
I aes32esi0 aes32esi0 0000001----------010-----0101011 aes1 Zkne
|
||||
I aes32esi1 aes32esi1 0100001----------010-----0101011 aes1 Zkne
|
||||
I aes32esi2 aes32esi2 1000001----------010-----0101011 aes1 Zkne
|
||||
I aes32esi3 aes32esi3 1100001----------010-----0101011 aes1 Zkne
|
||||
|
||||
I aes32esmi0 aes32esmi0 0011011----------000-----0110011 aes0 Zkne
|
||||
I aes32esmi1 aes32esmi1 0111011----------000-----0110011 aes0 Zkne
|
||||
I aes32esmi2 aes32esmi2 1011011----------000-----0110011 aes0 Zkne
|
||||
I aes32esmi3 aes32esmi3 1111011----------000-----0110011 aes0 Zkne
|
||||
I aes32esi0 aes32esi0 0011001----------000-----0110011 aes1 Zkne
|
||||
I aes32esi1 aes32esi1 0111001----------000-----0110011 aes1 Zkne
|
||||
I aes32esi2 aes32esi2 1011001----------000-----0110011 aes1 Zkne
|
||||
I aes32esi3 aes32esi3 1111001----------000-----0110011 aes1 Zkne
|
||||
|
||||
S aes32esmi0 "fun_aesx_0(input(SRC2), input(SRC1))"
|
||||
S aes32esmi1 "fun_aesx_1(input(SRC2), input(SRC1))"
|
||||
|
|
Loading…
Add table
Reference in a new issue