MIPI资料

news/2024/10/26 11:19:21/

一.

本文转自:https://blog.csdn.net/eric41050808/article/details/9137623

MIPI CSI-2规范(一)——概述及层级

CSI-2概述

    CSI-2规范定义了发送者和接收者之间传输和控制接口的标准数据。数据传输接口(指CSI-2)是单向差分串行接口,传输数据和时钟信号;接口的物理层说明文档参见《MIPIAlliance Specification for D-PHY》[MIPI01]。图1描述了CSI-2发送者和接收者之间的连接关系,是一个典型的摄像头模型和接收者模型(移动电话的一部分)连接关系。(译者:围补

        控制接口(指CCI,Camera Control Interface)是双向控制接口,与I2C标准兼容。

那么CCI又是什么鬼呢?你可以这么理解,它就是I2C的一个变种,或者说CCI是I2C协议的一个子集。因此,使用I2C接口就可以直接与CCI接口互联,以实现通信。

需要注意的是,在MIPI CSI-2的协议规范中明确的对摄像头的CCI地址做出了规定,具体如下:

对于那些只支持RAW Bayer输出格式的摄像头,其CCI地址必须为011011xb(x=0,1);对于其他的摄像头,其CCI地址必须为011110xb。

对于CCI协议的具体内容,这里就不详细介绍了,大家可以去参考I2C协议规范或者CSI-2协议规范的对应章节就可以了。

1  CSI-2和CCI发送者和接收者接口

CSI-2层级定义

2  CSI-2层级定义

        图2定义了CSI-2的应用中概念上的层级结构。各层描述如下:

l  PHY层:PHY层指定传输介质(导体),输入/输出电路和时钟机制,即从串行位流中获取“0”“1”信号。规范中的这一部分记录了传输介质的特性,并依据时钟和数据通道之间发信号和产生时钟的关系规定了电学参数。

信号传输开始(SoT)和传输结束(EoT)的机制被规范化。同样被规范化的还有其他在传输和接收物理层之间能够传输的“out of band”信息。位级和字节级同步机制被包含位PHY的一部分。

l  协议层(Protocol Layer):协议层由其他几个任务明确的层组成。CSI-2协议层允许多数据流共用一个主机处理器端信号接口。协议层指定多数据流怎样被标记和交叉存取,因此每个数据流可以被正确的重建。

  1. 像素/字节打包/解包层(Pixel/Byte Packing/Unpacking Layer):CSI-2支持多种像素格式图像应用,包括从6位到24位每个像素的数据格式。在发射端,数据由本层被发送到LLP层(Low Level Protocol)前,本层将应用层传来的数据由像素打包成字节数据;在接收端,执行相反过程,将LLP层发来的数据解包,由字节转成像素,然后才发送到应用层。8位每像素的数据在本层被传输时不会被改变。
  2. LLP(Low Level Protocol)层:LLP层包括,为串行数据在传输开始(SoT)到传输结束(EoT)之间传输事件,和传输数据到下一层,建立位级和字节级同步的方法。LLP最小数据粒度是一字节。LLP层也包括,每字节中各位数值分布解释,即“端”(Endian)分布。
  3. 通道管理(Lane Management)层:为性能不断提升,CSI-2是通道可扩展的。数据通道数目可以是1,2,3,4,这个依赖于应用中的带宽需求。接口发送端分配(“distributor”功能)输出数据流到一个或更多通道。在接收端,接口从通道收集字节并将之合并(“merger”功能)成为重新组合的数据流,恢复原始数据流序列。

     数据在协议层是以数据包的形式存在。在接口发送端,添加包头和可选择的错误校验信息到LLP层传来的数据上。在接收端,LLP层将包头剥离,由接收者按照相应逻辑解析。错误校验信息可以用来检测收到的数据完整性。(译者:围补)

l  应用层(Application Layer):该层对数据六中包含的数据进行进一步数据解码和解析。CSI-2规定了像素值到字节的映像。

        规范的标准段落只与连接的外部部分有关,例如,只和数据和位模式被传输通过的链路有关。所有的内部接口和层次都是纯信息性的。(译者:围补)

MIPI CSI-2协议支持多种Lane的配置方式,最小仅仅需要一个Clock Lane和一个Data Lane,而最大则支持一个Clock Lane和多大4个Data Lane。其中,4个Data Lane由Clock Lane进行同步传输数据,显然,这需要在传输数据之前对数据进行分配(或者合并),具体如下图所示:

blob.png

blob.png

显然CSI-2每个Data Lane的最小传输内容为一个字节。同时,这会带来一个问题(以2个Data Lane)为例,当所传送字节数为偶数时,Lane1和Lane2可以同时结束,当所传送的字节数为奇数时,Lane1和Lane2将不再是同时结束了!具体如下图所示:

blob.png

对于3个Lane,也有类似的情况:

blob.png

blob.png

blob.png

4个Lane的情况也是类似的,这里就不详细描述了。综上所述,不管是何种情况(Lane的配置方式),每个Lane都同时开始SoT,并开始发送第一个字节,但是每个Lane的结束时间可能会相差一个字节的传输时间。


下文转自:https://blog.csdn.net/tanjiaqi2554/article/details/78691630

MIPI CSI-2的Low Level Protocol主要有一下特征:

  • Transport of arbitrary data (Payload independent)

  •  8-bit word size

  • Support for up to four interleaved virtual channels on the same link

  • Special packets for frame start, frame end, line start and line end information

  • Descriptor for the type, pixel depth and format of the Application Specific Payload data

  • 16-bit Checksum Code for error detection.

CSI-2的Data Lane的Low Level Protocol数据包的一般形式为:

blob.png

如上图所示,也就是说,CSI-2的数据包有两种:长包和短包。无论是长包还是短包,包的开头都是SoT(Start of

 Transmission),包的结尾都是EoT(End of Transmission)。此外,长包的SoT之后还有包头(PH,Packet Header),EoT之前还有包尾PF(Packet Footer)。在两次HS传输过程之间,插入的是LP状态(一般是LP11等Control状态,当然也可以进入Escape状态进行LPDT或者进入UPLS)。

一个长包的基本结构如下图所示:

blob.png

  • 第一部分是PH,包头:分别由Data ID、16bit的WC和ECC构成,对应功能如上图所示;

  • 第二部分是包的有效数据;

  • 第三部分是PF,即CHECKSUM;

其中,ECC采用的是Hamming Code的方式,可以纠正PH(包头)中一位的错误或者发现两位的错误,具体可以看一下我之前转发的博文:http://blog.chinaaet.com/justlxy/p/5100052453

而CHECKSUM采用的则是CCITT的16-bit的CRC校检,即x^16+x^12+x^5+x^0。CRC只能检测数传输发生的一个或者多个错误,但是并不能纠正错误。具体可以参考这篇文章:http://blog.chinaaet.com/justlxy/p/5100052477

需要注意的是,无论是WC,还是PACKET DATA,或者CHECKSUM,都是先发低字节(LSB),再发高字节(MSB)!!!!对于一个具体的字节来说,也是先发低位,再发高位,如下图:

image.png

短包的结构比较简单,具体如下图所示:

blob.png

短包只是将长包中的WC的位置作为包的数据域,也就是说,短包每次最多只能发两个字节的数据。和长包一致,同样需要先发LSB,再发MSB。应当注意的是,短包一般是用来发送同步控制信号的,一般不建议使用短包来发送用户数据(当然你可以这样做)。

同步信号的类型如下:

blob.png

而当Data Type为0x08到0x0F时,则为Generic Short Packet Code,即可发送用户自定义数据。

其中,DI的高两位表示虚拟通道号,低六位表示Data Type,如下图所示:

blob.png

虚拟通道(VC,Virtual Channel)技术使得CSI-2可以在同一个Lane发送不同类型的数据,然后在接收端在进行恢复,如下图所示:

blob.png

Data Type如下:


举例如下:

blob.png

前面说到过,短包用来发同步控制信号,长包用来发数据,比如下面的例子,短包发帧同步信号,长包发数据:

blob.png




二.

转载自:https://blog.csdn.net/g_salamander/article/details/9163455

一、D-PHY

1、传输模式

LP(Low-Power) 模式:用于传输控制信号,最高速率 10 MHz

HS(High-Speed)模式:用于高速传输数据,速率范围 [80 Mbps, 1Gbps] per Lane

传输的最小单元为 1 个字节,采用小端的方式及 LSB first,MSB last。

2、Lane States

*  LP mode 有 4 种状态: LP00、LP01(0)、LP10(1)、LP11 (Dp、Dn)

* HS mode 有 2 种状态: HS-0、HS-1

HS 发送器发送的数据 LP 接收器看到的都是 LP00,

3、Lane Levels

* LP: 0 ~ 1.2V

* HS: 100 ~ 300mV,HS common level = 200mV,swing = 200 mv

4、操作模式

在数据线上有 3 种可能的操作模式:Escape mode, High-Speed (Burst) mode and Control mode,下面是从停止状态进入相应模式需要的时序:

* Escape mode 进入时序:LP11→LP10→LP00→LP01→LP00,退出时序:LP10→LP11

当进入 Escape mode 需要发送 8-bit entry command 表明请求的动作,比如要进行低速数据传输则需要发送 cmd: 0x87,进入超低功耗模式则发送 cmd: 0x78。在 DSI 中 LP 通讯只用 Data Lane 0。

* High-Speed mode 进入时序:LP11→LP01→LP00→SoT(0001_1101),退出时序:EoT→LP11,时序图如下:


* Turnaround 进入时序:LP11→LP10→LP00→LP10→LP00,退出时序:LP00→LP10→LP11

这是开启 BTA 的时序,一般用于从 slave 返回数据如 ACK: 0x84。

5、时序要求

在调试 DSI 或者 CSI 的时候, HS mode 下的几个时序非常重要:T_LPX,T_HS-SETTLE ≈ T_HS-PREPARE + T_HS-ZERO,T_HS-TRAIL,一般遵循的原则为:Host 端的 T_HS-SETTLE > Slave 端的 T_HS-SETTLE。



http://www.ppmy.cn/news/536911.html

相关文章

mt6582 ILI9881C MIPI LCD驱动移植说明

一.mt6582 LCD移植说明 1.LCD驱动路径 mediatek/custom/common/kernel/lcm/ili9881c_hd720_dsi_vdo 如果该路径下没有ili9881c_hd720_dsi_vdo文件夹,即创建该文件,并将LCD厂商提供的源码放在该处 或者将我提供的源码放在该处 2.ili9881c_hd720_dsi_…

CMU15-440-P0:Implementing a key-value messaging system

准备继续更新blog。 最近工作上一直在写业务,看些课程换换脑子。 15-440是CMU的一个分布式课程 http://www.cs.cmu.edu/~15-440/syllabus.html ,其实之前在学校的时候就上过分布式的课程,当时用的MIT 6.824的课件,可惜当时很多p…

CMU 15-445/645 Homework #2

0.写在前面 Homework2的一些知识总结。题目和sol可以去cmu-15-445 2020上找到。 个人学习总结:https://github.com/kaniel-outis/CMU15-445 Question 1: Cuckoo Hashing cuckoo是布谷鸟的意思,这种鸟有一种即狡猾又贪婪的习性,它不肯自己筑…

CMM与CMMI的关系

cmm与cmmi的区别:CMMI比CMM多个I 这个I是intergration,集成的意思。 CMM适用于软件的组织成熟度测评。 CMMI适用于多种组织成熟度测评,其中CMMI_SW适用于软件。 CMMI相对CMM更完整,更适用于大环境。 过去有政策,过CMM3…

CMMI3 和 CMMI 4

CMMI 3. 0 2.1 SPP模型...0 2.2 SPP过程域的目的...4 2.3 SPP与CMMI的关系...5 2.4 SPP文档结构与规范细分...6 2.5 SPP角色与职责表...8 2.6机构软件过程改进的政策... 9 2.6.1目标... 9 2.6.2机构领导的支持... 9 2.6.3质量管理的政策... 10 2.6.4软件工程过程小组的政策... …

GM 8773C MIPI转双MIPI

1 产品概述 GM8773C 是一款 1:2 DSI 桥接芯片,可实现 4 路进 8 路出转换器功能、视频分离器功 能。芯片内集成了一个 4 路单一链路的 MIPI DSI 接收器和 8 路双链路 MIPI DSI 发送器。 接收器每路可以支持到 2.0Gbps/lane ,可以最高支持到 2…

从CMM的QA到CMMI的PPQA

以前的CMM的QA是只关心过程质量,由此也是众多的咨询师也是众口一词,对此也没有置疑。还是在2001年在做CMM的时候我就觉得至少在国内这些过程还不成熟甚至没有过程的软件企业(通过了N级并不代表过程真正的成熟)是难以实现的&#x…

wallys/IPQ8074a/2x(4×4 or 8×8) 11AX MU-MIMO DUAL CONCURRENT EMBEDDEDBOARD

IPQ8074A 4x4 2.4G 8x8 5G 802.11ax IPQ8074A 4x4 2.4G 8x8 5G 802.11ax DR8074A(HK01) ​​​​​​https://www.wallystech.com/Routerboard/DR8074A-HK01-wifi6-Qualcomm-IPQ8074A-4T4R-2-4GHz-and-8T8R-5GHz-support-OpenWRT-802.11AX-MU-MIMO-OFDMA.html Wallys Comm…