AI Engine Intrinsics User Guide  (AIE) r2p22
 All Data Structures Namespaces Functions Variables Typedefs Groups Pages
X and Y buffer conjugation.

Overview

16-bit Complex self multiplication intrinsics. X and Y buffer conjugation.

Functions

v4cacc48 mac4_cc (v4cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply-accumulate intrinsic function with X and Y buffer conjugation . More...
 
v4cacc48 mac4_cc (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply-accumulate intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v4cacc48 mac4_cc (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16cint16 ybuff, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply-accumulate intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v8cacc48 mac8_cc (v8cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int yoffsets)
 Complex multiply-accumulate intrinsic function with X and Y buffer conjugation . More...
 
v8cacc48 mac8_cc (v8cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int yoffsets)
 Complex multiply-accumulate intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v8cacc48 mac8_cc (v8cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, unsigned int yoffsets)
 Complex multiply-accumulate intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v4cacc48 msc4_cc (v4cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply-subtract intrinsic function with X and Y buffer conjugation . More...
 
v4cacc48 msc4_cc (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply-subtract intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v4cacc48 msc4_cc (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16cint16 ybuff, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply-subtract intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v8cacc48 msc8_cc (v8cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int yoffsets)
 Complex multiply-subtract intrinsic function with X and Y buffer conjugation . More...
 
v8cacc48 msc8_cc (v8cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int yoffsets)
 Complex multiply-subtract intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v8cacc48 msc8_cc (v8cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, unsigned int yoffsets)
 Complex multiply-subtract intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v4cacc48 mul4_cc (v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply intrinsic function with X and Y buffer conjugation . More...
 
v4cacc48 mul4_cc (v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v4cacc48 mul4_cc (v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16cint16 ybuff, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v8cacc48 mul8_cc (v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int yoffsets)
 Complex multiply intrinsic function with X and Y buffer conjugation . More...
 
v8cacc48 mul8_cc (v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int yoffsets)
 Complex multiply intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v8cacc48 mul8_cc (v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, unsigned int yoffsets)
 Complex multiply intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v4cacc48 negmul4_cc (v32cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply-negate intrinsic function with X and Y buffer conjugation . More...
 
v4cacc48 negmul4_cc (v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply-negate intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v4cacc48 negmul4_cc (v16cint16 xbuff, int xstart, unsigned int xoffsets, int xstep, v16cint16 ybuff, int ystart, unsigned int yoffsets, int ystep)
 Complex multiply-negate intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v8cacc48 negmul8_cc (v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int yoffsets)
 Complex multiply-negate intrinsic function with X and Y buffer conjugation . More...
 
v8cacc48 negmul8_cc (v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int yoffsets)
 Complex multiply-negate intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 
v8cacc48 negmul8_cc (v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, unsigned int yoffsets)
 Complex multiply-negate intrinsic function with X and Y buffer conjugation using small X input buffer. More...
 

Function Documentation

v4cacc48 mac4_cc ( v4cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

Complex multiply-accumulate intrinsic function with X and Y buffer conjugation .

acc0 += cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01)
acc1 += cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11)
acc2 += cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21)
acc3 += cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31)

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the xbuffer
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 mac4_cc ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

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

acc0 += cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01)
acc1 += cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11)
acc2 += cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21)
acc3 += cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31)

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the xbuffer
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 mac4_cc ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16cint16  ybuff,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

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

acc0 += cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01)
acc1 += cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11)
acc2 += cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21)
acc3 += cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31)

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ybuff v16cint16Right input buffer of 16 elements of type cint16
ystart int Starting position offset applied to all lanes of input from ybuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the ybuffer
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 mac8_cc ( v8cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  yoffsets 
)

Complex multiply-accumulate intrinsic function with X and Y buffer conjugation .

acc0 += cnj(x00)*cnj(y00)
acc1 += cnj(x10)*cnj(y10)
acc2 += cnj(x20)*cnj(y20)
acc3 += cnj(x30)*cnj(y30)
acc4 += cnj(x40)*cnj(y40)
acc5 += cnj(x50)*cnj(y50)
acc6 += cnj(x60)*cnj(y60)
acc7 += cnj(x70)*cnj(y70)

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 in the xbuffer. LSB apply to first lane
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 mac8_cc ( v8cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  yoffsets 
)

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

acc0 += cnj(x00)*cnj(y00)
acc1 += cnj(x10)*cnj(y10)
acc2 += cnj(x20)*cnj(y20)
acc3 += cnj(x30)*cnj(y30)
acc4 += cnj(x40)*cnj(y40)
acc5 += cnj(x50)*cnj(y50)
acc6 += cnj(x60)*cnj(y60)
acc7 += cnj(x70)*cnj(y70)

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 in the xbuffer. LSB apply to first lane
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 mac8_cc ( v8cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
v16cint16  ybuff,
int  ystart,
unsigned int  yoffsets 
)

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

