季玲玲,國 輝,張志芳,康 崢
(航天恒星科技有限公司,北京100086)
責任編輯:任健男
隨著空間信息技術的廣泛發(fā)展,以及軍事應用的特殊迫切需求,僅依靠單個傳感器監(jiān)測戰(zhàn)場情況顯然已無法滿足新作戰(zhàn)技術的發(fā)展要求。近年來我國裝備部隊傳感器種類越來越多,多傳感器協(xié)同采集信息已勢在必行。但多傳感器采集的多路數(shù)據(jù)如何同步實時傳輸,對戰(zhàn)場上及時準確地獲取各種有用信息,進行適時完整的戰(zhàn)略決策是極其重要的。
大多偵察機的下行鏈路只有一條,多傳感器采集的大量數(shù)據(jù)必須合并為一路才能傳輸。然而,偵察機對設備的小型化要求,決定了不可能增加額外硬件設備。
目前,多路數(shù)據(jù)傳輸方面的研究主要集中在民用設備中,通常是將話音或等速率同類型的低速數(shù)據(jù)進行復接[1-4],但當各支路數(shù)據(jù)速率差距較大時,這些算法無法應用。文獻[5-7]將速率差距較大的圖像、語音和人工指令數(shù)據(jù)進行異步復接,根據(jù)不同數(shù)據(jù)的速率比在復接幀內(nèi)固定開辟空間,但數(shù)據(jù)源個數(shù)或數(shù)據(jù)速率比一旦發(fā)生變化,需重新設定幀結構,通用性不強,無法廣泛適用于傳感器類型多變的軍用設備。
本文針對軍用設備的小型化、傳感器類型的多樣化和傳輸實時性的要求,提出了一種基于FPGA的多源信息實時傳輸系統(tǒng)。
本系統(tǒng)的傳輸數(shù)據(jù)端是串行輸出,故輸入數(shù)據(jù)無論是串行還是并行接口,均需要轉換成串行數(shù)據(jù)。采用FPGA內(nèi)部數(shù)據(jù)緩沖器FIFO來實現(xiàn)數(shù)據(jù)的接收緩存。用系統(tǒng)時鐘采樣數(shù)據(jù)時鐘的下降沿作為FIFO的寫使能,以系統(tǒng)時鐘作為FIFO的讀時鐘,將數(shù)據(jù)存入FIFO內(nèi)。由于FIFO并串轉換的限制,對于超過8 bit的并行數(shù)據(jù)接口類型,需要設置2級FIFO,前一級將數(shù)據(jù)轉換到8 bit及其以下的并行數(shù)據(jù),后一級FIFO緩存數(shù)據(jù)。對于不超過8 bit的并行數(shù)據(jù)和串行數(shù)據(jù),用一級FIFO緩存數(shù)據(jù)即可。
本系統(tǒng)在輸入數(shù)據(jù)的中間讀取數(shù)據(jù),能防止因數(shù)據(jù)時鐘抖動或傳輸延遲導致的數(shù)據(jù)讀取不穩(wěn)定的情況。同時將輸入數(shù)據(jù)和時鐘均同步到系統(tǒng)時鐘,解決了同一個FPGA工程內(nèi)出現(xiàn)多個異步時鐘的問題。
每路數(shù)據(jù)對應1個緩存FIFO,每個緩存FIFO設定1個傳輸門限值。當FIFO內(nèi)存儲數(shù)據(jù)量低于傳輸門限時,F(xiàn)IFO將被掛起;掛起機制可防止FIFO讀空導致增加未知冗余數(shù)據(jù),可通用于連續(xù)發(fā)送數(shù)據(jù)和斷續(xù)發(fā)送數(shù)據(jù)的情況,也適用于停止發(fā)送數(shù)據(jù)的情況。當FIFO內(nèi)存儲數(shù)據(jù)超過傳輸門限時,待當前幀傳輸完后,下一幀即開始讀取FIFO內(nèi)數(shù)據(jù)進行傳輸。為節(jié)省FIFO資源,F(xiàn)IFO門限值設為一幀可傳輸?shù)挠行?shù)據(jù)量。
當同時有多個緩存FIFO都超過傳輸門限時,需要對各FIFO內(nèi)數(shù)據(jù)進行編隊傳輸。編隊原則采用兼顧數(shù)據(jù)速率和時間累積的原則:以FIFO內(nèi)存儲數(shù)據(jù)量動態(tài)決定各FIFO傳輸優(yōu)先級,每次傳輸完一幀后,根據(jù)各FIFO內(nèi)存儲數(shù)據(jù)量更新傳輸編隊。如圖1所示,第一路數(shù)據(jù)傳輸速率最高,F(xiàn)IFO1首先到達門限,數(shù)據(jù)優(yōu)先傳輸;傳輸完一幀后,若FIFO1數(shù)據(jù)量仍是最高,則繼續(xù)傳輸FIFO1內(nèi)數(shù)據(jù);隨著時間累積,相對低速數(shù)據(jù)總有超過高速數(shù)據(jù)的時候,此時傳輸相對低速數(shù)據(jù)。對于暫時不用的數(shù)據(jù)路,相應FIFO始終掛起(如圖1中FIFO4),不會影響其他路數(shù)據(jù)的傳輸。
圖1 智能編隊示意圖
編隊機制是本系統(tǒng)的智能化,不僅可以自動判決各路數(shù)據(jù)的優(yōu)先級,還可防止高速率數(shù)據(jù)長時間占用傳輸通道導致低速數(shù)據(jù)溢出的問題。編隊機制也支持指令決定優(yōu)先級的功能,且指令優(yōu)先級高于自動識別功能。
為了便于后續(xù)模塊的處理,傳輸幀長固定為N byte,幀頭為H(4 byte),標識碼I(1 byte)用于區(qū)分不同路數(shù)據(jù),以便接收端還原各路數(shù)據(jù),其余(N-5)byte均為有效傳輸數(shù)據(jù)。為了防止無有效數(shù)據(jù)可傳輸導致傳輸數(shù)據(jù)流中斷,以填充空幀來保持數(shù)據(jù)流的連續(xù)性。故傳輸幀分為有效幀和空幀,如圖2所示。空幀出現(xiàn)頻率由多路數(shù)據(jù)速率總和與傳輸數(shù)據(jù)速率差距決定,當多路數(shù)據(jù)速率總和遠小于傳輸數(shù)據(jù)速率時,空幀才會大量出現(xiàn);當多路數(shù)據(jù)速率總和逼近傳輸數(shù)據(jù)速率時,空幀將消失,故信道利用率可高達(N-5)/N。
圖2 傳輸幀示意圖
發(fā)送端:將各路數(shù)據(jù)緩存在相應FIFO內(nèi),編隊模塊根據(jù)各FIFO上報的存儲數(shù)據(jù)量選出即將傳輸?shù)腇IFO,并生成標識碼I,待當前幀傳輸完畢,下一幀開始傳輸時,開啟選中的FIFO,讀取數(shù)據(jù)進行傳輸;若無可傳輸數(shù)據(jù),則通知空幀插入模塊傳輸空幀。數(shù)據(jù)融合傳輸流程如圖3所示。
接收端:通過幀同步模塊定位幀頭H,提取標識碼I,剔除空幀,解析還原各路數(shù)據(jù),并存入相應FIFO內(nèi)。為防止FIFO讀空的情況,為每個FIFO設定一個門限值,當?shù)陀陂T限值時,F(xiàn)IFO將被掛起。
圖3 數(shù)據(jù)融合傳輸流程圖
本系統(tǒng)基于Xilinx公司的XC4VLX60-10FF668I芯片開發(fā)。本系統(tǒng)資源開銷少,除占用FPGA內(nèi)部的FIFO資源外,其余資源極少占用,僅需嵌入原有的FPGA程序內(nèi),無需額外硬件開銷。
發(fā)送端接口類型有視頻接口、同步422、LVDS、Cameralink,可支持DVD、攝像頭、可見光、紅外、CCD數(shù)碼相機、低速SAR等多種傳感器的輸入數(shù)據(jù)源。接收端輸出接口有模擬視頻口和網(wǎng)口。模擬視頻數(shù)據(jù)可通過監(jiān)視器還原視頻圖像;網(wǎng)口可將不同路圖像數(shù)據(jù)輸出給目標設備。此外本系統(tǒng)還配有DSP,用于對視頻圖像進行壓縮編碼。硬件平臺框圖如圖4所示。
多種傳感器數(shù)據(jù)通過不同接口進入發(fā)送端:
圖4 系統(tǒng)硬件平臺框圖
1)第1路圖像數(shù)據(jù)為標準模擬視頻信號,需經(jīng)過AD離散化采用后形成并行數(shù)據(jù)輸入到FPGA內(nèi),F(xiàn)PGA根據(jù)視頻標準格式將AD采樣后的數(shù)據(jù)通過McBSP(Multichannel Buffered Serial Port)接口輸出給DSP,DSP將其進行壓縮編碼形成碼流數(shù)據(jù)后再通過McBSP接口返回給FPGA;McBSP接口為64 bit并行數(shù)據(jù),針對本系統(tǒng)應用在數(shù)據(jù)接收緩存模塊需采用2級FIFO;
2)第2路圖像數(shù)據(jù)為串行數(shù)字信號,通過同步422接口輸入到FPGA進行數(shù)據(jù)接收緩存;
3)第3路圖像數(shù)據(jù)為串行數(shù)字信號,通過LVDS接口輸入到FPGA進行數(shù)據(jù)接收緩存;
4)第4路圖像數(shù)據(jù)為Cameralink的高清圖像,28 bit并行數(shù)字信號,通過Cameralink接口輸入到FPGA,與第1路的標清視頻圖像相同,需要經(jīng)DSP壓縮后方可傳輸。
4路數(shù)據(jù)源經(jīng)過數(shù)據(jù)接口緩存模塊處理后,智能編隊模塊根據(jù)各FIFO上報的存儲數(shù)據(jù)量確定各路數(shù)據(jù)傳輸?shù)膬?yōu)先級,形成復接數(shù)據(jù)流。
接收端FPGA根據(jù)幀標識碼I解析還原各路數(shù)據(jù),并存入相應FIFO內(nèi):
1)FPGA將第1路碼流數(shù)據(jù)通過McBSP接口輸出給DSP進行解碼還原標準視頻圖像后,再通過McBSP接口返回給FPGA,F(xiàn)PGA輸出給DA進行數(shù)模轉化恢復模擬視頻信號,通過監(jiān)視器顯示第1路圖像;
2)第2至第4路圖像通過不同網(wǎng)口輸出給目標設備進行后期應用處理。
本系統(tǒng)算法內(nèi)參數(shù)設置如下:復接幀幀同步碼H為0x1ACFFC1D,幀長N為1 084 byte。發(fā)送端緩存FIFO門限值為1 079 byte(N-5),接收端緩存FIFO門限值為1 024 byte,故信道最高傳輸利用率為(N-5)/N=99%。
為驗證本系統(tǒng)的可行性,搭建上述硬件平臺。
第1路外接標清 DVD,PAL制,25 f/s(幀/秒)圖像,圖像像素尺寸為720×576,8 bit灰度圖像。經(jīng)DSP壓縮后生成2 Mbit/s碼流,傳輸?shù)浇邮斩撕?,?jīng)DSP解壓縮后將還原的視頻圖像輸出給監(jiān)視器顯示,如圖5a所示。
圖5 系統(tǒng)實驗結果圖
第2路外接實驗室測試設備輸出的1 Mbit/s純數(shù)字信號,為便于驗證本系統(tǒng)傳輸數(shù)據(jù)的正確性,將該路數(shù)字信號設成幀內(nèi)容均相同,僅幀計數(shù)器有變化的幀格式。幀頭為0xEE0036,緊跟幀頭后有一字節(jié)表示幀計數(shù)器,幀長480 byte(包括幀頭),經(jīng)本系統(tǒng)傳輸后,由網(wǎng)口1輸出到工控機,接收到的數(shù)據(jù)信號與發(fā)送的數(shù)字信號相同。
第3路外接實驗室測試設備輸出的500 kbit/s純數(shù)字信號,驗證方法與第2路相同,僅接口類型和速率不同,該路數(shù)據(jù)接收正常。
第4路外接Cameralink接口的高清攝像頭,base模式,30 f/s,圖像像素尺寸為1 024 ×768,24 bit三分量彩色圖像。經(jīng)DSP壓縮后生成4 Mbit/s碼流,傳輸?shù)浇邮斩撕?,?jīng)DSP解壓縮后將還原的高清圖像通過網(wǎng)口3輸出給工控機,如圖5b所示。
實驗結果表明,本系統(tǒng)可同時支持多源信息實時傳輸。
本文針對軍用設備的小型化、多傳感器和傳輸實時性的要求,提出了一種基于FPGA的多源信息實時傳輸系統(tǒng)。該系統(tǒng)解決了現(xiàn)有算法的四大弊端:1)通用性。對于同步接口信息,可實現(xiàn)透傳,無需知道幀格式和數(shù)據(jù)速率,可廣泛通用于各類傳感器。2)信道利用率。為各路數(shù)據(jù)編隊動態(tài)傳輸,信道利用率可高達99%。3)智能性??勺詣幼R別各路數(shù)據(jù)優(yōu)先級,也可根據(jù)指令決定優(yōu)先級。4)擴展性。本系統(tǒng)不局限數(shù)據(jù)源個數(shù),可根據(jù)實際情況擴展。
目前本系統(tǒng)已成功應用于多項國家“863”預研項目和無人機及飛艇等型號項目中。實際應用證明,本系統(tǒng)運行穩(wěn)定可靠,適應性強。
[1] ABDULLAH M K,MAHBDIRAJIG A,ELHAG M F.A new duty cycle based digital multiplexing technique[C]//Proc.IEEE International Conference on Telecommunications.[S.l.]:IEEE Press,2007:526-530.
[2] WANG H S,QIN X Y,ZENG LG,etal.Decoding and recovery of clock synchronization in digital multiplexing system[J].IEEE Trans.Communications,2003,51(5):825-831.
[3] PARK CH,YOO SM,CHOOAND H,et al.Multi-user data multiplexing for digital multimedia broadcasting[J].Computer Communications,2006,29(18):3970-3975.
[4] GERARD K,RAUWERDA C.Towards software defined radios using coarse-grained reconfigurable hardware[J].IEEE Trans.Very Large Scale Integration Systems,2008,16(1):3-13.
[5]劉力維.一種新型的數(shù)字圖像/話音傳輸系統(tǒng)的實現(xiàn)方案[J].電視技術,2001,25(11):27-28.
[6]劉昌錦,劉永峰.基于FPGA的異步數(shù)字復接系統(tǒng)[J].計算機測量與控制,2007,15(12):1829-1831.
[7]楊保平,陳永光,陳軍,等.基于FPGA的戰(zhàn)術數(shù)據(jù)鏈中繼傳輸復接技術[J].系統(tǒng)工程與電子技術,2010,32(12):2628-2631.