Talking about SDR FPGA typically earns you a blank stare. Let’s move beyond that and consider the power unleashed by Field Programmable Gate Arrays.
In the modern architecture, the SDR FPGA does most of the heavy lifting. Direct sampling receivers would be pretty much out of reach without the SDR FPGA. You will find these devices are the masters of high speed digital data crunching.
Field Programmable Gate Arrays are programmable hardware. They contain basic logic blocks, interconnection matrices and interfaces that you wire together to create almost any digital circuit. Basically, once you design a digital circuit using a schematic or a hardware description language (HDL), you can upload this design and execute it on the FPGA. You can’t do this with analog. Gate arrays are basically logic primitives that can be assembled into complex circuits.
What advantages come from SDR FPGA design? First, they run really fast and are massively parallel. DSP runs orders of magnitude faster than on a dedicated DSP chip or MCU. Second, they are reprogrammable. If you want to change your radio’s operation, just change your FPGA design. For example, when I change sampling bandwidth in my Perseus, the control software just uploads new code into the embedded FPGA.
What does the FPGA do really well? Digital down conversion, Fourier transforms, FIR filtering and decimation, multiple channel demodulation to name a few things.
SDR FPGA – Shared Reusable Intellectual Property
Hams who homebrew their own radios typically read handbooks and application notes, and especially cookbooks of previously designed circuits that are known to work. Hobbyists who write software or program Arduino typically reuse proven code libraries that do specific functions. Makers who 3D print download ready made models from Thingiverse.
The same goes for builders of software defined radios. There are tons of proven circuit designs, or intellectual property (IP) provided by FPGA manufactures or hobbyists. IP for pretty well anything you want to do with your SDR FPGA is readily available and accessible.
You will find a very wide range of tools available, include integrated development environments, and interfaces with design and simulation software like Matlab and Simulink. We will talk more about these tools later. You can use these tools to conduct Model Based Design of a receiver and download the design into programmable hardware.