Commit ba9e69b5 authored by Vincent Savaux's avatar Vincent Savaux

Adapt time synchro to NB-IoT

parent 1383a49c
...@@ -1045,6 +1045,7 @@ set(PHY_SRC ...@@ -1045,6 +1045,7 @@ set(PHY_SRC
${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/freq_equalization.c ${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/freq_equalization.c
${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/freq_equalization_NB_IoT.c ${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/freq_equalization_NB_IoT.c
${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/lte_sync_time.c ${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/lte_sync_time.c
${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/lte_sync_time_NB_IoT.c
${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/lte_sync_timefreq.c ${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/lte_sync_timefreq.c
${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/lte_adjust_sync.c ${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/lte_adjust_sync.c
${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/lte_adjust_sync_NB_IoT.c ${OPENAIR1_DIR}/PHY/LTE_ESTIMATION/lte_adjust_sync_NB_IoT.c
......
...@@ -33,6 +33,19 @@ int lte_est_timing_advance(NB_IoT_DL_FRAME_PARMS *frame_parms, ...@@ -33,6 +33,19 @@ int lte_est_timing_advance(NB_IoT_DL_FRAME_PARMS *frame_parms,
short coef); short coef);
*/ */
////////// Vincent: NB-IoT DL synchronization //////////////////////////////////////////////////
int lte_sync_time_init_NB_IoT(NB_IoT_DL_FRAME_PARMS *frame_parms );
void lte_sync_time_free_NB_IoT(void);
int lte_sync_time_NB_IoT(int **rxdata, ///rx data in time domain
NB_IoT_DL_FRAME_PARMS *frame_parms,
int *eNB_id);
////////////////////////////////////////////////////////////////////////////////////////////////
int NB_IoT_est_timing_advance_pusch(PHY_VARS_eNB_NB_IoT* phy_vars_eNB,module_id_t UE_id); int NB_IoT_est_timing_advance_pusch(PHY_VARS_eNB_NB_IoT* phy_vars_eNB,module_id_t UE_id);
...@@ -61,10 +74,10 @@ int16_t lte_ul_freq_offset_estimation_NB_IoT(NB_IoT_DL_FRAME_PARMS *frame_parms, ...@@ -61,10 +74,10 @@ int16_t lte_ul_freq_offset_estimation_NB_IoT(NB_IoT_DL_FRAME_PARMS *frame_parms,
uint16_t nb_rb); uint16_t nb_rb);
void freq_equalization_NB_IoT(NB_IoT_DL_FRAME_PARMS *frame_parms, void freq_equalization_NB_IoT(NB_IoT_DL_FRAME_PARMS *frame_parms,
int **rxdataF_comp, int **rxdataF_comp,
int **ul_ch_mag, int **ul_ch_mag,
int **ul_ch_mag_b, int **ul_ch_mag_b,
unsigned char symbol, unsigned char symbol,
unsigned short Msc_RS, unsigned short Msc_RS,
unsigned char Qm); unsigned char Qm);
......
This diff is collapsed.
...@@ -4138,17 +4138,17 @@ unsigned short dlsch_extract_rbs_single_NB_IoT(int **rxdataF, ...@@ -4138,17 +4138,17 @@ unsigned short dlsch_extract_rbs_single_NB_IoT(int **rxdataF,
//dl_ch0++; //dl_ch0++;
} }
// PBCH // // PBCH
if (subframe==0) { // if (subframe==0) {
rb_alloc_ind = 0; // rb_alloc_ind = 0;
} // }
//SSS //NSSS subframe
if (subframe==0 && frame%2==0) { if (subframe==9 && frame%2==0) {
rb_alloc_ind = 0; rb_alloc_ind = 0;
} }
//PSS //NPSS subframe
if (subframe==5) { if (subframe==5) {
rb_alloc_ind = 0; rb_alloc_ind = 0;
} }
......
...@@ -58,18 +58,20 @@ extern PHY_VARS_eNB_NB_IoT * PHY_vars_eNB_NB_IoT_g[MAX_eNB_NB_IoT][MAX_NUM_CCs]; ...@@ -58,18 +58,20 @@ extern PHY_VARS_eNB_NB_IoT * PHY_vars_eNB_NB_IoT_g[MAX_eNB_NB_IoT][MAX_NUM_CCs];
//extern MAC_xface_NB_IoT *mac_xface_NB_IoT; //extern MAC_xface_NB_IoT *mac_xface_NB_IoT;
extern IF_Module_t *if_inst; extern IF_Module_t *if_inst;
/*
extern short primary_synch0[144];
extern short primary_synch_NB_IoT[264];
/*
extern short primary_synch1[144]; extern short primary_synch1[144];
extern short primary_synch2[144]; extern short primary_synch2[144];
extern unsigned char primary_synch0_tab[72]; extern unsigned char primary_synch0_tab[72];
extern unsigned char primary_synch1_tab[72]; extern unsigned char primary_synch1_tab[72];
extern unsigned char primary_synch2_tab[72]; extern unsigned char primary_synch2_tab[72]; */
extern int16_t *primary_synch0_time; //!< index: [0..ofdm_symbol_size*2[ extern int16_t *primary_synch0_time_NB_IoT; //!< index: [0..ofdm_symbol_size*2[
extern int16_t *primary_synch1_time; //!< index: [0..ofdm_symbol_size*2[ // extern int16_t *primary_synch1_time; //!< index: [0..ofdm_symbol_size*2[
extern int16_t *primary_synch2_time; //!< index: [0..ofdm_symbol_size*2[ // extern int16_t *primary_synch2_time; //!< index: [0..ofdm_symbol_size*2[
extern int *sync_corr_ue0; //!< index [0..10*samples_per_tti[ extern int *sync_corr_ue0_NB_IoT; //!< index [0..10*samples_per_tti[
/*
extern int *sync_corr_ue1; //!< index [0..10*samples_per_tti[ extern int *sync_corr_ue1; //!< index [0..10*samples_per_tti[
extern int *sync_corr_ue2; //!< index [0..10*samples_per_tti[ extern int *sync_corr_ue2; //!< index [0..10*samples_per_tti[
......
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