(南京電子技術研究所,南京 210039)
航管雷達終端主要用于監視航路航線,指示目標的距離、方位、速度、航向等信息,以及顯示航路上的氣象信息,為空中交通管制提供保障[1]。近年來隨著航班數量的增加,空中交通管制的形勢日益嚴峻[2],急需實現對終端的顯示畫面、航跡數據、操控數據、雷達視頻、監控視頻、臺位語音等信息的綜合記錄,為事后場景再現、數據分析、問題判別提供關鍵數據。
現有的雷達終端記錄系統存在記錄信息不全面、靈活性和擴展性差、設備量大等缺點[3]。本文設計了一套基于片上系統(System On Chip,SOC)+現場可編程門陣列(Field Programmable Gate Array,FPGA)的航管雷達終端綜合記錄系統。采用SOC對標準的數據進行采集、壓縮和記錄,并實現對系統的管理與控制,采用FPGA對非標數據的進行采集、壓縮和數據格式轉換,充分發揮了兩種處理器的各自優勢,實現了航管雷達終端綜合記錄系統的高性能、小型化設計。
綜合記錄系統以SOC為核心處理器,以FPGA為輔助處理器。SOC承擔了系統中顯示畫面、監控視頻、臺位語音、航跡數據、操控數據等信息的編解碼以及所有數據的記錄、回放、傳輸等功能。FPGA主要用于雷達視頻的采集、壓縮,顯示畫面格式轉換以及顯示環出等處理。兩個處理器之間通過單鏈路的高速計算機擴展總線標(Peripheral Component Interconnect Express,PCIE)2.0進行通信。綜合記錄系統的架構如圖1所示。

