• MIPI CSI-2笔记(10) -- Low Level Protocol(延迟降低、传输效率增强特性LRTE)


    Latency Reduction and Transport Efficiency

            LRTE是一个可选的CSI-2特性,它能够促使系统达到最优的传输效率,以便支持新兴的图像应用。LRTE有个部分:

            Interpacket Latency Reduction (ILR),包间延迟降低

            Enhanced Transport Effeciency,传输效率增强

     Interpacket Latency Resuction(ILR)

             根据D-PHY物理层和C-PHY物理层的规范,CSI-2的短包之间和长包之间通过EoT,LPS和SoT包分隔符分开。一些高级的图像应用,比如PDAF(Phase Detection Auto Focus,相位检测自动对焦),Sensor Aggregation以及机器视觉应用,通过降低这些分隔符的开销,能够使这些应用能够极大地受益于有效速度的提升。

            

             如上图所示,通过将传统的EoT, LPS和SoT包分隔符替换为更加高效的包分隔符(Efficient Packet Delimiter, EPD)信号机制后,可以达到降低包间延迟的目的。EPD避免了HS-LPS-HS的状态转换过程。一个EPD由PHY层和/或Protocol层的多个元素构成。PHY产生的EPD元素被称为“Packet Delimiter Quick(PDQ)”。Protocol层产生的EPD称为Spacers,Spacers可以任意地放到PDQ之前。

            LRTE要求EPD能够在PHY处于高速信号(high-speed signaling)状态时被插入到相邻的CSI-2包之间,但不允许将EPD插入到刚好在PHY EoT之前的一个CSI-2包的后面。但在某些特殊情况下,对于一个刚好在PHY EoT之前的CSI-2包,后面可以插入Spacers,但没有PHY产生的PDQ信号。

    C-PHY物理层的EPD

            C-PHY物理层的EPD由一个或多个PHY生成和使用的用于PDQ(Packet Delimiter Quick)的7-UI Sync Word构成,前面是任意的CSI-2 Protocol生成和使用的Spacer字。PDQ由发送者物理层生成,接收者物理层使用,其作用是作为一个健壮的CSI-2包分隔符来使用。图像传感器应该在PPI(PHY Protocol Interface) 处重复使用“TxSendSyncHS”,以便通过C-PHY发送器生成PDQ控制码。在C-PHY接收器收到PDQ控制码的时候,应用处理器应该在PPI处重复使用“RxSyncHS”,以便通知CSI-2协议层。7-UI  PDQ控制码的持续时间正比于C-PHY符号速率(Symbol rate)。

            用于C-PHY接收器的EPD,也能从PDQ前的Spacer插入行为中受益(Spacer插入是CSI-2 protocol生成和使用,属于协议可选项),因为这会为图像应用程序带来最优的包间延迟。CSI-2 C-PHY的Spacer Word值是0xFFFF,当存在Spacer Word时,在一条链路中所有Lane都要产生Spacer Word。

            图像传感器(发送器,发送者)要有下面的两个16-bit寄存器来促使达成图像应用的最优包间延迟:

            1. TX_REG_CSI_EPD_EN_SSP(EPD Enable and Short Packet Spacer)寄存器

    这个寄存器的最高有效位(MS bit)用来使能EPD,在两个CSI-2包之间插入7-UI PDQ,以及可选的用于短包和长包之间的Spacer插入行为

    •         1'b0: C-PHY legacy EoT, LPS, SoT Packet Delimiter
    •         1'b1: Enable  C-PHY EPD(Efficient Packet Delimiter)
    如果C-PHY EPD使能,该寄存器的剩余15位(bits[14:0])用来指定CSI-2短包之后,每条Lane要插入的Spacer Word的最小数量(值最多到32,767)

             2. TX_REG_CSI_EPD_OP_SLP(Long Packet Spacer)寄存器

    这个寄存器的最高有效位(MS bit)保留给未来使用
    如果C-PHY EPD使能,该寄存器的剩余15位(bits[14:0])用来指定CSI-2长包之后,每条Lane要插入的Spacer Word的最小数量(值最多到32,767)

            如果C-PHY EPD使能,两个EPD寄存器的低有效15位配置例子:

    •   寄存器值是15'd0,表示0个或多个Spacer
    •  寄存器值是15'd5,表示至少5个Spacer,至少造成5 * 7 UI的duration
    •  寄存器值最大,15'd32,767,表示至少有32,767个Spacer,至少造成32,767 * 7 UI的duration

            发送器对于TX_REG_CSI_EPD_EN_SSP和TX_REG_CSI_EPF_OP_SLP这两个寄存器,每个寄存器至少要支持Spacer insertion count字段的1个可用非零值。

            没有PDQ信号的Spacer Words,只有在C-PHY EPD使能并且TX_REG_CSI_EPD_MISC_OPTIONS寄存器的bit 7设置为1的时候,才可以插入到一个刚好在C-PHY EoT之前的CSI-2包的后面,寄存器详细描述参考“LRTE寄存器表”。如果这个bit没有被图像传感器所实现,本规范要求其内容要当做0处理。TX_REG_CSI_EPD_EN_SSP和TX_REG_CSI_EPD_OP_SLP寄存器的低15有效位决定了要插入到刚好在C-PHY EoT之前的Spacer Word的最小数量。

            C-PHY EPD,以及不带PDQ信号的Spacer Word,和C-PHY ALP模式高速burst传输是完全兼容的。

    CSI-2 C-PHY的 LRTE EPD例子

    D-PHY物理层EPD

            CSI-2 D-PHY物理层有两种EPD选项,本小节会详细说明。

            当EPD使能时,无论是哪种EPD选项,都要用最少的Filler字节对齐链路上所有Lane的数据。Filler字节的值是0x00。链路中对齐Lane数据的过程和CSI-2 C-PHY上的本地EOT对齐过程类似。

    D-PHY EPD选项1(D-PHY EPD Option 1)

            D-PHY EPD选项1由PHY生成和使用的D-PHY HS-Idle PDQ信号组成,PDQ前可以有任意被CSI-2 Protocol生成和使用的Filler字节(如果有需要的话)外加0个或多个Spacer字节。CSI-2 D-PHY的Spacer字节的值是0xFF,当存在时,Spacer字节在链路中所有链路上都要产生。PDQ由物理层的发送器生成,接收器所使用,作为一个健壮的CSI-2包分隔符使用。D-PHY接收器能够从Protocol生成和使用的Spacer中受益,因为针对PDQ信号,前向时钟被disable之前,可能需要额外的时钟周期来通过pipeline冲刷掉载荷内容(payload content)。要注意的是D-PHY HS-Idle并不被ALP模式所支持。

             关于fowarded clock(前向时钟/转发时钟),参考这里

    I/O时钟架构http://www.360doc.com/content/21/0326/19/99071_969139151.shtml

            使用D-PHY EPD选项1时,EPD不可以插入到刚好处于D-PHY EoT之前的CSI-2包的后面,但不带PDQ的Spacer字节可以插入到这种包后面,这种情况TX_REG_CSI_EPD_MISC_OPTIONS的bit 7被设置为1。TX_REG_CSI_EPD_EN_SSP和TX_REG_CSI_EPD_OP_SLP寄存器中低有效15 bits决定了在D-PHY EoT之前所要插入的最少的Spacer字节数。寄存器详细描述见“LRTE寄存器表”。
            图像传感器应该在PPI接口处使用“TxHSIdleClkHS”来通过D-PHY发送器产生PDQ序列。当D-PHY接收器收到了PDQ序列,应用处理器侧应当在PPI接口处使用“RXSyncHS”来通知CSI-2 协议层(protocol layer)。另外“RxClkActiveHS”也能被用来提供EPD的提前的指示信号。

    CSI-2 D-PHY - Option 1的LRTE EPD示例

    D-PHY EPD选项2(D-PHY EPD Option 2)

            D-PHY EPD选项2限制只使用了CSI-2 protocol生成和使用的Filler字节外加0个或多个Spacer字节,这些字节插入到了多个背靠背(back-to-back)包传输之间,这些传输都在相同的D-PHY 高速busrt传输中(不使用PHY生成和使用的PDQ)。选项2主要是为了使用支持legacy LP或LVLP模式的不支持选项1的D-PHY。但它也可以和ALP模式搭配使用。根据使用场景不同(即被连接起来的CSI-2包的大小和数量),缺少D-PHY生成和使用的包分隔符可能会影响CSI-2链路的完整性。选项2本意并非完全终结掉D-PHY LP,LVLP或ALP模式的包分隔符。当使用D-PHY EPD选项2时,同样推荐在一个短包或长包之后,加入一个或多个Spacer。

            D-PHY EPD选项2也可以被应用到和USL(Unified Serial Link)相关联的使用C-PHY或D-PHY Escape模式LPDT传输的包上。

            在D-PHY Option 2情况下,一个EPD(即一个或多个Spacer)不会在任何高速burst或LPDT载荷中的最后一个CSI-2短包或长包后面立即被插入,包括EoTp短包。

     CSI-2 D-PHY 选项2的LRTE EPD示例

    D-PHY EPD规范(针对EPD Option 1和Option 2)

            图像传感器(发送器)需要包含下面两个16-bit寄存器,用来为图像应用程序配置最优的包间延迟:

    TX_REG_CSI_EPD_EN_SSP

    (EPD Enable and Short Packet Spacer) 

    这个寄存器的最高有效bit(MS bit)用于使能EPD插入到两个CSI-2包之间
        • 1’b0: D-PHY legacy EoT, LPS, SoT Packet Delimiter
        • 1’b1: Enable D-PHY EPD (Efficient Packet Delimiter)

    短包后插入可变长Spacer:

            如果D-PHY EPD被使能,并且Option 1被选择(TX_REG_CSI_EPD_OP_SLP寄存器的bit 15为0)或Option 2被选择,同时TX_REG_CSI_EPD_MISC_OPTIONS寄存器的bit 5或bit 4为1

            那么TX_REG_CSI_EPD_EN_SSP的bits[14:0]就指定了在CSI-2短包后每lane上实际插入的Spacer最小数量(寄存器值最大为32,767)。

            各个短包之间每Lane实际插入的Spacer数量可以变化。对于D-PHY EPD选项2来说,TX_REG_CSI_EPD_EN_SSP寄存器的值和实际每Lane插入的Spacer数量都要是TX_REG_CSI_EPD_MISC_OPTIONS寄存器的bits[5:4]的整数倍。

    短包后插入固定长度Spacer:

            如果D-PHY EPD被使能,并且使用了Option 2(TX_REG_CSI_EPD_OP_SLP寄存器的bit 15为1)同时TX_REG_CSI_EPD_MISC_OPTIONS寄存器的bit 5和bit 4都为0。

            那么TX_REG_CSI_EPD_EN_SSP的bits[14:0]就指定了在CSI-2短包后每lane上实际插入的Spacer精确数量(寄存器值最大为32,767)。各个短包之间每Lane上插入的Spacer数量不会变化。

    TX_REG_CSI_EPD_OP_SLP

    (EPD Option and Long Packet Spacer) 

    这个寄存器的最高有效bit(MS bit)用于选择D-PHY EPD选项
        • 1’b0: D-PHY EPD Option 1
        • 1’b1: D-PHY EPD Option 2

    长包后插入可变长Spacer:

            如果D-PHY EPD被使能,并且Option 1被选择(TX_REG_CSI_EPD_OP_SLP寄存器的bit 15为0)或Option 2被选择,同时TX_REG_CSI_EPD_MISC_OPTIONS寄存器的bit 5或bit 4为1

            那么TX_REG_CSI_EPD_EN_SLP的bits[14:0]就指定了在CSI-2长包后每lane上实际插入的Spacer最小数量(寄存器值最大为32,767)。

            各个长包之间每Lane实际插入的Spacer数量可以变化。对于D-PHY EPD选项2来说,TX_REG_CSI_EPD_EN_SLP寄存器的值和实际每Lane插入的Spacer数量都要是TX_REG_CSI_EPD_MISC_OPTIONS寄存器的bits[5:4]的整数倍。

    短包后插入固定长度Spacer:

            如果D-PHY EPD被使能,并且使用了Option 2(TX_REG_CSI_EPD_OP_SLP寄存器的bit 15为1)同时TX_REG_CSI_EPD_MISC_OPTIONS寄存器的bit 5和bit 4都为0。

            那么TX_REG_CSI_EPD_EN_SSP的bits[14:0]就指定了在CSI-2长包后每lane上实际插入的Spacer精确数量(寄存器值最大为32,767)。各个长包之间每Lane上插入的Spacer数量不会变化。

            下面的例子适用于两个EPD寄存器的低有效15位:

            对于可变长度Spacer插入:

    •                 寄存器值为15'd0,产生0个或多个Spacer
    •                  寄存器值为15'd5,产生至少5个Spacer
    •                 寄存器值为15'd32,767,产生至少32767个Spacer

            对于固定长度Spacer插入:

    •                 寄存器值为15'd0,不产生Spacer
    •                  寄存器值为15'd5,精确地产生5个Spacer
    •                 寄存器值为15'd32,767,精确地产生32767个Spacer

            发送器对于TX_REG_CSI_EPD_EN_SSP和TX_REG_CSI_EPF_OP_SLP这两个寄存器,每个寄存器至少要支持Spacer insertion count字段的1个可用非零值。PDQ序列的持续时间和D-PHY链路速率成正比,通过D-PHY物理层的HS-Idle时序参数进行配置。

            对于D-PHY EPD,对于支持Option 1下插入不带PDQ的Spacer、或Option 2下插入EoTp或可变数量Spacer字节的图像传感器(发送器)来说, TX_REG_CSI_EPD_MISC_OPTIONS寄存器是需要有的。如果寄存器没有具体实现,则视寄存器值为0.

            需要注意的是,当使用Escape模式LPDT应用到USL发送的包时,TX_REG_CSI_EPD_EN_SSP,TX_REG_CSI_EPD_OP_SLP寄存器并不是用来控制图像传感器LRTE的。

    D-PHY EPD选项2下健壮的可变长度Spacer检测机制

            在D-PHY EPD选项2下,CSI-2发送器在包之间插入可变长度的Spaver字节,要求CSI-2接收器能够检查出潜在的Spacer字节,而不是简单地通过计数方式来识别,这样才能不会将包头字节和Spacer字节混淆。由于Spacer字节要被分发到从Lane1开始的所有数据Lane上,CSI-2接收器可以通过只在Lane1上扫描包之间的值为0xFF的字节。但是,真正可靠的检测手段也要求这些字节是没有任何错误的,因为Lane 1上Spacer字节(值为0xFF)如果有1 bit错误,它就会看起来像是一个包头的DI(Data Identifier)字节。反过来也是,包头字节中如果有1 bit错误,它就会看起来像是一个Spacer字节。

            如果CSI-2接收器将一批批的四个连续Spacer字节的Lane合并的分组当做潜在的32-bit的包头处理,那么ECC计算的结果就能够用来检测和修正Spacer字节中的错误了,因为这就像其处理包头字节的过程一样。这样做是有可能的,因为发送的每一组由4个Spacer字节组成的单元,其低有效6个bit的值为0x3F,这个值也正好是其高有效26个bit对应值0x3FFFFFF的6-bit ECC结果。

            根据链路中数据Lane(N)的总数量不同,Spacer字节插入和检测机制的使用原则可能会有所不同。CSI-2的发送器所插入的Spacer字节,要求每Lane是M = LCM(N,4) / N个字节的整数倍,这里的LCM表示最小公倍数。要保证CSI-2接收器能观察到包之间的四个Spacer字节为单位的整数倍长度。 

             如上表所示,M可能的值只有1,2,4,可以通过TX_REG_CSI_EPD_MISC_OPTIONS寄存器的bit[5:4]进行配置。

            有一点值得注意的是,CSI-2接收器只需要在Lane 1上检查每M个潜在的Spacer字节中的1个字节的数据完整性,即只要一组M字节里的在Lane 1上第一个字节被确认是Sapcer字节,剩余的M-1个字节就能够被安全地被CSI-2接收器所忽略,因为它可以提前知道这些字节在被插入的M个Spacer字节里。

     一般场景:启用健壮的Spacer字节检测(Robust Spacer Byte Detection)

            然而,对于N > 4的情况,是可以配置CSI-2发送器让它总是在每lane插入任意数量的Spacer字节(即M 设置为1)的,此时CSI-2接收器检查前四个Lane的数据并且在Lane1中确认了有一个Spacer字节,忽略剩下Lane的字节。(此处为个人理解记录,可能有误,请结合规范出处英文辅助理解)

    特殊场景:启用健壮的Spacer字节检测 

    EoTp(End-of-Transmission Short Packet)

            使用D-PHY EPD选项2时,当多个CSI-2包通过一次单独的D-PHY高速(HS, high-speed)burst载荷中传输时,需要host在所有情况下,都要能有正确的操作来可靠地检测出burst中的最后一个CSI-2包。在很多实现方案中,这要求CSI-2 host协议接收器在HS trailer bits、以及其他来自D-PHY物理层接收器的bits上执行额外的End-of-Transimission(EoT)处理。

            如果HS trailer bits后面跟着非常少但数量未知的bits,这些bits的值也难以确定,这种情况下EoT的处理会更加复杂。具体的例子有:D-PHY HS到LP的过程中,或LVLP电压转换过程中。

            对于D-PHY EPD选项2,EoTp短包(End-of-Transmission Short Packet)通过在D-PHY高速burst载荷中对最后一个CSI-2包引入没有歧义的信号的方式,去掉了CSI-2协议接收器进行EoT处理的需要。

            EoTp短包的字段定义如下:

    •         DT是0x04
    •         所有VC,VCX和WC bits都为0

            关于EoTp,还有一些其他规则要遵守:

    •         EoTp的生成和检测对于遵循当前笔记提到的CSI-2规范版本(支持HS传输的D-PHY EPD Option 2)的所有设备是强制选项。EoTp不能和C-PHY EPD Option 1、D-PHY EPD Option 1或者使用Escape Mode LPDT的包传输方式搭配使用。
    •         遵循CSI-2规范v2.1或更早版本的设备不支持EoTp。为了保证和这些设备的互操作性,支持EoTp的设备要能够提供方法使能或禁用EoTp的生成和检测功能。对于图像传感器来说,这种能力要通过TX_REG_CSI_EPD_MISC_OPTIONS寄存器的bit 6来提供。这样就能允许系统设计者能够禁用掉这个功能,以便和不支持EoTp的设备进行交互(无论是哪一侧)。
    •         当EoTp特性启用时,在每一个高速burst载荷中只能存在一个EoTp,这个EoTp作为最后CSI-E包,紧跟着所有其他的短/长包之后,包括只有一个CSI-2 短包或长包的情况。
    •         EoTp之后不允许跟Spacer,因为EoTp之后紧跟的是D-PHY EoT,不会再有其他CSI-2包了。

     EoTp使用案例

    ILR和Enhanced Transport Efficiency一起使用

            在许多应用中,EPD可以和LVLP或ALP Mode信号一起使用,以便能够从CSI-2 ILR和增强信道传输(enhanced channel transport)中受益。

     EPD和LVLP或ALP Mode信号一起使用

    LRTE寄存器表

     

     

  • 相关阅读:
    看了B站上的这些课程,我飘了!
    【MySql】mysql之索引
    C++ 字符串string
    websocket
    GitHub提交代码步骤
    MySQL删除表数据总结(DELETE、TRUNCATE、DROP)
    安全测试工具BurpSuite
    华为OD机试真题-事件推送-2023年OD统一考试(B卷)
    荧光染料CY3/CY5/CY5.5标记TiO2二氧化钛纳米粒|CY5.5-PEG-TiO2
    pb:类定义查找函数
  • 原文地址:https://blog.csdn.net/vivo01/article/details/126504904