我尝试了几种方法来测试Imx6卡的以太网通信。
1) 当我从 IMX6 ping 计算机时,ping 无法到达 IMX6。但是当我从计算机 ping imx6 时,可以到达。测试结果如下。 测试 1.1
2)用Iperf3测试,电脑作为客户端时,可以接收imx6的数据,但是imx6作为客户端时,imx6无法接收数据,带宽太低,测试结果如下。
造成这些问题的原因是什么?
你有什么建议?
问候
艾敏
测试环境
IMX6四核
U-Boot 版本:U-Boot 2015.04-TQMa6-20151002(2016 年 9 月 16 日 - 14:58:59)
内核版本:3.14.28-g5e30b53-dirty
计算机:华硕 R510V(千兆以太网)
答案1
这是硬件限制和软件支持不佳的综合结果。i.mx6 无法达到线速。NXP 声称它只有 470Mbps(第 98 页http://cache.freescale.com/files/32bit/doc/errata/IMX6DQCE.pdf),但他们测量的结果约为 400 Mbps。
但是,如果您更新到上游内核,则应该能够达到大约 600Mbps。
答案2
回应你的2点:
ping 时间正常(3ms 或更短)。当您从 imx6 ping PC 时,数据包丢失可能是由于 PC 上的防火墙软件造成的。
我在 imx6 板上也遇到过同样的问题。您可以使用(廉价的)托管交换机并打开 802.3x 流量控制来解决这个问题。当流量控制打开时,我在 imx6 上获得了略低于 500mbps 的 iperf3 接收速度。