时序MIPI调试总结

调试  时间:2021-02-19  阅读:()

mipi调试经验

以下是最近几个月在调试MIPIDSI /CSI的一些经验总结因为协议有专门的文档所以这里就记录一些常用知识点

一、 D-PHY

1、传输模式

LP Low-Power 模式用于传输控制信号最高速率10 MHz

HSHigh-Speed模式用于高速传输数据速率范围[80 Mbps 1Gbps]perLane

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

2、 Lane States

* LP mode有4种状态 LP00、 LP01 0 、 LP10 1  、 LP1 1 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)modeand Control mode下面是从停止状态进入相应模式需要的时序

*Escape mode进入时序 LP1 1→LP10→LP00→LP01→LP00退出时序LP10→LP1 1

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

*High-Speed mode进入时序 LP1 1→LP01→LP00→SoT(0001_1 101)退出时序 EoT→LP1 1 时序图如下

1

*Turnaround进入时序 LP1 1→LP10→LP00→LP10→LP00退出时序LP00→LP10→LP1 1

这是开启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。

二、 DSI

1、线路构成

在DSI中需要1根时钟线以及1~4根数据线。

2、两种接口的LCD

*Command mode 对应MPU接口

*Video mode 对应RGB接口

该模式下视频数据只能通过HS mode传输。

3、数据包类型

短包 4 bytes 由3部分组成

*Data Identifier(DI) * 1 byte Contains the Virtual Channel[7:6]and DataT yp e[5:0].

*Packet Data*2byte Length is fixed at two bytes

*Error Correction Code(ECC)* 1 byte al lows single-bit errors to be correctedand 2-bit errors to be detected.

长包 6~65541 bytes 同样由3部分组成

*Packet Header(4 bytes) -包头

Data Identifier(DI)* 1byte Contains the Virtual Channel[7:6]and DataT yp e[5:0].

Word Count (WC) *2byte defines the numberof bytes in the Data Payload.

2

Error Correction Code(ECC)* 1 byte al lows single-bit errors to be correctedand 2-bit errors to be detected.

*Data Payload(0~65535 bytes) -有效数据

Length=WC×bytes

*Packet Footer(2 bytes) Checksum-包尾

If the payload has length 0, then the Checksum calculation results in FFFFhIf the Checksum isn’tcalculated, the Checksum value is 0000h

4、从控制器到外设发送的包类型

如果希望从外设读取数据或者状态则在处理器发送完读取命令后还需要发送BTA命令非读取命令在外设接收成功后会返回trigger message 0x84。

5、从外设到处理器数据包类型

3

返回的数据一般分为4个类型

*Tearing Effect (TE) trigger message(BAh)

*Acknowledge trigger message(84h)

*Acknowledge and Error Report short packet (Data Type is 02h)

*Response to Read Request short packet or long packet

Generic Read Response、 DCS Read Response 1 byte,2byte,multi byte读取数据返回值解析示例如下

[cpp] view plain copy

6、 Video模式的3种数据格式

*Non-Burst Modewith Sync Pulses

*Non-Burst Mode with Sync Events

*Burst Mode

*调试记录

LCD半边闪屏问题原厂给的信息分析了系統板送出的video modeti ming資訊摘要如下

HSCLK: 160MHz

Per lane bit-rate:320Mbps(UI=3.125ns)

HS SoT HS-prepare+HS-zero約155ns

由上述的timing懷疑與現象是因為IC HS data settle timing搭配不當

5

所導致

看来是我们输出的mipi信号HS-prepare+HS-zero比LCD默认设置短引起的。还有随机整屏闪动的问题通过调节VFP和VB P的值调到了理想状态。另外LCD的VCC在使用mos管控制后休眠后会有2.0V的悬浮电压通过RC电路将电压放掉将C 78换成了10 K电阻。

LCD电路上有几个比较重要的电压:AVDD、VCC、VGH、VGL、HAVDD、VCOM由AVDD通过电阻分压得到

*唤醒慢的问题

在最初调试的几款LCD里面初始化cmd都比较少后来在调试一款IPS屏的时候发现唤醒需要3秒左右这款LCD初始化cmd有100多条之前在调试一款LCD的时候每条cmd发送之后需要delay 10ms再发下一条cmd所以在这款LCD这里不能有delay并且经过调试在确保发送成功的情况下将LP的传输速度提高了3倍这里需要读取每条cmd的返回值0x84确认命令是否发送成功 优化后唤醒时间不到1秒。

*LCD参数理解更正