acc0 += cnj(x00)*cnj(y00)
acc1 += cnj(x10)*cnj(y10)
acc2 += cnj(x20)*cnj(y20)
acc3 += cnj(x30)*cnj(y30)
acc4 += cnj(x40)*cnj(y40)
acc5 += cnj(x50)*cnj(y50)
acc6 += cnj(x60)*cnj(y60)
acc7 += cnj(x70)*cnj(y70)

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 in the xbuffer. LSB apply to first lane
ybuff v16cint16Right input buffer of 16 elements of type cint16
ystart int Starting position offset applied to all lanes of input from ybuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 msc4_cc ( v4cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

Complex multiply-subtract intrinsic function with X and Y buffer conjugation .

acc0 -= cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01)
acc1 -= cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11)
acc2 -= cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21)
acc3 -= cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31)

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the xbuffer
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 msc4_cc ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

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

acc0 -= cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01)
acc1 -= cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11)
acc2 -= cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21)
acc3 -= cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31)

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the xbuffer
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 msc4_cc ( v4cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16cint16  ybuff,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

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

acc0 -= cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01)
acc1 -= cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11)
acc2 -= cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21)
acc3 -= cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31)

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ybuff v16cint16Right input buffer of 16 elements of type cint16
ystart int Starting position offset applied to all lanes of input from ybuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the ybuffer
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 msc8_cc ( v8cacc48  acc,
v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  yoffsets 
)

Complex multiply-subtract intrinsic function with X and Y buffer conjugation .

acc0 -= cnj(x00)*cnj(y00)
acc1 -= cnj(x10)*cnj(y10)
acc2 -= cnj(x20)*cnj(y20)
acc3 -= cnj(x30)*cnj(y30)
acc4 -= cnj(x40)*cnj(y40)
acc5 -= cnj(x50)*cnj(y50)
acc6 -= cnj(x60)*cnj(y60)
acc7 -= cnj(x70)*cnj(y70)

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 in the xbuffer. LSB apply to first lane
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 msc8_cc ( v8cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  yoffsets 
)

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

acc0 -= cnj(x00)*cnj(y00)
acc1 -= cnj(x10)*cnj(y10)
acc2 -= cnj(x20)*cnj(y20)
acc3 -= cnj(x30)*cnj(y30)
acc4 -= cnj(x40)*cnj(y40)
acc5 -= cnj(x50)*cnj(y50)
acc6 -= cnj(x60)*cnj(y60)
acc7 -= cnj(x70)*cnj(y70)

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 in the xbuffer. LSB apply to first lane
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 msc8_cc ( v8cacc48  acc,
v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
v16cint16  ybuff,
int  ystart,
unsigned int  yoffsets 
)

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

acc0 -= cnj(x00)*cnj(y00)
acc1 -= cnj(x10)*cnj(y10)
acc2 -= cnj(x20)*cnj(y20)
acc3 -= cnj(x30)*cnj(y30)
acc4 -= cnj(x40)*cnj(y40)
acc5 -= cnj(x50)*cnj(y50)
acc6 -= cnj(x60)*cnj(y60)
acc7 -= cnj(x70)*cnj(y70)

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 in the xbuffer. LSB apply to first lane
ybuff v16cint16Right input buffer of 16 elements of type cint16
ystart int Starting position offset applied to all lanes of input from ybuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 mul4_cc ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

Complex multiply intrinsic function with X and Y buffer conjugation .

acc0 = cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01)
acc1 = cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11)
acc2 = cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21)
acc3 = cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31)

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the xbuffer
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 mul4_cc ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

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

acc0 = cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01)
acc1 = cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11)
acc2 = cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21)
acc3 = cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31)

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the xbuffer
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 mul4_cc ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16cint16  ybuff,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

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

acc0 = cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01)
acc1 = cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11)
acc2 = cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21)
acc3 = cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31)

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ybuff v16cint16Right input buffer of 16 elements of type cint16
ystart int Starting position offset applied to all lanes of input from ybuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the ybuffer
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 mul8_cc ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  yoffsets 
)

Complex multiply intrinsic function with X and Y buffer conjugation .

acc0 = cnj(x00)*cnj(y00)
acc1 = cnj(x10)*cnj(y10)
acc2 = cnj(x20)*cnj(y20)
acc3 = cnj(x30)*cnj(y30)
acc4 = cnj(x40)*cnj(y40)
acc5 = cnj(x50)*cnj(y50)
acc6 = cnj(x60)*cnj(y60)
acc7 = cnj(x70)*cnj(y70)

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 in the xbuffer. LSB apply to first lane
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 mul8_cc ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  yoffsets 
)

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

