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