1. 先聊清楚IT6626这颗芯片到底解决什么问题
最近在评估一个车载后排娱乐屏方案,信号源那边输出的是HDMI 2.1,而屏端驱动IC只留了MIPI DSI接口,两边根本握不上手。HDMI 2.1 RX和双模MIPI TX要落在同一颗芯片上完成桥接,IT6626就是这么个角色:一侧接收HDMI 2.1视频流,另一侧通过D-PHY或者C-PHY把画面送到MIPI DSI/CSI链路。
有这类需求的人其实不少。做车载显示、工业一体机、VR/AR近眼显示、甚至视频采集卡的硬件工程师,都会碰到“源端是HDMI,但主控或面板只吃MIPI”的尴尬。比起为换一个输入接口就推翻整个主控方案,桥接芯片通常是最快、成本最可控的路径。
这篇内容适合正在做选型评估的硬件工程师,也适合写裸机驱动或Linux驱动的嵌入式工程师。我的建议是先把HDMI 2.1的FRL链路、MIPI物理层、DSC路径这几件事理清楚,再去看IT6626的datasheet,会顺畅很多。
1.1 HDMI 2.1和过去TMDS方案的差别,不只是带宽数字变大
早年做HDMI转MIPI,模型很简单:HDMI 1.4/2.0走TMDS,三数据通道加一个时钟通道,RX端做TMDS解码,取出像素时钟、DE、行场同步和像素数据,再把这些搬到MIPI DSI上。这代方案只要做到4K60,非常成熟。
HDMI 2.1就不一样了。Source在检测到Sink支持FRL时,会优先进入Fixed Rate Link模式。FRL模式没有独立时钟通道,而是采用3-lane或4-lane结构,每条lane直接承载高频串行数据,并且加入扰码机制。理论上每lane最高约12Gbps,四lane合计48Gbps。注意,这不只是速度往上提了一档,而是从物理层到链路训练机制全变了。
所以RX侧第一道门槛就是:桥接芯片能不能完成FRL链路训练。如果芯片根本不支持FRL,源端即使有HDMI 2.1能力,也只能退回到TMDS模式,最高卡在4K60,4K120、8K30这些都别想了。IT6626这类芯片的真正价值,就是能在RX端把FRL链路稳定吃下来,再配合EDID和HDCP,把源端的能力真正用到手。
1.2 RX端绕不开的三件事:FRL锁定、EDID宣告、HDCP握手
我是真的吃过亏之后才明白,RX端最花时间的是下面三件事。
第一,FRL锁定。Source上电或热插拔时,会尝试和Sink做FRL链路协商。芯片内部要完成lane数量选择、速率等级协商、symbol lock、扰码器初始化这一系列动作。调试时最典型的故障就是画面偶尔出来、偶尔出不来。这时候我去读状态寄存器,看是3-lane lock还是4-lane lock,再看当前协商到的FRL rate,基本能定位问题。
第二,EDID宣告。桥接芯片不是显示器,它得通过DDC线向Source传输EDID,告诉对方这台设备能接收什么。EDID里如果没宣告FRL capability,Source就只会按HDMI 1.4方式输出TMDS信号,系统能力直接降档。我见过一个奇怪案例,芯片硬件支持4K120,但EDID里漏了FRL支持,源端死活只给4K30,读timing又看不出毛病,改完EDID立刻满血。
第三,HDCP握手。播放蓝光、流媒体4K片源时,Source在完成HDCP认证之前不会输出有效画面。RX端必须完成HDCP 1.4或2.3的握手,并向上层报告认证状态。HDCP问题很隐蔽,症状就是黑屏、闪屏、间歇性掉信号。选型时不能只看“支持HDCP”几个字,要落到datasheet里写明的版本和实现方式。
2. 双模MIPI TX里的D-PHY与C-PHY,远不是一个接口的事
IT6626标题里特别强调“双模MIPI TX”,是因为它支持MIPI物理层的两种模式。很多人以为D-PHY和C-PHY只是线数不同,这是误解。两种模式从编码方式、时钟设计、PCB布线到测试方法,差异都很大。
2.1 物理层的本质区别:一个带专用时钟,一个靠三线状态组合
D-PHY是MIPI里最普及的物理层,最大特征是有一根专用时钟lane,数据lane各自差分传输。典型配置是1时钟lane加1/2/4条数据lane。我们常说的4-lane DSI,就是1条时钟lane加4条数据lane。单条数据lane在D-PHY 1.2规范下理论上限约2.5Gbps,四lane合计大概10Gbps,实际设计一般还要留裕量。
C-PHY则是另一种思路。它没有专用时钟lane,而是把信号组织成“trio”三线组。每三根线之间通过电压状态组合同时传递数据和时钟信息。因为没有独立时钟,C-PHY对三根线之间的等长和相位关系要求极高,时序分析也比D-PHY复杂。C-PHY三组trio能提供的理论带宽上限比D-PHY四lane更有优势,这也是部分新面板选C-PHY的原因。
双模的意义在于:后端可能是各类设备。成熟DSI屏几乎全是D-PHY,而部分新的高分辨率面板或应用处理器倾向C-PHY。一块板做两种后端适配,不用换芯片,这就是双模的最大价值。
2.2 带宽核算:4K60、4K120分别需要什么水平
别被HDMI 2.1的48Gbps吓到。这数字是输入端口的物理能力,而MIPI TX端能不能跑满,取决于后端panel到底需要什么。
先算一个经典例子。4K60、8bit、RGB888,active pixel带宽:
3840 × 2160 × 60 × 24 ≈ 11.94Gbps
这是有效图像区域的数据量,还没算blanking。实际HDMI传输按594MHz像素时钟算,总带宽要接近14.3Gbps。这个量级,D-PHY四lane约10Gbps的物理上限根本裸传不了。剩下三条路:
- 降色深或降刷新率,把带宽压到10Gbps以内;
- 开DSC压缩,把有效带宽压到MIPI能接受的范围;
- 改用C-PHY三trio,物理上限提升一级,勉强支持裸传。
| 场景 | 有效像素带宽 | MIPI链路能否直接满足 |
|---|---|---|
| 4K60 8bit RGB active | 约11.9Gbps | D-PHY 4lane不够,需要C-PHY或DSC |
| 4K60 8bit RGB含blanking | 约14.3Gbps | 必须C-PHY约17Gbps档或DSC |
| 4K120 10bit RGB active | 约35.8Gbps | D-PHY/C-PHY裸传都不够,唯一现实路径是DSC |
4K120、10bit进到MIPI这里,无论哪种物理层都兜不住未压缩流量,几乎只能依赖DSC。这也是为什么HDMI 2.1桥接芯片和DSC深度绑定。
2.3 双模切换不是改一个寄存器就完事
双模的支持,在芯片内部和PCB上都有讲究。D-PHY和C-PHY的模拟前端设计不一样,D-PHY看差分阻抗,C-PHY的三线组对组内一致性要求完全不同。软件上,需要在初始化时告诉芯片当前物理模式、lane数、时钟模式、数据格式。
更现实的问题是后端也要对得上。很多面板资料只写“支持MIPI DSI”,没写D-PHY还是C-PHY,去问FAE才发现面板的C-PHY能力是选配。两边配置不一致,链路起不来,示波器看波形还挺漂亮,但屏就是点不亮。我这里通常会先确认后端屏的MIPI RX能力,再回头配IT6626的输出,顺序不能倒。
3. 数据通路里的时序和格式,才是桥接芯片最容易翻车的地方
桥接芯片看起来像是把HDMI数据搬到MIPI链路,好像一个搬运工。但实际上内部要做时序重建、色彩空间转换、DSC路径决策这些事。
3.1 HDMI和MIPI的timing不一定相同,但节奏必须对齐
HDMI输入侧有自己的timing:像素时钟、Htotal、Vtotal、DE有效区、行场同步极性。MIPI DSI输出侧也有一套自己的timing:每帧多少行、每行多少像素、blanking多大、同步包何时发。
桥接芯片的核心工作之一,是在两套timing之间做适配。如果输入4K60,输出也是4K60,那基本是搬运加blanking调整。如果后端因为panel限制要做帧率锁定,那就需要帧率转换逻辑,这部分通常依赖内部缓冲。
最常见的故障现象是:画面上下分屏,上半屏正常,下半屏雪花,或者画面整体滚动。这时候先查MIPI输出侧VFP/VBP、HFP/HBP的配置,问题大概率在时序参数,而不是MIPI物理信号坏了。
3.2 从YUV到RGB,颜色空间转换必须要确认
HDMI 2.1源端输出可能是RGB 4:4:4,也可能为了省带宽直接出YUV 4:2:2甚至4:2:0。但MIPI DSI面板绝大多数只接收RGB格式,或者最多支持有限的YUV422。芯片内部到底能不能做YUV到RGB转换,能不能把4:2:0插值回4:4:4,直接决定画面颜色对不对。
我遇到过一个“画面发绿还偏暗”的项目,排查了很久。最后发现源端出的是YUV420,而桥接芯片没做颜色空间转换,直接把数据按RGB包塞给了panel。颜色当然不对。遇到类似问题时,先读RX端口当前接收的color format,再查TX输出的color space配置,不要一上来就怀疑屏。
3.3 DSC路径:透明透传还是本地解压,要提前选好
DSC在HDMI 2.1里地位很高。Source要输出4K120这种高带宽信号时,往往已经在HDMI链路上用DSC压缩过了。RX端拿到压缩流后,有两条路可以走。
第一条是透明透传。RX端识别出DSC流,不做解压,直接把DSC压缩包和PPS参数封装进MIPI DSI的DSC模式,交给后端支持DSC解码的panel处理。这种方案下芯片不需要大容量帧缓冲,成本低、延时小,但前提是后端panel必须支持DSC解压。
第二条是本地解压。RX端把DSC压缩流解压成普通RGB视频,再用传统MIPI格式输出给任何普通panel。好处是后端不需要DSC能力,代价是芯片内部要增加缓冲,成本和延时都会上去。
实际项目里,车载屏、VR类定制屏幕更多倾向透明透传。这类面板本来就是专供,DSC能力在规划阶段就预留了。普通型号的工控屏则可能被迫走本地解压路线。选哪条路,取决于屏幕规格和芯片能力,必须在项目初期就确认,否则后面改起来非常伤筋动骨。
4. 初始化与调试实录:I2C配置、链路状态和踩坑记录
写代码只是让IT6626工作的一半,另一半在I2C寄存器和调试手段上。
4.1 上电初始化顺序,顺序错了画面不出来
我自己的实践顺序是固定的,可以拿去做参考:
- 确认芯片供电和复位时序,不要一上电就立刻拉高复位;
- 用i2cdetect扫描I2C总线,确认芯片地址。比如扫描到0x60或0x66,具体以原理图为准;
- 读chip ID,确认总线上挂的是本芯片;
- 配置HDMI RX侧,包括输入检测使能、FRL模式使能、EDID能力宣告;
- 配置MIPI TX侧,包括物理层模式、lane数、输出分辨率、帧率、颜色格式;
- 打开中断或轮询状态寄存器,等hotplug和链路锁定事件;
- 确认锁定后,再让MIPI TX输出信号。
伪代码大概是这个结构:
// 伪代码初始化流程,具体寄存器地址一定要以数据手册为准 i2c_write(addr, 0x06, 0x00); // 复位 mdelay(20); i2c_write(addr, 0x06, 0x03); // 释放复位 chip_id = i2c_read(addr, 0x00); // 确认I2C通讯正常 // 配置HDMI RX:允许FRL,自动速率协商 i2c_write(addr, RX_FRL_CFG, FRL_4LANE_EN | FRL_RATE_AUTO); // 配置MIPI TX:D-PHY,4-lane,RGB888 i2c_write(addr, TX_PHY_MODE, MIPI_DPHY); i2c_write(addr, TX_LANE_CFG, 4); i2c_write(addr, TX_PIXEL_FMT, RGB888);这里必须重点强调:示例寄存器地址纯粹是为了讲流程,绝对不能直接套到真板子上。我见过有人直接拿网上的Demo代码改,结果初始化序列不一样,芯片通电发热都不出图,返工三版才脱坑。
4.2 用状态寄存器判断链路健康,别只看“有没有画面”
画面能出来,不代表链路状态健康。我每次调试都会主动去读几类状态:HDMI hotplug是否检测到、FRL lock的lane数和速率、HDCP认证状态、MIPI TX是否处于active、有没有error中断挂起。
一些典型现象和排查方向:
| 现象 | 可能原因 | 排查动作 |
|---|---|---|
| 源端一直停留在TMDS模式 | EDID里FRL宣告遗漏 | 改写EDID,确认FRL capability位 |
| FRL只有1-lane lock,4-lane失败 | 高速差分走线或连接器焊接问题 | 检查PCB走线、连接器虚焊,可临时降速验证 |
| 受保护内容黑屏,HDCP状态掉0 | HDCP密钥区未烧录或认证失败 | 检查密钥是否烧录,HDCP1.4/2.3是否对应 |
| 高分辨率下误码率飙升 | MIPI链路或C-PHY组内不等长 | 测协议层校验,再查PCB |
4.3 测MIPI链路时,先分清楚D-PHY和C-PHY的测量方法
示波器测MIPI时,最常见的问题是拿测D-PHY的习惯去测C-PHY。D-PHY有独立时钟lane,差分时钟一眼就能看到,判断数据速率很方便。C-PHY没有独立时钟,三根线之间通过电压状态变化传数据同时传时钟,必须用三通道同时采集一组trio,再按C-PHY编码规则去解。普通双通道差分探头只能在混合波形里看到一团东西,没有专用解码功能很难判断对错。
我更推荐先抓协议层。MIPI逻辑分析仪能直接解出DSI包头,看数据包类型、ECC校验、CRC是否正确。协议层对了,再回头查物理层。不要上来就只看眼图,眼图好看不等于协议层对。
4.4 三个真实踩过的坑,每个都能让人折腾一礼拜
第一个坑是HDMI线材。测试时用一根Type-C转HDMI转接头,Source认为是HDMI 1.4设备,死活只输出4K30。换了一根认证过的HDMI 2.1 Full Rate线,问题立刻消失。FRL跑到12Gbps每lane,对无源线材要求极高,市面很多所谓“8K线”只是能识别,并不能稳定跑到FRL高速档。
第二个坑是C-PHY模式的PCB等长。板厂把C-PHY三根线当普通差分线做等长,但没做组内严格相对延迟控制。C-PHY三线的状态组合构成Info,组内不等长会导致码元偏移,表现就是分辨率一高误码率狂飙。后来重新布板,问题解决。
第三个坑是DSC参数与panel不匹配。透明透传DSC时,PPS参数差一个字节都会让屏端解码出整帧花屏。排查这个问题不要只看帧率,要逐字节核对PPS里的切片宽度、切片高度、bits_per_pixel。拿不到屏端协议参数表的话,这步基本只能靠FAE背书。
5. 硬件设计容易被低估的几件事:布局、供电、散热
写完软件,桥接芯片落地还有一半在PCB上。HDMI 2.1的FRL高速线和MIPI高速线同板共存,对走线、供电、散热的要求比老一代桥接方案高不少。
5.1 两组高速信号同板,RX和TX要分开管
HDMI RX侧的FRL信号每条lane跑到12Gbps,已经接近常见SerDes水平。MIPI TX侧虽然单条lane通常比这低,但D-PHY 2.5Gbps也属于高速信号。两组高速线共存时,第一原则是组内严格等长,组间不强求全部拉齐。RX和TX本质上是两个相对独立的信号域,内部各自等长做得好,信号质量就够;强行把RX和TX全部做成一样长,只会增加过孔和拐弯,加重信号损伤。
C-PHY输出组内等长的优先级,还要高于D-PHY。D-PHY因为有独立时钟,数据和时钟之间的skew会恶化建立保持时间,但C-PHY没有基准时钟,三根线状态组合同时携带数据时钟,任何一根偏移都会直接解错符号。
ESD防护器件也不能乱加。HDMI连接器旁边的TVS,寄生电容一定要选小的,最好在0.5pF以内。做眼图测试时如果发现高速信号塌陷,可以临时把TVS拆下来对比测试,能快速判断是不是这颗器件拖累。
5.2 电源纹波和晶振精度,有时比信号问题更致命
桥接芯片的模拟前端对电源纹波非常敏感,尤其是PLL部分。DVDD、AVDD、PLLVDD如果共用一颗LDO,滤波电容又不足,开关噪声很容易耦合到高速链路上,表现为偶尔黑屏一下或者画面抽动。
晶振方面,RX端需要高精度参考时钟。项目条件允许的话,优先用无源晶振加内部振荡电路,不要图便宜用杂牌有源晶振。部分SoC能提供MIPI参考时钟,接入时注意电平标准和ppm精度。参考时钟ppm漂移过大会让输入输出帧率轻微不同步,短时间看不出来,长时间跑就可能掉帧。
5.3 小封装热密度,不能只当功耗数字看
桥接芯片本身功耗不算大,但问题在于它往往紧挨着处理器和电源模块。放在屏蔽罩里闷着,旁边又有一颗高功耗PMIC,板级温度很快上来。选型时留一下封装热阻,PCB上给芯片留出几个到主地平面的散热过孔,把上层铜皮面积适当加大。简单讲,让热有路径走,不要在板上形成孤立热岛。
6. 选型判断:什么项目适合IT6626,什么情况该冷静
写到最后,聊聊选型思路。看到“HDMI 2.1 RX加双模MIPI TX”确实让人心动,但参数高不等于适合所有项目。
6.1 这类芯片的画像:从消费接口桥到嵌入式接口
IT6626这类芯片,本质是把HDMI 2.1这种消费电子接口桥接到MIPI这种嵌入式显示和传感器接口。典型的场景可以分成两类。
一类是显示链路。源端是游戏主机、PC、流媒体盒子,系统需要把画面送到一块MIPI DSI屏幕,VR/AR头显、车载后排娱乐、高端工业显示器都算。这类项目核心诉求是低延时、HDCP支持、高刷新率。
另一类是采集链路。如果芯片的MIPI TX能配成CSI发送,就可以把HDMI信号变成MIPI CSI输出给主控SoC做视频采集,类似视频采集卡形态。这里要注意,DSI和CSI虽然物理层相同,但数据包协议完全不同,不是说改个寄存器位就能直接切,选型时必须看芯片资料里MIPI TX支持的具体协议范围。
6.2 并不是所有项目都需要HDMI 2.1桥接芯片
如果信号源确定最多4K60,而且没有严格的HDCP要求,老一代HDMI 1.4/2.0转MIPI方案可能更合适。经过大量量产验证和调试积累,价格低、资料多、FAE踩过的坑都写成应用笔记了。HDMI 2.1方案强在未来扩展性,但调试复杂度和EDID、HDCP验证成本都更高。
我习惯把需求拆成几条来做对比:
| 需求项 | 老代方案 | IT6626这类HDMI 2.1方案 |
|---|---|---|
| 4K60 HDMI输入 | 成熟稳定 | 能力冗余 |
| 4K120/8K30输入 | 不支持 | 需要FRL加DSC配合 |
| HDCP 2.3 | 要看具体型号 | 通常支持,但验证周期长 |
| MIPI双模 | 很少见 | D-PHY与C-PHY都可做 |
| 软件调试复杂度 | 相对低 | FRL链路和DSC引入更多坑 |
6.3 我的评估checklist,分享出来当参考
我现在每评估一个HDMI转MIPI桥接方案,都习惯过一遍下面的问题:
- 输入源实际输出的最大分辨率和刷新率是多少?真的会用到4K120或8K30吗?
- 后端panel或SoC的MIPI RX支持D-PHY还是C-PHY?最高lane rate多少?
- panel支持DSC解码吗?如果可以,PPS参数表能不能拿到?
- 系统对HDCP有没有硬性需求?HDCP key从哪里来,怎么烧录?
- 是显示链路还是采集链路?MIPI TX要配置成DSI还是CSI?
- 项目排期里,有没有留出至少一周专门做Source兼容性验证?
我自己做这类项目最大的体会是,桥接芯片选型从来不是看谁标称参数高,而是看谁和你手头那台Source加那块屏真的能握上手。HDMI 2.1 RX和双模MIPI TX听起来都很有分量,但真正的价值,是在具体项目里把两个接口之间的差距一点一点补齐。