3、信号捕获实战:触发条件设置、数据深度选择、眼图测量与评估

好了,咱们进入实战环节。

前面讲了那么多TMDS的理论,什么DC平衡、编码规则、差分阻抗……但说一千道一万,最终你都得在示波器上看到波形才算数。我个人习惯是,拿到一块HDMI板子,先不急着看协议对不对,先看信号质量过不过关。

这一章,我就把我在调试TMDS信号时,最常用的三板斧教给你:触发怎么设、深度怎么选、眼图怎么看。

3.1 触发条件设置:别让示波器“乱跑”

TMDS信号是高速串行数据,没有时钟线同步。你直接把探头怼上去,示波器大概率是一团乱麻。为什么?因为示波器不知道从哪里开始抓。

所以,第一步是让示波器“锁定”一个稳定的起点。

3.1.1 使用TMDS时钟通道作为触发源

TMDS有四对差分线:三对数据,一对时钟。时钟通道的频率是固定的(比如148.5MHz),波形最干净。我建议你优先用时钟通道做触发。

  • 触发类型:选“边沿触发”,上升沿或下降沿都行。
  • 触发源:选时钟通道对应的模拟通道(比如CH1)。
  • 触发电平:设在信号幅度的50%处。TMDS差分信号摆幅一般是400mV~600mV,所以触发电平设在200mV~300mV比较合适。
小技巧:如果时钟信号抖动很大,触发电平可以稍微调高一点(比如60%),避开过零点附近的噪声区域。我在调试4K@60Hz信号时遇到过这种情况,调高触发电平后波形瞬间稳定了。

3.1.2 数据通道的触发:用码型触发

有时候你需要看特定的数据包,比如视频消隐区或者音频数据包。这时候边沿触发就不够用了。

你需要用码型触发。示波器会识别TMDS数据流中的特定比特序列,然后触发捕获。

  • 设置方法:在示波器的触发菜单里找到“码型触发”或“Pattern Trigger”。
  • 码型定义:输入你想要捕获的TMDS编码后的比特序列。比如,你想看“蓝屏”信号,可以输入蓝色通道的编码值。
  • 注意事项:TMDS编码后的数据是10位的,而且经过了DC平衡处理。你直接输入原始8位数据是没用的。我建议你先用逻辑分析仪抓一下,确认编码后的序列,再输入到示波器里。
避坑指南:我曾经在调试一个HDMI接收端时,怎么都触发不到特定的视频行。折腾了半天,发现是示波器的码型触发深度不够,只能识别16位以内的码型。而TMDS的10位编码加上控制信号,总长度超过了16位。后来我换了一台更高端的示波器才搞定。所以,码型触发前,先确认示波器的触发深度。

3.2 数据深度选择:抓多长才够用?

数据深度,说白了就是示波器一次能存多少样点。深度越大,你就能看到更长时间范围内的波形。

但深度不是越大越好。深度越大,示波器的处理速度会变慢,波形刷新率会下降。你得在“看得全”和“看得快”之间找个平衡。

3.2.1 不同场景下的深度选择

场景 推荐数据深度 原因
看单根TMDS通道的波形质量 10k ~ 100k 样点 够看几个比特的波形,评估上升时间、过冲等参数。
看一个完整的视频行 1M ~ 10M 样点 一个1080p的视频行大约有2200个像素,每个像素10位,加上消隐区,深度不够根本看不全。
看帧同步或音频数据包 10M ~ 100M 样点 音频数据包可能分散在多个视频行里,深度小了抓不到完整的包。
做眼图测量 100k ~ 1M 样点 眼图需要叠加大量比特,但深度太大反而会拖慢测量速度。

我个人习惯是:先设一个中等深度(比如1M样点),看看整体情况。如果发现某个细节需要深究,再加大深度。别一上来就设最大深度,那样示波器会卡得像幻灯片一样。

3.2.2 采样率与深度的关系

数据深度 = 采样率 × 时间窗口。你设定了深度,示波器会自动调整采样率。

