3dc2d8858b50e4aba0489db2dcefd1bf3b5b384f
[o-du/phy.git] / 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 #MEC
20 #28%
21 #TDD DDDFU 1 64T64R 100 4 2 65% 178 65% 178     
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=4 # Number of Antennas per CC (default: 4) or number of Digital streams for Category B 
29 antNumUL=2 # 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=5 #[0-9] DDDFU, 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
58 MTUSize=9600 #maximum transmission unit (MTU) is the size of the largest protocol data unit (PDU) that can be communicated in a single 
59  #xRAN network layer transaction. supported 1500 bytes and 9600 bytes (Jumbo Frame)
60 Gps_Alpha=0     #alpha and beta value as in section 9.7.2 of ORAN spec
61 Gps_Beta=0
62
63 ioCore=5           # core id 
64 ioWorker=0x2000000 # mask [0- no workers]
65
66 # Eth 0
67 duMac0=00:11:22:33:44:66 # asigned MAC of O-DU VF
68 ruMac0=00:11:22:33:44:55 # O-RU VF for O-RU app
69 duMac1=00:11:22:33:44:66 # asigned MAC of O-DU VF
70 ruMac1=00:11:22:33:44:55 # O-RU VF for O-RU app
71
72 # Eth 1
73 duMac2=00:11:22:33:44:77 # asigned MAC of O-DU VF
74 ruMac2=00:11:22:33:44:44 # O-RU VF for O-RU app
75 duMac3=00:11:22:33:44:77 # asigned MAC of O-DU VF
76 ruMac3=00:11:22:33:44:44 # O-RU VF for O-RU app
77
78 numSlots=10 #number of slots per IQ files
79 antC0=./usecase/cat_b/mu1_100mhz/ant_0.bin   #CC0
80 antC1=./usecase/cat_b/mu1_100mhz/ant_1.bin   #CC0
81 antC2=./usecase/cat_b/mu1_100mhz/ant_2.bin   #CC0
82 antC3=./usecase/cat_b/mu1_100mhz/ant_3.bin   #CC0
83 antC4=./usecase/cat_b/mu1_100mhz/ant_4.bin   #CC1
84 antC5=./usecase/cat_b/mu1_100mhz/ant_5.bin   #CC1
85 antC6=./usecase/cat_b/mu1_100mhz/ant_6.bin   #CC1
86 antC7=./usecase/cat_b/mu1_100mhz/ant_7.bin   #CC1
87 antC8=./usecase/cat_b/mu1_100mhz/ant_0.bin   #CC2
88 antC9=./usecase/cat_b/mu1_100mhz/ant_1.bin   #CC2
89 antC10=./usecase/cat_b/mu1_100mhz/ant_2.bin #CC2
90 antC11=./usecase/cat_b/mu1_100mhz/ant_3.bin #CC2
91 antC12=./usecase/cat_b/mu1_100mhz/ant_4.bin #CC3
92 antC13=./usecase/cat_b/mu1_100mhz/ant_5.bin #CC3
93 antC14=./usecase/cat_b/mu1_100mhz/ant_6.bin #CC3
94 antC15=./usecase/cat_b/mu1_100mhz/ant_7.bin #CC3
95
96 #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)]
97 DlBfwUe0=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_0.bin   #UE0 weights for TRX antennas [antElmTRx x numRBs x slot points]
98 DlBfwUe1=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_1.bin   #UE1 weights for TRX antennas [antElmTRx x numRBs x slot points]
99 DlBfwUe2=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_2.bin   #UE2 weights for TRX antennas [antElmTRx x numRBs x slot points]
100 DlBfwUe3=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_3.bin   #UE3 weights for TRX antennas [antElmTRx x numRBs x slot points]
101 DlBfwUe4=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_4.bin   #UE4 weights for TRX antennas [antElmTRx x numRBs x slot points]
102 DlBfwUe5=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_5.bin   #UE5 weights for TRX antennas [antElmTRx x numRBs x slot points]
103 DlBfwUe6=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_6.bin   #UE6 weights for TRX antennas [antElmTRx x numRBs x slot points]
104 DlBfwUe7=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_7.bin   #UE7 weights for TRX antennas [antElmTRx x numRBs x slot points]
105 DlBfwUe8=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_0.bin   #UE0 weights for TRX antennas [antElmTRx x numRBs x slot points]
106 DlBfwUe9=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_1.bin   #UE1 weights for TRX antennas [antElmTRx x numRBs x slot points]
107 DlBfwUe10=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_2.bin   #UE2 weights for TRX antennas [antElmTRx x numRBs x slot points]
108 DlBfwUe11=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_3.bin   #UE3 weights for TRX antennas [antElmTRx x numRBs x slot points]
109 DlBfwUe12=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_4.bin   #UE4 weights for TRX antennas [antElmTRx x numRBs x slot points]
110 DlBfwUe13=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_5.bin   #UE5 weights for TRX antennas [antElmTRx x numRBs x slot points]
111 DlBfwUe14=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_6.bin   #UE6 weights for TRX antennas [antElmTRx x numRBs x slot points]
112 DlBfwUe15=./usecase/cat_b/mu1_100mhz/dl_bfw_ue_7.bin   #UE7 weights for TRX antennas [antElmTRx x numRBs x slot points]
113
114 #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)]
115 UlBfwUe0=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_0.bin   #UE0 weights for TRX antennas [antElmTRx x numRBs x slot points]
116 UlBfwUe1=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_1.bin   #UE1 weights for TRX antennas [antElmTRx x numRBs x slot points]
117 UlBfwUe2=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_2.bin   #UE2 weights for TRX antennas [antElmTRx x numRBs x slot points]
118 UlBfwUe3=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_3.bin   #UE3 weights for TRX antennas [antElmTRx x numRBs x slot points]
119 UlBfwUe4=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_4.bin   #UE4 weights for TRX antennas [antElmTRx x numRBs x slot points]
120 UlBfwUe5=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_5.bin   #UE5 weights for TRX antennas [antElmTRx x numRBs x slot points]
121 UlBfwUe6=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_6.bin   #UE6 weights for TRX antennas [antElmTRx x numRBs x slot points]
122 UlBfwUe7=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_7.bin   #UE7 weights for TRX antennas [antElmTRx x numRBs x slot points]
123 UlBfwUe8=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_0.bin   #UE0 weights for TRX antennas [antElmTRx x numRBs x slot points]
124 UlBfwUe9=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_1.bin   #UE1 weights for TRX antennas [antElmTRx x numRBs x slot points]
125 UlBfwUe10=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_2.bin   #UE2 weights for TRX antennas [antElmTRx x numRBs x slot points]
126 UlBfwUe11=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_3.bin   #UE3 weights for TRX antennas [antElmTRx x numRBs x slot points]
127 UlBfwUe12=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_4.bin   #UE4 weights for TRX antennas [antElmTRx x numRBs x slot points]
128 UlBfwUe13=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_5.bin   #UE5 weights for TRX antennas [antElmTRx x numRBs x slot points]
129 UlBfwUe14=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_6.bin   #UE6 weights for TRX antennas [antElmTRx x numRBs x slot points]
130 UlBfwUe15=./usecase/cat_b/mu1_100mhz/ul_bfw_ue_7.bin   #UE7 weights for TRX antennas [antElmTRx x numRBs x slot points]
131
132
133 rachEanble=0 # Enable (1)| disable (0) PRACH configuration
134 prachConfigIndex=189
135
136 srsEanble=1 # Enable (1)| disable (0) SRS 
137 srsSym=8192 # (1<<13) symbol used for SRS (def: sym 13)
138
139 ###########################################################
140 ##Section Settings
141 DynamicSectionEna=1 # 1 - enable dynamic section allocation 0 - static sections all RBs are used 
142
143 nPrbElemDl=4
144 #nRBStart, nRBSize, nStartSymb, numSymb, nBeamIndex, bf_weight_update, compMethod, iqWidth, BeamFormingType
145 # weight base beams 
146 PrbElemDl0=0,48,0,14,0,1,1,9,1
147 PrbElemDl1=48,48,0,14,1,1,1,9,1
148 PrbElemDl2=96,48,0,14,2,1,1,9,1
149 PrbElemDl3=144,34,0,14,3,1,1,9,1
150
151 nPrbElemUl=6
152 #nRBStart, nRBSize, nStartSymb, numSymb, nBeamIndex, bf_weight_update, compMethod, iqWidth, BeamFormingType
153 # weight base beams 
154 PrbElemUl0=0,48,0,14,0,1,1,9,1
155 PrbElemUl1=48,48,0,14,1,1,1,9,1
156 PrbElemUl2=96,48,0,14,2,1,1,9,1
157 PrbElemUl3=144,34,0,14,3,1,1,9,1
158
159 ###########################################################
160
161 ## control of IQ byte order
162 iqswap=0 #do swap of IQ before send buffer to eth
163 nebyteorderswap=1 #do swap of byte order for each I and Q from CPU byte order to network byte order
164 compression=1 # (1) compression enabled (0) compression disabled
165
166 ##Debug
167 debugStop=1 #stop app on 1pps boundary (gps_second % 30)
168 debugStopCount=0 #if this value is >0 then stop app after x transmission packets, otherwise app will stop at 1pps boundary
169 bbdevMode=-1 #bbdev mode, -1 = not use bbdev, 0: use software mode, 1: use hardware mode
170
171 CPenable=1 #(1) C-Plane is enabled| (0) C-Plane is disabled
172
173 ##O-RU Settings
174 totalBFWeights=64 # Total number of Beamforming Weights on RU
175
176 Tadv_cp_dl=25 # in us
177               # C-Plane messages must arrive at the RU some amount of time in advance (Tcp_adv_dl) of the corresponding U-Plane messages
178 #Reception Window C-plane DL
179 T2a_min_cp_dl=285 # 285.42us
180 T2a_max_cp_dl=429 # 428.12us
181
182 #Reception Window C-plane UL
183 T2a_min_cp_ul=285 # 285.42us
184 T2a_max_cp_ul=429 # 428.12us
185
186 #Reception Window U-plane
187 T2a_min_up=71  # 71.35in us
188 T2a_max_up=428 # 428.12us
189
190 #Transmission Window
191 Ta3_min=20 # in us 
192 Ta3_max=32 # in us 
193
194 ###########################################################
195 ##O-DU Settings
196 #C-plane
197 #Transmission Window Fast C-plane DL
198 T1a_min_cp_dl=285
199 T1a_max_cp_dl=429
200
201 ##Transmission Window Fast C-plane UL
202 T1a_min_cp_ul=285
203 T1a_max_cp_ul=300
204
205 #U-plane
206 ##Transmission Window
207 T1a_min_up=96  #71 + 25 us
208 T1a_max_up=196 #71 + 25 us
209
210 #Reception Window
211 Ta4_min=0  # in us 
212 Ta4_max=75 # in us 
213 ###########################################################
214