
我上个月刚结束一个 RK3588 方案的前期选型客户要做一台 15 寸工业一体机上面要跑 YOLOv8 推理还得接一路 MIPI 摄像头算力上 RK3588 非常合适。方案聊得挺顺最后被一块仓库里的老屏卡住了——客户那边还有一百多块十年前屯下来的 10.4 寸 LVDS 工控屏主任很坚持说这两百块屏必须用上去不然库存烂在手里。我当时翻开 RK3588 的 TRM 一遍遍确认显示输出列表2 路 MIPI DSI、1 路 eDP 1.4、2 路 DisplayPort、1 路 HDMI 2.1清清楚楚没有 LVDS。再查 RK3576同样没有。那一刻我意识到这不是巧合而是一场发生在显示接口层的代际切换。这篇文章就把我这次选型中查到的资料、踩过的坑、以及最后怎么用 MIPI DSI 转 LVDS 桥接把屏点亮的过程一次性讲透。1. 先复盘RK3588/RK3576 的显示接口到底怎么设计的1.1 RK3588 官方显示接口全家桶RK3588 是瑞芯微 2022 年前后发布的旗舰级 SoC8 核 ARM4×Cortex-A76 4×Cortex-A55集成 6 TOPS 的 NPU支持 8K 视频编解码定位是边缘计算、智能平板、Mini PC、电子白板这类高算力场景。它的显示输出部分官方称 VOPVideo Output Processor模块对外引出的高速显示接口包括2 路 MIPI DSI4-lane最高可支持 4K60 级别的显示输出1 路 eDP 1.44-lane面向笔记本、一体机、医疗设备主屏2 路 DisplayPort 1.4带音频回传其中一路与 USB3.0 复用 Type-C 口1 路 HDMI 2.1支持 8K60 或 4K120 这类大屏输出没有原生 LVDS这一点在 TRM 整个显示章节里翻不到任何踪迹这里有个容易忽视的细节RK3588 的 VOP 数量不少可以同时驱动多路独立显示做三屏异显很方便。也正是因为支持多屏工业客户习惯性会想我有这么多屏要接其中一个是不是可以用 LVDS结果发现根本没有口这是最让人难受的地方。1.2 历代 RK SoC 的 LVDS 支持不是一直砍而是看定位瑞芯微这几代产品对 LVDS 的支持很有意思不是一刀切砍掉而是跟着产品定位来回调整SoC发布时间原生 LVDS主要显示接口RK3288约 2014支持LVDS / eDP / HDMI 2.0 / MIPI DSIRK3399约 2016不支持eDP / MIPI DSI / HDMI 2.0 / DP 1.2RK3568约 2021支持LVDS / eDP / MIPI DSI / HDMI 2.0RK3588约 2022不支持eDP 1.4 / MIPI DSI / DP 1.4 / HDMI 2.1RK3576约 2024不支持eDP / MIPI DSI / HDMI 2.1仔细看这张表你会发现RK3399 作为当年的旗舰早就把 LVDS 拿掉了RK3568 作为面向工业、商业显示的中端产品又把 LVDS 加回来了因为那个档位的客户要用大量存量 LVDS 屏到 RK3588 和 RK3576 这一代定位整体上往高算力、高分辨率、多屏互动方向走LVDS 彻底出局。所以砍掉原生 LVDS这句话得拆开看——砍的是旗舰级的接口而不是整个产品线。RK3568 至今仍然在工控市场活跃说明瑞芯微很清楚三线城市的设备柜里还躺着多少块 LVDS 面板。1.3 RK3576 不是低配 RK3588而是新世代的统一取舍RK3576 是 2024 年主打的产品8 核 A72A53 组合带 NPU定位多媒体和工业显示。它的显示接口基本延续了 RK3588 的思路eDP、MIPI DSI、HDMI 2.1同样没有 LVDS。这说明瑞芯微在新一代 SoC 架构中已经不愿意为 LVDS 这种老接口单独保留控制器和引脚了。从软件 SDK 的角度看这也是一种简化。RK 平台的内核显示驱动维护成本不低每一路输出都要配合 VOP 的层叠加、旋转、缩放、色彩管理等功能。LVDS 作为一个纯并行像素输出接口和 VOP 的连接逻辑虽然简单但占用的引脚、电源域、时钟树都要额外设计维护起来也麻烦。新平台直接不做了SDK 里相关的兼容代码也少了对 BSP 工程师来说反而是减负。2. LVDS 的技术回光与退场从并行到串行的必然2.1 LVDS 到底是个什么信号LVDS 全称 Low-Voltage Differential Signaling低电压差分信号它是一个物理层标准当年不仅用在显示器接口也大量用在 FPGA 高速采集、工业相机、背板传输这些场景。它的原理其实不复杂在发送端有一个恒流源大约 3.5mA 的电流流过一对差分线和接收端的 100Ω 终端电阻在电阻两端形成约 350mV 的压差。接收端只需要检测这个压差的极性就能得到逻辑 0 或 1。因为它用差分信号传输共模噪声会被抵消抗干扰能力强EMI 也低线材要求相对宽松这在十多年前的工业环境里非常宝贵。那个年代工控机上动不动就是变频器、伺服驱动器在旁边普通单端信号经常被干扰得闪屏LVDS 这种差分传输方式解决了大问题。这也是为什么 2005 年到 2015 年之间几乎所有的小尺寸液晶屏都采用了 LVDS 作为标准接口。2.2 LVDS 屏线有几种接口很多刚接触 LVDS 的人第一反应是LVDS 不就是一根扁排线嘛实际上去翻屏厂规格书LVDS 屏线接口按数据位和通道数可以分成好几种单路 6bit3 对数据线 1 对时钟线共 4 对差分线色深 18bit常见于 7 寸、8 寸、10.1 寸低分屏分辨率一般 800×480、1024×600单路 8bit4 对数据线 1 对时钟线共 5 对差分线色深 24bit覆盖 1024×768、1280×800 这些常见工控分辨率双路 6bit6 对数据线 2 对时钟线用于更高刷新率或更大尺寸的低成本屏双路 8bit8 对数据线 2 对时钟线共 10 对差分线常见于 15.6 寸、18.5 寸的 1080p 屏连接器方面常见的是 30pin 或 40pin 的 FPC/FFC 排线也有一部分用 20pin 的 JILI 接口。市面上搜LVDS 屏线有几种出来的基本都是这几种规格。屏库网上选屏时接口那栏会直接写 LVDS 30pin 2ch 8bit 或者 LVDS 40pin 1ch 6bit 之类的组合意思就是通道数、位宽、pin 数、连接器规格的综合描述。还有一个经常被坑的点LVDS 的数据映射格式分为 VESA 和 JEIDA 两种。同样是 8bit 的 RGB 数据两种映射方式把哪几位放在哪个 lane 上是不同的。屏和主板或者桥接芯片如果一边是 VESA 一边是 JEIDA屏亮起来就是满屏杂色雪花或者颜色完全错乱甚至直接黑屏。这是 LVDS 调试里特别经典的一个隐藏开关很多老工程师都栽过。2.3 带宽这堵墙LVDS 的极限就在 1080pLVDS 本质上是把像素并行总线串行化传输。以单路 8bit 为例4 对数据线每一对在一个像素时钟周期内传 7bit 数据这就是常说的 7:1 串行化所以整个链路的带宽大约是4 条 lane × 像素时钟 × 7bit。算一下账1080p60 的像素时钟需要 148.5MHz将它代入总带宽大约 4×148.5×7 4.158Gbps看起来数字不小但注意 LVDS 的数据还必须包含同步信号、显示数据使能等额外的控制位实际有效像素数据占比并没有想象中那么高而且很多 LVDS 屏接收端的最高像素时钟只有 135MHz 左右单路跑 1080p 相当勉强。这也是为什么大尺寸 1080p 屏几乎清一色是双路 8bit——单路带不动得两条链路并行分摊。到了 4K 时代逻辑上 LVDS 必须用更多通道并行比如 4K30 的像素时钟约 297MHz双路 8bit 链路勉强能撑一撑但 4K60 需要 594MHz 的像素时钟想把这么多通道做到严格等长、同步对齐连接器和线缆的复杂度、成本会爆炸式增长。液晶屏厂早就明白这条路走不通所以 4K 以上的面板清一色转向 eDP 和 MIPI DSI。2.4 MIPI DSI 和 eDP 是怎么接棒的MIPI DSI 最初是为手机屏诞生的它使用 D-PHY 物理层一对线就是一个 lane每个 lane 的数据率轻松做到 1Gbps 以上4 条 lane 就有 4-6Gbps 的带宽而且支持 1/2/4 lane 可配置。RK3588 的 DSI 是 4-lane 配置可以输出 1080p60甚至拼两组 DSI 做 8-lane驱动更高分辨率的面板。eDP 则更像是 LVDS 的精神继承者。eDP 是嵌入式 DisplayPort基于 DisplayPort 标准改造而来它只保留一个 4-lane 的高速链路在 HBR2 速率下每 lane 5.4Gbps总带宽可达 21.6Gbps这个量级跑 4K60 毫无压力还支持面板自刷新PSR、动态刷新率这些 LVDS 想都不敢想的功能。而且 eDP 线缆少一对差分线走一路链路整条排线只有 20 到 30 个 pin比 LVDS 的 40pin 排线细得多。所以从物理接口整体演进来看LVDS 是被两股力量夹击淘汰的低端被 MIPI DSI 吃掉因为手机生态把 DSI 做到极致便宜高端被 eDP 吃掉因为笔记本生态需要高分辨率、低功耗、灵活链路管理。LVDS 卡在中间既没有生态加持带宽又不够退出 SoC 原生产物是早晚的事。3. 从一根引脚看 SoC 设计者的取舍心算3.1 封装引脚的成本账很多人不理解SoC 多加一个 LVDS 控制器不是很复杂吗为什么不顺便做了。这里面的成本大头不是逻辑电路而是封装引脚。RK3588 用的是 FCBGA 封装底板上有接近一千个球。每一个球都要在封装基板上走线、打线、过孔然后再通到 PCB 上的多层板布线。芯片引脚数越多封装尺寸越大基板层数越多良率越低成本越高这是很现实的一笔账。一个原生 LVDS 双路 8bit 控制器至少需要 8 对数据线加 2 对时钟线也就是 20 根差分引脚单端算下来接近 20 个球算上控制信号、电源地可能要到 30 个球。而一组 4-lane MIPI DSI 只需要 4 对高速线加少量控制信号大约 10 个球就搞定带宽还更高。省下来的引脚可以多给一组 PCIe、多给一组 USB 3.0、多给一组 SATA或者干脆缩小封装、降低成本。对 RK3588 这样一个什么都要集的旗舰 SoC 来说把引脚留给 PCIe/UBS/CSI 显然比留给 LVDS 有价值得多。3.2 目标市场决定接口清单SoC 的接口集合从来不是越多越好而是给靶用户最合适的那几个。RK3588 瞄准的是边缘 AI 盒子、Mini PC、智能交互平板、视频会议终端、工业 HMI 里偏高端的那部分。这些产品的主屏要么是 HDMI 接显示器要么是 eDP 接模组屏要么是 DSI 接小尺寸触控屏几乎没有哪个目标场景指着 LVDS 屏作为主力配置。反过来看 RK3568瑞芯微把它定位成通用型低功耗工控 SoC覆盖楼宇对讲、充电桩、自动售货机、电力采集终端这些设备上大量使用老款 10 寸、12 寸 LVDS 屏供应链已经跑了十几年。这就是为什么 RK3568 特意保留了 LVDS 接口。SoC 每多一个接口验证工作量就多一截能砍的都砍只有客户反复要求的老接口才值得留着。这一代 RK3576 出来后说明瑞芯微判断 LVDS 在它想要的客户群体里已经不重要了——想要 LVDS 的去用 RK3568 就好。3.3 把兼容性外包给桥接芯片很划算做 SoC 的人常说一句话不做原生接口不等于不支持这个生态。LVDS 的存量市场太大瑞芯微不可能完全无视但解决方式不是把它集成到芯片里而是让客户外挂一颗桥接芯片。MIPI DSI 转 LVDS 的桥接芯片生态已经非常成熟后文会展开讲。从 SoC 角度自己少做一部分模拟前端封装更小测试更省从系统集成角度桥接芯片一颗几块钱板上占指甲盖大小的面积对最终产品 BOM 影响不大。这就是典型的接口集成度 ∩ 成本 ∩ 市场覆盖三方权衡结果。4. 实操在 RK3588/RK3576 上点亮一块 LVDS 屏的完整路线4.1 桥接芯片怎么选工业圈用得最多的四颗MIPI DSI 转 LVDS 的桥接芯片我实际接触过的有四颗比较有代表性列成表格方便对比芯片厂商转换方向常见搭档特点LT8918B龙迅DSI → LVDS / eDPRK3588/RK3399 核心板工业圈最普及DSI 输入 4-lane输出单/双路 LVDS支持 1080p 级TC358775东芝铠侠DSI → 双路 LVDS医疗、车载屏用得多稳定双路输出能力强但芯片偏老功耗略高SN65DSI84TIDSI → 双路 LVDS老设计过渡方案资料最多参考设计齐全供货周期要看 TI 排产IT6151联阳DSI → LVDS国产整机常用国产替代方便价格有优势要留意批次差异选型时我个人的判断顺序是先确认屏是单路还是双路再确认最高分辨率/像素时钟然后是工作温度范围和量产渠道。LT8918B 目前是市面上最容易买到的很多 RK3588 的核心板上甚至默认预留了这颗桥的焊盘不需要改出厂的底板就能接 LVDS 屏。4.2 硬件设计要点这一部分是排查的老基地硬件上把桥接芯片加在 SoC 和 LVDS 屏之间链路方向是RK3588 DSI TX → 桥接芯片 DSI RX → 桥接芯片内部转换 → LVDS TX → 屏。几个关键点必须盯死差分阻抗DSI 的差分线对阻抗按 100Ω 设计LVDS 也是 100Ω两层走线都要控阻抗别混。实际布线时DSI 和 LVDS 的差分对尽量走内层避开板上电源和干扰源。I2C 配置总线桥接芯片通常需要 MCU 或 SoC 通过 I2C 写入配置比如输出格式、通道映射、时钟相位等。I2C 的地址一定要核对屏和桥接芯片的跳线设置因为同样一颗芯片不同板卡上的 I2C 地址可能不同。复位时序桥接芯片必须等电源稳定之后解除复位很多诡异黑屏就是复位时序没处理好SoC 的 GPIO 默认电平拉反了导致芯片一直停在复位态。背光控制LVDS 屏的背光一般单独走背光电源和 PWM 引脚这部分不归桥接芯片管但要注意和桥接芯片的使能顺序通常先出图像再亮背光否则会看到短暂白屏。铺铜、ESD、电源去耦这些常规的东西不展开重点说一个容易被忽略的点桥接芯片的电源往往需要 3.3V 和 1.8V 两路而且 VDD 和 PVDD 的上电时序有严格要求设计时最好用一个专门的电源轨给桥接芯片供电不要直接挂在 SoC 的 IO 电源上否则启动波形稍有抖动桥的锁相环就不稳定屏会有几秒到几十秒的无规律闪烁。4.3 软件配置与 DeviceTree 实战RK3588 的 Linux SDK4.19 或 5.10 内核里DSI 是标准 DRM 框架下的 encoder bridge 结构。配置 LVDS 屏有两种路线一种是在 DSI 接口下直接挂一个 panel 节点适用于屏本身自带部分时序参数的简单情况另一种更常见是挂一颗 bridge 芯片把 bridge 节点放在 DSI 下。DeviceTree 里的关键设置大致是这个思路dsi1 { status okay; rockchip,lane-rate 1000; bridge0 { compatible lontium,lt8918b; reg 0; enable-gpios gpio4 RK_PA4 GPIO_ACTIVE_HIGH; reset-gpios gpio4 RK_PA5 GPIO_ACTIVE_LOW; ports { #address-cells 1; #size-cells 0; port0 { reg 0; endpoint { remote-endpoint dsi1_out; }; }; }; }; };具体 compatible 字符串和属性名要以 SDK 中实际提供的驱动为准不同版本内核差异不小。我建议拿到核心板后先在厂商提供的 SDK 里搜一下 bridge 相关 dtsi 片段很多核心板厂商会提供现成的 LVDS 屏配置直接抄作业比自己从零配快得多。驱动起来之后真正需要手动填的其实是 panel 的时序参数。LVDS 屏的规格书里会给出 Hactive、Vactive、Hbackporch、Hfrontporch、Hsync、Vbackporch、Vfrontporch、Vsync、clock-frequency 这些值原则上全部照抄不要自己改。我见过一个项目工程师觉得屏厂给的 HBP 太大擅自改小想居中显示结果整个画面偏了一大截怎么调 Hoffset 都救不回来最后还是老老实实改回原值。4.4 DSI lane rate 计算和时序匹配配置 DSI 时避不开算 lane rate。最朴素的计算方法是像素时钟 × 每像素 bit 数 ÷ lane 数 lane rate单位 Mbps比如 1080p60像素时钟 148.5MHzRGB888 是 24bit4 条 lane148.5 × 24 ÷ 4 891Mbps实际配置时还要加上数据包头、blanking 等开销一般会留出 10% 到 20% 裕量所以配成 1000Mbps 左右比较稳桥接芯片的作用就是从 DSI 高速链路上恢复出像素时钟再把它转成 LVDS 的时钟信号。如果 DSI lane rate 配置过高或过低桥接芯片恢复出来的像素时钟就会不干净LVDS 屏随之出现横条纹、抖动、闪烁等表现。另一个必须匹配的是像素格式。DSI 侧如果要发 RGB888而桥接芯片输出给 LVDS 屏只能给 RGB666那么颜色会明显偏色甚至画面发绿发紫。一般桥接芯片会提供一个寄存器选择24 位输入匹配 8bit LVDS还是18 位输入匹配 6bit LVDS务必和屏的规格对应上。5. 常见问题与排查技巧实录5.1 现象-原因速查表整理一张速查表按我实际碰到这些问题后验证过的思路总结现象我优先怀疑的方向建议排查动作背光亮、无图像桥接芯片复位或 I2C 配置失败测复位引脚电平、I2C 地址是否冲突用 I2C 工具读桥的 ID 寄存器上电后十几秒内图像闪烁桥接电源时序或 DSI lane rate 不对检查桥接供电是否独立、看供电波形是否平滑尝试降低或提高 lane rate满屏雪花/彩色噪点VESA/JEIDA 映射不一致修改桥接芯片的映射寄存器或在屏规格书里确认面板格式画面明显偏移HBP/VFP 等时序参数有误对照屏规格书逐一核 display-timing 参数颜色偏色发绿发紫RGB888/RGB666 配置不匹配确认屏色深和桥接输出模式是否一致只有半屏显示双路 LVDS 有一路未工作用示波器看两路时钟和数据差分对检查桥接输出使能寄存器边缘有竖条纹同步信号极性反了尝试将 HSYNC/VSYNC 极性取反再验证5.2 三个真实案例复盘案例一是 LT8918B 全黑屏。硬件上 I2C 扫描能发现 0x44 地址有设备但读不了 ID。最后发现板上有两颗同型号桥接芯片共用一条 I2C 总线地址完全一样软件读到了后一颗的响应而前一颗一直没有被初始化。解决方式是去掉一颗芯片或者修改硬件地址跳线让两颗芯片地址错开。案例二是一块 1366×768 的双路 LVDS 屏上电后屏幕右侧整块发白。排查到最后是屏规格书要求的像素时钟是 85.6MHz但 SDK 默认配置用的是 86MHz。频率偏差不到 0.5%双路 LVDS 并行传输时却出现了数据错位怎么调都不行最后把时钟频率精确改到 85.6MHz画面恢复正常。这件事让我明白一个道理LVDS 对时序的敏感度比 eDP 高得多eDP 有链路训练可以自适应LVDS 没有像素时钟一点点偏差都会体现在像素错位上。案例三是 VESA/JEIDA 格式问题。一块 8bit LVDS 屏在桥接芯片默认配置下白屏软件侧怎么改 DSI 输出格式都没用。后来我直接读桥接芯片的寄存器表发现这颗芯片输出端有一个独立的数据映射选择位默认是 JEIDA而屏是 VESA。把这个位改过来之后图像立即正常。这提醒我DSI 侧格式和 LVDS 侧格式是两回事中间有个桥别只顾一头。5.3 老生常谈但必须说先量硬件再改软件排查 LVDS 相关问题我的习惯是看四个波形先桥接芯片的输入时钟、DSI lane 上的差分波形、LVDS 差分对输出、背光使能时序。逻辑分析仪和示波器一看波形问题往往能定位掉大半。最常见的情况是电源纹波大导致 LVDS 驱动端信号眼图不好这时候改软件参数治标不治本老老实实加电容、调 DC-DC 才是正路。6. 给同行的一点选型建议如果你现在正处在一个需要接 LVDS 屏又选了 RK3588/RK3576 的阶段我的建议是分三种情况处理第一种新项目还没有定屏。直接放弃 LVDS选 eDP 或者 MIPI DSI 接口的屏分辨率往 1080p 以上选。eDP 屏在供应链上已经是绝对主流价格甚至比同分辨率 LVDS 屏还便宜线缆还少电气性能更好没有任何理由再回头找 LVDS。第二种项目定了必须用存量的 LVDS 屏。那就老老实实上桥接方案LT8918B 或者 IT6151 都能解决问题。设计时把桥接芯片的位置、I2C 引脚、复位引脚都布好给板卡留一个跳线选项方便后续兼容不同厂家的屏。软件上先跑通 I2C再调时序再调映射一步一步来。第三种如果产品线里有大量的 10 寸左右 LVDS 屏而且不希望折腾桥接那么 RK3568 依然是一个务实的选择。它是目前瑞芯微产品线里少数保留原生 LVDS 的 SoC性能跑简单 HMI 和工业控制足够。不要因为 RK3588 热度高就强行追新到底用哪颗芯片应该由用哪块屏倒推决定。我个人这几年最深的体会是SoC 上的显示接口列表其实就是芯片产品经理用脚投票的结果。RK3588 砍掉 LVDS 不是技术做不到而是它判断你想接的屏可能已经不是 LVDS 了。作为工程师我们能做的就是看穿这层取舍然后把手头的屏用最合理的方式点亮它。这篇文章里的方案是基于我实际调板过程中的常见做法总结的具体细节以你手里的 SDK 版本和屏规格书为准。最后分享一个小习惯每次拿到新屏我第一件事就是把屏规格书里的接口类型、数据映射、时序参数抄到一张便签上贴到显示器边上后边调试所有参数都对这张纸来少走了很多弯路。