Granite River Labs 蓝婉甄Nicole Lan
MIPI CSI-2 最初与2005年推出,为行动装置所使用的标准化相机介面规格,全名为 MIPI Camera Serial Interface 2。MIPI CSI-2 提供高频宽,低功耗与低电磁干扰的功能,因其易用性且支持高性能应用,包含 1080p、4K、8K 或更高的视频以及高解析度摄影,现已成为应用最广泛的嵌入摄像头和成像介面。MIPI CSI-2 的层级架构
MIPI CSI-2 定义了传输端和接收端之间的数据穿输和控制介面,主要可以分为三个层级,如图(1)所示:- 物理层 (PHY Layer):定义传输媒介,电器特性及时钟机制等,包含两种高速串列数据传输介面,分别为 D-PHY 及 C-PHY。
- 协议曾 (Protocol Layer):主机处理器上的单个介面可以启用多个数据串流,定义如何标记和交错多个串流,以更接收端正确重建资料。
- 应用层(Application Layer):定义数据串流更高级别的编码与分析。
图(1) CSI-2 层定义表
(来源:MIPI Alliance Specification for Camera Serial Interface 2, Version 4.0)
本篇文章将着重于 MIPI CSI-2 协议层的介绍,协议层又可分为三个子层级,由下往上依序分别为:- 通道分配(Lane Management):CSI-2 可支持通道扩展以提高性能,传输段依据频宽需求将数据串分配到一个或多个通道,接收端合并资料并恢复原始序列。
- 底层协议(Low Level Protocol):将传输起始至结束之间和数据串流组合成不同形式的封包,此部分会与文章后面进行着重说明。
- 像素/字节打包/解包(Pixel/BytePacking/Unpacking):CSI-2 支持不同像素格式的图像应用,传输端将来自应用层的像素打包成字节流,接收端接受来自底层协议的字节流后解包为像素。
底层协议 Low Level Protocol
以下将会针对协议层当中的底层协议来进行详细的说明。底层协议全名为 Low Level Protocol,简称为 LLP,定义两种封包结构,分别为长封包与短封包。其中长封包用作影响数据传输,短封包则是用作数据辅助描述。如图(2)所示,每个封包的传输起始(Start of Transmission,SoT)都是从低功率状态(Low Power State,LPS)退出,而每个封包的传输结束(End of Transmission,EoT)更会回到低功率状态。
图(2) 底层协定封包概述
(来源:MIPI Alliance Specification for Camera Serial Interface 2, Version 4.0)
D-PHY / C-PHY 长短封包结构
接下来将分别介绍长短封包与实体层 D-PHY 及 C-PHY 中的结构。D-PHY 长封包由三个部分所组成:包头(Packet Header, PH),封包数据(Packet Data)以及包尾(Packet Footer,PF)。包头包含四个子项目,请参考图(3):- 8-bit Data ID:由 2-bit VC (Virtual Channel)及 6-bit DT (Data Type)所组成,其中 VC 为 Virtual Channel ID 的最低有效位。
- 16-bit Word Count:定义包头和包尾间的资料个数,即为资料长度。
- 2-bit VCX (Virtual Channel Extension):为 Virtual Channel ID 的最高有效位。
- 6-bit ECC (Error Correction Code):纠错码。
图(3) D-PHY物理层选择,长封包结构 (D-PHY Physical Layer Option)
(来源:MIPI Alliance Specification for Camera Serial Interface 2, Version 4.0)
C-PHY 长封包由四个部分所组成:包头(Packet Header,PH)、封包数据(Packet Data)、包尾(Packet Footer,PF)以及填充内容(Filler)。包头包含五个子项目,且相同结构会重复两次,请参考图(4):- 5-bit RES (Reserved Field):保留栏位。
- 3-bit VCX (Virtual Channel Extension):为 Virtual Channel ID 的最高有效位。
- 8-bit Data ID:由 2-bit VC (Virtual Channel)及 6-bit DT(Data Type)所组成,其中 VC 为 Virtual Channel ID 的最低有效位。
- 16-bit Word Count:定义包头和包尾间的资料个数,即为资料长度。
- 16-bit PH Checksum:包头核对和。
图(4) C-PHY物理层选择,长封包结构 (C-PHY Physical Layer Option)
(来源:MIPI Alliance Specification for Camera Serial Interface 2, Version 4.0)
D-PHY 与 C-PHY 的短封包只有包含长封包的标头,Word Count 字段由短封包数据代替,位资料栏位(Data Field),会依据不同的 Data Type 定义相对应的内容。请参考图(5)及图(6):图(5) D-PHY物理层选择,短封包结构 (D-PHY Physical Layer Option)
(来源:MIPI Alliance Specification for Camera Serial Interface 2, Version 4.0)
图(6) C-PHY物理层选择,短封包结构 (C-PHY Physical Layer Option)
(来源:MIPI Alliance Specification for Camera Serial Interface 2, Version 4.0)
虚拟通道标识 / 数据类型 (Virtual Channel ID / Data Type)
最后将针对前面所提及的 Virtual Channel ID 与 Data Type 进行介绍。Virtual Channel ID 的功能为在交错的数据串流中提供单独的逻辑通道,接收端从传入的数据包头中提取虚拟通道标识,并将交错的影像数据串流解复用至其适当的通道。其中,D-PHY 最多可支持 16 条虚拟通道,有效的通道标识为 0-15;C-PHY 最多可支持 32 条虚拟通道,有效的通道标识为 0-31。请参考图(7):图(7) 逻辑通道框图(接收端)
(来源:MIPI Alliance Specification for Camera Serial Interface 2, Version 4.0)
Data Type 定义资料的格式和内容,最多支持 64 种数据类型,范围从0x00-0x3F。其中,0x00-0x0F定义短封包类型,0x10-0x3F 则定义长封包类型,请参考表(1):表(1)数据类型
MIPI CSI-2将在多领域中扩张摄像设备的范围
MIPI CSI-2可实施于任何单摄像头或多摄像头设备,除了传统的行动装置之外,还可应用于虚拟实境、无人机、物联网、医疗、工业系统、汽车等设备,极大化扩展其运用范围。
参考文献
MIPI Alliance Specification for Camera Serial Interface 2 (CSI-2), Version 4.0, 26 September, 2021
作者
GRL 资深测试工程师蓝婉甄 Nicole Lan
拥有五年DP测试经验,擅长 DP,HDR,MIPI 等介面测试。GRL 技术文章作者及讲师。