AI Engine Intrinsics User Guide  (AIE) v(2024.1)
 All Data Structures Namespaces Functions Variables Typedefs Groups Pages
X buffer conjugation

Overview

32 bit complex by 32 bit real using X buffer conjugation

Functions

v2cacc80 lmac2_c (v2cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-accumulate intrinsic function with x buffer conjugation .
 
v2cacc80 lmac2_c (v2cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-accumulate intrinsic function with x buffer conjugation using small X input buffer.
 
v4cacc80 lmac4_c (v4cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets)
 Complex multiply-accumulate intrinsic function with x buffer conjugation .
 
v4cacc80 lmac4_c (v4cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets)
 Complex multiply-accumulate intrinsic function with x buffer conjugation using small X input buffer.
 
v2cacc80 lmsc2_c (v2cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-subtract intrinsic function with x buffer conjugation .
 
v2cacc80 lmsc2_c (v2cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-subtract intrinsic function with x buffer conjugation using small X input buffer.
 
v4cacc80 lmsc4_c (v4cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets)
 Complex multiply-subtract intrinsic function with x buffer conjugation .
 
v4cacc80 lmsc4_c (v4cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets)
 Complex multiply-subtract intrinsic function with x buffer conjugation using small X input buffer.
 
v2cacc80 lmul2_c (v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply intrinsic function with x buffer conjugation .
 
v2cacc80 lmul2_c (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply intrinsic function with x buffer conjugation using small X input buffer.
 
v4cacc80 lmul4_c (v16cint32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets)
 Complex multiply intrinsic function with x buffer conjugation .
 
v4cacc80 lmul4_c (v8cint32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets)
 Complex multiply intrinsic function with x buffer conjugation using small X input buffer.
 
v2cacc80 lnegmul2_c (v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-negate intrinsic function with x buffer conjugation .
 
v2cacc80 lnegmul2_c (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-negate intrinsic function with x buffer conjugation using small X input buffer.
 
v4cacc80 lnegmul4_c (v16cint32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets)
 Complex multiply-negate intrinsic function with x buffer conjugation .
 
v4cacc80 lnegmul4_c (v8cint32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets)
 Complex multiply-negate intrinsic function with x buffer conjugation using small X input buffer.
 

Function Documentation

v2cacc80 lmac2_c ( v2cacc80  acc,
v16cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-accumulate intrinsic function with x buffer conjugation .

acc0 += z00*cnj(x00) + z01*cnj(x01)
acc1 += z10*cnj(x10) + z11*cnj(x11)
Returns
Returned accumulation vector (2 x cint80 lanes)
Parameters
accIncoming accumulation vector (2 x cint80 lanes)
xbuffInput buffer of 16 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstepStep between each column for selection in the xbuffer.
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v2cacc80 lmac2_c ( v2cacc80  acc,
v8cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-accumulate intrinsic function with x buffer conjugation using small X input buffer.

acc0 += z00*cnj(x00) + z01*cnj(x01)
acc1 += z10*cnj(x10) + z11*cnj(x11)
Returns
Returned accumulation vector (2 x cint80 lanes)
Parameters
accIncoming accumulation vector (2 x cint80 lanes)
xbuffInput buffer of 8 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstepStep between each column for selection in the xbuffer.
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4cacc80 lmac4_c ( v4cacc80  acc,
v16cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets 
)

Complex multiply-accumulate intrinsic function with x buffer conjugation .

acc0 += z00*cnj(x00)
acc1 += z10*cnj(x10)
acc2 += z20*cnj(x20)
acc3 += z30*cnj(x30)
Returns
Returned accumulation vector (4 x cint80 lanes)
Parameters
accIncoming accumulation vector (4 x cint80 lanes)
xbuffInput buffer of 16 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4cacc80 lmac4_c ( v4cacc80  acc,
v8cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets 
)

Complex multiply-accumulate intrinsic function with x buffer conjugation using small X input buffer.

acc0 += z00*cnj(x00)
acc1 += z10*cnj(x10)
acc2 += z20*cnj(x20)
acc3 += z30*cnj(x30)
Returns
Returned accumulation vector (4 x cint80 lanes)
Parameters
accIncoming accumulation vector (4 x cint80 lanes)
xbuffInput buffer of 8 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v2cacc80 lmsc2_c ( v2cacc80  acc,
v16cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-subtract intrinsic function with x buffer conjugation .

acc0 -= z00*cnj(x00) + z01*cnj(x01)
acc1 -= z10*cnj(x10) + z11*cnj(x11)
Returns
Returned accumulation vector (2 x cint80 lanes)
Parameters
accIncoming accumulation vector (2 x cint80 lanes)
xbuffInput buffer of 16 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstepStep between each column for selection in the xbuffer.
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v2cacc80 lmsc2_c ( v2cacc80  acc,
v8cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-subtract intrinsic function with x buffer conjugation using small X input buffer.

acc0 -= z00*cnj(x00) + z01*cnj(x01)
acc1 -= z10*cnj(x10) + z11*cnj(x11)
Returns
Returned accumulation vector (2 x cint80 lanes)
Parameters
accIncoming accumulation vector (2 x cint80 lanes)
xbuffInput buffer of 8 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstepStep between each column for selection in the xbuffer.
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4cacc80 lmsc4_c ( v4cacc80  acc,
v16cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets 
)

Complex multiply-subtract intrinsic function with x buffer conjugation .

acc0 -= z00*cnj(x00)
acc1 -= z10*cnj(x10)
acc2 -= z20*cnj(x20)
acc3 -= z30*cnj(x30)
Returns
Returned accumulation vector (4 x cint80 lanes)
Parameters
accIncoming accumulation vector (4 x cint80 lanes)
xbuffInput buffer of 16 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4cacc80 lmsc4_c ( v4cacc80  acc,
v8cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets 
)

Complex multiply-subtract intrinsic function with x buffer conjugation using small X input buffer.

acc0 -= z00*cnj(x00)
acc1 -= z10*cnj(x10)
acc2 -= z20*cnj(x20)
acc3 -= z30*cnj(x30)
Returns
Returned accumulation vector (4 x cint80 lanes)
Parameters
accIncoming accumulation vector (4 x cint80 lanes)
xbuffInput buffer of 8 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v2cacc80 lmul2_c ( v16cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply intrinsic function with x buffer conjugation .

acc0 = z00*cnj(x00) + z01*cnj(x01)
acc1 = z10*cnj(x10) + z11*cnj(x11)
Returns
Returned accumulation vector (2 x cint80 lanes)
Parameters
xbuffInput buffer of 16 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstepStep between each column for selection in the xbuffer.
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v2cacc80 lmul2_c ( v8cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply intrinsic function with x buffer conjugation using small X input buffer.

acc0 = z00*cnj(x00) + z01*cnj(x01)
acc1 = z10*cnj(x10) + z11*cnj(x11)
Returns
Returned accumulation vector (2 x cint80 lanes)
Parameters
xbuffInput buffer of 8 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstepStep between each column for selection in the xbuffer.
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4cacc80 lmul4_c ( v16cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets 
)

Complex multiply intrinsic function with x buffer conjugation .

acc0 = z00*cnj(x00)
acc1 = z10*cnj(x10)
acc2 = z20*cnj(x20)
acc3 = z30*cnj(x30)
Returns
Returned accumulation vector (4 x cint80 lanes)
Parameters
xbuffInput buffer of 16 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4cacc80 lmul4_c ( v8cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets 
)

Complex multiply intrinsic function with x buffer conjugation using small X input buffer.

acc0 = z00*cnj(x00)
acc1 = z10*cnj(x10)
acc2 = z20*cnj(x20)
acc3 = z30*cnj(x30)
Returns
Returned accumulation vector (4 x cint80 lanes)
Parameters
xbuffInput buffer of 8 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v2cacc80 lnegmul2_c ( v16cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-negate intrinsic function with x buffer conjugation .

acc0 = -( z00*cnj(x00) + z01*cnj(x01) )
acc1 = -( z10*cnj(x10) + z11*cnj(x11) )
Returns
Returned accumulation vector (2 x cint80 lanes)
Parameters
xbuffInput buffer of 16 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstepStep between each column for selection in the xbuffer.
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v2cacc80 lnegmul2_c ( v8cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-negate intrinsic function with x buffer conjugation using small X input buffer.

acc0 = -( z00*cnj(x00) + z01*cnj(x01) )
acc1 = -( z10*cnj(x10) + z11*cnj(x11) )
Returns
Returned accumulation vector (2 x cint80 lanes)
Parameters
xbuffInput buffer of 8 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstepStep between each column for selection in the xbuffer.
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4cacc80 lnegmul4_c ( v16cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets 
)

Complex multiply-negate intrinsic function with x buffer conjugation .

acc0 = -( z00*cnj(x00) )
acc1 = -( z10*cnj(x10) )
acc2 = -( z20*cnj(x20) )
acc3 = -( z30*cnj(x30) )
Returns
Returned accumulation vector (4 x cint80 lanes)
Parameters
xbuffInput buffer of 16 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4cacc80 lnegmul4_c ( v8cint32  xbuff,
int  xstart,
unsigned int  xoffsets,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets 
)

Complex multiply-negate intrinsic function with x buffer conjugation using small X input buffer.

acc0 = -( z00*cnj(x00) )
acc1 = -( z10*cnj(x10) )
acc2 = -( z20*cnj(x20) )
acc3 = -( z30*cnj(x30) )
Returns
Returned accumulation vector (4 x cint80 lanes)
Parameters
xbuffInput buffer of 8 elements of type cint32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to the x buffer. LSB apply to first lane
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.