free5GRAN  V1.0
common_variables.h
Go to the documentation of this file.
1 /*
2  * Copyright 2020 Telecom Paris
3 
4  Licensed under the Apache License, Version 2.0 (the "License");
5  you may not use this file except in compliance with the License.
6  You may obtain a copy of the License at
7 
8  http://www.apache.org/licenses/LICENSE-2.0
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15  */
16 
17 #include "../common_structures/common_structures.h"
18 
19 #ifndef FREE5GRAN_COMMON_VARIABLES_H
20 #define FREE5GRAN_COMMON_VARIABLES_H
21 
22 
23 namespace free5GRAN{
24 
25  /*
26  * CRC generated with gcrc24c method.
27  * TS38.212 5.1
28  */
29  extern int G_CRC_24_C[25];
30 
31  extern int G_CRC_24_A[25];
32 
33  extern int G_CRC_16[27];
34 
35  /*
36  * TS 38.212 Table 7.1.1-1
37  */
38  extern int PBCH_PAYLOAD_INTERLEAVER[32];
39 
40  /*
41  * TS38.212 Table 5.4.1.1-1
42  */
43  extern int SUB_BLOCK_INTERLEAVER_PATTERN[32];
44  /*
45  * TS38.212 Table 5.3.1.1-1
46  */
47  extern int INTERLEAVING_PATTERN[164];
48 
49  /*
50  * TS38.212 Table 5.3.1.2-1
51  */
52  extern int POLAR_SEQUENCE_QNMAX_AND_RELIABILITY[1024];
53 
54  /*
55  * Number of PBCH symbols in SSB
56  */
57  extern int SIZE_SSB_PBCH_SYMBOLS;
58 
59  /*
60  * Number of DMRS symbols in SSB
61  */
62  extern int SIZE_SSB_DMRS_SYMBOLS;
63 
64  /*
65  * Number of subcarriers in SSB
66  */
67  extern int NUM_SC_SSB;
68 
69  /*
70  * Interval in 2nd SSB symbol with no PBCH & DMRS
71  */
72  extern int INTERVAL_SSB_NO_PBCH_DMRS[2];
73 
74  /*
75  * Maximum value for I_BAR_SSB
76  */
77  extern int MAX_I_BAR_SSB;
78 
79  /*
80  * Number of symbols with PBCH & DMRS in SSB
81  */
82  extern int NUM_SYMBOL_PBCH_SSB;
83 
84  /*
85  * Size of PSS & SSS sequences
86  */
87  extern int SIZE_PSS_SSS_SIGNAL;
88 
89  /*
90  * Maximum value for variable N_ID_1
91  */
92  extern int MAX_N_ID_1;
93 
94  /*
95  * PBCH payload size after polar decoding (or before polar coding :-) )
96  */
97  extern int SIZE_PBCH_POLAR_DECODED;
98 
99  /*
100  * BCH payload CRC size
101  */
102  extern int BCH_CRC_LENGTH;
103 
104  /*
105  * BCH payload size
106  */
107  extern int BCH_PAYLOAD_SIZE;
108 
109  /*
110  * Base sequence for generating PSS
111  */
112  extern int PSS_BASE_SEQUENCE[7];
113 
114  /*
115  * X0 base sequence for generating SSS
116  */
117  extern int SSS_BASE_X0_SEQUENCE[7];
118 
119  /*
120  * X1 base sequence for generating SSS
121  */
122  extern int SSS_BASE_X1_SEQUENCE[7];
123 
124  /*
125  * Number of symbols in SSBlock
126  */
127  extern int NUM_SYMBOLS_SSB;
128 
129  /*
130  * X1 base sequence for generating for PBCH DMRS
131  */
132  extern int DMRS_BASE_X1_SEQUENCE[32];
133 
134  /*
135  * Number of supported bands
136  */
137  extern int NUM_SUPPORTED_BANDS;
138  /*
139  * Array to store available bands
140  */
142 
143  /*
144  * TS 38.213 Table 13-1
145  */
146  extern int TS_38_213_TABLE_13_1[16][4];
147 
148  /*
149  * TS 38.213 Table 13-2
150  */
151  extern int TS_38_213_TABLE_13_2[16][4];
152 
153  /*
154  * TS 38.213 Table 13-3
155  */
156  extern int TS_38_213_TABLE_13_3[16][4];
157 
158  /*
159  * TS 38.213 Table 13-4
160  */
161  extern int TS_38_213_TABLE_13_4[16][4];
162 
163  /*
164  * TS 38.213 Table 13-11
165  */
166  extern float TS_38_213_TABLE_13_11[16][4];
167 
168  extern int TS_38_214_TABLE_5_1_2_1_1_2[16][2][4];
169 
170  extern int TS_38_214_TABLE_5_1_3_1_1[29][2];
171 
172  extern int TS_38_211_TABLE_7_4_1_1_2_3[15][4];
173 
174  extern int TS_38_214_TABLE_5_1_3_2_1[93];
175 
176  extern int TS_38_212_TABLE_5_3_2_1[8][8];
177 
179 
180  extern int NUMBER_REG_PER_CCE;
181 
182  extern int SI_RNTI[16];
183 
184  extern int PSS_SSS_FFT_SIZE;
185 
186 }
187 #endif
int TS_38_213_TABLE_13_4[16][4]
int NUMBER_SYMBOLS_PER_SLOT_NORMAL_CP
int G_CRC_24_A[25]
int TS_38_213_TABLE_13_1[16][4]
int TS_38_212_TABLE_5_3_2_1[8][8]
int SSS_BASE_X1_SEQUENCE[7]
int INTERVAL_SSB_NO_PBCH_DMRS[2]
int TS_38_214_TABLE_5_1_2_1_1_2[16][2][4]
int SIZE_SSB_DMRS_SYMBOLS
int SIZE_PBCH_POLAR_DECODED
int DMRS_BASE_X1_SEQUENCE[32]
int PBCH_PAYLOAD_INTERLEAVER[32]
int TS_38_214_TABLE_5_1_3_1_1[29][2]
int POLAR_SEQUENCE_QNMAX_AND_RELIABILITY[1024]
int SUB_BLOCK_INTERLEAVER_PATTERN[32]
int SSS_BASE_X0_SEQUENCE[7]
int SIZE_SSB_PBCH_SYMBOLS
int G_CRC_16[27]
int TS_38_213_TABLE_13_3[16][4]
float TS_38_213_TABLE_13_11[16][4]
int TS_38_213_TABLE_13_2[16][4]
int TS_38_214_TABLE_5_1_3_2_1[93]
int INTERLEAVING_PATTERN[164]
int PSS_BASE_SEQUENCE[7]
free5GRAN::band AVAILABLE_BANDS[7]
int TS_38_211_TABLE_7_4_1_1_2_3[15][4]
int G_CRC_24_C[25]