对于TMDS信号,采样率至少要达到信号频率的5倍以上。比如148.5MHz的时钟,采样率建议设在1GSa/s以上。如果深度设得太大,采样率会被迫降低,波形就会失真。

核心原则:先保证采样率足够(≥5倍信号频率),再考虑深度。深度不够可以分段抓,但采样率不够,波形细节就全丢了。

3.3 眼图测量与评估:信号质量的“体检报告”

眼图,是高速信号质量的终极裁判。它把所有比特的波形叠加在一起,形成一个“眼睛”的形状。眼睛睁得越大,信号质量越好。

3.3.1 如何生成眼图

现代示波器基本都有“眼图测量”功能。你只需要做两件事:

  1. 设置时钟恢复(CDR):示波器需要从数据流中恢复出时钟,才能把比特对齐。对于TMDS信号,选“PLL时钟恢复”,带宽设为信号频率的1/1000左右(比如148.5MHz时钟,PLL带宽设150kHz)。
  2. 设置触发源:用TMDS时钟通道做触发,或者用数据通道的码型触发。
  3. 启动眼图测量:示波器会自动叠加波形,生成眼图。
经验之谈:如果眼图看起来模糊不清,别急着怀疑硬件。先检查一下时钟恢复设置。PLL带宽设得太宽,会把抖动也恢复进去;设得太窄,眼图又打不开。我一般会从1/1000开始试,然后微调。

3.3.2 眼图的关键指标

眼图不是用来看“好不好看”的,你得量化它。以下是我每次必看的几个指标:

  • 眼高(Eye Height):眼睛在垂直方向上的开口大小。TMDS信号要求≥200mV(差分)。如果低于这个值,接收端可能误判。
  • 眼宽(Eye Width):眼睛在水平方向上的开口大小。一般要求≥0.6个UI(单位间隔)。UI = 1/比特率。比如3.4Gbps的TMDS,UI≈294ps,眼宽应≥176ps。
  • 抖动(Jitter):比特边沿的时间偏差。分为随机抖动(RJ)和确定性抖动(DJ)。TMDS要求总抖动(Tj)≤0.3UI。
  • 上升时间/下降时间:20%~80%的上升/下降时间。一般要求≤0.3UI。

3.3.3 眼图不合格怎么办?

眼图不好,别慌。按以下顺序排查:

  1. 检查阻抗匹配:TMDS是100Ω差分阻抗。用TDR(时域反射计)测一下,看有没有阻抗突变点。我遇到过好几次,都是因为连接器焊接不良导致阻抗不连续。
  2. 检查电源噪声:TMDS发送端的PLL对电源噪声非常敏感。用示波器测一下3.3V和1.2V电源,纹波应该小于50mV。
  3. 检查PCB走线:等长、等距、参考层完整吗?有没有跨分割?
  4. 检查预加重/去加重:有些HDMI发送端支持预加重。如果信号衰减严重,可以开启预加重试试。
血的教训:我曾经调试一块HDMI 2.0的板子,眼图总是闭合的。查了三天,最后发现是PCB上TMDS走线旁边有一根没用的过孔,造成了阻抗突变。去掉那个过孔后,眼图瞬间打开了。所以,眼图不好,先查物理层,别急着怀疑芯片。

3.4 本章知识体系

下面这张图,帮你理清信号捕获的核心逻辑:

TMDS信号捕获实战知识体系 触发条件设置 数据深度选择 眼图测量与评估 时钟边沿触发 码型触发 触发电平设置 10k~100k:波形质量 1M~10M:完整视频行 10M~100M:音频包/帧 时钟恢复(CDR)设置 眼高/眼宽/抖动 阻抗/电源/走线排查 目标:稳定触发 → 合理深度 → 量化眼图

嗯,信号捕获这块,说白了就是三个步骤:先让示波器稳定触发,再选一个合适的深度把波形抓全,最后用眼图给信号质量打分。每一步都有坑,但只要你按照我上面说的流程走,基本不会出大问题。

记住,调试TMDS信号,物理层是基础,协议层是上层。物理层不过关,协议层分析得再漂亮也没用。

可可精品资料库