acc0 = cnj(x00)*cnj(y00)
acc1 = cnj(x10)*cnj(y10)
acc2 = cnj(x20)*cnj(y20)
acc3 = cnj(x30)*cnj(y30)
acc4 = cnj(x40)*cnj(y40)
acc5 = cnj(x50)*cnj(y50)
acc6 = cnj(x60)*cnj(y60)
acc7 = cnj(x70)*cnj(y70)

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 in the xbuffer. LSB apply to first lane
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 mul8_cc ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
v16cint16  ybuff,
int  ystart,
unsigned int  yoffsets 
)

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

acc0 = cnj(x00)*cnj(y00)
acc1 = cnj(x10)*cnj(y10)
acc2 = cnj(x20)*cnj(y20)
acc3 = cnj(x30)*cnj(y30)
acc4 = cnj(x40)*cnj(y40)
acc5 = cnj(x50)*cnj(y50)
acc6 = cnj(x60)*cnj(y60)
acc7 = cnj(x70)*cnj(y70)

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 in the xbuffer. LSB apply to first lane
ybuff v16cint16Right input buffer of 16 elements of type cint16
ystart int Starting position offset applied to all lanes of input from ybuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 negmul4_cc ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

Complex multiply-negate intrinsic function with X and Y buffer conjugation .

acc0 = -( cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01) )
acc1 = -( cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11) )
acc2 = -( cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21) )
acc3 = -( cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31) )

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the xbuffer
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 negmul4_cc ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

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

acc0 = -( cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01) )
acc1 = -( cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11) )
acc2 = -( cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21) )
acc3 = -( cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31) )

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the xbuffer
Note
  • For more information on how data selection works from the buffers go here.
v4cacc48 negmul4_cc ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v16cint16  ybuff,
int  ystart,
unsigned int  yoffsets,
int  ystep 
)

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

acc0 = -( cnj(x00)*cnj(y00) + cnj(x01)*cnj(y01) )
acc1 = -( cnj(x10)*cnj(y10) + cnj(x11)*cnj(y11) )
acc2 = -( cnj(x20)*cnj(y20) + cnj(x21)*cnj(y21) )
acc3 = -( cnj(x30)*cnj(y30) + cnj(x31)*cnj(y31) )

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 in the xbuffer. LSB apply to first lane
xstep unsigned int Step between each column for selection in the xbuffer
ybuff v16cint16Right input buffer of 16 elements of type cint16
ystart int Starting position offset applied to all lanes of input from ybuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
ystep unsigned int Step between each column for selection in the ybuffer
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 negmul8_cc ( v32cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  yoffsets 
)

Complex multiply-negate intrinsic function with X and Y buffer conjugation .

acc0 = -( cnj(x00)*cnj(y00) )
acc1 = -( cnj(x10)*cnj(y10) )
acc2 = -( cnj(x20)*cnj(y20) )
acc3 = -( cnj(x30)*cnj(y30) )
acc4 = -( cnj(x40)*cnj(y40) )
acc5 = -( cnj(x50)*cnj(y50) )
acc6 = -( cnj(x60)*cnj(y60) )
acc7 = -( cnj(x70)*cnj(y70) )

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 in the xbuffer. LSB apply to first lane
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 negmul8_cc ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  yoffsets 
)

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

acc0 = -( cnj(x00)*cnj(y00) )
acc1 = -( cnj(x10)*cnj(y10) )
acc2 = -( cnj(x20)*cnj(y20) )
acc3 = -( cnj(x30)*cnj(y30) )
acc4 = -( cnj(x40)*cnj(y40) )
acc5 = -( cnj(x50)*cnj(y50) )
acc6 = -( cnj(x60)*cnj(y60) )
acc7 = -( cnj(x70)*cnj(y70) )

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 in the xbuffer. LSB apply to first lane
ystart int Starting position offset applied to all lanes of input from xbuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.
v8cacc48 negmul8_cc ( v16cint16  xbuff,
int  xstart,
unsigned int  xoffsets,
v16cint16  ybuff,
int  ystart,
unsigned int  yoffsets 
)

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

acc0 = -( cnj(x00)*cnj(y00) )
acc1 = -( cnj(x10)*cnj(y10) )
acc2 = -( cnj(x20)*cnj(y20) )
acc3 = -( cnj(x30)*cnj(y30) )
acc4 = -( cnj(x40)*cnj(y40) )
acc5 = -( cnj(x50)*cnj(y50) )
acc6 = -( cnj(x60)*cnj(y60) )
acc7 = -( cnj(x70)*cnj(y70) )

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 in the xbuffer. LSB apply to first lane
ybuff v16cint16Right input buffer of 16 elements of type cint16
ystart int Starting position offset applied to all lanes of input from ybuffer for the second input
yoffsets unsigned int 4b offset for each lane in the xbuffer. LSB apply to first lane
Note
  • For more information on how data selection works from the buffers go here.