Commit 096dac26 authored by Vaibhav Shrivastava's avatar Vaibhav Shrivastava Committed by jperaldi

VNF MultiCell Changes rebased

parent 47749bf4
......@@ -106,6 +106,88 @@ eNBs =
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
},
{
node_function = "3GPP_eNODEB";
node_timing = "synch_to_ext_device";
node_synch_ref = 0;
frame_type = "FDD";
tdd_config = 0;
tdd_config_s = 0;
prefix_type = "NORMAL";
eutra_band = 1;
downlink_frequency = 2150000000L;
uplink_frequency_offset = -200000000L;
Nid_cell = 1;
N_RB_DL = 50;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
rx_gain = 125;
pbch_repetition = "FALSE";
prach_root = 22;
prach_config_index = 3;
prach_high_speed = "DISABLE";
prach_zero_correlation = 5;
prach_freq_offset = 4;
pucch_delta_shift = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 0;
pdsch_referenceSignalPower = -27;
pdsch_p_b = 0;
pusch_n_SB = 1;
pusch_enable64QAM = "DISABLE";
pusch_hoppingMode = "interSubFrame";
pusch_hoppingOffset = 0;
pusch_groupHoppingEnabled = "ENABLE";
pusch_groupAssignment = 0;
pusch_sequenceHoppingEnabled = "DISABLE";
pusch_nDMRS1 = 1;
phich_duration = "NORMAL";
phich_resource = "ONESIXTH";
srs_enable = "DISABLE";
/* srs_BandwidthConfig =;
srs_SubframeConfig =;
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -104;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
pucch_deltaF_Format2 = "deltaF0";
pucch_deltaF_Format2a = "deltaF0";
pucch_deltaF_Format2b = "deltaF0";
rach_numberOfRA_Preambles = 64;
rach_preamblesGroupAConfig = "DISABLE";
/*
rach_sizeOfRA_PreamblesGroupA = ;
rach_messageSizeGroupA = ;
rach_messagePowerOffsetGroupB = ;
*/
rach_powerRampingStep = 4;
rach_preambleInitialReceivedTargetPower = -108;
rach_preambleTransMax = 10;
rach_raResponseWindowSize = 10;
rach_macContentionResolutionTimer = 48;
rach_maxHARQ_Msg3Tx = 4;
pcch_default_PagingCycle = 128;
pcch_nB = "oneT";
bcch_modificationPeriodCoeff = 2;
ue_TimersAndConstants_t300 = 1000;
ue_TimersAndConstants_t301 = 1000;
ue_TimersAndConstants_t310 = 1000;
ue_TimersAndConstants_t311 = 10000;
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
......@@ -178,13 +260,13 @@ SSConfig = (
Vtp_port = 7780; #Port Number for System Simulator VTP Port
Drb_port = 7781; #Port Number for System Simulator DRB Port
SysInd_port = 7782; #Port Number for System Simulator SysIND Port
SSMode = 1; #SSMode: 0 - eNB , 1- SYS_PORT test , 2- Only SRB_PORT test
SSMode = 0; #SSMode: 0 - eNB , 1- SYS_PORT test , 2- Only SRB_PORT test
}
);
MACRLCs = (
{
num_cc = 1;
num_cc = 2;
local_s_if_name = "lo";
remote_s_address = "127.0.0.1";
local_s_address = "127.0.0.1";
......@@ -194,7 +276,7 @@ MACRLCs = (
remote_s_portd = 50010;
tr_s_preference = "nfapi";
tr_n_preference = "local_RRC";
#scheduler_mode = "fairRR";
scheduler_mode = "fairRR";
}
);
......
......@@ -860,7 +860,7 @@ add_boolean_option(LINUX_LIST False "used only in lists.c: either u
add_boolean_option(DRIVER2013 True "only relevant for EXMIMO")
add_boolean_option(EXMIMO_IOT True "????")
add_boolean_option(LOCALIZATION False "???")
add_integer_option(MAX_NUM_CCs 1 "????")
add_integer_option(MAX_NUM_CCs 2 "????")
add_boolean_option(SMBV False "Rohde&Schwarz SMBV100A vector signal generator")
add_boolean_option(DEBUG_PHY False "Enable PHY layer debugging options")
add_boolean_option(DEBUG_PHY_PROC False "Enable debugging of PHY layer procedures")
......
......@@ -145,7 +145,12 @@ void phy_config_request(PHY_Config_t *phy_config) {
fp->frame_type = FDD;
init_frame_parms (fp, 1);
init_lte_top (fp);
/* MultiCell: Initilization needed for 1st CC id only */
if(CC_id == 0)
{
init_lte_top (fp);
}
if (cfg->subframe_config.duplex_mode.value == 0) {
fp->tdd_config = cfg->tdd_frame_structure_config.subframe_assignment.value;
......
......@@ -184,7 +184,7 @@ void RCconfig_L1(void) {
// DJP need to create some structures for VNF
j = 0;
RC.nb_L1_CC = malloc((1+RC.nb_L1_inst)*sizeof(int)); // DJP - 1 lot then???
RC.nb_L1_CC[j]=1; // DJP - hmmm
RC.nb_L1_CC[j]=MAX_NUM_CCs; // DJP - hmmm (MultiCell: Initialization of nb_L1_CC with maximum number of CC)
if (RC.eNB[j] == NULL) {
RC.eNB[j] = (PHY_VARS_eNB **)malloc((1+MAX_NUM_CCs)*sizeof(PHY_VARS_eNB **));
......
......@@ -721,7 +721,7 @@ void UL_indication(UL_IND_t *UL_info, void *proc) {
}
if (NFAPI_MODE != NFAPI_MODE_PNF) {
if (ifi->CC_mask==0) {
if ((ifi->CC_mask==0)||(ifi->CC_mask==1)) {
ifi->current_frame = UL_info->frame;
ifi->current_subframe = UL_info->subframe;
} else {
......@@ -750,7 +750,7 @@ void UL_indication(UL_IND_t *UL_info, void *proc) {
handle_ulsch(UL_info);
if (NFAPI_MODE != NFAPI_MODE_PNF) {
if (ifi->CC_mask == ((1<<MAX_NUM_CCs)-1)) {
if (ifi->CC_mask == ((1<<MAX_NUM_CCs)-3)) {
eNB_dlsch_ulsch_scheduler(module_id,
(UL_info->frame+((UL_info->subframe>(9-sf_ahead))?1:0)) % 1024,
(UL_info->subframe+sf_ahead)%10);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment