ARTICLE DETAIL

资讯详情

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

RK3588为何砍掉原生LVDS?嵌入式显示接口演进与选型指南

RK3588为何砍掉原生LVDS?嵌入式显示接口演进与选型指南 1. 从一块点不亮的屏说起RK3588砍掉原生LVDS到底动了谁的奶酪第一次在RK3588上接一块10.1寸工业LVDS屏上电之后屏幕一片漆黑背光亮着但没有任何图像。查了半天设备树、时钟、供电最后翻到芯片手册的显示子系统章节才发现——这颗SoC压根就没有原生LVDS PHY。这个经历估计不少做嵌入式工业设备的朋友都遇到过尤其是从RK3288、RK3399那一代平台迁移过来的工程师习惯性地在dts里写个lvds节点结果编译能过、启动不报错就是不出图。RK3588和RK3576这两颗芯片作为瑞芯微近几年的主力旗舰和中高端型号在显示接口的配置上做了一个非常明确的取舍砍掉原生LVDS输出全面转向MIPI DSI和eDP/DP。这不是瑞芯微一家在做的事情全志、晶晨、高通、联发科在近几代SoC上都在做同样的动作。但RK3588作为目前嵌入式工业设备、边缘计算盒子、多屏显示终端里出货量极大的平台这个变化影响面特别广因为大量工业场景里的显示屏还是LVDS接口的。这篇文章想聊的不是怎么在RK3588上点LVDS屏这种纯操作层面的东西而是想从显示接口演进的角度把SoC厂商为什么做这个取舍讲清楚。搞明白这个逻辑之后你在选型、方案设计、甚至跟硬件工程师吵架的时候心里都有底。适合正在做RK3588/RK3576方案选型的嵌入式工程师、做工业显示终端的硬件负责人以及想理解SoC显示子系统演进逻辑的技术爱好者。2. LVDS在嵌入式显示里的历史地位它为什么能活这么久2.1 LVDS的物理层本质一个非常朴素的差分信号方案LVDS全称Low-Voltage Differential Signaling低电压差分信号。它的核心思路非常朴素用一对差分线传输一个bit电压摆幅只有350mV左右靠电流方向的变化来表示0和1。这个方案最大的优点是抗共模干扰能力强、功耗低、线数少。在显示接口这个场景里LVDS通常以4对数据线1对时钟线的形式出现也就是常说的单路LVDS能跑1366x76860Hz这个级别的分辨率。如果要上1920x1080就需要双路LVDS也就是8对数据线2对时钟线。再往上到2K、4KLVDS的线数和时钟频率就会变得非常夸张。我见过不少工业屏到现在还在用单路LVDS分辨率1024x600或者1280x800刷新率60Hz带宽需求不到1Gbps。这种场景下LVDS简直是完美方案线少、便宜、稳定、EMI好处理。2.2 工业设备的惯性为什么LVDS屏存量这么大这里要说一个很多人忽略的事实工业显示屏的迭代周期远比消费电子慢。一块工业LVDS屏从设计定型到停产生命周期经常是8到10年。很多工控机、医疗设备、车载终端的屏幕方案是五六年前定下来的供应商的模具、排线、连接器全都是围绕LVDS设计的。更关键的是工业设备对可靠性的要求远高于对分辨率的要求。一块1024x600的LVDS屏工作温度-20到70度亮度500nit能稳定跑十年这种屏在工业场景里比一块4K的MIPI屏有价值得多。所以LVDS屏的存量市场非常大而且短期内不会消失。这就造成了一个矛盾SoC厂商在往前跑屏幕供应链在原地踏步。RK3588砍掉原生LVDS本质上就是这个矛盾的体现。2.3 LVDS的技术天花板它到底卡在哪里LVDS不是没有缺点只是这些缺点在低分辨率场景下不明显。一旦分辨率上去问题就来了。分辨率刷新率所需带宽LVDS方案线数1024x60060Hz~0.5Gbps单路LVDS5对1920x108060Hz~1.5Gbps双路LVDS10对2560x144060Hz~2.7Gbps双路LVDS高频10对3840x216060Hz~6GbpsLVDS基本不可行极多可以看到到了4K级别LVDS的线数和时钟频率都变得不可接受。而且LVDS是单向、无协议层、无握手的接口它只负责把像素数据推出去没有命令通道、没有错误检测、没有低功耗管理。这在现代SoC的显示子系统架构里是一个非常原始的存在。3. MIPI DSI凭什么取代LVDS不只是线数少那么简单3.1 从推像素到带协议DSI的架构优势MIPI DSI和LVDS最大的区别不是线数少而是它是一套完整的协议。DSI有命令通道、有数据通道、有低功耗模式、有错误检测。这意味着SoC可以通过DSI去读屏幕的EDID信息、动态调整刷新率、在静止画面时进入低功耗状态。这个差异在实际项目里影响很大。举个例子用LVDS屏的时候屏幕参数是写死在设备树里的换一块屏就得改dts重新编译。而用DSI屏SoC可以主动读取屏幕的能力信息理论上做到即插即用。虽然实际工业场景里大家还是写死参数但架构上的灵活性是LVDS给不了的。3.2 带宽密度DSI用更少的线跑更高的速率DSI的物理层是D-PHY每条lane的速率可以到1.5Gbps甚至更高RK3588的DSI支持到4 lane每lane 2.5Gbps左右。4条lane就能跑10Gbps足够驱动4K60Hz。而LVDS要达到这个带宽线数会多到PCB都布不下。这里有个关键点DSI的lane是可扩展的。1 lane、2 lane、4 lane灵活配置低分辨率屏用1 lane就够高分辨率屏堆到4 lane。LVDS的单路/双路配置就粗糙得多而且双路LVDS的时序同步本身就是个麻烦事。3.3 RK3588的显示子系统架构为什么它不需要LVDSRK3588的显示子系统VOP输出接口包括HDMI、DP、eDP、MIPI DSI就是没有LVDS。这不是疏忽而是架构决策。VOP的输出是数字并行信号要转成LVDS需要额外的PHY。而MIPI DSI和eDP的PHY已经集成在SoC里了再加一个LVDS PHY意味着额外的硅面积、额外的功耗、额外的引脚。对于RK3588这种引脚资源紧张的旗舰SoC来说每一个引脚都要用在刀刃上。LVDS PHY占用的引脚数不少至少10个而这些引脚可以用来做PCIe、USB、以太网等更通用的接口。从芯片设计的角度看砍掉LVDS是理性的。4. 砍掉LVDS之后工业设备厂商的三种应对路径4.1 路径一用转换芯片把DSI/eDP转成LVDS这是目前最主流的做法。市面上有专门的桥接芯片比如龙迅的LT8912、LT9211系列或者TI的SN65DSI83/84/85系列可以把MIPI DSI信号转成LVDS输出。以SN65DSI85为例它支持双路DSI输入、双路LVDS输出最高能驱动1920x108060Hz。配置方式是通过I2C写寄存器需要在设备树里配好DSI的输出参数然后在驱动初始化时通过I2C配置桥接芯片。这种方案的好处是屏幕端完全不用改还是原来的LVDS屏、原来的排线、原来的连接器。坏处是增加了一颗芯片的成本大概1到3美元、增加了PCB面积、增加了调试复杂度。我实际用下来的经验是桥接芯片的初始化时序很关键DSI必须先稳定输出再配置桥接芯片否则容易出现花屏或者不显示。而且桥接芯片的时钟需要和DSI的时钟严格匹配差一点就出问题。4.2 路径二换屏直接用MIPI DSI屏如果产品还在设计阶段屏幕还没定型那最干净的做法是直接选MIPI DSI屏。现在10寸以下的工业MIPI屏选择已经很多了分辨率、亮度、工作温度都能满足工业要求。换屏的代价是供应链要重新走一遍包括屏幕选型、排线设计、结构适配、EMC测试。对于已经在量产的产品这个代价太大。但对于新产品这是长期来看最合理的方案。4.3 路径三用eDP屏eDP是LVDS在某种意义上正统接班人。它也是差分信号也是嵌入式显示接口但带宽更高、协议更完善。很多工业屏厂商已经在推eDP接口的屏幕尤其是高分辨率、高亮度的型号。RK3588原生支持eDP输出直接接eDP屏不需要桥接芯片。但eDP屏的成本目前还是比LVDS屏高供应链也没那么成熟。这个路径适合对显示质量要求高的场景比如医疗影像、高端HMI。4.4 三种路径的对比与选型建议维度DSI转LVDS桥接换MIPI DSI屏换eDP屏改造成本低加一颗芯片高换屏改结构高换屏改结构BOM成本1~3美元屏幕成本可能更低屏幕成本偏高调试复杂度中时序寄存器低低长期维护桥接芯片可能停产供应链稳定供应链成长中适用场景存量产品迁移新产品设计高端显示需求我的建议是存量产品用桥接新产品直接上DSI或eDP。桥接芯片虽然方便但多一颗芯片就多一个失效点长期来看不划算。5. 桥接方案实操DSI转LVDS的完整调试链路5.1 硬件连接与供电检查以SN65DSI85为例硬件上需要确认几个关键点。DSI的4条lane或者2条从RK3588接到桥接芯片的DSI输入桥接芯片的LVDS输出接到屏幕。供电方面桥接芯片通常需要1.8V和3.3V两路电源要确认上电时序符合手册要求。注意很多桥接芯片对电源上电顺序有要求比如1.8V必须先于3.3V或者反过来。上电顺序错了芯片可能不工作而且不会报错只是默默不出图。这个坑我踩过查了两天才发现是电源顺序问题。5.2 设备树配置DSI输出参数的确定RK3588的DSI控制器在设备树里需要配置时钟、lane数、分辨率、时序参数。这些参数必须和桥接芯片的输入要求匹配。关键参数包括dsi,lanesDSI lane数要和硬件连接一致clock-frequencyDSI时钟频率需要根据分辨率和刷新率计算hactive/vactive水平/垂直有效像素hfront-porch/hback-porch/hsync-len水平时序vfront-porch/vback-porch/vsync-len垂直时序这些参数的计算逻辑是DSI的像素时钟 (hactive hfp hbp hsync) × (vactive vfp vbp vsync) × 刷新率。然后DSI的lane速率 像素时钟 × bpp / lane数。以1920x108060Hz、24bpp、4 lane为例像素时钟约148.5MHzlane速率约891Mbps。5.3 桥接芯片寄存器配置I2C写入顺序桥接芯片的配置通常是在驱动probe阶段通过I2C完成的。以SN65DSI85为例配置流程大致是复位芯片配置DSI输入参数lane数、格式、时序配置LVDS输出参数分辨率、时序、颜色格式使能PLL等待PLL锁定使能LVDS输出/* 伪代码示例SN65DSI85初始化流程 */ static int sn65dsi85_init(struct i2c_client *client) { /* 1. 软复位 */ regmap_write(regmap, 0x09, 0x01); msleep(10); /* 2. 配置DSI输入 */ regmap_write(regmap, 0x10, 0x26); /* 4 lane, RGB888 */ regmap_write(regmap, 0x11, 0x00); /* 3. 配置LVDS输出时序 */ regmap_write(regmap, 0x20, 0x00); regmap_write(regmap, 0x21, 0x80); /* ... 更多时序寄存器 ... */ /* 4. 使能PLL */ regmap_write(regmap, 0x0A, 0x01); msleep(5); /* 5. 等待PLL锁定 */ regmap_read(regmap, 0x0A, val); if (!(val 0x80)) { dev_err(dev, PLL not locked\n); return -EIO; } /* 6. 使能LVDS输出 */ regmap_write(regmap, 0x0D, 0x01); return 0; }提示不同厂商的桥接芯片寄存器定义完全不同一定要对着手册逐条配置。不要试图抄别人的配置因为DSI输入参数、LVDS输出参数、屏幕时序都不一样抄过来大概率不工作。5.4 调试中的常见现象与排查思路调试DSI转LVDS最常见的现象是背光亮但无图、花屏、闪屏三种。背光亮但无图通常是DSI没有输出或者桥接芯片没配置成功。排查顺序是先确认DSI控制器有没有在输出可以用示波器量DSI的时钟lane再确认桥接芯片的I2C通信是否正常读芯片ID最后确认PLL是否锁定。花屏通常是时序参数不匹配重点检查DSI的时序和LVDS的时序是否一致以及颜色格式RGB888还是RGB666是否配置正确。闪屏可能是时钟不稳定或者电源纹波太大需要检查DSI时钟的抖动和桥接芯片的供电质量。6. 从RK3588看SoC显示接口演进砍LVDS只是开始6.1 引脚经济学每一根引脚都是成本SoC的引脚数量直接决定了封装成本和PCB布线难度。RK3588是FCBGA封装引脚数超过1000个但依然不够用。每一个功能接口都要抢引脚。LVDS PHY至少占用10个引脚双路而MIPI DSI 4 lane只占8个引脚4对差分eDP 4 lane也是8个引脚。看起来差不多但DSI和eDP的带宽远高于LVDS单位引脚的带宽效率高得多。从芯片厂商的角度把引脚分配给LVDS意味着少做一路PCIe或者少做几个USB。在边缘计算、AI推理这些场景里PCIe和USB的价值远高于LVDS。所以砍LVDS是引脚资源优化的必然结果。6.2 显示接口的消费电子化工业跟着消费电子走一个残酷的现实是SoC厂商的出货量主要靠消费电子。手机、平板、电视盒子这些市场决定了SoC的接口配置。消费电子早就不用LVDS了手机屏全是MIPI DSI电视全是HDMI/eDP。SoC厂商跟着消费电子的需求走工业设备只能适应。RK3588的定位是边缘计算和AIoT它的显示接口配置是围绕这个定位来的。HDMI 2.1、DP 1.4、eDP 1.3、MIPI DSI这些都是消费电子和高端显示的主流接口。LVDS在这个列表里显得格格不入。6.3 未来趋势LVDS会彻底消失吗短期内不会。工业设备的惯性太大了LVDS屏的存量市场还会存在很多年。但新设计的SoC大概率都不会再集成LVDS PHY了。桥接芯片会长期存在成为LVDS屏和现代SoC之间的翻译官。对于工程师来说这意味着LVDS的知识不会白学但技能树需要往DSI/eDP方向延伸。理解DSI的协议层、eDP的链路训练、桥接芯片的配置这些会成为嵌入式显示领域的必备技能。7. 给正在做RK3588显示方案的同行几点实在建议如果你正在做RK3588或RK3576的显示方案下面这几条是我踩过坑之后总结出来的不一定对但都是真金白银换来的。第一选型阶段就把屏幕接口定下来。不要等到硬件画完了才发现屏幕是LVDS的然后临时加桥接芯片。桥接芯片的PCB布局对DSI信号质量要求很高临时加很可能布不下或者信号完整性出问题。第二DSI的时钟和lane速率要算清楚。RK3588的DSI控制器对时钟有范围要求太低太高都不行。算的时候留20%余量不要卡着上限跑。第三桥接芯片的I2C地址要确认。有些桥接芯片的I2C地址是固定的如果和板上其他芯片冲突就麻烦了。选型的时候就要查清楚。第四调试的时候先抓DSI信号再看桥接芯片。很多人一上来就调桥接芯片的寄存器其实如果DSI根本没输出调什么都没用。用示波器或者协议分析仪先确认DSI在正常工作。第五屏幕时序参数不要抄。每块屏的时序都不一样一定要对着屏幕的datasheet填。尤其是porch参数差几个像素可能就花屏。第六考虑长期供货。桥接芯片的供货周期和停产风险要提前评估。有些桥接芯片看起来便宜但可能两年后就买不到了。选主流型号或者提前做好替代方案。最后说一个我自己的体会RK3588砍掉LVDS这件事刚开始觉得是麻烦后来觉得是好事。它逼着我们把显示方案做得更现代、更规范。DSI和eDP的调试虽然比LVDS复杂但一旦跑通整个显示子系统的可控性和灵活性都上了一个台阶。LVDS那种写死参数、上电就跑的模式在现在这个多屏、高分辨率、低功耗的需求下确实该退休了。
返回列表