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

Lane by lane vector compare. More...

Overview

Lane by lane vector compare.

Simple vector compares

Linear lane by lane (x0 compared to y0, etc) comparison between x and y buffers.

These "Simple Vector Comparison" instrinsics return one bit per compare where the result of lane 0 is placed in the LSB. All others return one word return one word per lane (with word size according to the input parameter).

Note that data from xbuff is the left operand and data from ybuff is the right operand. The only exceptions are "gt[N]" and "le[N]" where the buffers are swapped.

Simple Vector Comparison

unsigned int lt32 (v32int16 xbuff, v32int16 ybuff)
 
unsigned int gt32 (v32int16 xbuff, v32int16 ybuff)
 
unsigned int le32 (v32int16 xbuff, v32int16 ybuff)
 
unsigned int ge32 (v32int16 xbuff, v32int16 ybuff)
 
unsigned int eq32 (v32int16 xbuff, v32int16 ybuff)
 
unsigned int ne32 (v32int16 xbuff, v32int16 ybuff)
 
unsigned int lt16 (v16int32 xbuff, v16int32 ybuff)
 
unsigned int gt16 (v16int32 xbuff, v16int32 ybuff)
 
unsigned int le16 (v16int32 xbuff, v16int32 ybuff)
 
unsigned int ge16 (v16int32 xbuff, v16int32 ybuff)
 
unsigned int eq16 (v16int32 xbuff, v16int32 ybuff)
 
unsigned int ne16 (v16int32 xbuff, v16int32 ybuff)
 

Simple Vector MaxDiff

v32int16 maxdiff32 (v32int16 xbuff, v32int16 ybuff)
 Performs the maximum between zero and the difference between x and y.
 
v16int32 maxdiff16 (v16int32 xbuff, v16int32 ybuff)
 Performs the maximum between zero and the difference between x and y.
 

Simple Vector Minimum/Maximum

v32int16 max32 (v32int16 xbuff, v32int16 ybuff)
 
v32int16 min32 (v32int16 xbuff, v32int16 ybuff)
 
v16int32 max16 (v16int32 xbuff, v16int32 ybuff)
 
v16int32 min16 (v16int32 xbuff, v16int32 ybuff)
 

Function Documentation

unsigned int eq16 ( v16int32  xbuff,
v16int32  ybuff 
)
unsigned int eq32 ( v32int16  xbuff,
v32int16  ybuff 
)
unsigned int ge16 ( v16int32  xbuff,
v16int32  ybuff 
)
unsigned int ge32 ( v32int16  xbuff,
v32int16  ybuff 
)
unsigned int gt16 ( v16int32  xbuff,
v16int32  ybuff 
)
unsigned int gt32 ( v32int16  xbuff,
v32int16  ybuff 
)
unsigned int le16 ( v16int32  xbuff,
v16int32  ybuff 
)
unsigned int le32 ( v32int16  xbuff,
v32int16  ybuff 
)
unsigned int lt16 ( v16int32  xbuff,
v16int32  ybuff 
)
unsigned int lt32 ( v32int16  xbuff,
v32int16  ybuff 
)
v16int32 max16 ( v16int32  xbuff,
v16int32  ybuff 
)
v32int16 max32 ( v32int16  xbuff,
v32int16  ybuff 
)
v16int32 maxdiff16 ( v16int32  xbuff,
v16int32  ybuff 
)

Performs the maximum between zero and the difference between x and y.

v32int16 maxdiff32 ( v32int16  xbuff,
v32int16  ybuff 
)

Performs the maximum between zero and the difference between x and y.

v16int32 min16 ( v16int32  xbuff,
v16int32  ybuff 
)
v32int16 min32 ( v32int16  xbuff,
v32int16  ybuff 
)
unsigned int ne16 ( v16int32  xbuff,
v16int32  ybuff 
)
unsigned int ne32 ( v32int16  xbuff,
v32int16  ybuff 
)