# Fully connected

Dense layers, batch matmul paths, and scratch sizing helpers. 33 functions, declared in 2 modules.

| Function | Summary | Module |
| --- | --- | --- |
| [`arm_batch_matmul_f16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_batch_matmul_f16) | Batched matrix multiplication. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_batch_matmul_f16_get_buffer_size`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_batch_matmul_f16_get_buffer_size) | Get the temporary buffer size required by batched matrix multiplication. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_batch_matmul_f32`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_batch_matmul_f32) | Batched matrix multiplication. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_batch_matmul_f32_get_buffer_size`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_batch_matmul_f32_get_buffer_size) | Get the temporary buffer size required by batched matrix multiplication. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_batch_matmul_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_batch_matmul_s16) | Batch matmul function with 16 bit input and output. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_batch_matmul_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_batch_matmul_s8) | Batch matmul function with 8 bit input and output. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_batch_matmul_s8_get_buffer_size`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_batch_matmul_s8_get_buffer_size) | Get size of the scratch buffer required by armbatchmatmuls8(). | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_batch_matmul_s8_get_buffer_size_dsp`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_batch_matmul_s8_get_buffer_size_dsp) | Get size of the scratch buffer required by armbatchmatmuls8() for processors with DSP extension. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_batch_matmul_s8_get_buffer_size_mve`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_batch_matmul_s8_get_buffer_size_mve) | Get size of the scratch buffer required by armbatchmatmuls8() for Arm(R) Helium Architecture case. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_f16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_fully_connected_f16) | Fully connected layer, dispatch by layout. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_fully_connected_f16_acc16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_fully_connected_f16_acc16) | Fully connected layer, dispatch by layout. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_fully_connected_f16_get_buffer_size`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_fully_connected_f16_get_buffer_size) | Get the temporary buffer size required by the fully connected layer. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_fully_connected_f32`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_fully_connected_f32) | Fully connected layer, dispatch by layout. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_fully_connected_f32_get_buffer_size`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_fully_connected_f32_get_buffer_size) | Get the temporary buffer size required by the fully connected layer. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_fully_connected_nhwc_f16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_fully_connected_nhwc_f16) | Fully connected layer, NHWC layout. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_fully_connected_nhwc_f16_acc16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_fully_connected_nhwc_f16_acc16) | Fully connected layer, NHWC layout. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_fully_connected_nhwc_f32`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/#arm_fully_connected_nhwc_f32) | Fully connected layer, NHWC layout. | [Fully-connected Layer Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/fc/) |
| [`arm_fully_connected_per_channel_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_per_channel_s16) | Basic s16 Fully Connected function using per channel quantization. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_per_channel_s16_get_buffer_size`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_per_channel_s16_get_buffer_size) | Get size of additional buffer required by armfullyconnectedperchannels16(). | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_per_channel_s16_get_buffer_size_dsp`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_per_channel_s16_get_buffer_size_dsp) | Get size of additional buffer required by armfullyconnectedperchannels16() for processors with DSP extension. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_per_channel_s16_get_buffer_size_mve`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_per_channel_s16_get_buffer_size_mve) | Get size of additional buffer required by armfullyconnectedperchannels16() for Arm(R) Helium Architecture case. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_per_channel_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_per_channel_s8) | Basic s8 Fully Connected function using per channel quantization. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_s16) | Basic s16 Fully Connected function. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_s16_get_buffer_size`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_s16_get_buffer_size) | Get size of additional buffer required by armfullyconnecteds16(). | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_s16_get_buffer_size_dsp`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_s16_get_buffer_size_dsp) | Get size of additional buffer required by armfullyconnecteds16() for processors with DSP extension. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_s16_get_buffer_size_mve`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_s16_get_buffer_size_mve) | Get size of additional buffer required by armfullyconnecteds16() for Arm(R) Helium Architecture case. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_s4`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_s4) | Basic s4 Fully Connected function. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_s8) | Basic s8 Fully Connected function. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_s8_get_buffer_size`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_s8_get_buffer_size) | Get size of additional buffer required by armfullyconnecteds8(). | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_s8_get_buffer_size_dsp`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_s8_get_buffer_size_dsp) | Get size of additional buffer required by armfullyconnecteds8() for processors with DSP extension. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_s8_get_buffer_size_mve`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_s8_get_buffer_size_mve) | Get size of additional buffer required by armfullyconnecteds8() for Arm(R) Helium Architecture case. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_wrapper_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_wrapper_s16) | s16 Fully Connected layer wrapper function | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_fully_connected_wrapper_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_fully_connected_wrapper_s8) | s8 Fully Connected layer wrapper function | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |

[All heliaCORE functions in one page](https://ambiqai.github.io/ns-cmsis-nn/reference/api/)
