VMACC.VV

Vector Integer Multiply-Accumulate

VMACC.VV vd, vs1, vs2, vm

Computes vd = vd + (vs1 * vs2). Essential for dot products.

Details

Vector Integer Multiply-Accumulate: Computes vd = vd + (vs1 * vs2). Essential for dot products. Operation: foreach(i < vl): vd[i] = vd[i] + (vs1[i] * vs2[i]);.

Pseudocode Operation

foreach(i < vl): vd[i] = vd[i] + (vs1[i] * vs2[i]);

Example

VMACC.VV v1, v2, v4, v0.t

Encoding

Binary Layout
111001
31:26
vm
25
vs2
24:20
vs1
19:15
000
14:12
vd
11:7
1010111
6:0
 
Format OPIVV
Opcode 0x57
Extension V

Operands

  • vd
    Dest/Accumulator
  • vs1
    Source vector register 1
  • vs2
    Source vector register 2