?

支持4K 分辨率的ARINC818 視頻傳輸驗證系統

2024-03-20 04:31高偉林楊炳偉辛春明
電子技術應用 2024年2期
關鍵詞:編解碼解碼時鐘

高偉林,楊炳偉,辛春明

(航空工業蘇州長風航空電子有限公司,江蘇 蘇州 215151)

0 引言

航空電子技術的飛速發展對機載座艙視頻傳輸系統提出了更高的要求,傳統的DVI、VGA 等視頻接口難以滿足高分辨率視頻傳輸需求,尤其在視頻分辨率達到4K(3 840×2 160)或以上時,由于鏈路速率大幅提升,在機艙內復雜電磁環境下視頻傳輸鏈路極易受到干擾,導致傳輸可靠性變差。ARINC818(航空電子數字視頻總線,Avionics Digital Video Bus,ADVB)視頻總線采用光纖通道進行傳輸,其技術特點恰好滿足現代航電視頻數據總線的要求,具備高帶寬、高可靠性、低延遲、非壓縮視頻傳輸、抵抗電磁干擾、減輕線纜重量、靈活性高、兼容性擴展性強等優勢[1-2]。ARINC818 總線已在波音787、空客A350、A400M、C-130J 等飛機駕駛艙視頻傳輸系統中得到應用[3]。

隨著顯示器分辨率的逐步提高,對視頻帶寬的要求也越來越高,在2019 年發布的ARINC818-3 規范中新增了對10 Gb/s 編解碼鏈路速率的支持[4]。本文針對未來機載座艙高分辨率視頻傳輸需求,設計了一種支持4K分辨率的ARINC818 視頻傳輸驗證系統,鏈路速率達到10 Gb/s,支持 單鏈 路4K@30 Hz 和 雙鏈 路4K@60 Hz 視頻傳輸,并通過DP 視頻接口完成傳輸驗證。

1 ARINC818 協議規范

ARINC818 協議標準是在FC-AV(Fiber Channel Audio Video)音視頻協議基礎上進行簡化而得,共有5 層協議[5],如圖1 所示。

圖1 光纖通道5 層協議

(1) FC-0 層描述物理接口,包括傳輸介質、發射機和接收機及其接口,規定了各種介質能夠承載的各種運行速率。

(2) FC-1 層描述了8B/10B 編碼規則,該碼型可以區分控制字節和數據字節,可簡化比特、字節和字同步,并且能夠提高差錯檢測能力。此外,FC-1 對發射機和接收機的狀態進行了規定。

(3) FC-2 層是信號傳輸協議層,規定了幀格式、幀序列及通信協議。

(4) FC-3 層涉及網絡服務,如鏈路初始化、路由等,不適用于點對點特征的ADVB,ARINC818 未使用。

(5) FC-4 層作為光纖通道協議架構的最高層,定義了多種與FC 相關的應用接口,制定了光纖通道與上層應用協議間的映射規則。ARINC818 使用幀頭控制協議FHCP(Frame Header Control Protocol),提出容器概念。

1.1 容器系統

ADVB 容器是ARINC818 系統中傳輸視頻信息的基本單元,一個容器包括一幀視頻的所有視頻、音頻及附加數據,容器按順序方式傳送以提供連續動態更新的圖像。容器由容器頭和對象組成,如圖2 所示。

圖2 ADVB 容器結構

容器頭大小為22 個FC 字(32 bit),主要包括容器計數、視頻標識、容器時標、傳輸類型、容器類型、對象參數等信息。對象0 傳輸附加信息,一般為2 個FC 字,規定視頻幀分辨率、顏色信息、掃描方式、像素排列方式等信息。對象1 傳輸音頻數據,一般不使用。對象2 和對象3傳輸視頻數據,逐行系統中,僅使用對象2。

1.2 FC 幀序列

