日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

GMSL

 攪吧攪吧小閣老 2022-02-25

首先,了解一下什么是GMSL

在這里插入圖片描述

GMSL(Gigabit Multimedia Serial Links),中文名稱為千兆多媒體串行鏈路,是Maxim公司推出的一種高速串行接口,適用于音頻,視頻和控制信號的傳輸。

通信介質(zhì)支持同軸電纜以及屏蔽雙絞線,使用50Ω同軸電纜或者100Ω屏蔽雙絞線(STP)時,長度可達15m甚至更長

其核心技術(shù)為串行器/解串器技術(shù),簡稱SerDes.首先通過串行器將并行數(shù)據(jù)流轉(zhuǎn)為串行數(shù)據(jù)流,然后通過更高的頻率進行傳輸,之后通過解串器將接收到的串行數(shù)據(jù)流轉(zhuǎn)換為并行數(shù)據(jù)流。

GMSL誕生的意義

GMSL的意義在于解決了音頻,視頻和控制信號的高速傳輸問題。

在GMSL誕生之前,面對大量的數(shù)據(jù)傳輸一般采用的方法是通過并行總線增加帶寬,一根線傳輸不夠,我10根線總夠了吧,10根還不夠,我繼續(xù)往上加。這種方式面臨一個問題,就是線束會特別多,在工業(yè)生產(chǎn)中,大量的線束意味著增加成本和重量,同時也會增加EMI電磁干擾。因此線束的數(shù)量一般不能太多,但面對大量的數(shù)據(jù),我又該怎么傳輸呢?還有一個辦法就是增加頻率,我之前一秒發(fā)10組數(shù)據(jù),我現(xiàn)在改成一秒發(fā)100組,這種方式在數(shù)據(jù)量不算太大時,是可以實施的。但當數(shù)據(jù)量達到一定量級后,高頻率的發(fā)送數(shù)據(jù)會使并行總線的劣勢顯示出來了。

并行總線傳輸數(shù)據(jù)的前提是使用同一時序(同時發(fā)送,同時接收)。當頻率過高時,數(shù)據(jù)傳送難以和時鐘同步,同時布線的長度稍有差異,也會導致同步困難,另外,提升時鐘頻率還容易引起信號線間的相互干擾??傊?,一系列的問題表明高速的數(shù)據(jù)傳輸并行總線是無法勝任的,這也是目前并行總線的技術(shù)瓶頸所在。

并行總線無法勝任高數(shù)據(jù)流傳輸,于是人們又把目光集中到串行總線上。想了想,串行總線就一根,不存在信號線之間的干擾,而且也沒有同一時序問題,只需提高頻率,就能進行高數(shù)據(jù)流傳輸,而且工業(yè)上,串行總線一般使用差分信號進行傳輸,這更加保證了信號的準確性??梢哉f,目前面對高數(shù)據(jù)流的傳輸,大家一般都會采用串行總線,差分信號傳輸。

以ADAS攝像頭為例,這也是GMSL應(yīng)用的主要領(lǐng)域。一般來講,攝像頭除了對外發(fā)送捕獲到的圖像數(shù)據(jù)外,還會發(fā)送幀同步信號,行同步信號,像素時鐘等信息,此外還有電源供給等等,它是由許多信號線組成的一個并行總線,之前我們說過,并行總線在高速的數(shù)據(jù)傳輸過程中,是不占據(jù)優(yōu)勢的,因此我們需要將這些并行的信號合并為串行信號,再通過更高頻率進行傳輸。

辦法可能看起來很簡單,但其中涉及的技術(shù)卻是很復(fù)雜的,需要考慮數(shù)據(jù)流的合并、回原、帶寬以及穩(wěn)定性等等問題,目前掌握這項技術(shù)的只有Maxim和TL兩家。

Maxim將這種串行器/解串器技術(shù)稱為GMSL;
TL將串行器/解串器技術(shù)稱為FPD Link,現(xiàn)已發(fā)展到第三版本:FPD Link III

