Synchronisation and estimation
How a receiver lines up with a transmitter it does not share a clock with. Frame and symbol timing, carrier frequency and phase recovery, pilot-based channel estimation, equalisation and the effect of phase noise.
Overview
A receiver starts with no idea when a frame begins, where the symbol boundaries fall, what the exact carrier frequency is, or what the channel has done to the signal. Its oscillators and sample clock differ from the transmitter’s by a few parts per million, and the channel adds delay, Doppler and multipath. Before any bit can be demodulated, the receiver has to estimate all of these and keep tracking them as they drift.
This hub covers the estimation and tracking stages of a digital receiver. It is for engineers moving from simulation with perfect synchronisation to real IQ from a software-defined radio, and for anyone debugging a link that works on the bench but not on air.
Key ideas
Timing: frames and symbols
Frame timing comes first. The transmitter sends a known preamble or synchronisation signal, and the receiver correlates against it and looks for a peak. Good sequences have a sharp autocorrelation and stay detectable in the presence of a frequency offset. In 5G NR, the primary synchronisation signal defined in TS 38.211 is a BPSK-mapped m-sequence of length 127 with three cyclic shifts. Together with the secondary signal it identifies one of 1008 physical cell identities.
Symbol timing recovery then finds the best sampling instant within each symbol and tracks drift between the two sample clocks. A timing error detector measures the offset from the samples. Gardner’s 1986 detector for BPSK and QPSK uses two samples per symbol and needs no symbol decisions. The Mueller and Müller detector uses one sample per symbol but relies on symbol decisions. A loop filter smooths the error, and an interpolator or polyphase filterbank resamples the signal at the corrected instants. In OFDM, the cyclic prefix gives some tolerance, so timing can be estimated per symbol from the CP correlation or from a preamble with repeated halves, as in the method of Schmidl and Cox.
Frequency and phase
A carrier frequency offset comes from oscillator error and Doppler. A 1 ppm error at 3.5 GHz is 3.5 kHz, which is more than 10 % of a 30 kHz NR subcarrier spacing. Receivers correct it in two stages. Coarse acquisition uses a preamble, a frequency-locked loop or a training symbol with repeated parts. The phase step between two identical segments, divided by their spacing in time, gives the offset. Schmidl and Cox’s 1997 method uses an OFDM training symbol with two identical halves for both timing and frequency. Moose’s 1994 paper on OFDM frequency offset correction is the other standard reference. Fine tracking then removes the residual phase rotation with a phase-locked loop. The Costas loop is the classic form for PSK, using decisions to remove the modulation before measuring phase.
In single-carrier systems a small residual offset shows as a slowly rotating constellation. In OFDM it is worse. Even a small fraction of the subcarrier spacing breaks orthogonality and leaks energy from each subcarrier into its neighbours as inter-carrier interference, which no per-subcarrier equaliser can remove.
Channel estimation and equalisation
Channel estimation uses known pilot symbols. In OFDM the pilots sit on a grid of subcarriers and symbols. The receiver divides each received pilot by its known value to get a least-squares estimate at that point, then interpolates across frequency and time. The pilot spacing must sample the channel faster than it changes: closer than the coherence bandwidth in frequency and the coherence time in time. A minimum mean-square error (MMSE) estimator uses the channel’s correlation and the noise level to filter the raw estimates, which reduces noise at the cost of needing those statistics. In NR the demodulation reference signals (DMRS) of each channel serve this purpose, and up to three additional DMRS symbols can be configured to follow faster channel variation.
Equalisation undoes the channel. In OFDM it is one complex division per subcarrier, or a small matrix operation per subcarrier for MIMO. Single-carrier links need a filter that spans the delay spread. Zero forcing inverts the channel and amplifies noise where the channel is weak. MMSE balances residual interference against noise. Adaptive equalisers update their taps from the data. The least-mean-squares (LMS) algorithm uses known or decided symbols, and the constant modulus algorithm needs no training for constant-envelope signals.
Phase noise
Real oscillators wander in phase. Their spectrum is described as single-sideband phase noise in dBc/Hz at an offset from the carrier, and Leeson’s 1966 paper gives the standard simple model of its shape. Slow phase wander shows up as a common rotation of all subcarriers in an OFDM symbol, which pilots can track. Fast wander spreads energy between subcarriers like a frequency offset that changes every symbol. A synthesiser that multiplies a reference up to a higher carrier also multiplies its phase noise, so the problem grows with frequency. NR offers wider subcarrier spacings for millimetre-wave bands, and TS 38.211 defines phase-tracking reference signals (PT-RS) for the shared channels.
Where to start
The beginner track sets up the problem. /learn/beginner/06-pulse-shaping-and-matched-filters/ explains the sampling instant that timing recovery hunts for. /learn/beginner/08-ofdm-from-scratch/ and the project /projects/ofdm-link-channel-estimation/ add pilots and channel estimation. /learn/beginner/10-recording-and-reading-iq/ shows how to capture real IQ to test against. Intermediate lessons on timing and carrier recovery loops are in preparation.
Tools and platforms
| Tool | What it is for | Licence | Platform |
|---|---|---|---|
| GNU Radio | symbol_sync with Gardner and Mueller and Müller detectors, polyphase clock sync, band-edge FLL, Costas loop, Schmidl and Cox OFDM sync, LMS and CMA equalisers |
GPL-3.0 | /platforms/gnuradio/ |
| liquid-dsp | Symbol timing recovery, NCOs and PLLs, LMS and RLS equalisers in C | MIT | /platforms/opensource/ |
| Sionna | OFDM channel estimation and equalisation in a link-level simulator | Apache-2.0 | /platforms/opensource/ |
| SciPy | Correlation, interpolation and filter design for custom receivers | BSD-3-Clause | /platforms/opensource/ |
Common mistakes
- Testing only with perfect synchronisation in simulation. Add a frequency offset, a fractional timing offset and a sample-rate offset from the start.
- Setting loop bandwidths by trial and error without checking lock range and noise together.
- Correcting frequency after the FFT in OFDM. Inter-carrier interference cannot be removed there.
- Interpolating channel estimates across pilots spaced wider than the coherence bandwidth or time.
- Blaming the algorithm for errors caused by an unlocked reference clock on the radio.
Going deeper
- F. M. Gardner, A BPSK/QPSK timing-error detector for sampled receivers, IEEE Transactions on Communications 34(5), 1986.
- P. H. Moose, A technique for orthogonal frequency division multiplexing frequency offset correction, IEEE Transactions on Communications 42(10), 1994.
- T. M. Schmidl and D. C. Cox, Robust frequency and timing synchronization for OFDM, IEEE Transactions on Communications 45(12), 1997.
- J.-J. van de Beek et al., On channel estimation in OFDM systems, IEEE 45th Vehicular Technology Conference, 1995, and S. Coleri et al., Channel estimation techniques based on pilot arrangement in OFDM systems, IEEE Transactions on Broadcasting 48(3), 2002.
- S. U. H. Qureshi, Adaptive equalization, Proceedings of the IEEE 73(9), 1985.
- D. B. Leeson, A simple model of feedback oscillator noise spectrum, Proceedings of the IEEE 54(2), 1966, and T. Pollet, M. Van Bladel and M. Moeneclaey, BER sensitivity of OFDM systems to carrier frequency offset and Wiener phase noise, IEEE Transactions on Communications 43(2/3/4), 1995.
- 3GPP TS 38.211, which defines the NR synchronisation signals, DMRS and PT-RS.