Apply delay compensation only when delay is different from 0
This commit is contained in:
@@ -1102,12 +1102,14 @@ void nr_decode_pucch2(PHY_VARS_gNB *gNB,
|
|||||||
c16_t ch_temp[128] __attribute__((aligned(32))) = {0};
|
c16_t ch_temp[128] __attribute__((aligned(32))) = {0};
|
||||||
delay_t delay = {0};
|
delay_t delay = {0};
|
||||||
nr_est_delay(128, ch_ls, ch_temp, &delay);
|
nr_est_delay(128, ch_ls, ch_temp, &delay);
|
||||||
int delay_idx = get_delay_idx(delay.est_delay, MAX_DELAY_COMP);
|
|
||||||
c16_t *delay_table = frame_parms->delay_table128[delay_idx];
|
|
||||||
|
|
||||||
// Apply delay compensation on the input
|
// Apply delay compensation on the input
|
||||||
for (int aa = 0; aa < Prx; aa++)
|
if (delay.est_delay != 0) {
|
||||||
mult_complex_vectors(rp[aa][symb], delay_table, rp[aa][symb], nb_re_pucch, 8);
|
int delay_idx = get_delay_idx(delay.est_delay, MAX_DELAY_COMP);
|
||||||
|
c16_t *delay_table = frame_parms->delay_table128[delay_idx];
|
||||||
|
for (int aa = 0; aa < Prx; aa++)
|
||||||
|
mult_complex_vectors(rp[aa][symb], delay_table, rp[aa][symb], nb_re_pucch, 8);
|
||||||
|
}
|
||||||
|
|
||||||
// extract again DMRS, and signal, after delay compensation
|
// extract again DMRS, and signal, after delay compensation
|
||||||
for (int aa = 0; aa < Prx; aa++) {
|
for (int aa = 0; aa < Prx; aa++) {
|
||||||
|
|||||||
Reference in New Issue
Block a user