本文阅读自eetop.cn_mipi_D-PHY_specification_v1-2.pdf
MIPI简介
MIPI 联盟成立至今制定了多种用于不同终端设备的接口标准,其中包括
用于摄像头的 CSI-2。
用于显示器的 DSI。
用于射频的 DigRF 。
用于麦克风的SLIMbus等接口协议。
MIPI CSI-2 协议简介
两个模块之间使用差分信号传输,一对差分时钟信号,最多四对数据传输差分线。
CCI兼容I2C,用于协议内物理层的参数配置。不同的厂商不同。
CSI-2数据包传输准则,传输短包用于发送控制信息,长包用于发送负载数据。
Application:应用层,高级的数据编码以及解释和像素值到字节的对应关系。
协议层:包含pixel to byte packing formats字节打包层/字节解包层,low level protocol底层协议层,lane management通道管理层。
lane management通道管理层:1到4个通道。发送端将经过字节打包层打包后的数据拆分,并分给不同的数据通道发送数据。接收端会从物理层中接收数据,按照通道顺序将其组合成为数据流并传输给底层协议层。
low level protocol底层协议层:底层协议层会对经过的数据进行打包或者解包处理。在发送端,将进来的数据打包,加上包头包尾。在接收端,接收来自通道管理层的数据后,识别其包头和包尾,只留下原始数据发送给下一层。
pixel to byte packing formats字节打包层/字节解包层:本层支持多种数据位宽,常用的如,6bit,8bit,10bit,12bit,16bit。在发送端中本层位字节打包层,将要发送的数据以配置的数据类型的格式打包起来,传输给底层协议层。在接收端中本层位字节解包层,将就收到的底层协议层中的数据流解包位原始的像素格式后传输给应用层。
Phy layer:物理层,主要规定了发送端以及接收端的电学特性和各时钟通道以及数据通道之间的时序约束,规定了发送SoT和发送结束EoT机制,以及比特层和字节层的同步机制。
MIPI D-PHY物理层协议
MIPI D-PHY高速、低功耗的源同步物理层。D-PHY同时支持CSI-2和DSI协议。包含高速hs和低速lp模块。高速模块用于处理图像负载数据,低功耗模块用于发送控制信息和状态信息。
时钟通道、数据通道和 PHY 协议接口
- APPI:抽象物理层协议接口(完整物理层,所有通道)
- PPI(PHY 协议接口):物理层协议接口(每个通道,一些信号可以与多个通道共享)。
Lane module types通道模块类型
单数据通道的物理配置 (PHY Configuration with a Single Data Lane) 是一种基本的
设置,其中包含一个时钟通道和一个单独的数据通道。
具有单个数据通道的PHY配置
双单工(两个方向具有单向通道)
Global Operation
规定D-PHY的操作,包含信号类型,通信机制,工作模式和编码方案。
数据传输结构
数据单位:字节
比特顺序、序列化和反序列化:对于串行传输,数据应在发送物理层(PHY)中进行序列化,并在接收物理层(PHY)中进行反序列化。
编解码:本规范不要求使用线路编码。
数据缓存:
链路状态和链路电平
HS(high speed):采用SLVS电平,差分信号,电平摆幅为200mv。
LP(Low Power):采用LVCOMS电平,单端信号,电平摆幅为1.2V。
并且支持连续模式和非连续模式,非连续模式可以功耗更低,如下图所示,总线没有数据传输时,总线处于LP-11状态,LP-11状态为LP模式,低功耗模式,时钟速率更低,当有数据传输时,总线从LP-11转到LP-01,再到LP-00,最后进入高速模式,当高速一包数据传输完成后,总线重新切换到LP状态。
双向数据通道转换
双向数据通道的传输方向可以通过链路切换程序进行交换。该程序使信息能够在当前方向的相反方向进行传输。无论是从正向转为反向,还是从反向转为正向,该程序都是相同的。请注意,主设备和从设备的角色在切换过程中不应改变。链路切换应完全在控制模式下进行。表6列出了切换期间的事件序列。
逃逸模式
逃逸模式允许数据通道在低功耗状态下进行特定的操作和功能。这种模式可以在需要传输特殊命令或执行特定操作时使用,而不需要依赖时钟通道。
初始化
在上电后,当主设备PHY驱动停止状态(LP-11)持续时间超过TINIT时,从设备侧PHY将被初始化。第一次持续时间超过指定TINIT的停止状态称为初始化周期。主设备PHY本身应通过系统或协议输入信号(PPI)进行初始化。主设备侧应确保在主设备初始化之前,线路上不会出现持续时间超过TINIT的停止状态。从设备侧将在初始化周期之前的未指定长度的时间内忽略所有线路状态。在多通道配置中,所有通道应同时初始化。
校准
- 高速同步序列去偏移校准。
- 与时钟lane相同序列010101。在接收端校准。
- 用于高速模式的高速同步序列00011101。
- 高速有效荷载数据。
对于速度大于1.5Gbps的设备,接收端去偏移应由发送器启动。当工作速率高于 1.5 Gbps 或变为任何高于 1.5 Gbps 的速率时,在正常操作中的高速数据传输之前应传输一个初始去偏移序列。
发送器去偏移突发应该为全一组成的序列。持续16个周期。之后发送与时钟同步的序列010101…应该持续最少215个周期。
接收器应该检测去偏移模式。在检测到该模式时启动去偏移校准。发送器去偏移模式应该在发送器配置下启动。
全局操作流程图
发送器(TX)和接收器(RX)中可以区分出四个主要过程:高速传输、逃逸模式、转向和初始化。
故障检测
Sot error,sot sync error…
看门狗定时器
HS RX超时,HS TX 超时。逃逸超时,逃逸模式静默超时。
转向错误。
互连和通道配置
电气特性
PHY(一种物理层接口)可能包含以下电气功能:高速发送器(HS-TX)、高速接收器(HS-RX)、低功耗发送器(LP-TX)、低功耗接收器(LP-RX)以及低功耗冲突检测器(LP-CD)。
高速发送器和高速接收器用于高速数据和时钟信号传输。高速发送器和接收器利用低压差分信号进行信号传输。高速接收器包含一个可切换的并行端口。
低功耗发送器和低功耗接收器用作低功耗信号机制。低功耗发送器是一个推挽式驱动器,低功耗接收器是一个未端接的单端接收器。
驱动特性
高速发送器
在 Dp 和 Dn 引脚上驱动的高速差分信号由差分输出驱动器产生。作为参考,Dp 被视为正侧,Dn 被视为负侧。当 Dp 上的电位高于 Dn 上的电位时,通道状态称为差分 1(HS-1)。当 Dp 上的电位低于 Dn 上的电位时,通道状态称为差分 0(HS-0)。
差分输出电压
Vod=VDp-VDn
共模电压 VCMTX 被定义为 Dp 和 Dn 引脚上电压的算术平均值:
VCMTX = (VDP + VDN)/2
高速数据时序
高速时钟时序
链路的主端应向从端发送一个差分时钟信号,用于数据采样。该信号应为 DDR(半速率)时钟,并且在每个数据位时间应有一个跳变。
正向高速时钟传输协议
DDR差分信号与数据差分信号的时序关系如下图所示。数据与时钟呈正交关系发送,使得接收器可以直接使用时钟信号边沿对接收的数据进行采样。
发送器应该确保在传输突发的第一个有效负载位期间发送DDR时钟上升沿。以便接收器可以在时钟上升沿对第一个有效负载进行采样,在下降沿对第二个位进行采样。并且所有后续位可以在时钟上下降沿进行交替采样。
反向高速数据传输时序
反向数据传输不是源同步的;时钟是由主端发起的,数据由从端驱动。从端发送器应在接收到的时钟信号的两个周期内发送一个数据位。因此,对于给定的时钟频率,反向数据速率是正向数据速率的四分之一。
在反向方向上,时钟和数据信号之间有四种可能的相位关系。用于发送数据的时钟相位由从端自行决定,但一旦选择,在该数据传输突发期间应保持固定。互连中的信号延迟以及主模块和从模块中的内部信号延迟,在主模块中导致接收(反向)数据与其自身(正向)时钟之间存在固定但未知的相位关系。
基于通过时钟通道传输的正向时钟,从端的反向传输速度是正向速度的四分之一。这个比例使得在主端很容易找到一个合适的相位来恢复反向流量的数据。
接收到的同步序列的已知跳变应被用于为数据采样选择时钟信号的适当相位。因此,无需指定时钟源和数据接收器之间的往返延迟。