FPGA Development Boards / SoM / Custom Design / IP Integration
info@profpga.net +86 18621324348
Home/Blog/Application Practice/Building a Wideband SDR Frontend: Signal Chain from ADC to FPGA
Application Practice

Building a Wideband SDR Frontend: Signal Chain from ADC to FPGA

2026-10-15 Estimated reading: 12 min Duyuan Electronics R&D Team

The core of Software Defined Radio (SDR): digitize the RF signal as early as possible, and leave the signal processing to the FPGA. A typical wideband SDR frontend chain is: antenna → LNA → mixer → ADC → FPGA (DDC + FFT + demodulation). Along this chain, FPGA transceiver bandwidth, DDR buffering, and DSP horsepower determine how wide an instantaneous bandwidth you can achieve.

1. SDR Frontend Signal Chain

A complete wideband SDR receive chain:

1. Antenna + RF frontend: receive over-the-air signals, amplify via LNA, band-pass filter.

2. Mixing / direct sampling: either down-convert to IF then sample, or direct RF sampling (wideband ADC sampling DC~6GHz).

3. ADC sampling: digitize the analog signal, output JESD204B serial data.

4. FPGA processing: receive JESD204B → DDC (digital down-conversion) → FFT / demodulation → upload to host via PCIe.

The FPGA does three things in this chain: catch high-speed serial data, perform real-time digital down-conversion, and transfer data to host via PCIe. These three tasks define the FPGA selection.

2. How to Calculate Instantaneous Bandwidth

The most critical SDR metric is Instantaneous Bandwidth (IBW) — the bandwidth the FPGA can process in real time after ADC sampling.

Metric Formula Example (AD9680 14-bit 1GSPS)
ADC sample rate f_s 1 GSPS
Theoretical Nyquist bandwidth f_s / 2 500 MHz
DDC output bandwidth f_s / decimation dec=4 → 125 MHz
JESD204B lane rate f_s × 14 bit × frame overhead ≈ 10.24 Gbps/lane
FPGA transceiver pairs lanes per ADC AD9680 → 4 lanes

Bandwidth Budget Example

Project requirement: 100 MHz instantaneous bandwidth, dual-channel ADC.

  • ADC: AD9680 (14-bit, 1 GSPS, JESD204B), 4 lanes per channel @ 10.24 Gbps.
  • Dual ADC channels: need 8 transceiver pairs.
  • Post-DDC data rate: 100 MHz × 2 ch × 16 bit (I/Q) = 3.2 GB/s.
  • PCIe Gen2 x8 theoretical bandwidth ≈ 3.2 GB/s → fully loaded, need margin.
  • Conclusion: choose DUK7410T (8× GTP + PCIe Gen2 x8) just barely fits, but requires DMA ping-pong buffering.

3. FPGA-side Resource Requirements

SDR frontend FPGA resource needs:

Resource Purpose Typical Need (dual 100 MHz IBW)
High-speed transceivers JESD204B RX + PCIe upload 8 (ADC) + 4 (PCIe) = 12 pairs
DSP slice DDC NCO + FIR filter + FFT ~500~800
BRAM FIFO buffer + ping-pong ~20~40 MB
DDR bandwidth Large buffer + PCIe DMA ≥ 5 GB/s
Logic cells JESD204B IP + DDC + PCIe DMA ~100K~150K LC

4. Board Selection by Scenario

Entry: DUK7410T (¥9,999) — Single-channel 100 MHz SDR

8× GTP just fits one AD9680 mezzanine (4 lanes), remaining 4 pairs run PCIe Gen2 x8. 4GB DDR3 for ping-pong buffering. Suitable for education, single-channel spectrum monitoring.

Mainstream: DUF7690T (¥24,999) — Dual-channel 200 MHz SDR

36× GTH @10.3G, dual FMC HPC for two ADC mezzanines. 3,600 DSP slices handle 8-channel DDC easily. PCIe Gen3 x8 doubles bandwidth. Suitable for wideband spectrum monitoring, electronic warfare prototypes.

High-end: XCKU15P (¥15,999) — Direct RF Sampling SDR

GTY 28G transceivers support JESD204C lane rate 24Gbps. 8GB DDR4 ECC 19.2 GB/s. Suitable for direct RF sampling (6GHz ADC), multi-channel MIMO, phased array prototypes.

5. Three Common Pitfalls

Pitfall 1: JESD204B Lane Rate Exceeds Transceiver Limit

AD9680 at full 1 GSPS has lane rate ≈ 10.24 Gbps. DUK7410T GTP tops out at 6.6 Gbps — cannot connect! Must downsample to 250 MSPS (lane rate ≈ 2.5 Gbps). Or step up to DUF7690T (GTH @10.3G).

Pitfall 2: Insufficient DDR Bandwidth Causes Data Loss

Post-DDC 3.2 GB/s data must be written to DDR then read out via PCIe. DDR3 14.9 GB/s is theoretically enough, but actual read/write switching efficiency is only 60% — ≈ 9 GB/s. Calculate carefully for dual-channel; if insufficient, step up to DDR4.

Pitfall 3: Clock Misalignment, JESD204B Cannot Lock

JESD204B requires Device Clock + SYSREF alignment. ADC mezzanine clock must route through FMC CLK0 pin to FPGA MRCC/SRCC global clock inputs. If PCB routing is wrong, no matter how expensive the chip, it won’t work.

SDR frontend is not about buying the most expensive FPGA, but about getting the math right on ADC lane rate, instantaneous bandwidth, DDR buffering, and PCIe upload. Three calculations — transceiver pairs, DSP, DDR bandwidth — and the board choice falls out naturally.

ADCDDCFPGAJESD204BSDR
Duyuan Electronics · Original technical article
‹ Previous Post

How to Choose an FPGA for Your Project: Resources × Transceivers × Price Decision Matrix

Didn't the article solve your problem?

Contact us with your specific needs for one-on-one technical support.

Contact · +86 18621324348