Commit 621c3ce8 authored by francescomani's avatar francescomani

fix in nr_slot_fep_init_sync for SIB1

parent b3e18641
...@@ -57,7 +57,8 @@ int nr_slot_fep_init_sync(PHY_VARS_NR_UE *ue, ...@@ -57,7 +57,8 @@ int nr_slot_fep_init_sync(PHY_VARS_NR_UE *ue,
UE_nr_rxtx_proc_t *proc, UE_nr_rxtx_proc_t *proc,
unsigned char symbol, unsigned char symbol,
unsigned char Ns, unsigned char Ns,
int sample_offset); int sample_offset,
bool pbch_decoded);
int slot_fep_mbsfn(PHY_VARS_UE *phy_vars_ue, int slot_fep_mbsfn(PHY_VARS_UE *phy_vars_ue,
unsigned char l, unsigned char l,
......
...@@ -150,7 +150,8 @@ int nr_slot_fep_init_sync(PHY_VARS_NR_UE *ue, ...@@ -150,7 +150,8 @@ int nr_slot_fep_init_sync(PHY_VARS_NR_UE *ue,
UE_nr_rxtx_proc_t *proc, UE_nr_rxtx_proc_t *proc,
unsigned char symbol, unsigned char symbol,
unsigned char Ns, unsigned char Ns,
int sample_offset) int sample_offset,
bool pbch_decoded)
{ {
NR_DL_FRAME_PARMS *frame_parms = &ue->frame_parms; NR_DL_FRAME_PARMS *frame_parms = &ue->frame_parms;
NR_UE_COMMON *common_vars = &ue->common_vars; NR_UE_COMMON *common_vars = &ue->common_vars;
...@@ -160,7 +161,7 @@ int nr_slot_fep_init_sync(PHY_VARS_NR_UE *ue, ...@@ -160,7 +161,7 @@ int nr_slot_fep_init_sync(PHY_VARS_NR_UE *ue,
unsigned int nb_prefix_samples; unsigned int nb_prefix_samples;
unsigned int nb_prefix_samples0; unsigned int nb_prefix_samples0;
if (ue->is_synchronized) { if (pbch_decoded) {
nb_prefix_samples = frame_parms->nb_prefix_samples; nb_prefix_samples = frame_parms->nb_prefix_samples;
nb_prefix_samples0 = frame_parms->nb_prefix_samples0; nb_prefix_samples0 = frame_parms->nb_prefix_samples0;
} }
......
...@@ -298,7 +298,8 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc, ...@@ -298,7 +298,8 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc,
proc, proc,
i, i,
0, 0,
is*fp->samples_per_frame+ue->ssb_offset); is*fp->samples_per_frame+ue->ssb_offset,
false);
#ifdef DEBUG_INITIAL_SYNCH #ifdef DEBUG_INITIAL_SYNCH
LOG_I(PHY,"Calling sss detection (normal CP)\n"); LOG_I(PHY,"Calling sss detection (normal CP)\n");
...@@ -339,6 +340,7 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc, ...@@ -339,6 +340,7 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc,
} }
if (ret == 0) { if (ret == 0) {
// sync at symbol ue->symbol_offset // sync at symbol ue->symbol_offset
// computing the offset wrt the beginning of the frame // computing the offset wrt the beginning of the frame
int mu = fp->numerology_index; int mu = fp->numerology_index;
...@@ -543,7 +545,8 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc, ...@@ -543,7 +545,8 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc,
proc, proc,
l, // the UE PHY has no notion of the symbols to be monitored in the search space l, // the UE PHY has no notion of the symbols to be monitored in the search space
phy_pdcch_config.slot, phy_pdcch_config.slot,
is*fp->samples_per_frame+phy_pdcch_config.sfn*fp->samples_per_frame+ue->rx_offset); is*fp->samples_per_frame+phy_pdcch_config.sfn*fp->samples_per_frame+ue->rx_offset,
true);
nr_pdcch_channel_estimation(ue, nr_pdcch_channel_estimation(ue,
proc, proc,
...@@ -571,7 +574,8 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc, ...@@ -571,7 +574,8 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc,
proc, proc,
m, m,
phy_pdcch_config.slot, // same slot and offset as pdcch phy_pdcch_config.slot, // same slot and offset as pdcch
is*fp->samples_per_frame+phy_pdcch_config.sfn*fp->samples_per_frame+ue->rx_offset); is*fp->samples_per_frame+phy_pdcch_config.sfn*fp->samples_per_frame+ue->rx_offset,
true);
} }
int ret = nr_ue_pdsch_procedures(ue, int ret = nr_ue_pdsch_procedures(ue,
......
...@@ -512,7 +512,6 @@ int rrc_mac_config_req_gNB(module_id_t Mod_idP, ...@@ -512,7 +512,6 @@ int rrc_mac_config_req_gNB(module_id_t Mod_idP,
int nr_dl_slots = n; int nr_dl_slots = n;
int nr_ulstart_slot = 0; int nr_ulstart_slot = 0;
if (tdd) { if (tdd) {
nr_ulstart_slot = tdd->nrofDownlinkSlots + (tdd->nrofUplinkSymbols == 0);
nr_dl_slots = tdd->nrofDownlinkSlots + (tdd->nrofDownlinkSymbols != 0); nr_dl_slots = tdd->nrofDownlinkSlots + (tdd->nrofDownlinkSymbols != 0);
nr_ulstart_slot = tdd->nrofDownlinkSlots; nr_ulstart_slot = tdd->nrofDownlinkSlots;
nr_slots_period /= get_nb_periods_per_frame(tdd->dl_UL_TransmissionPeriodicity); nr_slots_period /= get_nb_periods_per_frame(tdd->dl_UL_TransmissionPeriodicity);
......
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