MIPI D-PHY的初始化(MIPI Alliance Xilinx)

    DPHY的基本介绍及使用已有很多文章,基本是基于《MIPI Alliance Specification for D-PHY 》的内容,学习时也以此为准,可参考CSDN上的文章。着重讲述MIPI D-PHY的初始化部分

1 D-PHY的功能及使用

        下面的文章讲的不错,既有理论,又有实际示波器抓取的波形。此处不再赘述。

MIPI 系列之 D-PHY_爱洋葱的博客-CSDN博客

2 初始化问题

2.1 Xilinx DPHY使用

在Vivado中使用MIPI D-PHY时,发现slave的clock lane进入ULPS,导致不能正常接收clock(通过ILA抓取IP的ulps指示信号)。

2.2 spec中的状态图

根据spec中的状态图,clk lane比data lane更容易进入ULPS。(贴图两者进入ULPS的图)

2.3 MIPI的初始化要求

    根据mipi dphy spec V1.1中需要master先完成init并驱动总线LP-11,slave再进行初始化可等到足够长的LP-11.

    在xilinx MIPI中 提到了系统级的复位初始化时序。LP-11最少要求100us:master可采用1ms,slave可采用100us。

解决方法:在master init完成后,再对slave DPHY复位初始化(同时在GUI中去掉对ULPS的支持)。若slave先初始化,总线上状态不确定,可能会造成IP进入ULPS而无法退出。

2.4 Xilinx DPHY退出ULPS的TX、RX时序

2.5 在Xilinx DPHY的GUI中去掉ULPS

        在Vivado中DPHY IP GUI中可以去掉对ULPS的支持,精简资源。避免异常进入。

2.6 在Xilinx DPHY的复位要求

3 校准问题

3.1 MIPI SEPC中关于校准

D-PHY 1.1的速率支持到1.5G,且不支持协议自动deskew,仅能通过硬件布线、FPGA中手动增加idelay的方式保证时钟/数据lane的对其关系。

速率更高时spec标准中规定需要校准,且有校准的流程。每次进入HS发送数据前都需要校正,校正模型先发送16'hffff,后接长的010101...(长度根据RX的要求,如2^13 UI),接收端根据01自动调整采样位置。

Xilinx DPHY中<=1.5G在7系列中的IP内,有idelay的参数可以调节,KU+的IP中没有提供。在KU+的IP中当速率>1.5G 时才有deskew的选项,且要求校准模型长度2^13 UI.

4 重点内容梳理

4.1  spec中6.13节的操作流程图

spec中的图,描述了data lane 和clock lane的完整工作流程。从LP进入/推出HS。

 时钟通道

 数据通道

4.2 数据通道与时钟通道的不同

图片来源见水印,原图中应该有笔误,已修正如下(data双向,clk单向)。

1)data 有Escape mode(其中又细分为UPLS,LPDT,Trigger等),进入时序比较复杂。此模式下不要clk lane,时钟从独热码的LP数据中可以恢复;clk lane只有UPLS且进入时序简单;

2)data可以双向,有turnaround,slave发数据给master(速率最大10M/4=2.5M,);clk只能由Master发给slave,单向。

3)数据进入HS时有SOT,即在HS-0保持一段时间后+同步字节(在PHY中同步后剥离,不进入CSI-2)。退出时要根据最后一个数据bit翻转后保持一段时间后LP-11;clk进入HS-0后仅保持一段时间可发时钟,退出时也可保持HS-0即可。

4.3 Data lane 进入ESCAPE mode

1)trriger 模式类似中断,通过在LP模式时发送固定的字节,触发一个事件,如复位;

2)LPDT模式可以发送任意字节的数据;

3) trigger模式,ULP模式退出时要先进入wait模式;

4)进入ESCAPE时有专门的cmd,一个字节的数据。比clk lane进ULPS复杂。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/95001.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Matlab实现生活中的图像信号分类(附上源码+数据集)

在我们的日常生活中&#xff0c;我们经常会遇到各种各样的图像信号&#xff0c;例如照片、视频、图标等等。对这些图像信号进行分类和识别对于我们来说是非常有用的。在本文中&#xff0c;我将介绍如何使用Matlab来实现生活中的图像信号分类。 文章目录 介绍源码数据集下载 介…

Hive-安装与配置(1)

