raw格式数据流与MIPI CSI-2对接 - 第1节
1.1 MIPI 联盟简介
MIPI(Mobile Industry Processor Interface,移动行业处理器接口)联盟成立于 2003 年,由 ARM、Intel、Nokia、Samsung、STMicroelectronics 和 Texas Instruments 等业界领先公司共同发起。该联盟的宗旨是制定并推广移动设备内部组件(如应用处理器、摄像头、显示屏、调制解调器等)之间的开放、免版税的接口标准。
经过二十余年的发展,MIPI 联盟已发布超过 50 项标准,覆盖物理层、协议层和应用层。在嵌入式视觉系统中,最核心的标准包括:
- CSI-2(Camera Serial Interface 2):摄像头串行接口标准,用于图像传感器与应用处理器之间的数据传输。
- DSI-2(Display Serial Interface 2):显示串行接口标准,用于应用处理器与显示面板之间的数据传输。
- D-PHY / C-PHY / M-PHY:物理层标准,定义电气特性、时钟与数据通道的传输方式。
- I3C / I2C:控制总线标准,用于配置传感器寄存器。
工程师提示: 在嵌入式视觉项目中,MIPI CSI-2 与 D-PHY 的组合是最常见的方案。理解 CSI-2 协议栈的分层结构,是正确解析 Raw 数据流的前提。
1.2 CSI-2 协议发展历程
CSI-2 协议自 2005 年首次发布以来,经历了多个版本的迭代,每一次更新都显著提升了带宽、功能与灵活性。下表总结了各主要版本的关键特性:
| 版本 | 发布年份 | 核心特性 | 最大数据速率(每通道) |
|---|---|---|---|
| CSI-2 v1.0 | 2005 | 基础规范,支持 RAW/YUV/JPEG 格式,单通道 | 500 Mbps |
| CSI-2 v1.1 | 2007 | 增加多通道支持(最多 4 通道),引入 CRC 校验 | 1 Gbps |
| CSI-2 v1.2 | 2009 | 增加虚拟通道(Virtual Channel),支持多传感器复用 | 1.5 Gbps |
| CSI-2 v1.3 | 2012 | 增加 RAW10/RAW12/RAW14 格式支持,引入帧格式扩展 | 2.5 Gbps |
| CSI-2 v2.0 | 2014 | 增加 RAW16/RAW20 格式,支持 C-PHY 物理层,引入数据压缩 | 4.5 Gbps(D-PHY)/ 5.7 Gbps(C-PHY) |
| CSI-2 v3.0 | 2017 | 增加智能 ROI(Region of Interest)、嵌入式数据线、多帧同步 | 4.5 Gbps(D-PHY)/ 5.7 Gbps(C-PHY) |
| CSI-2 v4.0 | 2021 | 增加 RAW24/RAW32 格式,支持 M-PHY 物理层,引入统一数据流模型 | 9 Gbps(D-PHY)/ 12 Gbps(C-PHY)/ 23 Gbps(M-PHY) |
关键里程碑: CSI-2 v1.3 是 Raw 格式支持的重要转折点,它首次标准化了 RAW10/RAW12/RAW14 的打包方式,使得高精度图像传感器(如 10-bit/12-bit ADC)能够通过 MIPI 接口高效传输。本课程将重点围绕 v1.3 及后续版本的 Raw 数据流展开。
1.3 CSI-2 在嵌入式视觉系统中的地位
在当今的嵌入式视觉系统中,CSI-2 已成为事实上的摄像头接口标准。无论是智能手机、车载摄像头、工业相机、无人机还是医疗内窥镜,CSI-2 都扮演着图像传感器与主控芯片之间高速数据传输桥梁的角色。
CSI-2 之所以占据如此重要的地位,主要得益于以下优势:
- 高带宽:通过多通道并行和高速物理层(D-PHY/C-PHY/M-PHY),CSI-2 可支持从 VGA 到 8K 甚至更高分辨率的实时视频流。
- 低功耗:差分信号传输和低压摆幅设计,使得 CSI-2 在高速传输时仍能保持较低的功耗,非常适合电池供电的移动设备。
- 灵活的 Raw 格式支持:从 RAW6 到 RAW32,CSI-2 协议定义了完整的打包与解包机制,能够适配不同位深的图像传感器。
- 标准化生态:几乎所有主流 SoC(如 Qualcomm、MediaTek、NXP、TI、Xilinx、Allwinner)都内置了 MIPI CSI-2 控制器,传感器厂商(如 Sony、OmniVision、Onsemi)也广泛采用 CSI-2 输出。
常见误区: 很多初学者将 CSI-2 等同于 D-PHY,实际上 CSI-2 是协议层标准,而 D-PHY 是物理层标准。CSI-2 可以运行在 D-PHY、C-PHY 或 M-PHY 之上。在硬件设计时,必须同时考虑协议兼容性和物理层电气特性。
CSI-2 在典型嵌入式视觉系统中的角色
在一个典型的嵌入式视觉系统中,CSI-2 接口承担着以下关键角色:
- 数据管道:将图像传感器采集的 Raw 数据(如 Bayer 格式)以高速串行方式传输到 SoC 的 CSI-2 接收控制器。
- 协议封装:在数据流中加入帧起始码(SoF)、帧结束码(EoF)、行起始码(SoL)、行结束码(EoL)以及可选的 CRC 校验,确保数据完整性。
- 虚拟通道复用:支持最多 4 个虚拟通道(VC),允许单个 CSI-2 链路同时传输来自不同传感器的数据流,或同一传感器的不同数据流(如主图像与缩略图)。
- 格式转换:在协议层完成 Raw 数据的打包(如 RAW10 的 4 像素 5 字节打包),减轻 SoC 的软件处理负担。