概览
在移动终端设备中的相机大部分时间都处于非活动状态,因此需要实现方案有办法让CSI-2链路进入到低功耗状态,此状态要尽可能低到和漏电水平时功耗差不多。本章节提出了一种让CSI-2链路进入到“Sleep Mode”(SLM)的方法。本章节为提示性的章节,不会影响CSI-2规范遵从性,但该方法是由MIPI Camera Working Group所提供的推荐方法。
这个方法依赖于一种D-PHY或C-PHY发送器的行为,在链路上为LP-00(Space state)状态时,该行为能够允许调节器(regulator)能够被安全地禁用。相应地,这种状态就是处于SLM的CSI-2相机发送器的输出状态。
SLM的三阶段:
1. SLM Command Phase, SLM命令阶段。“ENTER SLM”命令只被送到TX侧或送到链路的两侧(TX,RX)。
2. SLM Entry Phase,SLM进入阶段。CSI-L2链路已经进入、或正在进入SLM,按照一种受控的或同步的方式进行。这个阶段也是power-down过程的一部分。
3. SLM Exit Phase,SLM退出阶段。CSI-2链路已经退出了SLM,并且接口/设备处于可运作状态。这个阶段也是power-up过程的一部分。
总的来说,当处于SLM时,接口的两侧会进入ULPS状态。
SLM Command Phase
SLM的发起是通过不在CSI-2规范所定义范围内的机制来实现的。有许多中可用机制,这里举两个例子:
1. 一个外部的SLEEP信号输入到CSI-2发送器,也可以选择性地发给CSI-2接收器。当信号逻辑上为0时,CSI-2发送器和CSI-2接收器(如果连接了信号的话)会进入Sleep模式。当信号逻辑上为1时,器件进入普通工作状态。
2. 由I2C控制链路所提供的CCI控制命令,这个命令用来触发ULPS。
SLM Entry Phase
这个阶段可以考虑的一种选项如下:
Tx侧进入SLM,并且通过在每条Lane上发送一个D-PHY或C-PHY的‘ULPS’命令,将ULPS传播到RX侧。在下图我们只用数据Lane ‘ULPS’命令作为例子讲解。注意图中的D-PHY Dp,Dn和C-PHY Data_A,Data_C只是逻辑上的名字,并不代表在双模式(C-PHY和D-PHY组合的方案)实现中信号是复用的。
SLM Synchronization
SLM Exit Phase
假设在power-up时,相机外设处于ULPS或Sleep状态,有三种选项可以使用:
1. 使用一个SLEEP信号来power-up接口两侧
2. 在I2C控制链路上检测CCI活动。原始状态下{SCL,SDA}处于00状态,在接收到之前SLM Command Phase的方案2中的I2C指令后,进入ULPS。随后{SCL,SDA}信号线上发生了任何变化就唤醒相机外设。这个方法的缺点也很明显,要求I2C总线上只能挂相机一个设备。
3. 检测I2C总线上的wake-up序列。这个序列不同的实现方案会有所变化,序列不能干扰I2C接口,这样才能让I2C接口能够被其他设备所使用的。举个序列的例子:StopI2C - StartI2C - StopI2C。
在接口做power-up时,适当使用'ULPS'机制的握手过程。