&#x1f947;&#x1f947;【大数据学习记录篇】-持续更新中~&#x1f947;&#x1f947; 个人主页&#xff1a;beixi 本文章收录于专栏&#xff08;点击传送&#xff09;&#xff1a;【大数据学习】 &#x1f493;&#x1f493;持续更新中&#xff0c;感谢各位前辈朋友们支持…

dockerfile 例子(二)

Dockerfile由一行一行的命令语句组成&#xff0c;#开头的为注释行。Dockerfile文件内容分为四个部分&#xff1a;基础镜像信息、维护者信息、镜像操作指令以及容器启动执行指令。 接下来给大家列出Dockerfile中主要命令的说明。 FROM&#xff0c;指定所创建镜像的基础镜像。 …

网站IP流量与来路逆向营销

直接刷主流统计平台任意来路IP&#xff0c;另类思路让客户主动找上门 一般的站长或者网站拥有者都会在自己网站添加统计系统以分析监控用户访问&#xff0c;而其中用户关注最多的是关键词和来路&#xff0c;这样如果我们能在统计来路里把我们自己网站推送给跟我们业务相关的网站…

【笔记】常用 js 函数

数组去重 Array.from(new Set()) 对象合并 Object.assign . 这里有个细节&#xff1a;当两个对象中含有key相同value不同时&#xff0c;会以 后面对象的key&#xff1a;value为准 保留小数点后几位 toFixed 注意&#xff1a; Number型&#xff0c;用该方法处理完&#xff0c;会…

3.0 Dubbo的可扩展机制SPI源码解析

1. Dubbo SPI 架构图 2. Demo ExtensionLoader<Protocol> extensionLoader ExtensionLoader.getExt ensionLoader(Protocol.class); Protocol http extensionLoader.getExtension("dubbo"); System.out.println(http); 上⾯这个Demo就是Dubbo常⻅的写法&am…

树状表格子节点移动 - 在Vue.js中实现上下移动子节点的表格功能

目录 功能介绍 示例 代码 视图部分 逻辑部分 完整代码 功能介绍 本文介绍了如何在Vue.js框架下实现一个树状表格&#xff0c;其中支持选择子节点行的上下移动。通过这个功能&#xff0c;用户可以方便地改变子节点的顺序。代码示例和详细的实现步骤将展示如何使用Vue.js的相…

【前端demo】CSS border-radius可视化 原生实现

文章目录 效果原理代码 前端demo系列目录&#xff1a;https://blog.csdn.net/karshey/article/details/132585901 效果 效果预览&#xff1a;https://codepen.io/karshey/pen/zYyBPBR 参考&#xff1a; Fancy Border Radius Generator (9elements.github.io) https://borde…

《2023年网信人才培训-网络安全从业人员能力素养提升培训》第一期成功举办

随着网络强国和数字中国建设的步伐加快&#xff0c;建设规模宏大、结构合理、素质优良的人才队伍成为一项重要工作。知了汇智作为数字产教融合基地&#xff0c;通过与高校、企业等多方合作&#xff0c;建立了完整的网络安全人才培养生态链。凭借自身技术优势和丰富的产业资源&a…

【小沐学Unity3d】3ds Max 骨骼动画制作(CAT、Character Studio、Biped、骨骼对象)

文章目录 1、简介2、 CAT2.1 加载 CATRig 预设库2.2 从头开始创建 CATRig 3、character studio3.1 基本描述3.2 Biped3.3 Physique 4、骨骼系统4.1 创建方法4.2 简单示例 结语 1、简介 官网地址&#xff1a; https://help.autodesk.com/view/3DSMAX/2018/CHS https://help.aut…

程序开发:构建功能强大的应用的艺术

程序开发是在今天的数字化时代中扮演重要角色的一项技术。通过编写代码&#xff0c;开发人员能创造出无数不同的应用&#xff0c;从简单的计算器到复杂的社交平台。电子商务应用、在线教育平台、医疗记录系统等&#xff0c;都重视程序开发的重要性&#xff0c;通过这其中的交互…

docker 笔记1

目录 1.为什么有docker ? 2.Docker 的核心概念 3.容器与虚拟机比较 3.1传统的虚拟化技术 3.2容器技术 3.3Docker容器的有什么作用&#xff1f; 3.4应用案例 4. docker 安装下载 4.1CentOS Docker 安装 4.2 Docker的基本组成 &#xff1f;&#xff08;面试&#xff09…