全球視訊!MIPI DPHY&CPHY接口描述及FPGA實(shí)現(xiàn)要點(diǎn)

2023-06-28 11:06:49 來源:ZYNQ分享客

MIPI是移動(dòng)領(lǐng)域最主流的視頻傳輸接口規(guī)范,沒有之一,目前應(yīng)用最廣泛的是MIPIDPHY和MIPI CPHY兩組協(xié)議簇(另外還有MIPI MPHY,屬于高速Serdes范疇,應(yīng)用不那么廣泛),其中CSI-2主要用于圖像接入(一般是接Sensor),DSI-2主要用于圖像輸出(一般是輸出到顯示屏)。

本文主要以CSI-2為例進(jìn)行仔細(xì)說明,DSI-2雷同,舉一反三即可。

1 接口協(xié)議比較

關(guān)于MIPI DPHY和MIPI CPHY的詳細(xì)物理層協(xié)議和CSI-2/DSI-2協(xié)議咱們自己下載官方英文版細(xì)細(xì)品讀即可,這里主要講關(guān)鍵點(diǎn)。


(資料圖片)

1.1 物理層

開局一張圖(見下圖1),內(nèi)容是干貨,MIPI CPHY和DPHY物理層之間的差異全在這張圖里面了。

圖1 MIPI DPHY和CPHY物理層直觀比較圖

從圖1可以看出,最直觀的差異是DPHY是源同步系統(tǒng),有專門的同步時(shí)鐘通道,但是CPHY沒有同步時(shí)鐘,時(shí)鐘是嵌入到數(shù)據(jù)中的。顯然的,實(shí)現(xiàn)嵌入時(shí)鐘的目的是為了增加帶寬,肯定會(huì)涉及到編碼,物理層的結(jié)構(gòu)必然是完全不同,單從線路上看,CPHY是一個(gè)A/B/C三線系統(tǒng)。

MIPI DPHY的物理層,咱們大家都很清楚,一對(duì)時(shí)鐘,幾對(duì)數(shù)據(jù),接收端根據(jù)時(shí)鐘邊沿采樣數(shù)據(jù),找到0xB8的同步頭,物理層實(shí)現(xiàn)就算是齊活了,但MIPI CPHY不同,因?yàn)樗粋鬏敃r(shí)鐘,那么要接收CPHY的數(shù)據(jù),必須先恢復(fù)時(shí)鐘,然后再用恢復(fù)的時(shí)鐘采樣數(shù)據(jù)并尋找同步頭,最后還需要進(jìn)行數(shù)據(jù)解碼恢復(fù)出最初的發(fā)送的內(nèi)容(發(fā)送端的過程相反)。

那么,CPHY物理層到底是怎么實(shí)現(xiàn)嵌入時(shí)鐘這一關(guān)鍵步驟的呢?請(qǐng)看下圖2和圖3。

圖2 CPHY“線態(tài)”變化圖

圖3 CPHY接口等效電路圖

結(jié)合圖2和圖3,CPHY物理鏈路(A/B/C線)上傳輸?shù)氖遣煌碾娖剑ㄟ^A-B,B-C,C-A的電平運(yùn)算,恢復(fù)出+x,-x,+y,-y,+z,-z六種不同的線態(tài),通過前后線態(tài)的旋轉(zhuǎn)方向,相位和極性恢復(fù)出編碼符號(hào),再通過連續(xù)7組符號(hào)解碼出16bit的數(shù)據(jù),整個(gè)過程見下圖4。

圖4 數(shù)據(jù)恢復(fù)過程圖

為何要選擇這比DPHY復(fù)雜多的物理層呢?一切都是為了提升帶寬,從圖2可以看出,某種線態(tài)的可能有5種不同的變化,那么它每個(gè)符號(hào)可編碼的數(shù)據(jù)為log 2(5) = 2.3219,理論帶寬為DPHY的2.3219倍,每16bit數(shù)據(jù)編碼成7個(gè)符號(hào),帶寬優(yōu)勢(shì)明顯。

1.2 CSI-2層

MIPI CPHY和MIPI DPHY的CSI-2層協(xié)議大致相同,細(xì)節(jié)上的差異如下:

(1) DPHY以Byte為單位進(jìn)行數(shù)據(jù)組織;CPHY以16bit Word為單位進(jìn)行數(shù)據(jù)組織;

