AES32DSI 使用浮点或向量寄存器吗?
不使用。标量密码扩展的这些指令使用整数 X 寄存器。
AES 解密末轮字节步骤:从 rs2 按 bs 选字节,InvSubBytes 后与 rs1 异或
aes32dsi 是仅适用于 RV32 的 Zknd 标量 AES 末轮解密指令。它从 rs2[31:0] 中按 2 位 bs 选择一个字节,应用 AES 逆 S-Box,将结果循环左移到 bs 指定的字节位置后与 rs1[31:0] 异或并写入 rd;该末轮形式不包含 InvMixColumns。
RV32 AES 最终轮解密:取字节、逆 SBox、旋转、异或与整数寄存器写回。
XLEN 固定为 32;AES32DSI 不存在 RV64 形式。
AES32DSI 仅为 RV32 定义:bits 31..30 是 bs,其余固定字段、两个整数源寄存器和 rd 共同识别该 OP 编码。
动画仅展示官方定义的 ISA 字段和状态,不表示具体 CPU 的流水线、缓存或时序实现。
AES32DSI 是 Zknd 标量密码指令,AES 最终轮解密字节步骤。页面内容按官方标量密码扩展校对,避免把算法轮函数、密钥调度和寄存器来源混淆。
结合 «aes32dsi a0, a1, a2, 0» 等实际代码理解该场景。
结合 «aes32dsi a0, a1, a2, 0» 等实际代码理解该场景。
不使用。标量密码扩展的这些指令使用整数 X 寄存器。
不是。它只执行官方定义的一个 AES 半状态步骤;软件仍需按算法顺序组合指令和轮密钥。