镇江市网站建设_网站建设公司_动画效果_seo优化
2025/12/25 5:46:26 网站建设 项目流程

文章目录

    • 1. 背景
    • 2. 概念介绍
      • 2.1 HS 模式 和 LP 模式
      • 2.2 连续模式时钟和非连续模式时钟
    • 3. 长短包
      • 3.1 数据格式
      • 3.2 数据类型 (DI)
    • 4. 波形图示

1. 背景

嵌入式领域中,很多高速、大数据通常都会使用mipi接口进行传输,如sensor、毫米波雷达等,mipi 协议包含D-PHY 和 C-PHY 架构,其中D-PHY使用1对源同步差分时钟和多对差分数据线进行数据传输,采用双边沿DDR进行数据采样。C-PHY不同于传统差分信号线,它采用三根信号线之间的差分作为信号判断,实现更高带宽的数据传输。本文主要进行记录D-PHY调试中相关的理解。

2. 概念介绍

2.1 HS 模式 和 LP 模式

通道支持高速(HS)和低功耗(LP)两种工作模式。HS模式以低压差分信号传输高数据速率,而LP模式则以单端信号实现低功耗。HS 模式下采用低压差分信号,功耗较大,但是可以传输很高的数据速率(数据速率为 80M~4.5Gbps),支持 100mV 到 300mV 的电压范围;LP 模式下采用单端信号,数据速率很低(<10Mbps),但是相应的功耗也很低,支持0V到1.2V信号电平。

上图中HS模式就是方波的 低脉冲期间,需要将低脉冲放大看,就可以看到低脉冲上的摆动了,见上面的第二张图。

2.2 连续模式时钟和非连续模式时钟

连续模式时钟全部工作在 HS 模式,非连续模式就是上图中情况,会在不发数据的时候,clk 进入 LP 模式。

使用示波器测到的 连续模式下 clk 波形如下:

ps : 关于波形是类正弦波,非方波,搜索了一下,大致是说,硬件电路会把高频谐波部分削除,以及电路中交流耦合电容(如 100 nF)隔离直流,使信号在零附近摆动,进一步削弱方波的“平顶”特征,使其看起来像正弦波。

3. 长短包

3.1 数据格式

  • 短包:ST+SP(32bit)+ET
  • 长包:ST+PH(32bit)+DATA+PF(16bit)+ET
    包之间必须通过LPS间隔,具体为上一包恢复LP11,再LP11-LP01-LP00进入下一包。
  • SOT:Start-of-Transmission,传输起始,8bit序列00011101 (0x1d)。
  • EOT:End-of-Transmission,传输结束,为最后一个数据 bit 的取反。

SOT 是进入高速 (HS) 模式后必须发送的第一个字节,用于同步接收器。

短包:SoT + 32 位数据 + EOT(最后一位取反)
长包:SoT + 包头 + 数据 + 包尾 + EOT(最后一位取反)

  • PH:packet head,长包的包头,32bit。
    具体包括:DI 8bit(2bit虚拟通道+6bit数据类型);WC 16bit,指示后续数据byte数;ECC 8bit(实际6bit,高2bit补0)为DI+WC 24bit的校验值。
  • SP:short packet,短包32bit,结构和PH基本一样,区别在短包不接数据,所以中间16bit不是byte数而是附带信息, 通常为帧号。

  • 长包形式为PH+DATA+PF,其中:
    • DATA:packet data数据,以Byte为单位。
    • PF:packet footer包尾,内容为checksum ,即packet data部分的CRC校验值。

      这里截取sensor 手册内容展示包结构:

3.2 数据类型 (DI)

其低6bit为数据类型编码, 高2bit 用于VC 通道号标识,用于区分不同的类型的图像数据。

Data TypeDescription
0x00 to 0x07Synchronization Short Packet Data Types
0x08 to 0x0FGeneric Short Packet Data Types
0x10 to 0x17Generic Long Packet Data Types
0x18 to 0x1FYUV Data
0x20 to 0x27RGB Data
0x28 to 0x2FRAW Data
0x30 to 0x37User Defined Byte-based Data
0x38 to 0x3FReserved

a)列举短包常用数据类型,帧起始FS、帧结束FE、行起始LS、行结束LE,协议要求必须有帧标识包,可以没有行标识包。

Data TypeDescription
0x00Frame Start Code
0x01Frame End Code
0x02Line Start Code (Optional)
0x03Line End Code (Optional)

b)长包数据类型主要包括RGB、YUV、RAW类型,以RAW灰度为例列举,RAW后数字指每个像素点的bit数,其他可以参照手册。

Data TypeDescription
0x28RAW6
0x29RAW7
0x2ARAW8
0x2BRAW10
0x2CRAW12
0x2DRAW14

4. 波形图示

MIPI D-PHY 在高速模式下采用 LSB 优先(LSB first) 的传输顺序, 即先传输一个Byte 的 bit0,采集端先收到的也是 bit0。

  • 短包
    波形中可以看到完整流程,白色标注为具体时序阶段。

重点关注下图中HS驱动部分,数据lane双边沿输出,时钟和数据lane错半个相位。第1个红框为SoT序列00011101,第2个红框为数据,然后EoT是前最后1bit的反转。

数据先发低位,可以看到4lane数据为0x0、0x1、0x0、0x1a,其中:
[7:0]=0,指示虚拟通道0,数据类型为FS,帧开始。
[23:8]=1,指示帧号为1。
[31:24]=0x1a,为ECC校验值。

  • 长包

长包的完整流程和短包相似,主要区别在HS部分,第1个红框为SoT序列先不看,后面可以看到lane0、1传输3Byte,lane2、3传输2Byte,共计10Byte,构成是包头4Byte+数据4byte+校验2Byte。

包头4Byte,第2红框列,0x2a对应数据类型RAW8,0x00 以及0x04 组合的16bit wc 值 0x0004 对应数据长度4Byte,0x33对应ECC。
数据4Byte,第3红框列,对应数据4Byte分别为0x1、0x2、0x3、0x4。
校验2Byte,第4红框列,组合起来是0xc66e,为0x04030201的CRC值。

ps: LSB 先行,采集的时间上是从左往右(bit0 --> bit7)。

参考:

  1. MIPI CSI-2 (2)HS模式 传输详解和波形图

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询