才发现之前一直对LCD的几个参数HFP、 HBP、VFP、VBP理解有错误正确的应该是以同步信号HSYNC、 VSYNC为基准在同步信号之前的称为Front在同步信号之后的称为Back而不是之前理解的以有效像素为基准。

*LCD显示呈锯齿状问题

这两天12.1 1 还调试了一款540x960分辨率的mipiLCD在开始的时候一直点不亮和供应商确认了好久无意间才发现是他们给的初始化代码是错的使用正确的初始化代码就能点亮了不过显示出来的图像却是呈锯齿状的即没有对齐。之前在别的平台也遇到过类似问题也就是分辨率不是16的整数倍LCD control ler在取数据的时候会对不齐。边研究Datasheet边和ASIC同事讨论后来确定了一个方案 即在DSI、 LCD寄存器里面设置分辨率为540x960以让LCD正确识别信号但framebuffer需要设置为544 x960以对齐并且设置Source pitch寄存器为544这样显示就正常了相当于frameb uffer里每一行的最后4个pixe l会被LCD control ler丢掉。

今天12.12在和ASIC同事的讨论下更正了之前的理解 LCD control ler在计算取数据的时候地址是根据xy坐标来算的差不多是address=y*pitch+x+base pitch就是一行pixel在内存里的大小这个至少是要对齐到8byte 因为bus宽度是8byte如Data sheet中的描述”Source pitch forRGB channel ,QWORD al igned if l inear mode“。之前计算pitch值的公式为xres/8*b i ts_pe r_p i xe l /8如果xres=540 b i ts_pe r_p i xe l=32计算的结果因为取整的原因为0x10c实际上正确的值应该是0x10e所以需要将公式

6

改为 xre s* (b i ts_p e r_p i xe l /8) /8即在每个像素占4 b yte的情况下只要xre s为偶数就可以满足对齐的要求而不用改为544。

7

HoRain Cloud:国内特价物理机服务器,镇江机房,内地5线BGP接入,月付499元起

horain怎么样?horain cloud是一家2019年成立的国人主机商家,隶属于北京辰帆科技有限公司,horain持有增值电信业务经营许可证(B1-20203595),与中国电信天翼云、腾讯云、华为云、UCloud、AWS等签署渠道合作协议,主要提企业和个人提供云服务器,目前商家推出了几款特价物理机,都是在内地,性价比不错,其中有目前性能比较强悍的AMD+NVMe系列。点击进入:horain...

Vinahost - 越南VPS主机商月6美元 季付以上赠送时长最多半年

Vinahost,这个主机商还是第一次介绍到,翻看商家的介绍信息,是一家成立于2008年的老牌越南主机商,业务涵盖网站设计、域名、SSL证书、电子邮箱、虚拟主机、越南VPS、云计算、越南服务器出租以及设备托管等,机房主要在越南胡志明市的Viettle和VNPT数据中心,其中VNPT数据中心对于国内是三网直连,速度优。类似很多海外主机商一样,希望拓展自己的业务,必须要降价优惠或者增加机房迎合需求用户...

特网云(1050元),IP数5 个可用 IP (/29) ,美国高防御服务器 无视攻击

特网云特网云为您提供高速、稳定、安全、弹性的云计算服务计算、存储、监控、安全,完善的云产品满足您的一切所需,深耕云计算领域10余年;我们拥有前沿的核心技术,始终致力于为政府机构、企业组织和个人开发者提供稳定、安全、可靠、高性价比的云计算产品与服务。官方网站:https://www.56dr.com/ 10年老品牌 值得信赖 有需要的请联系======================特网云美国高防御...

调试为你推荐
百度k站百度k站为什么郭吉军新媒体营销的咨询行业有哪些好的老师?万网核心代理我想买个域名和空间,我一朋友给我介绍万网代理环宇网络空间商,他们的空间稳定吗,价格怎么样,咨询师的服百度抢票浏览器猎豹浏览器,360抢票,百度卫士抢票哪个抢票工具好?童之磊湖北中文在线数字出版有限公司怎么样?如何建立一个网站如何建立一个网站godaddyGodaddy域名怎么接受ios7固件下载iOS的固件有正版盗版之分吗?我看到了蜂威网有iOS7的固件想下载试用一下,那里是测试版是正版吗畅想中国未来的中国是什么样子的2012年正月十五2012年正月十五 几月几号
代理域名备案 warez 免费ddos防火墙 镇江联通宽带 linux空间 赞助 泉州移动 hdd yundun 网站加速软件 阿里云邮箱登陆 腾讯网盘 买空间网 大化网 黑科云 umax 双十二促销 上海联通 卡巴斯基官方下载 广州服务器数据恢复 更多