這兩家旗下分別有相對應(yīng)的串行器和解串器產(chǎn)品,一般是為攝像頭供應(yīng)商服務(wù),集成到攝像頭內(nèi)部,作為OEM的二級供應(yīng)商。

今天我們的內(nèi)容只涉及GMSL

GMSL的通信機理

下圖為GMSL在ADAS攝像頭中的應(yīng)用,其大體流程如下:
在這里插入圖片描述
具體描述:

  • 圖像傳感器Image Sensor將捕獲的光信號轉(zhuǎn)為數(shù)字信號,經(jīng)CSI2協(xié)議傳輸給串行器(MAX9295A),
    傳輸內(nèi)容包括:圖像數(shù)據(jù)信息,像素時鐘,行同步信號,幀同步信號,其中raw12表示攝像頭的傳輸數(shù)據(jù)格式為原始數(shù)據(jù)raw格式,每個像素點有12bit數(shù)據(jù),30fps表示每秒發(fā)送30張圖像
  • 串行器接收到數(shù)據(jù)信息后,對信息進行串行化處理,將數(shù)據(jù)整理成包的形式,然后通過同軸電纜,將包以串行的形式發(fā)送出去,我們注意到在通過同軸電纜時,有兩個方向的數(shù)據(jù)流傳輸,其中一個是前向通道,用于發(fā)送攝像頭捕捉的圖像數(shù)據(jù),其帶寬為6Gbps,還有一個為回饋通道,用以接收應(yīng)答信息,帶寬為187Mbps,這兩個通道的傳輸速率是不一樣的,可以根據(jù)實際需要進行設(shè)定,這也是GMSL的一大特色
  • 之后解串器會接收到串行器串行化的數(shù)據(jù),對數(shù)據(jù)再進行解串,使數(shù)據(jù)回復(fù)至原來模樣,然后將原始數(shù)據(jù)傳給FPGA,這個一個定制電路板,一般圖像處理器ISP模塊會集成到里面,原始數(shù)據(jù)其實就是發(fā)送給了FPGA里面的ISP模塊,在它里面對數(shù)據(jù)進行一些算法處理,最終輸出RGB或者YUV格式
  • 圖中是將處理好的數(shù)據(jù)發(fā)送給了LCD(液晶顯示器),但在自動駕駛中,這個地方就會有些差異,ISP會將處理好的圖像數(shù)據(jù)發(fā)送給FPGA里的AI芯片,通過卷積神經(jīng)網(wǎng)絡(luò)(CNN)對圖像進行分類,檢測,跟蹤等等,然后根據(jù)實際情況,指揮FPGA中的MCU對底盤進行控制,以達到自動駕駛的目的

GMSL數(shù)據(jù)傳輸

本文以MAX96711產(chǎn)品文檔為例,介紹GMSL數(shù)據(jù)傳輸?shù)奶攸c:

MAX96711產(chǎn)品描述
  • 該設(shè)備可在各種輸入寬度和字數(shù)下工作,串行數(shù)據(jù)速率高達1.74Gbps
  • 高帶寬模式提供116MHz的并行時鐘速率,具有12位視頻數(shù)據(jù)和2位同步(HS/VS)數(shù)據(jù)
  • 嵌入式9.6kbps至1Mbps控制通道程序
  • 序列化程序、反序列化程序和任何連接的UART或I2C外圍設(shè)備。
  • 為了促進安全應(yīng)用,該設(shè)備具備視頻和控制數(shù)據(jù)的CRC保護。
  • 控制信道重傳和高抗擾度模式減少位錯誤對通信的影響
串行鏈路信號和數(shù)據(jù)格式

序列化程序?qū)斎氲牟⑿袛?shù)據(jù)進行加擾,然后將其與前進控制數(shù)據(jù)相結(jié)合。這個數(shù)據(jù)之后會進行編碼然后以幾倍于輸入字速率的單個序列化比特流進行傳輸(取決于總線寬度)。反序列化程序接收串行數(shù)據(jù)并恢復(fù)時鐘信號。然后,數(shù)據(jù)將被反序列化、解碼并解擾為并行輸出數(shù)據(jù)和前向控制數(shù)據(jù)

