// Foundation
The RF–Digital Interface
Every modern radio — smartphone, base station, radar, SDR — eventually converts its analogue RF or IF signal into a stream of digital numbers. The ADC (Analogue-to-Digital Converter) performs this conversion, and the DAC (Digital-to-Analogue Converter) reverses it on the transmit path. These are the two most signal-quality-critical components in the entire digital radio chain.
In a traditional superheterodyne receiver, the ADC sits at the IF output — sampling a signal that has already been downconverted, filtered, and amplified. In a direct-conversion receiver, it samples at baseband. In a software-defined radio (SDR) or direct-RF sampling receiver, the ADC samples the RF signal directly at hundreds of MHz or even GHz frequencies, replacing entire analogue front-end stages with digital processing.
The ADC sets the floor of the entire system. No matter how good the LNA, mixer, or DSP, the ADC's quantisation noise, spurious tones, and aperture jitter set an absolute limit on signal purity, sensitivity, and dynamic range. Understanding these limits is essential for anyone designing SDRs, 5G transceivers, radar receivers, or test instruments.
ANT LNA BPF MIXER IF FILTER VGA ADC analogue → digital DSP DATA ↑ this page ←——— ANALOGUE RF / IF ———→ ← DIGITAL →
// Foundations
Sampling Theory

Nyquist–Shannon Sampling Theorem

The Nyquist theorem is the fundamental rule governing all digital signal processing. It states that a bandlimited signal can be perfectly reconstructed from its samples — if and only if the sampling rate f_s is at least twice the highest frequency component in the signal. The critical frequency f_s/2 is called the Nyquist frequency.
Nyquist–Shannon Theorem
Required: f_s ≥ 2 · f_max
f_s = sampling rate (samples/second, Hz), f_max = highest frequency in signal
Nyquist frequency = f_s/2 = maximum unambiguous signal frequency
Nyquist zone 1 (baseband): 0 to f_s/2

In practice, use f_s ≥ 2.5×f_max to leave room for the anti-aliasing filter transition band.
A perfect brick-wall filter at f_s/2 is physically impossible — real filters need a transition band.

Aliasing — When Nyquist is Violated

If a signal above f_s/2 reaches the ADC input, it aliases — it folds back into the 0 to f_s/2 range and appears as a false signal at the aliased frequency. The alias cannot be distinguished from a real signal at that frequency. This is why an anti-aliasing low-pass filter is mandatory before every ADC.
Alias Frequency Calculation
f_alias = |f_in − round(f_in/f_s) · f_s|
Or equivalently: f_alias = f_in mod f_s, then fold if > f_s/2

Example: f_s = 100 MHz, f_in = 130 MHz
f_alias = |130 − 100| = 30 MHz — the 130 MHz signal appears at 30 MHz

Example: f_s = 100 MHz, f_in = 270 MHz
270 mod 100 = 70 MHz — appears at 70 MHz (3rd Nyquist zone alias)

Rule: Every frequency outside 0–f_s/2 that reaches the ADC creates an alias inside 0–f_s/2.
ALIASING — frequency domain f Zone 1 0 – fs/2 Zone 2 fs/2 – fs Zone 3 fs – 3fs/2 Zone 4 fs/2 fs 3fs/2 f_in in-band ✓ f_in aliases to fs−f_in f_in aliases to f_in−fs AAF must block everything here →

Undersampling and IF Sampling

Here is where RF engineers deviate from the textbook: undersampling is the deliberate use of aliasing as a downconversion mechanism. Instead of requiring f_s > 2·f_signal, you choose f_s such that the desired IF signal aliases into the first Nyquist zone in a predictable and useful way. This eliminates an entire analogue downconversion stage.
Undersampling (Bandpass Sampling)
Condition for alias to land in zone 1:
Choose f_s such that: 2·f_c/(n+1) ≤ f_s ≤ 2·f_c/n   where n = floor(f_c/BW)
f_c = centre frequency of bandpass signal, BW = bandwidth

Resulting alias frequency in zone 1:
f_alias = f_c − m·f_s where m = round(f_c/f_s)

