Commit 41dda3d3 authored by Cedric Roux's avatar Cedric Roux

integration fix: let dlsim_tm4 compile again

The variables that were duplicated per processing thread
were adapted. 'cpuf' was defined and initialized.
parent fd1e0157
...@@ -68,6 +68,7 @@ extern uint8_t interf_unaw_shift; ...@@ -68,6 +68,7 @@ extern uint8_t interf_unaw_shift;
PHY_VARS_eNB *eNB; PHY_VARS_eNB *eNB;
PHY_VARS_UE *UE; PHY_VARS_UE *UE;
double cpuf;
int otg_enabled=0; int otg_enabled=0;
/*the following parameters are used to control the processing times calculations*/ /*the following parameters are used to control the processing times calculations*/
...@@ -296,7 +297,7 @@ int main(int argc, char **argv) ...@@ -296,7 +297,7 @@ int main(int argc, char **argv)
int threequarter_fs=0; int threequarter_fs=0;
cpuf = get_cpu_freq_GHz();
opp_enabled=1; // to enable the time meas opp_enabled=1; // to enable the time meas
...@@ -867,7 +868,7 @@ int main(int argc, char **argv) ...@@ -867,7 +868,7 @@ int main(int argc, char **argv)
// bzero(r_im0[i],FRAME_LENGTH_COMPLEX_SAMPLES*sizeof(double)); // bzero(r_im0[i],FRAME_LENGTH_COMPLEX_SAMPLES*sizeof(double));
} }
UE->pdcch_vars[0]->crnti = n_rnti; UE->pdcch_vars[subframe&0x1][0]->crnti = n_rnti;
UE->transmission_mode[eNB_id]=transmission_mode; UE->transmission_mode[eNB_id]=transmission_mode;
if (UE->transmission_mode[eNB_id] !=4) if (UE->transmission_mode[eNB_id] !=4)
UE->measurements.rank[eNB_id]=0; UE->measurements.rank[eNB_id]=0;
...@@ -2087,7 +2088,8 @@ int main(int argc, char **argv) ...@@ -2087,7 +2088,8 @@ int main(int argc, char **argv)
reset_meas(&UE->dlsch_freq_offset_estimation_stats); reset_meas(&UE->dlsch_freq_offset_estimation_stats);
reset_meas(&UE->rx_dft_stats); reset_meas(&UE->rx_dft_stats);
reset_meas(&UE->dlsch_llr_stats); reset_meas(&UE->dlsch_llr_stats);
reset_meas(&UE->dlsch_decoding_stats); reset_meas(&UE->dlsch_decoding_stats[0]);
reset_meas(&UE->dlsch_decoding_stats[1]);
reset_meas(&UE->dlsch_turbo_decoding_stats); reset_meas(&UE->dlsch_turbo_decoding_stats);
reset_meas(&UE->dlsch_deinterleaving_stats); reset_meas(&UE->dlsch_deinterleaving_stats);
reset_meas(&UE->dlsch_rate_unmatching_stats); reset_meas(&UE->dlsch_rate_unmatching_stats);
...@@ -3488,9 +3490,7 @@ int main(int argc, char **argv) ...@@ -3488,9 +3490,7 @@ int main(int argc, char **argv)
UE->UE_mode[0] = PUSCH; UE->UE_mode[0] = PUSCH;
start_meas(&UE->dlsch_rx_pdcch_stats); start_meas(&UE->dlsch_rx_pdcch_stats);
rx_pdcch(&UE->common_vars, rx_pdcch(UE,
UE->pdcch_vars,
&UE->frame_parms,
trials, trials,
subframe, subframe,
0, 0,
...@@ -3500,7 +3500,7 @@ int main(int argc, char **argv) ...@@ -3500,7 +3500,7 @@ int main(int argc, char **argv)
stop_meas(&UE->dlsch_rx_pdcch_stats); stop_meas(&UE->dlsch_rx_pdcch_stats);
// overwrite number of pdcch symbols // overwrite number of pdcch symbols
UE->pdcch_vars[0]->num_pdcch_symbols = num_pdcch_symbols; UE->pdcch_vars[subframe&0x1][0]->num_pdcch_symbols = num_pdcch_symbols;
dci_cnt = dci_decoding_procedure(UE, dci_cnt = dci_decoding_procedure(UE,
dci_alloc_rx,1, dci_alloc_rx,1,
...@@ -3544,14 +3544,14 @@ int main(int argc, char **argv) ...@@ -3544,14 +3544,14 @@ int main(int argc, char **argv)
0, 0,
P_RNTI, P_RNTI,
transmission_mode<7?0:transmission_mode, transmission_mode<7?0:transmission_mode,
UE->pdcch_vars[0]->crnti_is_temporary? UE->pdcch_vars[0]->crnti: 0)==0)) { UE->pdcch_vars[subframe&0x1][0]->crnti_is_temporary? UE->pdcch_vars[subframe&0x1][0]->crnti: 0)==0)) {
dump_dci(&UE->frame_parms,&dci_alloc_rx[i]); dump_dci(&UE->frame_parms,&dci_alloc_rx[i]);
coded_bits_per_codeword[0]= get_G(&eNB->frame_parms, coded_bits_per_codeword[0]= get_G(&eNB->frame_parms,
UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->nb_rb, UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->nb_rb,
UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->rb_alloc_even, UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->rb_alloc_even,
get_Qm(UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->mcs), get_Qm(UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->mcs),
UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->Nl, UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->Nl,
UE->pdcch_vars[0]->num_pdcch_symbols, UE->pdcch_vars[subframe&0x1][0]->num_pdcch_symbols,
0, 0,
subframe, subframe,
transmission_mode>=7?transmission_mode:0); transmission_mode>=7?transmission_mode:0);
...@@ -3561,7 +3561,7 @@ int main(int argc, char **argv) ...@@ -3561,7 +3561,7 @@ int main(int argc, char **argv)
UE->dlsch[subframe&0x1][0][1]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->rb_alloc_even, UE->dlsch[subframe&0x1][0][1]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->rb_alloc_even,
get_Qm(UE->dlsch[subframe&0x1][0][1]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->mcs), get_Qm(UE->dlsch[subframe&0x1][0][1]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->mcs),
UE->dlsch[subframe&0x1][0][1]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->Nl, UE->dlsch[subframe&0x1][0][1]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->Nl,
UE->pdcch_vars[1]->num_pdcch_symbols, UE->pdcch_vars[subframe&0x1][1]->num_pdcch_symbols,
0, 0,
subframe, subframe,
transmission_mode>=7?transmission_mode:0); transmission_mode>=7?transmission_mode:0);
...@@ -3570,7 +3570,7 @@ int main(int argc, char **argv) ...@@ -3570,7 +3570,7 @@ int main(int argc, char **argv)
rate = (double)dlsch_tbs25[get_I_TBS(UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->mcs)][UE->dlsch[subframe&0x1][0][0]->nb_rb-1]/(coded_bits_per_codeword); rate = (double)dlsch_tbs25[get_I_TBS(UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->mcs)][UE->dlsch[subframe&0x1][0][0]->nb_rb-1]/(coded_bits_per_codeword);
rate*=get_Qm(UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->mcs); rate*=get_Qm(UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->mcs);
*/ */
printf("num_pdcch_symbols %d, G %d, TBS %d\n",UE->pdcch_vars[0]->num_pdcch_symbols,coded_bits_per_codeword [0],UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->TBS); printf("num_pdcch_symbols %d, G %d, TBS %d\n",UE->pdcch_vars[subframe&0x1][0]->num_pdcch_symbols,coded_bits_per_codeword [0],UE->dlsch[subframe&0x1][0][0]->harq_processes[UE->dlsch[subframe&0x1][0][0]->current_harq_pid]->TBS);
dlsch_active = 1; // what does it indicates??? dlsch_active = 1; // what does it indicates???
} else { } else {
...@@ -3591,8 +3591,8 @@ int main(int argc, char **argv) ...@@ -3591,8 +3591,8 @@ int main(int argc, char **argv)
} }
} }
} else { //dci_flag == 0 } else { //dci_flag == 0
UE->pdcch_vars[0]->crnti = n_rnti; UE->pdcch_vars[subframe&0x1][0]->crnti = n_rnti;
UE->pdcch_vars[0]->num_pdcch_symbols = num_pdcch_symbols; UE->pdcch_vars[subframe&0x1][0]->num_pdcch_symbols = num_pdcch_symbols;
if (round == 0) { if (round == 0) {
UE->dlsch[subframe&0x1][0][0]->harq_processes[0]->first_tx=1; UE->dlsch[subframe&0x1][0][0]->harq_processes[0]->first_tx=1;
UE->dlsch[subframe&0x1][0][1]->harq_processes[0]->first_tx=1; UE->dlsch[subframe&0x1][0][1]->harq_processes[0]->first_tx=1;
...@@ -3613,7 +3613,7 @@ int main(int argc, char **argv) ...@@ -3613,7 +3613,7 @@ int main(int argc, char **argv)
0, 0,
P_RNTI, P_RNTI,
transmission_mode<7?0:transmission_mode, transmission_mode<7?0:transmission_mode,
UE->pdcch_vars[0]->crnti_is_temporary? UE->pdcch_vars[0]->crnti: 0); UE->pdcch_vars[subframe&0x1][0]->crnti_is_temporary? UE->pdcch_vars[subframe&0x1][0]->crnti: 0);
break; break;
case 3: case 3:
...@@ -3631,7 +3631,7 @@ int main(int argc, char **argv) ...@@ -3631,7 +3631,7 @@ int main(int argc, char **argv)
0, 0,
P_RNTI, P_RNTI,
transmission_mode<7?0:transmission_mode, transmission_mode<7?0:transmission_mode,
UE->pdcch_vars[0]->crnti_is_temporary? UE->pdcch_vars[0]->crnti: 0); UE->pdcch_vars[subframe&0x1][0]->crnti_is_temporary? UE->pdcch_vars[subframe&0x1][0]->crnti: 0);
//printf("Rate: TM3 (after) round %d (%d) first_tx %d\n",round,UE->dlsch[subframe&0x1][0][0]->harq_processes[0]->round,UE->dlsch[subframe&0x1][0][0]->harq_processes[0]->first_tx); //printf("Rate: TM3 (after) round %d (%d) first_tx %d\n",round,UE->dlsch[subframe&0x1][0][0]->harq_processes[0]->round,UE->dlsch[subframe&0x1][0][0]->harq_processes[0]->first_tx);
break; break;
case 4: case 4:
...@@ -3647,7 +3647,7 @@ int main(int argc, char **argv) ...@@ -3647,7 +3647,7 @@ int main(int argc, char **argv)
0, 0,
P_RNTI, P_RNTI,
transmission_mode<7?0:transmission_mode, transmission_mode<7?0:transmission_mode,
UE->pdcch_vars[0]->crnti_is_temporary? UE->pdcch_vars[0]->crnti: 0); UE->pdcch_vars[subframe&0x1][0]->crnti_is_temporary? UE->pdcch_vars[subframe&0x1][0]->crnti: 0);
break; break;
case 5: case 5:
...@@ -3664,7 +3664,7 @@ int main(int argc, char **argv) ...@@ -3664,7 +3664,7 @@ int main(int argc, char **argv)
0, 0,
P_RNTI, P_RNTI,
transmission_mode<7?0:transmission_mode, transmission_mode<7?0:transmission_mode,
UE->pdcch_vars[0]->crnti_is_temporary? UE->pdcch_vars[0]->crnti: 0); UE->pdcch_vars[subframe&0x1][0]->crnti_is_temporary? UE->pdcch_vars[subframe&0x1][0]->crnti: 0);
break; break;
} }
dlsch_active = 1; dlsch_active = 1;
...@@ -3690,7 +3690,7 @@ int main(int argc, char **argv) ...@@ -3690,7 +3690,7 @@ int main(int argc, char **argv)
start_meas(&UE->dlsch_llr_stats); start_meas(&UE->dlsch_llr_stats);
for (m=UE->pdcch_vars[0]->num_pdcch_symbols; m<pilot2; m++) { for (m=UE->pdcch_vars[subframe&0x1][0]->num_pdcch_symbols; m<pilot2; m++) {
if (rx_pdsch(UE, if (rx_pdsch(UE,
PDSCH, PDSCH,
eNB_id, eNB_id,
...@@ -3698,7 +3698,7 @@ int main(int argc, char **argv) ...@@ -3698,7 +3698,7 @@ int main(int argc, char **argv)
0, 0,
subframe, subframe,
m, m,
(m==UE->pdcch_vars[0]->num_pdcch_symbols)?1:0, (m==UE->pdcch_vars[subframe&0x1][0]->num_pdcch_symbols)?1:0,
rx_type, rx_type,
i_mod, i_mod,
UE->dlsch[subframe&0x1][0][0]->current_harq_pid)==-1){ UE->dlsch[subframe&0x1][0][0]->current_harq_pid)==-1){
...@@ -3849,7 +3849,7 @@ int main(int argc, char **argv) ...@@ -3849,7 +3849,7 @@ int main(int argc, char **argv)
subframe<<1); subframe<<1);
stop_meas(&UE->dlsch_unscrambling_stats); stop_meas(&UE->dlsch_unscrambling_stats);
start_meas(&UE->dlsch_decoding_stats); start_meas(&UE->dlsch_decoding_stats[subframe&0x1]);
ret[TB] = dlsch_decoding(UE, ret[TB] = dlsch_decoding(UE,
UE->pdsch_vars[subframe&0x1][eNB_id]->llr[UE->dlsch[subframe&0x1][0][TB]->harq_processes[UE->dlsch[subframe&0x1][0][TB]->current_harq_pid]->codeword], UE->pdsch_vars[subframe&0x1][eNB_id]->llr[UE->dlsch[subframe&0x1][0][TB]->harq_processes[UE->dlsch[subframe&0x1][0][TB]->current_harq_pid]->codeword],
&UE->frame_parms, &UE->frame_parms,
...@@ -3859,7 +3859,7 @@ int main(int argc, char **argv) ...@@ -3859,7 +3859,7 @@ int main(int argc, char **argv)
subframe, subframe,
UE->dlsch[subframe&0x1][0][TB]->current_harq_pid, UE->dlsch[subframe&0x1][0][TB]->current_harq_pid,
1,llr8_flag); 1,llr8_flag);
stop_meas(&UE->dlsch_decoding_stats); stop_meas(&UE->dlsch_decoding_stats[subframe&0x1]);
#ifdef DEBUG_HARQ #ifdef DEBUG_HARQ
printf("[DLSIM] ret[%d] = %d\n", TB, ret[TB]); printf("[DLSIM] ret[%d] = %d\n", TB, ret[TB]);
#endif #endif
...@@ -4208,7 +4208,7 @@ int main(int argc, char **argv) ...@@ -4208,7 +4208,7 @@ int main(int argc, char **argv)
subframe<<1); subframe<<1);
stop_meas(&UE->dlsch_unscrambling_stats); stop_meas(&UE->dlsch_unscrambling_stats);
start_meas(&UE->dlsch_decoding_stats); start_meas(&UE->dlsch_decoding_stats[subframe&0x1]);
ret[1] = dlsch_decoding(UE, ret[1] = dlsch_decoding(UE,
UE->pdsch_vars[subframe&0x1][eNB_id]->llr[UE->dlsch[subframe&0x1][0][1]->harq_processes[UE->dlsch[subframe&0x1][0][1]->current_harq_pid]->codeword], UE->pdsch_vars[subframe&0x1][eNB_id]->llr[UE->dlsch[subframe&0x1][0][1]->harq_processes[UE->dlsch[subframe&0x1][0][1]->current_harq_pid]->codeword],
...@@ -4219,7 +4219,7 @@ int main(int argc, char **argv) ...@@ -4219,7 +4219,7 @@ int main(int argc, char **argv)
subframe, subframe,
UE->dlsch[subframe&0x1][0][1]->current_harq_pid, UE->dlsch[subframe&0x1][0][1]->current_harq_pid,
1,llr8_flag); 1,llr8_flag);
stop_meas(&UE->dlsch_decoding_stats); stop_meas(&UE->dlsch_decoding_stats[subframe&0x1]);
#ifdef DEBUG_HARQ #ifdef DEBUG_HARQ
printf("[DLSIM] Decoding TB1 in SIC: ret[1] = %d, round sic %d\n", ret[1], round_sic); printf("[DLSIM] Decoding TB1 in SIC: ret[1] = %d, round sic %d\n", ret[1], round_sic);
...@@ -4419,11 +4419,11 @@ int main(int argc, char **argv) ...@@ -4419,11 +4419,11 @@ int main(int argc, char **argv)
*/ */
//pdcch_vars //pdcch_vars
write_output("pdcchF0_ext.m","pdcchF_ext", UE->pdcch_vars[eNB_id]->rxdataF_ext[0],2*3*UE->frame_parms.ofdm_symbol_size,1,1); write_output("pdcchF0_ext.m","pdcchF_ext", UE->pdcch_vars[subframe&0x1][eNB_id]->rxdataF_ext[0],2*3*UE->frame_parms.ofdm_symbol_size,1,1);
write_output("pdcch00_ch0_ext.m","pdcch00_ch0_ext",UE->pdcch_vars[eNB_id]->dl_ch_estimates_ext[0],300*3,1,1); write_output("pdcch00_ch0_ext.m","pdcch00_ch0_ext",UE->pdcch_vars[subframe&0x1][eNB_id]->dl_ch_estimates_ext[0],300*3,1,1);
write_output("pdcch_rxF_comp0.m","pdcch0_rxF_comp0",UE->pdcch_vars[eNB_id]->rxdataF_comp[0],4*300,1,1); write_output("pdcch_rxF_comp0.m","pdcch0_rxF_comp0",UE->pdcch_vars[subframe&0x1][eNB_id]->rxdataF_comp[0],4*300,1,1);
write_output("pdcch_rxF_llr.m","pdcch_llr",UE->pdcch_vars[eNB_id]->llr,2400,1,4); write_output("pdcch_rxF_llr.m","pdcch_llr",UE->pdcch_vars[subframe&0x1][eNB_id]->llr,2400,1,4);
if (round == 3) exit(-1); if (round == 3) exit(-1);
} }
...@@ -4534,7 +4534,7 @@ int main(int argc, char **argv) ...@@ -4534,7 +4534,7 @@ int main(int argc, char **argv)
double t_rx = (double)UE->phy_proc_rx[subframe&0x1].p_time/cpu_freq_GHz/1000.0; double t_rx = (double)UE->phy_proc_rx[subframe&0x1].p_time/cpu_freq_GHz/1000.0;
double t_rx_fft = (double)UE->ofdm_demod_stats.p_time/cpu_freq_GHz/1000.0; double t_rx_fft = (double)UE->ofdm_demod_stats.p_time/cpu_freq_GHz/1000.0;
double t_rx_demod = (double)UE->dlsch_rx_pdcch_stats.p_time/cpu_freq_GHz/1000.0; double t_rx_demod = (double)UE->dlsch_rx_pdcch_stats.p_time/cpu_freq_GHz/1000.0;
double t_rx_dec = (double)UE->dlsch_decoding_stats.p_time/cpu_freq_GHz/1000.0; double t_rx_dec = (double)UE->dlsch_decoding_stats[subframe&0x1].p_time/cpu_freq_GHz/1000.0;
if (t_tx > t_tx_max) if (t_tx > t_tx_max)
...@@ -4891,12 +4891,12 @@ int main(int argc, char **argv) ...@@ -4891,12 +4891,12 @@ int main(int argc, char **argv)
printf("|__ Statistcs std: %fus median %fus q1 %fus q3 %fus \n",std_phy_proc_rx_demod, rx_demod_median, rx_demod_q1, rx_demod_q3); printf("|__ Statistcs std: %fus median %fus q1 %fus q3 %fus \n",std_phy_proc_rx_demod, rx_demod_median, rx_demod_q1, rx_demod_q3);
printf("DLSCH unscrambling time :%f us (%d trials)\n",(double)UE->dlsch_unscrambling_stats.diff/UE->dlsch_unscrambling_stats.trials/cpu_freq_GHz/1000.0, printf("DLSCH unscrambling time :%f us (%d trials)\n",(double)UE->dlsch_unscrambling_stats.diff/UE->dlsch_unscrambling_stats.trials/cpu_freq_GHz/1000.0,
UE->dlsch_unscrambling_stats.trials); UE->dlsch_unscrambling_stats.trials);
std_phy_proc_rx_dec = sqrt((double)UE->dlsch_decoding_stats.diff_square/pow(cpu_freq_GHz,2)/pow(1000, std_phy_proc_rx_dec = sqrt((double)UE->dlsch_decoding_stats[subframe&0x1].diff_square/pow(cpu_freq_GHz,2)/pow(1000,
2)/UE->dlsch_decoding_stats.trials - pow((double)UE->dlsch_decoding_stats.diff/UE->dlsch_decoding_stats.trials/cpu_freq_GHz/1000,2)); 2)/UE->dlsch_decoding_stats[subframe&0x1].trials - pow((double)UE->dlsch_decoding_stats[subframe&0x1].diff/UE->dlsch_decoding_stats[subframe&0x1].trials/cpu_freq_GHz/1000,2));
printf("DLSCH Decoding time (%02.2f Mbit/s, avg iter %1.2f) :%f us (%d trials, max %f)\n", printf("DLSCH Decoding time (%02.2f Mbit/s, avg iter %1.2f) :%f us (%d trials, max %f)\n",
eNB->dlsch[0][0]->harq_processes[0]->TBS/1000.0,(double)avg_iter[0]/iter_trials[0], eNB->dlsch[0][0]->harq_processes[0]->TBS/1000.0,(double)avg_iter[0]/iter_trials[0],
(double)UE->dlsch_decoding_stats.diff/UE->dlsch_decoding_stats.trials/cpu_freq_GHz/1000.0,UE->dlsch_decoding_stats.trials, (double)UE->dlsch_decoding_stats[subframe&0x1].diff/UE->dlsch_decoding_stats[subframe&0x1].trials/cpu_freq_GHz/1000.0,UE->dlsch_decoding_stats[subframe&0x1].trials,
(double)UE->dlsch_decoding_stats.max/cpu_freq_GHz/1000.0); (double)UE->dlsch_decoding_stats[subframe&0x1].max/cpu_freq_GHz/1000.0);
printf("|__ Statistcs std: %fus median %fus q1 %fus q3 %fus \n",std_phy_proc_rx_dec, rx_dec_median, rx_dec_q1, rx_dec_q3); printf("|__ Statistcs std: %fus median %fus q1 %fus q3 %fus \n",std_phy_proc_rx_dec, rx_dec_median, rx_dec_q1, rx_dec_q3);
printf("|__ DLSCH Rate Unmatching :%f us (%d trials)\n", printf("|__ DLSCH Rate Unmatching :%f us (%d trials)\n",
(double)UE->dlsch_rate_unmatching_stats.diff/UE->dlsch_rate_unmatching_stats.trials/cpu_freq_GHz/1000.0,UE->dlsch_rate_unmatching_stats.trials); (double)UE->dlsch_rate_unmatching_stats.diff/UE->dlsch_rate_unmatching_stats.trials/cpu_freq_GHz/1000.0,UE->dlsch_rate_unmatching_stats.trials);
...@@ -5194,7 +5194,7 @@ int main(int argc, char **argv) ...@@ -5194,7 +5194,7 @@ int main(int argc, char **argv)
UE->dlsch_rx_pdcch_stats.trials, UE->dlsch_rx_pdcch_stats.trials,
UE->dlsch_llr_stats.trials, UE->dlsch_llr_stats.trials,
UE->dlsch_unscrambling_stats.trials, UE->dlsch_unscrambling_stats.trials,
UE->dlsch_decoding_stats.trials UE->dlsch_decoding_stats[subframe&0x1].trials
); );
fprintf(time_meas_fd,"%f;%f;%f;%f;%f;%f;%f;%f;%f;%f;%f;", fprintf(time_meas_fd,"%f;%f;%f;%f;%f;%f;%f;%f;%f;%f;%f;",
get_time_meas_us(&eNB->phy_proc_tx), get_time_meas_us(&eNB->phy_proc_tx),
...@@ -5207,7 +5207,7 @@ int main(int argc, char **argv) ...@@ -5207,7 +5207,7 @@ int main(int argc, char **argv)
get_time_meas_us(&UE->dlsch_rx_pdcch_stats), get_time_meas_us(&UE->dlsch_rx_pdcch_stats),
3*get_time_meas_us(&UE->dlsch_llr_stats), 3*get_time_meas_us(&UE->dlsch_llr_stats),
get_time_meas_us(&UE->dlsch_unscrambling_stats), get_time_meas_us(&UE->dlsch_unscrambling_stats),
get_time_meas_us(&UE->dlsch_decoding_stats) get_time_meas_us(&UE->dlsch_decoding_stats[subframe&0x1])
); );
//fprintf(time_meas_fd,"eNB_PROC_TX_STD;eNB_PROC_TX_MAX;eNB_PROC_TX_MIN;eNB_PROC_TX_MED;eNB_PROC_TX_Q1;eNB_PROC_TX_Q3;eNB_PROC_TX_DROPPED;\n"); //fprintf(time_meas_fd,"eNB_PROC_TX_STD;eNB_PROC_TX_MAX;eNB_PROC_TX_MIN;eNB_PROC_TX_MED;eNB_PROC_TX_Q1;eNB_PROC_TX_Q3;eNB_PROC_TX_DROPPED;\n");
fprintf(time_meas_fd,"%f;%f;%f;%f;%f;%f;%d;", std_phy_proc_tx, t_tx_max, t_tx_min, tx_median, tx_q1, tx_q3, n_tx_dropped); fprintf(time_meas_fd,"%f;%f;%f;%f;%f;%f;%d;", std_phy_proc_tx, t_tx_max, t_tx_min, tx_median, tx_q1, tx_q3, n_tx_dropped);
...@@ -5247,7 +5247,7 @@ int main(int argc, char **argv) ...@@ -5247,7 +5247,7 @@ int main(int argc, char **argv)
UE->dlsch_rx_pdcch_stats.trials, UE->dlsch_rx_pdcch_stats.trials,
UE->dlsch_llr_stats.trials, UE->dlsch_llr_stats.trials,
UE->dlsch_unscrambling_stats.trials, UE->dlsch_unscrambling_stats.trials,
UE->dlsch_decoding_stats.trials); UE->dlsch_decoding_stats[subframe&0x1].trials);
*/ */
printf("[passed] effective rate : %f (%2.1f%%,%f)): log and break \n",rate[0]*effective_rate, 100*effective_rate, rate[0]); printf("[passed] effective rate : %f (%2.1f%%,%f)): log and break \n",rate[0]*effective_rate, 100*effective_rate, rate[0]);
break; break;
......
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