我的I210设计总结

时间:2024-03-15 22:20:22

前段时间,因为项目需要做了一个I210的网卡设计。先做了miniPCIE的单板设计,后来又集到了主板上。第一次做此类设计,记
录下心得体会。

1.典型原理图很容易从官网上下载到,改一下就可以用。简单说下就是PCIE信号注意收发信号匹配,供电电源可直接用芯片自带
的转换。

2.做网卡一定要网络变压器的,选用你合适的。

3.硬件设计还是比较简单的,布线上都是老话,差分对等长,阻抗匹配。PCIE时钟线和数据线的阻抗值是不一样的,接网变的MDI差分线也是不一样的,切记!!电源上分了3种,注意输入输出走向,走线尽量宽,电源供不起来或者不足影响网络速度。当然了,四层板是必要的,不然很难做到信号和电源兼顾。当然了,不需要千兆的话,随便来吧。

4.硬件的安全防护就看应用场合了,场合不同需要的防护也不同。一般至少要价格ESD的。

5.网卡芯片需要烧录配置的,I210可以配置成不同的模式,这个是必须要配置的,它默认的是1531,是不能工作的。

我的I210设计总结

6.烧写工具和烧写文件都可以在官网上下载到。工具支持多种系统,ARM下的需要申请。如果第一次使用这些工具和文件,估计会和我一样蒙,花些时间熟悉一下。老手就很easy了。

7.官网给的烧写文件都时同一个MAC,可用于测试,修改MAC需要修改配置文件。熟读了手册会知道改动配置需要同时修改校验码,不然烧不进去的。

8.配置文件要不要FLASH呢?I210是支持不用flash的,可以直接烧录到iNVM里面。但是,要想你的网卡适应性好,还是加上FLASH吧。我设计的网卡开始就直接用了iNvm,在windows和linux发行版都可以认出来,但是在arm下认不出来,好像默认只认1533的设备,才能装上驱动的,157b的情况下不加载驱动。改驱动应该是可以用的,没有试过,我直接加了flash,用了1533的配置。当然,不管是哪种配置,在Windows下都没有问题。

9.顺带提一下I210使用的arm-linux内核配置。
有些 Linux 配置没有包含 i210 驱动你需要重新编译内核并将添加相应的驱动
[*]   Intel devices   │ │
 < >     Intel(R) PRO/100+ support (NEW) │ │
 < >     Intel(R) PRO/1000 Gigabit Ethernet support (NEW) │ │
 < >     Intel(R) PRO/1000 PCI-Express Gigabit Ethernet support (NEW) 
 <*>     Intel(R) 82575/82576 PCI-Express Gigabit Ethernet support 
 [*]       Intel(R) PCI-Express Gigabit adapters HWMON support (NEW)

10.网速测试。我使用了iperf这个工具测试网速,测得速度在970M/s,在不同系统上都有运行测试。设计是符合预期的。

11.第一次做此类设计,中间的错误很多,持续改进吧!