
1. 项目背景与需求拆解1.1 HDMI 2.0和eDP在现实产品中的地位做示波器应用这几年我经手最多的案子就是高速接口的信号质量验证。尤其是最近这轮项目把实验室里那台老平台的Auto Test功能往前推了一大截——新增了对HDMI v2.0和嵌入式DisplayPorteDP两类接口的自动化测试支持。看完整个项目的实施过程我最大的感受是自动测试的价值不只是省时间更重要的是让测试结果可复现、可追溯这对接口一致性验证来说比什么都重要。先说HDMI 2.0。作为消费电子显示接口的绝对主力电视、显示器、机顶盒、游戏主机、多媒体一体机几乎全靠它输出4K60Hz画面。4K分辨率下TMDS时钟频率被抬到600MHz单通道数据率冲到6Gbps三通道综合带宽18Gbps这个速率对源端Source信号质量的要求比HDMI 1.4时代高了一个量级。老一代接口可能只看个眼图模板就放行到2.0阶段光“能出画面”已经不够还要保证在长线、低质量线缆和不同接收端的条件下依然稳定。于是物理层一致性测试从可选动作变成了出货前的硬门槛。eDP的处境不太一样。它是VESA针对嵌入式场景推出的DisplayPort变体主要用在笔记本、平板、工业一体机的液晶面板驱动上。和HDMI那种外向型接口不同eDP走的是设备内部链路GPU输出的DisplayPort信号直接送到面板时序控制器TCON。因为链路短、通道数可选1/2/4 lane速率覆盖RBR到HBR3它的测试方法和HDMI差异很大。面板厂、GPU方案商、电脑OEM的显示团队几乎都在同一张图纸上做验证谁都不敢跳过物理层测试。这个项目适合谁参考大概是三类人一是示波器测试系统的二次开发工程师二是硬件设计团队里负责高速接口验证的同事三是想搞清楚HDMI 2.0/eDP物理层到底怎么测的产品开发人员。接下来的内容会用实际操作的角度把项目从需求拆解、方案选型、自动化实现到问题排查完整过一遍。1.2 手工测量暴露出的效率问题项目立项之前我们实验室的HDMI 2.0和eDP测试基本靠手工。具体流程是工程师搭好测试平台手动设置示波器的采集参数再用示波器内置的眼图测量功能取波形最后对照规范逐项读结果把数据抄进Excel。这套流程最让人头疼的是两点。第一是费时。HDMI 2.0 Source的物理层测试项不算少TMDS差分电平、上升/下降时间、过冲、AC共模、眼图模板、时钟抖动一套测下来熟练工也得半天。eDP更麻烦面板接口的lane数多、速率组合多4 lanes乘3种速率就是12种组合每种组合还要重复测上电、链路训练和不同预加重等级。一批样机要筛选的话手工测试基本就是在耗人。第二是人为误差。手动设置游标、手动判读眼图模板是否命中不同工程师对同一组波形的判定都会有差异。更麻烦的是手工测试很难保证每次采集时的触发位置、采样点数和垂直刻度完全一致结果稍有偏差就要重新测数据可比性很差。同一个项目里A工程师测的某块板眼图余量是11%B工程师第二天测变成8%到底谁的配置对这种事情多了以后设计团队自然会对测试数据失去信任。1.3 项目目标在示波器平台内补齐自动测试能力所以这个项目的目标非常清晰在现有示波器平台上扩展Auto Test能力把HDMI v2.0和eDP的一致性测试流程脚本化、标准化。具体要求可以拆成几条测试项覆盖HDMI 2.0 Source物理层和eDP Source物理层的关键指标支持一键跑完、自动生成报告报告格式能直接给设计团队和客户看测试参数可配置能适应不同产品、不同速率、不同lane数整个流程可重复同一台样机不同时间测的数据应该能直接对比。这里要说明一下示波器的Auto Test能力并不是新东西。老平台的软件里本来就有基础的自动化测量功能比如用脚本触发波形采集然后执行单项测量。但面对HDMI 2.0和eDP这种需要拼接多组波形、做抖动分解、套用规范模板的场景原有框架明显撑不住。这次做的本质上是在原有自动化框架上补了一层“面向接口测试的流程引擎”把测试流程从“测量指令的集合”升级成“测试项目的完整编排”。2. 自动测试原理这两个接口到底在测什么2.1 HDMI 2.0物理层测试的维度HDMI 2.0 Source的一致性测试核心对象是TMDS差分信号。这里有个容易混淆的点HDMI 2.0虽然带宽大幅提升但底层编码架构依然是TMDS三对数据通道加一对时钟通道每通道数据率最高6Gbps。物理层测试主要围绕五个维度展开。电压幅度TMDS输出差分电压摆幅规范对不同速度等级都有规定的范围自动测试里会直接抓取差分波形测摆幅值判断是否落在标准窗口内。时序参数上升时间、下降时间以及差分信号的过冲/下冲。上升时间过短会导致高频分量大、容易产生辐射干扰过长又会让眼图张开度变小。这两项都是直接通过波形测量得到的。眼图与模板把采集到的比特序列按UI对齐叠加成眼图然后套用规范定义的眼图模板记录模板命中次数和边缘裕量。这是判断信号质量最直观的一项。时钟与时序抖动TMDS时钟通道的抖动、数据通道相对于时钟的时序关系。规范对总抖动和确定性抖动有严格的预算要求测试时要做抖动分解。AC共模测量差分信号的共模噪声反映信号的EMI风险。这个指标容易被新人忽略但实际产品测试里高频共模超标的情况相当常见。这五个维度每项都需要在特定的测试点、特定的负载条件下完成。自动测试的价值就在于把所有测量条件固定下来用同一套配置跑不同样机出来的数据才有一致性。2.2 eDP测试与HDMI的差异点eDP继承了DisplayPort的架构和HDMI相比有几个关键差异直接影响测试方法。第一eDP没有独立的时钟通道。DisplayPort用嵌入时钟方式工作接收端靠CDR时钟数据恢复从数据流中恢复时钟。所以测试时的触发和眼图对齐必须依赖CDR不能像HDMI那样直接锁定时钟通道。这对示波器的触发能力和抖动分析软件提出了更高要求如果用示波器内置的CDR还得注意算法参数和规范要求是否一致。第二eDP有AUX辅助通道。AUX通道用于链路训练、EDID读取和DPCD寄存器访问链路训练的过程会动态调整发射端的预加重和电压摆幅。所以eDP自动测试不能只测静态信号还要能监控或固定链路训练的状态。我们项目里的常见做法是先在DUT上通过AUX命令把发射参数固定在规范要求的某个已知档位再跑物理层测试。如果不固定每次测试时发射配置可能都不一样结果自然没法比。第三速率和lane组合多。eDP 1.4a支持HBR2.7Gbps、HBR25.4Gbps1.5又加入HBR38.1Gbpslane数可选1/2/4。自动测试脚本必须能遍历这些组合。看似简单但每种组合的眼图模板、均衡配置都是独立的写脚本时很容易漏配。我们第一版脚本就漏掉了HBR3下的预加重参数导致第一轮实验数据全部作废。所以虽然eDP和HDMI都叫高速差分接口测试实际落地时底层逻辑完全不同。这也是这个项目里花时间最多的地方。2.3 眼图和抖动自动测试绕不开的两个基础概念自动测试的核心是让仪器自己完成信号质量评估那眼图和抖动这两个概念就得先理清楚。眼图是把数字信号的每一位按单位间隔UI重叠显示得到的波形。很多没做过高速测试的工程师以为眼图是示波器自动生成的其实它本质上是软件对大量UI进行时间对齐后统计出来的。眼图的核心指标是眼高幅度方向张开度和眼宽时间方向张开度。眼高眼宽越大接收端采样裕量越大误码率越低。抖动则是信号沿偏离理想位置的时序偏差。总抖动TjTotal Jitter通常分解为随机抖动Rj和确定性抖动Dj。随机抖动符合高斯分布主要来自热噪声、半导体噪声等确定性抖动包含数据相关抖动——主要是由信道不理想导致的ISI码间干扰和DCD占空比失真——以及周期抖动Pj。工程上常用的双狄拉克模型会把Tj、Rj、Dj拟合在一起特定误码率下Tj Dj α×Rjα根据目标误码率比如1e-12查高斯分布得出。自动测试软件在测抖动时会先对波形做CDR或时钟恢复得到每个数据沿相对于理想位置的偏差序列再做统计分析分解出Rj和Dj。这个过程对示波器的采样率、存储深度和算法精度都很敏感。实际操作中同样的波形在不同型号示波器上测出的抖动分解结果可能差异很大这也是为什么一致性测试特别强调测试平台认证。3. 方案选型硬件与软件怎么定3.1 带宽和采样率先满足测量需求再谈自动化项目第一步是确认现有示波器平台的硬件能力因为Auto Test无论如何也得跑在硬件上。对HDMI 2.0和eDP测试来说最核心的硬件指标是带宽和采样率。我的建议是测HDMI 2.06Gbps至少要13GHz以上带宽的实时示波器测eDP HBR38.1Gbps则建议16GHz。为什么是这个数被测信号的基频约为数据率的一半HDMI 2.0为3GHzHBR2为2.7GHzHBR3为4.05GHz但要准确测量上升时间和眼图示波器带宽至少要覆盖到信号的5次谐波也就是15GHz左右。一台16GHz或20GHz档位的示波器能通吃HDMI 2.0和eDP目前主流速率而8GHz示波器虽然测HBR2勉强能看测6Gbps和8.1Gbps时眼高会被明显打小。采样率方面实时示波器的采样率应至少是信号数据率的10倍。测8.1Gbps时建议不低于80GSa/s这不是硬性规范而是采样点太少会导致眼图边界不清晰、抖动测量不准。如果实验室只有一台老式4GHz或6GHz示波器我的建议是不要强行拿去做合规测试数据没法通过认证只能做调试阶段的粗略评估。这次扩展项目最后是在一台20GHz、80GSa/s的平台上落地的算是给后续留下余量。3.2 软件框架自研脚本还是厂商选件自动测试的软件路径通常有两条一是用示波器厂商提供的合规测试选件二是基于通用自动化框架写自己的测试脚本。两条路各有适用的场景没有绝对的好坏。厂商选件的优势是测试项、模板、报告格式都是现成的通常还能定期更新匹配新版规范。缺点是贵而且灵活性差有些非标用例或者特殊面板的eDP配置选件不一定支持。对测试实验室来说用厂商选件做标准合规测试是最省心、最稳妥的做法。这次项目不走纯选件路线原因很直接eDP测试有大量非标场景——不同面板厂的lane配置、TCON参数、电源时序各不相同厂商选件管不到这么细。我们选择了通用框架自研架构大致是三层上层是Python写的测试管理脚本负责定义测试流程、解析配置文件、汇总结果中间层通过VISA接口pyvisa与示波器通信发送SCPI指令完成测量控制下层调用示波器内置的测量算法包括眼图测量和抖动分析模块。这样既保留了自定义能力又能利用示波器本身经过验证的测量算法。相比完全脱离仪器算法、纯用原始波形数据自己写算法可靠性和开发效率高很多。纯自研算法听着很酷但验证算法本身的成本极高对大多数项目来说不划算。3.3 夹具、探头和线缆最容易翻车的环节做高速接口自动测试夹具和互连的影响往往比示波器本身还大。HDMI 2.0测试需要遵循规范定义的标准测试夹具一般从DUT的HDMI连接器引出一段规定长度的走线再通过SMA/SMP连接器接到示波器。这段走线必须是受控阻抗、长度固定的否则眼图模板结果会受夹具插入损耗的影响。eDP测试的物理连接更麻烦因为eDP接口在笔记本内部没有标准的外置连接器通常靠厂商提供的软排线转接板引出或者直接在面板TCON板上的测试点焊接探针。转接板的阻抗连续性和焊点质量都会直接影响测量结果我们遇到过因为焊点太大导致高频反射眼图出现明显塌陷的情况。这里要特别提醒自动测试跑得再流畅如果夹具没校准好出来的数据就是错的。项目里我一般会先做“夹具去嵌”或“参考面校准”用网络分析仪测出夹具的S参数确认无损匹配后再接入自动测试链路。这个过程虽然额外花时间但能避免后期一堆莫名其妙的数据纠纷。4. 实操过程把HDMI 2.0和eDP自动测试跑起来4.1 环境搭建与连接自动测试的物理环境分为三大块DUT、信号连接和示波器。DUT方面HDMI测试对象一般是机顶盒、播放器、显卡等设备的HDMI输出eDP测试对象是带输出接口的主板或GPU板卡也可能是整个面板模组。信号连接上HDMI Source测试的推荐接法是把DUT的HDMI输出接到标准测试夹具夹具输出端用SMA线连到示波器通道。eDP测试则通过转接板引出信号接法类似。需要注意所有SMA线尽量等长、走线对称差分信号的P/N两路长度差会造成模式转换直接影响眼图结果。示波器侧的连接建议把差分对接到相邻的两个通道例如Ch1和Ch2并在软件中配置为差分测量模式。HDMI时钟通道用于触发eDP则用软件CDR从数据通道恢复时钟作为参考。如果示波器支持跨通道skew校准接好线后先跑一次校准把P/N两路固有的时间偏差修掉这是很容易被忽略的一步。4.2 配置测试参数自动测试脚本启动前的配置是整个过程中最需要细心的环节。以HDMI 2.0测试为例主要配置项有数据速率DUT实际输出的TMDS速率脚本会根据规范自动匹配对应的模板和测量参数负载条件规范定义了不同的源端测试负载配置不对会导致电压摆幅判定偏差测试项目开关选择本次要执行的测试项可以单独跑眼图也可以全项跑模板文件加载规范对应的眼图模板。eDP的配置比HDMI多两个维度lane数和预加重/摆幅档位。因为eDP链路训练后发射端会按配置输出不同的电压摆幅和预加重值我们通常在DUT端通过AUX命令固定到规范要求的测试档位而不是用出厂默认的自动训练结果否则脚本每次跑出来的条件不一致没法对比。这一步最容易犯的错误是模板和速率不匹配。比如把HBR2的模板用到了HBR3上模板区域不一样结果直接判fail。所以我在脚本里加了一个交叉检查测试开始前先从DUT或配置文件读取实际速率再对照模板列表做校验不一致就报错退出。这个机制第一周就拦住了三次人为配置错误。4.3 运行自动测试与生成报告参数配置完成自动测试就进入循环执行阶段。以我们实现的流程为例单轮测试的大致时序是通过SCPI指令复位示波器清除历史波形和测量结果设置垂直刻度、水平时基、采样点和触发条件根据测试项采集——眼图测试需要采集足够多的UI抖动测试需要采集多条波形做统计调用示波器的测量功能读取眼高、眼宽、模板命中次数、上升/下降时间、摆幅、Tj/Rj/Dj等指标判读是否通过记录原始波形和测量值进入下一测试项或下一通道。一轮HDMI 2.0全项测试跑下来熟练配置后大约30到40分钟。对比手工测试动辄半天效率提升非常明显。报告方面我们生成的是HTML格式包含DUT型号、测试日期、软件版本、每项测试的实测值、Pass/Fail状态以及关键眼图和频谱截图。HTML的好处是可以嵌入图片、方便邮件发送也能转成PDF给客户。报告命名建议带上日期、样机编号和测试配置标识方便后续归档检索。4.4 调优与验证自动测试上线前的最后一步是验证。做法是拿一台已知通过合规测试的参考样机跑一遍自动化流程把结果和之前实验室认证过的数据对比确认偏差在允许范围内。这里有两个坑值得说。第一示波器本身的校准状态会影响测量结果跑自动测试前最好先执行示波器自校准包括垂直、水平和差分通道校准。第二如果DUT有功耗管理长时间测试时可能进入低功耗状态导致信号丢失脚本里要有超时防护——比如连续N秒检测不到有效波形就报警并暂停流程避免整个测试序列白跑。我们第一版脚本没有这个防护有一次夜里批测DUT在第三组测试时休眠了后面的测试全在跑空数据第二天早上才知道浪费了一整夜。5. 常见问题与排查技巧实录5.1 一份问题速查表项目过程中积累的典型问题整理成了一张表方便现场排查参考现象可能原因排查方向眼图模板频繁判fail模板版本与数据速率不匹配核对CTS版本和模板文件名称眼高明显偏小示波器带宽不足或采样率过低换用更高带宽档位检查采样率配置抖动值波动很大参考时钟抖动、示波器触发不稳定改用软件CDR检查触发源质量eDP链路训练一直失败AUX通道波形异常或负载不匹配检查AUX转接线路确认预加重档位自动测试中途通信超时VISA连接被占或DUT进入休眠增加超时重试关闭DUT省电模式差分电压摆幅超标负载条件配置错误核对测试标准中源端负载要求这张表并不是替代实时分析的万能药但可以当作第一轮排障的起点。更多时候问题出在测试环境搭建环节而不是测试项本身。5.2 两个印象最深的排查案例第一个案例是HDMI 2.0眼图测试在某个样机上总是fail眼图左下角有零星的点掉进模板。一开始怀疑是样机的驱动能力不够后来把示波器的存储深度调到最大抓了更长的波形才发现信号源偶尔出现非常低频的周期抖动大约几百赫兹应该是DUT板上的电源模块纹波耦合进了TMDS输出。这种低频抖动用短时波形根本看不到只有加大统计样本量才能暴露。排查方法是用示波器的频谱分析功能观察抖动谱定位到600Hz左右一个尖峰随后在DUT电源输出端加了滤波电容问题解决。第二个案例是eDP 4-lane测试中第三通道的上升时间总是比其他通道略慢。转接板、SMA线都换过结果不变。后来发现是面板TCON板上第三通道和另一条信号挨得很近串扰导致高频分量被拉低。最后在转接板上加了隔离地孔并拉开相邻信号线的距离才通过。这个案例说明自动测试能快速暴露问题但根因往往在DUT本身测不过不一定就是仪器配置错误。5.3 规避测量系统误差的实操心得最后分享几个压低测量系统误差的实操技巧。一是线缆连接后至少预热15分钟再开始跑测试温度变化会影响线缆损耗进而影响眼图数据。二是差分通道接好以后用示波器的桌面校准功能做一次通道间skew校准把P/N两路的时间偏差修掉。三是不要频繁更换测试线缆每次更换后都要重跑一遍参考样机验证确保链路特性没有变化。这些都属于“仪器操作之外”的细节但恰恰是项目交付质量的关键。6. 项目复盘自动化带来的改变与后续空间6.1 自动测试真正的价值可复现、可追溯回头看看这个项目最有价值的不是把测试时间从半天缩短到40分钟而是让测试数据的可信度上了一个台阶。自动测试把每一步的采集条件都固化在代码里谁跑、什么时候跑结果都是可比的。这对设计改版前后的对比验证、不同供应商样机的横向评估意义非常大。项目上线后设计团队提测的频率明显提高了。以前搓一次测试要预约实验室、占用工程师半天现在插上线、点一下运行30分钟出报告。更重要的是团队对测试结果的质疑少了——因为配置、模板、流程都是同一套即使结果不理想大家讨论的都是“DUT到底哪项不过”而不是“你这次测试配置是不是有问题”。6.2 平台维护与多接口复用做完功能扩展只是第一步后面维护的压力更大。HDMI和eDP的规范在持续更新测试模板和算法要及时跟进否则自动测试平台很快又会变成“看起来能跑、结果没人敢用”的状态。平台设计时一定要把参数文件、模板文件和脚本本体分离后续更新只动配置不动代码。这个项目后续的扩展方向也很明确把DisplayPort标准接口、USB4的自动测试框架也并进同一套平台共用底层的波形采集、抖动分析和报告模块。接口种类越多自动化的复用价值就越大。如果你们团队也在考虑扩展现有示波器的测试能力建议从一开始就把框架往“多接口复用”的方向设计别只盯着单一标准做一锤子买卖。最后再分享一个小技巧给自动测试平台加一个“调试模式”。正式跑测试时脚本一次性执行完并输出报告调试时则一步步走每步都保存中间波形和结果快照。这个模式在排查问题时帮了大忙——很多现场问题不是算法错而是DUT状态异常从中间数据里一眼就能看出来。