free5GRAN  V1.0
common_structures.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 <string>
18 
19 #ifndef FREE5GRAN_COMMON_STRUCTURES_H
20 #define FREE5GRAN_COMMON_STRUCTURES_H
21 
22 
23 
24 namespace free5GRAN{
25  /*
26  * Define structure to store NR bands information
27  */
28  typedef struct band_ {
30  } band;
31 
32  /*
33  * From TS38.331 6.2.2
34  * cellBarred: barred means the cell is barred, as defined in TS 38.304 [20].
35  * dmrs-TypeA-Position: Position of (first) DM-RS for downlink (see 38.211, section 7.4.1.1.1) and uplink (see 38.211, section 6.4.1.1.3).
36  * intraFreqReselection: Controls cell selection/reselection to intra-frequency cells when the highest ranked cell is barred, or treated as barred by the UE, as specified in TS 38.304 [20}.
37  * pdcch-ConfigSIB1: See TS 38.213 [13]. Determines a common ControlResourceSet (CORESET) a common search space and necessary PDCCH parameters. If the field ssb-SubcarrierOffset indicates that SIB1 is not present, the field pdcch-ConfigSIB1 indicate the frequency positions where the UE may find SS/PBCH block with SIB1 or the frequency range where the network does not provide SS/PBCH block with SIB1 (see TS 38.213 [13], section 13).
38  * ssb-SubcarrierOffset: Corresponds to kSSB (see TS 38.213 [13]), which is the frequency domain offset between SSB and the overall resource block grid in number of subcarriers. (See 38.211).
39  * The value range of this field may be extended by an additional most significant bit encoded within PBCH as specified in 38.213 [13].
40  * This field may indicate that this beam does not provide SIB1 and that there is hence no common CORESET (see TS 38.213 [13], section 13). In this case, the field pdcch- ConfigSIB1 may indicate the frequency positions where the UE may (not) find a SS/PBCH with a control resource set and search space for SIB1 (see 38.213 [13], section 13).
41  * subCarrierSpacingCommon: Subcarrier spacing for SIB1, Msg.2/4 for initial access and broadcast SI-messages. If the UE acquires this MIB on a carrier frequency <6GHz, the value scs15or60 corresponds to 15 Khz and the value scs30or120 corresponds to 30 kHz. If the UE acquires this MIB on a carrier frequency >6GHz, the value scs15or60 corresponds to 60 Khz and the value scs30or120 corresponds to 120 kHz.
42  * systemFrameNumber: The 6 most significant bit (MSB) of the 10-bit System Frame Number. The 4 LSB of the SFN are conveyed in the PBCH transport block as part of transport_channel coding (i.e. outside the MIB encoding).
43  */
44  typedef struct mib_ {
45  int sfn, pdcch_config, scs, cell_barred, dmrs_type_a_position, k_ssb, intra_freq_reselection;
46  } mib;
47 
48  /*
49  * DCI Format 1_0 with SI-RNTI
50  */
51  typedef struct dci_1_0_si_rnti_ {
52  int RIV, TD_ra, vrb_prb_interleaving, mcs, rv, si;
54 
55  typedef struct bandwidth_info_ {
56  int scs;
58 
59  /*
60  * Defining structure for storing Type0-PDCCH search space config & monitoring occasions (TS 38.213 13)
61  */
63  int multiplexing_pattern, n_rb_coreset, n_symb_coreset, offset, O, num_ss_slots, first_symb_index;
64  float M;
65  int n0, sfn_parity, monitoring_slot;
67 
68  typedef struct ss_power_indicator_ {
69  float ss_rsrp, ss_rssi, ss_rsrq, ss_sinr;
71 
72 
73  /*
74  * 5G NR bands
75  */
76  extern band BAND_N_78;
77  extern band BAND_N_7;
78  extern band BAND_N_8;
79  extern band BAND_N_1;
80  extern band BAND_N_2;
81  extern band BAND_N_3;
82  extern band BAND_N_28;
83 
84  /*
85  * Bandwidth parameters for PSS and SSB
86  */
88 
90 
91 }
92 
93 #endif
struct free5GRAN::band_ band
struct free5GRAN::bandwidth_info_ bandwidth_info
bandwidth_info BANDWIDTH_15_KHZ
struct free5GRAN::ss_power_indicator_ ss_power_indicator
bandwidth_info BANDWIDTH_30_KHZ
struct free5GRAN::mib_ mib
struct free5GRAN::dci_1_0_si_rnti_ dci_1_0_si_rnti
struct free5GRAN::pdcch_t0ss_monitoring_occasions_ pdcch_t0ss_monitoring_occasions