diff --git a/cmake_targets/build_oai b/cmake_targets/build_oai index af298a27c44ec35bac269467fc17f38273239921..821b3bca274cf0f08affbbd337511e6fd015c7fa 100755 --- a/cmake_targets/build_oai +++ b/cmake_targets/build_oai @@ -760,9 +760,9 @@ fi rm -fr $OPENAIR_DIR/cmake_targets/autotests/log mkdir -p $OPENAIR_DIR/cmake_targets/autotests/log if [ "$RUN_GROUP" -eq "1" ]; then - $OPENAIR_DIR/cmake_targets/autotests/run_exec_autotests.bash -g "$TEST_CASE_GROUP" -p '$mypassword' >& $OPENAIR_DIR/cmake_targets/autotests/log/autotests.log & + $OPENAIR_DIR/cmake_targets/autotests/run_exec_autotests.bash -g "$TEST_CASE_GROUP" -p $mypassword >& $OPENAIR_DIR/cmake_targets/autotests/log/autotests.log & else - $OPENAIR_DIR/cmake_targets/autotests/run_exec_autotests.bash -p '$mypassword' >& $OPENAIR_DIR/cmake_targets/autotests/log/autotests.log & + $OPENAIR_DIR/cmake_targets/autotests/run_exec_autotests.bash -p $mypassword >& $OPENAIR_DIR/cmake_targets/autotests/log/autotests.log & fi wait else diff --git a/cmake_targets/lte-simulators/CMakeLists.txt b/cmake_targets/lte-simulators/CMakeLists.txt index 7a0e84b425a8d7493e221ab3e256e7b7486e138f..0b706c8748eae45600e328daef5f39038396170d 100644 --- a/cmake_targets/lte-simulators/CMakeLists.txt +++ b/cmake_targets/lte-simulators/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 2.8) set(PACKAGE_NAME "unitary_tests_simulators") set(PHYSIM True) set(RF_BOARD None) -set(XFORMS False) +set(XFORMS True) set(DEBUG_PHY False) set(MU_RECIEVER False) diff --git a/openair1/SIMULATION/LTE_PHY/dlsim.c b/openair1/SIMULATION/LTE_PHY/dlsim.c index 2c3d0848c2e90a5e19f63588d4ad2ffc85e8d995..d67024810a6672107e7e4a3f7b6ddd76cf631dc1 100644 --- a/openair1/SIMULATION/LTE_PHY/dlsim.c +++ b/openair1/SIMULATION/LTE_PHY/dlsim.c @@ -61,25 +61,7 @@ extern unsigned int dlsch_tbs25[27][25],TBStable[27][110]; extern unsigned char offset_mumimo_llr_drange_fix; -#ifdef XFORMS #include "PHY/TOOLS/lte_phy_scope.h" -#endif - - - -//#define AWGN -//#define NO_DCI - - - -//#define ABSTRACTION - -/* - #define RBmask0 0x00fc00fc - #define RBmask1 0x0 - #define RBmask2 0x0 - #define RBmask3 0x0 -*/ PHY_VARS_eNB *PHY_vars_eNB; PHY_VARS_UE *PHY_vars_UE; @@ -237,10 +219,9 @@ int main(int argc, char **argv) short *uncoded_ber_bit=NULL; uint8_t N_RB_DL=25,osf=1; frame_t frame_type = FDD; -#ifdef XFORMS + int xforms=0; FD_lte_phy_scope_ue *form_ue; char title[255]; -#endif uint32_t DLSCH_RB_ALLOC = 0x1fff; int numCCE=0; int dci_length_bytes=0,dci_length=0; @@ -305,7 +286,7 @@ int main(int argc, char **argv) // num_layers = 1; perfect_ce = 0; - while ((c = getopt (argc, argv, "ahdpZDe:Em:n:o:s:f:t:c:g:r:F:x:y:z:AM:N:I:i:O:R:S:C:T:b:u:v:w:B:PLl:Y")) != -1) { + while ((c = getopt (argc, argv, "ahdpZDe:Em:n:o:s:f:t:c:g:r:F:x:y:z:AM:N:I:i:O:R:S:C:T:b:u:v:w:B:PLl:XY")) != -1) { switch (c) { case 'a': awgn_flag = 1; @@ -557,6 +538,10 @@ int main(int argc, char **argv) break; + case 'X': + xforms=1; + break; + case 'Y': perfect_ce=1; break; @@ -636,21 +621,20 @@ int main(int argc, char **argv) if ((transmission_mode > 1) && (n_tx != 2)) printf("n_tx must be >1 for transmission_mode %d\n",transmission_mode); -#ifdef XFORMS - fl_initialize (&argc, argv, NULL, 0, 0); - form_ue = create_lte_phy_scope_ue(); - sprintf (title, "LTE PHY SCOPE eNB"); - fl_show_form (form_ue->lte_phy_scope_ue, FL_PLACE_HOTSPOT, FL_FULLBORDER, title); - - if (!dual_stream_UE==0) { - openair_daq_vars.use_ia_receiver = 1; - fl_set_button(form_ue->button_0,1); - fl_set_object_label(form_ue->button_0, "IA Receiver ON"); - fl_set_object_color(form_ue->button_0, FL_GREEN, FL_GREEN); + if (xforms==1) { + fl_initialize (&argc, argv, NULL, 0, 0); + form_ue = create_lte_phy_scope_ue(); + sprintf (title, "LTE PHY SCOPE eNB"); + fl_show_form (form_ue->lte_phy_scope_ue, FL_PLACE_HOTSPOT, FL_FULLBORDER, title); + + if (!dual_stream_UE==0) { + openair_daq_vars.use_ia_receiver = 1; + fl_set_button(form_ue->button_0,1); + fl_set_object_label(form_ue->button_0, "IA Receiver ON"); + fl_set_object_color(form_ue->button_0, FL_GREEN, FL_GREEN); + } } -#endif - if (transmission_mode==5) { n_users = 2; printf("dual_stream_UE=%d\n", dual_stream_UE); @@ -3496,13 +3480,13 @@ PMI_FEEDBACK: // PHY_vars_UE->dlsch_ue[0][0]->harq_processes[0]->round++; } -#ifdef XFORMS - phy_scope_UE(form_ue, - PHY_vars_UE, - eNB_id, - 0,// UE_id - subframe); -#endif + if (xforms==1) { + phy_scope_UE(form_ue, + PHY_vars_UE, + eNB_id, + 0,// UE_id + subframe); + } } //round diff --git a/openair1/SIMULATION/LTE_PHY/mbmssim.c b/openair1/SIMULATION/LTE_PHY/mbmssim.c index 98d1b68a1509c4b6f230f6221e9dd6de3cc55f0d..0044b2ff5155bdbedb02c9eaaedb2ae035b21f28 100644 --- a/openair1/SIMULATION/LTE_PHY/mbmssim.c +++ b/openair1/SIMULATION/LTE_PHY/mbmssim.c @@ -173,7 +173,9 @@ int main(int argc, char **argv) lte_frame_type_t frame_type = FDD; + uint32_t Nsoft = 1827072; + /* #ifdef XFORMS FD_lte_phy_scope_ue *form_ue; char title[255]; @@ -183,6 +185,7 @@ int main(int argc, char **argv) sprintf (title, "LTE DL SCOPE UE"); fl_show_form (form_ue->lte_phy_scope_ue, FL_PLACE_HOTSPOT, FL_FULLBORDER, title); #endif + */ logInit(); number_of_cards = 1; @@ -382,14 +385,14 @@ int main(int argc, char **argv) 0); // Create transport channel structures for 2 transport blocks (MIMO) - PHY_vars_eNB->dlsch_eNB_MCH = new_eNB_dlsch(1,8,N_RB_DL,0); + PHY_vars_eNB->dlsch_eNB_MCH = new_eNB_dlsch(1,8,Nsoft,N_RB_DL,0); if (!PHY_vars_eNB->dlsch_eNB_MCH) { printf("Can't get eNB dlsch structures\n"); exit(-1); } - PHY_vars_UE->dlsch_ue_MCH[0] = new_ue_dlsch(1,8,MAX_TURBO_ITERATIONS_MBSFN,N_RB_DL,0); + PHY_vars_UE->dlsch_ue_MCH[0] = new_ue_dlsch(1,8,Nsoft,MAX_TURBO_ITERATIONS_MBSFN,N_RB_DL,0); PHY_vars_eNB->lte_frame_parms.num_MBSFN_config = 1; PHY_vars_eNB->lte_frame_parms.MBSFN_config[0].radioframeAllocationPeriod = 0; diff --git a/openair1/SIMULATION/LTE_PHY/ulsim.c b/openair1/SIMULATION/LTE_PHY/ulsim.c index 463c74c123b39cf428201d4a5c16be6d05f2308e..de40298d584c0a3e7eea7722b941f828a9d1c28e 100644 --- a/openair1/SIMULATION/LTE_PHY/ulsim.c +++ b/openair1/SIMULATION/LTE_PHY/ulsim.c @@ -52,9 +52,7 @@ #include "LAYER2/MAC/vars.h" #include "OCG_vars.h" -#ifdef XFORMS #include "PHY/TOOLS/lte_phy_scope.h" -#endif extern unsigned short dftsizes[33]; extern short *ul_ref_sigs[30][2][33]; @@ -74,12 +72,9 @@ node_desc_t *ue_data[NUMBER_OF_UE_MAX]; extern uint16_t beta_ack[16],beta_ri[16],beta_cqi[16]; //extern char* namepointer_chMag ; - - -#ifdef XFORMS +int xforms=0; FD_lte_phy_scope_enb *form_enb; char title[255]; -#endif /*the following parameters are used to control the processing times*/ double t_tx_max = -1000000000; /*!< \brief initial max process time for tx */ @@ -204,7 +199,7 @@ int main(int argc, char **argv) logInit(); - while ((c = getopt (argc, argv, "hapZEbm:n:Y:X:x:s:w:e:q:d:D:O:c:r:i:f:y:c:oA:C:R:g:N:l:S:T:QB:PI:L")) != -1) { + while ((c = getopt (argc, argv, "hapZEbm:n:Y:X:x:s:w:e:q:d:D:O:c:r:i:f:y:c:oA:C:R:g:N:l:S:T:QB:PI:LF")) != -1) { switch (c) { case 'a': channel_model = AWGN; @@ -454,6 +449,10 @@ int main(int argc, char **argv) max_turbo_iterations=atoi(optarg); break; + case 'F': + xforms=1; + break; + case 'Z': dump_table = 1; break; @@ -594,12 +593,12 @@ int main(int argc, char **argv) } -#ifdef XFORMS - fl_initialize (&argc, argv, NULL, 0, 0); - form_enb = create_lte_phy_scope_enb(); - sprintf (title, "LTE PHY SCOPE eNB"); - fl_show_form (form_enb->lte_phy_scope_enb, FL_PLACE_HOTSPOT, FL_FULLBORDER, title); -#endif + if (xforms==1) { + fl_initialize (&argc, argv, NULL, 0, 0); + form_enb = create_lte_phy_scope_enb(); + sprintf (title, "LTE PHY SCOPE eNB"); + fl_show_form (form_enb->lte_phy_scope_enb, FL_PLACE_HOTSPOT, FL_FULLBORDER, title); + } PHY_vars_UE->lte_ue_pdcch_vars[0]->crnti = 14; @@ -1354,9 +1353,9 @@ int main(int argc, char **argv) if ((errs[0]>=100) && (trials>(n_frames/2))) break; -#ifdef XFORMS - phy_scope_eNB(form_enb,PHY_vars_eNB,0); -#endif + if (xforms==1) + phy_scope_eNB(form_enb,PHY_vars_eNB,0); + /*calculate the total processing time for each packet, get the max, min, and number of packets that exceed t>3000us*/ double t_tx = (double)PHY_vars_UE->phy_proc_tx.p_time/cpu_freq_GHz/1000.0;