GroupElementwise
-
riscv_nmsis_nn_status riscv_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)
-
riscv_nmsis_nn_status riscv_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)
-
riscv_nmsis_nn_status riscv_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)
-
riscv_nmsis_nn_status riscv_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)
- group GroupElementwise
Functions
-
riscv_nmsis_nn_status riscv_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
- Parameters
input_1_vect – [in] pointer to input vector 1
input_2_vect – [in] pointer to input vector 2
input_1_offset – [in] offset for input 1. Not used.
input_1_mult – [in] multiplier for input 1
input_1_shift – [in] shift for input 1
input_2_offset – [in] offset for input 2. Not used.
input_2_mult – [in] multiplier for input 2
input_2_shift – [in] shift for input 2
left_shift – [in] input left shift
output – [inout] pointer to output vector
out_offset – [in] output offset. Not used.
out_mult – [in] output multiplier
out_shift – [in] output shift
out_activation_min – [in] minimum value to clamp output to. Min: -32768
out_activation_max – [in] maximum value to clamp output to. Max: 32767
block_size – [in] number of samples
- Returns
The function returns RISCV_NMSIS_NN_SUCCESS
-
riscv_nmsis_nn_status riscv_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
- Parameters
input_1_vect – [in] pointer to input vector 1
input_2_vect – [in] pointer to input vector 2
input_1_offset – [in] offset for input 1. Range: -127 to 128
input_1_mult – [in] multiplier for input 1
input_1_shift – [in] shift for input 1
input_2_offset – [in] offset for input 2. Range: -127 to 128
input_2_mult – [in] multiplier for input 2
input_2_shift – [in] shift for input 2
left_shift – [in] input left shift
output – [inout] pointer to output vector
out_offset – [in] output offset. Range: -128 to 127
out_mult – [in] output multiplier
out_shift – [in] output shift
out_activation_min – [in] minimum value to clamp output to. Min: -128
out_activation_max – [in] maximum value to clamp output to. Max: 127
block_size – [in] number of samples
- Returns
The function returns RISCV_NMSIS_NN_SUCCESS
-
riscv_nmsis_nn_status riscv_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
Note
Refer header file for details.
-
riscv_nmsis_nn_status riscv_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
Supported framework: TensorFlow Lite micro
- Parameters
input_1_vect – [in] pointer to input vector 1
input_2_vect – [in] pointer to input vector 2
input_1_offset – [in] offset for input 1. Range: -127 to 128
input_2_offset – [in] offset for input 2. Range: -127 to 128
output – [inout] pointer to output vector
out_offset – [in] output offset. Range: -128 to 127
out_mult – [in] output multiplier
out_shift – [in] output shift
out_activation_min – [in] minimum value to clamp output to. Min: -128
out_activation_max – [in] maximum value to clamp output to. Max: 127
block_size – [in] number of samples
- Returns
The function returns RISCV_NMSIS_NN_SUCCESS
-
riscv_nmsis_nn_status riscv_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)