对某以太网设备进行长时间的温度循环测试,利用 SmartBits(SmartBits 设备,是由Spirent 公司开发的,用于以太网数据流量测试的设备。)对设备连续地、全速率地发送以太网数据包,测试人员发现一个奇怪的现象,设备在白天的测试中,均无丢包现象,夜间设备继续运行,但是第二天一早就会发现已发生丢包。
《讨论》
该设备的用户接口是百兆以太网接口,利用5类非屏蔽双绞线与 SmartBits 连接,由于端口数目较多,线缆布线较杂,存在线缆被实验室管理员挪动的可能,在挪动过程中,可能导致丢数据包。经与管理员确认,这种可能被排除。
温度循环测试是指,通过对温箱温度曲线的控制,以实现调整产品工作所处环境温度的目的。在这个测试中,温度曲线如图 6.9所示。

图6.9高低温循环测试温度曲线
循环测试一个周期共 26h (h:小时),分为六个阶段。第一阶段是用4h 均地从25℃降温到-5℃,第二阶段是在-5℃保持 5h,第三阶段用 4h 均地从-5℃升温到 25℃,第段用4h 均匀地从25℃升温到 55℃,第五阶段是在55℃保持 5h,第六阶段是用4h从55降温到25℃。在这个过程中,产品不间断地全速运行。测试人员每天清早 9 点钟开始一个周期的测试,到下午 6 点下班前检查丢包情况,没有发现丢包,第二天清早9点检查,发现已经出现丢包现象。头天清早 9点到下午 6 点,循环测试正好完成了头两个阶段,从夜间到第二天早上9点,完成第三、四、五阶段以及第六阶段的一半,即丢包现象总是发生在后四个阶段。而后四个阶段有两个特点:一是升温,二是高温。在高温 55℃下,测量单板上与 PHY 相关的信号完整性和时序,没有发现问题。
利用 SmartBits 对以太网产品进行流量测试,有两个原因可能丢数据包:一个是产品本身存在缺陷;另一个是SmartBits的晶振快于以太网产品上PHY使用的晶振在高温下进行大量测试后,可基本排除产品缺陷造成丢数据包的可能性以下主要讨论晶振快慢对数据传输的影响。
SmartBits 是用于以太网性能测试的设备,在本案例中,其作用是以线速的速度产生以太网数据包,并发送给以太网交换机,以太网交换机收到数据包后,在内部转发,最终又将所有数据包发回SmartBits。SmartBits 通过检测发出的数据包数目和接收的数据包数目是否相等,来判断是否发生了丢包。如图6.10所示,假设SmartBits 上的IC1是负责收发数据包的芯片,数据包到达以大网设备,完成业务后,通过芯片 PHY1发送回 SmartBits。在这个过程中,SmartBits 上的ICl是基于晶振OSCI收发数据包,而以太网设备的PHY1是基于晶振OSC2收发数据包,由于双方采用的不是同一颗晶振,在频率上必然有一定的差别。假设 OSC1和OSC2都是25MHz(误差士50ppm)的晶振(ppm指百万分之一,此处,50ppm的误差即为50Hz),虽然标称频率和精度完全一样,但实际振荡频率并不完全一样。利用频率计测量,在室温下,OsC1的频率是25.000050MHz,即25MHz(误差+2ppm);OSC2的频率是25.000100MHz,即 25MHz(误差+4ppm)。OSC2略微快于 OSC1,即以太网设备上 PHYI的工作速率高于SmartBits上IC1的工作速率,因此在常温下,以太网设备有能力将SmartBits发送来的数据包接收下来,并全部发回。

图6.10 SmartBits 与以太网设备连接
白天的测试从不丢包,分析温度循环曲线图可知,白天的测试包括常温和低温两种情况,在测试中,只有以太网设备被放置在温箱中,而 SmartBits 一直工作在室温环境,在低温-5C下测量OSC2的频率为25.000300MH,即25MHz(误差+12ppm),高于OSC1室温下的频率25MHz(误差+2ppm),因此,在低温下,以太网设备同样有能力将 SmartBits发送来的数据全部发回。
丢包现象都是发生在夜间,夜间的测试包括低温、常温、高温三个阶段,通过前面的测试已经证实,低温和常温条件下,OSC2 的频率都快于 OSC1,因此主要考虑高温的情况。在55C,测量OSC2的频率为 24.999825MHz,即25MHz(误差-7ppm),慢于OSC1,在这种情况下,以太网设备没有足够的能力将 SmartBits 发送来的数据包全部发回即对于以太网设备而言,接收到的数据包始终多于能发送出去的数据包,必然造成丢包。根据以上分析得到结论,夜间丢包的原因是高温下 OSC2 的速率慢于 OSC1。为了检验这个结论,设计者将 SmartBits 发包速率从全速的 100%调整为97%,进行多个温度循环测试,没有发现丢包。由此证明丢包原因确系高温下 OSC2 速度较慢。仔细查阅以太网设备上使用的晶振 OSC2的器件资料,发现晶振的输出频率随着环境温度的变化,也会有略微的变化,如图 6.11 所示。