(2) DPHY 的短幀和長(zhǎng)幀的幀頭信息與數(shù)據(jù)的組織方式相同;CPHY則是固定每個(gè)通道為6×16bit的幀頭信息(短幀信息),見下圖5。

圖5 CPHY CSI-2數(shù)據(jù)組織

因此,在CSI-2解包邏輯尚無法完全共用。

2 FPGA實(shí)現(xiàn)

MIPI接口電平比較特殊,LP模式下為1.2V的LVCMOS電平,DPHY在HS模式下為SLVS-400電平,CPHY在HS模式下需要做電平減法運(yùn)算。

2.1 硬件電路

就目前而言,直接支持MIPI DPHY的FPGA主要有Xilinx UltraScale+系列(1.5Gbps/Lane Max)LatticeCrosslink(1.5Gbps/Lane Max)及Lattice Crosslink NX(2.5Gbps/lane Max),其它型號(hào)的PFGA均需添加額外的電平轉(zhuǎn)換電路將信號(hào)轉(zhuǎn)換為L(zhǎng)VDS。

(1) DPHY,低于800Mbps/lane速率,使用電阻網(wǎng)絡(luò)即可;高速率的需選用專門的電平轉(zhuǎn)換芯片,如MC20901、LT89101L等;

(2) CPHY,因?yàn)樾枰鰷p法運(yùn)算,故可用專門的告訴比較器(或Repeater),結(jié)果以LVDS電平輸出。

2.2 邏輯實(shí)現(xiàn)

邏輯實(shí)現(xiàn)的差異主要在物理層,CPHY和DPHY完全不同。

2.2.1 MIPI DPHY

MIPI DPHY屬于源同步系統(tǒng),轉(zhuǎn)換為L(zhǎng)VDS電平后就是一個(gè)通用的ISERDES邏輯,主要是時(shí)鐘方案有兩種考慮:

第一種:使用PLL、MMCM或DLL,此種方案對(duì)PLL的鎖定時(shí)間有較高的要求,通常要求us級(jí)才能保證在時(shí)鐘不連續(xù)模式下正常鎖定,當(dāng)然具有專用DPHY邏輯的器件有專門的PLL電路實(shí)現(xiàn)。這種方案的好處是不易受時(shí)鐘毛刺的影響,接收較為穩(wěn)定。

第二種:在源同步時(shí)鐘基礎(chǔ)上使用專門的時(shí)鐘buffer分頻(如Xilinx 7系列的BUFR),這種方案可適應(yīng)任意速率,不需要預(yù)先設(shè)定速率來配置鎖相環(huán)電路,缺點(diǎn)是易受時(shí)鐘毛刺影響,出錯(cuò)率稍高。

2.2.2 MIPI CPHY

MIPI CPHY的難點(diǎn)是時(shí)鐘恢復(fù),在FPGA系統(tǒng)中,沒有針對(duì)MIPI CPHY的專用時(shí)鐘恢復(fù)電路(CDR),因此,需要充分利用CPHY的線態(tài)編碼均衡和FPGA可編程延時(shí)電路的特點(diǎn)來實(shí)現(xiàn)CDR,這種方案理論上要求FPGA內(nèi)部延時(shí)邏輯約精確越好,LUT時(shí)鐘性能越高,這樣會(huì)把時(shí)鐘恢復(fù)誤碼和抖動(dòng)降到最低。時(shí)鐘恢復(fù)完成后,線態(tài)解碼、符號(hào)解碼和數(shù)據(jù)恢復(fù)流程見圖4。

總之,MIPI CPHY在MIPI DPHY的基礎(chǔ)上成倍增加了帶寬,減少了線對(duì)數(shù)量,在高速大靶面傳感器和高分高刷新移動(dòng)設(shè)備OLED應(yīng)用上越來越普及。

2.2.3 資源占用

Panda君在Xilinx kintex-7系列FPGA對(duì)MIPI DPHY+CPHY 接收IP進(jìn)行了驗(yàn)證,占用資源SliceLUTs為2352個(gè),Slice Registers3401個(gè)。本方案亦可在紫光同創(chuàng)、高云等國(guó)產(chǎn)FPGA上降速實(shí)現(xiàn)。

圖5 MIPI DPHY+CPHY Vivado工程圖

標(biāo)簽:

上一篇:虛擬機(jī)系統(tǒng)的使用與常見問題_天天熱文
下一篇:最后一頁