Example: 70 MHz IF signal, 10 MHz bandwidth, sample at f_s = 56 MHz
m = round(70/56) = 1 → f_alias = 70 − 56 = 14 MHz
The 70 MHz IF appears at 14 MHz — a digital downconversion with no analogue mixer!

Example: 240 MHz IF, sample at f_s = 80 MHz
m = round(240/80) = 3 → f_alias = 240 − 3×80 = 0 MHz (at baseband!)

Key constraint: ADC must have input bandwidth ≥ f_IF, even if f_s ≪ f_IF. Most ADCs specify separate "full-power input bandwidth" for this reason.
IF sampling is used everywhere in modern radio: Direct-IF receivers in 4G/5G base stations sample 200–400 MHz IFs directly. Software-defined radios like the AD9361 and AD9371 use bandpass sampling to cover wide frequency ranges with moderate f_s. The GSPS (Giga-sample per second) ADCs in the AD9208 / AD9626 family directly sample L-band and S-band radar frequencies.
// Noise from Digitisation
Quantisation & Noise Floor

Quantisation Noise Power

An N-bit ADC divides the full-scale input range V_FS into 2^N equal quantisation steps of size Δ = V_FS / 2^N. Any input signal is rounded to the nearest step — the rounding error is the quantisation noise. For a full-scale sinusoidal input, this noise is approximately white and uniformly distributed over ±Δ/2.
Quantisation Noise and Ideal SNR
Quantisation step size: Δ = V_FS / 2^N
Quantisation noise power: P_q = Δ²/12 = V_FS² / (12 · 2^(2N))

Ideal SNR for full-scale sine wave:
SNR_ideal = 6.02·N + 1.76   dB

N = number of bits
Every additional bit adds exactly 6.02 dB of SNR (doubles amplitude resolution)

Examples:
8-bit ADC: SNR_ideal = 49.9 dB
12-bit ADC: SNR_ideal = 74.0 dB
16-bit ADC: SNR_ideal = 98.1 dB
24-bit ADC: SNR_ideal = 146.2 dB (audio, near theoretical limit of CMOS)

Noise spectral density (NSD) of quantisation noise:
NSD = −SNR_ideal − 10·log₁₀(f_s/2)   dBFS/Hz
At f_s = 100 MHz, 12-bit: NSD = −74.0 − 10·log₁₀(50×10⁶) = −74.0 − 77.0 = −151 dBFS/Hz

SNR, SINAD, and ENOB

The ideal SNR formula gives the theoretical best case for a perfect ADC. Real ADCs have additional noise sources — thermal noise in the input stage, comparator noise, reference noise, substrate coupling — that increase the noise floor above the ideal quantisation limit. Two metrics capture this:
SINAD and ENOB
SINAD (Signal-to-Noise-And-Distortion):
SINAD = signal power / (noise + all harmonic distortion power)
Measured with a full-scale sine wave input. Gives the total degradation including both noise and distortion.

ENOB (Effective Number Of Bits): ENOB = (SINAD − 1.76) / 6.02

ENOB tells you how many ideal bits the ADC actually delivers, accounting for all imperfections.
An 12-bit ADC with SINAD = 68 dB: ENOB = (68 − 1.76)/6.02 = 11.0 bits (1 bit lost to noise/distortion)

Noise floor (actual): NF = −SINAD − 10·log₁₀(f_s/2) dBFS/Hz

Typical ENOB loss from ideal:
 0.5–1.0 bit lost at low input frequencies (thermal + reference noise)
 1.0–2.0 bits lost at high frequencies (aperture jitter + input RC rolloff)
 2.0+ bits lost above the ADC’s rated bandwidth

Dither — Breaking Quantisation Patterns

When a low-level signal is near or below one quantisation step, it gets stuck oscillating between two codes. This creates a highly correlated quantisation error that sounds like distortion. Dither — a small amount of random noise added before the ADC — breaks this correlation, randomising the quantisation error and spreading it as white noise. The signal can then be averaged or filtered to recover sub-LSB resolution.
Dither Types and Trade-offs
Rectangular dither (RPDF): Uniform noise ±Δ/2. Eliminates coherent patterns. Adds noise power Δ²/12.
Triangular dither (TPDF): Sum of two RPDF sources. Better spectral whitening. Adds noise power Δ²/6.
Gaussian dither: Best psychoacoustic properties (audio). Adds σ² noise.

