Posts
OFDM Receiver Synchronization in SDR: Coarse CFO, Fine CFO, and Timing
March 14, 2026
Failure mode: good SNR, bad packets
OFDM links can show high SNR but still fail CRC due to synchronization errors. The critical trio:
- Frame timing offset
- Carrier frequency offset (CFO)
- Residual phase tracking
- Detect preamble via correlation peak.
- Coarse CFO from repeated short preamble structure.
- FFT window alignment from long preamble timing metric.
- Fine CFO from pilot phase slope.
- Per-symbol common phase error correction.
Approximate coarse CFO estimate from repeated segments:
f_hat = (Fs / (2*pi*L)) * angle(sum_{n=0}^{L-1} r[n+L] * conj(r[n]))
where L is the repetition length.
- Correlators map well to pipelined MAC trees.
- Angle extraction can use CORDIC.
- Keep phase unwrap logic deterministic between symbols.
- Pilot smoothing improves jitter but increases loop lag.
- Inspect constellation before and after CFO correction.
- Plot pilot phase over subcarrier index and time.
- Verify FFT window drift under multipath and Doppler.
In real deployments, synchronization robustness is usually a bigger differentiator than peak demod speed.