REN Yongfeng,ZHANG Kaihua,CHENG Hailiang
(1.National Key Laboratory for Electronic Measurement Technology,North University of China,Taiyuan 030051,China; 2.The Vehicle Research Institute of Aerospace Long March,Beijing 100076,China)
Design of High-Speed Acquisition and Storage System Based on FPGA
REN Yongfeng1*,ZHANG Kaihua1,CHENG Hailiang2
(1.National Key Laboratory for Electronic Measurement Technology,North University of China,Taiyuan 030051,China; 2.The Vehicle Research Institute of Aerospace Long March,Beijing 100076,China)
For the mission of aircraft to identify the external environment and record the parameters,a method of the high-speed data acquisition and storage solutions was proposed based on FPGA.Through the reasonable circuit design of the AD9254,realized the high-speed acquisition of the video signal,the sampling rate is 132 Msample/s.Correcting the logic control of FPGA by the use of static simulation,and the problem of wrong data caused by the distortion clock in FPGA was solved.Two-stage pipeline of operation would be used at the storage of data,it can be written at a speed of 62 Mbyte/s.This system has been tested successfully in an engineering practice with high reliability and stability.
high speed data acquisition;video signal;static simulation;logic control;data storage
高速數據采集系統(tǒng)主要是針對視頻圖像信號的高速采集和數據存儲。采集記錄裝置應用于飛行器在特定飛行狀態(tài)下對視頻信號的采集和記錄,可以完成模擬信號的采樣和采樣數據的保存系統(tǒng),屬于采集存儲測試領域和高速固態(tài)記錄器的研究范疇[1]。
采集記錄裝置由采編器、存儲器及傳輸電纜共同組成。采編器在配套地面測試臺控制信號(S1、S2、S3、S4)的控制下,負責I、Q通道視頻信號的高速采集、轉換,數字量信息包括時間參數等經FPGA編碼后由LVDS傳送至存儲器存儲。設計采用14位ADC,高8位進行采樣,采樣速率為132 Msample/s,精度為0.4%。高速的數據采集能力對數據存儲提出了較高要求。存儲器接收LVDS傳輸的高速數據流,經接口電路還原,優(yōu)化,解串后通過FPGA邏輯控制存入FLASH芯片,存儲器容量為8 Gbyte,存儲速度為62 Mbyte/s,其外殼采用高強度,抗過載的合金鋼,確保飛行器落地后能夠有效回收,采編器不進行回收處理[2]。方案設計原理框圖如圖1所示。
根據采編器的功能需求,主處理器選用FPGA,可有效實現對ADC采集數據的接收、分組及編碼。選用ADI公司的AD9254芯片[3],該芯片具有單通道模擬輸入,14位數字輸出,采用外部時鐘源,最大時鐘頻率為150 MHz,有模擬和數字電源引腳,是一種低功耗器件。

圖1 方案設計原理框圖
采編器接收模擬信號,其輸入形式可以采取以下幾種:
(1)單端輸入,模擬信號經阻抗匹配、濾波加載到ADC輸入正極,正負極同時配置直流工作在AVDD/2。其優(yōu)點是節(jié)約設計成本,缺點是不能抑制共模噪聲,不能對輸入信號幅度進行縮放。
(2)運放配置成差分輸入,模擬信號采用差分輸入形式,通過前端運放把單路信號轉換成差分信號,經阻抗匹配、濾波后傳送給ADC,共模電壓同樣配置成AVDD/2。其優(yōu)點是采用差分輸入形式,有效抑制了共模噪聲的影響;若采用倍數可調的運放還可以增大輸入信號的幅度范圍;缺點是運放在放大信號的同時也放大了噪聲。
(3)射頻變壓器配置成差分輸入,前端通過變壓器把單路信號轉換成差分信號,匹配濾波后傳送給ADC,共模電壓同樣配置成AVDD/2。優(yōu)點是采用差分輸入,有效抑制了共模噪聲的影響,不會影響ADC的性能參數,且電路簡單。缺點是不能對輸入信號幅度進行縮放。
經上述3種方式綜合比較,選用電路簡單,性能穩(wěn)定的射頻變壓器配置成差分信號輸入方式。采集通道I、Q均采用一片AD9254實現,設計電路圖如圖2所示:clocknet0、cloclknet1為外部時鐘差分信號。
影響ADC數據采集的因素除了模擬信號的輸入外還有時鐘輸入。采集過程需要保證FPGA接收采樣數據時鐘和兩路ADC進行模數轉換的時鐘一致,為此采用時鐘管理芯片AD9513。該款芯片具有多種電平模式及多路輸出接口,并且具有極低的時鐘抖動性能,有助于提高系統(tǒng)穩(wěn)定性。采集電路時鐘信號由地面測試臺提供,經電氣隔離及濾波傳送給AD9513,AD9513將時鐘信號一分為三,同時提供給FPGA和兩片AD9254。FPGA再在S1~S4信號的控制下將數字量數據緩存、分組、編碼后發(fā)送至存儲器存儲。