Dither amplitude: 0.5–1 LSB RMS is typical. Too much dither wastes dynamic range.
In high-speed RF ADCs, thermal noise often serves as natural dither — explicit dither rarely needed.
In precision audio ADCs (24-bit), dither is essential and carefully shaped (noise-shaping + dither).
// Linearity and Spurious Performance
Dynamic Range Metrics

SFDR — Spurious-Free Dynamic Range

SFDR is the ratio between the signal amplitude and the amplitude of the largest spurious tone — whether harmonic or non-harmonic. It defines the clean "window" in the spectrum where you can detect signals without false tones. SFDR is typically the most important specification for ADCs in radio receivers because spurious tones masquerade as real signals.
SFDR
SFDR = signal power − peak spurious tone power   (dBc or dBFS)

Typical values for RF ADCs:
Entry-level (8-bit at 1 GSPS): SFDR ≈ 50–60 dBc
Mid-range (12-bit at 500 MSPS): SFDR ≈ 70–80 dBc
High-performance (16-bit at 250 MSPS): SFDR ≈ 90–100 dBc

SFDR vs input level: SFDR typically degrades at full scale (saturation harmonics) and at very low levels (sub-LSB nonlinearity). Best SFDR is usually at −1 to −6 dBFS input.

SFDR sets the spurious-free receiving window:
If ADC SFDR = 70 dBc and desired signal is −60 dBFS, spurious tones reach −60 − 70 = −130 dBFS.
A blocker at 0 dBFS generates a spur at −70 dBFS — which may land on your desired signal at −60 dBFS.

THD — Total Harmonic Distortion

THD is the ratio of the sum of all harmonic power to the fundamental. In ADCs, harmonic distortion arises from nonlinearities in the sample-and-hold circuit, input buffer, and DNL/INL errors in the converter core. The second and third harmonics are usually dominant.
THD Calculation
THD = 10·log₁₀((P_H2 + P_H3 + P_H4 + ...) / P_fundamental)   dBc

P_H2, P_H3... = power of 2nd, 3rd... harmonics
Typical: 2nd harmonic 6–8 dB higher than 3rd in CMOS ADCs
Odd harmonics (3rd, 5th) fall within the signal band for bandpass signals — cannot be filtered

HD2 and HD3 alias back: f_H2 = 2·f_in mod f_s, f_H3 = 3·f_in mod f_s
These must be checked for each input frequency — aliased harmonics can fall on top of other signals.

IMD — Two-Tone Intermodulation

With two input tones at f1 and f2, the ADC's nonlinearity creates intermodulation products at frequencies m·f1 ± n·f2. The third-order products at 2f1−f2 and 2f2−f1 fall very close to the original tones and cannot be filtered — they directly limit the usable dynamic range for multi-tone signals.
IMD and IIP3 for ADCs
Third-order intermodulation products: f_IM3 = 2f1−f2 and 2f2−f1

IIP3 of ADC: IIP3 = P_in + (SFDR_IM3)/2   (dBFS)
where SFDR_IM3 = signal-to-IM3 ratio at the specific input power P_in

Two-tone SFDR (IM3 limited):
At full scale, IM3 typically 6–10 dB worse than single-tone SFDR
Rule: back off input by 6 dB from full scale → IM3 drops by 12 dB (3rd order slope)

Intermodulation-free dynamic range (IMFDR3):
IMFDR3 = (2/3)·(SFDR_IM3 + NSD_bandwidth) — the range where IM3 is below the noise floor
// Clock Noise Limits
Aperture Jitter & Clock Requirements

How Jitter Degrades SNR

Every ADC samples the input at a moment determined by the rising edge of the clock. If the clock has timing jitter σ_t (RMS), the sample is taken at a slightly wrong time — and for a high-frequency input signal, a small timing error causes a large amplitude error. This is aperture jitter, and it sets an absolute upper limit on ADC SNR at high input frequencies regardless of bit depth.
Aperture Jitter → SNR Limit
SNR_jitter = −20·log₁₀(2π·f_in·σ_t)   dB

