#
#******************************************************************************/
-#TDD DDDFU 1 64T64R 100 16 8 100% 180 100%
+#Peak: 100 %
+#301 TDD DDDFU: S it's 10:2:2 1 64T64R 100 16 8 100% 273 3276 100% 273 3276 Peak: 100 %
+
# This is simple configuration file. Use '#' sign for comments
instanceId=1 # 0,1,2,... in case more than 1 application started on the same system
appMode=1 # O-DU(0) | O-RU(1)
xranMode=1 # Category A (0) (precoder in O-DU) | Category B (1) (precoder in O-RU)
ccNum=1 # Number of Componnent Carriers (CC) per ETH port with XRAN protocol (default:1 max: 4)
-antNum=16 # Number of Antennas per CC (default: 4) or number of Digital streams for Category B
-antNumUL=8 # Cat B: UL Number of Antennas per CC (default: 8) or number of UL Digital streams for Category B
+antNum=16 # Number of Antennas per CC (default: 4) or number of Digital streams for Category B
+antNumUL=8 # Cat B: UL Number of Antennas per CC (default: 8) or number of UL Digital streams for Category B
antElmTRx=64 #number of Antenna Elements for Cat B default 32T32R
#UEs
-muMimoUEs=8 #number of UEs serviced by MU-MIMO system. Number of independent beams within the same Freq/Time resources
+muMimoUEs=8 #number of UEs serviced by MU-MIMO system. Number of independent beams within the same Freq/Time resources
DlLayersPerUe=1 #number of RX anntennas on DL UE side
UlLayersPerUe=1 #number of TX anntennas on UL UE side
nULFftSize=4096
nFrameDuplexType=1 # 0 - FDD 1 - TDD
-nTddPeriod=5 #[0-9] DDDFU, for S it's 6:4:4
+nTddPeriod=5 #[0-9] DDDFU, for S it's 10:2:2
sSlotConfig0=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
sSlotConfig1=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
sSlotConfig2=0,0,0,0,0,0,0,0,0,0,0,0,0,0 # (0) - DL (1) - UL (2) - GUARD
-sSlotConfig3=0,0,0,0,0,0,2,2,2,2,1,1,1,1 # (0) - DL (1) - UL (2) - GUARD
+sSlotConfig3=0,0,0,0,0,0,0,0,0,0,2,2,1,1 # (0) - DL (1) - UL (2) - GUARD
sSlotConfig4=1,1,1,1,1,1,1,1,1,1,1,1,1,1 # (0) - DL (1) - UL (2) - GUARD
-MTUSize=9600 #maximum transmission unit (MTU) is the size of the largest protocol data unit (PDU) that can be communicated in a single
+MTUSize=9600 #maximum transmission unit (MTU) is the size of the largest protocol data unit (PDU) that can be communicated in a single
#xRAN network layer transaction. supported 1500 bytes and 9600 bytes (Jumbo Frame)
Gps_Alpha=0 #alpha and beta value as in section 9.7.2 of ORAN spec
Gps_Beta=0
-ioCore=15
-# Eth 0
-duMac0=00:11:22:33:44:66 # asigned MAC of O-DU VF
-ruMac0=00:11:22:33:44:55 # O-RU VF for O-RU app
-duMac1=00:11:22:33:44:66 # asigned MAC of O-DU VF
-ruMac1=00:11:22:33:44:55 # O-RU VF for O-RU app
-# Eth 1
-duMac2=00:11:22:33:44:77 # asigned MAC of O-DU VF
-ruMac2=00:11:22:33:44:44 # O-RU VF for O-RU app
-duMac3=00:11:22:33:44:77 # asigned MAC of O-DU VF
-ruMac3=00:11:22:33:44:44 # O-RU VF for O-RU app
-numSlots=10 #number of slots per IQ files
+numSlots=20 #number of slots per IQ files
antC0=./usecase/cat_b/mu1_100mhz/ant_0.bin #CC0
antC1=./usecase/cat_b/mu1_100mhz/ant_1.bin #CC0
antC2=./usecase/cat_b/mu1_100mhz/ant_2.bin #CC0
rachEanble=0 # Enable (1)| disable (0) PRACH configuration
prachConfigIndex=189
-srsEanble=1 # Enable (1)| disable (0) SRS
-srsSym=8192 # (1<<13) symbol used for SRS (def: sym 13)
-
-antSrsC0=./usecase/cat_b/mu1_100mhz/ant_0.bin
-antSrsC1=./usecase/cat_b/mu1_100mhz/ant_1.bin
-antSrsC2=./usecase/cat_b/mu1_100mhz/ant_2.bin
-antSrsC3=./usecase/cat_b/mu1_100mhz/ant_3.bin
-antSrsC4=./usecase/cat_b/mu1_100mhz/ant_4.bin
-antSrsC5=./usecase/cat_b/mu1_100mhz/ant_5.bin
-antSrsC6=./usecase/cat_b/mu1_100mhz/ant_6.bin
-antSrsC7=./usecase/cat_b/mu1_100mhz/ant_7.bin
-antSrsC8=./usecase/cat_b/mu1_100mhz/ant_0.bin
-antSrsC9=./usecase/cat_b/mu1_100mhz/ant_1.bin
-antSrsC10=./usecase/cat_b/mu1_100mhz/ant_2.bin
-antSrsC11=./usecase/cat_b/mu1_100mhz/ant_3.bin
-antSrsC12=./usecase/cat_b/mu1_100mhz/ant_4.bin
-antSrsC13=./usecase/cat_b/mu1_100mhz/ant_5.bin
-antSrsC14=./usecase/cat_b/mu1_100mhz/ant_6.bin
-antSrsC15=./usecase/cat_b/mu1_100mhz/ant_7.bin
-antSrsC16=./usecase/cat_b/mu1_100mhz/ant_0.bin
-antSrsC17=./usecase/cat_b/mu1_100mhz/ant_1.bin
-antSrsC18=./usecase/cat_b/mu1_100mhz/ant_2.bin
-antSrsC19=./usecase/cat_b/mu1_100mhz/ant_3.bin
-antSrsC20=./usecase/cat_b/mu1_100mhz/ant_4.bin
-antSrsC21=./usecase/cat_b/mu1_100mhz/ant_5.bin
-antSrsC22=./usecase/cat_b/mu1_100mhz/ant_6.bin
-antSrsC23=./usecase/cat_b/mu1_100mhz/ant_7.bin
-antSrsC24=./usecase/cat_b/mu1_100mhz/ant_0.bin
-antSrsC25=./usecase/cat_b/mu1_100mhz/ant_1.bin
-antSrsC26=./usecase/cat_b/mu1_100mhz/ant_2.bin
-antSrsC27=./usecase/cat_b/mu1_100mhz/ant_3.bin
-antSrsC28=./usecase/cat_b/mu1_100mhz/ant_4.bin
-antSrsC29=./usecase/cat_b/mu1_100mhz/ant_5.bin
-antSrsC30=./usecase/cat_b/mu1_100mhz/ant_6.bin
-antSrsC31=./usecase/cat_b/mu1_100mhz/ant_7.bin
-antSrsC32=./usecase/cat_b/mu1_100mhz/ant_0.bin
-antSrsC33=./usecase/cat_b/mu1_100mhz/ant_1.bin
-antSrsC34=./usecase/cat_b/mu1_100mhz/ant_2.bin
-antSrsC35=./usecase/cat_b/mu1_100mhz/ant_3.bin
-antSrsC36=./usecase/cat_b/mu1_100mhz/ant_4.bin
-antSrsC37=./usecase/cat_b/mu1_100mhz/ant_5.bin
-antSrsC38=./usecase/cat_b/mu1_100mhz/ant_6.bin
-antSrsC39=./usecase/cat_b/mu1_100mhz/ant_7.bin
-antSrsC40=./usecase/cat_b/mu1_100mhz/ant_0.bin
-antSrsC41=./usecase/cat_b/mu1_100mhz/ant_1.bin
-antSrsC42=./usecase/cat_b/mu1_100mhz/ant_2.bin
-antSrsC43=./usecase/cat_b/mu1_100mhz/ant_3.bin
-antSrsC44=./usecase/cat_b/mu1_100mhz/ant_4.bin
-antSrsC45=./usecase/cat_b/mu1_100mhz/ant_5.bin
-antSrsC46=./usecase/cat_b/mu1_100mhz/ant_6.bin
-antSrsC47=./usecase/cat_b/mu1_100mhz/ant_7.bin
-antSrsC48=./usecase/cat_b/mu1_100mhz/ant_0.bin
-antSrsC49=./usecase/cat_b/mu1_100mhz/ant_1.bin
-antSrsC50=./usecase/cat_b/mu1_100mhz/ant_2.bin
-antSrsC51=./usecase/cat_b/mu1_100mhz/ant_3.bin
-antSrsC52=./usecase/cat_b/mu1_100mhz/ant_4.bin
-antSrsC53=./usecase/cat_b/mu1_100mhz/ant_5.bin
-antSrsC54=./usecase/cat_b/mu1_100mhz/ant_6.bin
-antSrsC55=./usecase/cat_b/mu1_100mhz/ant_7.bin
-antSrsC56=./usecase/cat_b/mu1_100mhz/ant_0.bin
-antSrsC57=./usecase/cat_b/mu1_100mhz/ant_1.bin
-antSrsC58=./usecase/cat_b/mu1_100mhz/ant_2.bin
-antSrsC59=./usecase/cat_b/mu1_100mhz/ant_3.bin
-antSrsC60=./usecase/cat_b/mu1_100mhz/ant_4.bin
-antSrsC61=./usecase/cat_b/mu1_100mhz/ant_5.bin
-antSrsC62=./usecase/cat_b/mu1_100mhz/ant_6.bin
-antSrsC63=./usecase/cat_b/mu1_100mhz/ant_7.bin
+srsEanble=1 # Enable (1)| disable (0) SRS
+srsSym=1 # (1<<13) symbol used for SRS (def: sym 13)
+
+antSrsC0=./usecase/cat_b/mu1_100mhz/ant_0.bin
+antSrsC1=./usecase/cat_b/mu1_100mhz/ant_1.bin
+antSrsC2=./usecase/cat_b/mu1_100mhz/ant_2.bin
+antSrsC3=./usecase/cat_b/mu1_100mhz/ant_3.bin
+antSrsC4=./usecase/cat_b/mu1_100mhz/ant_4.bin
+antSrsC5=./usecase/cat_b/mu1_100mhz/ant_5.bin
+antSrsC6=./usecase/cat_b/mu1_100mhz/ant_6.bin
+antSrsC7=./usecase/cat_b/mu1_100mhz/ant_7.bin
+antSrsC8=./usecase/cat_b/mu1_100mhz/ant_0.bin
+antSrsC9=./usecase/cat_b/mu1_100mhz/ant_1.bin
+antSrsC10=./usecase/cat_b/mu1_100mhz/ant_2.bin
+antSrsC11=./usecase/cat_b/mu1_100mhz/ant_3.bin
+antSrsC12=./usecase/cat_b/mu1_100mhz/ant_4.bin
+antSrsC13=./usecase/cat_b/mu1_100mhz/ant_5.bin
+antSrsC14=./usecase/cat_b/mu1_100mhz/ant_6.bin
+antSrsC15=./usecase/cat_b/mu1_100mhz/ant_7.bin
+antSrsC16=./usecase/cat_b/mu1_100mhz/ant_0.bin
+antSrsC17=./usecase/cat_b/mu1_100mhz/ant_1.bin
+antSrsC18=./usecase/cat_b/mu1_100mhz/ant_2.bin
+antSrsC19=./usecase/cat_b/mu1_100mhz/ant_3.bin
+antSrsC20=./usecase/cat_b/mu1_100mhz/ant_4.bin
+antSrsC21=./usecase/cat_b/mu1_100mhz/ant_5.bin
+antSrsC22=./usecase/cat_b/mu1_100mhz/ant_6.bin
+antSrsC23=./usecase/cat_b/mu1_100mhz/ant_7.bin
+antSrsC24=./usecase/cat_b/mu1_100mhz/ant_0.bin
+antSrsC25=./usecase/cat_b/mu1_100mhz/ant_1.bin
+antSrsC26=./usecase/cat_b/mu1_100mhz/ant_2.bin
+antSrsC27=./usecase/cat_b/mu1_100mhz/ant_3.bin
+antSrsC28=./usecase/cat_b/mu1_100mhz/ant_4.bin
+antSrsC29=./usecase/cat_b/mu1_100mhz/ant_5.bin
+antSrsC30=./usecase/cat_b/mu1_100mhz/ant_6.bin
+antSrsC31=./usecase/cat_b/mu1_100mhz/ant_7.bin
+antSrsC32=./usecase/cat_b/mu1_100mhz/ant_0.bin
+antSrsC33=./usecase/cat_b/mu1_100mhz/ant_1.bin
+antSrsC34=./usecase/cat_b/mu1_100mhz/ant_2.bin
+antSrsC35=./usecase/cat_b/mu1_100mhz/ant_3.bin
+antSrsC36=./usecase/cat_b/mu1_100mhz/ant_4.bin
+antSrsC37=./usecase/cat_b/mu1_100mhz/ant_5.bin
+antSrsC38=./usecase/cat_b/mu1_100mhz/ant_6.bin
+antSrsC39=./usecase/cat_b/mu1_100mhz/ant_7.bin
+antSrsC40=./usecase/cat_b/mu1_100mhz/ant_0.bin
+antSrsC41=./usecase/cat_b/mu1_100mhz/ant_1.bin
+antSrsC42=./usecase/cat_b/mu1_100mhz/ant_2.bin
+antSrsC43=./usecase/cat_b/mu1_100mhz/ant_3.bin
+antSrsC44=./usecase/cat_b/mu1_100mhz/ant_4.bin
+antSrsC45=./usecase/cat_b/mu1_100mhz/ant_5.bin
+antSrsC46=./usecase/cat_b/mu1_100mhz/ant_6.bin
+antSrsC47=./usecase/cat_b/mu1_100mhz/ant_7.bin
+antSrsC48=./usecase/cat_b/mu1_100mhz/ant_0.bin
+antSrsC49=./usecase/cat_b/mu1_100mhz/ant_1.bin
+antSrsC50=./usecase/cat_b/mu1_100mhz/ant_2.bin
+antSrsC51=./usecase/cat_b/mu1_100mhz/ant_3.bin
+antSrsC52=./usecase/cat_b/mu1_100mhz/ant_4.bin
+antSrsC53=./usecase/cat_b/mu1_100mhz/ant_5.bin
+antSrsC54=./usecase/cat_b/mu1_100mhz/ant_6.bin
+antSrsC55=./usecase/cat_b/mu1_100mhz/ant_7.bin
+antSrsC56=./usecase/cat_b/mu1_100mhz/ant_0.bin
+antSrsC57=./usecase/cat_b/mu1_100mhz/ant_1.bin
+antSrsC58=./usecase/cat_b/mu1_100mhz/ant_2.bin
+antSrsC59=./usecase/cat_b/mu1_100mhz/ant_3.bin
+antSrsC60=./usecase/cat_b/mu1_100mhz/ant_4.bin
+antSrsC61=./usecase/cat_b/mu1_100mhz/ant_5.bin
+antSrsC62=./usecase/cat_b/mu1_100mhz/ant_6.bin
+antSrsC63=./usecase/cat_b/mu1_100mhz/ant_7.bin
#DL PRB / % Used RBs UL PRB / % Used RBs
#66% 180 33% 90
###########################################################
##Section Settings
-DynamicSectionEna=1 # 1 - enable dynamic section allocation 0 - static sections all RBs are used
+DynamicSectionEna=1 # 1 - enable dynamic section allocation 0 - static sections all RBs are used
nPrbElemDl=6
#nRBStart, nRBSize, nStartSymb, numSymb, nBeamIndex, bf_weight_update, compMethod, iqWidth, BeamFormingType
-# weight base beams
+# weight base beams
PrbElemDl0=0,48,0,14,0,1,1,9,1
PrbElemDl1=48,48,0,14,1,1,1,9,1
PrbElemDl2=96,48,0,14,2,1,1,9,1
PrbElemDl3=144,48,0,14,3,1,1,9,1
PrbElemDl4=192,48,0,14,4,1,1,9,1
PrbElemDl5=240,33,0,14,5,1,1,9,1
+# Extension Parameters for Beamforming weights
+# numBundPrb, numSetBFW, RAD, disableBFW, bfwIqWidth, bfwCompMeth
+ExtBfwDl0=2,24,0,0,9,1
+ExtBfwDl1=2,24,0,0,9,1
+ExtBfwDl2=2,24,0,0,9,1
+ExtBfwDl3=2,24,0,0,9,1
+ExtBfwDl4=2,24,0,0,9,1
+ExtBfwDl5=2,17,0,0,9,1
nPrbElemUl=6
#nRBStart, nRBSize, nStartSymb, numSymb, nBeamIndex, bf_weight_update, compMethod, iqWidth, BeamFormingType
-# weight base beams
+# weight base beams
PrbElemUl0=0,48,0,14,0,1,1,9,1
PrbElemUl1=48,48,0,14,1,1,1,9,1
PrbElemUl2=96,48,0,14,2,1,1,9,1
PrbElemUl3=144,48,0,14,3,1,1,9,1
PrbElemUl4=192,48,0,14,4,1,1,9,1
PrbElemUl5=240,33,0,14,5,1,1,9,1
+# Extension Parameters for Beamforming weights
+# numBundPrb, numSetBFW, RAD, disableBFW, bfwIqWidth, bfwCompMeth
+ExtBfwUl0=2,24,0,0,9,1
+ExtBfwUl1=2,24,0,0,9,1
+ExtBfwUl2=2,24,0,0,9,1
+ExtBfwUl3=2,24,0,0,9,1
+ExtBfwUl4=2,24,0,0,9,1
+ExtBfwUl5=2,17,0,0,9,1
+
+nPrbElemSrs=1
+PrbElemSrs0=0,273,0,14,0,0,1,9,0
###########################################################
compression=1 # (1) compression enabled (0) compression disabled
##Debug
-debugStop=0 #stop app on 1pps boundary (gps_second % 30)
+debugStop=1 #stop app on 1pps boundary (gps_second % 30)
debugStopCount=0 #if this value is >0 then stop app after x transmission packets, otherwise app will stop at 1pps boundary
bbdevMode=-1 #bbdev mode, -1 = not use bbdev, 0: use software mode, 1: use hardware mode
T2a_max_up=428 # 428.12us
#Transmission Window
-Ta3_min=20 # in us
-Ta3_max=32 # in us
+Ta3_min=20 # in us
+Ta3_max=32 # in us
###########################################################
##O-DU Settings
T1a_max_up=196 #71 + 25 us
#Reception Window
-Ta4_min=0 # in us
-Ta4_max=75 # in us
+Ta4_min=0 # in us
+Ta4_max=75 # in us
###########################################################