工作模式

GMSL設(shè)備可配置為以多種模式運行(取決于應(yīng)用程序)。這些模式可以更有效地利用串行帶寬。其中大部分設(shè)置在系統(tǒng)設(shè)計期間設(shè)置,并使用外部配置引腳或通過寄存器位進行配置。

視頻鏈路和配置鏈路

在正常工作中,序列化程序以視頻鏈路模式運行(serializer SEREN=1)將視頻數(shù)據(jù)和控制數(shù)據(jù)通過串行鏈路發(fā)送。在序列化程序中設(shè)置SEREN=0關(guān)閉序列化。序列化程序以視頻鏈路模式啟動,需要有效的PCLK才能運行。當PCLK不可用時,配置鏈路可用于設(shè)置串行器,解串器和外圍設(shè)備。在序列化程序中設(shè)置SEREN=0和CLINK=1以啟用配置鏈接(SEREN=1強制序列化程序進入視頻鏈接模式)。一旦PCLK被建立,就打開視頻鏈路(SEREN=1)。
默認情況下,視頻鏈路模式需要有效的PCLK才能工作。在序列化程序中設(shè)置AUTO_CLINK bit=1和SEREN=1,使設(shè)備在視頻鏈路和配置鏈路之間自動切換,當PCLK不存在時。

單/雙模式

單/雙模操作將可用的1.74Gbps帶寬配置為各種寬度和字速率。單模操作與所有GMSL設(shè)備和串行器兼容,每個串行字產(chǎn)生一個并行字。雙模式為每個串行字序列化兩個半寬并行字,從而使并行字速率范圍增加2倍(與單模式相比)。對于單模式操作,設(shè)置DBL=0;對于雙模式操作,設(shè)置DBL=1。

HS/VS編碼

默認情況下,GMSL為HSYNC、VSYNC和DE(如果使用)分配一個視頻位插槽。使用HS/VS編碼,該設(shè)備將對特殊數(shù)據(jù)包進行編碼,以同步信號,從而釋放額外的視頻比特槽。當設(shè)備處于高帶寬模式(HIBW=1)時,默認情況下HS/VS編碼打開。DE僅在HIBW=1且DE_EN=1時編碼。當HIBW=0時,設(shè)置HVEN=1以啟用HS/VS編碼(DE,如果啟用,則使用一個視頻位)。HS/VS編碼要求HSYNC、VSYNC和DE(如果使用)在活動視頻期間保持高電平,在消隱期間保持低電平。使用反極性同步信號時,使用HS/VS反轉(zhuǎn)。

錯誤監(jiān)測

串行鏈路的8b/10b編碼/解碼和1位奇偶校驗檢測串行鏈路上發(fā)生的位錯誤??蛇x的6位CRC檢查是以犧牲6個視頻位為代價的(當HIBW=0時)。要激活6位CRC模式,首先在遠程側(cè)設(shè)備中設(shè)置PXL_CRC=1,然后在本地側(cè)設(shè)備中設(shè)置。當使用6位CRC模式時,可用的內(nèi)部總線寬度在單輸入模式(DBL=0)下減少6位,在雙輸入模式(DBL=1)下減少3位。注意,由于串行器或解串器的引腳可用性,輸入總線寬度可能已經(jīng)減??;因此,CRC的帶寬減少可能不可見
一個額外的32位視頻鏈路CRC可通過設(shè)置LINE_CRC_EN=1獲得。啟用時,序列化程序計算視頻鏈路的32位CRC,并在消隱期間發(fā)送此信息。解串器將接收到的CRC與視頻鏈路數(shù)據(jù)進行比較。當檢測到CRC錯誤時,解串器的LINE_CRC_ERR位鎖存。讀取時,LINE_CRC_ERR清除。

