• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* ----------------------------------------------------------------------
2  * Project:      CMSIS DSP Library
3  * Title:        arm_mve_tables_f16.h
4  * Description:  common tables like fft twiddle factors, Bitreverse, reciprocal etc
5  *               used for MVE implementation only
6  *
7  * @version  V1.10.0
8  * @date     04 October 2021
9  *
10  * Target Processor: Cortex-M and Cortex-A cores
11  * -------------------------------------------------------------------- */
12 /*
13  * Copyright (C) 2010-2021 ARM Limited or its affiliates. All rights reserved.
14  *
15  * SPDX-License-Identifier: Apache-2.0
16  *
17  * Licensed under the Apache License, Version 2.0 (the License); you may
18  * not use this file except in compliance with the License.
19  * You may obtain a copy of the License at
20  *
21  * www.apache.org/licenses/LICENSE-2.0
22  *
23  * Unless required by applicable law or agreed to in writing, software
24  * distributed under the License is distributed on an AS IS BASIS, WITHOUT
25  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
26  * See the License for the specific language governing permissions and
27  * limitations under the License.
28  */
29 
30  #ifndef _ARM_MVE_TABLES_F16_H
31  #define _ARM_MVE_TABLES_F16_H
32 
33 #include "arm_math_types_f16.h"
34 
35 #ifdef   __cplusplus
36 extern "C"
37 {
38 #endif
39 
40 
41 
42 
43 #if defined(ARM_MATH_MVE_FLOAT16) && !defined(ARM_MATH_AUTOVECTORIZE)
44 
45 
46 
47 extern const uint32_t rearranged_twiddle_tab_stride1_arr_16_f16[2];
48 extern const uint32_t rearranged_twiddle_tab_stride2_arr_16_f16[2];
49 extern const uint32_t rearranged_twiddle_tab_stride3_arr_16_f16[2];
50 extern const float16_t rearranged_twiddle_stride1_16_f16[8];
51 extern const float16_t rearranged_twiddle_stride2_16_f16[8];
52 extern const float16_t rearranged_twiddle_stride3_16_f16[8];
53 
54 
55 extern const uint32_t rearranged_twiddle_tab_stride1_arr_64_f16[3];
56 extern const uint32_t rearranged_twiddle_tab_stride2_arr_64_f16[3];
57 extern const uint32_t rearranged_twiddle_tab_stride3_arr_64_f16[3];
58 extern const float16_t rearranged_twiddle_stride1_64_f16[40];
59 extern const float16_t rearranged_twiddle_stride2_64_f16[40];
60 extern const float16_t rearranged_twiddle_stride3_64_f16[40];
61 
62 
63 extern const uint32_t rearranged_twiddle_tab_stride1_arr_256_f16[4];
64 extern const uint32_t rearranged_twiddle_tab_stride2_arr_256_f16[4];
65 extern const uint32_t rearranged_twiddle_tab_stride3_arr_256_f16[4];
66 extern const float16_t rearranged_twiddle_stride1_256_f16[168];
67 extern const float16_t rearranged_twiddle_stride2_256_f16[168];
68 extern const float16_t rearranged_twiddle_stride3_256_f16[168];
69 
70 
71 extern const uint32_t rearranged_twiddle_tab_stride1_arr_1024_f16[5];
72 extern const uint32_t rearranged_twiddle_tab_stride2_arr_1024_f16[5];
73 extern const uint32_t rearranged_twiddle_tab_stride3_arr_1024_f16[5];
74 extern const float16_t rearranged_twiddle_stride1_1024_f16[680];
75 extern const float16_t rearranged_twiddle_stride2_1024_f16[680];
76 extern const float16_t rearranged_twiddle_stride3_1024_f16[680];
77 
78 
79 extern const uint32_t rearranged_twiddle_tab_stride1_arr_4096_f16[6];
80 extern const uint32_t rearranged_twiddle_tab_stride2_arr_4096_f16[6];
81 extern const uint32_t rearranged_twiddle_tab_stride3_arr_4096_f16[6];
82 extern const float16_t rearranged_twiddle_stride1_4096_f16[2728];
83 extern const float16_t rearranged_twiddle_stride2_4096_f16[2728];
84 extern const float16_t rearranged_twiddle_stride3_4096_f16[2728];
85 
86 
87 
88 #endif /* defined(ARM_MATH_MVE_FLOAT16) && !defined(ARM_MATH_AUTOVECTORIZE) */
89 
90 
91 
92 #ifdef   __cplusplus
93 }
94 #endif
95 
96 #endif /*_ARM_MVE_TABLES_F16_H*/
97 
98