Basic math functions

riscv_nmsis_nn_status riscv_elementwise_mul_s16_s8(const int16_t *input_1_vect, const int16_t *input_2_vect, int8_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)
group BasicMath

Functions

riscv_nmsis_nn_status riscv_elementwise_mul_s16_s8(const int16_t *input_1_vect, const int16_t *input_2_vect, int8_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 elementwise multiplication with s8 output

Supported framework: TensorFlow Lite micro

Parameters
  • input_1_vect[in] pointer to input vector 1

  • input_2_vect[in] pointer to input vector 2

  • output[inout] pointer to output vector

  • out_offset[in] output offset

  • out_mult[in] output multiplier

  • out_shift[in] output shift

  • block_size[in] number of samples per batch

  • batch_size[in] number of samples per batch

  • batch_offset[in] Number of timesteps between consecutive batches in output, see riscv_nn_lstm_step_s8. Note that it is assumed that the input is stored with sequential batches.

Returns

The function returns RISCV_NMSIS_NN_SUCCESS