1. 一致性测试前,先把百兆以太网的物理层信号特征理顺
1.1 MLT-3编码:为什么百兆以太网要用三电平信号
很多工程师一听到100BASE-Tx,第一反应就是"这不就是百兆以太网嘛,两根线发、两根线收,信号能通就行",但真正拿示波器去看波形时,会看到和想象中完全不一样的东西——不是干净利落的方波,而是三电平的"台阶"信号。这个台阶信号就是MLT-3编码(Multi-Level Transmit-3),是百兆以太网物理层最核心的信号形态。
MLT-3用的电平状态是+1、0、-1三个电压值。发送端根据数据流从一个电平跳到下一个电平:+1跳到0,0跳到-1,-1跳到0,0再跳回+1,周而复始。用三个电平的好处很直接:相比传统的二电平NRZ编码,同样的符号速率下,信号的基频更低,实际占用的频谱更窄,对外辐射和线对间的串扰也更小。换句话说,MLT-3是把"100Mbps的数据"翻译成"125Mbaud的链路符号",再用更缓和的电平变化把符号送到网线上。
这里有一个很多人第一次接触时容易绕进去的点:数据速率100Mbps,但链路符号速率是125Mbaud。原因在于100BASE-Tx物理层采用了4B/5B编码——每4位数据被编码成5位符号发送。4/5的编码效率正好把100Mbps抬到125Mbaud。既然每个符号周期是8ns,信号的主要能量集中在31.25MHz附近,这比直接用100MHz方波去传要"温柔"得多。这也是百兆以太网能跑双绞线、能过电磁兼容测试的基础。
1.2 差分信号与测试参考点:在哪儿测、测什么
100BASE-Tx使用两对双绞线,一对负责发送(TX+和TX-),一对负责接收(RX+和RX-),中间通过RJ45连接器接出去。物理层一致性测试关注的是差分信号,也就是测TX+与TX-之间的电压差,而不是任一单根线对地的电压。这是因为接收端本身就是差分接收结构,真正决定信号质量的是差分电压,单端的共模成分只会影响电磁兼容和误码率。
在测差分信号之前,必须明确"在哪里测"这个问题。规范层面,一致性测试的参考点是MDI(Medium Dependent Interface),也就是RJ45连接器处,连接器之后的线路和变压器都被视为物理层器件的一部分。可是研发阶段,很多工程师喜欢把探针直接点到PHY芯片的输出引脚上,去测PHY直接输出的原始信号。这个做法可以理解:能最快判断PHY本身是否正常,排查芯片配置问题。但要注意,PHY引脚处的波形和RJ45处的波形并不是一回事——中间隔了一个隔离变压器,变压器会带来高频损耗、相位偏移,还可能对共模信号有抑制作用。所以,做研发摸底可以测PHY引脚,做认证和量产抽检必须以MDI输出为准。
我见过不少项目,开发阶段在PHY引脚实测波形漂亮得很,送去认证却冒出一堆模板裕量不足的问题。原因就是变压器后面链路的频响特性不够好,或者PCB走线在连接器附近引入了阻抗不连续点。所以,测试参考点一旦选了MDI,就要从源头接受这一整套链路带来的损耗;选PHY引脚,就别拿结果去跟认证报告对标数据。
1.3 认清"符号速率"和"数据速率"的差距
用示波器测百兆以太网时,系统会自动识别测试模式,但新手还是得把两个速率刻在脑子里:数据速率100Mbps,符号速率125Mbaud。示波器上的时基设置、采样率要求、模板测试的判定逻辑,全都要以符号速率125Mbaud为基准,也就是一个符号8ns。
出现这个差距的根本原因,是4B/5B编码还有一个附加任务:抗游程。纯数据流里如果连续出现一长串"0"或"1",接收端的时钟恢复电路会失锁,因为没有足够的电平翻转来边沿。4B/5B编码保证每5位符号里至少有两个"1",即使发出去的全是"0"数据,编码后也会有足够的翻转密度。这些符号层面的约束,最终都会反映到示波器看到的波形跳变密度上。实测时可能会发现,同样是"看起来正常的"链路,不同数据内容下波形模板上的余量有差异,这就是编码模式对信号频谱的影响。理解这一点,后面看模板测试失败结果时就不会一头雾水。
2. 示波器选型与测试环境准备:带宽、探头、夹具怎么配
2.1 带宽与采样率的下限,我按什么标准估算
做100BASE-Tx一致性测试,示波器的带宽是第一块硬门槛。有朋友问过我:百兆信号基频才31.25MHz,用100MHz带宽的示波器不行吗?我的答案是:看波形大概可以,做一致性测试绝对不行。
原因有两层。第一,模板测试不仅要看信号的主频,还要看波形边沿的细节,比如过冲、振铃、斜率和毛刺。100BASE-Tx信号上升时间在3到5ns量级,粗略算一下,0.35除以3ns约等于117MHz,这是刚好看到这个上升沿的最低带宽。真要把边沿形状测准,至少要留3到5倍的裕量,所以一致性测试软件普遍要求500MHz起步,1GHz更稳妥。第二,抖动测试需要极细的时间分辨率,带宽不足会把边沿"抹平",导致测出来的抖动值明显偏大,甚至直接误判Fail。
采样率方面,500MHz带宽的示波器至少得有5GS/s,1GHz带宽则建议10GS/s。5GS/s意味着每个8ns符号周期内要采集40个点,模板判定才能比较可靠。如果示波器采样率只有2.5GS/s,波形重建的插值误差会吞掉一部分真实差表现,模板边缘的判罚会忽好忽坏,这种数据的可复现性很差。
我在实际测试中还会额外注意示波器的存储深度。一致性测试往往要连续采集几百万个点做抖动统计,存储深度不够的话,要么被迫降采样率,要么只能分段捕获,统计样本量不足,结果可信度大打折扣。选型时不妨直接看:带宽在1GHz左右、实时采样率10GS/s、存储深度在4M点以上的通用示波器,基本就能干净利落地跑完百兆以太网全套一致性测试。
2.2 差分探头和SMA测试夹具的使用细节
测差分信号,第一原则是用差分探头,不要用两个单端探头凑数。两个单端探头分别点TX+和TX-,再送到示波器的A-B通道相减,一来两个通道的幅频响应不一致,高频段相位差会引入误差;二来单端探头的地夹一旦接到板子的地,就会形成地环路,把开关电源的共模噪声注入到信号里。差分探头天生抑制共模,这是做一致性测试的基本前提。
差分探头的带宽也要跟上示波器。如果示波器是1GHz,那探头至少也要1GHz,衰减比尽量选固定10X或可切换10X/100X的,避免探头本身成为带宽瓶颈。点测之前,务必做探头的DC偏置校准和deskew(去偏斜)。deskew是什么意思?两个差分通道内部延时不完全一致,导致一个信号到了示波器比另一个晚了几十皮秒,测出来的差分波形边沿会明显变丑。用示波器自带的deskew校准源,把两条通道的延时差校到最小,尤其是后续要测上升时间和抖动时,这一步省不得。
从操作稳定性来讲,探头点测只适合研发摸底,因为人手会有微小抖动,而且每次点上去的接触阻抗不稳定。正式测试要把信号引到固定的SMA测试夹具上。市面上很多示波器厂商都提供配套的串行数据测试板,RJ45进来,内部把差分对通过SMA端子或探头座引出,这样每次测试的物理接口完全一致,数据的可重复性就上来了。使用夹具时,还要检查SMA线缆是否完好,接头是否有氧化。我在实验室里见过太多案例:模板Fail的元凶根本不是电路,而是一根插拔几百次的老化线缆在1GHz衰减上差了1-2dB。
2.3 阻抗匹配、线缆相位和去嵌入
示波器输入端的阻抗设置要跟着信号链走。用差分探头时,探头本身就是高阻负载,示波器主机通道设置在1MΩ,通过探头内部的衰减网络匹配;用SMA夹具直连时,标准的射频测试链路是50Ω源阻抗,示波器通道必须切到50Ω输入,否则100Ω差分源阻抗和1MΩ高阻输入之间形成反射,波形上会出现反射台阶,模板测试直接Misjudge。
夹具带来的另一个问题是两路信号的通道间延时差。SMA测试夹具引出两个SMA端子,如果不做校准,两条线缆在机械长度上相差几毫米,对应的延时差可能会到几十皮秒,对百兆信号的边沿测量已经不是小数目。所以正规流程里,必须在示波器里加载用户自定义的校准文件,或者用自动化测试软件里的夹具去嵌入向导,把线缆和夹具的S参数损耗补偿掉。
去嵌入这件事,很多自学上手的工程师会忽略,觉得"线缆那么短能有多少损耗"。实际在1GHz附近,便宜一点的SMA线缆环路损耗都超过0.3dB,再加上测试夹具上的过孔和连接头,叠加起来足以让本来余量很紧的信号触发模板报警。做一致性测试前花5分钟做一遍校准,后面省出来的是排查故障的一整天。我这里多说一句:校准之后,测试结果才允许用来做Pass/Fail的最终判定;不校准的数据只适合做趋势观察。
3. 核心测试项目逐个拆解
3.1 波形模板测试:一眼看出"胖波形"
模板测试是全套一致性测试里最直观、也最容易被误读的一项。它的原理不复杂:示波器采集到一段测试码型信号后,把波形叠加在规范定义的模板上,模板在二维平面上划出了一条"安全通道",如果波形任何部分碰到模板的边线,或者落进禁区内,测试即判Fail。
100BASE-Tx的模板形状大致是"括号加台阶"的结构:中间高电平区和低电平区分别围出允许范围,边沿则限制在两条斜线之间。也就是说,这个模板同时约束了幅度、上升时间、下降时间和过冲量。一个典型的不合格波形,常见表现是边沿香蕉形往模板里戳,或者是高电平平台出现过冲后回弹太慢,形成往下的毛刺。
模板测试失败,往往不是PHY芯片坏,而是链路阻抗连续性的问题。我在遇到模板Fail时,一般不急着怀疑芯片,按优先级排查:隔离变压器附近的共模电感或稳压管是否引入了额外电容;PCB差分走线的回流路径是否被切断;PHY芯片到变压器的串联匹配电阻有没有焊错料。有一次排查到最后,发现是量产时一个0603电阻被贴成了0402,阻值偏差3%,就导致模板余量从20%降到负值。这类问题,接口上是"波形丑",根因上是制造偏差,模板测试的价值恰恰就在这里。
3.2 输出差分电压与上升/下降时间
输出差分电压,也就是MDI端口上差分信号的峰峰值,是一个基础但关键的指标。100BASE-Tx标称信号幅度约2V峰峰值,正负电平分别约±1V。测试软件会按规范给出上下限,幅度过低,远端接收器可能无法正确判决;幅度过高,除了辐射问题,还可能在长线上产生更强的反射,导致对端误码。
上升/下降时间的测量通常是按20%到80%的电平区间来算。这个指标太快太慢都不行:上升沿过缓,符号间干扰增大,抖动会恶化;上升沿过陡,高频能量增强,EMI实测很难看。实践中3到5ns是常见通过范围。这里有个容易踩的坑:如果用不同带宽的示波器测同一板卡,测出来的上升时间会不一样。低带宽示波器会把沿磨平,导致上升时间测出来偏大。所以这项数据在不同测试环境之间没有可比性,必须固定在同一个带宽、同一套夹具条件下去对比。
测量差分电压时还要注意AC耦合场景。示波器通道本身可以设置AC耦合,但如果探头前端有高通或者测试夹具内含耦合电容,低频分量会丢失,波形平台会出现下垂。用示波器的自动测量功能看Vpp没问题,但拿模板测试判定时,平台下垂会让波形往模板内侧靠,造成假Fail。所以我在实际测试中,先用DC耦合确认信号整体形态,再切成AC耦合看细节,两者互补。
3.3 抖动测试
抖动,是物理层一致性测试里最不好定位问题的一项。示波器测抖动,核心思想是把恢复出来的时钟当作参考,测量每个信号边沿相对理想时钟位置的偏移量,统计出峰峰抖动值(Tj)和随机抖动分量(Rj)。百兆以太网的符号周期是8ns,抖动的绝对值只要控制在纳秒量级以下问题不大,但如果超标,接收端的眼图闭合、误码率上升往往接踵而至。
抖动来源要分清是随机性的还是确定性的。随机抖动主要来自热噪声,统计上服从高斯分布,表现为长期采集下偶尔出现的大偏移;确定性抖动往往有明确触发源,比如电源纹波、相邻差分对串扰、过孔阻抗不连续等。好的示波器测量软件能给出Tj/Rj/Dj的分解结果,并输出抖动频谱。我排查抖动的顺序一般是:先看抖动频谱的尖峰位置,如果尖峰跟PHY芯片的电源开关频率或板上某个DCDC频率吻合,直接去查电源去耦;如果尖峰分散在低频段,优先考虑走线串扰。
有一个实战经验值得强调:抖动测试对探头地环路的噪声极其敏感。测量环境里如果附近有台电机或变频设备,地环路引入的噪声会直接被统计成随机抖动。所以做一致性测试时,我会花一分钟检查探头连接处的地参考,并把被测板放在金属桌面上,测试设备的接地点和主板的地用粗导线短接,把共模噪声压到最低。
3.4 测试项之间的因果关系
四项核心参数不能孤立看。幅度超标往往会连带模板和上升时间出问题;模板Fail的位置如果集中在高电平和低电平的过渡区,多半和上升时间或过冲有关;抖动恶化则会让边沿位置在模板上晃动,间接降低模板通过裕量。所以测试报告出来后,不要急着贴结论,先把四项参数放一起看关联性。
我在分析测试报告时的经验是:如果全部参数都Fail,先查参考时钟和PHY配置;如果只有模板和上升时间Fail,重点看高频损耗和信号路径;如果抖动单独Fail,重点查电源和串扰;如果幅度单独Fail,看匹配电阻和PHY驱动设置。按这个顺序去定位,通常能在一个小时内锁定大致范围。
4. 实操:让DUT进入测试码型,完整跑一遍一致性测试
4.1 测试码型的来源与切换方法
一致性测试不能靠网络设备自发发的随机业务流量来测,因为随机信号无法稳定比对模板。规范定义了一系列标准测试码型,比如高频测试码型、TP_IDL空闲码型等。被测设备的PHY芯片要明确支持进入这些测试模式,通常是通过MDIO管理接口写入特定寄存器值,或者由PHY厂商提供的测试固件完成切换。
实际操作中,我常用两种方式。一是用测试软件自带的PHY控制模块,软件通过MDIO/MDC接口直接读写PHY寄存器,把设备切到100BASE-Tx测试模式;二是如果开发板调试时已经把PHY的控制脚本烧进Bootloader,用串口命令触发测试码型。如果没有办法进入标准测试码型,比如某些PHY根本不开放管理接口,那就只能退一步,让DUT持续发送"回环数据包",勉强能提供一定密度的翻转信号,但结果不能作为认证参考。
有一点必须提醒:测试码型切进去之后,网口的link状态可能会发生变化。很多PHY在测试模式下会把link partner断开,此时交换机会显示"未连接",这正是PHY在专心输出测试码型的正常表现,别以为是测试失败把PHY搞挂了。
4.2 配置示波器一致性测试软件的具体步骤
现在主流示波器厂商都把一致性测试做成了一键向导。我的操作流程基本固定:
- 示波器开机,预热至少15分钟,让机内温度稳定后再做校准;通道接好探头或SMA线缆。
- 做通道deskew校准和探头偏置校准,加载测试夹具的S参数文件。
- 启动一致性测试软件,选择以太网类型为100BASE-Tx,测试项勾选模板、幅度、上升时间、抖动。
- 选择测试参考点(MDI或PHY引脚),这一步要和产品规划阶段统一。
- 连接PHY控制接口,软件自动把DUT切到测试模式并确认链路状态。
- 设置采集参数:采样率建议固定为示波器最高档,存储深度至少让单次采集时间覆盖几十万符号;触发方式用上升沿或数据码型触发都行。
- 点击开始测试,软件自动采集、自动判定、生成报告。
跑之前我会在示波器上看一眼波形形态,确认能稳定看到MLT-3三电平台阶,再让软件进入自动分析。如果波形连台阶都看不清,多半是探头或夹具没接牢,这时候开始自动测试,结果没有意义。
4.3 样本量与统计置信度
自动测试软件只是工具,样本量得由人来定。很多软件默认采集2M点或几万个符号就出报告,如果是在开发初期快速摸底倒是够用,但要最终下结论,样本量要加大。抖动和模板边缘的"小概率事件"恰恰决定了能否通过,样本太少,最坏情况根本没有被捕获。
我给项目定的经验值是:模板测试至少采集40万个符号以上,抖动统计至少要基于数万次边沿。实际执行中,我会把示波器采集次数设成多次累加,比如连续采集5000帧,每帧包含完整的测试码型,让软件把多帧数据合并做统计分析。这样测出来的Tj值,比自己拿单帧波形手动量要可靠得多。
还有一点,一致性测试的重复性要靠"同一配置、同一环境、同一样本量"来保障。同一块板子,今天测是通过,明天测又差一点,不一定见鬼了,很可能是环境温度变了或者某个线缆接头松动。所以正式测试前,我会在同一块参考板上重复跑三次,确认软件设置和环境没有问题后,才开始批量测。
4.4 一个模板Fail的调试过程
拿一个我近期处理过的模拟案例来展示完整链路。某开发板,PHY输出到RJ45之间走线约30mm,两侧各串一个10Ω匹配电阻,带常规隔离变压器。用1GHz示波器+差分探头点测PHY引脚时,波形很标准;换到RJ45口通过SMA夹具测,模板测试在上升沿位置Fail,余量-8%。
排查的第一步:先校验信号链路。把探头从RJ45移到PHY引脚,用同样的码型测,模板通过,说明PHY本身正常,问题集中在PHY到RJ45这一段链路。第二步:看这一段链路的阻抗连续性。用TDR功能测差分阻抗,发现在隔离变压器引脚附近有一个明显的阻抗掉坑——因为PCB上变压器周边铺了实心铜,两条差分走线经过时离地平面太近,局部特性阻抗只有75Ω左右。反射信号叠加在上升沿上,正好把波形推入模板禁区。第三步:调整走线,在变压器下方镂空一部分地平面,拉开差分对与地的距离,TDR复测阻抗恢复到98Ω附近。再跑一次模板测试,余量从-8%回到了28%。
这个案例的教训是:模板Fail时,不要急着改PHY驱动能力或者换芯片,先看看是不是PCB自身把信号给害了。示波器一致性测试最大的价值,不是报出一个Fail,而是把"信号到底丑成什么样、丑在哪儿"量化出来,剩下的定位工作其实是在PCB和电源上去做文章。
5. 量产与研发视角下的一致性测试经验
5.1 为什么"能ping通"不能替代一致性测试
很多做嵌入式产品的朋友爱说:"网口能ping通,就说明没问题。"这话在研发打杂阶段可以,但上了量就不成立。物理层信号的质量不单决定"现在能不能通",还决定"在各种温度和线缆长度下能不能稳定通"。同一盒样板里,有的板子相位噪声小,有的板子模板余量贴近零点,出厂时都能亮灯、能ping通,但客户那边换一根长网线,信号差一点的板子就会偶发断流,售后排查极费时间。
一致性测试做的是把每个样卡的物理层参数量化出来,模板余量多少、抖动多少、幅度多少,全变成可比较的数字。生产线上不需要像研发那样逐项分析,只需在测试软件里设好上下限,让产线人员判断Pass/Fail即可。一次测试花费几分钟,换来的是批次的稳定性和可追溯性。
5.2 测试结果变化时的排查顺序
如果同一块板子前后两次测试结果差异明显,我的排查顺序是:
- 环境变化:室温有没有波动,附近有没有新增的干扰源,电源有没有被换了适配器。
- 连接状态:SMA线缆是否重新插拔过,探头是否做了重新校准,夹具上有没有灰尘。
- 软件参数:采样率、样本量、限值版本是否被改动过。
- 板级因素:器件是否有虚焊,特别是串联匹配电阻和变压器引脚;PHY的供电电压是否波动。
实测中最常见的是第2步。一致性测试数据和普通功能测试不一样,它受测量链路的影响极大,任何物理连接的微小变化都可能改变结果。所以我会在测试环境里固定一套专用线缆和夹具,量产期间不允许挪作他用;测试报告里也会记录线缆编号和校准日期,方便复现。
5.3 我给项目定的一致性测试SOP
最后分享一份我在项目里执行的简化版SOP,适合研发团队落地:
- 每天开机后先做示波器自检和探头校准,15分钟内完成。
- DUT统一从RJ45口引出,使用专用夹具,不用点测探头做正式数据。
- 测试码型固定为高频测试码型,码型切换脚本固化到版本仓库。
- 每块板子在常温下测一轮全套项目,记录模板裕量、差分电压、上升时间、峰峰抖动四项关键参数。
- 对标基准板的数据,新板的各项值与基准板偏差超过15%或低于规范下限的,直接返回硬件排查。
- 高低温抽测每批次至少3块板,重点看模板裕量和抖动随温度的变化趋势。
这份SOP最大的好处,是把一致性测试从"偶尔用之"变成了"持续约束"。硬件工程师前期多花几分钟,后面就能少熬几个通宵去追量产问题。我在这个项目上跑了将近两年,靠的就是这套流程——它在研发和产线质检之间搭了一座清晰的桥,让"信号质量"四个字有了真实的度量衡。