圖2 視頻信號輸入接口電路
采編器采集模塊主要功能是數據的接收、分組、編碼及輸出。FPGA需要完成對ADC采集數據的緩存和讀取,由于ADC采用高8位傳送數據,系統(tǒng)每周期采樣時間為30 μs,傳送數據量為3 960 byte,設計采用4 kbyte FIFO實現,寫FIFO的時鐘與數據接收時鐘一致為132 MHz,讀FIFO時鐘為采編器提供124 MHz,采用8位數據寫入,8位數據讀出的方式,讀取時間為31.9 μs,滿足下一周期采集數據到來之前將FIFO中的數據全部讀取。
采用上述方案對視頻模擬信號進行采集,回讀存儲器數據后發(fā)現數據文件中有個別字節(jié)的誤碼出現,通過ChipScope Pro對寫FIFO內部時鐘信號和數據信號進行觀測,如圖3所示。
圖3中,clock在芯片內部傳輸時出現占空比失真的情況[4],縮短了數據建立的時間,進而保存了亞穩(wěn)態(tài)期間的數據,因此要對clock添加約束[5],達到優(yōu)化時鐘信號傳輸質量的目的,同時會增加邏輯用時以及布線用時。為減少地址線操作頻率,修改為16位數據寫入,8位數據讀出的操作方式。調整后的FIFO控制時序如圖4、圖5所示。

圖3 FPGA內部數據和寫FIFO內部時鐘信號

圖4 FIFO寫時序

圖5 FIFO讀時序
采集模塊工作是在S1~S4控制信號的時序配合下進行的,時序同時被編碼到數據流中作為幀結構[6]與采集數據一起記錄到存儲器中,用于數據文件的辨識。視頻信號采集的時序關系如圖6所示。

圖6 信號采集時序關系
采集模塊初始為預采集狀態(tài),S1為高電平時啟動視頻信號采集。采集狀態(tài)顯示為1#狀態(tài)和2#狀態(tài),當S2為高電平時處于1#狀態(tài),為低電平時處于2#狀態(tài)。S3信號同步每周期采樣的起始時刻。FPGA檢測到S4的上升沿時刻開始接收ADC芯片輸出的數據,采樣時間保持30 μs。FPGA將每周期采樣數據編為一幀,并在尾部加入幀結構,內容代表S1~S4信號的時間參數。
數據存儲部分設計雙存儲器分別用來存儲I、Q路的采集數據,為保證數據的高速存儲,每個存儲器都包含兩片Flash芯片[7],存儲方式采用二級流水線操作,這種操作方式是將一條指令分解成若干步驟,每個步驟的響應在時間上是相互重疊的,可以在同一時刻執(zhí)行多條指令,顯著加快指令的響應時間。兩片Flash芯片存儲的FPGA內部邏輯框圖如圖7所示。

圖7 存儲器FPGA內部邏輯框圖
在時序控制信號S4的控制下,存儲器將接收的數據分組,交替寫入FIFO1#和FIFO2#,在寫Flash1#的同時完成FIFO2#的緩存,在寫Flash2#的同時完成FIFO1#的緩存,存儲速度提高兩倍。單片Flash操作采用典型的雙片選交替雙平面編程的方式[8],寫入速度約為30.9 Mbyte/s,單個存儲器存儲速度約為62 Mbyte/s。
視頻信號采集記錄裝置應用于彈上工作系統(tǒng),主要完成對脈沖信號的采集存儲,在試驗階段利用I、Q路通道同時采集由信號源產生的正弦信號,經高速數據采集電路存儲在記錄器中,將記錄器中的數據由上位機軟件回收,得到數據文件SP-I-20130826-2209-37.dat,如圖8所示。

