Modern FPGAs, like the Xilinx™ 7-series devices used in the third generation of USRP products, provide an incredible amount of computational capability in the form of programmable logic. However, taking advantage of this tremendous computational power with traditional FPGA design flows can be difficult and accelerating host-based designs with FPGAs has historically been a complex task. This is the challenge that RFNoC addresses.
The goals of the RFNoC™ (RF Network-on-Chip) software are to simplify FPGA development and decrease development time for both experienced and novice FPGA engineers. With RFNoC, you can create FPGA applications directly from the GNU Radio Companion using the same workflow you use to create host-based flowgraphs (applications).Here is an example of an RFNoC flowgraph built using the GNU Radio Companion. With these four blocks, data is being generated on an x86 host PC, off-loaded to the USRP's FPGA for filtering, and then brought back to the host for graphical plotting:
To learn more about accelerating your designs with RFNoC, head over to the RFNoC Article in the Ettus Knowledge Base.