1、MIPI CSI-2 D-HPY 协议介绍,主要内容,MIPI联盟,MIPI CSI-2架构,协议层,物理层,关于串行接口,1、串行接口一般采用差分结构,利用几百mV的差分信号,在收发端之间传送数据。串行比并行相比:更节省PCB板的布线面积,增强空间利用率;差分信号增强了自身的EMI抗干扰能力,同时减少了对其他信号的干扰;低的电压摆幅可以做到更高的速度,更小的功耗; 2、差分接口传输的是电流信号,在接收端可以通过差分对之间串接适当阻值的电阻,得到电压信号。,一、 关于串行接口,1、MIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写。MI
2、PI联盟是一个开放的会员制组织。2003年7月,由美国德州仪器(TI)、意法半导体(ST)、英国ARM和芬兰诺基亚(Nokia)4家公司共同成立。MIPI联盟旨在推进手机应用处理器接口的标准化 。该组织结集了业界老牌的软硬件厂商包括最大的手机芯片厂商TI、影音多媒体芯片领导厂商意法、全球手机巨头诺基亚以及处理器内核领导厂商ARM、还有手机操作系统鼻祖Symbian。随着飞思卡尔、英特尔、三星和爱立信等重量级厂商的加入,MIPI也逐渐被国际标准化组织所认可 。MIPI发展至今已经有90多个会员加入,形成了完整的产业联盟。 目前,MIPI联盟的董事成员包括英特尔、摩托罗拉、诺基亚、恩智浦、三星、意
3、法半导体、德州仪器。,二、 MIPI联盟,2、该组织下设了:高速多端链接工作小组(High-Speed Multipoint Link Working Group,包含基带、应用处理器、相机模组、蓝牙、和Wi-Fi之间的高速连接)、软件工作小组、显示接口工作小组、存储界面以及负责市场的工作小组。 工作组名称和相应规范名称如下: 1)Camera工作组:* MIPI Camera Serial Interface 1.0 specification, * Camera Serial Interface 2 v1.0 (CSI-2) ; 2)Device Descriptor Block工作组:暂
4、无规范; 3)DigRF工作组:* DigRF BASEBAND/RF DIGITAL INTERFACE SPECIFICATION Version 1.12 ; 4)Display工作组:* DBI-2 ,* DPI-2, * DSI ,* DCS ; 5)高速同步接口工作组:* HSI 1.0 ; 6)接口管理框架工作组:暂无规范;,7)低速多点连接工作组:* SLIMbus ; 8)NAND软件工作组:暂无规范; 9)物理层工作组:* D-PHY: MIPI D-PHY Specification v1.00,MIPI D-PHY Specification v0.90.00,MIPI
5、 D-PHY Specification v0.65,* M-PHY; 10)软件工作组:暂无规范; 11)系统电源管理工作组*SPMI ; 12)检测与调试工作组:暂无规范; 13)统一协议工作组:*UniPro 1 point-to-point *PIE,三、MIPI CSI-2架构,3.1 总体情况1. CSI-2是一个单或双向差分串行界面,包含时钟和数据信号。 2. CSI-2的层次结构:CSI-2由应用层、协议层、物理层组成 。*协议层包含三层:.象素/字节打包/解包层,.LLP(Low Level Protocol) 层,.LANE管理层;*物理层规范了传输介质、电气特性、IO电路
6、、和同步机制,物理层遵守MIPI Alliance Standard for D-PHY, D-PHY为MIPI各个工作组共用标准;3. 所有的CSI-2接收器和发射器必须支持连续的时钟,可以选择支持不连续时钟;连续时钟模式时,数据包之间时钟线保持HS模式,非连续时钟模式时,数据包之间时钟线保持LP11状态。,4. 应用举例(2通道):,5. 发送端结构:,6. 接收端结构:,7. 总体结构:,CSI2 协议层,CSI2 协议层,应用层,应用层,D-PHY 物理层,D-PHY 物理层,板级传输, 连线延时不能超过2ns!!,四、协议层,4.1、字节打包层:*因为LLP(Low Level Pr
7、otocol) 层是一个面向字节的,基于包的协议;所以 在LLP之前必须进行字节打包;*针对除了Raw8、JPEG8等几种数据本身是8bit的外, Raw10、YUV422、RGB565、RGB555、RGB444等都需要特定的数据顺序:* YUV422 :CB0Y0CR0 Y1 CB2Y2CR2 Y3 CB4Y4CR4 * RGB565:G4:2, B7:3, R7:3, G7:5 * RGB555:G4:3,1B0, B7:3, R7:3, G7:5 * RGB444:G4,2B10, B7:4, 1B1, R7:4, 1B1, G7:5 * Raw10 :D09:2,D19:2,D29:
8、2 D39:2, D31:0,D21:0,D11:0 ,D01:0, D49:2,D59:2,D69:2,D79:2, D71:0,D61:0,D51:0 ,D41:0 *可以看出,对于Raw10,需要把10bit的数据转换成8bit的数据,需要进行时钟域转换,Raw10字节打包后的时钟频率=打包前的1.25倍; *其他格式的打包前后时钟频率相同;,4.2、 LLP(Low Level Protocol) 层:*LLP层是一个面向字节的,基于包的协议;它支持任意大小的数据通过短包和长包格式传输。各个包之间由EOT-LPS-SOT序列隔开。,*同步短包、数据长包:.帧同步短包:每帧图象必须开始于
9、帧开始包(FRAME START PACKET),结束于帧结束包(FRAME END PACKET);.行同步短包是可选的,对于RGB、YUV、RAW数据格式,每个数据长包里面必须包含一整行图象数据,接收端利用WC解出行同步信号。,用于幁头幁尾、行头行尾、以及数据长包的包头,数据通道数,数据类型,幁头幁尾、行头行尾的DT值,用于数据包,*长包格式:一个长包由32位(4Byte)的包头,N字节的数据域,和16位的CRC构 *短包格式:短包只包含一个32位(4Byte)包头; *包头格式:包头由8位数据标志符+16位计数值+8位ECC构成; *数据标志符DI:由2位虚拟通道号+6位数据类型构成,C
10、SI2可以通过不同的虚拟通道号和数据类型来标志不同的数据流,比如JPEG数据流中穿插着YUV缩略图数据流; *16位计数值WC:为长包里面数据域(图像数据)的字节数N;在短包里面的WC可以默认是0,在有需要的情况下表示是第几帧或是第几行。 *8位ECC:允许包头中前24位(8位数据标志符+16位计数值)在传输过程中两位出错被发现、一位错误被纠正; *16位CRC:16bit的循环沉余校验码,可以指示收到的该包数据在传输过程中是否出错; *每个字节都是低位先传,多字节元素(16位计数值、 16位CRC)也是低字节低位先传。,* 数据标志符由两位虚拟通道号和6位数据类型构成,.虚拟通道允许最多四个
11、数据流交叉传输,(比如JPEG数据流中穿插着YUV缩略图数据流);.6位数据类型允许8类64种数据类型:0x00 0x07 Synchronization Short Packet Data Types0x08 0x0F Generic Short Packet Data Types0x10 0x17 Generic Long Packet Data Types0x18 0x1F YUV Data0x20 0x27 RGB Data0x28 0x2F RAW Data0x30 0x37 User Defined Byte-based Data0x38 0x3F Reserved0x1E:YUV
12、422 8-bit; 0x20 :RGB444;0x21 :RGB555; 0x22 :RGB565;0x2A : RAW8; 0x2B: RAW10;0x30 : User(比如JPEG);,* 8位ECC:815 位数据需要5位ECC, 1631 位数据需要6位ECC, 3263 位数据需要7位ECC, 64127位数据需要8位ECC,DI7:0,WC15:0为24位,由2b00和6位监督位组成: 对24位的标准公式: P70, P60, P5D10D11D12D13D14D15D16D17D18D19D21D22D23, P4D4 D5 D6 D7D8D9D16D17D18D19D20D
13、22D23, P3D1D2D3D7D8D9D13D14D15D19D20D21D23, P2D0D2D3D5D6D9D11D12D15D18D20D21D22, P1D0D1D3D4D6D8D10D12D14D17D20D21D22D23, P0D0D1D2D4D5D7D10D11D13D16D20D21D22D23;,接收机收到包头后,也计算一次ECC,然后与收到的ECC相异或, *若异或结果为0,则说明收到的WC15:0, DI7:0无错; *否则,用异或结果查表,若异或结果与表中的某一项相同,则指示相应的位出错,相应的位取反就得到正确结果; *但若异或结果与表中的任一项都不同,则说明有两
14、位以上出错;,* 16位CRC循环沉余校验码:可以指示收到的该包数据在传输过程中是否出错; CSI2里面采用CRC16 CCITT:生成多项式g(x)=x16+x12+x5+1,CRC0 = Data0 Data4 CRC0 CRC4 CRC8 ; CRC1 = Data1 Data5 CRC1 CRC5 CRC9 ; CRC2 = Data2 Data6 CRC2 CRC6 CRC10 ; CRC3 = Data0 Data3 Data7 CRC0 CRC3 CRC7 CRC11 ; CRC4 = Data1 CRC1 CRC12 ; CRC5 = Data2 CRC2 CRC13 ; CR
15、C6 = Data3 CRC3 CRC14 ; CRC7 = Data0 Data4 CRC0 CRC4 CRC15 ; CRC8 = Data0 Data1 Data5 CRC0 CRC1 CRC5 ; CRC9 = Data1 Data2 Data6 CRC1 CRC2 CRC6 ; CRC10 = Data2 Data3 Data7 CRC2 CRC3 CRC7 ; CRC11 = Data3 CRC3 ; CRC12 = Data0 Data4 CRC0 CRC4 ; CRC13 = Data1 Data5 CRC1 CRC5 ; CRC14 = Data2 Data6 CRC2 CR
16、C6 ; CRC15 = Data3 Data7 CRC3 CRC7 ;,4.3、LANE MANAGEMENT,* LANE MANAGEMENT根据通道的具体配置情况,对已经打包好的数据进行通道管理,同时准备好相应的时序和同步信号,跟物理层接口对接起来;,双通道情况下数据的传输模式,Start-of-Transmission 传输开始标志位 10hB8,End-of-Transmission 结束标志位,为 8!Byte N-17,完成通道分配后,需要生成与物理层对接的时序、同步信号: MIPI规定,传输过程中,包内是200mV、包间以及包启动和包结束时是1.2V,两种不同的电压摆幅,需要
17、两组不同的LVDS驱动电路在轮流切换工作;为了传输过程中各数据包之间的安全可靠过渡,从启动到数据开始传输,MIPI定义了比较长的可靠过渡时间,加起来最少也有600多ns;而且规定各个时间参数是可调的,所以需要一定等待时间,需要缓存,我们用寄存器代替FIFO,每通道128Byte。,串行时钟与数据差分传输的过渡时间关系,数据时钟通道对电压的要求,HS时的共模电平200mV,差模电平时200mV,LP 时的电平是0和1.2V,各个时间参数需要满足以下的要求,UI 的值,数据与时钟的相位关系,数据通道进入和退出SLM(即睡眠模式)的控制:,DATA_LANE TX:(注:进入ULPS之后,将一直保持
18、LP-00状态,直到退出该模式,另外,三个物理通道(一个时钟通道和两个数据通道)是否进入ULPS模式可由寄存器分开控制),LP_DATA _LANE,DLANE DP,DLANE Dn,LP-11,LP-10,LP-01,LP-00,LP-00,Escape 模式 Entry procedure: (LP-11,LP-10,LP-00,LP-01,LP-00),Ultra-Low Power State entry command: 00011110,退出Escape模式: (LP-00,LP-10,LP-11),LP-10,LP-11,01,00,01,00,01,00,10,00,10,0
19、0,10,00,10,00,01,00,LP-00,数据通道中各种模式转换的状态图,进入各种状态数据通道需要发送的命令,时钟通道中各种模式转换的状态图,CSI-2物理层时钟传输通道结构示意图,物理层时钟传输通 道控制及输出接口,五、物理层,CSI-2物理层数据传输通道结构示意图,物理层数据传输通道 控制及数据输出接口,MIPI 传输的物理层,实现MIPI 协议的数据串行传输。 此物理层的接口分为输入和输出两种接口,现只讨论接口电路模块,在我们芯片内 部只用到输出接口。协议中数据传输有不同的模式,接口电路也有不同的应用。 在我们的芯片状态(L中会用到两种状态机,LP ow Power)和HS 状
20、态(High Speed)。*对应于同步信号完成并串转换; *HS 状态为高速低压差分信号,传输高速连续串行数据; *LP 状态为低速低功耗信号,传输控制信号和状态信号; *MIPI要求HS 工作在1GHz 的频率下,完成共模信号为0.2v 差模信号为0.2v 的差分信号的传输; *LP 传递控制信号,要求高电平为1.2v 低电平为0的电平信号输出; *HS 及LP 状态下,输出信号的电学特性要求非常苛刻,具体电学性能的要求可见附带文档表格。,其他:*MIPI是双向可选的,可以高速发送,也可以进行高速接收,或收发功能同时具备,我们目前根据需求仅做了发送功能;*MIPI的HS模式(0.2V),传送图像数据,速度为80Mbps 1000Mbps; *MIPI的LP模式(1.2V),可以用于传送控制命令,最高速度为10Mbps;*MIPI规定,任一个MIPI设备必须Escape Mode,此为Low Power Data Trabsmission Mode,LP模式中的一种,此模式下可低速传输图像或其他数据。*MIPI规定了Low Power Mode、 Ultra Low Power Mode的电压范围、以及它们之间、它们与HS模式之间的相互切换方式或相关要求;*MIPI D-PHY是各个MIPI工作组共用的物理层规范;,Thank you!,