4. HDMI 物理层架构:TMDS通道、时钟通道、控制通道、辅助通道

好,我们开始讲物理层。这部分是HDMI的骨架,你一定要吃透。

很多人刚开始接触HDMI时,光看协议文档会有点懵。通道太多,容易搞混。其实说白了,HDMI的物理层就干两件事:传数据和传时钟。剩下的都是辅助。

我个人习惯把这四个通道拆开来看,每个都有它的脾气。今天我们就一个一个聊。

4.1 TMDS通道:的主角

TMDS,全称是Transition Minimized Differential Signaling。翻译过来就是“过渡最小化差分信号”。名字很长,但核心就三个字:差分对。

在HDMI 1.4及之前的版本中,共有3对TMDS通道,分别是TMDS Channel 0、1、2。它们负责传输视频数据、音频数据和辅助数据。

每一对TMDS通道都是由两根线组成:TMDS Data+ 和 TMDS Data-。这两根线是严格匹配的,长度差、阻抗差、时延差都必须控制得非常严格。这就是为什么我们要讲“差分对内Skew限值”。

我记得刚做HDMI设计的时候,遇到过一个case:画面时不时出现雪花点,尤其在1080p分辨率下特别明显。我排查了好久,最后发现是TMDS通道2的正负线在PCB上走线差了0.5英寸。嗯,就是这个0.5英寸导致了Skew过大。从那以后,我对对内等长就特别敏感。

小提示:TMDS通道还负责 DC平衡。编码器会将8bit数据转换成10bit,保证直流分量不会漂移。如果你的链路出现严重的基线漂移,先检查一下TMDS通道的耦合电容。

4.2 时钟通道:同步的基石

时钟通道,我称之为“指挥家”。所有的TMDS数据通道都跟着时钟通道的节奏走。

时钟通道只有一对差分线:TMDS Clock+ 和 TMDS Clock-。它的频率取决于视频的像素时钟。

你想想看,如果没有时钟通道,接收端怎么知道什么时候该采样数据?时钟通道给了一个参考边沿,接收端就在这个边沿上去读取TMDS通道上的数据。

分辨率 像素时钟 (MHz) TMDS时钟 (MHz)
720p (1280x720 @60Hz) 74.25 74.25
1080p (1920x1080 @60Hz) 148.5 148.5
4K (3840x2160 @30Hz) 297 297
4K (3840x2160 @60Hz) * 594 594

* HDMI 2.0 及以上版本支持。

这里有个关键点:时钟通道不存在数据编码,它就是一个纯粹的方波。所以时钟通道的SI问题往往更直观:眼图打开度不够,那就是抖动。

警告:时钟通道的Skew限值比数据通道更严格。一旦时钟与数据通道之间的相位差超标,接收端就会出现采样错误。我见过有人把时钟通道走了内层,数据通道走了外层,结果两者的传播延迟差了太多……最后只能加蛇形线来补偿。

4.3 控制通道:不简单的小家伙

控制通道,听起来好像不重要,对吧?

其实不然。HDMI的控制通道已经演变成了一个非常复杂的功能集合。它主要包括两部分:

  • CEC (Consumer Electronics Control):让你用一个遥控器控制多个设备。开机、关机、切换输入源。
  • DDC (Display Data Channel):这个重要。它基于I²C协议,用于读取显示器的EDID信息。如果DDC不通,HDMI根本不会输出视频信号。

控制通道是单端信号,不是差分对。所以它的抗干扰能力比TMDS差很多。很多兼容性问题都出在这里。

我曾经遇到过一个问题:一台电视接上笔记本电脑后黑屏,但检测工具显示信号输出正常。排查了两天,最后发现是CEC引脚上有个微弱的噪声,导致设备进入了错误的待机模式。

避坑指南:控制通道的电压域可能和TMDS不同。大多数HDMI源端会使用3.3V或者5V的I²C电平。测量时务必注意,不要用错了参考电压。

4.4 辅助通道:HPD与+5V

辅助通道听起来像配角,但它决定了系统能否启动。

主要包含:

  • HPD (Hot Plug Detect):接收端通过这个引脚告诉源端“我连上了”。如果HPD信号没有拉高,源端是不会启动TMDS输出的。
  • +5V Power:源端给接收端提供的5V电源,用于驱动接收端的DDC和HPD电路。电流不能太大,通常是50mA左右。
  • Utility Pin:用于以太网和音频回传通道(ARC/eARC)的物理层。

为什么我要专门讲这个?因为EMI测试和合规性测试中,+5V纹波经常是失败原因之一。如果电源滤波做得不好,纹波会被耦合到DDC或TMDS上,导致信号质量恶化。

核心要点:HDMI物理层的四个通道中,TMDS通道是主角,时钟通道是指挥,控制通道是通信员,辅助通道是后勤。任何一个出问题,整个系统都跑不起来。调试时,我建议先从辅助通道开始检查——确认有电、确认有HPD信号。然后再看DDC能不能读EDID。最后才动TMDS和时钟。

为了让你更直观地理解这四个通道的关系,我画了一张图:

HDMI物理层架构 — 四大通道关系 HDMI Source (发送端) TMDS Channel 0 (Data+) 差分对 —— 传输 R/G/B 及音频 TMDS Channel 1 (Data+) 差分对 —— 传输 G/Y 及音频 TMDS Channel 2 (Data+) 差分对 —— 传输 B/Cb 及音频 TMDS Clock Channel 差分对 —— 提供采样时钟 控制通道 (DDC / CEC) — 单端I²C 辅助通道 (HPD / +5V / Utility) HDMI Sink (接收端) 三类通道各自独立 调试时逐个排查

总结一下,HDMI的物理层通过这四个通道实现了高速视频数据传输和低速控制通信。TMDS通道和时钟通道是差分信号,控制通道和辅助通道是单端信号。差分信号天生抗干扰能力强,但最怕内部Skew。单端信号虽然简单,但容易受外部噪声影响。

在实际的项目中,我建议你优先检查差分通道的等长布线,其次确保控制通道的电源和地回路干净。不要等到板子打回来才发现问题——那时候就晚了。