CSI D-PHY 散谈
1. D-PHY 传输
- 高速信号差分信号电压范围是100mv - 300mv
- HS_SETTLE,这段时间,1.2V降到100-300mv需要时间稳定下来。HS_ZERO表示发送为0。
- 一旦MIPI TX端发送00011101(也称SOT),RX识别到这串数据,表示RX接收开始一行接收完毕之后,会切成与最后一个bit相反的状态,持续一段状态,也就是HS-TRAIL状态。之后拉高变成LP11。一次传输完毕.
- 中间红色实心部分就是一帧的实际数据。
常见的模式为:
LP → HS → [FS] [Line1] [Line2] ... [Line1080] [FE] → LP
2. Skew calibration 数据输出
- 当使能skew 初始化或者周期数据时,数据速率超过 1.5 Gbps/lane 时,MIPI 发送端(sensor)可以输出一种叫做 Skew Calibration 的特殊波形数据.
- Initial Skew Calibration(初始校准) 开始高速传输前(即在帧传输前) 用于系统刚启动或重新同步时做一次校准.Periodic Skew Calibration(周期性校准), 在传输过程中间隔性插入 用于长期运行中做微调,避免热漂移、抖动造成问题。
- MIPI D-PHY 是差分高速传输,使用多个 data lane + 1 个 clock lane。如果多个 lane 之间有细微的“时间偏移(skew)”,接收端可能会同步出错。
- 其数据模式如下:
Sync Pattern(同步模式):
全是 “1”,维持 16 UI(Unit Interval) 的时间;用来表示“我要开始发校准波形了”。
Clock Pattern(时钟模式):
0101010101… 的形式;用来模拟时钟边沿,让接收端进行采样对齐。
可以看到
Initial skew calibration → FS → EBD → Visible → FE → Periodic skew calibration → V blank ...
3 每帧的数据格式raw10
4个像素占5个字节,数据在CSI总线上的传输数据字节排列如下:
一帧的数据排列如下:
一帧数据的实际表现如下:
FS ------------------------- 行消隐
PH EBD PF ---------------- 行消隐
PH ACTIVE PIX PF --------- 行消隐
PH ACTIVE PIX PF --------- 行消隐
PH ACTIVE PIX PF --------- 行消隐
PH ACTIVE PIX PF -------FE 行消隐
---------------------------- 列消隐
---------------------------- 列消隐
---------------------------- 列消隐
嵌入式数据格式如下:

4. 时钟树
图片中有两个时钟:
- IVTPXCK
- IOPSYCK
这两个时钟通过一种或者两种方式分频或者倍频完成。
IVTPXCK是给内部internal image processing模块使用,影响到曝光和帧率。
IOPSYCK 主要是给CSI2 interface使用,用于CSI data传输
其中Tline表示,一行的传输时间。 一行的像素越多,传输时间越长。
曝光时间要小于总的行数,否则也会降帧。