圖1 綜合記錄系統
系統上電后存放在NAND Flash中的UBOOT軟件自動加載,并將Linux內核、操作系統和應用軟件加載到SOC內存中運行,并通過千兆網絡與上位機通訊,控制和管理綜合記錄系統的運行。
終端計算機顯卡輸出數字視頻接口(Digital Video Interface,DVI)標準數字畫面,通過系統的接口芯片解析出紅、綠、藍顏色分量和同步時序信號送到FPGA中,FPGA一方面將顏色分量信號和時序信號送到DVI輸出接口芯片,再轉換成DVI信號送顯示器顯示;另一方面將顏色分量信號和時序信號通過色度空間轉換、重采樣和格式變換,轉換成SOC可識別的標準BT.1120格式送SOC處理,SOC的硬件編解碼部分將終端顯示畫面進行壓縮處理,并記錄到固態硬盤(Solid State Disk,SSD)中。
監控視頻的處理與終端顯示畫面的處理類似,監控視頻采用串行數據接口(Serial Data Interface,SDI)。
音頻的處理是將模擬立體聲音頻通過接口芯片轉換成數字音頻數據傳輸總線(Inter-IC Sound,I2S)標準數字接口,送SOC進行編解碼處理。
雷達視頻為自定義高速串行格式,通過光纖接口接入到FPGA中,經過FPGA壓縮處理后通過PCIE總線送SOC中記錄。
航跡數據和終端操控數據直接通過千兆網絡送SOC進行記錄。
SOC可通過本地的模擬視頻接口(Video Graphics Array,VGA)進行回放顯示,也可作為文件傳輸協議(File Transfer Protocol,FTP)服務器,上位機客戶端通過登錄方式獲取記錄的數據,在上位機上回放。
綜合記錄系統的主要指標如下:
1) 支持2路最高分辨率為1920×1200@60 Hz終端顯示畫面記錄與環出顯示;
2) 支持2路最高分辨率為1920×1080@25 Hz監控視頻記錄;
3) 支持1路最大帶寬為15 MB/s雷達視頻記錄;
4) 支持1路立體聲音頻的記錄與輸出;
5) 支持1路航跡數據和操控數據的記錄;
6) 終端顯示畫面和監控視頻編解碼采用H.264,雷達視頻編解碼采用游程長度編碼(Run-Length Encoding,RLE),音頻編解碼采用高級音頻編碼(Advanced Audio Coding,AAC)技術,壓縮率可調;
7) 系統記錄容量不小于1TB,支持24小時連續記錄;
8) 支持本地回放、基于FTP網絡協議的遠程訪問。
為實現綜合記錄系統的小型化設計,主要硬件電路采用了高速、高集成度的芯片,借助高速仿真工具進行設計仿真,保證了硬件電路的信號完整性和電源完整性。
綜合記錄系統的核心處理芯片Hi3531A是針對多路高清、標清格式的數字視頻記錄儀(Digital Video Recorder,DVR)產品應用而開發的專業SOC芯片[4]。該芯片內置ARM A9雙核處理器和高性能H.264視頻編解碼引擎,繼承了豐富的可編程外圍接口,為數字視頻記錄提供了整體解決方案。
系統硬件主要設計指標:
1) 存儲:高速緩存容量4 GB、數據存儲容量1 TB;
2) 顯示:終端畫面最大分辨率1920×1200、監控視頻最大分辨率1920×1080;
3) 接口:4路視頻接口、1路音頻接口、1路千兆網絡接口、1路自定義光口。
Hi3531A的主要電路設計如下:
1) 內存采用雙通道設計,由4片DDR3 SDRAM:MT41K256M16組成,總容量為2 GB,設計帶寬為1732 MT/s;
2) 程序存儲器采用并行NAND FLASH:MT29F2G08,總容量為256 MB;數據存儲器采用符合SATA 3.0標準的電子盤,總容量為1 TB;
3) 視頻輸入接口配置成4個BT.1120,均接入到FPGA中,其中接口1、2用于終端顯示畫面,接口3、4用于監控視頻;視頻輸出接口采用VGA,用于回放顯示;
4)音頻輸入輸出接口芯片采用TLV320AIC,該芯片輸出符合I2S標準,并使用串行控制總線(Intel-Integrated Circuit,I2C)進行控制;
5) 其余接口設計:千兆網絡采用88E1111作物理層接口(Physical Port Layer,PHY)接口,SOC與PHY之間的接口標準采用精簡的吉比特介質獨立接口(Reduced Gigabit Media Independent Interface,RGMII)方式;通用串行總線(Universal Serial Bus,USB)、串口等通過電平轉換和保護電路直接引出。
綜合記錄系統FPGA采用EP4SGX230,該芯片是一款基于40 nm工藝的高性能處理器,芯片內集成了豐富的邏輯、DSP、存儲、高速串行接口等資源[5]。
EP4SGX230的主要電路設計如下:
1) 終端顯示輸入、輸出接口采用DVI接口芯片SiI1161和SiI1160,支持的最大顯示分辨率為1 920×1 200@60 Hz;
2) 監控視頻接口采用高清SDI接口芯片GV7704,支持的最大顯示分辨率為1920×1080@25 Hz;
3) 雷達視頻接口采用多模收發光模塊OEAT-MHG01,串行數據率為6.25 Gbps;
4) 數據緩存由4片DDR3 SDRAM:MT41K256M16組成,總容量為2 GB,設計帶寬為1 000 MT/s。
綜合記錄系統軟件包括上位機軟件、下位機軟件和FPGA軟件三部分。上位機軟件運行在任何一個雷達終端中,主要實現人機交互和對下位機的控制;下位機軟件運行在Hi3531A中,包括管理軟件、網路數據記錄軟件和音視頻編碼器等;FPGA軟件主要用于實現終端顯示畫面數據格式轉化、顯示環出和雷達視頻的壓縮、采集和傳輸。
FPGA軟件和上、下位機軟件的功能框圖如圖2~3所示。

圖2 FPGA軟件功能框圖

圖3 上、下位機軟件功能框圖
上位機軟件基于Window系統開發,包括人機交互和控制模塊、狀態監控模塊、異常告警模塊、記錄文件下載模塊、音視頻文件播放模塊。其功能框圖如圖4所示。

