Not include DC for CSI IM measurement
DC subcarrier has a significantly higher energy compared to other CSI IM resource elements. This causes the average interference + noise estimation to be higher than CSI-RS signal power making the CQI 0. With a third-party gnb that schedules PDSCH based on CQI, the UE never receives DL DCI once it starts sending CSI reports.
This commit is contained in:
@@ -782,6 +782,8 @@ static void nr_csi_im_power_estimation(const PHY_VARS_NR_UE *ue,
|
|||||||
LOG_I(NR_PHY, "(ant_rx %i, sc %i) real %i, imag %i\n", ant_rx, sc, rx_signal[sc].r, rx_signal[sc].i);
|
LOG_I(NR_PHY, "(ant_rx %i, sc %i) real %i, imag %i\n", ant_rx, sc, rx_signal[sc].r, rx_signal[sc].i);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (sc == 0) // skip DC for noise power estimation
|
||||||
|
continue;
|
||||||
sum_re += rx_signal[sc].r;
|
sum_re += rx_signal[sc].r;
|
||||||
sum_im += rx_signal[sc].i;
|
sum_im += rx_signal[sc].i;
|
||||||
sum2_re += rx_signal[sc].r * rx_signal[sc].r;
|
sum2_re += rx_signal[sc].r * rx_signal[sc].r;
|
||||||
|
|||||||
Reference in New Issue
Block a user