API¶
heliaCORE keeps the CMSIS-NN C API shape where compatibility matters, then adds Ambiq-tuned kernels and integration paths for HELIA workloads on Apollo-class targets. Start with the operator families below, filter to the kernels you care about, then drill into exact generated signatures when you need implementation detail.
positioningWhat it isA CMSIS-NN-compatible kernel layer packaged for Ambiq firmware and HELIA runtime integration.
compatibilityHow it differsInherited CMSIS-NN APIs stay recognizable while Ambiq coverage fills model-graph gaps around real deployments.
integrationHow it fits HELIAUse heliaCORE through neuralSPOT-X or direct CMake/CMSIS-Pack flows depending on your firmware stack.
Browse By Kernel Family¶
computeConvolutionConv2D, depthwise, transpose convolution, wrappers, and buffer helpers.
computeFully connectedDense layers, batch matmul paths, and scratch sizing helpers.
graph glueElementwiseAdd, sub, mul, square difference, min/max, mean, and arithmetic glue.
selectionReduction and comparisonArgmin/argmax, min/max reductions, comparisons, means, and vector sums.
activationActivationReLU, LeakyReLU, PReLU, Hard-Swish, Logistic, Tanh, and clamp.
layoutData movementPad, reshape, transpose, concatenate, gather, resize, and strided slice.
tailPooling, softmax, quantizationClassifier tail APIs plus dtype conversion and requantization utilities.
sequenceSequenceLSTM and SVDF functions for temporal workloads.
indexTypes and supportStructs, enums, files, and low-level support helpers in the full generated index.
For file-by-file browsing, structs, enums, and the complete generated tree, open the generated C API reference.
Convolution Functions¶
66 functions
arm_convolve_1_x_n_s4
arm_convolve_1_x_n_s4_get_buffer_size
arm_convolve_1_x_n_s8
arm_convolve_1_x_n_s8_get_buffer_size
arm_convolve_1x1_out_s8
arm_convolve_1x1_s16_ns_np_nd
arm_convolve_1x1_s4
arm_convolve_1x1_s4_fast
arm_convolve_1x1_s4_fast_get_buffer_size
arm_convolve_1x1_s8
arm_convolve_1x1_s8_fast
arm_convolve_1x1_s8_fast_get_buffer_size
arm_convolve_even_s4
arm_convolve_s16
arm_convolve_s16_fast_small_kernel
arm_convolve_s16_get_buffer_size
arm_convolve_s16_group_ch_mult_1
arm_convolve_s4
arm_convolve_s4_get_buffer_size
arm_convolve_s8
arm_convolve_s8_get_buffer_size
arm_convolve_s8_get_weights_sum_size
arm_convolve_weight_sum
arm_convolve_wrapper_s16
arm_convolve_wrapper_s16_get_buffer_size
arm_convolve_wrapper_s16_get_buffer_size_dsp
arm_convolve_wrapper_s16_get_buffer_size_mve
arm_convolve_wrapper_s4
arm_convolve_wrapper_s4_get_buffer_size
arm_convolve_wrapper_s4_get_buffer_size_dsp
arm_convolve_wrapper_s4_get_buffer_size_mve
arm_convolve_wrapper_s8
arm_convolve_wrapper_s8_get_buffer_size
arm_convolve_wrapper_s8_get_buffer_size_dsp
arm_convolve_wrapper_s8_get_buffer_size_mve
arm_depthwise_conv_3x3_s8
arm_depthwise_conv_fast_s16
arm_depthwise_conv_fast_s16_get_buffer_size
arm_depthwise_conv_s16
arm_depthwise_conv_s4
arm_depthwise_conv_s4_opt
arm_depthwise_conv_s4_opt_get_buffer_size
arm_depthwise_conv_s8
arm_depthwise_conv_s8_opt
arm_depthwise_conv_s8_opt_get_buffer_size
arm_depthwise_conv_s8_opt_get_buffer_size_dsp
arm_depthwise_conv_s8_opt_get_buffer_size_mve
arm_depthwise_conv_wrapper_s16
arm_depthwise_conv_wrapper_s16_get_buffer_size
arm_depthwise_conv_wrapper_s16_get_buffer_size_dsp
arm_depthwise_conv_wrapper_s16_get_buffer_size_mve
arm_depthwise_conv_wrapper_s4
arm_depthwise_conv_wrapper_s4_get_buffer_size
arm_depthwise_conv_wrapper_s4_get_buffer_size_dsp
arm_depthwise_conv_wrapper_s4_get_buffer_size_mve
arm_depthwise_conv_wrapper_s8
arm_depthwise_conv_wrapper_s8_get_buffer_size
arm_depthwise_conv_wrapper_s8_get_buffer_size_dsp
arm_depthwise_conv_wrapper_s8_get_buffer_size_mve
arm_depthwise_convolve_weight_sum
arm_transpose_conv_s8
arm_transpose_conv_s8_get_buffer_size
arm_transpose_conv_s8_get_buffer_size_dsp
arm_transpose_conv_s8_get_buffer_size_mve
arm_transpose_conv_s8_get_reverse_conv_buffer_size
arm_transpose_conv_wrapper_s8Fully-Connected Layer Functions¶
19 functions
arm_batch_matmul_s16
arm_batch_matmul_s8
arm_fully_connected_fp16
arm_fully_connected_per_channel_s16
arm_fully_connected_per_channel_s16_get_buffer_size
arm_fully_connected_per_channel_s16_get_buffer_size_dsp
arm_fully_connected_per_channel_s16_get_buffer_size_mve
arm_fully_connected_per_channel_s8
arm_fully_connected_s16
arm_fully_connected_s16_get_buffer_size
arm_fully_connected_s16_get_buffer_size_dsp
arm_fully_connected_s16_get_buffer_size_mve
arm_fully_connected_s4
arm_fully_connected_s8
arm_fully_connected_s8_get_buffer_size
arm_fully_connected_s8_get_buffer_size_dsp
arm_fully_connected_s8_get_buffer_size_mve
arm_fully_connected_wrapper_s16
arm_fully_connected_wrapper_s8Elementwise Functions¶
36 functions
arm_abs_s16
arm_abs_s8
arm_add_s16
arm_add_s8
arm_add_scalar_s16
arm_add_scalar_s8
arm_elementwise_add_s16
arm_elementwise_add_s8
arm_elementwise_mul_acc_s16
arm_elementwise_mul_s16
arm_elementwise_mul_s16_batch_offset
arm_elementwise_mul_s16_s8
arm_elementwise_mul_s8
arm_elementwise_prelu_s8
arm_elementwise_squared_difference_s16
arm_elementwise_squared_difference_s8
arm_elementwise_sub_s16
arm_elementwise_sub_s8
arm_maximum_s16
arm_maximum_s8
arm_minimum_s16
arm_minimum_s8
arm_mul_s16
arm_mul_s8
arm_mul_scalar_s16
arm_mul_scalar_s8
arm_sqrt_s16
arm_sqrt_s8
arm_squared_difference_s16
arm_squared_difference_s8
arm_squared_difference_scalar_s16
arm_squared_difference_scalar_s8
arm_sub_s16
arm_sub_s8
arm_sub_scalar_s16
arm_sub_scalar_s8Basic Math and Reduction¶
26 functions
arm_argmax_s16
arm_argmax_s8
arm_argmin_s16
arm_argmin_s8
arm_comparison_s16
arm_comparison_s8
arm_equal_s16
arm_equal_s8
arm_greater_equal_s16
arm_greater_equal_s8
arm_greater_s16
arm_greater_s8
arm_less_equal_s16
arm_less_equal_s8
arm_less_s16
arm_less_s8
arm_mean_s16
arm_mean_s8
arm_not_equal_s16
arm_not_equal_s8
arm_reduce_max_s16
arm_reduce_max_s8
arm_reduce_min_s16
arm_reduce_min_s8
arm_vector_sum_s8
arm_vector_sum_s8_s64Activation Functions¶
19 functions
arm_clamp_s16
arm_clamp_s8
arm_hard_swish_compat_s8
arm_hard_swish_precise_s16
arm_hard_swish_precise_s8
arm_leaky_relu_s16
arm_leaky_relu_s8
arm_logistic_s16
arm_nn_activation_s16
arm_prelu_s8
arm_prelu_scalar_s8
arm_relu6_q7
arm_relu_generic_s16
arm_relu_generic_s8
arm_relu_q15
arm_relu_q7
arm_relu_s16
arm_relu_s8
arm_tanh_s16Data Movement¶
31 functions
arm_batch_to_space_nd_s16
arm_batch_to_space_nd_s8
arm_concatenation_s16
arm_concatenation_s32
arm_concatenation_s8
arm_concatenation_s8_w
arm_concatenation_s8_x
arm_concatenation_s8_y
arm_concatenation_s8_z
arm_depth_to_space_s16
arm_depth_to_space_s8
arm_gather_nd_s16
arm_gather_nd_s8
arm_gather_s16
arm_gather_s8
arm_pad_s16
arm_pad_s8
arm_reshape_s8
arm_resize_nearest_neighbor_s16
arm_resize_nearest_neighbor_s8
arm_space_to_batch_nd_s16
arm_space_to_batch_nd_s8
arm_space_to_depth_s16
arm_space_to_depth_s8
arm_split_s16
arm_split_s8
arm_strided_slice_s16
arm_strided_slice_s32
arm_strided_slice_s8
arm_transpose_s16
arm_transpose_s8Classifier Tail¶
21 functions
arm_avgpool_s16
arm_avgpool_s16_get_buffer_size
arm_avgpool_s16_get_buffer_size_dsp
arm_avgpool_s16_get_buffer_size_mve
arm_avgpool_s8
arm_avgpool_s8_get_buffer_size
arm_avgpool_s8_get_buffer_size_dsp
arm_avgpool_s8_get_buffer_size_mve
arm_dequantize_s16_f32
arm_dequantize_s8_f32
arm_max_pool_s16
arm_max_pool_s8
arm_q7_to_q15_with_offset
arm_quantize_f32_s16
arm_quantize_f32_s8
arm_requantize_s16_s16
arm_requantize_s8_s8
arm_softmax_s16
arm_softmax_s8
arm_softmax_s8_s16
arm_softmax_u8Sequence Functions¶
11 functions
Types and Support¶
Structs, enums, files, and lower-level support helpers are intentionally kept in the full generated C API index to avoid duplicating declarations across the grouped operator view and the complete Exhale tree.