Merge remote-tracking branch 'origin/microamp_MR' into integration_2026_w15 (!4014)
Microamp FR2 configuration file and documentation Adding Microamp FR2 RU configuration file and updating documentation
This commit is contained in:
@@ -629,6 +629,82 @@ eAXC_id 0 1 # set PRACH eAxC IDs
|
|||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### MICROAMP FR2
|
||||||
|
|
||||||
|
|
||||||
|
Interaction with RU is performed using `rucfg` utility provided by Microamp.
|
||||||
|
|
||||||
|
To check PTP status, you can use `rucfg ptp`. the output should be similar to:
|
||||||
|
```bash
|
||||||
|
[INFO] Check if RU is available
|
||||||
|
[INFO] RU available
|
||||||
|
[INFO] Check SSH to RU available
|
||||||
|
[INFO] SSH to RU available
|
||||||
|
[INFO] Getting PTP status
|
||||||
|
[INFO] ptp4l status =
|
||||||
|
{
|
||||||
|
Feb 12 16:26:02 bbv1 ptp4l[23822]: ptp4l[6280.658]: rms 0 max 1 freq +2 +/- 7 delay 1184 +/- 0
|
||||||
|
Feb 12 16:26:00 bbv1 ptp4l[23822]: ptp4l[6279.535]: rms 0 max 1 freq -8 +/- 13 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:59 bbv1 ptp4l[23822]: ptp4l[6278.413]: rms 1 max 1 freq -35 +/- 13 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:58 bbv1 ptp4l[23822]: ptp4l[6277.290]: rms 0 max 1 freq -68 +/- 9 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:57 bbv1 ptp4l[23822]: ptp4l[6276.167]: rms 1 max 1 freq -69 +/- 10 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:56 bbv1 ptp4l[23822]: ptp4l[6275.044]: rms 0 max 1 freq -46 +/- 9 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:55 bbv1 ptp4l[23822]: ptp4l[6273.921]: rms 1 max 1 freq -65 +/- 10 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:54 bbv1 ptp4l[23822]: ptp4l[6272.800]: rms 0 max 1 freq -91 +/- 6 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:53 bbv1 ptp4l[23822]: ptp4l[6271.677]: rms 4 max 17 freq -107 +/- 48 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:52 bbv1 ptp4l[23822]: ptp4l[6270.554]: rms 6 max 17 freq +179 +/- 106 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:50 bbv1 ptp4l[23822]: ptp4l[6269.431]: rms 1 max 2 freq +191 +/- 12 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:49 bbv1 ptp4l[23822]: ptp4l[6268.308]: rms 1 max 1 freq +119 +/- 21 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:48 bbv1 ptp4l[23822]: ptp4l[6267.186]: rms 1 max 1 freq +103 +/- 13 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:47 bbv1 ptp4l[23822]: ptp4l[6266.063]: rms 7 max 17 freq -101 +/- 160 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:46 bbv1 ptp4l[23822]: ptp4l[6264.940]: rms 7 max 17 freq -65 +/- 154 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:45 bbv1 ptp4l[23822]: ptp4l[6263.817]: rms 1 max 2 freq +176 +/- 33 delay 1183 +/- 0
|
||||||
|
Feb 12 16:25:44 bbv1 ptp4l[23822]: ptp4l[6262.695]: rms 0 max 1 freq +100 +/- 7 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:43 bbv1 ptp4l[23822]: ptp4l[6261.572]: rms 1 max 2 freq +56 +/- 34 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:41 bbv1 ptp4l[23822]: ptp4l[6260.449]: rms 1 max 1 freq -37 +/- 14 delay 1184 +/- 0
|
||||||
|
Feb 12 16:25:40 bbv1 ptp4l[23822]: ptp4l[6259.326]: rms 7 max 16 freq +114 +/- 149 delay 1183 +/- 0
|
||||||
|
}
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
##### RU configuration
|
||||||
|
|
||||||
|
You can use `rucfg show` to display the current RU configuration.
|
||||||
|
|
||||||
|
The OAI configuration file [`gnb.sa.band257.132prb.fhi72.2x2-microamp.conf`](../targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band257.132prb.fhi72.2x2-microamp.conf) corresponds to the following RU configuration:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
[INFO] Check if RU is available
|
||||||
|
[INFO] RU available
|
||||||
|
[INFO] Check SSH to RU available
|
||||||
|
[INFO] SSH to RU available
|
||||||
|
[INFO] Downloading oran_autostart
|
||||||
|
[INFO] Downloading ructl_config.sh
|
||||||
|
[INFO] Downloading udc_pll_configurator_startup
|
||||||
|
[INFO] Downloaded Cellbox config =
|
||||||
|
{
|
||||||
|
eCPRI Compression: True
|
||||||
|
RF Bandwidth: 200MHz
|
||||||
|
CC Bandwidth: 200MHz
|
||||||
|
CCs: 1
|
||||||
|
LO frequency: 7.91642667e9
|
||||||
|
UL compensation frequency: 28.04928e9
|
||||||
|
DL compensation frequency: -28.04928e9
|
||||||
|
RU MAC: 10:70:FD:B8:86:02
|
||||||
|
DU MAC: 50:7C:6F:31:00:61
|
||||||
|
TDD config: dddsu
|
||||||
|
RF Power level: -5 dB - relative to maximum
|
||||||
|
VLAN ORAN: Enabled, tag: 600
|
||||||
|
VLAN PTP: Enabled, tag: 1
|
||||||
|
VLAN MGMT: False
|
||||||
|
Beamforming: dynamic-mirrored-beam
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Execute `rucfg config -h` to check how to configure the RU.
|
||||||
|
|
||||||
|
You can also execute `rucfg stats` to show fronthaul statistics including on-time/late packet' counters.
|
||||||
|
|
||||||
#### VVDN LPRU
|
#### VVDN LPRU
|
||||||
|
|
||||||
**Version 3.x**
|
**Version 3.x**
|
||||||
|
|||||||
@@ -0,0 +1,281 @@
|
|||||||
|
# SPDX-License-Identifier: LicenseRef-CSSL-1.0
|
||||||
|
|
||||||
|
Active_gNBs = ( "eurecom-gnb");
|
||||||
|
# Asn1_verbosity, choice in: none, info, annoying
|
||||||
|
Asn1_verbosity = "none";
|
||||||
|
|
||||||
|
gNBs =
|
||||||
|
(
|
||||||
|
{
|
||||||
|
////////// Identification parameters:
|
||||||
|
gNB_ID = 0xe99;
|
||||||
|
cell_type = "CELL_MACRO_GNB";
|
||||||
|
|
||||||
|
gNB_name = "eurecom-gnb";
|
||||||
|
|
||||||
|
// Tracking area code, 0x0000 and 0xfffe are reserved values
|
||||||
|
tracking_area_code = 1;
|
||||||
|
plmn_list = ({ mcc = 208; mnc = 99; mnc_length = 2; snssaiList = ( { sst = 1; }); });
|
||||||
|
|
||||||
|
nr_cellid = 1;
|
||||||
|
|
||||||
|
////////// Physical parameters:
|
||||||
|
|
||||||
|
pdsch_AntennaPorts_XP = 2;
|
||||||
|
pusch_AntennaPorts = 2;
|
||||||
|
maxMIMO_layers = 2;
|
||||||
|
do_CSIRS = 1;
|
||||||
|
do_SRS = 0;
|
||||||
|
min_rxtxtime = 3;
|
||||||
|
|
||||||
|
servingCellConfigCommon = (
|
||||||
|
{
|
||||||
|
#spCellConfigCommon
|
||||||
|
|
||||||
|
physCellId = 0;
|
||||||
|
|
||||||
|
# downlinkConfigCommon
|
||||||
|
#frequencyInfoDL
|
||||||
|
# center frequency = 28701.12 MHz
|
||||||
|
# selected SSB frequency = 28691.04 MHz
|
||||||
|
absoluteFrequencySSB = 2079739;
|
||||||
|
dl_frequencyBand = 257;
|
||||||
|
# frequency point A = 28653.6 MHz
|
||||||
|
dl_absoluteFrequencyPointA = 2078403;
|
||||||
|
#scs-SpecificCarrierList
|
||||||
|
dl_offstToCarrier = 0;
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
dl_subcarrierSpacing = 3;
|
||||||
|
dl_carrierBandwidth = 132;
|
||||||
|
#initialDownlinkBWP
|
||||||
|
#genericParameters
|
||||||
|
initialDLBWPlocationAndBandwidth = 36025;
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
initialDLBWPsubcarrierSpacing = 3;
|
||||||
|
#pdcch-ConfigCommon
|
||||||
|
initialDLBWPcontrolResourceSetZero = 2;
|
||||||
|
initialDLBWPsearchSpaceZero = 0;
|
||||||
|
|
||||||
|
#uplinkConfigCommon
|
||||||
|
#frequencyInfoUL
|
||||||
|
ul_frequencyBand = 257;
|
||||||
|
#scs-SpecificCarrierList
|
||||||
|
ul_offstToCarrier = 0;
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
ul_subcarrierSpacing = 3;
|
||||||
|
ul_carrierBandwidth = 132;
|
||||||
|
pMax = 20;
|
||||||
|
#initialUplinkBWP
|
||||||
|
#genericParameters
|
||||||
|
initialULBWPlocationAndBandwidth = 36025;
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
initialULBWPsubcarrierSpacing = 3;
|
||||||
|
#rach-ConfigCommon
|
||||||
|
#rach-ConfigGeneric
|
||||||
|
prach_ConfigurationIndex = 135;
|
||||||
|
#prach_msg1_FDM
|
||||||
|
#0 = one, 1=two, 2=four, 3=eight
|
||||||
|
prach_msg1_FDM = 0;
|
||||||
|
prach_msg1_FrequencyStart = 0;
|
||||||
|
zeroCorrelationZoneConfig = 15;
|
||||||
|
preambleReceivedTargetPower = -118;
|
||||||
|
#preamblTransMax (0...10) = (3,4,5,6,7,8,10,20,50,100,200)
|
||||||
|
preambleTransMax = 8;
|
||||||
|
#powerRampingStep
|
||||||
|
# 0=dB0,1=dB2,2=dB4,3=dB6
|
||||||
|
powerRampingStep = 2;
|
||||||
|
#ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR
|
||||||
|
#1=oneeighth,2=onefourth,3=half,4=one,5=two,6=four,7=eight,8=sixteen
|
||||||
|
ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR = 4;
|
||||||
|
#one (0..15) 4,8,12,16,...60,64
|
||||||
|
ssb_perRACH_OccasionAndCB_PreamblesPerSSB = 15;
|
||||||
|
#ra_ContentionResolutionTimer
|
||||||
|
#(0..7) 8,16,24,32,40,48,56,64
|
||||||
|
ra_ContentionResolutionTimer = 7;
|
||||||
|
rsrp_ThresholdSSB = 19;
|
||||||
|
#prach-RootSequenceIndex_PR
|
||||||
|
#1 = 839, 2 = 139
|
||||||
|
prach_RootSequenceIndex_PR = 2;
|
||||||
|
prach_RootSequenceIndex = 1;
|
||||||
|
# SCS for msg1, can only be 15 for 30 kHz < 6 GHz, takes precendence over the one derived from prach-ConfigIndex
|
||||||
|
#
|
||||||
|
msg1_SubcarrierSpacing = 3,
|
||||||
|
# restrictedSetConfig
|
||||||
|
# 0=unrestricted, 1=restricted type A, 2=restricted type B
|
||||||
|
restrictedSetConfig = 0,
|
||||||
|
|
||||||
|
# this is the offset between the last PRACH preamble power and the Msg3 PUSCH, 2 times the field value in dB
|
||||||
|
msg3_DeltaPreamble = 0;
|
||||||
|
p0_NominalWithGrant = -90;
|
||||||
|
|
||||||
|
# pucch-ConfigCommon setup :
|
||||||
|
# pucchGroupHopping
|
||||||
|
# 0 = neither, 1= group hopping, 2=sequence hopping
|
||||||
|
pucchGroupHopping = 0;
|
||||||
|
hoppingId = 40;
|
||||||
|
p0_nominal = -90;
|
||||||
|
|
||||||
|
ssb_PositionsInBurst_Bitmap = 1;
|
||||||
|
|
||||||
|
# ssb_periodicityServingCell
|
||||||
|
# 0 = ms5, 1=ms10, 2=ms20, 3=ms40, 4=ms80, 5=ms160, 6=spare2, 7=spare1
|
||||||
|
ssb_periodicityServingCell = 1;
|
||||||
|
|
||||||
|
# dmrs_TypeA_position
|
||||||
|
# 0 = pos2, 1 = pos3
|
||||||
|
dmrs_TypeA_Position = 0;
|
||||||
|
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
subcarrierSpacing = 3;
|
||||||
|
|
||||||
|
|
||||||
|
#tdd-UL-DL-ConfigurationCommon
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
referenceSubcarrierSpacing = 3;
|
||||||
|
# pattern1
|
||||||
|
# dl_UL_TransmissionPeriodicity
|
||||||
|
# 0=ms0p5, 1=ms0p625, 2=ms1, 3=ms1p25, 4=ms2, 5=ms2p5, 6=ms5, 7=ms10
|
||||||
|
dl_UL_TransmissionPeriodicity = 1;
|
||||||
|
nrofDownlinkSlots = 3;
|
||||||
|
nrofDownlinkSymbols = 10;
|
||||||
|
nrofUplinkSlots = 1;
|
||||||
|
nrofUplinkSymbols = 2;
|
||||||
|
|
||||||
|
ssPBCH_BlockPower = 5;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
# ------- SCTP definitions
|
||||||
|
SCTP :
|
||||||
|
{
|
||||||
|
# Number of streams to use in input/output
|
||||||
|
SCTP_INSTREAMS = 2;
|
||||||
|
SCTP_OUTSTREAMS = 2;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
////////// AMF parameters:
|
||||||
|
amf_ip_address = ({ ipv4 = "172.21.6.5"; });
|
||||||
|
|
||||||
|
NETWORK_INTERFACES :
|
||||||
|
{
|
||||||
|
GNB_IPV4_ADDRESS_FOR_NG_AMF = "172.21.18.51";
|
||||||
|
GNB_IPV4_ADDRESS_FOR_NGU = "172.21.18.51";
|
||||||
|
GNB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
};
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
MACRLCs = (
|
||||||
|
{
|
||||||
|
tr_s_preference = "local_L1";
|
||||||
|
tr_n_preference = "local_RRC";
|
||||||
|
pusch_TargetSNRx10 = 230;
|
||||||
|
pucch_TargetSNRx10 = 270;
|
||||||
|
pusch_FailureThres = 1000;
|
||||||
|
#ul_bler_target_upper =.02;
|
||||||
|
#ul_bler_target_lower =.01;
|
||||||
|
#dl_bler_target_upper =.15;
|
||||||
|
#dl_bler_target_lower =.05
|
||||||
|
set_analog_beamforming = "lophy";
|
||||||
|
beam_duration = 1;
|
||||||
|
beams_per_period = 1;
|
||||||
|
beam_weights = [0];
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
L1s = (
|
||||||
|
{
|
||||||
|
num_cc = 1;
|
||||||
|
tr_n_preference = "local_mac";
|
||||||
|
prach_dtx_threshold = 120;
|
||||||
|
pucch0_dtx_threshold = 50;
|
||||||
|
pusch_dtx_threshold = -200;
|
||||||
|
max_ldpc_iterations = 10;
|
||||||
|
tx_amp_backoff_dB = 6;
|
||||||
|
L1_rx_thread_core = 37;
|
||||||
|
L1_tx_thread_core = 36;
|
||||||
|
phase_compensation = 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
RUs = (
|
||||||
|
{
|
||||||
|
local_rf = "no";
|
||||||
|
nb_tx = 2;
|
||||||
|
nb_rx = 2;
|
||||||
|
att_tx = 0
|
||||||
|
att_rx = 0;
|
||||||
|
bands = [257];
|
||||||
|
nr_scs_for_raster = 3;
|
||||||
|
max_pdschReferenceSignalPower = -40;
|
||||||
|
max_rxgain = 60;
|
||||||
|
#sf_extension = 0;
|
||||||
|
eNB_instances = [0];
|
||||||
|
ru_thread_core = 35;
|
||||||
|
sl_ahead = 10;
|
||||||
|
tr_preference = "raw_if4p5";
|
||||||
|
do_precoding = 0;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
security = {
|
||||||
|
# preferred ciphering algorithms
|
||||||
|
# the first one of the list that an UE supports in chosen
|
||||||
|
# valid values: nea0, nea1, nea2, nea3
|
||||||
|
ciphering_algorithms = ( "nea0" );
|
||||||
|
|
||||||
|
# preferred integrity algorithms
|
||||||
|
# the first one of the list that an UE supports in chosen
|
||||||
|
# valid values: nia0, nia1, nia2, nia3
|
||||||
|
integrity_algorithms = ( "nia2", "nia0" );
|
||||||
|
|
||||||
|
# setting 'drb_ciphering' to "no" disables ciphering for DRBs, no matter
|
||||||
|
# what 'ciphering_algorithms' configures; same thing for 'drb_integrity'
|
||||||
|
drb_ciphering = "yes";
|
||||||
|
drb_integrity = "no";
|
||||||
|
};
|
||||||
|
|
||||||
|
log_config :
|
||||||
|
{
|
||||||
|
global_log_level = "info";
|
||||||
|
hw_log_level = "info";
|
||||||
|
phy_log_level = "info";
|
||||||
|
mac_log_level = "info";
|
||||||
|
rlc_log_level = "info";
|
||||||
|
pdcp_log_level = "info";
|
||||||
|
rrc_log_level = "info";
|
||||||
|
ngap_log_level = "info";
|
||||||
|
f1ap_log_level = "info";
|
||||||
|
};
|
||||||
|
|
||||||
|
fhi_72 = {
|
||||||
|
dpdk_devices = ("01:01.0","01:01.1"); # one VF can be used as well
|
||||||
|
system_core = 32;
|
||||||
|
io_core = 33;
|
||||||
|
worker_cores = (34);
|
||||||
|
ru_addr = ("10:70:FD:B8:86:02", "10:70:FD:B8:86:02");
|
||||||
|
mtu = 9216;
|
||||||
|
fh_config = ({
|
||||||
|
T1a_cp_dl = (100, 124);
|
||||||
|
T1a_cp_ul = (60, 70);
|
||||||
|
T1a_up = (35, 108);
|
||||||
|
Ta4 = (0, 45)
|
||||||
|
ru_config = {
|
||||||
|
iq_width = 9;
|
||||||
|
iq_width_prach = 16;
|
||||||
|
};
|
||||||
|
prach_config = {
|
||||||
|
eAxC_offset = 0;
|
||||||
|
kbar = 4;
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user