我的I210设计总结

2024-04-13 08:18
文章标签 设计 总结 i210

本文主要是介绍我的I210设计总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

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

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

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

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

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

6.烧写工具和烧写文件都可以在官网上下载到。工具支持多种系统,ARM下的需要申请,到intel的嵌入式论坛。如果第一次使用这些工具和文件,估计会和我一样蒙,花些时间熟悉一下。老手就很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.第一次做此类设计,中间的错误很多,持续改进吧!

 

本来觉得有官网的东西还是更准确,但是总有朋友问哪里下载,现在贴出来。

https://downloadcenter.intel.com/download/19186

这个应该是新的工具,我用的不是这个,这个没有验证,大体看了下,应该是能用的。

部分烧写数据,比较关键的是MAC,校验,还有1533这里,其他的不影响调试,可以根据自己情况调整。

红色是MAC,绿色是校验。

A000 00C9 0000 0D20 FFFF 3025 FFFF FFFF
0003 0000 402F 0000 FFFF 1533 8086 3367
8002 003C 67FF 00C1 E024 0040 2400 FFFF
303D 7000 5A0E 3400 0084 0000 3200 0706
200C 0584 0000 FFFF 0280 803D 0010 0098
1C66 003C 8000 0701 00F8 0097 1000 05F8
0100 4000 1332 4003 FFFF 4000 FFFF 00F9
FFFF FFFF FFFF FFFF 0094 0430 FFFF 401F
8072 003D 05D0 8000 FFFF FFFF FFFF FFFF
FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
0000 0080 FFFF FFFF FFFF FFFF FFFF FFFF
FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
FFFF FFFF FFFF 0091 FFFF FFFF FFFF FFFF
FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
FFFF AB03 88F9 FDC3 4C56 0601 0000 FFFF
000F 00DA 16E8 1541 0000 16D1 00A8 00A8
16D0 0090 5E00 0000 0241 0810 038D 3C21

 

这篇关于我的I210设计总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/899608

相关文章

Spring 依赖注入与循环依赖总结

《Spring依赖注入与循环依赖总结》这篇文章给大家介绍Spring依赖注入与循环依赖总结篇,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. Spring 三级缓存解决循环依赖1. 创建UserService原始对象2. 将原始对象包装成工

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

在Java中实现线程之间的数据共享的几种方式总结

《在Java中实现线程之间的数据共享的几种方式总结》在Java中实现线程间数据共享是并发编程的核心需求,但需要谨慎处理同步问题以避免竞态条件,本文通过代码示例给大家介绍了几种主要实现方式及其最佳实践,... 目录1. 共享变量与同步机制2. 轻量级通信机制3. 线程安全容器4. 线程局部变量(ThreadL

Mysql中设计数据表的过程解析

《Mysql中设计数据表的过程解析》数据库约束通过NOTNULL、UNIQUE、DEFAULT、主键和外键等规则保障数据完整性,自动校验数据,减少人工错误,提升数据一致性和业务逻辑严谨性,本文介绍My... 目录1.引言2.NOT NULL——制定某列不可以存储NULL值2.UNIQUE——保证某一列的每一

Spring Boot 与微服务入门实战详细总结

《SpringBoot与微服务入门实战详细总结》本文讲解SpringBoot框架的核心特性如快速构建、自动配置、零XML与微服务架构的定义、演进及优缺点,涵盖开发环境准备和HelloWorld实战... 目录一、Spring Boot 核心概述二、微服务架构详解1. 微服务的定义与演进2. 微服务的优缺点三

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

JavaSE正则表达式用法总结大全

《JavaSE正则表达式用法总结大全》正则表达式就是由一些特定的字符组成,代表的是一个规则,:本文主要介绍JavaSE正则表达式用法的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录常用的正则表达式匹配符正则表China编程达式常用的类Pattern类Matcher类PatternSynta

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

Nginx Location映射规则总结归纳与最佳实践

《NginxLocation映射规则总结归纳与最佳实践》Nginx的location指令是配置请求路由的核心机制,其匹配规则直接影响请求的处理流程,下面给大家介绍NginxLocation映射规则... 目录一、Location匹配规则与优先级1. 匹配模式2. 优先级顺序3. 匹配示例二、Proxy_pa