1. 系统框架 MIPI接口在系统的实现如上图所示,MIPI DPHY提供了4 Lane的Rx接口,由Sensor提供Clock,并通过四条数据Lane输入图像数据。DPHY与CSI-2 Host Contrller之间通过PPI(PHY-Protocol Interface)相连,该接口包括了控制,数据,时钟等多条信号。CSI-2 Host Contrller通过PPI接口收到数据后进行解析,完成后通过IDI(Image Data Interface)或者IPI(Image Pixel Interface)输出到SoC的其他模块(ISP);同时SoC通过APB Slave总线控制CSI-2 Host Contrller的相关寄存器。 2. 功能IP 下面两表描述了系统使用的CSI-2 Controller与DPHY,以及与CSI对接的ISP相关的部分性能参数: (1)Synopsys CSI-2 Controller
IDI(Image Data Interface )接口: - 输出CSI-2 规格书中推荐的32位或者64位的图像格式; - 提供水平或竖直方向的精确视频同步信号; - 提供CSI-2 Data Type (DT) 和 Virtual Channel (VC)的相关信息; IPI(Image Pixel Interface)接口: - 48 位并行输出,提供像素时钟同步信号; - 提供水平或竖直方向的精确视频同步信号; (2)Synopsys DPHY PPI(Phy Protocal Interface)接口: - 根据DPHY规格书定义的PPI接口; (3)Om ISP 3. DPHY输入 MIPI DPHY采用1对源同步的差分时钟和1~4对差分数据链路来进行数据传输,数据传输采用DDR方式,即在时钟的上下边沿都有数据传输;根据Sensor不同的输出链路数量,接收端可以配置1到4条输入链路;数据链路越多,图像数据传输速度也就越快,多通道发送实现如上图所示,接收端与其类似,从不同通道接收的数据加以合并最后形成完整的数据流。 DPHY支持HS(High Speed)和LP(Low Power)两种工作模式。HS模式下采用低压差分信号,功耗较大,但是可以传输很高的数据速率(数据速率为80M~1.5Gbps); LP模式下采用单端信号,数据速率很低(<10Mbps),但是相应的功耗也很低。两种模式的结合保证了MIPI总线在需要传输大量数据(如图像)时可以高速传输,而在不需要大数据量传输时又能够减少功耗。 如上图所示,在正常的操作模式下,数据通道处于高速模式或者控制模式。在高速模式下,通道状态是差分的0或者1,也就是数据链路P比N高时,定义为1,P比N低时,定义为0,此时典型的线上电压为差分200MV;在控制模式下,高电平典型幅值为1.2V,此时P和N上的信号不是差分信号而是相互独立的,当P为1.2V,N也为1.2V时,MIPI协议定义状态为LP11,同理,当P为1.2V,N为0V时,定义状态为LP10,依此类推,控制模式下可以组成LP11,LP10,LP01,LP00四个不同的状态(一般使用default lane);MIPI协议规定控制模式4个不同状态组成的不同时序代表着将要进入或者退出高速模式等;比如LP11-LP01-LP00序列后,进入高速模式。 4. DPHY状态切换
上图说明了物理层工作模式的切换流程: No Power: 当Phy没有任何电源时处于No Power模式,将Phy进行上电即能离开该模式,通常由SoC的PMU提供,推荐上电时序是先上电核心电压(VDD)然后I/O电压(AVDD)。 Shutdown: Shutdown模式是最低电源消耗模式,RSTZ 和 SHUTDOWNZ 被拉低,此时模拟电路部分被禁止,数字部分被复位,主要消耗来自模拟电路的待机电流与数字部分的漏电流。在该模式下,DATAN/DATAP 和 CLKN/CLKP都处于高阻态,但是可以通过TESTCLR/TESTDIN信号进行hsfreqrange频率的配置。 AFE初始化: AFE初始化即Analog Front End(模拟前端)初始化,其主要步骤包括: 配置DPHY频率等参数 使能Lane N 设置DPHY SHUTDOWNZ=1'b1 设置RSTZ 1'b0 –> 1’b1重置DPHY 设置CSI2_RESETN 1'b0 –> 1’b1重置Controller 通过读取PHY_STOPSTATE等待STOPSTATECLK和STOPSTATEDATA_N信号; Control Mode: AFE初始化结束PHY即进入Control模式,等待RX LP信号的请求,根据请求信号的不同进入High-Speed模式或者Escape模式。 High—Speed模式: 在Control模式下收到LP-11, LP-01, LP-00信号后进入High-Speed模式,该模式下收到LP-11信号后退出回到Control模式,High-Speed模式是MIPI接口用于高速数据传输的主要模式。 Escape模式: 在Control模式下收到LP-11, LP-10, LP-00, LP-01, LP-00信号后进入Escape模式,该模式下收到LP-11信号后退出回到Control模式。Escape模式是一种特殊的模式,它通过Date Lane进行低速低功耗异步通信,通过接收命令进入以下三个模式 Low-Power Data Reception (LPDR):用于低速数据接收;(8'b11100001) Remote Trigger:此模式允许协议层在发送端请求时向接收方发送一个标志;(8'b01100010) Ultra Low Power State (ULPS):除了Shutdown模式外此模式为最低功耗模式;(8'b00011110) Mipi-csi 协议不使用escape模式 5.DPHY输出 DPHY通过PPI接口输出,PPI接口主要分成四部分,分别为 (1) Data: 用于传输HS/LP模式下数据; (2) Clock: 用于传输数据时钟控制; (3) Interface Control: 接口控制,如Shutdown信号; (4) Error Signal: 用于传输错误信号; 除此之外还几个用于实现Synopsys专用命令控制的TEST信号。 Interface Control: SHUTDOWNZ: 用于关闭DPHY的信号; ENABLE_N: 用于使能第N条Lane的信号; RSTZ: 用于Reset DPHY的信号; Clock STOPSTATEDATA_N: 用于指示第N条Lane处于停止状态; RXBYTECLKHS High-Speed数据接收时钟(Byte为单位),即用于PPI接口图像数据的同步时钟; STOPSTATECLK 用于指示时钟通道处于停止状态; RXULPSCLKNOT 用于指示时钟通道处于ULP(Ultra Low Power)模式; RXCLKACTIVEHS 用于指示时钟通道处于高速数据接收状态; Data RXDATAHS_N[7:0] 高速模式下数据传输线,在RXBYTECLKHS的上升沿被传输; RXACTIVEHS_N 用于指示当前处于高速数据接收状态; RXVALIDHS_N 用于指示当前正在接收有效的数据(从Phy层到协议层); ERRSOTHS_N 用于指示高速数据传输时发生SoT(Start of Transmission)错误,但是信号仍然可以被同步;每个RXBYTECLKHS周期检测一次; ERRSOTSYNCHS_N 用于指示高速数据传输时发生SoT(Start of Transmission)错误,信号也无法被同步;每个RXBYTECLKHS周期检测一次; ERRESC_N 用于指示Escape模式进入错误,会一直保持错误状态直至返回停止状态; TEST信号 TESTDIN[7:0] Vendor专用数据输入信号 TESTDOUT[7:0] Vendor专用数据输出信号 TESTCLK Vendor专用信号时钟 TESTEN Vendor专用信号使能 TESTCLR Vendor专用信号清除 6.调试记录 (1)数据Lane序号对应PPI接口中的序号N,例如数据Lane0对应的输出数据线为RXDATAHS_0[7:0]; (2) MIPI DPHY使用DDR(Double Date Rate)时钟,即上升沿和下降沿都能传输数据,所以一个时钟周期传输2bit; (3) 假设clk lane频率为200Mhz, 那么数据lane的bit clk = 200*2 = 400Mbps; 对应的RXBYTECLKHS字节时钟为400/8=50MBps; (4) 每个数据Lane对应的PPI都有8根数据线(RXDATAHS_N[7:0],如果配置为1条Lane,则每个RXBYTECLKHS时钟周期传输1个Byte; 如果配置为2条Lane,则每个RXBYTECLKHS时钟周期传输2个Byte;如果配置为4条Lane,则每个RXBYTECLKHS时钟周期传输4个Byte; |
|
来自: AMS1117LIB > 《D-PHY》