總線帶寬

串行鏈路具有多個總線寬度設(shè)置,這些設(shè)置決定并行總線寬度和產(chǎn)生的并行字速率。串行鏈路的最大串行比特率為1.74Gbps。BWS位決定每個串行數(shù)據(jù)包的長度是30位還是40位,當BWS=0或1時,這將轉(zhuǎn)換為最大串行數(shù)據(jù)包速率(以及產(chǎn)生的最大并行字速率)分別為58MHz或43.5MHz。編碼將24、27或32并行位轉(zhuǎn)換為30或40位串行數(shù)據(jù)包。一位用于奇偶校驗,另一位用于控制通道。在可選的6位CRC期間,使用額外的6位。除此之外,如果使用雙模式,則會將剩余的字大小一分為二。剩余的位可用于視頻位(如果不使用H/V編碼,則減去任何同步位)
以下模式列出了內(nèi)部總線寬度??捎幂斎牒洼敵鲆_的數(shù)量可能會限制可用的實際總線寬度

  • 24位模式
    當BWS=0和HIBW=0時,30位串行包與表示24位(24位模式)的三個8b/10b符號相對應(yīng)。在奇偶校驗和控制信道之后,如果使用或未使用CRC(單模式下),則留下16/22位視頻數(shù)據(jù);如果使用或未使用CRC(雙模式下),則留下8/11位視頻數(shù)據(jù)。
    在這里插入圖片描述

  • 27位高帶寬模式
    當BWS=0和HIBW=1(高帶寬模式)時,30位串行包與表示27位(27位模式)的三個9b/10b符號相對應(yīng)。在奇偶校驗和控制信道之后,如果使用或未使用CRC(單模式下),則留下19/25位視頻數(shù)據(jù);如果使用或未使用CRC(雙模式下),則留下9/12位視頻數(shù)據(jù)。
    在這里插入圖片描述

  • 32位模式
    當BWS=1時,40位串行包對應(yīng)于表示32位(32位模式)的四個8b/10b符號。在奇偶校驗和控制信道之后,如果使用或未使用CRC(單模式下),則留下24/30位視頻數(shù)據(jù),如果使用或未使用CRC(雙模式下),則留下12/15位視頻數(shù)據(jù)。
    在這里插入圖片描述

控制信道和寄存器編程

控制通道通過串行總線發(fā)送信息用于控制串行器、解串器和任何附加的外圍設(shè)備。控制信道在串行鏈路上是多路復(fù)用的,無論有沒有視頻通道,都是可用的

前向控制信道

從串行器發(fā)送到解串器的控制數(shù)據(jù)為在前向控制信道上發(fā)送。數(shù)據(jù)被編碼作為前向高速鏈路中的串行位之一。之后經(jīng)過解串器,從串行鏈路中提取前向控制通道數(shù)據(jù)。前向控制信道帶寬超過最大外部控制數(shù)據(jù)速率,并且前向控制通道上發(fā)送的所有數(shù)據(jù)均顯示在傳輸延遲幾位后的遠程端。

反向控制通道

從解串器發(fā)送到串行器的控制數(shù)據(jù)通過反向控制通道發(fā)送。數(shù)據(jù)被編碼為一系列1μs脈沖,最大原始
數(shù)據(jù)速率為1Mbps。高抗擾度模式可用于增加反向控制通道的魯棒性,在一個降低后的500kbps原始比特率下。在下表中,設(shè)置REV_FAST bit=1將該速率增加回1Mbps。在I2C模式下,如果輸入數(shù)據(jù)速率(編碼后)超過反向數(shù)據(jù)速率,則通過時鐘拉伸保持輸入時鐘,以減慢外部時鐘進而滿足內(nèi)部比特率。
在這里插入圖片描述

UART接口

