问题描述
我想在通过GPOI从FPGA接收到触发信号后发送一个小的静态UDP数据包。此操作必须在1微秒左右的时间内完成,且延迟低且无抖动。我的设置包括将FPGA卡通过PCIe通道连接到NXP处理器。
我目前的实验表明,即使从内核中的GPIO中断处理程序开始进行发送,通常也会表现出过高的抖动,无法对应用程序有用(应该做到约一微秒)。由于我不熟悉DPDK,因此我想问一下在这种情况下是否有帮助。
我可以使用DPDK执行以下操作
- 在缓冲区中准备UDP有效负载。
- 将缓冲区推送到DPAA2。
- 在DPDK应用程序的PCIe上mmaped区域上定期轮询来自FPGA的GPIO。
- 触发DPAA2(而不是CPU DDR内存)中缓冲区的传输。
问题:FPGA不应发布传输DPDK rte_eth_tx_burst
,而应直接与网络硬件交互以将数据包排队。恩智浦上的DPDK是否可以针对我的用例做同样的事情?
注意:如果DPDK不能提供帮助,我想我需要将DPAA2管理复合体的IO门户直接映射到FPGA中。但是根据NXP的文档,他们不认为DPAA2是公共API(与USDPAA不同),而仅通过以下方式提供支持: DPDK。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)