σ_t = RMS aperture jitter (seconds), f_in = input signal frequency

Examples at f_in = 100 MHz:
σ_t = 1 ps: SNR_jitter = −20·log(2π×10⁸×10⁻¹²) = 90 dB
σ_t = 0.1 ps: SNR_jitter = 110 dB
σ_t = 10 ps: SNR_jitter = 70 dB (limits to 11-bit performance!)

At f_in = 1 GHz (direct RF sampling):
σ_t = 0.1 ps: SNR_jitter = 90 dB (limited to ≈14.6 bits ENOB)
σ_t = 0.05 ps (50 fs): SNR_jitter = 96 dB (state of the art)

Total SNR with both jitter and quantisation noise:
SNR_total = −10·log₁₀(10^(−SNR_ideal/10) + 10^(−SNR_jitter/10))
The worse of the two dominates — jitter wins at high frequency, quantisation wins at low frequency.

Clock Source Requirements

The clock input to an ADC is often the most neglected and most critical signal in a radio design. A noisy clock doesn't just cause jitter — its phase noise appears directly as additive noise on every sampled signal. The clock source must have lower integrated phase noise (converted to jitter) than the ADC's aperture jitter spec.
Phase Noise → Jitter Conversion
σ_t = (1/(2π·f_clk)) · √(2·∫[f1,f2] L(f) df)   seconds RMS

L(f) = single-sideband phase noise of clock (dBc/Hz)
Integration limits: f1 = 10 Hz (or 1 kHz for most ADC specs), f2 = f_clk/2

Practical rule of thumb (integrating a typical oscillator spectrum):
OCXO at 100 MHz: σ_t ≈ 0.05–0.1 ps RMS
TCXO at 100 MHz: σ_t ≈ 0.3–1 ps RMS
XO at 100 MHz: σ_t ≈ 1–5 ps RMS
PLL-generated clock: σ_t ≈ 0.2–2 ps (depends heavily on PLL bandwidth and VCO quality)

For ADCs sampling above 100 MHz input frequencies, OCXO or ultra-low-jitter clock cleaner ICs (AD9516, LMK04832) are required to avoid jitter-limited SNR.
// ADC Dynamic Range Calculator — SNR, ENOB, SFDR, Jitter Limit
bits
MSPS
MHz
ps RMS
dB
V p-p
// ADC Noise & Dynamic Range — Spectrum View
Cyan = signal · Red = quantisation noise floor · Yellow = jitter-limited floor · Green = actual noise floor · Dashed = SFDR headroom
// How ADCs Are Built
ADC Architectures
Five major ADC architectures cover the full span of RF applications. The choice is always a tradeoff between speed (sample rate), resolution (bits/ENOB), and power consumption. Understanding the architecture helps you predict failure modes and interpret datasheet specs.
Flash ADC
How: 2^N−1 comparators in parallel, all comparing input simultaneously. Single-clock conversion.
f_s: 1–10+ GSPS   N: 4–8 bits
Pros: Fastest possible — one clock cycle latency. No pipeline delay.
Cons: Power and area scale as 2^N — impractical above 8 bits. Large input capacitance.
Used in: Oscilloscopes, optical comms, radar receivers where latency matters most.
Pipeline ADC
How: Cascade of low-resolution stages (1.5–3 bits/stage). Each stage resolves a few bits, subtracts, amplifies residue, passes to next stage.
f_s: 10–500 MSPS   N: 10–16 bits
Pros: High speed and high resolution simultaneously. Power-efficient per bit.
Cons: Pipeline latency (many clock cycles). Requires digital error correction.
Used in: Wideband receivers, cable modems, 4G/5G IF ADCs, radar.
SAR ADC
How: Successive Approximation Register. Binary search algorithm — compare input to DAC output, adjust DAC, repeat N times. N clock cycles per conversion.
f_s: 1 kSPS–100 MSPS   N: 12–18 bits
Pros: Excellent ENOB for its power. No latency (single conversion per sample). Very low power.
Cons: Speed limited by N comparator cycles. Not suitable above ~100 MSPS.
Used in: Precision measurement, IoT, medical instruments, data acquisition.
Delta–Sigma ADC
How: 1-bit (or multi-bit) oversampling at very high rate + digital decimation filter. Noise shaping pushes quantisation noise out of baseband.
f_s: up to 4×OSR MSPS   N: 16–32 bits
Pros: Highest ENOB achievable. Excellent linearity.
Cons: Bandwidth limited to f_s/(2×OSR). High latency. Not suitable for IF/RF sampling.
Used in: Audio, precision DC/LF measurement, seismometers. Not for RF.
Time-Interleaved ADC
How: M identical ADC cores clocked at f_s/M each, interleaved to achieve overall f_s. Combines speed beyond single-core limits.
f_s: 1–100+ GSPS   N: 8–12 bits
Pros: Can reach multi-GSPS with existing ADC core technology.
Cons: Offset, gain, timing mismatch between cores creates spurious tones at f_s/M offsets. Complex calibration required.
Used in: Direct RF sampling (AD9208, ADC12DJ5200), oscilloscopes, 5G mmWave.
ArchitectureSpeedResolutionPowerLatencyRF use case
Flash1–10 GSPS4–8 bitVery high1 cycleOptical, radar, oscilloscope
Pipeline50–500 MSPS10–16 bitMedium~12 cyclesIF sampling, wideband radio
SAR1–100 MSPS12–18 bitVery lowN cyclesBaseband, precision, IoT
Δ–ΣNarrow BW16–32 bitMediumHigh (filter)Audio, precision (not RF)
Interleaved1–100 GSPS8–12 bitHighVariableDirect RF, mmWave, wideband
// Digital to Analogue Conversion
DAC for RF Transmitters

