Functions | |
arm_cmsis_nn_status | arm_elementwise_add_s16 (const int16_t *input_1_vect, const int16_t *input_2_vect, const int32_t input_1_offset, const int32_t input_1_mult, const int32_t input_1_shift, const int32_t input_2_offset, const int32_t input_2_mult, const int32_t input_2_shift, const int32_t left_shift, int16_t *output, const int32_t out_offset, const int32_t out_mult, const int32_t out_shift, const int32_t out_activation_min, const int32_t out_activation_max, const int32_t block_size) |
s16 elementwise add of two vectors | |
arm_cmsis_nn_status | arm_elementwise_add_s8 (const int8_t *input_1_vect, const int8_t *input_2_vect, const int32_t input_1_offset, const int32_t input_1_mult, const int32_t input_1_shift, const int32_t input_2_offset, const int32_t input_2_mult, const int32_t input_2_shift, const int32_t left_shift, int8_t *output, const int32_t out_offset, const int32_t out_mult, const int32_t out_shift, const int32_t out_activation_min, const int32_t out_activation_max, const int32_t block_size) |
s8 elementwise add of two vectors | |
arm_cmsis_nn_status | arm_elementwise_mul_acc_s16 (const int16_t *input_1_vect, const int16_t *input_2_vect, const int32_t input_1_offset, const int32_t input_2_offset, int16_t *output, const int32_t out_offset, const int32_t out_mult, const int32_t out_shift, const int32_t out_activation_min, const int32_t out_activation_max, const int32_t block_size) |
s16 element wise accumulative multiplication of two vectors | |
arm_cmsis_nn_status | arm_elementwise_mul_s16 (const int16_t *input_1_vect, const int16_t *input_2_vect, const int32_t input_1_offset, const int32_t input_2_offset, int16_t *output, const int32_t out_offset, const int32_t out_mult, const int32_t out_shift, const int32_t out_activation_min, const int32_t out_activation_max, const int32_t block_size) |
s16 element wise multiplication of two vectors | |
arm_cmsis_nn_status | arm_elementwise_mul_s16_batch_offset (const int16_t *input_1_vect, const int16_t *input_2_vect, int16_t *output, const int32_t out_offset, const int32_t out_mult, const int32_t out_shift, const int32_t block_size, const int32_t batch_size, const int32_t batch_offset) |
s16 element wise multiplication of batches of two vectors | |
arm_cmsis_nn_status | arm_elementwise_mul_s8 (const int8_t *input_1_vect, const int8_t *input_2_vect, const int32_t input_1_offset, const int32_t input_2_offset, int8_t *output, const int32_t out_offset, const int32_t out_mult, const int32_t out_shift, const int32_t out_activation_min, const int32_t out_activation_max, const int32_t block_size) |
s8 elementwise multiplication | |
Elementwise add and multiplication functions.
arm_cmsis_nn_status arm_elementwise_add_s16 | ( | const int16_t * | input_1_vect, |
const int16_t * | input_2_vect, | ||
const int32_t | input_1_offset, | ||
const int32_t | input_1_mult, | ||
const int32_t | input_1_shift, | ||
const int32_t | input_2_offset, | ||
const int32_t | input_2_mult, | ||
const int32_t | input_2_shift, | ||
const int32_t | left_shift, | ||
int16_t * | output, | ||
const int32_t | out_offset, | ||
const int32_t | out_mult, | ||
const int32_t | out_shift, | ||
const int32_t | out_activation_min, | ||
const int32_t | out_activation_max, | ||
const int32_t | block_size | ||
) |
s16 elementwise add of two vectors
[in] | input_1_vect | pointer to input vector 1 |
[in] | input_2_vect | pointer to input vector 2 |
[in] | input_1_offset | offset for input 1. Not used. |
[in] | input_1_mult | multiplier for input 1 |
[in] | input_1_shift | shift for input 1 |
[in] | input_2_offset | offset for input 2. Not used. |
[in] | input_2_mult | multiplier for input 2 |
[in] | input_2_shift | shift for input 2 |
[in] | left_shift | input left shift |
[in,out] | output | pointer to output vector |
[in] | out_offset | output offset. Not used. |
[in] | out_mult | output multiplier |
[in] | out_shift | output shift |
[in] | out_activation_min | minimum value to clamp output to. Min: -32768 |
[in] | out_activation_max | maximum value to clamp output to. Max: 32767 |
[in] | block_size | number of samples |
arm_cmsis_nn_status arm_elementwise_add_s8 | ( | const int8_t * | input_1_vect, |
const int8_t * | input_2_vect, | ||
const int32_t | input_1_offset, | ||
const int32_t | input_1_mult, | ||
const int32_t | input_1_shift, | ||
const int32_t | input_2_offset, | ||
const int32_t | input_2_mult, | ||
const int32_t | input_2_shift, | ||
const int32_t | left_shift, | ||
int8_t * | output, | ||
const int32_t | out_offset, | ||
const int32_t | out_mult, | ||
const int32_t | out_shift, | ||
const int32_t | out_activation_min, | ||
const int32_t | out_activation_max, | ||
const int32_t | block_size | ||
) |
s8 elementwise add of two vectors
[in] | input_1_vect | pointer to input vector 1 |
[in] | input_2_vect | pointer to input vector 2 |
[in] | input_1_offset | offset for input 1. Range: -127 to 128 |
[in] | input_1_mult | multiplier for input 1 |
[in] | input_1_shift | shift for input 1 |
[in] | input_2_offset | offset for input 2. Range: -127 to 128 |
[in] | input_2_mult | multiplier for input 2 |
[in] | input_2_shift | shift for input 2 |
[in] | left_shift | input left shift |
[in,out] | output | pointer to output vector |
[in] | out_offset | output offset. Range: -128 to 127 |
[in] | out_mult | output multiplier |
[in] | out_shift | output shift |
[in] | out_activation_min | minimum value to clamp output to. Min: -128 |
[in] | out_activation_max | maximum value to clamp output to. Max: 127 |
[in] | block_size | number of samples |
arm_cmsis_nn_status arm_elementwise_mul_acc_s16 | ( | const int16_t * | input_1_vect, |
const int16_t * | input_2_vect, | ||
const int32_t | input_1_offset, | ||
const int32_t | input_2_offset, | ||
int16_t * | output, | ||
const int32_t | out_offset, | ||
const int32_t | out_mult, | ||
const int32_t | out_shift, | ||
const int32_t | out_activation_min, | ||
const int32_t | out_activation_max, | ||
const int32_t | block_size | ||
) |
s16 element wise accumulative multiplication of two vectors
s16 elementwise multiplication. The result of the multiplication is accumulated to the passed result buffer.
arm_cmsis_nn_status arm_elementwise_mul_s16 | ( | const int16_t * | input_1_vect, |
const int16_t * | input_2_vect, | ||
const int32_t | input_1_offset, | ||
const int32_t | input_2_offset, | ||
int16_t * | output, | ||
const int32_t | out_offset, | ||
const int32_t | out_mult, | ||
const int32_t | out_shift, | ||
const int32_t | out_activation_min, | ||
const int32_t | out_activation_max, | ||
const int32_t | block_size | ||
) |
s16 element wise multiplication of two vectors
s16 elementwise multiplication
arm_cmsis_nn_status arm_elementwise_mul_s16_batch_offset | ( | const int16_t * | input_1_vect, |
const int16_t * | input_2_vect, | ||
int16_t * | output, | ||
const int32_t | out_offset, | ||
const int32_t | out_mult, | ||
const int32_t | out_shift, | ||
const int32_t | block_size, | ||
const int32_t | batch_size, | ||
const int32_t | batch_offset | ||
) |
s16 element wise multiplication of batches of two vectors
s16 elementwise multiplication with s16 output
arm_cmsis_nn_status arm_elementwise_mul_s8 | ( | const int8_t * | input_1_vect, |
const int8_t * | input_2_vect, | ||
const int32_t | input_1_offset, | ||
const int32_t | input_2_offset, | ||
int8_t * | output, | ||
const int32_t | out_offset, | ||
const int32_t | out_mult, | ||
const int32_t | out_shift, | ||
const int32_t | out_activation_min, | ||
const int32_t | out_activation_max, | ||
const int32_t | block_size | ||
) |
s8 elementwise multiplication
[in] | input_1_vect | pointer to input vector 1 |
[in] | input_2_vect | pointer to input vector 2 |
[in] | input_1_offset | offset for input 1. Range: -127 to 128 |
[in] | input_2_offset | offset for input 2. Range: -127 to 128 |
[in,out] | output | pointer to output vector |
[in] | out_offset | output offset. Range: -128 to 127 |
[in] | out_mult | output multiplier |
[in] | out_shift | output shift |
[in] | out_activation_min | minimum value to clamp output to. Min: -128 |
[in] | out_activation_max | maximum value to clamp output to. Max: 127 |
[in] | block_size | number of samples |
Supported framework: TensorFlow Lite micro