Edge AI Add-on API 2.2.0
Loading...
Searching...
No Matches

◆ nrf_axon_xty_16_16_32_output_stride()

nrf_axon_result_e nrf_axon_xty_16_16_32_output_stride ( const int16_t * x_ptr,
const int16_t * y_ptr,
int32_t * out_ptr,
uint16_t length,
uint8_t rounding_bits,
uint8_t output_extra_stride,
nrf_axon_syncmode_blocking_e block_mode,
bool keep_reservation )

vector multiplies 2 16bit vectors to produce a 32bit vector, with option to have unpacked output vector.

Useful for applying a hamming window on real input before performing an FFT, which requires complex input. Pass output_extra_stride=1 and the output will be placed every other word in the real coefficients slots. A separate function would need to be called to 0 out the imaginary coefficients.

If output_extra_stride is not needed it can be set to 0, but using axon_xty_16_16_32() is preferred for better performance. It performs multiplication of 2 16bit vectors and produces a 32bit output. @parameter out_ptr location to place output. Can safely overlap either input @parameter length number of of elements in the input vectors. Maximum value is 512. @rounding_bits number of bits to round the output by. @parameter output_extra_stride Nuumber of output slots to skip between each output value (skipped slots are not modified)