Disable smoothing filter for NR PDCCH DMRS

master
Xavier Arteaga 4 years ago committed by Xavier Arteaga
parent 9f54c6ae6d
commit 22239b29c5

@ -29,6 +29,7 @@
/// @brief Enables interpolation at CCE frequency bandwidth to avoid interference with adjacent PDCCH DMRS /// @brief Enables interpolation at CCE frequency bandwidth to avoid interference with adjacent PDCCH DMRS
#define DMRS_PDCCH_INTERPOLATE_GROUP 1 #define DMRS_PDCCH_INTERPOLATE_GROUP 1
#define DMRS_PDCCH_SMOOTH_FILTER 0
static uint32_t dmrs_pdcch_get_cinit(uint32_t slot_idx, uint32_t symbol_idx, uint32_t n_id) static uint32_t dmrs_pdcch_get_cinit(uint32_t slot_idx, uint32_t symbol_idx, uint32_t n_id)
{ {
@ -361,6 +362,7 @@ int srsran_dmrs_pdcch_estimate(srsran_dmrs_pdcch_estimator_t* q,
uint32_t group_size = NOF_PILOTS_X_FREQ_RES / q->coreset.duration; uint32_t group_size = NOF_PILOTS_X_FREQ_RES / q->coreset.duration;
for (uint32_t l = 0; l < q->coreset.duration; l++) { for (uint32_t l = 0; l < q->coreset.duration; l++) {
for (uint32_t j = 0; j < group_count; j++) { for (uint32_t j = 0; j < group_count; j++) {
#if DMRS_PDCCH_SMOOTH_FILTER
cf_t tmp[NOF_PILOTS_X_FREQ_RES]; cf_t tmp[NOF_PILOTS_X_FREQ_RES];
// Smoothing filter group // Smoothing filter group
@ -368,13 +370,20 @@ int srsran_dmrs_pdcch_estimate(srsran_dmrs_pdcch_estimator_t* q,
srsran_interp_linear_offset( srsran_interp_linear_offset(
&q->interpolator, tmp, &q->ce[SRSRAN_NRE * q->coreset_bw * l + j * group_size * 4], 1, 3); &q->interpolator, tmp, &q->ce[SRSRAN_NRE * q->coreset_bw * l + j * group_size * 4], 1, 3);
#else // DMRS_PDCCH_SMOOTH_FILTER
srsran_interp_linear_offset(&q->interpolator,
&q->lse[l][j * group_size],
&q->ce[SRSRAN_NRE * q->coreset_bw * l + j * group_size * 4],
1,
3);
#endif // DMRS_PDCCH_SMOOTH_FILTER
} }
} }
#else #else // DMRS_PDCCH_INTERPOLATE_GROUP
for (uint32_t l = 0; l < q->coreset.duration; l++) { for (uint32_t l = 0; l < q->coreset.duration; l++) {
srsran_interp_linear_offset(&q->interpolator, q->lse[l], &q->ce[SRSRAN_NRE * q->coreset_bw * l], 1, 3); srsran_interp_linear_offset(&q->interpolator, q->lse[l], &q->ce[SRSRAN_NRE * q->coreset_bw * l], 1, 3);
} }
#endif #endif // DMRS_PDCCH_INTERPOLATE_GROUP
return SRSRAN_SUCCESS; return SRSRAN_SUCCESS;
} }

Loading…
Cancel
Save