Also known as: FLL, frequency-lock loop
A frequency-locked loop (FLL) is a feedback loop that drives an oscillator to match the frequency of an input signal, without caring about its absolute phase.1 Where a phase-locked loop nulls a phase error, an FLL nulls a frequency error measured by a frequency discriminator. Ignoring phase makes the loop far more tolerant of large initial offsets, so an FLL is the tool of choice for coarse carrier acquisition and automatic frequency control before a narrower PLL is handed the residual.
How it works
The key difference from a PLL is the error detector. A frequency discriminator estimates how fast the phase between input and local oscillator is changing — the frequency error — typically from two successive complex samples. A common digital form is the cross-product (dot-product) discriminator: take the current and previous down-converted samples and combine them so the output is proportional to the phase advance per sample, i.e. the residual frequency. That error passes through a loop filter and retunes a numerically-controlled oscillator, exactly as in a PLL, but the quantity being zeroed is Δf, not Δφ.
Because a small phase discriminator (a PLL) produces an ambiguous, wrapping error once the offset exceeds a fraction of a cycle per sample, its pull-in range is narrow. A frequency discriminator instead gives a monotonic error over a much wider span, so the FLL can acquire signals that a PLL could never pull in from cold.
In practice: FLL-assisted PLL
The classic arrangement — used in GPS receivers, satellite modems, and burst radio — is a two-stage acquisition:
- FLL first. With a wide loop bandwidth, the FLL slews the oscillator to within a few tens of hertz of the true carrier, tolerating Doppler and reference error.
- Hand off to a PLL. Once the frequency error is small enough to sit inside the PLL’s pull-in range, control transfers (or an FLL-assisted-PLL discriminator blends both), and the PLL locks phase for coherent demodulation.
This gives both robust acquisition and clean tracking. An FLL alone cannot support coherent PSK demodulation — it leaves an unknown, drifting phase — which is why it is usually a front-end to a PLL or Costas loop rather than a standalone demodulator. For slowly-varying offsets an FLL is functionally an AFC mechanism.
Relevance to SDR
Any receiver facing appreciable tuner error or Doppler benefits from an FLL front-end: GNSS, low-Earth-orbit telemetry, and burst-mode data links all rely on it to acquire before tracking. In land-mobile trunking the offsets are smaller, but coarse frequency correction still matters when a cheap RTL-SDR tuner is off by several kHz. GopherTrunk performs coarse frequency estimation/correction to centre a channel before its phase-tracking loops engage; that acquisition role is the FLL’s natural niche even where the implementation is a block estimator rather than a continuous loop.
Sources
-
Frequency-locked loop — Wikipedia, on frequency-discriminator feedback and its wider pull-in versus a PLL; see also Automatic frequency control. ↩