先看 vl
当前 vl 决定 body 元素数量。典型代码会先执行 vsetvli、vsetivli 或 vsetvl,再执行本页指令。
AES-256 向量前向 key schedule,按 uimm 选择轮数;SEW=32,无 vm 操作数。
vaeskf2.vi 是 Zvkned 的 AES-256 前向 key schedule 指令。它读取 vs2 中的当前 AES-256 round-key element group,并结合 vd 中的前一轮密钥状态与 uimm 指定的轮数生成下一轮 round key,结果写回 vd。SEW 必须为 32。它只用于 AES-256 前向 key schedule。
VAESKF2.VI 是 Zvkned 向量指令,向量 AES-256 前向密钥调度。页面内容按官方向量密码扩展和 V 扩展执行模型校对。
阅读 VAESKF2.VI 时,不要只看助记符。官方 V 扩展语义还依赖当前 vl、vtype 和掩码状态。.vi:一个向量源和一个小立即数参与运算。
当前 vl 决定 body 元素数量。典型代码会先执行 vsetvli、vsetivli 或 vsetvl,再执行本页指令。
当前 vtype 提供 SEW、LMUL、tail policy 和 mask policy;这些规则影响元素宽度、寄存器组大小以及非活动/尾部目标元素。
带 vm 的普通向量指令在 vm=0 时用 v0 作为执行掩码,vm=1 表示未掩码。VMERGE 等少数形式会把 v0 当作数据选择输入。
结合 «vaeskf2.vi vd, vs2, uimm» 等实际代码理解该场景。
结合 «vaeskf2.vi vd, vs2, uimm» 等实际代码理解该场景。
不能。该类 element-group 密码指令没有 vm 操作数;不要把普通 RVV 掩码语法套到页面示例中。
该指令固定 SEW=32 并以 128 位 element group 执行;非法 SEW 是保留/非法情况。