一個ADVB 容器與一幀視頻對應,裂變為一個FC幀序列,如圖3 所示。每個FC 幀通過SOF(Start of Frame)和EOF(End of Frame)兩種類型定界符定義幀信息起始、結束,同時包含6 個FC 傳輸字的幀頭定義,用于傳輸FC 幀路由控制、類型、幀控制等信息。容器頭與對象0 封裝入第一個FC 幀中,剩余FC 幀用于封裝像素數據,有效載荷長度最大為2 112 B,若一行像素數據不大于2 112 B,每一行像素數據封裝入一個FC 幀中,若一行視頻數據大于2 112 B,將每一行像素數據進行合適的劃分并封裝入多個FC 幀。

圖3 FC 幀結構

圖4 為視頻流到FC 幀序列的映射,一幀視頻與一個ADVB 容器對應,一個容器與一個FC 幀序列對應。每幀畫面第一個FC 幀的SOF 格式為SOFi(SOF initiate),其后的每一個FC 幀的SOF 格式為SOFn(SOF normal)。最后一個FC 幀的EOF 格式為EOFt(EOF terminate),其他FC 幀的EOF 格式為EOFn(EOF normal)。FC 幀之間填充IDLE 數據。

圖4 視頻流到FC 幀序列的映射

1.3 ICD 文檔

ICD(Interface Control Document)接口控制文檔用于記錄ARINC818 視頻配置信息,包括鏈路速率、視頻分辨率、刷新率、掃描方式、顏色信息等。發送端和接收端的ICD 必須一致才能實現正確的發送和接收操作[6]。

2 方案設計

2.1 系統架構

本系統采用FPGA 完成ARINC818 的編解碼邏輯設計,并采用DP 視頻完成視頻鏈路傳輸驗證,硬件系統框圖如圖5 所示。

系統接收上位機輸出的DP 視頻,送入FPGA 的GTX 高速端口,再通過DP IP 核實現DP 鏈路解碼,解碼后的視頻數據送入ADVB 編碼模塊,按照ARINC818 協議完成封包處理后,再通過GTX 高速端口形成串行ARINC818 視頻經光電模塊送出。

使用光纖連接本系統的ARINC818 輸入輸出端口,將產生的ARINC818 視頻再回送至本系統,通過GTX 高速端口和ADVB 解碼模塊后,再編碼形成DP 視頻輸出顯示。

2.2 GTX 高速端口

本系統選用Xilinx 的Kintex-7 系列FPGA,集成GTX高速接口,能夠提供最高12.5 Gb/s 的鏈路速率[7],高度可配置化,具有8B/10B 編解碼、RD 控制、逗號檢測、字對齊、時鐘矯正、預加重等功能[8]。

GTX 的發送通道和接收通道均由PMA(物理媒介適配層)和PCS(物理編碼子層)兩部分組成,PMA 中集成了串并轉換器、發送接收緩沖、時鐘發生器和時鐘恢復電路。PCS 中集成了8B/10B 編解碼模塊、逗號檢測對齊模塊和用來進行時鐘校正的彈性緩沖區。GTX 收發結構簡圖如圖6 所示。

3 ARINC818 編解碼設計

ARINC818 協議的FC-2 和FC-4 層通過ARINC818編解碼模塊實現。ARINC818 編解碼模塊的功能包括:

(1)將視頻流數據編碼成32 bit 的FC 幀序列送至GTX 模塊;

(2)接收GTX 模塊的32 bit FC 幀序列將其解碼成視頻流數據輸出。

3.1 ADVB 編碼模塊

ARINC818 編碼模塊流程圖如圖7 所示,模塊初始化完畢后控制鏈路的初始RD 值為負,并通過查找表實時記錄當前鏈路的RD 值。等待FIFO 中緩存一行圖像數據后,發送載有對象2 視頻數據的FC 幀,首先發送SOFn、FC 幀頭數據,讀取FIFO 中的數據并發送FC 幀的有效載荷,當前FC 幀有效載荷發送完成發送CRC 校驗結果,并根據當前的RD 值發送合適EOF。若一行圖像數據能夠存在一個FC 幀中(即數據小于等于2 112 B),等待FIFO 中存入下一行數據,重復上述過程至一幀圖像傳送完畢。若一行圖像數據大于2 112 B,將一行圖像數據劃分存入的FC 幀,FC 幀之間填充預先設定好數量的IDLE 數據,一行圖像發送完畢后等待FIFO 中存入下一行數據,重復上述過程至一幀圖像傳送完畢。

