【发布时间】:2015-12-25 18:40:58
【问题描述】:
我正在开发一个逻辑内核,使用我的 FPGA 板上的 LAN8710 PHY 通过以太网在 FPGA 和 PC 之间执行数据传输。
我已经实现了将一些 UDP 数据包从 FPGA 传输到 PC。这是一个符合 PHY 传输要求的简单内核。它构建UDP包并将其传输到PC。
为了检查 PC 上的接收情况,我使用的是 Wireshark,如上所述,我正确接收了数据包。我用自己写的一个简单的 UDP 接收器检查了接收。
但是,我注意到我只在 Wireshark 在 PC 上运行时才会收到这些数据包。我的意思是,如果 Wireshark 开启,我的应用程序也会收到数据包,并且下图中收到的数据包计数器会增加。 (这张图不是我的,只是网上的一张)
http://i.stack.imgur.com/wsChT.gif
如果我关闭 Wireshark,PC 会停止接收数据包,并且接收数据包的计数器也会停止。我的申请也停止接收。
虽然是网络话题的新手,但我怀疑这个问题与PC端有关。似乎 Wireshark 正在“打开/关闭”以太网通信通道,或类似的东西。有人知道这个问题吗?
为了构建一个在 PC 和 FPGA 之间传输数据的功能核心,我开发了一个核心来传输和接收 UDP 数据包。下一步将是 ARP 实现(据我所知,让 PC 识别我的 FPGA 板)。在这两个设备之间执行全双工数据传输需要哪些协议?
非常感谢您,
米格。
【问题讨论】:
标签: networking udp ethernet