圖4 上位機軟件功能框圖
人機交互與控制模塊實現人機交互功能,接收控制指令,并將指令按照協議處理,傳輸給下位機的管理軟件。同時控制終端接收下位機上傳的信息,監控下位機的工作狀態和異常狀態。記錄文件下載模塊基于FTP傳輸協議設計,可以將遠端記錄的視頻文件和網絡數據文件下載至本地主機,然后做進一步分析與處理。音視頻文件播放模塊基于開源程序開發,用于播放下載的音視頻文件。狀態監控和異常告警模塊顯示下位機的工作狀態和異常狀態,包括編碼器狀態、數據狀態、記錄文件大小和時間、磁盤空間等,根據用戶需求,這些狀態可以實時顯示,也可以定時查詢。
下位機軟件基于嵌入式Linux系統開發,其功能框圖如5所示。主要包括嵌入式Linux操作系統、文件系統、設備驅動、應用軟件四個部分。嵌入式Linux操作系統和文件系統基于開源程序開發而成;設備驅動包括網絡驅動、音視頻編碼器驅動和音視頻數據采集驅動等,用于將采集的數據傳輸給芯片進行處理,并提供硬件編碼接口。下位機軟件主要開發內容包括音視頻編碼與封裝軟件[6]和管理軟件。

圖5 下位機軟件功能框圖
3.2.1 音視頻編碼和封裝軟件
視頻編碼與封裝軟件采用H.264編碼算法,實現兩路最高分辨率為1 900×1 200終端顯示畫面和兩路最高分辨率為1 920×1 080監控視頻編碼,采用AAC編碼算法實現一路音頻編碼,并將編碼后的音視頻封裝成通用MP4文件,其流程如圖6所示。

圖6 音視頻編碼與封裝
采用H.264編碼和AAC編碼有效降低錄制音視頻文件的大小,節約磁盤空間。通過控制軟件的控制,實現MP4封裝流程的開啟、關閉,MP4文件名稱管理,固定時長封裝或者固定文件長度封裝等。采用固定時長封裝的技術可以提高數據記錄的安全性,避免因故障造成所有數據失效;采用固定文件大小封裝技術避免過大文件傳輸時間長、速率低等問題。數據編碼封裝的同時,將編碼狀態、數據狀態反饋給控制軟件,使上位機可以實時觀測音視頻編碼與封裝的狀態。
通過音視頻的編碼可以有效記錄雷達視頻、雷達界面操作內容以及操作人員語音指令,為以后的戰術重演、評估、分析提供視頻支持,采用MP4封裝技術,將錄制的音視頻文件轉為通用視頻文件,隨時可以采用通用播放器播放。
3.2.2 管理軟件
下位機軟件通過管理軟件實現與上位機的通信,同時完成對網絡數據記錄、音視頻編碼及封裝的控制,實現的功能包括:音視頻記錄、網路記錄、磁盤空間管理、時統管理、記錄監控管理、狀態采集。
管理軟件接收上位機的控制命令,解析后對網絡記錄軟件和音視頻編碼器進行控制,包括記錄的開始、關閉,以及記錄文件的下載等。管理軟件基于控制表、狀態表、異常表等完成上位機對下位機的網絡數據和音視頻編碼器的控制,其控制流程如圖7所示。

圖7 管理軟件控制流程
基于控制表,上位機可以通過指令對控制表進行更新,同時網絡數據記錄模塊和音視頻編碼器執行相應的操作,并反饋執行狀態。控制指令包括:網絡數據和音視頻記錄的開始、停止、視頻記錄文件大小配置、記錄時間配置、時統配置、文件下載命令。
基于狀態表,上位機可以主動查詢網絡數據記錄和音視頻編碼器的狀態,下位機也可以主動上報工作狀態。相應的狀態包括:音視頻編碼器是否在線、采集數據是否正常、是否正在記錄文件等。
基于異常表,當下位機出現異常時,可以及時向上位機報告異常狀態,包括時間異常、磁盤空間異常、記錄滿足時間約束、記錄滿足文件大小約束、數據采集異常、控制狀態變化等。
3.3.1 視頻數據格式裝換
Hi3531A的視頻輸入格式為BT.1120,而終端顯示畫面數據為紅R、綠G、藍B分量數據格式,因此需進行數據格式轉換,數據格式轉換的流程圖如圖8所示。

