Commit 9a36c362 authored by mjoang's avatar mjoang Committed by Robert Schmidt

No need to pass dlsch_parallel into nr_ue_dlsch_procedures() as it is not...

No need to pass dlsch_parallel into nr_ue_dlsch_procedures() as it is not needed inside nr_dlsch_decoding()
parent b9a216d7
...@@ -636,7 +636,7 @@ static void UE_synch(void *arg) { ...@@ -636,7 +636,7 @@ static void UE_synch(void *arg) {
uint64_t dl_carrier, ul_carrier; uint64_t dl_carrier, ul_carrier;
nr_get_carrier_frequencies(UE, &dl_carrier, &ul_carrier); nr_get_carrier_frequencies(UE, &dl_carrier, &ul_carrier);
if (nr_initial_sync(&syncD->proc, UE, 2, get_softmodem_params()->sa, get_nrUE_params()->nr_dlsch_parallel) == 0) { if (nr_initial_sync(&syncD->proc, UE, 2, get_softmodem_params()->sa) == 0) {
freq_offset = UE->common_vars.freq_offset; // frequency offset computed with pss in initial sync freq_offset = UE->common_vars.freq_offset; // frequency offset computed with pss in initial sync
hw_slot_offset = ((UE->rx_offset<<1) / UE->frame_parms.samples_per_subframe * UE->frame_parms.slots_per_subframe) + hw_slot_offset = ((UE->rx_offset<<1) / UE->frame_parms.samples_per_subframe * UE->frame_parms.slots_per_subframe) +
round((float)((UE->rx_offset<<1) % UE->frame_parms.samples_per_subframe)/UE->frame_parms.samples_per_slot0); round((float)((UE->rx_offset<<1) % UE->frame_parms.samples_per_subframe)/UE->frame_parms.samples_per_slot0);
......
...@@ -196,8 +196,7 @@ char prefix_string[2][9] = {"NORMAL","EXTENDED"}; ...@@ -196,8 +196,7 @@ char prefix_string[2][9] = {"NORMAL","EXTENDED"};
int nr_initial_sync(UE_nr_rxtx_proc_t *proc, int nr_initial_sync(UE_nr_rxtx_proc_t *proc,
PHY_VARS_NR_UE *ue, PHY_VARS_NR_UE *ue,
int n_frames, int sa, int n_frames, int sa)
int dlsch_parallel)
{ {
int32_t sync_pos, sync_pos_frame; // k_ssb, N_ssb_crb, sync_pos2, int32_t sync_pos, sync_pos_frame; // k_ssb, N_ssb_crb, sync_pos2,
...@@ -528,8 +527,7 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc, ...@@ -528,8 +527,7 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc,
SI_PDSCH, SI_PDSCH,
ue->dlsch_SI[gnb_id], ue->dlsch_SI[gnb_id],
NULL, NULL,
&ue->dlsch_SI_errors[gnb_id], &ue->dlsch_SI_errors[gnb_id]);
dlsch_parallel);
// deactivate dlsch once dlsch proc is done // deactivate dlsch once dlsch proc is done
ue->dlsch_SI[gnb_id]->active = 0; ue->dlsch_SI[gnb_id]->active = 0;
......
...@@ -1423,8 +1423,7 @@ void generate_RIV_tables(void); ...@@ -1423,8 +1423,7 @@ void generate_RIV_tables(void);
int nr_initial_sync(UE_nr_rxtx_proc_t *proc, int nr_initial_sync(UE_nr_rxtx_proc_t *proc,
PHY_VARS_NR_UE *phy_vars_ue, PHY_VARS_NR_UE *phy_vars_ue,
int n_frames, int n_frames,
int sa, int sa);
int dlsch_parallel);
/*! /*!
\brief This function gets the carrier frequencies either from FP or command-line-set global variables, depending on the availability of the latter \brief This function gets the carrier frequencies either from FP or command-line-set global variables, depending on the availability of the latter
......
...@@ -425,8 +425,7 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue, ...@@ -425,8 +425,7 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
PDSCH_t pdsch, PDSCH_t pdsch,
NR_UE_DLSCH_t *dlsch0, NR_UE_DLSCH_t *dlsch0,
NR_UE_DLSCH_t *dlsch1, NR_UE_DLSCH_t *dlsch1,
int *dlsch_errors, int *dlsch_errors);
uint8_t dlsch_parallel);
int nr_ue_pdsch_procedures(PHY_VARS_NR_UE *ue, int nr_ue_pdsch_procedures(PHY_VARS_NR_UE *ue,
UE_nr_rxtx_proc_t *proc, UE_nr_rxtx_proc_t *proc,
......
...@@ -658,8 +658,7 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue, ...@@ -658,8 +658,7 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
PDSCH_t pdsch, PDSCH_t pdsch,
NR_UE_DLSCH_t *dlsch0, NR_UE_DLSCH_t *dlsch0,
NR_UE_DLSCH_t *dlsch1, NR_UE_DLSCH_t *dlsch1,
int *dlsch_errors, int *dlsch_errors) {
uint8_t dlsch_parallel) {
if (dlsch0==NULL) if (dlsch0==NULL)
AssertFatal(0,"dlsch0 should be defined at this level \n"); AssertFatal(0,"dlsch0 should be defined at this level \n");
...@@ -788,12 +787,9 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue, ...@@ -788,12 +787,9 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
harq_pid, harq_pid,
pdsch==PDSCH?1:0, pdsch==PDSCH?1:0,
dlsch0->harq_processes[harq_pid]->TBS>256?1:0); dlsch0->harq_processes[harq_pid]->TBS>256?1:0);
if( dlsch_parallel) {
LOG_T(PHY,"dlsch decoding is parallelized, ret = %d\n", ret); LOG_T(PHY,"dlsch decoding, ret = %d\n", ret);
}
else {
LOG_T(PHY,"Sequential dlsch decoding , ret = %d\n", ret);
}
if(ret<dlsch0->max_ldpc_iterations+1) if(ret<dlsch0->max_ldpc_iterations+1)
dec = true; dec = true;
...@@ -868,13 +864,7 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue, ...@@ -868,13 +864,7 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
harq_pid, harq_pid,
pdsch==PDSCH?1:0,//proc->decoder_switch, pdsch==PDSCH?1:0,//proc->decoder_switch,
dlsch1->harq_processes[harq_pid]->TBS>256?1:0); dlsch1->harq_processes[harq_pid]->TBS>256?1:0);
if(dlsch_parallel) { LOG_T(PHY,"CW dlsch decoding, ret1 = %d\n", ret1);
LOG_T(PHY,"CW dlsch decoding is parallelized, ret1 = %d\n", ret1);
}
else {
LOG_T(PHY,"CWW sequential dlsch decoding, ret1 = %d\n", ret1);
}
stop_meas(&ue->dlsch_decoding_stats[proc->thread_id]); stop_meas(&ue->dlsch_decoding_stats[proc->thread_id]);
if (cpumeas(CPUMEAS_GETSTATE)) { if (cpumeas(CPUMEAS_GETSTATE)) {
...@@ -1570,8 +1560,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue, ...@@ -1570,8 +1560,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,
SI_PDSCH, SI_PDSCH,
ue->dlsch_SI[gNB_id], ue->dlsch_SI[gNB_id],
NULL, NULL,
&ue->dlsch_SI_errors[gNB_id], &ue->dlsch_SI_errors[gNB_id]);
dlsch_parallel);
// deactivate dlsch once dlsch proc is done // deactivate dlsch once dlsch proc is done
ue->dlsch_SI[gNB_id]->active = 0; ue->dlsch_SI[gNB_id]->active = 0;
...@@ -1595,8 +1584,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue, ...@@ -1595,8 +1584,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,
P_PDSCH, P_PDSCH,
ue->dlsch_p[gNB_id], ue->dlsch_p[gNB_id],
NULL, NULL,
&ue->dlsch_p_errors[gNB_id], &ue->dlsch_p_errors[gNB_id]);
dlsch_parallel);
// deactivate dlsch once dlsch proc is done // deactivate dlsch once dlsch proc is done
ue->dlsch_p[gNB_id]->active = 0; ue->dlsch_p[gNB_id]->active = 0;
...@@ -1619,8 +1607,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue, ...@@ -1619,8 +1607,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,
RA_PDSCH, RA_PDSCH,
ue->dlsch_ra[gNB_id], ue->dlsch_ra[gNB_id],
NULL, NULL,
&ue->dlsch_ra_errors[gNB_id], &ue->dlsch_ra_errors[gNB_id]);
dlsch_parallel);
// deactivate dlsch once dlsch proc is done // deactivate dlsch once dlsch proc is done
ue->dlsch_ra[gNB_id]->active = 0; ue->dlsch_ra[gNB_id]->active = 0;
...@@ -1642,8 +1629,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue, ...@@ -1642,8 +1629,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,
PDSCH, PDSCH,
ue->dlsch[proc->thread_id][gNB_id][0], ue->dlsch[proc->thread_id][gNB_id][0],
ue->dlsch[proc->thread_id][gNB_id][1], ue->dlsch[proc->thread_id][gNB_id][1],
&ue->dlsch_errors[gNB_id], &ue->dlsch_errors[gNB_id]);
dlsch_parallel);
stop_meas(&ue->dlsch_procedures_stat[proc->thread_id]); stop_meas(&ue->dlsch_procedures_stat[proc->thread_id]);
if (cpumeas(CPUMEAS_GETSTATE)) { if (cpumeas(CPUMEAS_GETSTATE)) {
......
...@@ -91,8 +91,7 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue, ...@@ -91,8 +91,7 @@ bool nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
PDSCH_t pdsch, PDSCH_t pdsch,
NR_UE_DLSCH_t *dlsch0, NR_UE_DLSCH_t *dlsch0,
NR_UE_DLSCH_t *dlsch1, NR_UE_DLSCH_t *dlsch1,
int *dlsch_errors, int *dlsch_errors) {
uint8_t dlsch_parallel) {
return false; return false;
} }
...@@ -714,7 +713,7 @@ int main(int argc, char **argv) ...@@ -714,7 +713,7 @@ int main(int argc, char **argv)
} }
if (UE->is_synchronized == 0) { if (UE->is_synchronized == 0) {
UE_nr_rxtx_proc_t proc={0}; UE_nr_rxtx_proc_t proc={0};
ret = nr_initial_sync(&proc, UE, 1, 0, 0); ret = nr_initial_sync(&proc, UE, 1, 0);
printf("nr_initial_sync1 returns %d\n",ret); printf("nr_initial_sync1 returns %d\n",ret);
if (ret<0) n_errors++; if (ret<0) n_errors++;
} }
......
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