随着汽车智能化的不断提升,特别是高级辅助驾驶系统的普及,
越来越多的车载摄像头和传感器需要与汽车电子控制单元进行数据通信,
对车内数据传输的带宽、实时性和稳定性的要求也越来越高,
1GMSL的串行-解串数据链路示意
以ADAS摄像头为例,一般来讲,摄像头除了对外发送捕获到的像数据外,还会发送帧同步信号,像素时钟等信息,此外还有电源供给等等,因此它需要由许多信号线组成的一个并行总线。如之前所说,并行总线在高速的数据传输过程中,是不占据优势,因此我们需要将这些并行的信号合并为串行信号,再通过更高频率进行传输。
2使用并行总线的摄像头模组
GMSL技术的诞生就是为了解决并行数据到串行数据,再从串行数据还原为并行数据的问题。GMSL是SerDes的一种,SerDes是Serializer/Deserializer的缩写,即串行器和解串器。SerDes的串行-解串可以通过数模电路或者FPGA来实现。但是在商用领域,出于性价比的考量,往往会使用独立IC芯片来实现这个功能,GMSL就是由Maxim公司开发的一系列串行-解串芯片的集合。
GMSL技术经历了很长的发展时间,第一代的GMSL从2003年开始,最高支持3Gbps的传输速率,足够传输1百万-3百万像素的视频流数据。从2017年之后,GMSL2代技术出现,传输带宽已经提升至6Gbps,可轻松传输8百万像素的视频流数据。
3GMSL1代技术的发展历程
GMSL串行器-解串器
Maxim目前同时提供两代的GMSL产品,分别是GMSL1以及GMSL其中部分GMSL2产品兼容GMSL目前常见的GMSL串行-解串芯片如表1所示。其中兼容GMSL1/2的器件,既可以接入GMSL1也可以接入GMSL例如:
a)MAX9296解串器,既可以接入MAX96701也可以接入MAX96717;
b)MAX9295A串行器,既可以接入MAX928也可以接入MAX96712;
除此之外,GMSL1的串行器无法接入GMSL2的解串器,反之亦然。
串行器 | 解串器 | ||
---|---|---|---|
GMSL1 | MAX96701/MAX96715 | MAX9286 | |
12bit DVP IN 1 SIO OUT@1.76Gbps | 4IN 1OUT@MIPI 1.5Gbps | ||
GMSL1/2 兼容 | MAX9295A | MAX9296 | MAX96722 |
4-MIPI IN 1 SIO OUT@6Gbps | 2IN 2OUT@MIPI 2.5Gbps | 4IN 1OUT@MIPI 2.5Gbps | |
GMSL2 | MAX96717/MAX96717F | MAX96712 | |
4-MIPI IN 1 SIO OUT@6Gbps/3Gbps | 4IN 1OUT@MIPI 2.5Gbps |
表1GMSL串行器-解串器对应配置表
从SoC的角度来看,如果忽略串行-解串的过程,可以认为SoC直接接入到相机Sensor上。由于GMSL同轴线的传输延迟几乎可以忽略不计,相当于将原来只能短距离传输的高速并行信号的传输距离延长,真正做到高带宽、低延迟、长距离的数据传输。
GMSL数据接入方式
硬件连接方式如4所示,摄像头包含Sensor和串行器,两路摄像头通过GMSLLink同轴线连接到转接板,转接板再通过排线接入到JetsonXavier开发板的CSIPort。
4解串器转接板的硬件连接方式
硬件架构如5所示:
Sensor接口为MIPI-CSI,数据格式为1080p/30fps/RAW12每路摄像头搭配1个MAX9295串行器两路GMSLLink共同连接到解串器MAX9296MAX9296解串器接入到Jetson的CSIport
5GMSL摄像头接入Jetson的硬件框
驱动层的结构如6所示,驱动最上层是v4l2的架构,是Linux系统下的通用相机驱动框架。中间层是sensor驱动,用于控制视频流的开关、设置像参数等。最底层是MAX9295/9296的驱动,负责拉通数据链路。
6Jetson的GMSL摄像头驱动架构
Sensor驱动程序会在设备启动的时候,配置串行器-解串器的参数,建立起数据链路。一旦数据链路建立起来后,就可以分别对串行器、解串器、Sensor配置寄存器参数,控制它们的工作模式,或进行数据流的开关操作等。
PC电脑/工控机
PC/工控机主要运行在x86平台,这类系统通常接口有:USB/以太网/PCIE等。USB0的传输带宽在1Gbps–5Gbps左右,以太网的带宽在100Mbps–1000Mbps之间,PCIE的带宽高于10Gbps。
如表2所示,1M-8M摄像头的数据传输带宽在655Mbps–4Gbps。从带宽的限制来看,USB0最高只能支持到2M,以太网最高支持到1M,只有PCIE可以满足所有的传输需求。
像素 | 传输带宽 | USB3.0 | Ethernet (以太网) | PCIE |
---|---|---|---|---|
1M | 655Mbps | √ | √ | √ |
2M | 1.3Gbps | √ | × | √ |
8M | 4.4Gbps | × | × | √ |
表2不同接口的传输带宽
PCIE采集卡就是专门为PC电脑/工控机设计的GMSL摄像头接入设备。PCIE采集卡的具有高带宽、多通道的特点,其通用性好,实时性高,广泛应用于自动驾驶的研发和数据采集上。
7PCIE数据采集卡
PCIE采集卡的硬件框如8所示,其工作原理如下:
摄像头的像数据通过GMSL同轴连接线传输到采集卡的解串芯片上
解串芯片将数据通过MIPI/IIC传输到FPGA,FPGA解析数据流
FPGA通过PCIE将数据存放至DDR4内存中
调用SDK获取内存数据
8PCIE数据采集卡的硬件框
如9所示,采集卡插入到机箱的通用PCIE插槽上,多张采集卡可并行使用,方便灵活。PCIE的协议通用、接口稳定、带宽高,因此对于多路像采集的应用非常有帮助。例如自动驾驶的像采集车,往往需要10-20路摄像头同步接入,同时采集、存储所有摄像头的数据,对带宽和稳定性的要求很高,只有PCIE采集卡可以胜任这个工作。
9PCIE数据采集卡接入机箱
PCIE采集卡具有如下优势:
高带宽设计,支持多路摄像头同时接入
多路相机同步曝光或或延迟曝光
支持外部输入触发信号,例如GPIO/pps信号/ntp服务器等
可通过CAN接口传入时间戳,与外部传感器同步
有完善的SDK,支持Windows/Linux系统
PCIE标准插槽,稳定可靠,数据安全不易丢失
文章为作者独立观点,不代表股票交易接口观点