图 6.11 晶振频率一温度变化曲线(-40~+85°)
以 25C时晶振的频率为基准,随着温度的降低,输出频率将先提高,再降低;随着温度的升高,输出频率将先降低,再升高。本例中,55C时的晶振输出频率相对常温最多可能降低12ppm。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
测试
+关注
关注
9文章
6412浏览量
131681 -
以太网
+关注
关注
41文章
6192浏览量
181563 -
晶振
+关注
关注
35文章
3638浏览量
73821 -
流量
+关注
关注
0文章
250浏览量
24645
发布评论请先 登录
相关推荐
热点推荐
关于蓝牙信标的丢包率分析
造成“丢包”(即接收不到部分广播包)的原因是多方面的,主要可以从以下几个层面来解释:一、核心原因:蓝牙扫描的“被动监听”机制手机上的标准蓝牙扫描(特别是在App层面)是被动、非连续的。它不是像收音机
闪德半导体推出RDT200高温老化测试设备
随着 SSD 与存储产品性能不断提升,高温老化测试在研发与生产中的重要性日益凸显。为了确保产品在极端环境下的可靠性和稳定性,闪德推出了 RDT200 高温老化测试设备。 RDT200
芯片被锁、无法烧录、丢包10%?Exx-SC套件特殊问题自救手册
开发踩坑不用慌,这篇教你一一攻克一、引言本次主要介绍套件一些特殊使用的示例,解决常见开发难题,例如:芯片被锁时如何解锁烧录引脚因错误配置而无法烧录的解决方案固定丢包问题的解决本文旨在帮助用户解决亿佰
详解网络丢包故障排查过程
干运维这么多年,见过各种各样的故障,但有些问题真的是让人抓狂。前段时间遇到的一个MTU问题,差点让我怀疑人生。表面上看是简单的丢包,实际上折腾了整整两天才定位到根因。今天就把这个案例完整地记录下来,顺便把MTU相关的知识点系统地梳理一遍,希望能帮到遇到类似问题的兄弟们。
使用内置晶振的话,串口波特率最大可以设置多少,不会丢包吗?
之前我用ST的某芯片,采用内置晶振,将波特率设置115200,100ms收发一次数据发现就有丢包的情况了,想知道,芯源的MCU效果如何?有大佬试过使用内置晶振的话,串口波特率最大可以设置多少,不会丢
发表于 01-19 06:48
GD32F470+LWIP TCP偶尔丢包怎么解决?
的重发机制。
因此认为是校验和之类的原因校验失败丢包。
开启了交换机端口镜像,监听tcp到交换机后的数据流量,发现两次上位机发送给板子出问题的tcp数据包的校验和都是0x0000。
发表于 09-29 06:43
STM32+DP83848跑10M可以,100M丢包很严重,请问有人遇到过吗?
大佬们,stm32驱动dp83848,跑10M可以,100M丢包很严重,请问有人遇到过吗
发表于 08-20 10:04
RK3568自制底板狂丢包?教你5分钟用Delayline一键复活网口
在使用飞凌嵌入式RK3568核心板搭配自制底板时,由于PCB走线与参考设计存在差异,常导致RGMII接口时序异常,进而出现网口不通或频繁丢包的情况。本文将为大家提供一套简单高效的调试方案,通过三步操作即可解决此类问题。
如何测试协议分析仪的实时响应效率?
50万pps)和触发成功率(如99.9%)。
工具:流量生成器、分析仪丢包统计功能。
多协议混合测试
目的:验证分析仪在混合协议环境下的实时响应效率。
方法:
同时生成多种协议数据
发表于 07-24 14:19
技术案例分享:高温流量测试丢包问题
评论