Commit db159480 authored by Florian Kaltenberger's avatar Florian Kaltenberger

small bugfixes, logs

verified config files enb.band13.exmimo2.conf with sequans UE and enb.band7.exmimo2.conf with Huawei UE on ExpressMIMO2


git-svn-id: http://svn.eurecom.fr/openair4G/trunk@5923 818b1a75-f10b-46b9-bf7c-635c3b92a50f
parent 8201b19b
...@@ -1346,11 +1346,9 @@ void generate_phich_top(PHY_VARS_eNB *phy_vars_eNB, ...@@ -1346,11 +1346,9 @@ void generate_phich_top(PHY_VARS_eNB *phy_vars_eNB,
for (UE_id=0;UE_id<NUMBER_OF_UE_MAX;UE_id++) { for (UE_id=0;UE_id<NUMBER_OF_UE_MAX;UE_id++) {
if ((ulsch_eNB[UE_id])&&(ulsch_eNB[UE_id]->rnti>0)) { if ((ulsch_eNB[UE_id])&&(ulsch_eNB[UE_id]->rnti>0)) {
LOG_D(PHY,"[eNB][PUSCH %d/%x] Frame %d subframe %d (pusch_subframe %d,pusch_frame %d) phich active %d\n",
harq_pid,ulsch_eNB[UE_id]->rnti,phy_vars_eNB->proc[sched_subframe].frame_tx,subframe,pusch_subframe,pusch_frame,ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active);
if (ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active == 1) { if (ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active == 1) {
LOG_D(PHY,"[eNB][PUSCH %d/%x] Frame %d subframe %d (pusch_subframe %d,pusch_frame %d) phich active %d\n", LOG_D(PHY,"[eNB][PUSCH %d/%x] Frame %d subframe %d (pusch_subframe %d,pusch_frame %d) phich active %d\n",
harq_pid,ulsch_eNB[UE_id]->rnti,phy_vars_eNB->proc[sched_subframe].frame_tx,subframe,pusch_subframe,pusch_frame,ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active); harq_pid,ulsch_eNB[UE_id]->rnti,phy_vars_eNB->proc[sched_subframe].frame_tx,subframe,pusch_subframe,pusch_frame,ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active);
ngroup_PHICH = (ulsch_eNB[UE_id]->harq_processes[harq_pid]->first_rb + ngroup_PHICH = (ulsch_eNB[UE_id]->harq_processes[harq_pid]->first_rb +
...@@ -1395,6 +1393,7 @@ void generate_phich_top(PHY_VARS_eNB *phy_vars_eNB, ...@@ -1395,6 +1393,7 @@ void generate_phich_top(PHY_VARS_eNB *phy_vars_eNB,
subframe); subframe);
*/ */
} }
// if no format0 DCI was transmitted by MAC, prepare the // if no format0 DCI was transmitted by MAC, prepare the
// MCS parameters for the retransmission // MCS parameters for the retransmission
......
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
#ifdef DEBUG_UCI_TOOLS #ifdef DEBUG_UCI_TOOLS
#include "PHY/vars.h" #include "PHY/vars.h"
#endif #endif
#define DEBUG_UCI //#define DEBUG_UCI
unsigned int pmi2hex_2Ar1(unsigned short pmi) { unsigned int pmi2hex_2Ar1(unsigned short pmi) {
......
...@@ -846,7 +846,7 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP) { ...@@ -846,7 +846,7 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP) {
enb_properties.properties[enb_properties_index]->rx_gain[j] = rx_gain; enb_properties.properties[enb_properties_index]->rx_gain[j] = rx_gain;
if ((rx_gain <0) || (rx_gain > 160)) if ((rx_gain <0) || (rx_gain > 160))
AssertError (0, parse_errors ++, AssertError (0, parse_errors ++,
"Failed to parse eNB configuration file %s, enb %d unknown value \"%d\" for nb_antennas_rx choice: 0..160 !\n", "Failed to parse eNB configuration file %s, enb %d unknown value \"%d\" for rx_gain choice: 0..160 !\n",
lib_config_file_name_pP, i, rx_gain); lib_config_file_name_pP, i, rx_gain);
enb_properties.properties[enb_properties_index]->prach_root[j] = prach_root; enb_properties.properties[enb_properties_index]->prach_root[j] = prach_root;
...@@ -964,7 +964,7 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP) { ...@@ -964,7 +964,7 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP) {
lib_config_file_name_pP, i, pusch_groupAssignment); lib_config_file_name_pP, i, pusch_groupAssignment);
if (strcmp(pusch_sequenceHoppingEnabled, "ENABLE") == 0) if (strcmp(pusch_sequenceHoppingEnabled, "ENABLE") == 0)
enb_properties.properties[enb_properties_index]->pusch_groupHoppingEnabled[j] = TRUE; enb_properties.properties[enb_properties_index]->pusch_sequenceHoppingEnabled[j] = TRUE;
else if (strcmp(pusch_sequenceHoppingEnabled, "DISABLE") == 0) else if (strcmp(pusch_sequenceHoppingEnabled, "DISABLE") == 0)
enb_properties.properties[enb_properties_index]->pusch_sequenceHoppingEnabled[j] = FALSE; enb_properties.properties[enb_properties_index]->pusch_sequenceHoppingEnabled[j] = FALSE;
else else
......
Active_eNBs = ( "eNB_Eurecom_LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
eNBs =
(
{
# real_time choice in {hard, rt-preempt, no}
real_time = "no";
////////// Identification parameters:
eNB_ID = 0xe00;
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "92";
////////// Physical parameters:
component_carriers = (
{
frame_type = "FDD";
tdd_config = 3;
tdd_config_s = 0;
prefix_type = "NORMAL";
eutra_band = 13;
downlink_frequency = 748500000L;
uplink_frequency_offset = 31000000;
Nid_cell = 0;
N_RB_DL = 25;
Nid_cell_mbsfn = 0;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 2;
rx_gain = 2;
prach_root = 22;
prach_config_index = 0;
prach_high_speed = "DISABLE";
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -24;
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 = -98;
pusch_alpha = "AL1";
pucch_p0_Nominal = -108;
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 = 2;
rach_preambleInitialReceivedTargetPower = -100;
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;
}
);
////////// MME parameters:
mme_ip_address = ( { ipv4 = "192.168.13.11";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
}
);
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.13.82/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.13.82/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};
log_config :
{
global_log_level ="debug";
global_log_verbosity ="high";
hw_log_level ="info";
hw_log_verbosity ="high";
phy_log_level ="debug";
phy_log_verbosity ="high";
mac_log_level ="debug";
mac_log_verbosity ="high";
rlc_log_level ="info";
rlc_log_verbosity ="high";
pdcp_log_level ="info";
pdcp_log_verbosity ="high";
rrc_log_level ="info";
rrc_log_verbosity ="high";
};
}
);
...@@ -40,10 +40,10 @@ eNBs = ...@@ -40,10 +40,10 @@ eNBs =
tx_gain = 20; tx_gain = 20;
rx_gain = 20; rx_gain = 20;
prach_root = 22; prach_root = 22;
prach_config_index = 3; prach_config_index = 0;
prach_high_speed = "DISABLE"; prach_high_speed = "DISABLE";
prach_zero_correlation = 0; prach_zero_correlation = 1;
prach_freq_offset = 0; prach_freq_offset = 2;
pucch_delta_shift = 1; pucch_delta_shift = 1;
pucch_nRB_CQI = 1; pucch_nRB_CQI = 1;
pucch_nCS_AN = 0; pucch_nCS_AN = 0;
...@@ -53,8 +53,8 @@ eNBs = ...@@ -53,8 +53,8 @@ eNBs =
pusch_n_SB = 1; pusch_n_SB = 1;
pusch_enable64QAM = "DISABLE"; pusch_enable64QAM = "DISABLE";
pusch_hoppingMode = "interSubFrame"; pusch_hoppingMode = "interSubFrame";
pusch_hoppingOffset = 4; pusch_hoppingOffset = 0;
pusch_groupHoppingEnabled = "DISABLE"; pusch_groupHoppingEnabled = "ENABLE";
pusch_groupAssignment = 0; pusch_groupAssignment = 0;
pusch_sequenceHoppingEnabled = "DISABLE"; pusch_sequenceHoppingEnabled = "DISABLE";
pusch_nDMRS1 = 1; pusch_nDMRS1 = 1;
...@@ -66,9 +66,9 @@ eNBs = ...@@ -66,9 +66,9 @@ eNBs =
srs_ackNackST =; srs_ackNackST =;
srs_MaxUpPts =;*/ srs_MaxUpPts =;*/
pusch_p0_Nominal = -95; pusch_p0_Nominal = -98;
pusch_alpha = "AL08"; pusch_alpha = "AL1";
pucch_p0_Nominal = -117; pucch_p0_Nominal = -108;
msg3_delta_Preamble = 6; msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2"; pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3"; pucch_deltaF_Format1b = "deltaF3";
...@@ -76,7 +76,7 @@ eNBs = ...@@ -76,7 +76,7 @@ eNBs =
pucch_deltaF_Format2a = "deltaF0"; pucch_deltaF_Format2a = "deltaF0";
pucch_deltaF_Format2b = "deltaF0"; pucch_deltaF_Format2b = "deltaF0";
rach_numberOfRA_Preambles = 52; rach_numberOfRA_Preambles = 64;
rach_preamblesGroupAConfig = "DISABLE"; rach_preamblesGroupAConfig = "DISABLE";
/* /*
rach_sizeOfRA_PreamblesGroupA = ; rach_sizeOfRA_PreamblesGroupA = ;
...@@ -84,8 +84,8 @@ eNBs = ...@@ -84,8 +84,8 @@ eNBs =
rach_messagePowerOffsetGroupB = ; rach_messagePowerOffsetGroupB = ;
*/ */
rach_powerRampingStep = 2; rach_powerRampingStep = 2;
rach_preambleInitialReceivedTargetPower = -104; rach_preambleInitialReceivedTargetPower = -100;
rach_preambleTransMax = 6; rach_preambleTransMax = 10;
rach_raResponseWindowSize = 10; rach_raResponseWindowSize = 10;
rach_macContentionResolutionTimer = 48; rach_macContentionResolutionTimer = 48;
rach_maxHARQ_Msg3Tx = 4; rach_maxHARQ_Msg3Tx = 4;
...@@ -114,10 +114,10 @@ eNBs = ...@@ -114,10 +114,10 @@ eNBs =
NETWORK_INTERFACES : NETWORK_INTERFACES :
{ {
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0"; ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.13.10/24"; ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.13.82/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth0"; ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.13.10/24"; ENB_IPV4_ADDRESS_FOR_S1U = "192.168.13.82/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152 ENB_PORT_FOR_S1U = 2152; # Spec 2152
}; };
......
...@@ -129,7 +129,7 @@ unsigned short config_frames[4] = {2,9,11,13}; ...@@ -129,7 +129,7 @@ unsigned short config_frames[4] = {2,9,11,13};
#define FRAME_PERIOD 100000000ULL #define FRAME_PERIOD 100000000ULL
#define DAQ_PERIOD 66667ULL #define DAQ_PERIOD 66667ULL
#define DEBUG_THREADS 1 //#define DEBUG_THREADS 1
//#define USRP_DEBUG 1 //#define USRP_DEBUG 1
...@@ -395,6 +395,7 @@ void exit_fun(const char* s) ...@@ -395,6 +395,7 @@ void exit_fun(const char* s)
oai_exit = 1; oai_exit = 1;
#if defined(ENABLE_ITTI) #if defined(ENABLE_ITTI)
sleep(1); //allow lte-softmodem threads to exit first
itti_terminate_tasks (TASK_UNKNOWN); itti_terminate_tasks (TASK_UNKNOWN);
#endif #endif
...@@ -906,11 +907,10 @@ static void * eNB_thread_tx(void *param) { ...@@ -906,11 +907,10 @@ static void * eNB_thread_tx(void *param) {
#endif #endif
/*#if defined(ENABLE_ITTI)
#if defined(ENABLE_ITTI) // Wait for eNB application initialization to be complete (eNB registration to MME)
/* Wait for eNB application initialization to be complete (eNB registration to MME) */
wait_system_ready ("Waiting for eNB application to be ready %s\r", &start_eNB); wait_system_ready ("Waiting for eNB application to be ready %s\r", &start_eNB);
#endif #endif*/
#ifdef RTAI #ifdef RTAI
sprintf(task_name,"TXC%dS%d",proc->CC_id,proc->subframe); sprintf(task_name,"TXC%dS%d",proc->CC_id,proc->subframe);
...@@ -1036,10 +1036,10 @@ static void * eNB_thread_rx(void *param) { ...@@ -1036,10 +1036,10 @@ static void * eNB_thread_rx(void *param) {
char task_name[8]; char task_name[8];
#endif #endif
#if defined(ENABLE_ITTI) /*#if defined(ENABLE_ITTI)
/* Wait for eNB application initialization to be complete (eNB registration to MME) */ // Wait for eNB application initialization to be complete (eNB registration to MME)
wait_system_ready ("Waiting for eNB application to be ready %s\r", &start_eNB); wait_system_ready ("Waiting for eNB application to be ready %s\r", &start_eNB);
#endif #endif*/
#ifdef RTAI #ifdef RTAI
sprintf(task_name,"RXC%1dS%1d",proc->CC_id,proc->subframe); sprintf(task_name,"RXC%1dS%1d",proc->CC_id,proc->subframe);
...@@ -3176,6 +3176,13 @@ int main(int argc, char **argv) { ...@@ -3176,6 +3176,13 @@ int main(int argc, char **argv) {
#endif #endif
#endif #endif
/*#if defined(ENABLE_ITTI)
// Wait for eNB application initialization to be complete (eNB registration to MME)
if (UE_flag==0) {
printf("Waiting for eNB application to be ready\n");
wait_system_ready ("Waiting for eNB application to be ready %s\r", &start_eNB);
}
#endif*/
// this starts the DMA transfers // this starts the DMA transfers
...@@ -3305,7 +3312,7 @@ int main(int argc, char **argv) { ...@@ -3305,7 +3312,7 @@ int main(int argc, char **argv) {
} }
// Sleep to allow all threads to setup // Sleep to allow all threads to setup
sleep(1); //sleep(1);
#ifndef EXMIMO #ifndef EXMIMO
......
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