UART接口與所有GMSL設(shè)備兼容,通過多個UART數(shù)據(jù)包在設(shè)備之間發(fā)送命令。有兩種模式可用:基本模式和旁路模式。基本模式用于串行器、解串器和使用UART-to-I2C轉(zhuǎn)換的I2C外圍設(shè)備之間的通信。旁路模式允許使用任何UART協(xié)議與外圍設(shè)備進行全雙工UART通信

I2C接口

串行鏈路通過控制通道將串行器和解串器I2C接口連接在一起。當I2C主機向鏈路一側(cè)(本地側(cè))發(fā)送命令時,控制通道將該信息轉(zhuǎn)發(fā)至鏈路另一側(cè)(遠程側(cè)),并從鏈路另一側(cè)(遠程側(cè))發(fā)送該信息,從而允許單個微控制器配置串行器,解串器和外圍設(shè)備。微控制器可以位于串行器端(顯示應(yīng)用程序)和解串器端(相機應(yīng)用程序)。只要使用軟件仲裁方法,就支持雙微控制器操作。串行鏈路認為在任何給定時間只有一個微控制器在通話。

遠程操作

當I2C主設(shè)備在本地從設(shè)備(直接連接到主設(shè)備的串行器/解串器)上啟動通信時,遠程側(cè)設(shè)備充當主設(shè)備,發(fā)送從本地端設(shè)備轉(zhuǎn)發(fā)的數(shù)據(jù),并轉(zhuǎn)發(fā)從連接到遠程設(shè)備的外圍設(shè)備接收的任何數(shù)據(jù)。該遠程側(cè)主設(shè)備根據(jù)I2C主設(shè)置寄存器中的定時設(shè)置進行工作。設(shè)置主設(shè)置項來滿足被外部微控制器所使用的定時設(shè)置。

時鐘拉伸定時

I2C接口使用時鐘拉伸來允許數(shù)據(jù)通過串行鏈路轉(zhuǎn)發(fā)。主微控制器以及任何連接的外圍設(shè)備必須接受GMSL設(shè)備的時鐘拉伸。

基于數(shù)據(jù)包的I2C

基于數(shù)據(jù)包的控制信道可用于增強控制信道的錯誤處理。這種控制信道方法處理同時發(fā)生的GPI/GPO和I2C傳輸,以及錯誤檢測和重傳。

數(shù)據(jù)包協(xié)議摘要

基于數(shù)據(jù)包的控制信道使用一個同步的基于符號的系統(tǒng)通過控制信道進行發(fā)送數(shù)據(jù),通過控制信道發(fā)送的數(shù)據(jù)被分割成符號并存儲在傳輸隊列中,然后通過鏈路發(fā)送。如果需要同時發(fā)送GPI和I2C數(shù)據(jù)(例如,在I2C傳輸期間GPI進行轉(zhuǎn)換),則來自這兩個命令的符號被組合在隊列中。如果傳輸隊列為空,則通過鏈路發(fā)送空閑數(shù)據(jù)包,以保持控制信道鎖定。接收到的I2C數(shù)據(jù)包由微控制器SCL速率(本地設(shè)備)或編程主比特率(遠程設(shè)備)確定輸出。設(shè)備保持SCL低電平(時鐘拉伸),直到從遠端設(shè)備接收到數(shù)據(jù)

控制信道錯誤檢測和數(shù)據(jù)包重傳

當使用基于數(shù)據(jù)包的控制信道時,所有數(shù)據(jù)包的錯誤都會通過CRC檢查。CRC使用1、5或8位檢測數(shù)據(jù)包中的1、3或4個隨機位錯誤。每當檢測到錯誤時,發(fā)送器會重新傳輸數(shù)據(jù)包。如果重試次數(shù)超過8次,發(fā)送器將設(shè)置一個標志。接收器過濾掉有錯誤的數(shù)據(jù)包。

GPO/GPI控制

串行器上的GPO遵循解串器上的GPI轉(zhuǎn)換。此GPO/GPI功能可用于傳輸信號,如環(huán)繞視攝像頭系統(tǒng)中的幀同步。可選的,GPO可以通過寄存器位直接設(shè)置。

擴頻

