From a154bef23f42f8ed68778da89aff5e72c68a2db7 Mon Sep 17 00:00:00 2001 From: Xavier Arteaga Date: Fri, 5 Feb 2021 09:53:00 +0100 Subject: [PATCH] Added incremental phase in NR-PUSCH modulator --- lib/src/phy/ue/ue_ul_nr.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/src/phy/ue/ue_ul_nr.c b/lib/src/phy/ue/ue_ul_nr.c index 04d45507e..985f19c0f 100644 --- a/lib/src/phy/ue/ue_ul_nr.c +++ b/lib/src/phy/ue/ue_ul_nr.c @@ -11,6 +11,7 @@ */ #include "srslte/phy/ue/ue_ul_nr.h" #include "srslte/phy/utils/debug.h" +#include int srslte_ue_ul_nr_init(srslte_ue_ul_nr_t* q, cf_t* output, const srslte_ue_ul_nr_args_t* args) { @@ -108,6 +109,17 @@ int srslte_ue_ul_nr_encode_pusch(srslte_ue_ul_nr_t* q, return SRSLTE_ERROR; } + // Temporary symbol phase shift + uint32_t nof_re = SRSLTE_NRE * q->carrier.nof_prb; + for (uint32_t i = 0; i < 2; i++) { + for (uint32_t j = 0; j < 7; j++) { + srslte_vec_sc_prod_ccc(&q->sf_symbols[0][(i * 7 + j) * nof_re], + cexpf(I * (11.0f * j - 2.0f) * M_PI / 16), + &q->sf_symbols[0][(i * 7 + j) * nof_re], + nof_re); + } + } + // Generate signal srslte_ofdm_tx_sf(&q->ifft);