ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

HDMI 2.1与eDP TX接口设计实战:从原理图到信号完整性测试

HDMI 2.1与eDP TX接口设计实战:从原理图到信号完整性测试 在硬件设计这条路上摸爬滚打这么多年HDMI 2.1 和 eDP 这两个 TX 接口几乎是现代高性能 SoC 平台绕不开的“硬骨头”。前阵子我刚完成一块搭载 RK3588 的核心板设计同时拉出了 HDMI 2.1 与 eDP 两路 TX 信号一路去驱动 8K 外接显示器另一路去驱动一块高刷的 eDP 笔记本面板。原理图阶段看着挺简单无非就是 SoC 引脚、连接器和几颗阻容但等真正进入 Layout 和调试阶段才知道什么叫“水面下的冰山”。这篇文章不打算写成说明书式的手册而是想把我在这个项目里实际踩过的坑、用过的技巧、测过的指标以及藏在 HDMI 2.1 和 eDP TX 接口设计背后的那些底层逻辑掰开揉碎讲清楚。无论你是刚入行的高速数字电路工程师、正在画板卡的 Layout 攻城狮还是准备做产品选型的项目经理这篇文章都会对你有帮助。1. 搞懂 HDMI 2.1 和 eDP TX 的本质区别与选型依据很多初做硬件的朋友容易陷入一个误区觉得 HDMI 和 eDP 都是高速视频接口无非就是引脚数量不同挑一个能用的接上就行。但实际设计时两者从协议层的编码方式到物理层的信号特性差异极大选型和设计策略完全不同。1.1 HDMI 2.1 FRL 模式带宽翻倍的背后是信号完整性的极限挑战HDMI 2.1 最大的变化是引入了 FRLFixed Rate Link模式替代了传统的 TMDS 模式。在 TMDS 时代HDMI 2.0 最高也就跑 18Gbps勉强支撑 4K 60Hz 带 4:4:4 色度。而 FRL 模式把通道数从 3 条变成了 4 条每条通道的最高速率从 TMDS 时代的 6Gbps 提升到了 12Gbps对应 48Gbps 的总带宽。这里有个关键点FRL 模式下不再有独立的时钟通道时钟信号被嵌入到了数据流中通过 16b/18b 编码保证 DC 平衡。这意味着接收端必须依赖 CDR时钟数据恢复来提取时钟对信号抖动的容忍度大幅降低。12Gbps 速率下一个 UI单位间隔只有约 83ps而 HDMI 2.1 CTS 规范要求的眼图模板余量非常苛刻这对 PCB 走线、连接器选型、AC 耦合电容的选择都提出了极高要求。在 SoC 内部HDMI 2.1 TX 通常是一个独立的 PHY IP内部集成了高速 SerDes 驱动器。设计时不能只把 SoC 当作一个简单的逻辑芯片而必须把它当作一个模拟器件来对待——电源的纹波会直接耦合到高速信号上地弹噪声会恶化眼图甚至内核电压的压降都会导致 PHY 输出摆幅不稳定。1.2 eDP 接口笔记本面板背后的高速串行总线eDPEmbedded DisplayPort其实脱胎于 DisplayPort 标准它的物理层和 DisplayPort 完全兼容只是针对嵌入式应用做了一些协议层的裁剪。eDP 走的是 HBR3High Bit Rate 3模式每条通道最高 8.1Gbps常见的配置是 4 通道总带宽 32.4Gbps足以驱动 4K 120Hz 甚至 8K 的面板。eDP 和 HDMI 最大的区别在于eDP 是点对点连接的嵌入式接口传输距离非常短通常在 40cm 以内因此物理层的设计要求相比 HDMI 2.1 的 FRL 模式略微宽松一些。但这并不意味着可以随便布线——eDP 的 AUX 通道是一对双向差分信号走的是半双工协议用于读取面板的 DPCD 寄存器包括 DSC 配置、背光控制、HDR 元数据等如果 AUX 通道信号质量太差会导致链路训练失败屏幕点不亮。1.3 同一个 SoC 上既有 HDMI 2.1 又有 eDP该怎么选现代旗舰 SoC比如 RK3588、i.MX 8M Plus、高通 8cx通常会同时集成多个 TX 接口但物理引脚资源有限。这时候就需要从产品形态出发做取舍如果产品需要外接电视、显示器、投影仪HDMI 2.1 是首选因为它兼容性最好不需要转接芯片。如果产品形态是笔记本、一体机、带屏幕的智能交互设备eDP 是标准方案可以直接驱动内置面板且支持动态背光调节PWM/DPCD。如果既要外接显示器又要内置屏幕就需要评估 SoC 内部是否有独立的 PHY是否需要借助 MUX 或者转换芯片来实现信号的切换。我在设计时选择的是 HDMI 2.1 和 eDP 同时独立输出这要求 SoC 的两个 PHY 分别供电和配置。这种方案的好处是逻辑简单互不干扰但也意味着 PCB 上要同时处理两组高速差分对Layout 压力陡增——这正是后面要重点展开的内容。2. 原理图设计的核心要点从 SoC 引脚到连接器的每一根线原理图阶段看似简单但很多隐藏的坑恰恰就埋在几个不起眼的阻容和电源网络里。下面按信号链路的顺序把每个环节的设计依据和常见错误讲清楚。2.1 高速差分线AC 耦合电容、ESD 保护和极性不要搞错无论是 HDMI 2.1 FRL 还是 eDPTX 信号本质上都是高速差分电流驱动。SoC 输出的差分对并不是直接连接到连接器上的中间必须经过 AC 耦合电容用来隔离 SoC 和接收端的直流偏置电平防止双方 PHY 的共模电压不一致导致偏置电流过大。AC 耦合电容的选型是最容易被低估的一环。常规做法是放 0.1uF 的 0402 陶瓷电容但这需要特别注意电容的 SRF串联谐振频率。如果选择的电容 SRF 恰好落在信号基频附近会产生严重的信号衰减。12Gbps 信号的基频在 6GHz 左右而普通 X7R 材质 0402 电容的 SRF 往往低于这个频率所以最好选择 C0G 材质或高频专用的 X2Y 电容。在 eDP 设计中AC 耦合电容是放在主控板这一侧还是面板这一侧其实取决于面板厂商的参考设计。许多 eDP 面板手册会要求主控端放置 0.1uF 电容而 AUX 通道则要求 0.01uF 左右因为 AUX 协议本身是双向低速的不需要太大的耦合电容来保证瞬态响应。还有一点非常重要ESD 保护器件的位置。我见过很多新手把 ESD 保护二极管放在 SoC 端而不是连接器端这等于让静电裸奔穿过了整个走线路径才被泄放极易把 SoC 内部的 PHY 打坏。正确的做法是把低电容 TVS比如 0.5pF 级别的紧靠 HDMI/eDP 连接器放置并用短而粗的走线直接连到连接器的外壳地。同时还要注意TVS 也会引入额外电容如果信号速率极高这种电容会产生反射所以必须选择具备超低结电容且专门为高速接口设计的型号。2.2 慢速控制通道HPD、DDC/AUX 通道、CEC 与上拉电阻的正确接法高速信号通道只是数据传输的“毛细血管”真正决定系统能否被正确初始化的却是那些慢速控制通道。HPDHot Plug Detect对 HDMI 而言HPD 是接收端拉高到 5V用来告诉 SoC“我插上显示器了你可以开始握手了”。HPD 通常不需要上拉因为它是由连接器另一端主动驱动的。但如果用 SoC 的 GPIO 去检测 HPD需要确认 GPIO 的电平阈值否则可能存在电平不匹配的问题。我遇到过 HPD 被干扰导致 HDMI 误插拔的情况原因就是 HPD 走线太靠近电源切换电感感应出了尖峰电压。解决方法是加一个 10K 下拉电阻防止浮动再串联一个 1K 电阻到 SoC GPIO起到一定的阻尼作用。DDCI2CHDMI 需要 DDC 通道去读取显示器的 EDID这组 I2C 上拉电阻的位置至关重要。上拉电阻的取值不能太小比如 1K否则 I2C 上升沿会因为过冲而失真也不能太大比如 47K否则上升时间太慢可能在高速 I2C 模式下产生通信错误。我一般习惯用 4.7K 上拉到 3.3V。AUX 通道eDP 的 AUX 是一对差分信号协议上是半双工的。因此不能像普通 I2C 一样把两端的上拉直接拉起来而是要在 PHY 的驱动控制下工作。设计时需要严格遵循面板参考手册在主线两端放置 100nF 的耦合电容但输入侧和输出侧的终端电阻匹配很敏感。CECConsumer Electronics Control如果产品需要支持 HDMI 的 CEC 遥控功能还需要为 CEC 引脚留出上拉电阻和电平转换电路。CEC 是一个单线协议电压规范比较特殊需要串联 27K 电阻并由 3.3V 上拉。很多人忽略了这个细节导致 CEC 功能异常。2.3 供电设计与电源时序PHY 的纹波会直接“灌”进信号高速 TX 接口的电源设计是整个原理图设计中我真正吃过亏的地方。HDMI 2.1 PHY 的模拟电路对电源噪声极其敏感特别是 VDD_HDMI_PLL 和 VDD_HDMI_IO 这两路电源。如果电源纹波过大PHY 内部的压控振荡器VCO就会产生相位噪声直接表现为信号抖动恶化。建议在 SoC 的 PHY 引脚附近放置一个 LDO 或者使用低噪声的 DC-DC同时在原理图上保证充足的退耦电容网络。退耦电容的容值组合应该是大范围扫频覆盖0.1uF 覆盖 1GHz 以下的频段22pF 和 10pF 覆盖 1GHz 以上的频段。另外电源时序也不能忽视。HDMI 2.1 的 PHY 通常要求先供数字内核电源VDD_IO再供模拟电源VDD_HDMI_PLL最后使能 PHY 的时钟和复位信号。如果顺序反了PHY 可能会进入异常状态导致链路训练失败而且这种失败很隐蔽用示波器可能看不出来只能通过读取 SoC 的 PHY 状态寄存器来诊断。3. PCB Layout 实战阻抗、等长、参考平面那些事如果说原理图是战术层面那 PCB Layout 就是战略层面。高速信号设计真正的成败百分之八十都体现在 Layout 上。3.1 叠层设计与阻抗控制100 欧姆差分对是怎么来的HDMI 2.1 和 eDP 的差分阻抗都要求 100 欧姆±10%。但“调阻抗”并不是 Layout 软件里随便设个参数而是要通过叠层规划来保证。以我常用的 6 层板叠层为例顶层主器件和射频走线区域第二层完整地平面关键参考层第三层内层走线第四层电源平面第五层完整地平面高速信号参考层底层次高速信号为了保证 100 欧姆差分阻抗需要和板厂确认走线的线宽和线距。比如 L2 到 L4 间距是 100um采用常规 HDI 工艺那么 0.105mm 线宽搭配 0.125mm 线距刚好可以得到 100 欧姆差分阻抗。但这里有个“坑”不同板厂、不同铜厚、不同阻焊厚度都会影响最终阻抗。因此我强烈建议在 Layout 完成前就和板厂沟通阻抗叠层方案或者直接要求板厂提供阻抗测试板。在实际布线时如果发现差分对走在不同层阻抗会因为参考平面的距离不同而产生跳变。比如在焊盘出线和过孔附近经常会出现阻抗不连续这时候需要通过调整走线宽度来补偿。最直观的办法是在走线的“开始”焊盘引脚处稍微收窄走线让过渡不那么陡峭。3.2 差分对内等长与对间等长蛇形走线到底该怎么绕高速差分线的核心是保证 P/N 信号的对称性也就是“对内等长”。对内等长的误差最好控制在 3mil 以内因为在 FRL 12Gbps 数据率下3mil 对应的走线长度差大约是 0.14ps 的传播差这还在 CDR 的容忍范围内。如果超过 5mil就可能出现明显的时钟抖动恶化。而“对间等长”指的是多个差分对之间的总长度匹配。HDMI 2.1 FRL 模式有 4 对数据再加 1 对时钟虽然时钟嵌入数据但物理通道上还是保留了时钟通道的这些通道之间要尽量等长误差最好控制在 20mil 以内。eDP 的 4 对信号之间也一样。蛇形走线是调整等长的常用手法但绕法有讲究。不能绕出幅度过大的 S 形否则会产生严重的互感耦合导致差分转共模信号质量反而恶化。通常蛇形走线的线距需要至少保持 3 倍线宽比如 3W绕线幅度控制在 5 到 8 倍的线宽范围。3.3 过孔设计、换层和回流路径别让信号在过孔里“迷路”过孔是高速信号的最主要“绊脚石”。一个过孔在 6GHz 频率下的寄生电感约为 0.5nH电容约 0.3pF这都会造成阻抗不连续。对于 12Gbps 的 HDMI 2.1 FRL 信号我会尽量避免在关键走线上用过孔如果实在无法避免那就必须使用背钻工艺把过孔 Stub没有用到的那段孔壁钻掉。背钻的原理很简单过孔贯穿整个 PCB但信号只会从第三层到第四层多余的部分就是 Stub它像一个残留的短线天线会反射高频信号。背钻后 Stub 长度控制在 5mil 以内就能极大减少这种反射。另外要注意换层时的回流路径。差分对从顶层换到内层时电流必须经由过孔旁边的接地过孔GND via完成回流。如果回流路径被电源平面分割阻断信号会绕很远形成一个大环路产生强大的电磁辐射EMI同时信号质量也急剧下降。所以在关键的高速过孔旁边务必放置一个伴随地过孔stiching via间距接近信号过孔。3.4 避免高速信号之间的串扰给 HDMI 和 eDP “划清界限”一个同时有 HDMI 2.1 和 eDP 输出的系统最大的风险就是两条高速链路之间的串扰。特别是当两组差分对在 PCB 上平行走线较长时相邻信号的容性耦合和感性耦合会恶化眼图。我的经验是在 HDMI 2.1 和 eDP 信号之间增加隔离地线guard trace并在它们之间铺满接地铜皮建立明确的隔离带。隔离带至少要有 5 到 8 倍的信号线宽。还有一个很容易被忽略的场景是时钟或者周期性信号近场耦合到高速信号上。拿这次项目举例我的板卡上有一颗 24MHz 的无源晶振刚好位于 HDMI 走线的下方。起初 HDMI 在 4K 120Hz 下眼图测试有轻微的周期性抖动排查了半天才发现是晶振的辐射耦合到了 HDMI 走线上。把晶振移开后问题即消失。这类“看不见”的耦合在 Layout 阶段就要通过空间规划来规避。4. 信号完整性测试与接口用例设计如何测好 HDMI 2.1 和 eDP TX设计完成之后测试验证是重头戏。相比普通低速接口HDMI 2.1 的测试要求非常高尤其是电气特性测试。下面分享一些我在实验室里常用的测试方法和用例设计经验。4.1 眼图测量与一致性测试保证 “干净”的眼图眼图是评估高速信号质量最直观的手段。测试 HDMI 2.1 FRL 信号时需要一台带宽至少 16GHz 的实时示波器最好 25GHz并使用差分探头接在 HDMI 连接器附近的测试点TP1上。示波器需要内置 HDMI 2.1 的一致性测试软件来自动配置均衡CTLE并测量眼高、眼宽、抖动和 BER 浴缸曲线。通过一致性测试并不意味着万事大吉。我在跑 HDMI 2.1 测试时发现某些 SoC 的 PHY 默认预加重Pre-emphasis设置不足导致长线缆传输后高频损耗过大眼图闭合。这时候千万不要一股脑去改 PCB先检查 SoC 的 PHY 寄存器看驱动电流和预加重增益的档位阻抗是否匹配。通常增高一档预加重眼图余量就能明显提升。eDP 的测试相对简单因为它板级链路短主要看链路训练是否成功、AUX 通道能否正常读写 DPCD。我一般会用逻辑分析仪抓取 AUX 通道的包判断链路训练的握手过程是否完美无错误。如果面板黑屏重点排查步骤测量 HPD 引脚电平是否正常。确认 AUX 通道是否能够看到主控发出的请求包可以通过 I2C 转 eDP 工具抓包。读取面板的 EDID/DPCD 信息确认 DSC 配置是否开启。软件层面检查 SoC 的 PHY 是否被正确初始化。4.2 实际调试中的疑难杂症一头雾水才是常态真正调试时遇到的现象往往非常隐蔽。例如我这次在调试 eDP 屏幕时遇到一个诡异的现象屏幕偶尔在开机 30 秒后出现闪烁频率不是固定的大约每 2 秒闪一次。用示波器测背光 PWM 信号发现占空比发生了不规则跳变。顺藤摸瓜发现是 eDP 的 AUX 差分对受到了同一块板卡上 DSI 转 eDP 转换芯片的突发干扰导致面板背光寄存器被意外改写。解决办法是在软件初始化时增加对面板 DPCD 寄存器的周期性刷新同时在 Layout 上把 AUX 和背光走线彻底分开。另一个经典问题是 HDMI 2.1 对某些显示器“点不亮”。检查发现这些显示器不支持 FRL 模式只支持 TMDS。但 HDMI 2.1 默认会先进行 FRL 握手如果握手失败需要回落到 TMDS 模式。有些 SoC 的驱动默认不开启 TMDS 回落导致兼容性出问题。这类问题不是硬件设计能解决的需要底层驱动配合。4.3 测试用例设计的几个关键维度不只是“能亮就行”测试用例设计往往是评估一个硬件工程师思维是否缜密的分水岭。单纯的“能亮屏”虽然是基础但面对深层次的产品化需求这种验证远不足以证明设计的可靠性。下面我整理了一份在实际项目中比较实用的用例维度清单供大家参考功能维度这是最基本的测试范围。需要覆盖 HDMI 2.1 的各个分辨率与刷新率组合比如 4K 60Hz RGB 4:4:4、8K 30Hz、8K 60Hz FRL 模式、HDR 10/HLG 动态元数据、DSC 开启与关闭场景以及与 eDP 面板之间的 DPCD 链路训练、AUX 通道读写、背光调节PWM 调光 / DPCD 调光、屏幕开合时的上下电时序等。电气维度包括 HDMI 2.1 的差分眼图测试、抖动容限测试需要借助误码仪注入抖动、摆幅与预加重档位调整后的测试eDP 的 AUX 通道信号质量、链路误码率监控通过 DPCD 寄存器读取、HPD 热插拔时的电压应力测试验证 ESD 性能和电源电容是否足够。兼容性维度这是硬件工程师最头痛的部分。需要准备多台不同类型的显示器不同芯片组驱动方案、不同版本 HDMI 协议的显示器覆盖不同品牌的显示器 EDID验证 DDC 通信是否正常。对于 eDP则需要验证不同面板厂商的参数差异不同面板要求的 Lane 数和 DPCD 配置可能不同代码需要做到参数可配置。异常场景维度拔插时序是最容易出问题的环节。我通常会反复进行“开机状态下热拔插 HDMI”“冷启动同时接入 HDMI 和 eDP”“快速反复热插拔”等测试并同时监控 SoC 的供电电压确保在接口瞬态短路时不会导致系统复位或死机。还要考虑静电放电ESD最好把 HDMI 连接器壳地直接连接到主机地而不是通过螺丝孔跨越隔离带。我把这些用例整理成一张测试矩阵表格方便大家直接复用测试维度测试项判定标准备注功能拨测HDMI 2.1 8K 60Hz 10bit RGB显示无闪烁、无雪花需配合 HDCP 2.2 认证源电气眼图FRL 4 Lane 10Gbps 眼高/眼宽眼高 0.2UI眼宽 0.4UI使用 25GHz 示波器测试链路训练eDP HBR3 4 Lane 链路训练成功读取 TP1. DPCD 0x200 寄存器为 0xE0记录每次初始化日志协议交互EDID 读取/HDCP 认证返回数据正确无握手失败使用 HDMI 分析仪抓取 5 组以上异常场景热插拔 500 次循环无死机无接口物理损伤注意测试时的温升变化兼容性市面上主流 6 款显示器面板全部通过点屏测试涵盖 DP1.4 和 HDMI2.1 两种协议关于 HDMI 2.1 和 eDP 设计的一些大实话最后聊几句大实话。很多刚接触高速接口设计的朋友容易把注意力全放在“阻抗匹配”和“等长”这些表面上却忽略了整个信号链路作为一套完整系统的协调性电源的纹波大小会影响 PHY 的抖动特性过孔的种类与伴随地孔数量会影响回流路径的完整度甚至连接器本身的插拔寿命和簧片材质也会影响高频性能。我在多次改板之后最大的体会是Layout 阶段的每一个不经意决定最终都会真实地反映在测试仪器的屏幕上。另外有一点要提醒大家HDMI 2.1 的 FRL 信号速率很高预加重和接收端均衡技术确实能“补”回来一些走线带来的损耗但这种做法治标不治本。如果 PCB 走线本身的阻抗不连续和反射问题太严重再强的均衡器也无法完全拯救信号。所以真正的工程智慧是“花的力气要花在源头”——把 PCB 走线、过孔设计和叠层规划做扎实比依赖芯片内部的 DFE/CTLE 调节器要可靠得多。写这篇文章的时候我把手头的调试笔记翻出来发现很多当时让我挠头的难题如今回头看其实都有迹可循。如果你现在正卡在某些奇奇怪怪的点不亮、闪屏、眼图闭合的问题上可以先按这个排查顺序走一遍电源纹波、AC 耦合电容选型、HPD 电平、差分对内等长、AUX 通道信号质量、PHY 寄存器配置。八成问题都出在这几处。如果还不行多半是 PCB 上某个不起眼的过孔或者走线绕线造成了相位偏移这时候用 TDR时域反射计沿着走线逐段扫一下就很容易揪出那个隐藏在信号链路里的“内鬼”。希望这篇文章能够帮你少走一些弯路有琢磨不透的高速接口设计问题也可以在评论区一起交流我看到了会尽量详细回复。
返回列表