/*
 * Copyright (c) 2009-2016 ARM Limited. All rights reserved.
 *
 * @file     index.doxyidx
 * @brief    Index file for MDK-ARM Help System
 * @version  1.0
 * @date     10. July 2019
 * @note     Generated by DoxyIndex V1.2.3 on Wednesday, 10.07.2019 15:22:29
 *           from Path 'C:\tools\PACK\ARM\CMSIS\5.6.0\\CMSIS\Documentation\NN\html',
 */

'ABCDFGHILNPQRSUabcghimnoprstuvw'
arm_avepool_q7_HWC, group__Pooling.html#gae4a7b07f97ec4313524c9fb9fbcb1f6a, arm_avepool_q7_HWC(q7_t *Im_in, const uint16_t dim_im_in, const uint16_t ch_im_in, const uint16_t dim_kernel, const uint16_t padding, const uint16_t stride, const uint16_t dim_im_out, q7_t *bufferA, q7_t *Im_out):&#160;arm_pool_q7_HWC.c
arm_convolve_1x1_HWC_q7_fast_nonsquare, group__NNConv.html#ga110adcfdaab356c750c6270aa5e05f29, arm_convolve_1x1_HWC_q7_fast_nonsquare(const q7_t *Im_in, const uint16_t dim_im_in_x, const uint16_t dim_im_in_y, const uint16_t ch_im_in, const q7_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel_x, const uint16_t dim_kernel_y, const uint16_t padding_x, const uint16_t padding_y, const uint16_t stride_x, const uint16_t stride_y, const q7_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q7_t *Im_out, const uint16_t dim_im_out_x, const uint16_t dim_im_out_y, q15_t *bufferA, q7_t *bufferB):&#160;arm_convolve_1x1_HWC_q7_fast_nonsquare.c
arm_convolve_1x1_HWC_q7_fast_nonsquare.c, arm__convolve__1x1__HWC__q7__fast__nonsquare_8c.html, 
arm_convolve_HWC_q15_basic, group__NNConv.html#ga55701f213b198084b52eab53097f1f58, arm_convolve_HWC_q15_basic(const q15_t *Im_in, const uint16_t dim_im_in, const uint16_t ch_im_in, const q15_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel, const uint16_t padding, const uint16_t stride, const q15_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q15_t *Im_out, const uint16_t dim_im_out, q15_t *bufferA, q7_t *bufferB):&#160;arm_convolve_HWC_q15_basic.c
arm_convolve_HWC_q15_basic.c, arm__convolve__HWC__q15__basic_8c.html, 
arm_convolve_HWC_q15_fast, group__NNConv.html#ga4efb1ccbbaa7dd936961989dcb443f50, arm_convolve_HWC_q15_fast(const q15_t *Im_in, const uint16_t dim_im_in, const uint16_t ch_im_in, const q15_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel, const uint16_t padding, const uint16_t stride, const q15_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q15_t *Im_out, const uint16_t dim_im_out, q15_t *bufferA, q7_t *bufferB):&#160;arm_convolve_HWC_q15_fast.c
arm_convolve_HWC_q15_fast.c, arm__convolve__HWC__q15__fast_8c.html, 
arm_convolve_HWC_q15_fast_nonsquare, group__NNConv.html#ga614ec3b71eb96e29952ec3f09e7b9c3c, arm_convolve_HWC_q15_fast_nonsquare(const q15_t *Im_in, const uint16_t dim_im_in_x, const uint16_t dim_im_in_y, const uint16_t ch_im_in, const q15_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel_x, const uint16_t dim_kernel_y, const uint16_t padding_x, const uint16_t padding_y, const uint16_t stride_x, const uint16_t stride_y, const q15_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q15_t *Im_out, const uint16_t dim_im_out_x, const uint16_t dim_im_out_y, q15_t *bufferA, q7_t *bufferB):&#160;arm_convolve_HWC_q15_fast_nonsquare.c
arm_convolve_HWC_q15_fast_nonsquare.c, arm__convolve__HWC__q15__fast__nonsquare_8c.html, 
arm_convolve_HWC_q7_basic, group__NNConv.html#ga210ae8d8fc1d12ee15b41f1fa6947681, arm_convolve_HWC_q7_basic(const q7_t *Im_in, const uint16_t dim_im_in, const uint16_t ch_im_in, const q7_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel, const uint16_t padding, const uint16_t stride, const q7_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q7_t *Im_out, const uint16_t dim_im_out, q15_t *bufferA, q7_t *bufferB):&#160;arm_convolve_HWC_q7_basic.c
arm_convolve_HWC_q7_basic.c, arm__convolve__HWC__q7__basic_8c.html, 
arm_convolve_HWC_q7_basic_nonsquare, group__NNConv.html#ga4501fa22c0836002aa47ccc313dce252, arm_convolve_HWC_q7_basic_nonsquare(const q7_t *Im_in, const uint16_t dim_im_in_x, const uint16_t dim_im_in_y, const uint16_t ch_im_in, const q7_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel_x, const uint16_t dim_kernel_y, const uint16_t padding_x, const uint16_t padding_y, const uint16_t stride_x, const uint16_t stride_y, const q7_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q7_t *Im_out, const uint16_t dim_im_out_x, const uint16_t dim_im_out_y, q15_t *bufferA, q7_t *bufferB):&#160;arm_convolve_HWC_q7_basic_nonsquare.c
arm_convolve_HWC_q7_basic_nonsquare.c, arm__convolve__HWC__q7__basic__nonsquare_8c.html, 
arm_convolve_HWC_q7_fast, group__NNConv.html#gae00d3c1285907d59657369fc98bcc83f, arm_convolve_HWC_q7_fast(const q7_t *Im_in, const uint16_t dim_im_in, const uint16_t ch_im_in, const q7_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel, const uint16_t padding, const uint16_t stride, const q7_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q7_t *Im_out, const uint16_t dim_im_out, q15_t *bufferA, q7_t *bufferB):&#160;arm_convolve_HWC_q7_fast.c
arm_convolve_HWC_q7_fast.c, arm__convolve__HWC__q7__fast_8c.html, 
arm_convolve_HWC_q7_fast_nonsquare, group__NNConv.html#gabc6d6b991024e9e5c5cdbd7489de88ef, arm_convolve_HWC_q7_fast_nonsquare(const q7_t *Im_in, const uint16_t dim_im_in_x, const uint16_t dim_im_in_y, const uint16_t ch_im_in, const q7_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel_x, const uint16_t dim_kernel_y, const uint16_t padding_x, const uint16_t padding_y, const uint16_t stride_x, const uint16_t stride_y, const q7_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q7_t *Im_out, const uint16_t dim_im_out_x, const uint16_t dim_im_out_y, q15_t *bufferA, q7_t *bufferB):&#160;arm_convolve_HWC_q7_fast_nonsquare.c
arm_convolve_HWC_q7_fast_nonsquare.c, arm__convolve__HWC__q7__fast__nonsquare_8c.html, 
arm_convolve_HWC_q7_RGB, group__NNConv.html#ga98f2ead67d7cbdf558b0cd8a3b8fc148, arm_convolve_HWC_q7_RGB(const q7_t *Im_in, const uint16_t dim_im_in, const uint16_t ch_im_in, const q7_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel, const uint16_t padding, const uint16_t stride, const q7_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q7_t *Im_out, const uint16_t dim_im_out, q15_t *bufferA, q7_t *bufferB):&#160;arm_convolve_HWC_q7_RGB.c
arm_convolve_HWC_q7_RGB.c, arm__convolve__HWC__q7__RGB_8c.html, 
arm_depthwise_conv_u8_basic_ver1, group__NNConv.html#ga02a296cb4f6361a70c3ecf1ef1238292, arm_depthwise_conv_u8_basic_ver1(const uint8_t *input, const uint16_t input_x, const uint16_t input_y, const uint16_t input_ch, const uint8_t *kernel, const uint16_t kernel_x, const uint16_t kernel_y, const int16_t ch_mult, const int16_t pad_x, const int16_t pad_y, const int16_t stride_x, const int16_t stride_y, const int16_t dilation_x, const int16_t dilation_y, const int32_t *bias, const int32_t input_offset, const int32_t filter_offset, const int32_t output_offset, uint8_t *output, const uint16_t output_x, const uint16_t output_y, const int32_t output_activation_min, const int32_t output_activation_max, const int32_t out_shift, const int32_t out_mult):&#160;arm_depthwise_conv_u8_basic_ver1.c
arm_depthwise_conv_u8_basic_ver1.c, arm__depthwise__conv__u8__basic__ver1_8c.html, 
arm_depthwise_separable_conv_HWC_q7, group__NNConv.html#gad3d21b3bc6dbd6f3b97d01104349cb0a, arm_depthwise_separable_conv_HWC_q7(const q7_t *Im_in, const uint16_t dim_im_in, const uint16_t ch_im_in, const q7_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel, const uint16_t padding, const uint16_t stride, const q7_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q7_t *Im_out, const uint16_t dim_im_out, q15_t *bufferA, q7_t *bufferB):&#160;arm_depthwise_separable_conv_HWC_q7.c
arm_depthwise_separable_conv_HWC_q7.c, arm__depthwise__separable__conv__HWC__q7_8c.html, 
arm_depthwise_separable_conv_HWC_q7_nonsquare, group__NNConv.html#ga32ac508c5467813a84f74f96655dc697, arm_depthwise_separable_conv_HWC_q7_nonsquare(const q7_t *Im_in, const uint16_t dim_im_in_x, const uint16_t dim_im_in_y, const uint16_t ch_im_in, const q7_t *wt, const uint16_t ch_im_out, const uint16_t dim_kernel_x, const uint16_t dim_kernel_y, const uint16_t padding_x, const uint16_t padding_y, const uint16_t stride_x, const uint16_t stride_y, const q7_t *bias, const uint16_t bias_shift, const uint16_t out_shift, q7_t *Im_out, const uint16_t dim_im_out_x, const uint16_t dim_im_out_y, q15_t *bufferA, q7_t *bufferB):&#160;arm_depthwise_separable_conv_HWC_q7_nonsquare.c
arm_depthwise_separable_conv_HWC_q7_nonsquare.c, arm__depthwise__separable__conv__HWC__q7__nonsquare_8c.html, 
arm_fully_connected_mat_q7_vec_q15, group__FC.html#ga4a1521e7532a1e62d71f3b12762016e2, arm_fully_connected_mat_q7_vec_q15(const q15_t *pV, const q7_t *pM, const uint16_t dim_vec, const uint16_t num_of_rows, const uint16_t bias_shift, const uint16_t out_shift, const q7_t *bias, q15_t *pOut, q15_t *vec_buffer):&#160;arm_fully_connected_mat_q7_vec_q15.c
arm_fully_connected_mat_q7_vec_q15.c, arm__fully__connected__mat__q7__vec__q15_8c.html, 
arm_fully_connected_mat_q7_vec_q15_opt, group__FC.html#gae3857bb6375692e81dde8cbd70adec08, arm_fully_connected_mat_q7_vec_q15_opt(const q15_t *pV, const q7_t *pM, const uint16_t dim_vec, const uint16_t num_of_rows, const uint16_t bias_shift, const uint16_t out_shift, const q7_t *bias, q15_t *pOut, q15_t *vec_buffer):&#160;arm_fully_connected_mat_q7_vec_q15_opt.c
arm_fully_connected_mat_q7_vec_q15_opt.c, arm__fully__connected__mat__q7__vec__q15__opt_8c.html, 
arm_fully_connected_q15, group__FC.html#gaac666c212b209e636c2369dd5c75d0dc, arm_fully_connected_q15(const q15_t *pV, const q15_t *pM, const uint16_t dim_vec, const uint16_t num_of_rows, const uint16_t bias_shift, const uint16_t out_shift, const q15_t *bias, q15_t *pOut, q15_t *vec_buffer):&#160;arm_fully_connected_q15.c
arm_fully_connected_q15.c, arm__fully__connected__q15_8c.html, 
arm_fully_connected_q15_opt, group__FC.html#ga062912078da113f5dd2004fd919a0ff2, arm_fully_connected_q15_opt(const q15_t *pV, const q15_t *pM, const uint16_t dim_vec, const uint16_t num_of_rows, const uint16_t bias_shift, const uint16_t out_shift, const q15_t *bias, q15_t *pOut, q15_t *vec_buffer):&#160;arm_fully_connected_q15_opt.c
arm_fully_connected_q15_opt.c, arm__fully__connected__q15__opt_8c.html, 
arm_fully_connected_q7, group__FC.html#ga8b7e0c2e989e8c75f0dc789f3115323d, arm_fully_connected_q7(const q7_t *pV, const q7_t *pM, const uint16_t dim_vec, const uint16_t num_of_rows, const uint16_t bias_shift, const uint16_t out_shift, const q7_t *bias, q7_t *pOut, q15_t *vec_buffer):&#160;arm_fully_connected_q7.c
arm_fully_connected_q7.c, arm__fully__connected__q7_8c.html, 
arm_fully_connected_q7_opt, group__FC.html#gaf82b71ef472a38f8fc9ac414d9d07e67, arm_fully_connected_q7_opt(const q7_t *pV, const q7_t *pM, const uint16_t dim_vec, const uint16_t num_of_rows, const uint16_t bias_shift, const uint16_t out_shift, const q7_t *bias, q7_t *pOut, q15_t *vec_buffer):&#160;arm_fully_connected_q7_opt.c
arm_fully_connected_q7_opt.c, arm__fully__connected__q7__opt_8c.html, 
arm_maxpool_q7_HWC, group__Pooling.html#ga99afcdcc61eaf429ab3ee823702e44ce, arm_maxpool_q7_HWC(q7_t *Im_in, const uint16_t dim_im_in, const uint16_t ch_im_in, const uint16_t dim_kernel, const uint16_t padding, const uint16_t stride, const uint16_t dim_im_out, q7_t *bufferA, q7_t *Im_out):&#160;arm_pool_q7_HWC.c
arm_nn_activation_type, arm__nnsupportfunctions_8h.html#a7f41aa78cd9a0552fae9b348ee4831a0, arm_nnsupportfunctions.h
arm_nn_activations_direct_q15, group__Acti.html#ga8932b57c8d0ee757511af2d40dcc11e7, arm_nn_activations_direct_q15(q15_t *data, uint16_t size, uint16_t int_width, arm_nn_activation_type type):&#160;arm_nn_activations_q15.c
arm_nn_activations_direct_q7, group__Acti.html#ga79f11131ae6767d60e03b1f6506b1af8, arm_nn_activations_direct_q7(q7_t *data, uint16_t size, uint16_t int_width, arm_nn_activation_type type):&#160;arm_nn_activations_q7.c
arm_nn_activations_q15.c, arm__nn__activations__q15_8c.html, 
arm_nn_activations_q7.c, arm__nn__activations__q7_8c.html, 
arm_nn_divide_by_power_of_two, arm__nnsupportfunctions_8h.html#ab6dbc2fd53fae3ccdd1d0d70c8d3b491, arm_nnsupportfunctions.h
arm_nn_mat_mult_kernel_q7_q15, arm__nn__mat__mult__kernel__q7__q15_8c.html#abc4fb258cfe8500ee68e812a293a80a3, arm_nn_mat_mult_kernel_q7_q15(const q7_t *pA, const q15_t *pInBuffer, const uint16_t ch_im_out, const uint16_t numCol_A, const uint16_t bias_shift, const uint16_t out_shift, const q7_t *bias, q7_t *pOut):&#160;arm_nn_mat_mult_kernel_q7_q15.c
arm_nn_mat_mult_kernel_q7_q15.c, arm__nn__mat__mult__kernel__q7__q15_8c.html, 
arm_nn_mat_mult_kernel_q7_q15_reordered, arm__nn__mat__mult__kernel__q7__q15__reordered_8c.html#aefe9c7ce9a65060a244b06dffe74c4b3, arm_nn_mat_mult_kernel_q7_q15_reordered(const q7_t *pA, const q15_t *pInBuffer, const uint16_t ch_im_out, const uint16_t numCol_A, const uint16_t bias_shift, const uint16_t out_shift, const q7_t *bias, q7_t *pOut):&#160;arm_nn_mat_mult_kernel_q7_q15_reordered.c
arm_nn_mat_mult_kernel_q7_q15_reordered.c, arm__nn__mat__mult__kernel__q7__q15__reordered_8c.html, 
arm_nn_mult_q15, group__NNBasicMath.html#ga08f8340aa6533271b3aa6d211614fe22, arm_nn_mult_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, const uint16_t out_shift, uint32_t blockSize):&#160;arm_nn_mult_q15.c
arm_nn_mult_q15.c, arm__nn__mult__q15_8c.html, 
arm_nn_mult_q7, group__NNBasicMath.html#gad46c9ab012cceda8ce6681c687a58c70, arm_nn_mult_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, const uint16_t out_shift, uint32_t blockSize):&#160;arm_nn_mult_q7.c
arm_nn_mult_q7.c, arm__nn__mult__q7_8c.html, 
arm_nn_sat_doubling_high_mult, arm__nnsupportfunctions_8h.html#a51721c10f116c9f5b8d9908367989d44, arm_nnsupportfunctions.h
arm_nn_tables.h, arm__nn__tables_8h.html, 
arm_nnexamples_cifar10.cpp, arm__nnexamples__cifar10_8cpp.html, 
arm_nnexamples_cifar10_inputs.h, arm__nnexamples__cifar10__inputs_8h.html, 
arm_nnexamples_cifar10_parameter.h, arm__nnexamples__cifar10__parameter_8h.html, 
arm_nnexamples_cifar10_weights.h, arm__nnexamples__cifar10__weights_8h.html, 
arm_nnexamples_gru.cpp, arm__nnexamples__gru_8cpp.html, 
arm_nnexamples_gru_test_data.h, arm__nnexamples__gru__test__data_8h.html, 
arm_nnfunctions.h, arm__nnfunctions_8h.html, 
arm_nnsupportfunctions.h, arm__nnsupportfunctions_8h.html, 
arm_nntables.c, arm__nntables_8c.html, 
arm_nnword, unionarm__nnword.html, 
arm_pool_q7_HWC.c, arm__pool__q7__HWC_8c.html, 
arm_q7_to_q15_no_shift, group__nndata__convert.html#gae349de4dba8d253c89d45794ccf05680, arm_q7_to_q15_no_shift(const q7_t *pSrc, q15_t *pDst, uint32_t blockSize):&#160;arm_q7_to_q15_no_shift.c
arm_q7_to_q15_no_shift.c, arm__q7__to__q15__no__shift_8c.html, 
arm_q7_to_q15_reordered_no_shift, group__nndata__convert.html#gaba8fd446d5f54760b406ee63b25d1aee, arm_q7_to_q15_reordered_no_shift(const q7_t *pSrc, q15_t *pDst, uint32_t blockSize):&#160;arm_q7_to_q15_reordered_no_shift.c
arm_q7_to_q15_reordered_no_shift.c, arm__q7__to__q15__reordered__no__shift_8c.html, 
arm_relu_q15, group__Acti.html#ga53bcc00e54b802919bb3c89c143ee5ba, arm_relu_q15(q15_t *data, uint16_t size):&#160;arm_relu_q15.c
arm_relu_q15.c, arm__relu__q15_8c.html, 
arm_relu_q7, group__Acti.html#ga638e803b4fe00426f401783a6255ca30, arm_relu_q7(q7_t *data, uint16_t size):&#160;arm_relu_q7.c
arm_relu_q7.c, arm__relu__q7_8c.html, 
ARM_SIGMOID, arm__nnsupportfunctions_8h.html#a7f41aa78cd9a0552fae9b348ee4831a0a49b307e029715fbaa6f3101c806b8c54, arm_nnsupportfunctions.h
arm_softmax_q15, group__Softmax.html#ga1cacd8b84b8363079311987d0016ebe5, arm_softmax_q15(const q15_t *vec_in, const uint16_t dim_vec, q15_t *p_out):&#160;arm_softmax_q15.c
arm_softmax_q15.c, arm__softmax__q15_8c.html, 
arm_softmax_q7, group__Softmax.html#ga89aff212a97a3cf32d9d7ddf11a8f43e, arm_softmax_q7(const q7_t *vec_in, const uint16_t dim_vec, q7_t *p_out):&#160;arm_softmax_q7.c
arm_softmax_q7.c, arm__softmax__q7_8c.html, 
ARM_TANH, arm__nnsupportfunctions_8h.html#a7f41aa78cd9a0552fae9b348ee4831a0ac24e4db95c986f16c10dca71a4b4e1c5, arm_nnsupportfunctions.h
bytes, unionarm__nnword.html#ac7cff6480a8e29d95f29b73cb1267249, arm_nnword
Basic Math Functions for Neural Network Computation, group__NNBasicMath.html, 
Convolutional Neural Network Example, group__CNNExample.html, 
col_buffer, arm__nnexamples__cifar10_8cpp.html#a1f988afc6d7fe29ded1eafbf79a70386, arm_nnexamples_cifar10.cpp
CONV1_BIAS, arm__nnexamples__cifar10_8cpp.html#a2dd28923edd6ae13ec6e61e1d876650c, conv1_bias():&#160;arm_nnexamples_cifar10.cpp
CONV1_BIAS_LSHIFT, arm__nnexamples__cifar10__weights_8h.html#a4150dd1364fd3534561c5c6e530f9bfb, arm_nnexamples_cifar10_weights.h
CONV1_IM_CH, arm__nnexamples__cifar10__parameter_8h.html#aea8b1c41a63cf63eb6e7f049e84f22f7, arm_nnexamples_cifar10_parameter.h
CONV1_IM_DIM, arm__nnexamples__cifar10__parameter_8h.html#a23ded220d27415ee1f6d9ac0bfdf38cb, arm_nnexamples_cifar10_parameter.h
CONV1_KER_DIM, arm__nnexamples__cifar10__parameter_8h.html#ad51c611a952fac7102ca15a06eabb908, arm_nnexamples_cifar10_parameter.h
CONV1_OUT_CH, arm__nnexamples__cifar10__parameter_8h.html#a3c1777ba8f883a5490beb3d79050c8dc, arm_nnexamples_cifar10_parameter.h
CONV1_OUT_DIM, arm__nnexamples__cifar10__parameter_8h.html#a6262e2cd96ec12681024ab4ac73d607b, arm_nnexamples_cifar10_parameter.h
CONV1_OUT_RSHIFT, arm__nnexamples__cifar10__weights_8h.html#aa8f89682da16a15a092d06097a5696d3, arm_nnexamples_cifar10_weights.h
CONV1_PADDING, arm__nnexamples__cifar10__parameter_8h.html#a2bb0fafdfd2c283df4708ec53f3d90f7, arm_nnexamples_cifar10_parameter.h
CONV1_STRIDE, arm__nnexamples__cifar10__parameter_8h.html#a596cdcf742e142edc29a0a0e44496c7c, arm_nnexamples_cifar10_parameter.h
CONV1_WT, arm__nnexamples__cifar10_8cpp.html#a230b7412ffaaa297340ddcb49c828b4b, conv1_wt():&#160;arm_nnexamples_cifar10.cpp
CONV2_BIAS, arm__nnexamples__cifar10_8cpp.html#a686e558e4de77f778c775c9f0c9866d0, conv2_bias():&#160;arm_nnexamples_cifar10.cpp
CONV2_BIAS_LSHIFT, arm__nnexamples__cifar10__weights_8h.html#afa70cc595390d9205c78a58795f070f4, arm_nnexamples_cifar10_weights.h
CONV2_IM_CH, arm__nnexamples__cifar10__parameter_8h.html#a060a8a5766a5eecaff9294f57301c99c, arm_nnexamples_cifar10_parameter.h
CONV2_IM_DIM, arm__nnexamples__cifar10__parameter_8h.html#a832f71006d5c1e2bedbbcf192308d40e, arm_nnexamples_cifar10_parameter.h
CONV2_KER_DIM, arm__nnexamples__cifar10__parameter_8h.html#a95b397cea14323e9037604cfcd245c26, arm_nnexamples_cifar10_parameter.h
CONV2_OUT_CH, arm__nnexamples__cifar10__parameter_8h.html#a3be645ea438c983786878c0198ed9ae8, arm_nnexamples_cifar10_parameter.h
CONV2_OUT_DIM, arm__nnexamples__cifar10__parameter_8h.html#a9953ead804e13dcd90d96dda64a330a4, arm_nnexamples_cifar10_parameter.h
CONV2_OUT_RSHIFT, arm__nnexamples__cifar10__weights_8h.html#ad872d34bfa54d86f9e5177dd2ff40d79, arm_nnexamples_cifar10_weights.h
CONV2_PADDING, arm__nnexamples__cifar10__parameter_8h.html#a39c1c3497169012a512219446613be0c, arm_nnexamples_cifar10_parameter.h
CONV2_STRIDE, arm__nnexamples__cifar10__parameter_8h.html#a04f3292f8c8bac6dab973fb74eab2aa1, arm_nnexamples_cifar10_parameter.h
CONV2_WT, arm__nnexamples__cifar10_8cpp.html#a52875a8218c39da056e6d5bfb2030230, conv2_wt():&#160;arm_nnexamples_cifar10.cpp
conv3_bias, arm__nnexamples__cifar10__weights_8h.html#a8047897a26edb638e4f8c01734eb969b, CONV3_BIAS():&#160;arm_nnexamples_cifar10_weights.h
CONV3_BIAS_LSHIFT, arm__nnexamples__cifar10__weights_8h.html#a5457926e12a9e6b0ae9754d509fb7918, arm_nnexamples_cifar10_weights.h
CONV3_IM_CH, arm__nnexamples__cifar10__parameter_8h.html#a1d0f9b2d219527c5070e20c50c0ced41, arm_nnexamples_cifar10_parameter.h
CONV3_IM_DIM, arm__nnexamples__cifar10__parameter_8h.html#a04ab2b7e8de2668e0087448664814f87, arm_nnexamples_cifar10_parameter.h
CONV3_KER_DIM, arm__nnexamples__cifar10__parameter_8h.html#a045174d68a25bfd7691303f1a063ac72, arm_nnexamples_cifar10_parameter.h
CONV3_OUT_CH, arm__nnexamples__cifar10__parameter_8h.html#a2ab3ad342128296bb1102c3632131fd7, arm_nnexamples_cifar10_parameter.h
CONV3_OUT_DIM, arm__nnexamples__cifar10__parameter_8h.html#acf75167523a29737f045cc2280ce0914, arm_nnexamples_cifar10_parameter.h
CONV3_OUT_RSHIFT, arm__nnexamples__cifar10__weights_8h.html#ae38425db927f582d7b5edfcfaa03c676, arm_nnexamples_cifar10_weights.h
CONV3_PADDING, arm__nnexamples__cifar10__parameter_8h.html#af7824a30efdeefbf468c24a70678131a, arm_nnexamples_cifar10_parameter.h
CONV3_STRIDE, arm__nnexamples__cifar10__parameter_8h.html#af6ff8c82aa2d1f58a125fe71169b7cc1, arm_nnexamples_cifar10_parameter.h
conv3_wt, arm__nnexamples__cifar10__weights_8h.html#aa3605f1b1fafb1612311727d9b97b0f2, CONV3_WT():&#160;arm_nnexamples_cifar10_weights.h
convert_q7_q15_weights, namespacepara__gen.html#a75db0b43a1b942aa87ff10fd3b73dc8d, para_gen
convert_to_x4_weights, namespacepara__gen.html#ab7f5de20ae32542da9f83a8e99850722, para_gen
CMSIS NN Software Library, index.html, 
readme.txt, cifar10_2readme_8txt.html, 
DILATION_X, arm__depthwise__conv__u8__basic__ver1_8c.html#aeb98996ffa34fb40d8e91919d2ebdc56, arm_depthwise_conv_u8_basic_ver1.c
DILATION_Y, arm__depthwise__conv__u8__basic__ver1_8c.html#a9371ac7b5689f9e74a18a2d548c32033, arm_depthwise_conv_u8_basic_ver1.c
DIM_HISTORY, arm__nnexamples__gru_8cpp.html#ad9fde6ff501c9cd8a6cfc45949464c49, arm_nnexamples_gru.cpp
DIM_INPUT, arm__nnexamples__gru_8cpp.html#ac8ab7c242bba66633b8c06966da6c9bc, arm_nnexamples_gru.cpp
DIM_VEC, arm__nnexamples__gru_8cpp.html#a9b4b56c701e4258f8f6c87f225fbcebc, arm_nnexamples_gru.cpp
Fully-connected Layer Functions, group__FC.html, 
gru_example, arm__nnexamples__gru_8cpp.html#ac71a806472c7c0c284a2253e71a6a27b, arm_nnexamples_gru.cpp
Gated Recurrent Unit Example, group__GRUExample.html, 
readme.txt, gru_2readme_8txt.html, 
half_words, unionarm__nnword.html#a9b5e49e4e2c4b7203e07b305386bb2ba, arm_nnword
hidden_bias, namespacepara__gen.html#a0f6c4400e131b103d2fd89e420d6c308, para_gen
HIDDEN_STATE_BIAS, arm__nnexamples__gru_8cpp.html#a40dda695923891899cb86b2f01bfd98a, hidden_state_bias():&#160;arm_nnexamples_gru.cpp
HIDDEN_STATE_WEIGHT_X2, arm__nnexamples__gru__test__data_8h.html#a9ab9fa603208647d992b3367a757979b, arm_nnexamples_gru_test_data.h
HIDDEN_STATE_WEIGHT_X4, arm__nnexamples__gru__test__data_8h.html#a619947523492a72ab306da514e843ae3, arm_nnexamples_gru_test_data.h
hidden_state_weights, arm__nnexamples__gru_8cpp.html#ab18783e8d8449d7222ec4a64dfcc92e6, arm_nnexamples_gru.cpp
hidden_weight, namespacepara__gen.html#a1a6edb73b72a6bbf443e6e450186660c, para_gen
history.txt, history_8txt.html, 
HISTORY_DATA, namespacepara__gen.html#acdb294668ecca9a6f849afa4156883cd, para_gen.history_data()
image_data, arm__nnexamples__cifar10_8cpp.html#aafa3e1726dde028f2dcce4febc1e9197, arm_nnexamples_cifar10.cpp
IMG_DATA, arm__nnexamples__cifar10__inputs_8h.html#a82161fe5498521048731fc21a04577c3, arm_nnexamples_cifar10_inputs.h
INPUT_DATA1, namespacepara__gen.html#a845220c0c6574ced6cdaf7b1d2983d6d, para_gen.input_data1()
input_data2, arm__nnexamples__gru__test__data_8h.html#ae0d8a5f051f29980e62884ec34668026, INPUT_DATA2():&#160;arm_nnexamples_gru_test_data.h
INPUT_MEAN_SHIFT, arm__nnexamples__cifar10__weights_8h.html#a476266acb4adb419f566006dce8829c3, arm_nnexamples_cifar10_weights.h
INPUT_RIGHT_SHIFT, arm__nnexamples__cifar10__weights_8h.html#a4205de60010d416664775e3aa0f9ec62, arm_nnexamples_cifar10_weights.h
ip1_bias, arm__nnexamples__cifar10__weights_8h.html#ac88810411c45272e8f9144682b9d85bc, IP1_BIAS():&#160;arm_nnexamples_cifar10_weights.h
IP1_BIAS_LSHIFT, arm__nnexamples__cifar10__weights_8h.html#a3a98024d4e4c7fa2fbbc216812fb9b35, arm_nnexamples_cifar10_weights.h
IP1_DIM, arm__nnexamples__cifar10__parameter_8h.html#a5777b4b3cc406dc06397ba2d5bed9fda, arm_nnexamples_cifar10_parameter.h
IP1_IM_CH, arm__nnexamples__cifar10__parameter_8h.html#a3e4df285b7ca272ee897be69575ab6c5, arm_nnexamples_cifar10_parameter.h
IP1_IM_DIM, arm__nnexamples__cifar10__parameter_8h.html#a4c4ae51cf7195762dd43ea13825277be, arm_nnexamples_cifar10_parameter.h
IP1_OUT, arm__nnexamples__cifar10__parameter_8h.html#aa7cda996b7185414b1af9762e37ac66f, arm_nnexamples_cifar10_parameter.h
IP1_OUT_RSHIFT, arm__nnexamples__cifar10__weights_8h.html#a67fad411ab3695e450e62ad0509a7eec, arm_nnexamples_cifar10_weights.h
IP1_WT, arm__nnexamples__cifar10_8cpp.html#a244dc5b6679b33a0a85b55adbe969208, ip1_wt():&#160;arm_nnexamples_cifar10.cpp
LEFT_SHIFT, arm__nnsupportfunctions_8h.html#a2953f124ae444ebdd2b2a0873ac36b7e, arm_nnsupportfunctions.h
main, arm__nnexamples__gru_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4, main():&#160;arm_nnexamples_gru.cpp
Neural Network Activation Functions, group__Acti.html, 
Neural Network Functions, group__groupNN.html, 
new_weight, namespacepara__gen.html#aead9af07b473ce5bbd93619e3319355c, para_gen
NN_ROUND, arm__nnsupportfunctions_8h.html#a4cbd428a2b4a4f6b2a6e4219520c7ce0, arm_nnsupportfunctions.h
Neural Network Convolution Functions, group__NNConv.html, 
Neural Network Data Conversion Functions, group__nndata__convert.html, 
Neural Network Pooling Functions, group__Pooling.html, 
outfile, namespacepara__gen.html#a2e1a6685422a591fcb7801e9fd8ad574, para_gen
output_data, arm__nnexamples__cifar10_8cpp.html#a75c8e3727f7d3637f03ffb1d9f727313, arm_nnexamples_cifar10.cpp
para_gen, namespacepara__gen.html, 
para_gen.py, para__gen_8py.html, 
POOL1_KER_DIM, arm__nnexamples__cifar10__parameter_8h.html#a5324f2e7e894dd4c9eb2f3b92dd5516c, arm_nnexamples_cifar10_parameter.h
POOL1_OUT_DIM, arm__nnexamples__cifar10__parameter_8h.html#a13553cac577d5430e3e43508c5ab6b7b, arm_nnexamples_cifar10_parameter.h
POOL1_PADDING, arm__nnexamples__cifar10__parameter_8h.html#a537abddfc374d05a2513d1cc74b5721b, arm_nnexamples_cifar10_parameter.h
POOL1_STRIDE, arm__nnexamples__cifar10__parameter_8h.html#acad52b60f0a0457ffb643cef69df0c0c, arm_nnexamples_cifar10_parameter.h
POOL2_KER_DIM, arm__nnexamples__cifar10__parameter_8h.html#a1b0c6e280d189658130b8b81c6991425, arm_nnexamples_cifar10_parameter.h
POOL2_OUT_DIM, arm__nnexamples__cifar10__parameter_8h.html#ada358cd9b0a9b48a2666e9bfcee90aef, arm_nnexamples_cifar10_parameter.h
POOL2_PADDING, arm__nnexamples__cifar10__parameter_8h.html#a9508f70a2798099db07a6d9b8f892126, arm_nnexamples_cifar10_parameter.h
POOL2_STRIDE, arm__nnexamples__cifar10__parameter_8h.html#a158e111c343e144ec2461ea94ab11ab2, arm_nnexamples_cifar10_parameter.h
POOL3_KER_DIM, arm__nnexamples__cifar10__parameter_8h.html#a32a30cfd6d89ab4fdbfad9732d71297d, arm_nnexamples_cifar10_parameter.h
POOL3_OUT_DIM, arm__nnexamples__cifar10__parameter_8h.html#ae4a4616060ad43b06d5c1aea834a25e5, arm_nnexamples_cifar10_parameter.h
POOL3_PADDING, arm__nnexamples__cifar10__parameter_8h.html#aac063e83339cc89308fb23a6922a5d98, arm_nnexamples_cifar10_parameter.h
POOL3_STRIDE, arm__nnexamples__cifar10__parameter_8h.html#a74efaa8ffffc0437b54143878ac8cde7, arm_nnexamples_cifar10_parameter.h
Q31_MAX, arm__nnsupportfunctions_8h.html#a468734b237f1c95a31715aa2b60a576e, arm_nnsupportfunctions.h
Q31_MIN, arm__nnsupportfunctions_8h.html#a1eb725c94dbb052aa24b62321be0445b, arm_nnsupportfunctions.h
Revision History of CMSIS-NN, ChangeLog_pg.html, 
reset_bias, namespacepara__gen.html#a3da798c88974b5d760f3e97288a0c490, para_gen
reset_gate_bias, arm__nnexamples__gru__test__data_8h.html#a8b4b6522d1ab0d6c51a1fe3c51d0020d, RESET_GATE_BIAS():&#160;arm_nnexamples_gru_test_data.h
RESET_GATE_WEIGHT_X2, arm__nnexamples__gru__test__data_8h.html#a52f158cb32bf2b46e3d2c4b94876db75, arm_nnexamples_gru_test_data.h
RESET_GATE_WEIGHT_X4, arm__nnexamples__gru__test__data_8h.html#a177dc986b0c728df8628a205719be0ee, arm_nnexamples_gru_test_data.h
reset_gate_weights, arm__nnexamples__gru_8cpp.html#ac2ae1ff19167c2bb359db2b319ca1060, arm_nnexamples_gru.cpp
reset_weight, namespacepara__gen.html#a4ebba057829420c878a0a29ee9c71582, para_gen
RIGHT_SHIFT, arm__nnsupportfunctions_8h.html#a26af54489c1401b91595bf0c92ef87c4, arm_nnsupportfunctions.h
row_dim, namespacepara__gen.html#a26cc0a96186b2e6b238d783d9364f14d, para_gen
scratch_buffer, arm__nnexamples__gru_8cpp.html#a935afa741bcc39e4c4c48b019d415d97, scratch_buffer():&#160;arm_nnexamples_gru.cpp
sigmoidHTable_q15, arm__nntables_8c.html#a107a16eaa36f4392fa3ed3792ad6c2cb, sigmoidHTable_q15():&#160;arm_nntables.c
sigmoidLTable_q15, arm__nntables_8c.html#a69dc528cb377690d5b37accfdfd226b1, sigmoidLTable_q15():&#160;arm_nntables.c
sigmoidTable_q15, arm__nntables_8c.html#ab4d7b07c387a3537d4efe21da86115b0, sigmoidTable_q15():&#160;arm_nntables.c
sigmoidTable_q7, arm__nntables_8c.html#ae2ff3f4e7014f535358167150bdd544f, sigmoidTable_q7():&#160;arm_nntables.c
Softmax Functions, group__Softmax.html, 
tanhHTable_q15, arm__nntables_8c.html#a4d093f7b0dc798d4898ff4fd125b21a6, arm_nntables.c
tanhLTable_q15, arm__nntables_8c.html#a7cb5ad2fff7e241d09024332488a706e, arm_nntables.c
tanhTable_q15, arm__nntables_8c.html#a6faad2fec173b2702fd0f219a83ca320, tanhTable_q15():&#160;arm_nntables.c
tanhTable_q7, arm__nntables_8c.html#a4f854bdf13f630ec21b3ad074491e32f, tanhTable_q7():&#160;arm_nntables.c
test_history, arm__nnexamples__gru_8cpp.html#ac327d41d23812b53d83c2da91971cbfe, arm_nnexamples_gru.cpp
test_input1, arm__nnexamples__gru_8cpp.html#a8b0acc149c9bd4aadfb9c1fa8345f57a, arm_nnexamples_gru.cpp
test_input2, arm__nnexamples__gru_8cpp.html#aad5944359ea4a426550a87efd0d90b02, arm_nnexamples_gru.cpp
update_bias, namespacepara__gen.html#a3b9bab83acf3b4296f46165da08ddbc9, para_gen
update_gate_bias, arm__nnexamples__gru__test__data_8h.html#a89f5a888f55a353a914ccf6542c41f0b, UPDATE_GATE_BIAS():&#160;arm_nnexamples_gru_test_data.h
UPDATE_GATE_WEIGHT_X2, arm__nnexamples__gru__test__data_8h.html#ab753489637dfba855233303733416a73, arm_nnexamples_gru_test_data.h
UPDATE_GATE_WEIGHT_X4, arm__nnexamples__gru__test__data_8h.html#abb89228c76ad50a997938f676153b77f, arm_nnexamples_gru_test_data.h
update_gate_weights, arm__nnexamples__gru_8cpp.html#aa2fc9b2b0449790ed7c37bab7fd3093e, arm_nnexamples_gru.cpp
update_weight, namespacepara__gen.html#ab8ce9efdee9cd118a25831839f9c5943, para_gen
USE_INTRINSIC, arm__nnfunctions_8h.html#a710b6e009261290c6151f329cf409530, arm_nnfunctions.h
USE_X4, arm__nnexamples__gru_8cpp.html#a206812c9f4afd792e23a8d842ffa2984, arm_nnexamples_gru.cpp
vec_dim, namespacepara__gen.html#ad97bcbf0472c82d537ee41c0196e3b2a, para_gen
weight, namespacepara__gen.html#af3dbe004474bc66ad55591f470ff008c, para_gen
word, unionarm__nnword.html#a35c7b2ae25e35e0ddcd9ec0a1a6f8d18, arm_nnword