圖7 ARINC818 編碼模塊流程圖

載有對象2 的FC 幀發送完成后,發送預先設定好數量的IDLE 數據,接著發送下一幀圖像數據載有容器頭和對象0 的FC 幀,等待FIFO 中存入一行圖像數據后重復上述發送載對象2 的FC 幀的過程。

3.2 ADVB 解碼模塊

ARINC818 解碼模塊流程圖如圖8 所示,檢測到數據流中的SOFi 信號后解析第一個FC 幀,讀取容器頭和對象0 的數據存入相應的寄存器中。解析完成第一個FC 幀后持續檢測數據流中的SOFn 信號,讀取對應FC幀中的對象2 視頻數據存入FIFO 中,通過Frame Header中F_CTL 的bit19 標志位(容器中的最后一幀,有效為“1”)和FC 幀結束的SOFn/SOFt 判斷當前FC 幀是否為一幀圖像畫面的最后一行數據,若是,開始檢測SOFi,若不是,重復檢測SOFn。在上述存儲過程中,通過CRC計算模塊計算并校對鏈路數據是否有錯誤,若有錯誤上報CRC 錯誤。

圖8 ARINC818 解碼模塊流程圖

3.3 4K@30 Hz ARINC818 協議實現

對于4K@30 Hz 視頻,帶寬由式(1)計算得出,式中3 840×2 160 為視頻分辨率,24 為像素位寬,30 為幀率,1.25 為加上附加信息和協議控制信息后的等效帶寬倍乘因子。

ARINC818 傳輸系統采用10 Gb/s 鏈路速率,一條傳輸鏈路即可滿足要求。通過FPGA 的QPLL 設置GTX 速率,QPLL 輸出的時鐘頻率由式(2)計算:

鏈路速率通過PLL 輸出時鐘的上升沿和下降沿產生,且發送和接收均有一個時鐘分頻模塊,將PLL 輸出時鐘降頻D倍,鏈路速率由式(3)計算:

式中N、M和D由表1 中的屬性或者接口決定。

表1 QPLL 分頻設置

輸入的參考時鐘頻率為100 MHz,M設置為1,N設置為100,D設置為1,將鏈路速率匹配為10 Gb/s。

一個FC 幀最大支持2 112 B 的負載數據,對于分辨率為3 840×2 160 的應用,若視頻圖像為RGB888,則一行圖像容量為11 520 B,無法在一個FC 幀內傳輸一行視頻數據,因此在4K 視頻傳輸中需要將每一行視頻分割為6 個FC 幀進行傳輸,每一個FC 幀封裝1 920 B 字節數據。一幀圖像則需要12 960 個FC 幀方可傳輸完成。每個FC 幀之間填充著預先設定好的IDLE,IDLE 時長最后設置為ICD 參數集成到現有工程中。

ADVB 接收端的ICD 與發送端一致,接收端在獲取鏈路同步后實時接收鏈路上的FC 數據幀,根據附加數據中的格式完成圖像數據的重組。由于ADVB 協議規定的有 序集為SOFi1、SOFi3、SOFn1、SOFn3、EOFn、EOFt 以及IDLE,因此在接收端除此之外的其他有序集均視為IDLE 對待。同時,接收端采取以下原則以保證當鏈路故障情況時始終能夠從下一幅圖像第一行數據完整顯示出:

(1)當檢測到鏈路失同步時,需重新獲取鏈路同步并等待直至下一個SOFi 到來,才開始正常接收;

(2)當檢測到8B/10B 編碼錯誤,需獲取并保持鏈路狀態直到下一個SOFi 正常;

(3)當檢測到CRC 校驗錯誤,則丟棄當前幀,停止接收直到下一個SOFi。

3.4 4K@60 Hz ARINC818 協議實現

