RFNoC软件的目标是缩短FPGA工程师将IP集成到USRP信号处理链中的开发时间,使用RFNoC,您可以使用或创建基于主机的流程图(应用程序)相同的工作流程直接从GNU Radio Companion创建FPGA应用程序。现代FPGA,例如第三代USRP产品中的Xilinx™7系列器件,以可编程逻辑的形式提供了庞大的计算能力。但是利用传统FPGA设计流程来实现巨大的计算能力可能很困难,并且使用FPGA加速基于主机的设计历来是一项复杂的任务。这是RFNoC有待解决的挑战。
RFNoC是一种网络分布式异构处理工具,专注于在USRP设备中实现FPGA处理。 它允许您以透明的方式在FPGA上打开和移出数据,从而能够在应用程序中无缝地使用基于主机和基于FPGA的处理。信号处理算法包含称为“NoC块”的模块,并提供接口包装器以封装现有或外部IP以与RFNoC一起使用。 例如,允许您导入Xilinx™CoreGen™IP模块,并立即在RFNoC应用程序中使用它们。NoC块的内部结构是完全独立于任何其他块,可以使用任何支持AXI流接口的工具进行设计,包括VHDL,Verilog和Xilinx™Vivado™HLS。
RFNoC由UHD™软件集成,并且支持所有第三代USRP X300系列和E300系列, RFNoC均可开箱即用。 与UHD一样,RFNoC也是免费和开源软件(LGPL),完整的源代码可以在公共代码库中找到。