/* * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The OpenAirInterface Software Alliance licenses this file to You under * the OAI Public License, Version 1.0 (the "License"); you may not use this file * except in compliance with the License. * You may obtain a copy of the License at * * http://www.openairinterface.org/?page_id=698 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *------------------------------------------------------------------------------- * For more information about the OpenAirInterface (OAI) Software Alliance: * contact@openairinterface.org */ #ifndef __LTE_ESTIMATION_DEFS_NB_IOT__H__ #define __LTE_ESTIMATION_DEFS_NB_IOT__H__ #include "PHY/defs_NB_IoT.h" /* int lte_est_timing_advance(NB_IoT_DL_FRAME_PARMS *frame_parms, NB_IoT_eNB_SRS *lte_eNb_srs, unsigned int *eNb_id, unsigned char clear, unsigned char number_of_cards, 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); void lte_sync_timefreq_NB_IoT(PHY_VARS_UE_NB_IoT *ue,int band,unsigned int DL_freq); //////////////////////////////////////////////////////////////////////////////////////////////// int NB_IoT_est_timing_advance_pusch(PHY_VARS_eNB_NB_IoT* phy_vars_eNB,module_id_t UE_id); ////////// Vincent: NB-IoT specific adapted function for channel estimation //////////////////// /* int ul_channel_estimation_NB_IoT(PHY_VARS_eNB *eNB, eNB_rxtx_proc_t *proc, uint8_t eNB_id, uint8_t UE_id, unsigned char l, unsigned char Ns, uint8_t N_sc_RU, uint8_t pilot_pos1, uint8_t pilot_pos2, uint8_t cooperation_flag); */ //////////////////////////////////////////////////////////////////////////////////////////////// int16_t lte_ul_freq_offset_estimation_NB_IoT(NB_IoT_DL_FRAME_PARMS *frame_parms, int32_t *ul_ch_estimates, uint16_t nb_rb); void freq_equalization_NB_IoT(LTE_DL_FRAME_PARMS *frame_parms, int **rxdataF_comp, int **ul_ch_mag, int **ul_ch_mag_b, unsigned char symbol, unsigned short Msc_RS, unsigned char Qm); /** @} */ #endif