對于4K@60 Hz 視頻,帶寬由式(4)計算得出,總帶寬超過了單條鏈路所能提供的10 Gb/s 帶寬。當單條鏈路速率無法滿足應用時,ARINC818 協議支持多鏈路模式,將視頻幀按一定模式進行分割,如左右半屏或奇偶像素,再將分割后的數據分別綁定到多個鏈路。實際應用中,將畫面分割為左右半屏并分別綁定到兩條鏈路上,如圖9 所示。在發送端,圖像數據按左右半屏方式分配至兩個 ARINC818 編碼發送模塊;在接收端,ARINC818數據接收模塊將兩條lane 收到的數據分別寫到同一塊內存區域的左右兩邊,使其組成一幀完整的4K圖像。

圖9 畫面分割與鏈路綁定方式

4 DP 視頻編解碼設計

本項目采用DP 視頻接口完成ARINC818 視頻傳輸驗證,DP 視頻編解碼功能采用Xilinx 的DP IP 實現,為了完整驗證DP 視頻收發功能,設計了pass-thorugh demo 框架,如圖10 所示,主要包括以下幾個部分:

圖10 pass-thorugh demo 框架

(1) MB,Microblaze 軟核,用于系統運行的管理,主要包括DP 編解碼的控制管理、VDMA 的控制管理、動態時鐘的配置等;

(2) DDR,用于存儲視頻數據,實現視頻數據緩存等,本設計中,DDR 總線的位寬為64 bit,DDR 的數據時鐘工作在1 600 MHz 的頻率下;

(3) VDMA,用于提供高帶寬的直接地址存儲訪問,可以在Microblaze 配置完成的情況下,進行視頻數據的緩存搬運;

(4) Vid Pattern,邏輯上存儲了幾幅視頻畫面,可以通過MB 進行選擇輸出;

(5) DP tx subsystem,實現DP 協議的編碼模塊,除了main link 的視頻數據編碼外,還具備接收Sink TX HPD的觸發,TX AUX Channel 通道數據訪問交互功能;

(6) DP rx subsystem,實現DP 協議的解碼模塊,除了解碼main link 上的數據信號外,還具備RX HPD 觸發Source 功能,可以與Source 進行AUX 數據交互,存儲接收端EDID 的功能;

(7) DisplayPort Video Phy,實現DP Phy 的功能,主要包括串行鏈路的時鐘倍頻、串行數據與并行數據的相互轉化功能、8B/10B 編解碼、時鐘恢復等功能;

(8) DP Port,DP 插座模塊。

5 測試與驗證

測試驗證平臺如圖11 所示,由PC 產生DP 視頻信號,經過ARINC818 編碼,通過光纖返回到板卡中,再由ARINC818 解碼,轉換成DP 視頻進行輸出顯示。本系統自回環測試實物圖如圖12 所示。

圖11 測試驗證平臺示意圖

圖12 ARINC818 自回環測試圖

6 結論

ARINC818 專注于航空電子環境下視頻傳輸的應用要求,采用單向點對點數據傳輸,不需要實現鏈路初始化、流量控制以及交換注冊等操作,最大限度地保證了光纖通道的高速、高可靠、低延遲等特點。本系統基于Xilinx K7 系 列FPGA GTX 高速端 口,采用10 Gb/s 鏈 路速率,實現了4K 分辨率的ARINC818 視頻傳輸,支持4K@30 Hz 和4K@60 Hz 視頻規格,通過DP 接口完成視頻收發驗證。本系統具有一定的通用性,通過配置ICD,可適應不同規格視頻傳輸,滿足各類應用需求。

猜你喜歡
編解碼解碼時鐘
《解碼萬噸站》
別樣的“時鐘”
古代的時鐘
1553B總線控制器編解碼設計
解碼eUCP2.0
大型民機試飛遙測視頻編解碼方法研究
NAD C368解碼/放大器一體機
Quad(國都)Vena解碼/放大器一體機
基于H.265編解碼的高清視頻傳輸系統研究
有趣的時鐘
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合