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

VNF MultiCell Changes rebased

parent 47749bf4
...@@ -106,6 +106,88 @@ eNBs = ...@@ -106,6 +106,88 @@ eNBs =
ue_TimersAndConstants_n310 = 20; ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1; ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 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 = ( ...@@ -178,13 +260,13 @@ SSConfig = (
Vtp_port = 7780; #Port Number for System Simulator VTP Port Vtp_port = 7780; #Port Number for System Simulator VTP Port
Drb_port = 7781; #Port Number for System Simulator DRB Port Drb_port = 7781; #Port Number for System Simulator DRB Port
SysInd_port = 7782; #Port Number for System Simulator SysIND 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 = ( MACRLCs = (
{ {
num_cc = 1; num_cc = 2;
local_s_if_name = "lo"; local_s_if_name = "lo";
remote_s_address = "127.0.0.1"; remote_s_address = "127.0.0.1";
local_s_address = "127.0.0.1"; local_s_address = "127.0.0.1";
...@@ -194,7 +276,7 @@ MACRLCs = ( ...@@ -194,7 +276,7 @@ MACRLCs = (
remote_s_portd = 50010; remote_s_portd = 50010;
tr_s_preference = "nfapi"; tr_s_preference = "nfapi";
tr_n_preference = "local_RRC"; 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 ...@@ -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(DRIVER2013 True "only relevant for EXMIMO")
add_boolean_option(EXMIMO_IOT True "????") add_boolean_option(EXMIMO_IOT True "????")
add_boolean_option(LOCALIZATION False "???") 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(SMBV False "Rohde&Schwarz SMBV100A vector signal generator")
add_boolean_option(DEBUG_PHY False "Enable PHY layer debugging options") add_boolean_option(DEBUG_PHY False "Enable PHY layer debugging options")
add_boolean_option(DEBUG_PHY_PROC False "Enable debugging of PHY layer procedures") 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) { ...@@ -145,7 +145,12 @@ void phy_config_request(PHY_Config_t *phy_config) {
fp->frame_type = FDD; fp->frame_type = FDD;
init_frame_parms (fp, 1); 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) { if (cfg->subframe_config.duplex_mode.value == 0) {
fp->tdd_config = cfg->tdd_frame_structure_config.subframe_assignment.value; fp->tdd_config = cfg->tdd_frame_structure_config.subframe_assignment.value;
......
...@@ -184,7 +184,7 @@ void RCconfig_L1(void) { ...@@ -184,7 +184,7 @@ void RCconfig_L1(void) {
// DJP need to create some structures for VNF // DJP need to create some structures for VNF
j = 0; j = 0;
RC.nb_L1_CC = malloc((1+RC.nb_L1_inst)*sizeof(int)); // DJP - 1 lot then??? 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) { if (RC.eNB[j] == NULL) {
RC.eNB[j] = (PHY_VARS_eNB **)malloc((1+MAX_NUM_CCs)*sizeof(PHY_VARS_eNB **)); 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) { ...@@ -721,7 +721,7 @@ void UL_indication(UL_IND_t *UL_info, void *proc) {
} }
if (NFAPI_MODE != NFAPI_MODE_PNF) { 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_frame = UL_info->frame;
ifi->current_subframe = UL_info->subframe; ifi->current_subframe = UL_info->subframe;
} else { } else {
...@@ -750,7 +750,7 @@ void UL_indication(UL_IND_t *UL_info, void *proc) { ...@@ -750,7 +750,7 @@ void UL_indication(UL_IND_t *UL_info, void *proc) {
handle_ulsch(UL_info); handle_ulsch(UL_info);
if (NFAPI_MODE != NFAPI_MODE_PNF) { 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, eNB_dlsch_ulsch_scheduler(module_id,
(UL_info->frame+((UL_info->subframe>(9-sf_ahead))?1:0)) % 1024, (UL_info->frame+((UL_info->subframe>(9-sf_ahead))?1:0)) % 1024,
(UL_info->subframe+sf_ahead)%10); (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