【问题标题】:In gnuradio, how much work is done in the fpga?在 gnuradio 中,fpga 做了多少工作?
【发布时间】:2016-05-06 18:24:57
【问题描述】:

其中一些 ettus 盒子中有一些严重(且非常昂贵)的 FPGA。如果他们所做的只是将数据从 ADC 传递到以太网总线,这似乎是一种浪费。当我在 GRC 中构建东西时,FPGA 完成了多少信号处理,我的 PC 完成了多少?

【问题讨论】:

    标签: gnuradio usrp software-defined-radio gnuradio-companion


    【解决方案1】:

    GNU Radio 本身就是主机软件。因此,您在 GNU Radio 中编程的所有处理都在您的 CPU 上完成,除非您使用特殊的硬件加速器块,例如:

    • gr-theano:GPU 加速
    • gr-fosphor:OpenCL 加速的瀑布谱图
    • gr-ettus:使用RFNoC 在 X3x0 的 FPGA 上实现特定功能。这需要您构建一个 FPGA 映像,其中包含您用作 gr-ettus 块的功能。

    一般来说,X3x0 中的 FPGA 已经做了很多:物理上,X3x0 的 ADC 和 DAC 默认运行在 200MHz,您可以选择其中的整数分数作为“用户采样率”;从/到该速率的插值/抽取以匹配这些硬件时钟是在 FPGA 中使用相对较大的滤波器完成的。此外,您还可以通过设置数字调谐偏移量来对信号频率进行数字转换,这也是由 FPGA 中的 CORDIC 完成的。

    【讨论】:

    • 我们希望以 200 MHz 的频率完全运行(没有下采样或移位)。这应该可以释放大量 fpga,是吗?下采样/上采样/过滤功能使用了 400,000 个逻辑单元中的多少?
    • @apchar :没那么多。如果你有 X310,它具有与 X300 相同的功能,但更大的 FPGA……很难单独回答这些问题。再次尝试 RFNoC;如果您已经拥有 Vivado 许可证,只需 git pull https://github.com/EttusResearch/uhd/ ; cd uhd; git checkout rfnoc-devel; git submodule --init update
    • @apchar:您有多少 FPGA 开发经验? RFNoC 使它更容易,但它仍然比编写主机代码复杂得多。所以我宁愿从较低的采样率开始,在您的 PC 上进行,然后确定 实际 瓶颈,然后加速它们。也许注册并发送电子邮件至GNU Radio discuss mailing list 向社区介绍您的项目;他们可能会有一些有趣的意见。
    猜你喜欢
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-04
    • 1970-01-01
    • 2014-07-23
    • 2017-10-12
    相关资源
    最近更新 更多