MIPI D-PHYv2.5笔记(15) -- Skew Calibration和Alternate Calibration Sequence

        声明:作者是做嵌入式软件开发的,并非专业的硬件设计人员,笔记内容根据自己的经验和对协议的理解输出,肯定存在有些理解和翻译不到位的地方,有疑问请参考原始规范看

Skew Calibration

         对于大于1.5Gbps的情况,需要发送器发送一个特殊的去偏斜(deskew)burst,让接收器做去偏斜功能。当工作速率在1.5Gbps以上或将速率变到1.5Gbps以上时,在高速数据传输之前需要传输一个初始去偏斜序列(initial deskew sequence)。当工作速率在1.5Gbps以下时,传输初始去斜序列是可选的。周期性的去偏斜功能(periodic deskew)和数据速率无关,是可选的功能。

        在切换状态的过程中,比如从ULPS切换到HS,传输deskew sequence是可选的,这里假设HS操作会恢复到之前发送初始去偏斜序列的时候的速率。

 图1  High-Speed Data Transmission in Skew-Calibration with LP Mode

图2 High-Speed Data Transmission in Skew-Calibration with ALP Mode

         发送器deskew burst使用一个全部由‘1’组成的同步帧(同步模式,sync pattern),持续16个UI(Unit Interval,在Global Timing Parameters中有说明,也可以参考规范2.4节Acronyms)。Sync pattern发送之后,载荷部分是一个clock pattern(01010101...),对于初始去偏斜序列来说,最小持续2^{15}个UI;对于周期性去偏斜校准序列来说,最小持续2^{10}个UI。

 图3  Normal Mode vs Skew Calibration with LP Mode

 图4  Normal Mode vs Skew Calibration with ALP Mode

         接收器在检测到deskew sync pattern的时候,启动去偏斜校准(deskew calibration)。发送器端,deskew sequence要在发送器配置控制下同时在所有活动的Lanes上发起传输。LP模式下,start-of-transmission和end-of-transmission序列描述如下面两张图所示:

 图5 Start-of-Skew Calibration Sequence

 图6 End-of-Skew Calibration Sequence

 图7 Skew-Calibration Timing Parameters

        对于周期性deskew calibration来说,发送器在发送一个deskew序列前,先要结束当前的burst。在接收器deskew calibration器件,在接收器的输入端会出现抖动的信号。接收器deskew模块要带展频时钟(Spread Spectrum Clocking)功能,保证正常运作。

Alternate Calibration Sequence

        Alternate Calibration Sequence的出现主要是为了补偿符号间干扰(inter-symbol interference) 。它和Initial Skew Calibration组合使用。当工作速率在2.5Gbos以上或切换到2.5Gbps以上时,在Initial Skew Calibration之后,要发送一个Alternate Calibration Sequence,这个序列由一个带头的HS0 pattern,一个Calibration Sync和一个Calibration Pattern组成。这个校准过程需要在链路上电,以及(或者)在链路重新初始化的时候进行。对于工作速率低于2.5Gbps的情况,Alternate Calibration Sequence是个可选项。

        如果接收器不需要或不支持这个特性,系统集成者可以禁用掉Alternate Calibration Sequence。

 图8 Initial Calibration Sequence Including Alternate Calibration Sequence with LP
Mode

        Alternate Calibration Sequence使用的Alternate Calibration Sync,其持续时间为T_{ALTCAL\_SYNC}。当Alternate Calibration Sync发送之后,载荷是一个PRBS9序列,其最小持续时间为T_{ALTCAL}

        PRBS9序列通过多项式x^0 + x^5 + x^9定义。PRBS9序列生成器(PRBS9 sequence generator)要在Alternate Calibration过程之前被初始化好,初始化时使用一个初始的9-bit seed值011111111(Q9:Q1)。载荷部分的前8-bit是PRBS9序列生成器寄存器Q1到Q8中的seed的值。在后续每一个8-bit字被输出到Data[7:0]之前,PRBS9序列生成器要做8次移位操作。

        16-bit和32-bit的数据接口使用的也是相同的多项式x^0 + x^5 + x^9。在后续每一个16-bit/32-bit字被输出到Data[15:0]/Data[31:0]之前,PRBS9序列生成器要做16/32次移位操作。

图9  PRBS Generator and Connection to the Serializer

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
Vivado IP核是Xilinx公司开发的一种可配置的IP核生成工具,可以用于快速生成各种功能的IP核。其中,MIPI D-PHY是一种用于手机、摄像头、显示器等设备的高速串行接口协议。 MIPI D-PHY测试可以通过使用Vivado IP核生成MIPI D-PHY核,并在FPGA平台上进行测试来完成。首先,我们需要在Vivado中创建一个新的项目,选择适当的FPGA型号和开发板。然后,通过Vivado IP核生成我们所需要的MIPI D-PHY核,并将其添加到我们的项目中。 在项目中添加MIPI D-PHY IP核后,我们可以对其进行配置,并将其连接到其他逻辑电路或外部设备。配置参数包括数据通道的位宽、时钟频率、电源电压等。我们还可以配置其他相关的设置,如时钟延迟、电源方案等。 完成配置后,我们可以执行仿真来验证MIPI D-PHY的功能。可以通过发送和接收模拟数据来模拟实际的通信过程,并检查传输的正确性和稳定性。仿真结果应该与预期的规格要求相符。 完成仿真后,可以通过将设计生成比特流文件并下载到FPGA平台上来进行硬件验证。在FPGA上运行实际的测试数据,观察MIPI D-PHY的性能指标,例如误码率、数据传输速率等。这些指标应该与设计规格及MIPI D-PHY协议相符。 总结来说,通过使用Vivado IP核生成MIPI D-PHY核,并在FPGA平台上进行测试,我们可以验证MIPI D-PHY核的功能和性能,确保其正常工作并符合规格要求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亦枫Leonlew

希望这篇文章能帮到你

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值