AI Engine Intrinsics  (AIE) r2p21
 All Data Structures Namespaces Functions Variables Typedefs Groups Pages

Overview

16 bit complex by 16 bit real using no conjugation

Functions

v4cacc48 mac4 (v4cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-accumulate intrinsic function .
 
v4cacc48 mac4 (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-accumulate intrinsic function using small X input buffer.
 
v8cacc48 mac8 (v8cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-accumulate intrinsic function .
 
v8cacc48 mac8 (v8cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-accumulate intrinsic function using small X input buffer.
 
v4cacc48 msc4 (v4cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-subtract intrinsic function .
 
v4cacc48 msc4 (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-subtract intrinsic function using small X input buffer.
 
v8cacc48 msc8 (v8cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-subtract intrinsic function .
 
v8cacc48 msc8 (v8cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-subtract intrinsic function using small X input buffer.
 
v4cacc48 mul4 (v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply intrinsic function .
 
v4cacc48 mul4 (v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply intrinsic function using small X input buffer.
 
v8cacc48 mul8 (v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply intrinsic function .
 
v8cacc48 mul8 (v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply intrinsic function using small X input buffer.
 
v4cacc48 negmul4 (v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-negate intrinsic function .
 
v4cacc48 negmul4 (v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-negate intrinsic function using small X input buffer.
 
v8cacc48 negmul8 (v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-negate intrinsic function .
 
v8cacc48 negmul8 (v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Complex multiply-negate intrinsic function using small X input buffer.
 

Function Documentation

v4cacc48 mac4 ( v4cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-accumulate intrinsic function .

acc0 += z00*x00 + z01*x01 + z02*x02 + z03*x03
acc1 += z10*x10 + z11*x11 + z12*x12 + z13*x13
acc2 += z20*x20 + z21*x21 + z22*x22 + z23*x23
acc3 += z30*x30 + z31*x31 + z32*x32 + z33*x33

Parameters

Input/OutputType Comments
return v4cacc48 Returned accumulation vector (4 x cint48 lanes)
acc v4cacc48 Incoming accumulation vector (4 x cint48 lanes)
xbuff v32cint16Input buffer of 32 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsetsunsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v4cacc48 mac4 ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

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

acc0 += z00*x00 + z01*x01 + z02*x02 + z03*x03
acc1 += z10*x10 + z11*x11 + z12*x12 + z13*x13
acc2 += z20*x20 + z21*x21 + z22*x22 + z23*x23
acc3 += z30*x30 + z31*x31 + z32*x32 + z33*x33

Parameters

Input/OutputType Comments
return v4cacc48 Returned accumulation vector (4 x cint48 lanes)
acc v4cacc48 Incoming accumulation vector (4 x cint48 lanes)
xbuff v16cint16Input buffer of 16 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsetsunsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v8cacc48 mac8 ( v8cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-accumulate intrinsic function .

acc0 += z00*x00 + z01*x01
acc1 += z10*x10 + z11*x11
acc2 += z20*x20 + z21*x21
acc3 += z30*x30 + z31*x31
acc4 += z40*x40 + z41*x41
acc5 += z50*x50 + z51*x51
acc6 += z60*x60 + z61*x61
acc7 += z70*x70 + z71*x71

Parameters

Input/OutputType Comments
return v8cacc48 Returned accumulation vector (8 x cint48 lanes)
acc v8cacc48 Incoming accumulation vector (8 x cint48 lanes)
xbuff v32cint16Input buffer of 32 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsets unsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v8cacc48 mac8 ( v8cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

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

acc0 += z00*x00 + z01*x01
acc1 += z10*x10 + z11*x11
acc2 += z20*x20 + z21*x21
acc3 += z30*x30 + z31*x31
acc4 += z40*x40 + z41*x41
acc5 += z50*x50 + z51*x51
acc6 += z60*x60 + z61*x61
acc7 += z70*x70 + z71*x71

Parameters

Input/OutputType Comments
return v8cacc48 Returned accumulation vector (8 x cint48 lanes)
acc v8cacc48 Incoming accumulation vector (8 x cint48 lanes)
xbuff v16cint16Input buffer of 16 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsets unsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v4cacc48 msc4 ( v4cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-subtract intrinsic function .

acc0 -= z00*x00 + z01*x01 + z02*x02 + z03*x03
acc1 -= z10*x10 + z11*x11 + z12*x12 + z13*x13
acc2 -= z20*x20 + z21*x21 + z22*x22 + z23*x23
acc3 -= z30*x30 + z31*x31 + z32*x32 + z33*x33

Parameters

Input/OutputType Comments
return v4cacc48 Returned accumulation vector (4 x cint48 lanes)
acc v4cacc48 Incoming accumulation vector (4 x cint48 lanes)
xbuff v32cint16Input buffer of 32 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsetsunsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v4cacc48 msc4 ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

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

acc0 -= z00*x00 + z01*x01 + z02*x02 + z03*x03
acc1 -= z10*x10 + z11*x11 + z12*x12 + z13*x13
acc2 -= z20*x20 + z21*x21 + z22*x22 + z23*x23
acc3 -= z30*x30 + z31*x31 + z32*x32 + z33*x33

Parameters

Input/OutputType Comments
return v4cacc48 Returned accumulation vector (4 x cint48 lanes)
acc v4cacc48 Incoming accumulation vector (4 x cint48 lanes)
xbuff v16cint16Input buffer of 16 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsetsunsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v8cacc48 msc8 ( v8cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-subtract intrinsic function .

acc0 -= z00*x00 + z01*x01
acc1 -= z10*x10 + z11*x11
acc2 -= z20*x20 + z21*x21
acc3 -= z30*x30 + z31*x31
acc4 -= z40*x40 + z41*x41
acc5 -= z50*x50 + z51*x51
acc6 -= z60*x60 + z61*x61
acc7 -= z70*x70 + z71*x71

Parameters

Input/OutputType Comments
return v8cacc48 Returned accumulation vector (8 x cint48 lanes)
acc v8cacc48 Incoming accumulation vector (8 x cint48 lanes)
xbuff v32cint16Input buffer of 32 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsets unsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v8cacc48 msc8 ( v8cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

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

acc0 -= z00*x00 + z01*x01
acc1 -= z10*x10 + z11*x11
acc2 -= z20*x20 + z21*x21
acc3 -= z30*x30 + z31*x31
acc4 -= z40*x40 + z41*x41
acc5 -= z50*x50 + z51*x51
acc6 -= z60*x60 + z61*x61
acc7 -= z70*x70 + z71*x71

Parameters

Input/OutputType Comments
return v8cacc48 Returned accumulation vector (8 x cint48 lanes)
acc v8cacc48 Incoming accumulation vector (8 x cint48 lanes)
xbuff v16cint16Input buffer of 16 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsets unsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v4cacc48 mul4 ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply intrinsic function .

acc0 = z00*x00 + z01*x01 + z02*x02 + z03*x03
acc1 = z10*x10 + z11*x11 + z12*x12 + z13*x13
acc2 = z20*x20 + z21*x21 + z22*x22 + z23*x23
acc3 = z30*x30 + z31*x31 + z32*x32 + z33*x33

Parameters

Input/OutputType Comments
return v4cacc48 Returned accumulation vector (4 x cint48 lanes)
xbuff v32cint16Input buffer of 32 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsetsunsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v4cacc48 mul4 ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply intrinsic function using small X input buffer.

acc0 = z00*x00 + z01*x01 + z02*x02 + z03*x03
acc1 = z10*x10 + z11*x11 + z12*x12 + z13*x13
acc2 = z20*x20 + z21*x21 + z22*x22 + z23*x23
acc3 = z30*x30 + z31*x31 + z32*x32 + z33*x33

Parameters

Input/OutputType Comments
return v4cacc48 Returned accumulation vector (4 x cint48 lanes)
xbuff v16cint16Input buffer of 16 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsetsunsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v8cacc48 mul8 ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply intrinsic function .

acc0 = z00*x00 + z01*x01
acc1 = z10*x10 + z11*x11
acc2 = z20*x20 + z21*x21
acc3 = z30*x30 + z31*x31
acc4 = z40*x40 + z41*x41
acc5 = z50*x50 + z51*x51
acc6 = z60*x60 + z61*x61
acc7 = z70*x70 + z71*x71

Parameters

Input/OutputType Comments
return v8cacc48 Returned accumulation vector (8 x cint48 lanes)
xbuff v32cint16Input buffer of 32 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsets unsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v8cacc48 mul8 ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply intrinsic function using small X input buffer.

acc0 = z00*x00 + z01*x01
acc1 = z10*x10 + z11*x11
acc2 = z20*x20 + z21*x21
acc3 = z30*x30 + z31*x31
acc4 = z40*x40 + z41*x41
acc5 = z50*x50 + z51*x51
acc6 = z60*x60 + z61*x61
acc7 = z70*x70 + z71*x71

Parameters

Input/OutputType Comments
return v8cacc48 Returned accumulation vector (8 x cint48 lanes)
xbuff v16cint16Input buffer of 16 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsets unsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v4cacc48 negmul4 ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-negate intrinsic function .

acc0 = -( z00*x00 + z01*x01 + z02*x02 + z03*x03 )
acc1 = -( z10*x10 + z11*x11 + z12*x12 + z13*x13 )
acc2 = -( z20*x20 + z21*x21 + z22*x22 + z23*x23 )
acc3 = -( z30*x30 + z31*x31 + z32*x32 + z33*x33 )

Parameters

Input/OutputType Comments
return v4cacc48 Returned accumulation vector (4 x cint48 lanes)
xbuff v32cint16Input buffer of 32 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsetsunsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v4cacc48 negmul4 ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

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

acc0 = -( z00*x00 + z01*x01 + z02*x02 + z03*x03 )
acc1 = -( z10*x10 + z11*x11 + z12*x12 + z13*x13 )
acc2 = -( z20*x20 + z21*x21 + z22*x22 + z23*x23 )
acc3 = -( z30*x30 + z31*x31 + z32*x32 + z33*x33 )

Parameters

Input/OutputType Comments
return v4cacc48 Returned accumulation vector (4 x cint48 lanes)
xbuff v16cint16Input buffer of 16 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsetsunsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v8cacc48 negmul8 ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Complex multiply-negate intrinsic function .

acc0 = -( z00*x00 + z01*x01 )
acc1 = -( z10*x10 + z11*x11 )
acc2 = -( z20*x20 + z21*x21 )
acc3 = -( z30*x30 + z31*x31 )
acc4 = -( z40*x40 + z41*x41 )
acc5 = -( z50*x50 + z51*x51 )
acc6 = -( z60*x60 + z61*x61 )
acc7 = -( z70*x70 + z71*x71 )

Parameters

Input/OutputType Comments
return v8cacc48 Returned accumulation vector (8 x cint48 lanes)
xbuff v32cint16Input buffer of 32 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsets unsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.
v8cacc48 negmul8 ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16int16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

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

acc0 = -( z00*x00 + z01*x01 )
acc1 = -( z10*x10 + z11*x11 )
acc2 = -( z20*x20 + z21*x21 )
acc3 = -( z30*x30 + z31*x31 )
acc4 = -( z40*x40 + z41*x41 )
acc5 = -( z50*x50 + z51*x51 )
acc6 = -( z60*x60 + z61*x61 )
acc7 = -( z70*x70 + z71*x71 )

Parameters

Input/OutputType Comments
return v8cacc48 Returned accumulation vector (8 x cint48 lanes)
xbuff v16cint16Input buffer of 16 elements of type cint16
xstart int Starting position offset applied to all lanes of input from X buffer.
xoffsets unsigned int 4b offset for each lane, applied to the x buffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer.
zbuff v16int16Input buffer of 16 elements of type int16
zstart int Starting 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.
zoffsets unsigned int 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstep int Step 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.