大家好,很高興和各位一起分享我的第56篇原創(chuàng)文章,喜歡和支持我的工程師,一定記得給我點贊、收藏、分享喲。
加微信[chunhou0820]與作者進群溝通交流。
MIPI C-PHY是手機中的重要接口,它的速率比D-PHY還要高,其速率單位是symbol/s/lane,而D-PHY的速率單位是bit/s/lane,換算關(guān)系是1 Symbol = 2.28 bits。
以前介紹過D-PHY相關(guān)內(nèi)容:小米MIX4相機技術(shù)揭秘:MIPI D-PHY接口知多少?
今天著重介紹下C-PHY內(nèi)容,包括對協(xié)議的人肉解析、C-PHY不需要時鐘的原因,內(nèi)容較多,建議收藏。
C-PHY和D-PHY在pin map上有個重要的區(qū)別:C-PHY沒有單獨的時鐘通道,它的時鐘隱藏在通信的時序之中。Dphy是每條lane是一對差分線,而Cphy每條lane是3條數(shù)據(jù)線,彼此差分。下圖是使用3 lane的C-PHY接口鏈路示意圖,一條lane包含3條信號線,3條信號線彼此做差分。
同D-PHY一樣,C-PHY也有LP(低功耗)和HS(高速)兩種工作模式,我們著重介紹HS時的特點。
先看下C-PHY的波形,下圖是一條lane中A、B和C三根數(shù)據(jù)線在高速模式時、分別對地的單端信號的波形,可見C-PHY在高速模式時是有高、中、低三種電平狀態(tài)。
這三條線彼此作差后得到的眼圖波形如下圖,三種電平彼此作差,作差后的眼圖有3個窟窿4種電平,從上到下的4個電平依次定義為strong1,weak1,weak0,strong0。
那么是strong是怎么通過單端信號得到的呢?
Wire state(線狀態(tài))
C-PHY按照信號線不同高低電平搭配被分成6個wire state,分別為+X、-X;+Y、-Y;+Z、-Z,詳見下表。
舉例說明:當(dāng)A、B、C三條線在HS模式下,分別為高、低、中這三種電平,則將此時的wire state定義為+X,見下圖+X部分;同理,當(dāng)A、B、C分別為高、中、低時,則定義為-Z。
Strong 1、weak1的定義
CPHY每條lane分為A、B、C三根信號線,兩兩作差就是Va-Vb、Vb-Vc、Vc-Va,得到的差具有4種電平,從上到下分別被定義為strong1,weak1,weak0,strong0。比如上圖中,+X狀態(tài)下,Va-Vb(紅-綠)得到的電平最高,被定義為strong1;-Y狀態(tài)下,Va-Vb得到的電平為弱高,被定義為weak1。以此類推就可以得到weka0和strong0了,就和下面測試時的眼圖對應(yīng)上去了。
協(xié)議解析
我們要傳輸?shù)男畔⑹潜痪幋a到wire state中的,上文已經(jīng)介紹CPHY具有+x、-x、+y、-y、+z、-z 6種wire state,當(dāng)信號處于其中一種狀態(tài)時,只能往剩下的5中狀態(tài)切換,不會保持不變,哪怕CPHY傳輸?shù)臄?shù)據(jù)流不變,信號本身也會一直變化,信息被編碼到狀態(tài)與狀態(tài)切換之中,被稱之為symbol編碼,換句話說,一共只有6條路,你占了一條,接下來只能往剩下的5條路里走。
舉例如下,wire state從+X到-Y變化時,根據(jù)下面的狀態(tài)轉(zhuǎn)移圖,傳輸?shù)男畔ⅲ╯ymbol)就是011;從-Y到-Z傳輸?shù)男畔⒕褪?10,如果想要繼續(xù)保持傳輸010,那么wire state就要從-Z變到-X,數(shù)據(jù)和時鐘信息都被編碼到symbol中,即都被編碼到切換的過程中了,因此Cphy也就不需要格外拉一條時鐘線了。
以上就是CPHY的介紹。
點贊、分享,讓知識變得更簡單。