DAC Spurious and sinc Rolloff

The transmit path is the mirror of the receive path — a DAC converts digital baseband samples into an analogue waveform that is then upconverted and amplified. DACs have their own set of imperfections: the sinc rolloff inherent to zero-order hold reconstruction, image bands, and spurious tones from converter nonlinearity.
DAC sinc Rolloff and Image Bands
Zero-order hold frequency response: H(f) = sinc(πf/f_s) = sin(πf/f_s) / (πf/f_s)
At f = f_s/2: H = sinc(π/2) = 2/π ≈ 0.637 → −3.9 dB rolloff
At f = f_s/4: H = sinc(π/4) ≈ −0.91 dB

Images (spectral replicas): appear at f_out ± n·f_s for all integer n
A baseband signal from 0 to f_s/2 has images at f_s ± f_out, 2f_s ± f_out, etc.
These must be filtered by a reconstruction LPF or BPF before upconversion.

sinc pre-correction (sinc equalisation): Apply 1/sinc(πf/f_s) digitally before the DAC to flatten the passband response. Effective but boosts noise near f_s/2.

Mix-mode DAC: High-speed RF DACs (AD9162, DAC38RF82) can directly synthesise RF signals at 2nd or 3rd Nyquist zone — outputting signals at f_s to 3f_s/2. Replaces an analogue upconverter in some architectures.

DAC Architectures for RF

RF DAC Key Specifications
Update rate: Modern RF DACs: 1–12 GSPS (AD9164: 6 GSPS, AD9172: 12 GSPS)
NSD (Noise Spectral Density): −155 to −165 dBFS/Hz for high-performance RF DACs
SFDR: 75–85 dBc at Nyquist (degrades with frequency, improves with backoff)
IM3: Typically 70–80 dBc at two tones at −6 dBFS

Segment switching DAC (thermometer coded): Used for the MSBs in high-performance DACs. Monotonic code transitions, low glitch, good linearity near full scale. Area-intensive.
Current-steering DAC: Standard for RF. Each bit switches a current source into one of two output paths. Speed limited by output node parasitic capacitance.
R-2R ladder DAC: Simple, low power, poor high-frequency performance. Used only for precision low-frequency applications.
// System Design
ADC in the RF Receive Chain

Anti-Aliasing Filter Design

