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

Overview

16 bit complex by 16 bit complex using Dynamic X and Z buffer conjugation

Functions

v4cacc48 mac4_antisym_ct (v4cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer .
 
v4cacc48 mac4_antisym_ct (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer using small X input buffer.
 
v4cacc48 mac4_antisym_ct (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x and y input buffers using small X input buffer.
 
v4cacc48 msc4_antisym_ct (v4cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply-subtract intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer .
 
v4cacc48 msc4_antisym_ct (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply-subtract intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer using small X input buffer.
 
v4cacc48 msc4_antisym_ct (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply-subtract intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x and y input buffers using small X input buffer.
 
v4cacc48 mul4_antisym_ct (v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer .
 
v4cacc48 mul4_antisym_ct (v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer using small X input buffer.
 
v4cacc48 mul4_antisym_ct (v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x and y input buffers using small X input buffer.
 
v4cacc48 negmul4_antisym_ct (v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply-negate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer .
 
v4cacc48 negmul4_antisym_ct (v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply-negate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer using small X input buffer.
 
v4cacc48 negmul4_antisym_ct (v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, bool xyconj, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep, bool zconj)
 Complex anti-symmetric multiply-negate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x and y input buffers using small X input buffer.
 

Function Documentation

v4cacc48 mac4_antisym_ct ( v4cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer .

acc0 += z00*(x00 - y00) + z01*x01
acc1 += z10*(x10 - y10) + z11*x11
acc2 += z20*(x20 - y20) + z21*x21
acc3 += z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
accIncoming accumulation vector (4 x cint48 lanes)
xbuffInput buffer of 32 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer using small X input buffer.

acc0 += z00*(x00 - y00) + z01*x01
acc1 += z10*(x10 - y10) + z11*x11
acc2 += z20*(x20 - y20) + z21*x21
acc3 += z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
accIncoming accumulation vector (4 x cint48 lanes)
xbuffInput buffer of 16 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
v16cint16  ybuff,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x and y input buffers using small X input buffer.

acc0 += z00*(x00 - y00) + z01*x01
acc1 += z10*(x10 - y10) + z11*x11
acc2 += z20*(x20 - y20) + z21*x21
acc3 += z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
accIncoming accumulation vector (4 x cint48 lanes)
xbuffInput buffer of 16 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ybuffRight input buffer of 16 elements of type cint16
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v4cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply-subtract intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer .

acc0 -= z00*(x00 - y00) + z01*x01
acc1 -= z10*(x10 - y10) + z11*x11
acc2 -= z20*(x20 - y20) + z21*x21
acc3 -= z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
accIncoming accumulation vector (4 x cint48 lanes)
xbuffInput buffer of 32 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply-subtract intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer using small X input buffer.

acc0 -= z00*(x00 - y00) + z01*x01
acc1 -= z10*(x10 - y10) + z11*x11
acc2 -= z20*(x20 - y20) + z21*x21
acc3 -= z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
accIncoming accumulation vector (4 x cint48 lanes)
xbuffInput buffer of 16 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
v16cint16  ybuff,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply-subtract intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x and y input buffers using small X input buffer.

acc0 -= z00*(x00 - y00) + z01*x01
acc1 -= z10*(x10 - y10) + z11*x11
acc2 -= z20*(x20 - y20) + z21*x21
acc3 -= z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
accIncoming accumulation vector (4 x cint48 lanes)
xbuffInput buffer of 16 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ybuffRight input buffer of 16 elements of type cint16
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer .

acc0 = z00*(x00 - y00) + z01*x01
acc1 = z10*(x10 - y10) + z11*x11
acc2 = z20*(x20 - y20) + z21*x21
acc3 = z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
xbuffInput buffer of 32 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer using small X input buffer.

acc0 = z00*(x00 - y00) + z01*x01
acc1 = z10*(x10 - y10) + z11*x11
acc2 = z20*(x20 - y20) + z21*x21
acc3 = z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
xbuffInput buffer of 16 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
v16cint16  ybuff,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x and y input buffers using small X input buffer.

acc0 = z00*(x00 - y00) + z01*x01
acc1 = z10*(x10 - y10) + z11*x11
acc2 = z20*(x20 - y20) + z21*x21
acc3 = z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
xbuffInput buffer of 16 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ybuffRight input buffer of 16 elements of type cint16
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply-negate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer .

acc0 = -( z00*(x00 - y00) + z01*x01 )
acc1 = -( z10*(x10 - y10) + z11*x11 )
acc2 = -( z20*(x20 - y20) + z21*x21 )
acc3 = -( z30*(x30 - y30) + z31*x31 )
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
xbuffInput buffer of 32 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply-negate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x input buffer using small X input buffer.

acc0 = -( z00*(x00 - y00) + z01*x01 )
acc1 = -( z10*(x10 - y10) + z11*x11 )
acc2 = -( z20*(x20 - y20) + z21*x21 )
acc3 = -( z30*(x30 - y30) + z31*x31 )
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
xbuffInput buffer of 16 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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_antisym_ct ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
v16cint16  ybuff,
int  ystart,
bool  xyconj,
unsigned int  mtap,
v8cint16  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep,
bool  zconj 
)

Complex anti-symmetric multiply-negate intrinsic function with center-tap optimization with dynamic x and z buffer conjugation with pre-sub from x and y input buffers using small X input buffer.

acc0 = -( z00*(x00 - y00) + z01*x01 )
acc1 = -( z10*(x10 - y10) + z11*x11 )
acc2 = -( z20*(x20 - y20) + z21*x21 )
acc3 = -( z30*(x30 - y30) + z31*x31 )
Returns
Returned accumulation vector (4 x cint48 lanes)
Parameters
xbuffInput buffer of 16 elements of type cint16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ybuffRight input buffer of 16 elements of type cint16
ystartStarting position offset applied to all lanes for input from Y buffer.
xyconjSelector for conjugation in X and Y buffers
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type cint16
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.
zconjSelector for conjugation in Z buffer
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.