圖8 數據格式轉換流程圖
色度空間轉換[7]是將顯示畫面數據由以三基色RGB描述轉換為以亮度Y、紅色色差Cr和藍色色差Cb描述,具體公式如(1)至(3)所示。
Y=0.299R+0.578G+0.144B
(1)
Cr=(0.500R-0.4187G-0.0813B)+128
(2)
Cb=(-0.1687R-0.3313G+0.500B)+128
(3)
為充分利用FPGA的DSP資源進行快速操作,采用定點運算代替浮點運算,在結果誤差小于1的范圍內,將公式兩端先乘以223,轉換成公式(4)至(6)。最終輸出時將計算結果右移23位,獲得需要的亮度Y、色差Cr和Cb。
Y′=2508193R+4848615G+1207959B
(4)
Cr′=(4194304R-3512310G-681993B)+1073741824
(5)
Cb′=(-1415158R-2779145G+4194304B)+1073741824
(6)
色度空間重采樣是基于人眼對色度感知的敏感度低于亮度的前提,降低色度的表示數據位數不會影響人眼觀察。將YCrCb數據4:4:4的形式轉換成4:2:2的形式采用的公式如(7)所示。
Y0Cr0Y1Cb0Y2Cr2Y3Cb2Y4Cr4......
(7)
最后轉換成BT.1120格式是根據ITU-R BT.1120高清晰度電視演播室信號數據接口標準[8]將數字視頻中的時序信號:行同步、場同步和數據有效等以編碼形式嵌入到數據中。
3.3.2 雷達視頻壓縮與傳輸
雷達視頻數據的壓縮采用游程長度編碼RLE[9],該編碼是一種典型的無損壓縮算法。該算法將數據分為兩類符號:一類是重復符合。這些符合能夠進行壓縮,可用一個數字和一個對應數據來表達這一串重復符合,數字表示了該符號重復的次數;另一類是非重復符合。這些符合不能夠被壓縮,保留原數據。雷達視頻數據中出現重復符號的概率較大,采用RLE壓縮是最為合適的一種壓縮算法。其主要流程如圖9所示。

圖9 雷達視頻壓縮編碼
壓縮后的雷達視頻采用PCIE總線通過直接存儲器訪問(Direct Memory Access,DMA)方式傳輸到Hi3531A中,具體實現方式參考文獻[11]。
為測試綜合記錄系統的功能和性能指標,在某型航管雷達產品上搭建了一套測試系統,測試系統框圖如圖10所示。

圖10 綜合記錄系統測試
按照圖10連接測試系統,將雷達終端計算機的顯示輸出設置為上、下雙屏輸出,分辨率設置為1 920×1 200@60 Hz,24位真彩色,數據率為414.72 MB/s;將兩路攝像頭設置為SDI高清輸出,分辨率設置為1 920×1 080@25 Hz,24位真彩色,數據率為155.52 MB/s;雷達前端提供兩路雷達視頻,每一路的數據率為6.25 Gbps,有效帶寬為15 MB/s;音頻信號從麥克風輸入,從擴音器中輸出;雷達的航跡數據和終端操控數據從網絡中輸入到系統;綜合記錄系統的上位機軟件運行在雷達終端計算機中,通過網絡實現對綜合記錄系統進行控制與狀態監控、記錄文件下載與播放等,上位機軟件界面如圖11所示。

圖11 上位機軟件界面
啟動綜合記錄系統,對顯示畫面、監控視頻、臺位語音、雷達視頻、航跡數據、操控數據等信息進行記錄,系統運行1小時后將記錄數據通過網絡導入到雷達終端計算機中,并對數據進行統計,如表1所示。

表1 記錄數據統計
結合產品應用場景,由于雷達顯示畫面和現場監控視頻畫面固定部分較多,數據幀與幀之間的變化率較低,對表項1、2采用H.264編碼獲得了較好的壓縮效果。1小時綜合記錄的數據容量合計約為27 MB,24小時綜合記錄的數據容量合計約為648 MB,小于1 TB的設計容量。采用MP4播放工具對表項1、2的記錄數據進行播放,播放的顯示畫面完整、無缺色、無失真,視頻與音頻同步。經測試,綜合記錄系統的功能、性能指標均滿足設計要求。
本設計針對航管雷達終端信息記錄和分析需求,通過優化系統架構,合理劃分系統功能,并結合SOC和FPGA兩類處理器的特點,實現了一套完整的航管雷達終端綜合記錄系統。該系統具備記錄信息豐富、不間斷記錄時間長、控制與訪問靈活、高集成度小型化等特點。某型航管雷達產品試用表明,基于SOC+FPGA的航管雷達終端綜合記錄系統完全滿足產品需求,具備良好的可行性,并可推廣應用到地面情報、測控、艦載等雷達終端領域。