串行器包含一個可編程的擴頻輸出,通過將時鐘頻率峰值分散到整個頻譜來降低發(fā)射電平。此外,串行器和解串器可以跟蹤擴展輸入時鐘,消除對多個擴展時鐘的需要

電纜類型配置

驅(qū)動器輸出可編程為兩種類型電纜,100Ω雙絞線和50Ω同軸電纜。同軸模式下,將OUT+連接到解串器的IN+。將未使用的IN-引腳保持未連接狀態(tài),或?qū)⑵渫ㄟ^50Ω接地和一個電容器增加電源拒絕。通過50Ω電阻器將OUT-連接至VDD
在這里插入圖片描述

交叉開關(guān)

交叉開關(guān)在并行輸入/輸出和SerDes之間按路徑發(fā)送數(shù)據(jù)。無障礙的路徑確保了視頻源和目標之間的映射。由于每個交叉開關(guān)矩陣輸出 (XBO_)一個通過crossbar_寄存器位從可用的交叉矩陣輸入 (XBI_)中進行選擇的一個多路復(fù)用輸入,因此多個交叉開關(guān)輸出可以使用相同的交叉開關(guān)輸入。默認情況下,同步信號共享相同的輸入作為視頻數(shù)據(jù)的MSB(最高有效位)
在這里插入圖片描述

視頻定時生成器

串行器包括可編程視頻定時生成器用于生成/重定時輸入同步信號。這個定時生成器可用于修改相機的輸入定時,過濾掉同步信號中的小故障,或減少所需的輸入同步信號數(shù)。每個同步信號可以單獨重定時或不修改。幾個寄存器決定定時參數(shù)的長度(PCLK循環(huán))如下圖所示。定時參數(shù)包括高/低周期長度、行計數(shù)和輸入VS信號的延遲。
定時發(fā)生器使用三種不同的觸發(fā)模式,跟蹤、單觸發(fā)和自動運行。跟蹤模式查看輸入VSYNC,一旦收到三個連續(xù)相同的VSYNC信號就鎖定。跟蹤器之后繼續(xù)輸出相同的信號,擦除任何VSYNC上可能出現(xiàn)的故障。如果三個連續(xù)的輸入波形與鎖定信號不匹配,跟蹤器將嘗試重新鎖定到新信號。單觸發(fā)器為每個輸入VSYNC邊生成一個已經(jīng)生成的幀。自動運行以確定的速率(這個速率由VSYNC高/低周期決定)生成新幀。如果有新的VSYNC信號在幀(單觸發(fā)或自動運行模式下生成的幀)之前出現(xiàn),那么新幀立即開始,縮短前一幀。
在這里插入圖片描述

關(guān)機和睡眠模式

當不需要完全運行時,可以使用幾種睡眠和關(guān)機模式

  • 配置鏈路
    當高速視頻鏈路不需要或不可用時,可以使用配置鏈路代替高速視頻鏈路。在配置鏈路模式下,并行數(shù)字輸入/輸出被禁用,鎖定引腳保持低位,串行鏈路內(nèi)部生成自己的時鐘,以允許控制通道(UART/I2C和GPIO)的完全操作。
  • 串行器禁用
    當串行鏈路不需要時,例如當下游設(shè)備斷電時,用戶可以禁用串行器。在此模式下,所有前向通信將關(guān)閉。用戶可以通過本地或反向通道重新啟用串行器
  • 睡眠模式
    為了進一步降低功耗,可以將設(shè)備置于睡眠模式。在此模式下,所有寄存器保持其編程值,設(shè)備中的所有功能均斷電,本地控制接口上的喚醒檢測器和串行鏈路除外。被喚醒檢測器檢測到的任何活動都會臨時打開控制通道接口。在此期間,微控制器可以命令設(shè)備退出睡眠模式。
  • 斷電模式
    最低功耗模式為斷電模式。在此模式下,所有功能均斷電,所有寄存器值丟失。
    在這里插入圖片描述

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多