The anti-aliasing filter (AAF) is a lowpass (or bandpass for undersampling) filter placed immediately before the ADC. Its job is to attenuate all out-of-band signals to below the ADC noise floor before they can alias. The filter's transition band defines the minimum required f_s.
Anti-Aliasing Filter Requirements
Required stopband attenuation: A_stop ≥ SFDR (dBc) + blocker level above noise floor
For a receiver with 70 dBc SFDR and −10 dBFS blocker at fs/2:
A_stop ≥ 70 dB at f_s/2

Minimum filter order (Butterworth, −3 dB at f_c = f_pass):
n = log(10^(A_stop/10) − 1) / (2·log(f_stop/f_pass))

Practical rule for Nyquist sampling:
Use f_s ≥ 2.5×BW and a 5th–7th order elliptic or Chebyshev filter
An elliptic filter achieves the sharpest transition band for a given order — preferred for AAF

For undersampling (bandpass AAF):
BPF centred on IF, passband = signal BW, stopband at adjacent Nyquist zone boundaries
Must reject image band (f_IF ± n·f_s) by ≥ SFDR dBc

ADC Selection Guide for RF Applications

Applicationf_s neededBits / ENOBKey specArchitectureExample parts
LTE/5G baseband61.44–245 MSPS14–16 bitNF, SFDR 80+ dBcPipeline / SARAD9265, LTC2158
IF sampling (superhet)80–500 MSPS12–16 bitInput BW, SFDRPipelineAD9680, ADS62P49
Direct RF sampling1–4 GSPS8–14 bitENOB @ GHz, jitterInterleavedAD9208, ADC12DJ5200
SDR (wideband)25–250 MSPS12 bitBW, power, costPipelineAD9361, ADRV9009
Radar (pulsed)100 MSPS–2 GSPS12–16 bitLatency, SFDR, jitterPipeline / interleavedAD9434, LTC2262
Test equipment1–50 GSPS8–10 bitSpeed, flatnessFlash / interleavedCustom ASIC, EV12AQ600
Precision measurement1–10 MSPS16–24 bitENOB, DNL/INLSAR / Δ–ΣAD7768, ADS127L11
// Engineering Practice
ADC/DAC Design Rules — 12 Rules
Sampling and Dynamic Range
① Check jitter first, bits second: At f_in = 100 MHz, even a 16-bit ADC is limited by 1 ps jitter to 90 dB SNR (≈14.7 bits ENOB). Calculate SNR_jitter = −20·log(2π·f_in·σ_t) before choosing bit depth.

② Match ADC input bandwidth to sampling zone: For undersampling, the ADC must specify "full-power input bandwidth" ≥ f_IF. This is separate from f_s. A 200 MSPS ADC can have 1 GHz input bandwidth — check the datasheet.

③ Never allow any signal above (N_zone)·f_s/2 to reach the ADC: Design the AAF to attenuate all Nyquist zone boundaries by ≥ SFDR + 10 dB. A missed blocker at 2·f_s/2 aliases into the first zone and cannot be removed.

④ Input drive level: Most ADCs achieve best SFDR at −1 to −6 dBFS input. Driving full scale clips on any excess and degrades SFDR by 10–20 dB. Add a VGA stage or fixed attenuator to set operating point.
Clock and Reference
⑤ Clock source quality is paramount: Use the lowest-jitter available clock: OCXO (<0.1 ps) for high-IF sampling, VCXO + clock cleaner for PLL-derived clocks. Never use a CMOS logic clock for ADC sampling above 50 MSPS.

⑥ Differential clock input: Always use the ADC's differential clock input, not single-ended. Differential rejects common-mode supply noise that would otherwise modulate the clock edges. Drive with a differential LVDS or LVPECL clock buffer, not a CMOS gate.

⑦ Separate ADC analogue and digital supplies: The ADC's internal digital switching (code transitions, output drivers) injects noise onto the supply. Use separate LDOs for analogue and digital supply pins. Never share with digital logic supplies.

