LV015-HS与LP模式
本篇把 D-PHY 里 HS 与 LP 两套电气信令、三种操作模式的划分、Escape 子模式以及时钟通道行为归拢成一份对照笔记。每节都标注了 MIPI D-PHY 规范(v3.0)的节号与页码,细节可直接回查原文,页码对应关系见文末「页码换算」。
一、 两套电气信令:HS 与 LP
1. 一个 Lane 的驱动方式
一条 Lane 由 Dp、Dn 两根线组成,两种驱动器交替接管:
- HS-TX 始终差分驱动,两根线反相,只有
HS-0(Dp 低、Dn 高)与HS-1(Dp 高、Dn 低)两个状态。 - LP-TX 是两个独立的单端驱动器,分别驱动 Dp、Dn,组合出
LP-00、LP-01、LP-10、LP-11四个状态。
所以一条 Lane 的物理状态集合是 2 个 HS 状态加 4 个 LP 状态。D-PHY v3.0 另提供可选的 ALP(Alternate Low Power)方案,用低电压电平替代 LP 单端电平,还多出“两线同时接地”的 ALP-00 状态,思路相同,本文不展开。
(Specification_for_DPHY_v3.0.pdf 6.2、6.2.1 节,PDF p40,正文 p24)
2. 状态与线电平对照
| 状态 | Dp | Dn | HS 突发模式 | Control 模式 | Escape 模式 |
|---|---|---|---|---|---|
HS-0 | HS 低 | HS 高 | Differential-0 | 不适用 | 不适用 |
HS-1 | HS 高 | HS 低 | Differential-1 | 不适用 | 不适用 |
LP-00 | LP 低 | LP 低 | 不适用 | Bridge | Space |
LP-01 | LP 低 | LP 高 | 不适用 | HS-Rqst | Mark-0 |
LP-10 | LP 高 | LP 低 | 不适用 | LP-Rqst | Mark-1 |
LP-11 | LP 高 | LP 高 | 不适用 | Stop | 出现即退出 Escape |
同样四个 LP 状态,在 Control 与 Escape 语境下含义完全不同,这是读波形时最容易混淆的地方:LP-01、LP-10 在 Control 模式是“请求”,在 Escape 模式则是比特 0、1 的一半。
(Specification_for_DPHY_v3.0.pdf Table 2,PDF p40,正文 p24)
3. LP-11 停止态的地位
Stop 态(LP-11)在 D-PHY 里地位特殊:线上电平保持 Stop 态达到最小时间后,PHY 状态机无条件回到 Stop 态,此前处于什么状态都不例外。
- Stop 是通用待机态,持续时间没有上限,只要求大于 THS-EXIT 或 TLP-EXIT。
- 所有 LP 状态的持续时间不得短于 TLPX,状态之间要求平滑过渡、无毛刺。
- 低速时钟可由 Dp 与 Dn 异或重建,理想情况宽度不小于 2×TLPX,但占空比可能不是 50%。
(Specification_for_DPHY_v3.0.pdf 6.2.1 节,PDF p40,正文 p24)
二、 三种操作模式
1. Control、High-Speed 与 Escape 的关系
Data Lane 正常只在两种模式之间活动:
- Control 模式:驻留在 LP 电平上的默认状态,Stop 态就属于它。
- High-Speed 模式:只存在于一次数据突发期间,从 Stop 出发、回 Stop 结束。
- Escape 模式:只能从 Control 模式内部发起请求进入,一旦检测到 Stop 态立即退出回 Control。
不在 HS、也不在 Escape 时,Data Lane 必定处于 Control 模式。Clock Lane 是例外:它没有常规 Escape 功能,只支持 ULPS。
(Specification_for_DPHY_v3.0.pdf 6.3、6.3.1 节,PDF p42,正文 p26)
2. 高速突发的进入与退出
进入高速(SoT)的序列为:
LP-11 → LP-01 → LP-00 → HS-0 → Sync(00011101) → 载荷数据
(1)LP-01 保持 TLPX 时长。
(2)LP-00 期间打开终端,保持 THS-PREPARE。
(3)切到 HS-0 保持 THS-ZERO,随后发 8 位同步序列 00011101,接收侧实际匹配的是带前导零的 ...00000011101。
退出高速(EoT)时,最后一位之后先发一个与末位相反的 Trail 位,保持 THS-TRAIL,再切回 LP-11 并保持 THS-EXIT 时长。
(Specification_for_DPHY_v3.0.pdf 6.4.2、6.4.3、6.4.4 节与 Table 6,PDF p45~p48,正文 p29~p32)
3. 从 Stop 态出发的三条路
起点都是 LP-11,后接的电平序列决定去向:
- HS 请求:
LP-11 → LP-01 → LP-00 - Escape 请求:
LP-11 → LP-10 → LP-00 → LP-01 → LP-00 - 换向请求:
LP-11 → LP-10 → LP-00 → LP-10 → LP-00
(Specification_for_DPHY_v3.0.pdf 6.3.1 节,PDF p42,正文 p26)
4. 与实测波形对照
《LV010-波形实测》里的实拍波形可直接按上面的状态序列读:
| 波形现象 | 对应的状态序列 | LV010 中的图 |
|---|---|---|
| 帧间隔、行间隔 | 停在 LP-11 的 Stop 态 | 图 6~图 9 |
| 从 LP 进入 HS | LP-11 → LP-01 → LP-00 → HS-0 → SoT | 图 11 |
| 从 HS 退出到 LP | Trail 位之后回 LP-11 | 图 12 |
| HS 突发之间 | EoT 后短暂 Stop,再发一次 HS 请求 | 图 10 |
三、 Escape 模式
1. 进入流程
Escape 用 LP 状态实现,前向必须支持、反向可选,且不要求实现全部子功能。入口序列为 LP-11 → LP-10 → LP-00 → LP-01 → LP-00,观测到最后一个 Bridge(LP-00)即进入 Escape 的 Space 态;中途一旦出现 LP-11,入口流程中止并回 Stop。进入后发送方先发 8 位入口命令,指明本次要做哪种动作。
(Specification_for_DPHY_v3.0.pdf 6.6 节,PDF p58,正文 p42)
2. 入口命令
| 动作 | 入口命令(左位先发) | 十六进制 |
|---|---|---|
| 低功耗数据传输(LPDT) | 11100001 | 0xE1 |
| 超低功耗状态(ULPS) | 00011110 | 0x1E |
| 复位触发(Reset-Trigger) | 01100010 | 0x62 |
| HS 测试模式入口 | 01011101 | 0x5D |
未分配的编码保留给后续扩展;收到不认识的命令时该动作被忽略,接收侧等发送侧回到 Stop 态。
(Specification_for_DPHY_v3.0.pdf Table 10,PDF p59,正文 p43)
3. LPDT 与 ULPS
- LPDT:低速数据通信,数据自时钟、不依赖 Clock Lane,LP 时钟频率需低于 20MHz;传输中可以保持 Space 态暂停,结束时最后一位是 Mark-1,再回 Stop 态退出。
- ULPS:进入后两条线保持
LP-00,功耗最低;退出靠一个时长为 TWAKEUP 的 Mark-1,随后回 Stop 态。
(Specification_for_DPHY_v3.0.pdf 6.6.2、6.6.3 节,PDF p60,正文 p44)
4. Spaced-One-Hot 编码
- 每个符号由 One-Hot 相位加 Space 相位构成:
Mark-0后接 Space 表示比特 0,Mark-1后接 Space 表示比特 1。 - 不成对(后面没有 Space)的 Mark 不构成比特,因此 Escape 是异步自时钟的,不存在 HS 那样的位同步。
(Specification_for_DPHY_v3.0.pdf 6.6 节,PDF p58;状态机见 6.6.4 节,PDF p61~p62,正文 p45~p46)
四、 时钟通道行为
1. HS 时钟的启停流程
HS 模式下 Clock Lane 提供低摆幅差分 DDR(半速率)时钟,数据位上时钟上升沿落在其中心。
“非连续时钟”的停钟流程(Table 13):
(1)最后一条 Data Lane 回到 LP 后,时钟继续输出 TCLK-POST 时长,并以 HS-0 结束。
(2)继续驱动 HS-0 保持 TCLK-TRAIL。
(3)关闭 HS 驱动、启用 LP 驱动,进入 LP-11 并保持 THS-EXIT。
(4)时钟突发一定包含偶数个跳变(起止都是 HS-0),保证每条 Data Lane 上采到偶数个比特。
开钟流程(Table 14)与之对称:LP-11 → LP-01(TLPX) → LP-00(TCLK-PREPARE) → HS-0(TCLK-ZERO) → 时钟输出,且时钟要先跑满 TCLK-PRE,Data Lane 才允许启动。
(Specification_for_DPHY_v3.0.pdf 6.7、6.7.1 节与 Table 13/14,PDF p65~p67,正文 p49~p51)
2. 连续时钟与非连续时钟
- 连续时钟:帧间时钟保持 HS,接收侧随时有节拍可采,代价是功耗。
- 非连续时钟:帧间时钟回 LP,下次传输按上面的开钟流程重新拉起。
- CSI-2 对收发两端的最低要求是“必须支持连续时钟”,非连续时钟可选。
(Specification_for_Camera_Serial_Interface_v4.0.1.pdf 7.1 节,PDF p81,正文 p59;另见《LV015-PhysicalLayer》)
3. 时钟通道的 ULPS
Clock Lane 不支持常规 Escape 模式,只有 ULPS:通过 LP 模式下的专用入口序列(使用 LP-Rqst 状态)进入,退出后时钟仍需从 Stop 态重新起振。
(Specification_for_DPHY_v3.0.pdf 6.8、6.8.1 节,PDF p71,正文 p55)
五、 参考资料
1. MIPI D-PHY 规范 v3.0
Specification_for_DPHY_v3.0.pdf,MIPI Alliance,2021-06-08,共 262 页。
| 主题 | 章节 | PDF 页 | 正文页 |
|---|---|---|---|
| Lane 模块类型、单向数据 Lane | 5.6、5.6.1 | p30、p32 | p14、p16 |
| Lane 状态与线电平 | 6.2、6.2.1 | p40 | p24 |
| HS 与 ALP 状态 | 6.2.2 | p41 | p25 |
| 操作模式:Control、High-Speed、Escape | 6.3、6.3.1 | p42 | p26 |
| HS 突发、SoT、EoT | 6.4、6.4.2~6.4.4 | p45~p48 | p29~p32 |
| 双向 Lane 换向 | 6.5、6.5.1、6.5.2 | p53、p55 | p37、p39 |
| Escape 模式总述与入口命令 | 6.6 | p58 | p42 |
| Remote Trigger | 6.6.1 | p59 | p43 |
| LPDT | 6.6.2 | p60 | p44 |
| ULPS | 6.6.3 | p60 | p44 |
| Escape 状态机 | 6.6.4 | p61~p62 | p45~p46 |
| HS 时钟传输与 LP 时钟模式 | 6.7、6.7.1 | p65~p67 | p49~p51 |
| Clock Lane 的 ULPS | 6.8、6.8.1 | p71 | p55 |
| HS 发送器电气参数(Table 31) | 9.1.1.9 | p123 | p107 |
2. MIPI CSI-2 规范 v4.0.1
Specification_for_Camera_Serial_Interface_v4.0.1.pdf,MIPI Alliance,2022-05-23,共 456 页。
| 主题 | 章节 | PDF 页 | 正文页 |
|---|---|---|---|
| 物理层 | 7 | p81 | p59 |
| D-PHY 物理层选项与时钟要求 | 7.1 | p81~p82 | p59~p60 |
| USL 特性的 D-PHY 要求 | 7.3.1 | p83~p84 | p61~p62 |
3. 页码换算
两份 PDF 的 PDF 页码与正文页码有固定偏移:D-PHY 相差 16 页(正文 p24 = PDF p40),CSI-2 相差 22 页(正文 p59 = PDF p81)。按 PDF 页码检索可直接定位到对应的图页。
本文档由 markdowncli 技能辅助生成