本站小編為你精心準備了FPGA的多源信息傳輸系統參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
《電視技術雜志》2014年第十一期
1數據智能編隊
當同時有多個緩存FIFO都超過傳輸門限時,需要對各FIFO內數據進行編隊傳輸。編隊原則采用兼顧數據速率和時間累積的原則:以FIFO內存儲數據量動態決定各FIFO傳輸優先級,每次傳輸完一幀后,根據各FIFO內存儲數據量更新傳輸編隊。如圖1所示,第一路數據傳輸速率最高,FIFO1首先到達門限,數據優先傳輸;傳輸完一幀后,若FIFO1數據量仍是最高,則繼續傳輸FIFO1內數據;隨著時間累積,相對低速數據總有超過高速數據的時候,此時傳輸相對低速數據。對于暫時不用的數據路,相應FIFO始終掛起(如圖1中FIFO4),不會影響其他路數據的傳輸。編隊機制是本系統的智能化,不僅可以自動判決各路數據的優先級,還可防止高速率數據長時間占用傳輸通道導致低速數據溢出的問題。編隊機制也支持指令決定優先級的功能,且指令優先級高于自動識別功能。
2實時傳輸流程
為了便于后續模塊的處理,傳輸幀長固定為Nbyte,幀頭為H(4byte),標識碼I(1byte)用于區分不同路數據,以便接收端還原各路數據,其余(N-5)byte均為有效傳輸數據。為了防止無有效數據可傳輸導致傳輸數據流中斷,以填充空幀來保持數據流的連續性。故傳輸幀分為有效幀和空幀,如圖2所示。空幀出現頻率由多路數據速率總和與傳輸數據速率差距決定,當多路數據速率總和遠小于傳輸數據速率時,空幀才會大量出現;當多路數據速率總和逼近傳輸數據速率時,空幀將消失,故信道利用率可高達(N-5)/N。發送端:將各路數據緩存在相應FIFO內,編隊模塊根據各FIFO上報的存儲數據量選出即將傳輸的FIFO,并生成標識碼I,待當前幀傳輸完畢,下一幀開始傳輸時,開啟選中的FIFO,讀取數據進行傳輸;若無可傳輸數據,則通知空幀插入模塊傳輸空幀。數據融合傳輸流程如圖3所示。接收端:通過幀同步模塊定位幀頭H,提取標識碼I,剔除空幀,解析還原各路數據,并存入相應FIFO內。為防止FIFO讀空的情況,為每個FIFO設定一個門限值,當于門限值時,FIFO將被掛起。
3系統硬件實現平臺
本系統基于Xilinx公司的XC4VLX60-10FF668I芯片開發。本系統資源開銷少,除占用fpga內部的FIFO資源外,其余資源極少占用,僅需嵌入原有的FPGA程序內,無需額外硬件開銷。發送端接口類型有視頻接口、同步422、LVDS、Camer-alink,可支持DVD、攝像頭、可見光、紅外、CCD數碼相機、低速SAR等多種傳感器的輸入數據源。接收端輸出接口有模擬視頻口和網口。模擬視頻數據可通過監視器還原視頻圖像;網口可將不同路圖像數據輸出給目標設備。此外本系統還配有DSP,用于對視頻圖像進行壓縮編碼。硬件平臺框圖如圖4所示。多種傳感器數據通過不同接口進入發送端:1)第1路圖像數據為標準模擬視頻信號,需經過AD離散化采用后形成并行數據輸入到FPGA內,FPGA根據視頻標準格式將AD采樣后的數據通過McBSP(Multi-channelBufferedSerialPort)接口輸出給DSP,DSP將其進行壓縮編碼形成碼流數據后再通過McBSP接口返回給FPGA;McBSP接口為64bit并行數據,針對本系統應用在數據接收緩存模塊需采用2級FIFO;2)第2路圖像數據為串行數字信號,通過同步422接口輸入到FPGA進行數據接收緩存;3)第3路圖像數據為串行數字信號,通過LVDS接口輸入到FPGA進行數據接收緩存;4)第4路圖像數據為Cameralink的高清圖像,28bit并行數字信號,通過Cameralink接口輸入到FPGA,與第1路的標清視頻圖像相同,需要經DSP壓縮后方可傳輸。4路數據源經過數據接口緩存模塊處理后,智能編隊模塊根據各FIFO上報的存儲數據量確定各路數據傳輸的優先級,形成復接數據流。接收端FPGA根據幀標識碼I解析還原各路數據,并存入相應FIFO內:1)FPGA將第1路碼流數據通過McBSP接口輸出給DSP進行解碼還原標準視頻圖像后,再通過McBSP接口返回給FPGA,FPGA輸出給DA進行數模轉化恢復模擬視頻信號,通過監視器顯示第1路圖像;2)第2至第4路圖像通過不同網口輸出給目標設備進行后期應用處理。本系統算法內參數設置如下:復接幀幀同步碼H為0x1ACFFC1D,幀長N為1084byte。發送端緩存FIFO門限值為1079byte(N-5),接收端緩存FIFO門限值為1024byte,故信道最高傳輸利用率為(N-5)/N=99%。
4試驗結果
為驗證本系統的可行性,搭建上述硬件平臺。第1路外接標清DVD,PAL制,25f/s(幀/秒)圖像,圖像像素尺寸為720×576,8bit灰度圖像。經DSP壓縮后生成2Mbit/s碼流,傳輸到接收端后,經DSP解壓縮后將還原的視頻圖像輸出給監視器顯示,如圖5a所示。第2路外接實驗室測試設備輸出的1Mbit/s純數字信號,為便于驗證本系統傳輸數據的正確性,將該路數字信號設成幀內容均相同,僅幀計數器有變化的幀格式。幀頭為0xEE0036,緊跟幀頭后有一字節表示幀計數器,幀長480byte(包括幀頭),經本系統傳輸后,由網口1輸出到工控機,接收到的數據信號與發送的數字信號相同。第3路外接實驗室測試設備輸出的500kbit/s純數字信號,驗證方法與第2路相同,僅接口類型和速率不同,該路數據接收正常。第4路外接Cameralink接口的高清攝像頭,base模式,30f/s,圖像像素尺寸為1024×768,24bit三分量彩色圖像。經DSP壓縮后生成4Mbit/s碼流,傳輸到接收端后,經DSP解壓縮后將還原的高清圖像通過網口3輸出給工控機,如圖5b所示。實驗結果表明,本系統可同時支持多源信息實時傳輸。
5小結
本文針對軍用設備的小型化、多傳感器和傳輸實時性的要求,提出了一種基于FPGA的多源信息實時傳輸系統。該系統解決了現有算法的四大弊端:1)通用性。對于同步接口信息,可實現透傳,無需知道幀格式和數據速率,可廣泛通用于各類傳感器。2)信道利用率。為各路數據編隊動態傳輸,信道利用率可高達99%。3)智能性。可自動識別各路數據優先級,也可根據指令決定優先級。4)擴展性。本系統不局限數據源個數,可根據實際情況擴展。目前本系統已成功應用于多項國家“863”預研項目和無人機及飛艇等型號項目中。實際應用證明,本系統運行穩定可靠,適應性強。
作者:季玲玲國輝張志芳康崢單位:航天恒星科技有限公司