Does AES32DSI use floating-point or vector registers?
No. These scalar crypto extension instructions use integer X registers.
AES final-round decrypt byte step: select a byte from rs2 by bs, apply InvSubBytes, XOR with rs1
aes32dsi is an RV32-only Zknd AES final-round decrypt instruction. It selects rs2[31:0] byte bs, applies the inverse S-box, rotates the 32-bit result left by bs*8, XORs rs1[31:0], and writes rd. It omits InvMixColumns.
RV32 AES final-round decryption: byte selection, inverse SBox, rotation, XOR, and integer-register writeback.
XLEN is fixed at 32; AES32DSI has no RV64 form.
AES32DSI is defined only for RV32: bits 31..30 are bs; the remaining fixed fields, two integer sources, and rd identify this OP encoding.
This animation shows only official ISA fields and state, not a particular CPU pipeline, cache, or timing implementation.
AES32DSI is a Zknd scalar cryptography instruction for AES final-round decrypt byte step. This page is checked against the official scalar crypto extension, avoiding confusion among round functions, key schedule steps, and operand sources.
Understand this scenario with real code like «aes32dsi a0, a1, a2, 0».
Understand this scenario with real code like «aes32dsi a0, a1, a2, 0».
No. These scalar crypto extension instructions use integer X registers.
No. It performs one architecturally defined AES half-state step; software still combines instructions and round keys in algorithm order.