Electronic – Software Defined Radio hardware

adcfpgasdrsignal processing

Most software defined radio peripherals involve a FPGA. In designing a SDR peripheral, I would like to know whether its possible to design a GNU Radio Compatible SDR hardware peripheral without any FPGAs. i.e. Directly sending the output from the ADCs to a PC via USB. If possible, I think enter image description here My interest to eliminate FPGAs (at some other cost) is because FPGA soldering, design is a difficult process that is not properly explained by most vendors. If there is a way I could eliminate them from my design it will be great. My interest is to design something similar to this.

In the above image I found from TI, is it possible that we directly connect the output of the ADC to the to the PC via some sort of a USB connection? Perhaps, transmission is possible this way as well.

I would also like to know the exact purpose(s) of using FPGAs in SDR peripheral designs. Im sure there may be many. But I would like to know the most imperative ones.

UPDATE:

As suggested by Neil_UK in the answers section, if the limitation is not being able to transmit the raw ADC samples via a USB interface to the PC due to slowness in USB speed, What would be the highest practical bandwidth that we could have in a system that directly connects the ADC to a USB? perhaps a USB 3.0? is it only the bandwidth that will be limited by this decision? What other fundamental features would go missing if SDRs were desiged this way? (provided its not required to operate on signals e.g. demodulate them)

Best Answer

Note: we're going to oversimplify SDR hardware for illustration in this answer

ADC --> PC is (one of) the functions of the FPGA

The FPGA serves different functions in different SDR designs, but one of its primary purposes is to "just connect the ADC to the PC". I think you don't fully appreciate the process of moving data through the Universal Serial Bus (USB) and the process of capturing the radio signal.

SDR's typically require at least two ADC streams (quadrature capture after down conversion) and usually have multiple quadrature channels to do advanced things like MIMO, RADAR/Beam-forming, etc...

The FPGA is required to multiplex the digital data streams coming off the various ADC's, to format the data in a manner compatible with USB (and ultimately gnuRadio), and to receive control information from the PC/gnuRadio and effect the various changes to the ADC's and down-conversion components.

Without the FPGA you would have to implement these functions with other hardware and your design would end up much more complex, rather than the simplicity you seek. SDR designs have evolved to their current state and they are much lower cost/simpler today than they have been in years past.

Examples

Some common SDR products from Ettus and Pervices Devices illustrate the central glue-logic nature of the FPGA in these architectures. Note the placement of the FPGA between the high-speed analog converters and the relevant external data interfaces.

enter image description here

enter image description here