NR UE: add support for continuous frequency offset compensation (in particular NTN LEO Doppler)
- move function
add_noise()
to fileopenair1/SIMULATION/TOOLS/phase_noise.c
- refactor (co)sinus calculation out of
phase_noise()
intoget_sin_cos()
innr_common.c
- NR UE: continuously estimate the frequency offset using PBCH DMRS
- NR UE: add command line parameter
--initial-fo
to specify known initial frequency offset - NR UE: add support for continuous DL frequency offset compensation
--cont-fo-comp
- NR UE: add support for continuous UL frequency offset pre-compensation.
Depending on the main source of frequency offset, pre-compensate the UL frequency offset (FO) accordingly.
Therefore modify the flag
--cont-fo-comp
to accept an integer value, where-
1
specifies, that the main FO contribution comes from the accuracy of the local oscillator (LO) -
2
specifies, that the main FO contribution comes from Doppler shift
-
- NR UE: add PI controller to continuous frequency offset compensation
- rfsimulator: enable and correct NTN LEO doppler simulation
- use SIMD to speed up
nr_fo_compensation()
- Extend NTN LEO example in RUNMODEM.md to include continuous Doppler compensation
- NR UE: in
nr_adjust_synch_ue()
extend the peak search to +/- cyclic prefix size, esp. for LEO NTN scenarios the timing drifts during initial sync, which is mostly compensated with--ntn-initial-time-drift
. But there might be a residual time offset, and by extending the peak search window we make this more tolerant. - NR UE: remove unused
nr_slot_tx_offset
, it is unused since commit f3e60a14 - NR UE: remove now unnecessary local variable
update_ntn_system_information
, directly useUE->ntn_config_message->update
instead