圖8 正弦信號回收數據
觀察數據幀格式正確,操作軟件對該數據文件進行分析并繪制圖形如圖9(a)所示,為采集到的正弦信號波形圖,觀察圖形波形穩(wěn)定,采集無異常。圖9(b)所示為針對飛行器在實際環(huán)境對脈沖信號的采集、存儲后的數據還原圖形,滿足采集記錄裝置對脈沖信號的采集要求,I、Q路信號相位一致性良好。

圖9
目前,飛行器在軍事領域的發(fā)展越來越快,在飛行試驗中需要采集和記錄的數據量也越來越大,對采集記錄裝置的數據采集速度和存儲速度提出了較高要求,基于FPGA的高速數據采集記錄系統(tǒng)在這樣的環(huán)境下應運而生,經過完整的地面聯(lián)試試驗,該系統(tǒng)已成功應用于測試項目,圓滿完成任務,驗證了其設計的優(yōu)越性和可靠性,具有廣泛深遠的應用和研究價值。
[1]焦亞濤,李娜娜.一種高速固態(tài)存儲系統(tǒng)的設計與實現[J].電測與儀表,2011,48(11):76-79.
[2]宋丹,任勇峰,姚宗.一種低功耗水下多通道實時采集存儲裝置的設計[J].電子器件,2013,36(4):502-505.
[3]李永麗.多通道高速數據采集及大容量存儲系統(tǒng)設計[D].西安電子科技大學,2009.
[4]周海斌.靜態(tài)時序分析在高速FPGA設計中的應用[J].電子工程師,2005,31(11):41-44.
[5]林昌輝,樊曉椏.FPGA設計中優(yōu)化時序的原則與方法[J].微處理機,2007(3):6-13.
[6]儲成群.基于LVDS接口的高速數據記錄器的設計[D].中北大學,2011.
[7]舒文麗,吳云峰,孫長勝.基于NAND Flash的海量存儲器的設計[J].電子器件,2012,35(1):107-110.
[8]郭小兵,李圣昆,賈興中.基于彈載存儲系統(tǒng)的高速固態(tài)數據記錄器設計[J].微電子學與計算機,2013,30(2):25-28.

張凱華(1991-),男,漢族,山西臨汾人,中北大學測試計量技術及儀器專業(yè)在讀碩士研究生,研究方向為電子測試儀器與系統(tǒng),kai.hua2008@163.com;

任勇峰(1968-),男,漢族,山西中陽人,教授,博士生導師,主要從事彈載固態(tài)記錄器和自動測控臺等方向的研究工作。
EEACC:7210G10.3969/j.issn.1005-9490.2015.01.029
基于FPGA的高速數據采集存儲系統(tǒng)設計
任勇峰1*,張凱華1,程海亮2
(1.電子測試技術國家重點實驗室,中北大學,太原030051;2.北京航天長征飛行器研究所,北京100076)
針對飛行器在飛行狀態(tài)下需要對外部環(huán)境進行識別和參數記錄任務,提出基于FPGA的高速數據采集存儲方案。通過對AD9254芯片前端電路進行合理設計,實現其對視頻信號的高速采集,采樣速率為132 Msample/s。利用FPGA靜態(tài)仿真實現邏輯控制的修正,解決了因內部時鐘傳輸占空比失真而導致誤碼產生的問題。數據存儲采用二級流水線的操作方式,寫速率可達62 Mbyte/s。系統(tǒng)設備經地面聯(lián)試試驗已成功應用于工程實踐,具有較高的可靠性和穩(wěn)定性。
高速數據采集;視頻信號;靜態(tài)仿真;邏輯控制;數據存儲
TN92
A文獻標識碼:1005-9490(2015)01-0135-05
2014-02-19修改日期:2014-03-10