diff --git a/lib/include/srsran/phy/phch/pdsch_nr.h b/lib/include/srsran/phy/phch/pdsch_nr.h index b8e166105..f3326f55f 100644 --- a/lib/include/srsran/phy/phch/pdsch_nr.h +++ b/lib/include/srsran/phy/phch/pdsch_nr.h @@ -37,8 +37,6 @@ typedef struct SRSRAN_API { srsran_sch_nr_args_t sch; bool measure_evm; bool measure_time; - bool disable_zero_re_around_dc; ///< PDSCH NR sets the LLR around the DC to zero to avoid noise - uint32_t nof_zero_re_around_dc; ///< Number of RE to set to zero around DC. It uses default value if 0. } srsran_pdsch_nr_args_t; /** @@ -59,8 +57,6 @@ typedef struct SRSRAN_API { uint32_t meas_time_us; srsran_re_pattern_t dmrs_re_pattern; uint32_t nof_rvd_re; - uint32_t nof_zero_re_around_dc; ///< Sets a number of RE surrounding the center of the resource grid to zero. Set to 0 - ///< for disabling. } srsran_pdsch_nr_t; /** diff --git a/lib/src/phy/phch/pdsch_nr.c b/lib/src/phy/phch/pdsch_nr.c index a77f98879..5c184cbc7 100644 --- a/lib/src/phy/phch/pdsch_nr.c +++ b/lib/src/phy/phch/pdsch_nr.c @@ -17,9 +17,6 @@ #include "srsran/phy/mimo/precoding.h" #include "srsran/phy/modem/demod_soft.h" -///@brief Default number of zero RE around DC -#define PDSCH_NR_DEFAULT_NOF_ZERO_RE_AROUND_DC 3 - int pdsch_nr_init_common(srsran_pdsch_nr_t* q, const srsran_pdsch_nr_args_t* args) { SRSRAN_MEM_ZERO(q, srsran_pdsch_nr_t, 1); @@ -34,14 +31,6 @@ int pdsch_nr_init_common(srsran_pdsch_nr_t* q, const srsran_pdsch_nr_args_t* arg } } - if (!args->disable_zero_re_around_dc) { - if (args->nof_zero_re_around_dc == 0) { - q->nof_zero_re_around_dc = PDSCH_NR_DEFAULT_NOF_ZERO_RE_AROUND_DC; - } else { - q->nof_zero_re_around_dc = args->nof_zero_re_around_dc; - } - } - return SRSRAN_SUCCESS; } @@ -250,23 +239,7 @@ static int srsran_pdsch_nr_cp(const srsran_pdsch_nr_t* q, if (put) { count += pdsch_nr_put_rb(&sf_symbols[re_idx], &symbols[count], &rvd_mask[rb * SRSRAN_NRE]); } else { - uint32_t k_begin = rb * SRSRAN_NRE; - uint32_t k_end = (rb + 1) * SRSRAN_NRE; - uint32_t k_dc_begin = q->carrier.nof_prb * SRSRAN_NRE / 2 - q->nof_zero_re_around_dc / 2; - uint32_t k_dc_end = q->carrier.nof_prb * SRSRAN_NRE / 2 + SRSRAN_CEIL(q->nof_zero_re_around_dc, 2); - if (k_begin <= k_dc_end && k_end >= k_dc_begin && q->nof_zero_re_around_dc > 0) { - for (uint32_t k = k_begin; k < k_end; k++) { - if (!rvd_mask[k]) { - if (k >= k_dc_begin && k < k_dc_end) { - symbols[count++] = 0.0f; - } else { - symbols[count++] = sf_symbols[q->carrier.nof_prb * l * SRSRAN_NRE + k]; - } - } - } - } else { - count += pdsch_nr_get_rb(&symbols[count], &sf_symbols[re_idx], &rvd_mask[rb * SRSRAN_NRE]); - } + count += pdsch_nr_get_rb(&symbols[count], &sf_symbols[re_idx], &rvd_mask[rb * SRSRAN_NRE]); } } } diff --git a/lib/test/phy/phy_dl_nr_test.c b/lib/test/phy/phy_dl_nr_test.c index 13a2f351c..a5f61aacd 100644 --- a/lib/test/phy/phy_dl_nr_test.c +++ b/lib/test/phy/phy_dl_nr_test.c @@ -214,7 +214,6 @@ int main(int argc, char** argv) ue_dl_args.pdsch.sch.disable_simd = false; ue_dl_args.pdsch.sch.decoder_use_flooded = false; ue_dl_args.pdsch.measure_evm = true; - ue_dl_args.pdsch.disable_zero_re_around_dc = true; ue_dl_args.pdcch.disable_simd = false; ue_dl_args.pdcch.measure_evm = true; ue_dl_args.nof_max_prb = carrier.nof_prb;