MIPI及DSI协议介绍

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MIPI及DSI协议介绍郑明桑sam0030@126.comMIPI是什么vMobileIndustryProcessorInterface移动通信行业处理器接口vMIPI包括:DCS显示命令接口DBI显示总线接口DPI显示像素接口DSI显示串行接口CSI显示摄像接口MIPI优点v高速率最多四个通道,每个通道最大传输1Gbpsv低功耗LowPower1.2VHighSpeed200mVv低成本:PIN脚更少,PCB占用空间更少v抗干扰(EMI,ESD)高速传输信号200mV,差分信号与其他差分信号对比vTMDS:最小化差分信号传输vLVDS:低压差分信号D-PHY层定义D-PHY介绍v通道(lane)v1个单向clock通道v1到4个data通道v传输模式vLowPower模式:用于控制,最大10Mbps此时Data0的D+,D-是两个独立的信号线vHighSpeed模式:数据传输,80Mbps—1Gbpsv数据格式LSBfirst,MSBlastv传输方向只有Data0且在LP模式下,才能反向传输,其他都是单向的LaneState&LineLevelvLaneState:vLPMode:LP-00,LP-01,LP-10,LP-11(DpDn)vHSMode:HS-0,HS-1(差分信号)LaneModulevLP-CD:LowPowerContentionDetector(LP争用探测器)vLP-RX/TXHS-RX/TXOperatingModevOperatingMode:v每个模式都必须从StopState(LP-11)开始vEscapemoderequest(LP-11→LP-10→LP-00→LP-01→LP-00),Exit(LP-10→LP-11)vHigh-Speedmoderequest(LP-11→LP-01→LP-00),Exit(EOT→LP-11)vControlMode(TurnaroundBTA)request(LP-11→LP-10→LP-00→LP-10→LP-00),Exit(LP-00→LP-10→LP-11)vMode切换图EscapeModevEscape模式是在LP状态下的特殊模式,只有进入该模式,下面这些功能才能实现:LPDT:LowPowerDataTransmissionULPS:Ultra-LowPowerStateTrigger(比如Remotetrigger,AcktriggerandTEtrigger)v一旦进入Escape模式,后面必须跟8-bit的entry命令才能实现对应ActionEscapeModev以LPDT为例,发送LCDsleepout0x11命令,注意LSBfirstEscapeModevULPS:这种状态下,line处于Space状态,退出这种状态需要Mark-1状态唤醒High-SpeedModevHS模式所有通道同时开始,但每个通道可能不同时结束,clock必须也在hs模式,并且是双边沿触发,也就是data速率是clock的两倍v完整的hs序列如下图,退出EOT+LP11High-SpeedModev下面是HS下发送0x29displayon时序图BTAModevItisdifferentbetweenDSIandotherinterface,otherIFuseReadsignaltoletslavesendreadresponse.ButDSIintegrateallcontrolsignalinDSIData/Clocklane.vSoDSIneedaprocedureenablesinformationtransferintheoppositedirectionofthecurrentdirection.v用于读取外色参数(如ID)或确认发送包外设是否接收正确BTAModevAcknowledgeisaTriggerMessage(00100001)sentwhenallprecedingtransmissionssincethelastperipheraltohostcommunicationisreceivedbytheperipheralwithnoerrors.DSI接口vDSI(DisplaySerialInterface)vDSI收发接口,如下图:DSI传输模式vCommandMode类似MPU接口,需要IC内如GRAM。通过ACK和error向Host报告(DataLane0)vVideoMode类似RGB接口,没用GRAM,需要不停往panel刷数据。(相对于command模式,ESD差一点,曾经有项目出现过)v传输模式HS和LP两种,对于returningdata(比如cmdmode),必须使用DataLane0并且在LPMode短数据包结构v两种数据包类型:短数据包和长数据包v虚拟数据通道两个bit最多表示4个VirtualChannelvMultipleindependentdatastreamsforuptofourperipheralsaresupportedbythisspecification.ThedatastreamforeachperipheralisaVirtualChannelv一些高分辨率屏内部可能含有两个或更多独立的DriverIC,这个时候需要用到多VC(实际中,还没碰到需要多个VC的display)VirtualChannelv手头有项目用到800x1280LCD,内部是有两个DriverIC,但跟屏厂工程师确认过,两个IC并不是完全独立的,中间有同步信号连接,也就是只需要1个VC;v工作方式:扫描方向,Master/Slave等设置好之后,IC根据内部控制信号和同步信号将前400pixel数据送往屏半边,后400pixel数据送往另半边,下图是屏厂提供:长数据包结构vSoT:开始传输EoT:结束传输LPS:LP模式正向(ForwardDirection)数据包类型正向数据包类型vDCS读写命令,可带参数,可用于LCD下初始化参数命令;vGeneric读写命令,是协议规范外的命令,通常是一些IC定制的(比如IPhone4LCD),只要确保主机和外设同意这些数据的格式和解释即可。通常和DCS通用:比如0x05和0x13通用,0x15和0x23通用;v0x22/0x32:切换开关视频显示(外设)模块。有些IC休眠时需要关闭;v0x37:设置最大返回包大小,比如在读ID前发送;v0x01&0x11&0x21&0x31:用于SyncEvent模式下精确表示同步事件的开始和结束。为了尽可能精确体现一个同步事件,开始标识位必须放第一位,结束标识位放最后一位;v0x0E&0x1E&0x2E&0x3E&0x39:各种RGB类型数据流传送控制,其中0x39用于commandmode,接下来详细介绍。反向数据包类型v外设向Host反馈有四个基本类型v数据封装包类型ErrorReportv累计多个transactionerror,直到hostBTA时反馈v一个errorreport含2个bytevBIT0-BIT7D-PHYerrorsvBIT8,BIT9ECCerrorsv其他BITDSIerrorsWritePicture—CommandModevRGB565和RGB888分别占用2和3个byte,这个无异议v重点分析RGB666,有18bitpacked和loosely:18bitPacked/pixelWritePicture—CommandModevCommandMode下DataType都是0x39vRGB565和RGB888类似18bitloosely/pixelWritePicture—VideoModevVideoMode,RGB565,RGB666packed,RGB666loosely,RGB888对应的DataType分别是0x0E,0x1E,0x2E,0x3E,以RGB888为例:数据传输例程v两个数据通道数据传输例程v三个数据通道发送方数据处理接收方数据处理VideoModevVideoMode有三个子模式:(1)Non-BurstModewithSyncPulses(2)Non-BurstModewithSyncEvents(3)BurstModeNon-BurstModewithSyncPulsesvAccuratelyreconstructoriginalvideotiming,includingsyncpulsewidths.vThegoalistoaccuratelyconveyDPI-typetimingovertheDSIserialLink.Non-BurstModewithSyncEventsv和SyncPulses类似,但只同步每个脉冲的起始位BurstModevInthismode,blocksofpixeldatacanbetransferredinashortertimeusingatime-compressedburstformat.v低功耗,高效率BLLPvBLLP:BlankingorLowPowerperiodv通常有以下几个情况:1.HostandpanelremaininIdleMode.LanesareinLP-11state.2.Hosttransmitsoneormorenon-videopacketstotheperipheralusingEscapemode(low-powerTx).3.Hosttransmitsoneormorenon-videopacketstotheperipheralusingHSMode,forexampletransmitblankingpacketsorDCScommands.4.Ifthepreviousprocessor-to-peripheraltransmissionendedwithBTA,paneltransmitsoneormorepacketstothehostprocessorusingEscapeMode.5.HostTransmitoneormorepacketstoadifferentperipheralusingadifferentvirtualChannelID(VC).ClockForVideoModevContinuousClockModeClock在传输数据包时持续工作在hs模式MIPI协议规定所有DSI收发器必须支持vNon-continuousClockMode可选,一般在Verticalblanking和Horizontalblanking插入LPS。碰过不支持这个模式的LCD,比如Iphone4和IpadminiLCD,还有一些MIPI转换芯片等CommandModevDisplay拥有自己的timing控制器和GRAM,为了防止TearingEffect,必须主动通知HostvMIPIDSI定义一个标准的TEtrigger消息,Host一旦收到这个消息,自动发送像素数据CommandModev完整的波形帧率测量v帧率测量:测量两个VerticalBlanking之间的时间间隔行间距测量vLineDuration(TL):可以测量VerticalBlanking或Active区域LP-示波器分析vLP传输以EscapeEntry开始,重点寻找EscapeMode(LP-11-10-01-00)v下面是完整的LPDT流程HS-示波器分析vHSMode对示波器要求比较高,除了高精度,还需要4个通道测量,Dp,Dn,Clock和差分输出信号(Dp和Dn相减)HS-示波器分析vDDR(DualDataRate):注意clock是双边采样的v下图中绿色表示(Dp–Dn)信号高通DSI参数vContinuousClock设置//在LCD初始化之前uint32data=MIPI_INP(MIPI_DSI_BASE+0x0A8);mipi_set_tx_pow

1 / 49
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功