浅谈以太网故障原因
http://news.eeworld.com.cn/wltx/2018/ic-news071820964.html
以太网频繁出现通信异常、丢包等现象,是否会想到是硬件电路设计问题?成熟的以太网电路设计看似简单,但如何保证通信质量,在通信异常时如何快速定位问题,本文将通过实际案例来讲述网络通讯异常的解析过程和处理方案。
一、案例情况
一日,核心板基于TI公司的DP83848KSQ PHY芯片二次开发时搭建一路百兆以太网电路,在研发测试阶段,发现以太网电路频繁出现通信异常,表现为工作一段时间后网络自动掉线,无法重连。多台样机均表现出同样的现象,于是研发展开一系列的问题定位。
二、现场排查
软硬件工程师开始各自的问题定位,这里则谈谈硬件问题定位。
-
电源电路测试
首先先确定电源电路情况,测试PHY芯片工作时和通信异常时的供电电源的电压,电源电压稳定,无跌落,电平为3.3V;其次测试纹波噪声,测试结果也满足要求。电源电路影响暂可以排除。
2.原理图检查:
然后从原理图下手,检查PHY芯片的外围电路和对照处理器的引脚顺序,如图1所示,外围电路接线无误,设计符合设计规范。继续检查以太网的变压器电路,如图2所示,该电路也符合设计规范。原理图设计基本可以排除。
3.样机电路测试
时钟信号测试:时钟信号幅值、频率、上升下降时间、占空比等参数均满足要求。
时序测试:数据信号和控制信号的时序裕量均满足手册要求。
数据信号波形测试:在信号测试时,发现PHY芯片的数据信号和控制信号有异常的波形,如下图3、4所示:
图3 RMII_RXD信号
图4 RMII_TXD信号
图5 PHY芯片的IO参数信息
图6 处理器芯片的IO参数信息
从图3和图4可以看出,处理器与PHY端之间的数据信号出现信号完整性问题-反射,均存在振铃和过冲问题,且过冲的幅值已超出芯片可接受范围(芯片与处理器的以太网IO均为3.3V供电),可能会导致IO口永久性的损坏,且易产生EMI问题。
于是查看原理图设计,发现信号线和控制线上均没有串接电阻,同时PCB上单端信号线没有做等长和50Ω的阻抗,信号传输过程中感受到阻抗突变,导致信号产生反射,继而产生过冲和振铃现象。
4.以太网差分电路
差分电路的测试主要是通过物理层一致性测试,通过一致性测试评估差分信号的信号质量。本次测试的目的是为了进一步分析差分信号的设计是否满足要求。测试结果如下:
图7 物理层一致性测试结果
图8以太网眼图模板测试结果
从图7和图8可以看出,物理层一致性测试结果为Fail,测试不通过的项主要是以太网眼图模板测试、负过冲测试、边沿对称度测试。从图8的测试结果可以看出,差分信号的幅值已经超出标准值,已经触碰到眼图模板。差分信号的幅值过大,可能是由于信号的反射导致。
变压器是串联在差分信号线上的用于隔离的器件,引脚就会产生寄生参数,也会产生阻抗突变,所以也是需要进行考虑的一个方面。于是先排除变压器的影响,通过更换一个不同型号的变压器,输出的结果并没有太大的差别。继续着手分析传输线的阻抗。
PCB的阻抗又可以从两方面进行分析。一是走线的阻抗,二是信号线上的匹配电阻。
首先从PCB走线的阻抗进行分析,以太网的差分信号是有差分100Ω阻抗要求,本次采用的是E5071C网络分析仪进行测试,测试结果如图9所示:
图9 差分信号PCB走线阻抗测试结果
从图9看出,差分信号的PCB走线阻抗最大值为109Ω,最小值为100Ω,存在这个偏差的原因是在于差分信号线上的保护器件和匹配电阻,有器件必然就会产生焊盘,所以导致实测值与理论值偏差10Ω也是有可能的,由于在PCB设计阶段要求差分信号的走线阻抗为100Ω,走线阻抗最大允许偏差±10%,所以实测基本能满足设计要求。差分信号的阻抗基本符合要求,继续进行下一项分析。
其次从信号线上的匹配电阻进行分析。由于百兆以太网的PHY芯片到变压器之间的差分线上有一个49.9Ω的电阻进行匹配走线,如图10所示。同时隔离变压器的中间抽头具有“Bob Smith”终接,通过75Ω电阻和1000pF电容接到机壳地。然而查阅DP83848KSQ芯片的手册,如图11所示,提到匹配电阻有Layout要求:49.9Ω电阻和0.1uF退偶电容必须靠近PHY端放置。
图10 DP83848KSQ芯片差分接口设计图
图11 DP83848KSQ芯片Layout指南
于是查看PCB布局,结果发现实际的布局将电阻电容放置在靠近变压器的一侧。手册虽然没有描述到该电阻放置错误会有什么影响,于是通过飞线的方法,把电阻电容放置在PHY端,再结合数据线和控制线的反射问题,在信号线的源端串联一个33Ω的电阻,检查无误后,上电进行一致性测试,最终测试结果为Pass,测试结果如图12、13所示,从图12可以看出,整改后的眼图模板测试比整改前的要好,各项测试数据也满足要求。同时也进行通信稳定性测试,最终通信测试48h后,以太网无掉线现象,同时丢包率为0%。
测试无误后,重新进行原理图设计,在信号线和控制线上加入串阻。PCB设计方面,数据线做单端50Ω阻抗匹配,把49.9Ω的电阻和0.1uF电容靠近PHY端放置,差分信号线做100Ω阻抗。重新拿到样机后进行网络通信,连续通信三天后无掉线现象,同时丢包率也满足要求,问题解决。整改后的PCB布局及走线如图14、15、16所示。
图12 整改后的以太网眼图波形
图13 整改后的以太网一致性测试结果
5.整改后的PCB布局及走线图
图14 整改后PHY端数据信号走线及端接电阻布局
图15 整改后PHY与变压器端的PCB布局图
图16 整改后变压器与RJ45端的PCB布局图
三、设计总结
在本次以太网通信异常问题定位时,总结了以下几点注意事项:
(1)PCB走线越短越好;
(2)以太网PHY和处理器端的数据线和控制线注意阻抗匹配,避免反射。因为信号在传输过程中感受到阻抗不匹配时,容易产生反射,同时驱动能力过大时也会容易产生反射。在原理图设计时,若无法预测PCB走线长度,建议在信号线和控制线的源端串联一个22~33Ω的小电阻,且信号线等长和做单端50Ω阻抗处理;
(3)PHY端差分信号线上的49.9Ω匹配电阻根据手册要求放置,尽量靠近PHY端放置;
(4)差分信号线需要做差分100Ω的阻抗,同层走线,建议采用4层板PCB;
(5)变压器需靠近RJ45端放置;
(6)“Bob Smith”终接需靠近变压器端放置。
成熟的以太网电路设计看似简单,但如何保证通信质量,硬件设计也尤为重要。一个很小的降低成本的考虑,可能问题就会在量产时被无限放大,最终面临的是硬件改版、人力投入、成本增加、项目延期。在设计前期把这些问题考虑进去,就可以避免不必要的问题发生。