Also known as: SFDR, intermodulation-free dynamic range, IMD dynamic range
Spurious-free dynamic range (SFDR) is the span, in decibels, between a receiver’s noise floor and the input level at which intermodulation products first rise above that floor.1 It answers the question that matters in a crowded band: how strong can interfering signals get before the receiver manufactures its own in-band spurs that masquerade as real signals? SFDR is usually the tightest constraint on a receiver’s dynamic range, and it is governed almost entirely by the front end’s third-order intercept (IP3).
How it works
Drive a non-linear front end with two equal tones at f₁ and f₂. Its cubic non-linearity generates third-order intermodulation products at 2f₁ − f₂ and 2f₂ − f₁, which fall right next to the originals and cannot be filtered out. The geometry is what makes SFDR predictable:
- The wanted output grows 1 dB for every 1 dB of input.
- The third-order product grows 3 dB for every 1 dB of input.
Extrapolate the two lines and they meet at the third-order intercept point (IP3). Because the spur closes on the wanted signal at 2 dB per dB, a little algebra gives the input level at which the spur just reaches the noise floor, and hence:
SFDR = ⅔·(IIP3 − noise floor)
with everything in dB (IIP3 is the input-referred intercept). Every 3 dB of extra IP3 buys 2 dB of SFDR; every 3 dB the noise floor drops buys 2 dB back. The result is often quoted in dB relative to the floor, or in dBc relative to a full-scale carrier for a converter.
Variants
- Analog front-end SFDR is set by the LNA and mixer linearity via IP3, as above.
- ADC/converter SFDR is defined differently: for an analog-to-digital converter or DAC it is the ratio in dBc between a full-scale fundamental and the largest spurious tone (often a harmonic or a clock/quantization artifact) anywhere in the Nyquist band. A converter datasheet’s SFDR figure describes how clean its spectrum is, closely related to but distinct from ENOB.
Relevance to SDR
SFDR is the number that decides whether a scanner survives a busy band. Trunking systems, paging transmitters, and broadcast signals often sit within a few hundred kHz of a weak control channel; if the front end’s IP3 is low, two strong neighbours breed a third-order spur that can land squarely on the wanted channel and either mask it or fool the decoder with a phantom carrier. Cheap SDR dongles have modest IP3 and low converter SFDR, which is why an out-of-band bandpass or cavity filter — removing the strong signals before they reach the non-linear stages — so often rescues a marginal setup. Higher-linearity front ends (Airspy R2/Discovery, SDRplay, USRP) push IP3 and converter SFDR up and widen the spur-free window.
GopherTrunk operates on whatever the ADC delivered: if intermod spurs are already baked into the samples, no DSP can distinguish them from genuine signals. When a control channel decodes alone but breaks when strong local carriers are present, SFDR — not the decoder — is the limit, and the fix is front-end filtering or lower gain to keep the strong signals inside the linear region.
Sources
-
Spurious-free dynamic range — Wikipedia, SFDR definition for receivers and converters and its link to IP3. ↩