git-svn-id: http://svn.eurecom.fr/openair4G/trunk@5453 818b1a75-f10b-46b9-bf7c-635c3b92a50f
This commit is contained in:
@@ -943,7 +943,7 @@ static void *eNB_thread(void *arg)
|
|||||||
if (fs4_test==0)
|
if (fs4_test==0)
|
||||||
{
|
{
|
||||||
if (multi_thread == 0) {
|
if (multi_thread == 0) {
|
||||||
phy_procedures_eNB_lte (last_slot, next_slot, PHY_vars_eNB_g[0], 0, no_relay,NULL);
|
phy_procedures_eNB_lte ((slot+1)>>1, PHY_vars_eNB_g[0], 0, no_relay,NULL);
|
||||||
slot_offset_F = (next_slot)*
|
slot_offset_F = (next_slot)*
|
||||||
(PHY_vars_eNB_g[0]->lte_frame_parms.ofdm_symbol_size)*
|
(PHY_vars_eNB_g[0]->lte_frame_parms.ofdm_symbol_size)*
|
||||||
((PHY_vars_eNB_g[0]->lte_frame_parms.Ncp==1) ? 6 : 7);
|
((PHY_vars_eNB_g[0]->lte_frame_parms.Ncp==1) ? 6 : 7);
|
||||||
@@ -1009,7 +1009,7 @@ static void *eNB_thread(void *arg)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
LOG_W(PHY,"[eNB] Frame %d, eNB proc %d busy!!\n",PHY_vars_eNB_g[0]->frame,sf);
|
LOG_W(PHY,"[eNB] Frame %d, eNB proc %d busy!!\n",PHY_vars_eNB_g[0]->proc[sf].frame_tx,sf);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -158,7 +158,7 @@ static void * ulsch_thread(void *param) {
|
|||||||
|
|
||||||
if (oai_exit) break;
|
if (oai_exit) break;
|
||||||
|
|
||||||
LOG_D(PHY,"[SCHED][ULSCH] Frame %d: Calling ulsch_decoding with ulsch_thread_index = %d\n",phy_vars_eNB->frame,ulsch_thread_index);
|
LOG_D(PHY,"[SCHED][ULSCH] Frame %d: Calling ulsch_decoding with ulsch_thread_index = %d\n",phy_vars_eNB->proc[0].frame_tx,ulsch_thread_index);
|
||||||
|
|
||||||
time_in = rt_get_time_ns();
|
time_in = rt_get_time_ns();
|
||||||
|
|
||||||
|
|||||||
@@ -132,6 +132,9 @@ void do_DL_sig(double **r_re0,double **r_im0,
|
|||||||
uint8_t nb_antennas_rx = eNB2UE[0][0]->nb_rx; // number of rx antennas at UE
|
uint8_t nb_antennas_rx = eNB2UE[0][0]->nb_rx; // number of rx antennas at UE
|
||||||
uint8_t nb_antennas_tx = eNB2UE[0][0]->nb_tx; // number of tx antennas at eNB
|
uint8_t nb_antennas_tx = eNB2UE[0][0]->nb_tx; // number of tx antennas at eNB
|
||||||
|
|
||||||
|
int subframe_sched = ((next_slot>>1) == 0) ? 9 : ((next_slot>>1)-1);
|
||||||
|
|
||||||
|
|
||||||
if (next_slot==0)
|
if (next_slot==0)
|
||||||
hold_channel = 0;
|
hold_channel = 0;
|
||||||
else
|
else
|
||||||
@@ -248,7 +251,7 @@ void do_DL_sig(double **r_re0,double **r_im0,
|
|||||||
start_meas(&PHY_vars_eNB_g[eNB_id]->ofdm_mod_stats);
|
start_meas(&PHY_vars_eNB_g[eNB_id]->ofdm_mod_stats);
|
||||||
do_OFDM_mod(PHY_vars_eNB_g[eNB_id]->lte_eNB_common_vars.txdataF[0],
|
do_OFDM_mod(PHY_vars_eNB_g[eNB_id]->lte_eNB_common_vars.txdataF[0],
|
||||||
PHY_vars_eNB_g[eNB_id]->lte_eNB_common_vars.txdata[0],
|
PHY_vars_eNB_g[eNB_id]->lte_eNB_common_vars.txdata[0],
|
||||||
((next_slot==19) ? -1 : 0 ) + PHY_vars_eNB_g[eNB_id]->frame,next_slot,
|
PHY_vars_eNB_g[eNB_id]->proc[subframe_sched].frame_tx,next_slot,
|
||||||
&PHY_vars_eNB_g[eNB_id]->lte_frame_parms);
|
&PHY_vars_eNB_g[eNB_id]->lte_frame_parms);
|
||||||
stop_meas(&PHY_vars_eNB_g[eNB_id]->ofdm_mod_stats);
|
stop_meas(&PHY_vars_eNB_g[eNB_id]->ofdm_mod_stats);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -423,6 +423,7 @@ void *l2l1_task(void *args_p) {
|
|||||||
lte_subframe_t direction;
|
lte_subframe_t direction;
|
||||||
|
|
||||||
char fname[64], vname[64];
|
char fname[64], vname[64];
|
||||||
|
int sf;
|
||||||
|
|
||||||
#ifdef XFORMS
|
#ifdef XFORMS
|
||||||
// current status is that every UE has a DL scope for a SINGLE eNB (eNB_id=0)
|
// current status is that every UE has a DL scope for a SINGLE eNB (eNB_id=0)
|
||||||
@@ -448,6 +449,14 @@ void *l2l1_task(void *args_p) {
|
|||||||
char eNB_stats_th_filename[255];
|
char eNB_stats_th_filename[255];
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
for (eNB_inst=0;eNB_inst<NB_eNB_INST;eNB_inst++) {
|
||||||
|
for (sf=0;sf<10;sf++) {
|
||||||
|
PHY_vars_eNB_g[eNB_inst]->proc[sf].frame_tx = 0;
|
||||||
|
PHY_vars_eNB_g[eNB_inst]->proc[sf].frame_rx = 0;
|
||||||
|
}
|
||||||
|
PHY_vars_eNB_g[eNB_inst]->proc[0].frame_rx = 1023;
|
||||||
|
PHY_vars_eNB_g[eNB_inst]->proc[9].frame_tx = 1;
|
||||||
|
}
|
||||||
#ifdef XFORMS
|
#ifdef XFORMS
|
||||||
xargv[0] = xname;
|
xargv[0] = xname;
|
||||||
fl_initialize (&xargc, xargv, NULL, 0, 0);
|
fl_initialize (&xargc, xargv, NULL, 0, 0);
|
||||||
@@ -699,7 +708,8 @@ void *l2l1_task(void *args_p) {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// PHY_vars_eNB_g[eNB_id]->frame = frame;
|
// PHY_vars_eNB_g[eNB_id]->frame = frame;
|
||||||
phy_procedures_eNB_lte (last_slot, next_slot, PHY_vars_eNB_g[eNB_inst], abstraction_flag, no_relay, NULL);
|
if ((slot&1) == 0)
|
||||||
|
phy_procedures_eNB_lte (slot>>1,PHY_vars_eNB_g[eNB_inst], abstraction_flag, no_relay, NULL);
|
||||||
|
|
||||||
#ifdef PRINT_STATS
|
#ifdef PRINT_STATS
|
||||||
if(last_slot==9 && frame%10==0)
|
if(last_slot==9 && frame%10==0)
|
||||||
@@ -839,7 +849,7 @@ void *l2l1_task(void *args_p) {
|
|||||||
// RN == eNB
|
// RN == eNB
|
||||||
LOG_D(EMU,"[RN %d] PHY procedures eNB %d for frame %d, slot %d (subframe TX %d, RX %d)\n",
|
LOG_D(EMU,"[RN %d] PHY procedures eNB %d for frame %d, slot %d (subframe TX %d, RX %d)\n",
|
||||||
RN_id, eNB_inst, frame, slot, next_slot >> 1,last_slot>>1);
|
RN_id, eNB_inst, frame, slot, next_slot >> 1,last_slot>>1);
|
||||||
phy_procedures_eNB_lte (last_slot, next_slot, PHY_vars_eNB_g[eNB_inst], abstraction_flag,
|
phy_procedures_eNB_lte(slot>>1, PHY_vars_eNB_g[eNB_inst], abstraction_flag,
|
||||||
r_type, PHY_vars_RN_g[RN_id]);
|
r_type, PHY_vars_RN_g[RN_id]);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|||||||
Reference in New Issue
Block a user