ARTICLE DETAIL

资讯详情

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

车载摄像头SerDes选型:GMSL1/GMSL2及MAX96701/9295/96717对比

车载摄像头SerDes选型:GMSL1/GMSL2及MAX96701/9295/96717对比 做车载摄像头硬件这几年被问得最多的一个问题就是GMSL1和GMSL2到底怎么选MAX96701、MAX9295、MAX96717这几颗串行器芯片光看数据手册好像都能用可真到选型阶段就卡住了——带宽算不明白、接口对不上、EMC过不了、成本压不下来最后一版改三版全是泪。这篇文章我想把GMSL SerDes的选型逻辑从头到尾捋一遍不堆参数表直接讲清楚三颗芯片的真实差异、适用场景和我在调试中踩过的坑给正在做车载摄像头方案选型、或者刚接手SerDes相关项目的工程师一个可参考的决策路径。先说明一下背景。GMSL是车规级高速串行解串技术专门解决摄像头、雷达这类传感器和域控制器之间的长距离高带宽传输问题。一颗CMOS传感器输出的MIPI信号只能走十几厘米通过串行器变成一串高速差分信号之后用一根同轴线或者屏蔽双绞线就能拉出去十几米然后再用解串器还原成MIPI给SoC处理。这套链路里串行器是靠近摄像头传感器的那一端选择串行器基本就等于选择了整条链路的带宽天花板和协议基础。这篇文章面向的是车载电子硬件工程师、系统集成工程师以及刚入门想系统了解GMSL选型逻辑的开发者。我会结合GMSL1到GMSL2的演进背景把MAX96701、MAX9295、MAX96717三颗串行器的定位、参数、搭配方式和调试经验拆开讲。文章不会照搬数据手册更多是我在实际项目中验证过的判断方法。1. GMSL技术演进与三颗芯片的定位1.1 为什么车载摄像头离不开SerDes车载摄像头和手机摄像头最大的区别在于物理距离。手机sensor到主控芯片只有几厘米MIPI信号可以直接跑但车载摄像头分布在车头、车尾、后视镜附近距离域控制器往往要跨过整个车身走线长度少则三米多则十米以上。MIPI CSI-2是源同步差分信号对走线长度、阻抗连续性和干扰都非常敏感直接拉长线根本不现实。这时候SerDes的价值就出来了把并行的MIPI数据编码成高速串行流通过同轴线或屏蔽双绞线传输接收端再恢复成MIPI。传输介质少、线束轻、抗干扰能力强还能顺便把I2C/UART控制信号、供电都跑到同一根线上。GMSL是ADI原Maxim主导的车规级SerDes方案在环视、前视、舱内监控这些场景里几乎成了事实标准。从架构上看一条GMSL链路包括三部分摄像头端串行器Serializer、线束同轴或STP、控制器端解串器Deserializer。串行器决定能吞下多大的MIPI带宽解串器决定能输出几路给SoC两者必须成体系匹配。很多工程师选型时报了一堆串行器的参数最后和解串器对不上问题就出在这里。1.2 GMSL1到GMSL2的关键变化GMSL1和GMSL2之间的升级不光是速率数字变大这么简单。GMSL1的前向链路摄像头到控制器方向速率固定为3.12Gbps采用8b/10b编码方式8b/10b有个硬伤传输10个bit里只有8个是有效数据有效带宽利用率只有80%。所以GMSL1在做1080p YUV422的时候压力不算大但一旦要跑高帧率、高分辨率就开始捉襟见肘。GMSL2在编码效率和物理层能力上都做了重构。首先速率支持1.5Gbps、3Gbps、6Gbps三档6Gbps这条链路给2MP高帧率、3MP、8MP摄像头都留出了余量。其次GMSL2的控制通道不再独占一路物理带宽而是和视频数据融合在同一对差分线上双向传输UART/I2C回传通道的速率也比GMSL1高了不少这对需要实时读取sensor寄存器的ADAS系统非常关键。GMSL2还干了一件很重要的事把功能安全纳入协议设计。链路本身带有CRC校验、错误上报、内建自检BIST机制可以支撑ASIL B级别以上的功能安全开发。对于L2以上智驾系统这一条基本是刚需。相比之下GMSL1靠外部兜底方案来实现SIL等级成本更高、验证更麻烦。1.3 三颗芯片在GMSL家族中的角色MAX96701是GMSL1时代的经典串行器2016年之后大量用在环视和基础ADAS摄像头上搭配MAX96705、MAX9286这代解串器方案非常成熟。到今天仍然有很多量产项目在用主要原因是成本低、供应稳定、参考资料多。MAX9295是GMSL2的“高配版”串行器支持最高6Gbps速率同时内部兼容GMSL1模式可以做跨代兼容的桥接设计。它的定位是给高分辨率前视摄像头、8MP摄像头、以及需要数据冗余传输的域控制器方案使用。MAX96717是GMSL2的“标准版”串行器价格和功耗都控制得比较低广泛适用于2MP左右的车载摄像头和MAX96712、MAX96716这类多通道解串器组合是当前新车环视/感知系统里最高频的组合之一。很多新人容易把MAX9295和MAX96717搞混因为它们都是GMSL2串行器MIPI输入也长得像。实际上MAX96717是单路3GbpsMAX9295是双路CSI-2输入、最高6Gbps输出还能配成两条独立链路做备份。理解了这个差异后面选型就顺了。2. 三款芯片核心参数深度拆解2.1 MAX96701GMSL1时代的性价比主力MAX96701面向1080p及以下分辨率的车载摄像头场景前向链路速率3.12Gbps输入侧是MIPI CSI-2接口支持最多4条MIPI data lane。这个配置在当年足够主流现在做一些分辨率不高的环视、倒车、DMS项目依然够用。它的视频处理链路支持YCbCr 422等格式也支持传感器侧通过I2C配置寄存器。由于GMSL1的反向控制通道速率有限所以在MAX96701方案里主控访问摄像头sensor寄存器时会感觉“有点慢”这在环视应用里问题不大但在需要逐帧调整曝光/增益的高速ADAS场景里就显得吃力。MAX96701常见搭配是MAX96705、MAX9286这类GMSL1解串器。如果你手头已有这类解串器的成熟方案MAX96701可以直接沿用不需要改控制器端硬件。这一点对老平台升级有吸引力——换摄像头的串行器域控制器那端基本不用动。功耗方面MAX96701在同代产品里属于中等偏上水平摄像头模组如果对散热比较敏感需要算清整机功耗。但它的好处是资料多、案例多随便一搜就有参考原理图很多Tier1的参考设计都在用。对量产项目来说这种“被验证过无数次”的确定性是有价值的。2.2 MAX9295GMSL2里的全能选手MAX9295是GMSL2串行器里功能最全的一颗。它支持两组MIPI CSI-2输入可以处理一路高分辨率视频流也可以把两路sensor数据打包传输输出侧支持两路GMSL2信号既可以做双链路带宽叠加也可以做成主备冗余——当一路链路失效时切换另一路保证关键数据不漏传。带宽方面MAX9295在GMSL2模式下最高支持6Gbps这是它和MAX96717拉开差距的核心参数。6Gbps能跑什么2MP 60fps YUV422串行数据、3.4MP 30fps摄像头、8MP 30fps摄像头这些高带宽场景只有6Gbps链路才能稳定覆盖。实际算下来8MP摄像头YUV422格式像素时钟压力很大MIPI侧需要4 lane全开GMSL侧没有6Gbps根本顶不住。MAX9295同样支持GMSL1兼容模式可以工作在3.12Gbps用来对接老的GMSL1解串器。这意味着它在两个代际之间可以做桥梁比如控制器端暂时还用MAX96705解串器但摄像头端已经想换成MAX9295这个组合是通的。不过需要明确兼容模式跑的是GMSL1带宽上限这时不要指望它能给8MP用。因为支持双输出MAX9295常见搭配对象是MAX96712、MAX96716这类多通道解串器。比如MAX96712能接收4路GMSL2摄像头信号其中一路如果来自MAX9295的冗余链路就相当于给了这颗摄像头“双保险”。2.3 MAX96717低功耗高性价比的GMSL2基石MAX96717在GMSL2串行器里走的是“标准规模、低功耗、高性价比”路线。输入是MIPI CSI-2输出是单路GMSL2前向速率3Gbps。它和MAX9295最大的差别就是最高速率少了3Gbps也没有双链路冗余能力。3Gbps听起来比6Gbps低不少但在大多数车载摄像头场景里已经够用。1080p 30fps YUV422大约需要1Gbps一下的吞吐2MP 30fps同样没问题甚至3.4MP YUV422 30fps也能在3Gbps内跑下来。真正吃带宽的是那些要同时跑高帧率和高分辨率的场景比如800万像素前视摄像头60fps出图这时候MAX96717的3Gbps确实不够得上MAX9295 6Gbps。MAX96717的功耗控制比MAX9295更优对摄像头模组端PCB的散热设计更友好这也是它在环视、后视、电子后视镜这类摄像头数量多、模组体积小的应用里非常受欢迎的原因。典型搭配是MAX96712或MAX96716。现在很多域控方案里一个MAX96712下面挂4颗MAX96717对应4路环视摄像头这是非常成熟的拓扑。相比MAX9295MAX96717的价格优势也更明显项目有一定量级的时候一颗能省几块钱二十万辆车就是一笔不小的费用。2.4 三款芯片参数与适用场景速查表对比维度MAX96701MAX9295MAX96717GMSL版本GMSL1GMSL2兼容GMSL1模式GMSL2前向最高速率3.12Gbps6GbpsGMSL2/ 3.12GbpsGMSL1模式3GbpsMIPI输入能力单路CSI-24-lane双路CSI-2支持多虚拟通道单路CSI-24-lane输出链路数1路GMSL1最多2路GMSL2可冗余/可扩展1路GMSL2控制通道I2C/UART速率一般I2C/UART速率更高且融合传输I2C/UART速率更高功能安全原生支持弱需外部方案强支持CRC/BIST等强支持CRC/BIST等典型解串器搭配MAX96705 / MAX9286MAX96712 / MAX96716 / MAX96724MAX96712 / MAX96716适用摄像头规模720p/1080p2MP高帧率 / 3MP / 8MP1080p / 2MP / 3MP成本档位低高中这张表是我选型时最常翻的参考。先看摄像头像素和帧率估算带宽落到哪个档位再决定是不是需要GMSL2和6Gbps然后看冗余需求基本就能锁定芯片。3. 选型决策从需求反推芯片不靠感觉3.1 第一步用视频带宽卡第一道线选串行器第一条硬指标是带宽。我习惯先把摄像头输出格式换算成GMSL链路需要的有效吞吐率。公式不复杂例如2MP1920x108030fpsYUV422格式每个像素16bit裸数据量约为1920x1080x30x16bit算下来约995Mbps也就是大约1Gbps加上消隐期和协议开销1.5Gbps以内的GMSL2链路就能稳跑如果帧率提到60fps数据量翻倍到2Gbps左右需要3Gbps链路才保险8MP3840x216030fps YUV422裸数据量约3.98Gbps加上协议开销和MIPI消隐就得上6Gbps链路了。从这个测算就能看明白三颗芯片的适用边界1080p 30/60fps是MAX96717的舒适区8MP前视直接选MAX9295MAX96701只在沿用GMSL1老平台时推荐或者项目预算极其敏感、只在GMSL1生态里做低分辨率。很多人纠结MAX9295和MAX96717第一步就把带宽算清楚问题就解决了一半。还要注意传感器端出图格式。RAW Bayer格式下10bit的RAW数据和16bit的YUV422数据占用的带宽差异很大。有的2MP摄像头用RAW10输出数据量比YUV422小不少用MAX96717跑也能留出余量有的摄像头非要输出YUV422带宽立刻紧张。选型前先和算法/软件同事确认ISP的处理链路别自己想当然。3.2 第二步根据物理链路和供电选拓扑带宽算完接着看线束和供电。GMSL链路的物理介质有两种同轴线Coax和屏蔽双绞线STP。Coax的优点是一根线同时传数据、时钟、控制信号和供电成本低、布线方便STP抗干扰能力强适合强干扰区域但成本更高。幸运的是三颗芯片的GMSL输出都支持Coax或STP主要差别在外部匹配电路。MAX96717和MAX9295在GMSL2模式下对线材的质量要求略高尤其是在6Gbps速率下建议优先用高质量75Ω同轴或100Ω差分STP。然后是供电。同轴供电PoC在车载摄像头里几乎是标配摄像头端供电直接由控制器端通过同轴线馈电。PoC电路里串行器电源脚对电源噪声非常敏感如果摄像头端的大电容压降过大、或者PoC电感选型不当会导致串行器复位或视频闪断。选MAX9295做8MP方案时摄像头端功耗明显更高PoC电感需要通过能力大一些DC-DC的负载调整率也要盯紧。链路距离也是物理层面的关键变量。3Gbps速率下普遍做到5到10米的同轴线没问题6Gbps速率下信号损耗随频率升高明显增大8米以上要特别注意线缆品质和均衡器配置。MAX9295在6Gbps模式下对线束损耗的容忍度有量化指标选型时跟线束供应商要S参数回来预估插入损耗否则容易在整车上出现偶发性花屏。3.3 第三步控制通道与功能安全需求摄像头不只是单向传视频还需要回传I2C/UART控制指令比如曝光、增益、白平衡等寄存器都挂在sensor里。GMSL1专有一条独立反向控制通道但速率有限而且对帧同步等事件支持弱。GMSL2把控制通道融合到主链路中速率和实时性大幅提升这对“实时读取sensor状态 逐帧控制”的ADAS摄像头很关键。如果项目有功能安全目标比如前视摄像头要求ASIL B建议直接选GMSL2方案。MAX9295和MAX96717都原生支持CRC校验和BIST自检可以在链路层发现视频错误并及时上报MAX96701作为GMSL1方案这些机制需要额外芯片或软件去实现验证成本完全不一样。所以但凡是新立项的ADAS相关摄像头我不太推荐再走GMSL1。功能安全还牵扯到解串器侧的PSI5、时间同步等功能。GMSL2支持多摄像头同步采集这对环视拼接和立体视觉非常重要。MAX96712这类解串器和MAX96717组合时可以做到多路摄像头同步输出不用在SoC侧做大量同步补偿工作。MAX96701所在的GMSL1生态也能做同步但灵活性和精度都差一截。3.4 不同应用场景的最终推荐组合结合我实际接触过的项目给出几个典型的选型组合可以直接抄作业环视AVM1MP/2MP鱼眼4路推荐MAX96717 MAX96712。4颗MAX96717对应4路摄像头MAX96712做4路解串带宽余量充足功耗控制好成本也是GMSL2方案里最优的。前视ADAS2MP高帧率或3MP推荐MAX96717或MAX9295 MAX96712/MAX96716。如果帧率到60fps以上且需要一点带宽余量选MAX9295如果预算有限且30fpsMAX96717足够。前视高阶ADAS8MP必须MAX9295 MAX96712或MAX96724。8MP只有在6Gbps链路上才能跑起来MAX9295是当前比较稳妥的方案。电子后视镜/流媒体后视镜1080p~2MPMAX96717 MAX96716/MAX96712低功耗和可靠显示优先。老平台升级控制器端还是GMSL1解串器可以选MAX9295的GMSL1兼容模式或者继续沿用MAX96701视摄像头像素和升级周期决定。有人会问MAX96701是不是已经过时了我的观点是如果产品定义就是720p/1080p的基础环视或者倒车摄像头没有功能安全目标而且平台已经稳定量产那MAX96701还是很有竞争力的成本低风险小但如果是全新设计、要面向未来3到5年的车型直接上GMSL2生态的MAX96717/MAX9295更划算也方便后续往更高像素平滑演进。4. 设计落地与调试避坑实录4.1 硬件设计电源、匹配、PCB布局串行器端的硬件设计我建议按以下顺序来检查。电源设计是最容易翻车的地方。MAX96717/MAX9295通常需要1.8V和3.3V部分IO可能需要1.2V摄像头端域控通过PoC馈电所以串行器侧的电源先经过一个LDO或DC-DC稳压再接去耦电容。这里有个容易被忽略的点PoC供电在启动瞬间会有一个较大的浪涌电流如果LDO输入电容选太大上电时间会过长和域控端的上电时序对不上导致串行器初始化失败。我做过一个项目现象是摄像头偶尔不起查到最后就是PoC电容过大导致上电慢。匹配电路上GMSL输出端的串阻/并联电阻需要严格按照数据手册选。同轴线走75Ω阻抗STP走100Ω差分阻抗别混用。有人为了省一颗电容去掉DC块电容或者换了一颗高频特性差的电容结果花屏、误码率直线上升。PCB走线方面MIPI差分对内等长GMSL高速信号尽量短且远离时钟和电源摄像头模组空间小但也要保证参考平面连续不要跨分割。散热也不能忽视。MAX9295在高负载下功耗明显高于MAX96717如果摄像头模组全密封夏天工况下温度可能直接逼近芯片结温上限。量产前一定要做热仿真或实车高温测试必要时在散热结构上加铜箔或导热垫。4.2 软件配置与I2C控制通道顺序GMSL链路不是上电就能出图需要按顺序初始化。以MAX96717搭配MAX96712为例大概顺序是先让域控端给解串器供电并配置解串器进入正常模式然后通过同轴线给摄像头端供电等串行器上电完成再配置解串器的I2C地址映射和MIPI输出格式最后通过控制通道访问摄像头sensor。我犯过的低级错误是上来就写sensor寄存器没确认串行器/解串器的PHY Lock状态。GMSL链路没锁定控制通道根本没建立I2C写进去就是石沉大海。正确做法是读解串器侧的PHY Lock寄存器不同芯片寄存器地址不同手册里通常叫PHY Lock或LOCK状态确认锁定后再操作下游设备。另一个常见坑是I2C地址冲突。域控上接了解串器、串行器、EEPROM、sensor大家都在0x40到0x7F之间极易撞车。MAX96717和MAX9295支持多个I2C地址可配设计时给每种设备分配独立地址段并预留地址跳线或者软件配置位。我在环视项目里有段时间调不通查到最后是两路摄像头sensor默认地址一样撞了。软件调试时建议用ADI官方的寄存器配置助手或者脚本批量读写。手写逐个寄存器效率太低。有些老工程师习惯先用逻辑分析仪抓I2C总线确认控制通道通没通再往下调MIPI这个习惯很值得新人学。4.3 常见问题排查速查表现象可能原因排查/解决建议解串器PHY Lock不上PoC供电异常、线缆不良、串行器未上电检查电源电压/电流查看Lock寄存器状态用示波器测量GMSL信号摄像头端sensor I2C不通串行器未配置透传、地址冲突先读串行器寄存器确认I2C通道建立再扫描总线上所有地址输出花屏、黑条MIPI lane映射错误、时钟极性反核对MIPI配置寄存器和sensor输出格式对比偶发帧错或闪断线束屏蔽差、连接器松动、PoC电感饱和换高质量线缆更换PoC电感调整均衡器参数检查连接器压接多路摄像头无法同步未配置GMSL2同步机制使用解串器侧同步功能确认Frame Sync配置和sensor slave模式高温下出现花屏芯片过热、电源跌落优化散热用热成像确认温度检查电源纹波GMSL2 6Gbps链路误码高线缆插入损耗大、PCB走线阻抗不连续用S参数评估链路在6Gbps下加均衡器或降低速率到3Gbps对比测试这张表基本覆盖了我这几年遇到的高频问题。你可以把它贴在工位上实测比翻冗长的勘误手册快很多。4.4 测试架与调试工具配置心得硬件调通后建议尽早搭一个GMSL测试架不要直接上整车验证。简单做法是摄像头模组通过一根几米的同轴线连接到域控的摄像头接口域控端跑一个MIPI抓图工具直接看输出图像和帧统计。调试时我习惯先跑GMSL物理层测试再跑图像。物理层测试就是反复上下电、查看PHY Lock稳定性和误码统计图像测试则检查灰阶、色偏、坏点、行中断等问题。上电时序问题在反复上下电时最容易暴露建议每次测试间隔几秒模拟实际使用中的冷启动和热启动。工具方面ADI提供了寄存器配置Excel和代码生成工具可以从官方获取。软件侧调试时用脚本把I2C读写做成自动化case比如一键扫描所有摄像头链路状态、一键配置所有sensor。我自己的经验是把这些脚本沉淀成公司内部测试库后续新人接手项目也能快速上手不依赖某个“老师傅”的存在。5. 一个容易被忽视的细节兼容性验证和长期供货很多项目选型时只看初样却忽略了量产层面的兼容性验证。GMSL SerDes不像普通数字芯片串行器和解串器之间的固件配合、时序要求、寄存器默认值都可能随版本批次有微小差异。建议在项目早期就锁定串行器和解串器的物料清单明确版本号并在DV/PV阶段安排交叉验证。长期供货也是一个现实问题。MAX9295和MAX96717目前在汽车主流的GMSL2方案占比较高供货和生命周期都比较稳但如果有国产化需求也要关注ADI Pin-to-Pin兼容的国产替代或者同级产品提前做硬件兼容设计。工程上常见的做法是在PCB上预留两颗芯片兼容的封装位这样选型切换时不用重新改板。最后说一点我个人的体会。选串行器不是看谁参数更强而是看整条链路的平衡带宽够用留一点余量、功耗能压住、控制通道能满足软件需求、供应链稳定、成本可控这些指标都过了才是当前项目的最优解。MAX96701代表GMSL1时代的成熟和稳妥MAX96717代表今天大多数2MP级别摄像头的标准答案MAX9295则是高分辨率和高可靠场景下的有力支撑。结合项目实际需求先把带宽算明白再看拓扑和功能安全最后落到物料和成本选型就不会跑偏。另外如果你正在做新平台的预研我的建议是优先围绕GMSL2生态展开最好是直接参考MAX96717MAX96712和MAX9295MAX96712这两套组合做评估板。GMSL2对高分辨率、功能安全和多摄像头同步的支持是实打实的代际优势而MAX96701更适合老平台的存量维护。先跑通一套参考设计再针对自己的传感器调优比从零看数据手册高效得多。
返回列表