dd1798b19b355e5e4afa7289f1f70c386d1e524e
[o-du/phy.git] / fhi_lib / app / usecase / cat_b / mu1_100mhz / 106 / config_file_o_du.dat
1 #******************************************************************************
2 #
3 #   Copyright (c) 2019 Intel.
4 #
5 #   Licensed under the Apache License, Version 2.0 (the "License");
6 #   you may not use this file except in compliance with the License.
7 #   You may obtain a copy of the License at
8 #
9 #       http://www.apache.org/licenses/LICENSE-2.0
10 #
11 #   Unless required by applicable law or agreed to in writing, software
12 #   distributed under the License is distributed on an "AS IS" BASIS,
13 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 #   See the License for the specific language governing permissions and
15 #   limitations under the License.
16 #
17 #******************************************************************************/
18
19 #TDD    1       64T64R  100     16      8       64QAM 0.5       16QAM 0.5       66%     180     33%     90      13.7    4.6     0%
20
21
22
23 # This is simple configuration file. Use '#' sign for comments
24 instanceId=0 # 0,1,2,... in case more than 1 application started on the same system
25 appMode=0 # O-DU(0) | O-RU(1)
26 xranMode=1 # Category A  (0) (precoder in O-DU) | Category B (1) (precoder in O-RU)
27 ccNum=1 # Number of Componnent Carriers (CC) per ETH port with XRAN protocol (default:1 max: 4)
28 antNum=16 # Number of Antennas per CC (default: 4) or number of Digital streams for Category B 
29 antNumUL=8 # Cat B: UL Number of Antennas per CC (default: 8) or number of UL Digital streams for Category B 
30 antElmTRx=64 #number of Antenna Elements for Cat B default 32T32R
31
32 #UEs
33 muMimoUEs=8 #number of UEs serviced by MU-MIMO system. Number of independent beams within the same Freq/Time resources    
34 DlLayersPerUe=1 #number of RX anntennas on DL UE side
35 UlLayersPerUe=1 #number of TX anntennas on UL UE side
36
37
38 ##Numerology
39 mu=1 #30Khz Sub Carrier Spacing
40
41 ttiPeriod=500 # in us TTI period (30Khz default 500us)
42
43 nDLAbsFrePointA=3568160 #nAbsFrePointA - Abs Freq Point A of the Carrier Center Frequency for in KHz Value: 450000->52600000
44 nULAbsFrePointA=3568160 #nAbsFrePointA - Abs Freq Point A of the Carrier Center Frequency for in KHz Value: 450000->52600000
45 nDLBandwidth=100 #Carrier bandwidth for in MHz. Value: 5->400
46 nULBandwidth=100 #Carrier bandwidth for in MHz. Value: 5->400
47 nDLFftSize=4096
48 nULFftSize=4096
49
50 nFrameDuplexType=1 # 0 - FDD 1 - TDD
51 nTddPeriod=10 #[0-9] DDDSUUDDDD, for S it's 6:4:4
52 sSlotConfig0=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
53 sSlotConfig1=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
54 sSlotConfig2=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
55 sSlotConfig3=0,0,0,0,0,0,2,2,2,2,1,1,1,1 # (0) - DL (1) - UL (2) - GUARD
56 sSlotConfig4=1,1,1,1,1,1,1,1,1,1,1,1,1,1 # (0) - DL (1) - UL (2) - GUARD
57 sSlotConfig5=1,1,1,1,1,1,1,1,1,1,1,1,1,1 # (0) - DL (1) - UL (2) - GUARD
58 sSlotConfig6=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
59 sSlotConfig7=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
60 sSlotConfig8=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
61 sSlotConfig9=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
62
63 MTUSize=9600 #maximum transmission unit (MTU) is the size of the largest protocol data unit (PDU) that can be communicated in a single 
64  #xRAN network layer transaction. supported 1500 bytes and 9600 bytes (Jumbo Frame)
65 Gps_Alpha=0     #alpha and beta value as in section 9.7.2 of ORAN spec
66 Gps_Beta=0
67
68 ioCore=5
69 systemCore=5
70 pktProcCore=5
71 pktAuxCore=5
72 timingCore=6
73 llsCUMac=00:11:22:33:44:66 # asigned MAC of O-DU VF
74 ruMac=00:11:22:33:44:55    # O-RU VF for O-RU app
75
76 numSlots=10 #number of slots per IQ files
77 antC0=./usecase/cat_b/mu1_100mhz/ant_0.bin   #CC0
78 antC1=./usecase/cat_b/mu1_100mhz/ant_1.bin   #CC0
79 antC2=./usecase/cat_b/mu1_100mhz/ant_2.bin   #CC0
80 antC3=./usecase/cat_b/mu1_100mhz/ant_3.bin   #CC0
81 antC4=./usecase/cat_b/mu1_100mhz/ant_4.bin   #CC1
82 antC5=./usecase/cat_b/mu1_100mhz/ant_5.bin   #CC1
83 antC6=./usecase/cat_b/mu1_100mhz/ant_6.bin   #CC1
84 antC7=./usecase/cat_b/mu1_100mhz/ant_7.bin   #CC1
85 antC8=./usecase/cat_b/mu1_100mhz/ant_0.bin   #CC2
86 antC9=./usecase/cat_b/mu1_100mhz/ant_1.bin   #CC2
87 antC10=./usecase/cat_b/mu1_100mhz/ant_2.bin #CC2
88 antC11=./usecase/cat_b/mu1_100mhz/ant_3.bin #CC2
89 antC12=./usecase/cat_b/mu1_100mhz/ant_4.bin #CC3
90 antC13=./usecase/cat_b/mu1_100mhz/ant_5.bin #CC3
91 antC14=./usecase/cat_b/mu1_100mhz/ant_6.bin #CC3
92 antC15=./usecase/cat_b/mu1_100mhz/ant_7.bin #CC3
93
94 #DL beamforming weights used based on channel to UE [e.g Wzf = H^H(H*H^H)-1 wher H is MxK matrix, M - number of TX elements and K- number of UEs (the same as Layers)]
95 DlBfwUe0=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_0.bin   #UE0 weights for TRX antennas [antElmTRx x numRBs x slot points]
96 DlBfwUe1=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_1.bin   #UE1 weights for TRX antennas [antElmTRx x numRBs x slot points]
97 DlBfwUe2=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_2.bin   #UE2 weights for TRX antennas [antElmTRx x numRBs x slot points]
98 DlBfwUe3=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_3.bin   #UE3 weights for TRX antennas [antElmTRx x numRBs x slot points]
99 DlBfwUe4=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_4.bin   #UE4 weights for TRX antennas [antElmTRx x numRBs x slot points]
100 DlBfwUe5=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_5.bin   #UE5 weights for TRX antennas [antElmTRx x numRBs x slot points]
101 DlBfwUe6=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_6.bin   #UE6 weights for TRX antennas [antElmTRx x numRBs x slot points]
102 DlBfwUe7=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_7.bin   #UE7 weights for TRX antennas [antElmTRx x numRBs x slot points]
103 DlBfwUe8=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_0.bin   #UE0 weights for TRX antennas [antElmTRx x numRBs x slot points]
104 DlBfwUe9=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_1.bin   #UE1 weights for TRX antennas [antElmTRx x numRBs x slot points]
105 DlBfwUe10=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_2.bin   #UE2 weights for TRX antennas [antElmTRx x numRBs x slot points]
106 DlBfwUe11=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_3.bin   #UE3 weights for TRX antennas [antElmTRx x numRBs x slot points]
107 DlBfwUe12=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_4.bin   #UE4 weights for TRX antennas [antElmTRx x numRBs x slot points]
108 DlBfwUe13=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_5.bin   #UE5 weights for TRX antennas [antElmTRx x numRBs x slot points]
109 DlBfwUe14=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_6.bin   #UE6 weights for TRX antennas [antElmTRx x numRBs x slot points]
110 DlBfwUe15=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_7.bin   #UE7 weights for TRX antennas [antElmTRx x numRBs x slot points]
111
112 #UL beamforming weights used based on channel to UE [e.g Wzf = H^H(H*H^H)-1 wher H is MxK matrix, M - number of RX elements and K- number of UEs (the same as Layers)]
113 UlBfwUe0=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_0.bin   #UE0 weights for TRX antennas [antElmTRx x numRBs x slot points]
114 UlBfwUe1=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_1.bin   #UE1 weights for TRX antennas [antElmTRx x numRBs x slot points]
115 UlBfwUe2=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_2.bin   #UE2 weights for TRX antennas [antElmTRx x numRBs x slot points]
116 UlBfwUe3=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_3.bin   #UE3 weights for TRX antennas [antElmTRx x numRBs x slot points]
117 UlBfwUe4=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_4.bin   #UE4 weights for TRX antennas [antElmTRx x numRBs x slot points]
118 UlBfwUe5=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_5.bin   #UE5 weights for TRX antennas [antElmTRx x numRBs x slot points]
119 UlBfwUe6=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_6.bin   #UE6 weights for TRX antennas [antElmTRx x numRBs x slot points]
120 UlBfwUe7=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_7.bin   #UE7 weights for TRX antennas [antElmTRx x numRBs x slot points]
121 UlBfwUe8=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_0.bin   #UE0 weights for TRX antennas [antElmTRx x numRBs x slot points]
122 UlBfwUe9=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_1.bin   #UE1 weights for TRX antennas [antElmTRx x numRBs x slot points]
123 UlBfwUe10=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_2.bin   #UE2 weights for TRX antennas [antElmTRx x numRBs x slot points]
124 UlBfwUe11=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_3.bin   #UE3 weights for TRX antennas [antElmTRx x numRBs x slot points]
125 UlBfwUe12=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_4.bin   #UE4 weights for TRX antennas [antElmTRx x numRBs x slot points]
126 UlBfwUe13=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_5.bin   #UE5 weights for TRX antennas [antElmTRx x numRBs x slot points]
127 UlBfwUe14=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_6.bin   #UE6 weights for TRX antennas [antElmTRx x numRBs x slot points]
128 UlBfwUe15=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_7.bin   #UE7 weights for TRX antennas [antElmTRx x numRBs x slot points]
129
130
131 rachEanble=0 # Enable (1)| disable (0) PRACH configuration
132 prachConfigIndex=189
133
134 srsEanble=1 # Enable (1)| disable (0) SRS 
135 srsSym=8192 # (1<<13) symbol used for SRS (def: sym 13)
136
137 #DL PRB / %     Used RBs        UL PRB / %      Used RBs
138 #66%    180     33%     90
139
140 ###########################################################
141 ##Section Settings
142 DynamicSectionEna=1 # 1 - enable dynamic section allocation 0 - static sections all RBs are used 
143
144 nPrbElemDl=6
145 #nRBStart, nRBSize, nStartSymb, numSymb, nBeamIndex, bf_weight_update, compMethod, iqWidth, BeamFormingType
146 # weight base beams 
147 PrbElemDl0=0,30,0,14,0,1,1,9,1
148 PrbElemDl1=30,30,0,14,1,1,1,9,1
149 PrbElemDl2=60,30,0,14,2,1,1,9,1
150 PrbElemDl3=90,30,0,14,3,1,1,9,1
151 PrbElemDl4=120,30,0,14,4,1,1,9,1
152 PrbElemDl5=150,30,0,14,5,1,1,9,1
153
154 nPrbElemUl=3
155 #nRBStart, nRBSize, nStartSymb, numSymb, nBeamIndex, bf_weight_update, compMethod, iqWidth, BeamFormingType
156 # weight base beams 
157 PrbElemDl0=0,30,0,14,0,1,1,9,1
158 PrbElemDl1=30,30,0,14,1,1,1,9,1
159 PrbElemDl2=60,30,0,14,2,1,1,9,1
160
161 ###########################################################
162
163 ## control of IQ byte order
164 iqswap=0 #do swap of IQ before send buffer to eth
165 nebyteorderswap=1 #do swap of byte order for each I and Q from CPU byte order to network byte order
166 compression=1 # (1) compression enabled (0) compression disabled
167
168 ##Debug
169 debugStop=0 #stop app on 1pps boundary (gps_second % 30)
170 debugStopCount=0 #if this value is >0 then stop app after x transmission packets, otherwise app will stop at 1pps boundary
171 bbdevMode=-1 #bbdev mode, -1 = not use bbdev, 0: use software mode, 1: use hardware mode
172
173 CPenable=1 #(1) C-Plane is enabled| (0) C-Plane is disabled
174
175 ##O-RU Settings
176 totalBFWeights=64 # Total number of Beamforming Weights on RU
177
178 Tadv_cp_dl=25 # in us
179               # C-Plane messages must arrive at the RU some amount of time in advance (Tcp_adv_dl) of the corresponding U-Plane messages
180 #Reception Window C-plane DL
181 T2a_min_cp_dl=285 # 285.42us
182 T2a_max_cp_dl=429 # 428.12us
183
184 #Reception Window C-plane UL
185 T2a_min_cp_ul=285 # 285.42us
186 T2a_max_cp_ul=429 # 428.12us
187
188 #Reception Window U-plane
189 T2a_min_up=71  # 71.35in us
190 T2a_max_up=428 # 428.12us
191
192 #Transmission Window
193 Ta3_min=20 # in us 
194 Ta3_max=32 # in us 
195
196 ###########################################################
197 ##O-DU Settings
198 #C-plane
199 #Transmission Window Fast C-plane DL
200 T1a_min_cp_dl=285
201 T1a_max_cp_dl=429
202
203 ##Transmission Window Fast C-plane UL
204 T1a_min_cp_ul=285
205 T1a_max_cp_ul=300
206
207 #U-plane
208 ##Transmission Window
209 T1a_min_up=96  #71 + 25 us
210 T1a_max_up=196 #71 + 25 us
211
212 #Reception Window
213 Ta4_min=0  # in us 
214 Ta4_max=75 # in us 
215 ###########################################################
216