Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
heliaCORE
Logo
heliaCORE
  • Why heliaCORE?
  • Getting Started
    • CMake (find_package)
    • CMSIS-Pack
    • Zephyr Module
    • neuralSPOT-X
  • Guides
  • Operator & Kernel Coverage
  • Cortex-M Accelerators
  • Kernel Benchmarks
  • Versioning & Releases
  • Toolchain Pinning
  • API
    • C API Reference
      • Struct arm_nn_double
      • Struct cmsis_nn_activation
      • Struct cmsis_nn_bias_data
      • Struct cmsis_nn_bmm_params
      • Struct cmsis_nn_broadcast_to_params
      • Struct cmsis_nn_concatenation_params
      • Struct cmsis_nn_context
      • Struct cmsis_nn_conv_params
      • Struct cmsis_nn_dims
      • Struct cmsis_nn_dw_conv_params
      • Struct cmsis_nn_dynamic_update_slice_params
      • Struct cmsis_nn_fc_params
      • Struct cmsis_nn_gather_nd_params
      • Struct cmsis_nn_gather_params
      • Struct cmsis_nn_lstm_context
      • Struct cmsis_nn_lstm_dims
      • Struct cmsis_nn_lstm_gate
      • Struct cmsis_nn_lstm_params
      • Struct cmsis_nn_mirror_pad_params
      • Struct cmsis_nn_per_channel_quant_params
      • Struct cmsis_nn_per_tensor_quant_params
      • Struct cmsis_nn_pool_params
      • Struct cmsis_nn_quant_params
      • Struct cmsis_nn_resize_params
      • Struct cmsis_nn_reverse_sequence_params
      • Struct cmsis_nn_scaling
      • Struct cmsis_nn_scatter_nd_params
      • Struct cmsis_nn_select_v2_params
      • Struct cmsis_nn_softmax_lut_s16
      • Struct cmsis_nn_svdf_params
      • Struct cmsis_nn_tile
      • Struct cmsis_nn_tile_params
      • Struct cmsis_nn_transpose_conv_params
      • Struct cmsis_nn_transpose_params
      • Struct cmsis_nn_where_params
      • Enum arm_cmsis_nn_status
      • Enum arm_nn_activation_type
      • Enum arm_nn_compare_operation
      • Union arm_nn_long_long
      • Union arm_nnword
      • Function arm_abs_s16
      • Function arm_abs_s8
      • Function arm_add_s16
      • Function arm_add_s8
      • Function arm_add_scalar_s16
      • Function arm_add_scalar_s8
      • Function arm_argmax_s16
      • Function arm_argmax_s8
      • Function arm_argmin_s16
      • Function arm_argmin_s8
      • Function arm_avgpool_s16
      • Function arm_avgpool_s16_get_buffer_size
      • Function arm_avgpool_s16_get_buffer_size_dsp
      • Function arm_avgpool_s16_get_buffer_size_mve
      • Function arm_avgpool_s8
      • Function arm_avgpool_s8_get_buffer_size
      • Function arm_avgpool_s8_get_buffer_size_dsp
      • Function arm_avgpool_s8_get_buffer_size_mve
      • Function arm_batch_matmul_s16
      • Function arm_batch_matmul_s8
      • Function arm_batch_to_space_nd_s16
      • Function arm_batch_to_space_nd_s8
      • Function arm_broadcast_to_s16
      • Function arm_broadcast_to_s8
      • Function arm_check_broadcast_required
      • Function arm_clamp_s16
      • Function arm_clamp_s8
      • Function arm_cmsis_nn_dim_at
      • Function arm_cmsis_nn_shape_product
      • Function arm_comparison_s16
      • Function arm_comparison_s8
      • Function arm_concatenation_s16
      • Function arm_concatenation_s32
      • Function arm_concatenation_s8
      • Function arm_concatenation_s8_w
      • Function arm_concatenation_s8_x
      • Function arm_concatenation_s8_y
      • Function arm_concatenation_s8_z
      • Function arm_convolve_1_x_n_s4
      • Function arm_convolve_1_x_n_s4_get_buffer_size
      • Function arm_convolve_1_x_n_s8
      • Function arm_convolve_1_x_n_s8_get_buffer_size
      • Function arm_convolve_1x1_out_s8
      • Function arm_convolve_1x1_s16_ns_np_nd
      • Function arm_convolve_1x1_s4
      • Function arm_convolve_1x1_s4_fast
      • Function arm_convolve_1x1_s4_fast_get_buffer_size
      • Function arm_convolve_1x1_s8
      • Function arm_convolve_1x1_s8_fast
      • Function arm_convolve_1x1_s8_fast_get_buffer_size
      • Function arm_convolve_even_s4
      • Function arm_convolve_s16
      • Function arm_convolve_s16_fast_small_kernel
      • Function arm_convolve_s16_get_buffer_size
      • Function arm_convolve_s16_group_ch_mult_1
      • Function arm_convolve_s4
      • Function arm_convolve_s4_get_buffer_size
      • Function arm_convolve_s8
      • Function arm_convolve_s8_get_buffer_size
      • Function arm_convolve_s8_get_weights_sum_size
      • Function arm_convolve_weight_sum
      • Function arm_convolve_wrapper_s16
      • Function arm_convolve_wrapper_s16_get_buffer_size
      • Function arm_convolve_wrapper_s16_get_buffer_size_dsp
      • Function arm_convolve_wrapper_s16_get_buffer_size_mve
      • Function arm_convolve_wrapper_s4
      • Function arm_convolve_wrapper_s4_get_buffer_size
      • Function arm_convolve_wrapper_s4_get_buffer_size_dsp
      • Function arm_convolve_wrapper_s4_get_buffer_size_mve
      • Function arm_convolve_wrapper_s8
      • Function arm_convolve_wrapper_s8_get_buffer_size
      • Function arm_convolve_wrapper_s8_get_buffer_size_dsp
      • Function arm_convolve_wrapper_s8_get_buffer_size_mve
      • Function arm_depth_to_space_s16
      • Function arm_depth_to_space_s8
      • Function arm_depthwise_conv_3x3_s8
      • Function arm_depthwise_conv_fast_s16
      • Function arm_depthwise_conv_fast_s16_get_buffer_size
      • Function arm_depthwise_conv_s16
      • Function arm_depthwise_conv_s4
      • Function arm_depthwise_conv_s4_opt
      • Function arm_depthwise_conv_s4_opt_get_buffer_size
      • Function arm_depthwise_conv_s8
      • Function arm_depthwise_conv_s8_opt
      • Function arm_depthwise_conv_s8_opt_get_buffer_size
      • Function arm_depthwise_conv_s8_opt_get_buffer_size_dsp
      • Function arm_depthwise_conv_s8_opt_get_buffer_size_mve
      • Function arm_depthwise_conv_wrapper_s16
      • Function arm_depthwise_conv_wrapper_s16_get_buffer_size
      • Function arm_depthwise_conv_wrapper_s16_get_buffer_size_dsp
      • Function arm_depthwise_conv_wrapper_s16_get_buffer_size_mve
      • Function arm_depthwise_conv_wrapper_s4
      • Function arm_depthwise_conv_wrapper_s4_get_buffer_size
      • Function arm_depthwise_conv_wrapper_s4_get_buffer_size_dsp
      • Function arm_depthwise_conv_wrapper_s4_get_buffer_size_mve
      • Function arm_depthwise_conv_wrapper_s8
      • Function arm_depthwise_conv_wrapper_s8_get_buffer_size
      • Function arm_depthwise_conv_wrapper_s8_get_buffer_size_dsp
      • Function arm_depthwise_conv_wrapper_s8_get_buffer_size_mve
      • Function arm_depthwise_convolve_weight_sum
      • Function arm_dequantize_s16_f32
      • Function arm_dequantize_s8_f32
      • Function arm_dynamic_update_slice_s16
      • Function arm_dynamic_update_slice_s8
      • Function arm_elementwise_add_s16
      • Function arm_elementwise_add_s8
      • Function arm_elementwise_mul_acc_s16
      • Function arm_elementwise_mul_s16
      • Function arm_elementwise_mul_s16_batch_offset
      • Function arm_elementwise_mul_s16_s8
      • Function arm_elementwise_mul_s8
      • Function arm_elementwise_prelu_s8
      • Function arm_elementwise_squared_difference_s16
      • Function arm_elementwise_squared_difference_s8
      • Function arm_elementwise_sub_s16
      • Function arm_elementwise_sub_s8
      • Function arm_equal_s16
      • Function arm_equal_s8
      • Function arm_fully_connected_fp16
      • Function arm_fully_connected_per_channel_s16
      • Function arm_fully_connected_per_channel_s16_get_buffer_size
      • Function arm_fully_connected_per_channel_s16_get_buffer_size_dsp
      • Function arm_fully_connected_per_channel_s16_get_buffer_size_mve
      • Function arm_fully_connected_per_channel_s8
      • Function arm_fully_connected_s16
      • Function arm_fully_connected_s16_get_buffer_size
      • Function arm_fully_connected_s16_get_buffer_size_dsp
      • Function arm_fully_connected_s16_get_buffer_size_mve
      • Function arm_fully_connected_s4
      • Function arm_fully_connected_s8
      • Function arm_fully_connected_s8_get_buffer_size
      • Function arm_fully_connected_s8_get_buffer_size_dsp
      • Function arm_fully_connected_s8_get_buffer_size_mve
      • Function arm_fully_connected_wrapper_s16
      • Function arm_fully_connected_wrapper_s8
      • Function arm_gather_nd_s16
      • Function arm_gather_nd_s8
      • Function arm_gather_s16
      • Function arm_gather_s8
      • Function arm_greater_equal_s16
      • Function arm_greater_equal_s8
      • Function arm_greater_s16
      • Function arm_greater_s8
      • Function arm_hard_swish_compat_s8
      • Function arm_hard_swish_precise_s16
      • Function arm_hard_swish_precise_s8
      • Function arm_leaky_relu_s16
      • Function arm_leaky_relu_s8
      • Function arm_less_equal_s16
      • Function arm_less_equal_s8
      • Function arm_less_s16
      • Function arm_less_s8
      • Function arm_logistic_s16
      • Function arm_lstm_unidirectional_s16
      • Function arm_lstm_unidirectional_s8
      • Function arm_max_pool_s16
      • Function arm_max_pool_s8
      • Function arm_maximum_s16
      • Function arm_maximum_s8
      • Function arm_mean_s16
      • Function arm_mean_s8
      • Function arm_memcpy_q15
      • Function arm_memcpy_s16
      • Function arm_memcpy_s32
      • Function arm_memcpy_s8
      • Function arm_memset_s16
      • Function arm_memset_s8
      • Function arm_minimum_s16
      • Function arm_minimum_s8
      • Function arm_mirror_pad_s16
      • Function arm_mirror_pad_s8
      • Function arm_mul_s16
      • Function arm_mul_s8
      • Function arm_mul_scalar_s16
      • Function arm_mul_scalar_s8
      • Function arm_nn_activation_s16
      • Function arm_nn_depthwise_conv_nt_t_padded_s8
      • Function arm_nn_depthwise_conv_nt_t_s16
      • Function arm_nn_depthwise_conv_nt_t_s4
      • Function arm_nn_depthwise_conv_nt_t_s8
      • Function arm_nn_depthwise_conv_s8_core
      • Function arm_nn_divide_by_power_of_two
      • Function arm_nn_divide_by_power_of_two_s16
      • Function arm_nn_doubling_high_mult
      • Function arm_nn_doubling_high_mult_no_sat
      • Function arm_nn_exp_on_negative_values
      • Function arm_nn_lstm_calculate_gate_s16
      • Function arm_nn_lstm_calculate_gate_s8_s16
      • Function arm_nn_lstm_step_s16
      • Function arm_nn_lstm_step_s8
      • Function arm_nn_mat_mul_core_1x_s4
      • Function arm_nn_mat_mul_core_1x_s8
      • Function arm_nn_mat_mul_core_4x_s8
      • Function arm_nn_mat_mult_kernel_row_offset_s8_s16
      • Function arm_nn_mat_mult_kernel_s16
      • Function arm_nn_mat_mult_kernel_s4_s16
      • Function arm_nn_mat_mult_kernel_s8_s16
      • Function arm_nn_mat_mult_nt_interleaved_t_even_s4
      • Function arm_nn_mat_mult_nt_t_1x1_out_s8
      • Function arm_nn_mat_mult_nt_t_s16
      • Function arm_nn_mat_mult_nt_t_s4
      • Function arm_nn_mat_mult_nt_t_s8
      • Function arm_nn_mat_mult_nt_t_s8_s32
      • Function arm_nn_mat_mult_s8
      • Function arm_nn_mult_by_power_of_two
      • Function arm_nn_nonneg_divide_by_pot_s32
      • Function arm_nn_one_over_one_plus_x_for_x_in_0_1
      • Function arm_nn_read_q15x2_ia
      • Function arm_nn_read_s16x2
      • Function arm_nn_read_s8x2
      • Function arm_nn_read_s8x2_ia
      • Function arm_nn_read_s8x4
      • Function arm_nn_read_s8x4_ia
      • Function arm_nn_requantize
      • Function arm_nn_requantize_s64
      • Function arm_nn_sat_lshift_s16
      • Function arm_nn_softmax_common_s8
      • Function arm_nn_sqdmulh_s16
      • Function arm_nn_sqrdmulh_s16
      • Function arm_nn_transpose_conv_row_s8_s32
      • Function arm_nn_vec_mat_mul_result_acc_s16
      • Function arm_nn_vec_mat_mul_result_acc_s8_s16
      • Function arm_nn_vec_mat_mult_t_fp16
      • Function arm_nn_vec_mat_mult_t_per_ch_s16
      • Function arm_nn_vec_mat_mult_t_per_ch_s8
      • Function arm_nn_vec_mat_mult_t_s16
      • Function arm_nn_vec_mat_mult_t_s16_s16
      • Function arm_nn_vec_mat_mult_t_s4
      • Function arm_nn_vec_mat_mult_t_s8
      • Function arm_nn_vec_mat_mult_t_svdf_s8
      • Function arm_nn_write_q15x2_ia
      • Function arm_nn_write_s8x2_ia
      • Function arm_nn_write_s8x4_ia
      • Function arm_not_equal_s16
      • Function arm_not_equal_s8
      • Function arm_pad_s16
      • Function arm_pad_s8
      • Function arm_prelu_s8
      • Function arm_prelu_scalar_s8
      • Function arm_q7_to_q15_with_offset
      • Function arm_quantize_f32_s16
      • Function arm_quantize_f32_s8
      • Function arm_reduce_max_s16
      • Function arm_reduce_max_s8
      • Function arm_reduce_min_s16
      • Function arm_reduce_min_s8
      • Function arm_relu6_q7
      • Function arm_relu_generic_s16
      • Function arm_relu_generic_s8
      • Function arm_relu_q15
      • Function arm_relu_q7
      • Function arm_relu_s16
      • Function arm_relu_s8
      • Function arm_requantize_s16_s16
      • Function arm_requantize_s8_s8
      • Function arm_reshape_s8
      • Function arm_resize_nearest_neighbor_s16
      • Function arm_resize_nearest_neighbor_s8
      • Function arm_reverse_sequence_s16
      • Function arm_reverse_sequence_s8
      • Function arm_rsqrt_s16_per_op
      • Function arm_rsqrt_s16_universal
      • Function arm_scatter_nd_s16
      • Function arm_scatter_nd_s8
      • Function arm_select_v2_s16
      • Function arm_select_v2_s8
      • Function arm_softmax_s16
      • Function arm_softmax_s8
      • Function arm_softmax_s8_s16
      • Function arm_softmax_u8
      • Function arm_space_to_batch_nd_s16
      • Function arm_space_to_batch_nd_s8
      • Function arm_space_to_depth_s16
      • Function arm_space_to_depth_s8
      • Function arm_split_s16
      • Function arm_split_s8
      • Function arm_sqrt_s16
      • Function arm_sqrt_s8
      • Function arm_squared_difference_s16
      • Function arm_squared_difference_s8
      • Function arm_squared_difference_scalar_s16
      • Function arm_squared_difference_scalar_s8
      • Function arm_strided_slice_s16
      • Function arm_strided_slice_s32
      • Function arm_strided_slice_s8
      • Function arm_sub_s16
      • Function arm_sub_s8
      • Function arm_sub_scalar_s16
      • Function arm_sub_scalar_s8
      • Function arm_svdf_s8
      • Function arm_svdf_s8_get_buffer_size
      • Function arm_svdf_s8_get_buffer_size_dsp
      • Function arm_svdf_s8_get_buffer_size_mve
      • Function arm_svdf_state_s16_s8
      • Function arm_tanh_s16
      • Function arm_tile_s16
      • Function arm_tile_s8
      • Function arm_transpose_conv_s8
      • Function arm_transpose_conv_s8_get_buffer_size
      • Function arm_transpose_conv_s8_get_buffer_size_dsp
      • Function arm_transpose_conv_s8_get_buffer_size_mve
      • Function arm_transpose_conv_s8_get_reverse_conv_buffer_size
      • Function arm_transpose_conv_wrapper_s8
      • Function arm_transpose_s16
      • Function arm_transpose_s8
      • Function arm_vector_sum_s8
      • Function arm_vector_sum_s8_s64
      • Function arm_where_s16
      • Function arm_where_s8
      • Function GetNearestNeighbor
      • Variable sigmoid_table_uint16
      • Define CH_IN_BLOCK_MVE
      • Define CLAMP
      • Define CONVERT_DW_CONV_WITH_ONE_INPUT_CH_AND_OUTPUT_CH_ABOVE_THRESHOLD
      • Define DIV_POW2
      • Define DIV_POW2_MVE
      • Define EXP_ON_NEG
      • Define LEFT_SHIFT
      • Define MASK_IF_NON_ZERO
      • Define MASK_IF_ZERO
      • Define MAX
      • Define MAX_COL_COUNT
      • Define MIN
      • Define MUL_POW2
      • Define MUL_SAT
      • Define MUL_SAT_MVE
      • Define NN_Q15_MAX
      • Define NN_Q15_MIN
      • Define NN_Q31_MAX
      • Define NN_Q31_MIN
      • Define NN_Q7_MAX
      • Define NN_Q7_MIN
      • Define NN_ROUND
      • Define NS_CMSIS_NN
      • Define NS_CMSIS_NN_VERSION
      • Define NS_CMSIS_NN_VERSION_MAJOR
      • Define NS_CMSIS_NN_VERSION_MINOR
      • Define NS_CMSIS_NN_VERSION_PATCH
      • Define ONE_OVER1
      • Define OPTIONAL_RESTRICT_KEYWORD
      • Define PACK_Q15x2_32x1
      • Define PACK_S8x4_32x1
      • Define REDUCE_MULTIPLIER
      • Define REVERSE_TCOL_EFFICIENT_THRESHOLD
      • Define RIGHT_SHIFT
      • Define S4_CH_IN_BLOCK_MVE
      • Define SELECT_IF_NON_ZERO
      • Define SELECT_USING_MASK
      • Define USE_FAST_DW_CONV_S16_FUNCTION
      • Define USE_INTRINSIC
    • API Generation Notes
  • Contributing
Back to top

Define MUL_POW2¶

  • Defined in File arm_nnsupportfunctions.h

Define Documentation¶

MUL_POW2(a, b)¶
Next
Define MUL_SAT
Previous
Define MIN
Copyright © Ambiq Micro, Inc. Built on Arm CMSIS-NN.
Made with Sphinx and @pradyunsg's Furo
On this page
  • Define MUL_POW2
    • Define Documentation
      • MUL_POW2