⑧ Reference voltage decoupling: The voltage reference sets the full-scale range. Any noise or ripple on V_ref appears as gain error modulation — directly as spurious tones. Decouple with 10 μF + 100 nF ceramics within 2 mm of the V_ref pin.
Layout and Interface
⑨ Differential input termination: RF ADCs typically want 100 Ω differential termination at the input. This is usually achieved with a balun + resistive termination or a fully differential op-amp driver. Match the ADC input network carefully — VSWR ripple on the input causes passband gain ripple.

⑩ Digital output interface: JESD204B/C is standard for high-speed ADCs above 500 MSPS. Each JESD lane carries ~12.5 Gbps serial data. Route JESD lanes as differential pairs, impedance-controlled to 100 Ω, ≤10 cm board length to minimise jitter accumulation.

⑪ For undersampling, verify alias placement at design time: Calculate f_alias = |f_IF − m·f_s| for each harmonic of f_IF (2·f_IF, 3·f_IF...). Any harmonic that aliases onto your wanted band creates permanent in-band distortion that cannot be removed by filtering.

⑫ FPGA/DSP interface latency: Pipeline ADCs have 8–16 clock cycle latency. This must be accounted for in closed-loop systems (DPD feedback, carrier aggregation timing). Time-interleaved ADCs also require per-core offset/gain/timing calibration in the FPGA.
// Complete Design
Worked Example — Direct-IF ADC for 5G NR Base Station Receiver
Design Specification
Application: 5G NR sub-6 GHz base station, 100 MHz channel bandwidth
IF frequency: 400 MHz (from LO at f_RF − 400 MHz)
Required SNR: ≥ 75 dB in-band (sets sensitivity for 256-QAM demodulation)
Required SFDR: ≥ 80 dBc (strong adjacent blocker at +20 dB relative to wanted signal)
Sampling rate target: select to place 400 MHz IF usefully

1
Choose f_s for undersampling:
Need f_alias = 400 MHz − m·f_s to land in a convenient baseband position (say 100 MHz).
400 − 1·f_s = 100 → f_s = 300 MSPS
Check: 400 − 300 = 100 MHz ✓. The 400 MHz IF aliases to 100 MHz in zone 1 (0–150 MHz).
Required ADC input BW ≥ 400 MHz (beyond f_s of 300 MSPS — verify in datasheet).
2
Choose bit depth:
Required SNR = 75 dB. Ideal SNR for N bits: 6.02·N + 1.76 ≥ 75 dB → N ≥ 12.2 → use 14 bits.
Ideal SNR (14-bit) = 86 dB. ENOB loss at 400 MHz with 0.1 ps jitter:
SNR_jitter = −20·log(2π×400×10⁶×0.1×10⁻¹²) = −20·log(2.51×10⁻³) = 92 dB — not limiting.
Total SNR ≈ min(86, 92) ≈ 86 dB → ENOB ≈ (86−1.76)/6.02 ≈ 14.0 bits. ✓
3
Check harmonic aliasing:
2nd harmonic of IF: 2×400 = 800 MHz. Alias: |800 − 2×300| = |800−600| = 200 MHz — outside wanted band (100–200 MHz), filtered by DDC decimation filter.
3rd harmonic: 3×400 = 1200 MHz. Alias: |1200 − 4×300| = |1200−1200| = 0 MHz — falls at DC, removed by DDC DC block. ✓
4
Anti-aliasing BPF:
Need BPF centred at 400 MHz, passband 350–450 MHz (100 MHz BW).
Stopband at 0–300 MHz (first Nyquist zone) and 600+ MHz (second zone boundary).
Required rejection: 80 dBc SFDR → BPF must attenuate stopbands by ≥ 85 dB.
Implement with 7th-order LC bandpass filter → transition from 450–600 MHz → adequate.
5
Part selection:
AD9680: 14-bit, 1 GSPS (can be run at 300 MSPS), input BW > 2 GHz, SFDR = 82 dBc at 400 MHz input.
Clock: ADCLK846 clock buffer (0.05 ps jitter) driven by 300 MHz OCXO reference.
Digital output: JESD204B, 4 lanes at 7.5 Gbps → connect to Xilinx UltraScale FPGA.
Result: SNR = 83 dB, SFDR = 82 dBc, BW = 100 MHz ✓ all specs met.