2. HDMI硬件接口

做FPGA开发板,HDMI接口几乎是绕不开的。我最早接触HDMI时,觉得不就是个视频接口嘛,插上去能用就行。结果第一次画板子,信号质量差得离谱,画面全是雪花。后来才明白,HDMI的硬件设计,细节决定成败。

今天咱们就聊聊HDMI硬件接口的核心知识点。说白了,就是搞清楚那几个引脚是干嘛的,信号怎么走,保护电路怎么做。

HDMI连接器引脚定义

标准的HDMI Type-A连接器,一共19个引脚。我习惯把它们分成几组来看:

  • TMDS差分信号对:4对,分别是数据0、数据1、数据2和时钟。每对包含正负两个信号。
  • DDC通道:SCL和SDA,就是I2C总线,用来读显示器的EDID信息。
  • CEC/ARC/HEC:这几个功能共用引脚,具体用哪个看设备支持。
  • 电源和地:+5V电源和若干GND引脚。
  • 热插拔检测:HPD引脚,用来告诉源端显示器已连接。

嗯,这里要注意:TMDS的时钟对是独立的,不像PCIe那样把时钟嵌在数据里。所以布线时,时钟对的等长要求比数据对更严格。

TMDS差分信号对

TMDS(Transition Minimized Differential Signaling)是HDMI的核心传输技术。为什么叫这个名字?因为它通过编码把数据流中的跳变次数降到最低,再用差分信号传输。

我在项目中遇到过一个问题:TMDS信号的眼图总是打不开。排查了半天,发现是差分对的阻抗没控制好。HDMI要求差分阻抗100Ω±15%,单端阻抗50Ω。你想想看,如果PCB走线阻抗偏差太大,信号反射就会很严重。

给大家一个实用建议:

  • TMDS走线要等长,误差控制在±5mil以内
  • 同一对差分线,正负长度差越小越好
  • 远离其他高速信号,尤其是时钟
  • 每对TMDS之间加地孔隔离

关键参数速查:

参数最小值典型值最大值
差分阻抗85Ω100Ω115Ω
单端阻抗42.5Ω50Ω57.5Ω
信号摆幅400mV500mV600mV
上升时间-150ps300ps

DDC通道(I2C)

DDC通道说白了就是一根I2C总线,用来读显示器的EDID。EDID里存着显示器的分辨率、刷新率、色彩空间等信息。FPGA上电后,必须先通过DDC把EDID读回来,才能正确配置输出时序。

我曾经踩过一个坑:DDC的上拉电阻选错了。标准I2C要求上拉电阻1.5kΩ到2.2kΩ,但HDMI规范里建议用47kΩ。为什么?因为DDC总线可能很长,电阻太小会导致信号上升沿太缓。我那次用了2.2kΩ,结果读EDID时总是超时。换成47kΩ后,问题解决了。

小技巧:DDC的SCL和SDA走线要尽量短,远离TMDS差分对。如果必须交叉,用90度垂直交叉,减少串扰。

CEC/ARC/HEC功能

这几个功能共用HDMI的第14引脚。说实话,在FPGA开发板上,我很少用它们。但了解一下没坏处:

  • CEC:消费电子控制,比如用一个遥控器控制电视和音响
  • ARC:音频回传通道,让电视把音频信号传回功放
  • HEC:HDMI以太网通道,通过HDMI传网络数据

如果你不需要这些功能,第14引脚可以悬空。但要注意,有些显示器会检测这个引脚的电平来决定是否开启ARC模式。我建议直接接地,省得麻烦。

ESD保护电路设计

ESD保护,这是最容易忽略但又最关键的部分。HDMI接口是外露的,插拔时很容易产生静电放电。没有ESD保护,芯片分分钟烧掉。

我见过最惨的一次:一个学生做的板子,HDMI接口没加ESD保护,插拔了十几次后,FPGA的TMDS引脚就挂了。后来拆下来量,发现对地短路了。

ESD保护电路的设计要点:

  • 每个TMDS信号对都要加ESD保护二极管
  • 保护二极管的结电容要小,一般小于0.5pF
  • 保护器件要尽量靠近HDMI连接器放置
  • 地线要短粗,ESD电流才能快速泄放

警告:不要用普通的TVS管做HDMI的ESD保护!普通TVS管的结电容太大(几pF到几十pF),会严重劣化TMDS信号的眼图。一定要用专门为HDMI设计的低电容ESD保护器件,比如NUP4114或TPD4E004。

知识体系总览

下面这张图,是我自己总结的HDMI硬件设计知识结构。你可以把它当作一个检查清单:

HDMI硬件接口 HDMI连接器 19引脚 Type-A TMDS + DDC + CEC 电源 + 热插拔检测 TMDS差分信号 4对差分线 100Ω差分阻抗 等长布线 ±5mil DDC通道 (I2C) SCL + SDA 读取EDID信息 上拉电阻47kΩ CEC/ARC/HEC 共用第14引脚 CEC:遥控控制 ARC:音频回传 ESD保护电路 低电容TVS管 结电容 < 0.5pF 靠近连接器放置 PCB布线要点 阻抗控制 等长走线 地孔隔离 信号完整性 + 可靠性 = 好的HDMI设计

这张图把HDMI硬件设计的几个关键模块串起来了。从连接器引脚定义,到TMDS差分信号,再到DDC、CEC/ARC,最后是ESD保护和PCB布线。每个环节都影响最终效果。

我个人习惯,画HDMI部分的PCB时,会先布TMDS差分对,再布DDC,最后处理电源和地。因为TMDS对信号质量要求最高,优先级自然最高。

好了,HDMI硬件接口的核心内容就这些。记住一点:细节决定成败。阻抗、等长、ESD保护,一个都不能少。下次咱们聊FPGA怎么接收HDMI信号,到时候再细说。

可可精品资料库