文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2016.10.018
中文引用格式: 陳一波,楊玉華,,王紅亮,,等. 高速數(shù)據(jù)采集與光纖傳輸系統(tǒng)的設計與實現(xiàn)[J].電子技術(shù)應用,2016,,42(10):73-76.
英文引用格式: Chen Yibo,,Yang Yuhua,Wang Hongliang,,et al. Design and implementation of high speed data acquisition and fiber-optical transmission system[J].Application of Electronic Technique,,2016,42(10):73-76.
0 引言
在航天,、雷達,、通信等領域都需要進行大量數(shù)據(jù)處理,而數(shù)據(jù)采集與傳輸是數(shù)據(jù)處理的前提,。但是隨著數(shù)據(jù)采集精度的不斷提高,,龐大的數(shù)據(jù)量導致數(shù)據(jù)傳輸面臨巨大壓力,。傳統(tǒng)并行數(shù)據(jù)傳輸模式傳輸速率已經(jīng)不能滿足高速采集領域的傳輸需求,,串行傳輸技術(shù)不僅克服了輸出速率不足的問題,而且不存在高速傳輸并行信號的偏移問題,,可以顯著提高通信系統(tǒng)間的數(shù)據(jù)傳輸效果[1],。目前常用的LVDS串行傳輸方式傳輸速度僅有數(shù)百兆比特,與此同時LVDS差分走線對PCB設計要求較高[2],。而光纖傳輸具有傳輸頻帶寬,、通信容量大、抗干擾能力強,、布板簡單等優(yōu)點[3],。傳統(tǒng)單路光纖傳輸速率很難超過5 Gb/s,基于此本系統(tǒng)通過兩路光纖增加帶寬,,提高傳輸速率,。
基于以上分析,本文設計了一種高速數(shù)據(jù)采集與光纖傳輸系統(tǒng),。系統(tǒng)控制設計采用FPGA實現(xiàn),,F(xiàn)PGA器件兼有可編程性和高速I/O的技術(shù)優(yōu)勢,可以滿足串行傳輸協(xié)議及演變進化的需求,,已成為實現(xiàn)串行接口應用的理想平臺[4],。
1 方案設計
數(shù)據(jù)采集與光纖傳輸系統(tǒng)采用模塊化設計,主要由電源模塊,、8路AD9226采集電路模塊,、可編程時鐘電路模塊、FPGA主控模塊,、SFP光電轉(zhuǎn)換模塊等部分組成,。電源模塊主要完成系統(tǒng)供電,AD9226采集電路實現(xiàn)高速數(shù)據(jù)采集,,可編程時鐘電路實現(xiàn)不同頻率時鐘產(chǎn)生,,F(xiàn)PGA主控模塊完成各個模塊時序產(chǎn)生,,SFP光電轉(zhuǎn)換模塊進行電信號到光信號的轉(zhuǎn)換實現(xiàn)光纖傳輸。系統(tǒng)組成框圖如圖1所示,。
2 主要硬件模塊設計
2.1 FPGA控制模塊
系統(tǒng)采用Xilinx公司的Virtex-6 FPGA作為主控芯片,,Virtex-6 FPGA是Xilinx較新一代高性能FPGA,內(nèi)部集成多個吉比特高速收發(fā)器,,支持多種IP核,,在高速數(shù)據(jù)采集領域表現(xiàn)比較出色[4]。FPGA控制模塊主要實現(xiàn)8路A/D采集模塊工作時序生成,、可編程時鐘電路控制,、高速光纖通信以及外部觸發(fā)信號判別。
2.2 A/D采集模塊
A/D采集模塊采用了8片ADI公司的AD9226芯片,,該芯片是一種單通道,、12 bit、65 MS/s模數(shù)轉(zhuǎn)換器,,可采用單端輸入或差分輸入[5],。AD9226內(nèi)部可提供1 V和2 V兩種基準電壓源,本系統(tǒng)中設計采用2 V基準電壓,。由于AD9226電壓輸入范圍為1.0 V~3.0 V,,為了擴大電壓采集范圍,使系統(tǒng)電壓范圍可以達到-5 V~+5 V,,利用運算放大器AD8065在AD9226前端設計了一個衰減電路,。根據(jù)滿足采集電壓范圍的要求,衰減電路需要滿足:
其中Vin為輸入電壓值,,Vout為輸出電壓值,。A/D轉(zhuǎn)換出的數(shù)字信號只需按式(1)反向運算即可得到輸入電壓的真實數(shù)值。單路A/D采集電路如圖2所示,。
2.3 光纖通信模塊
本系統(tǒng)中AD9226為12 bit ADC,,8路ADC采集到的數(shù)據(jù)為96 bit。為了保證數(shù)據(jù)正確傳輸,,與上位機協(xié)議將A/D采集數(shù)據(jù)進行編幀,。設置16 bit幀頭EB90,16 bit幀尾146F,,8路A/D采集數(shù)據(jù)按照上位機編碼協(xié)議打包成一個128 bit的數(shù)據(jù)幀,。本設計中AD9226最高采樣率設置為60 MHz,8路A/D采集電路最高數(shù)據(jù)速率達5.76 Gb/s,,整個系統(tǒng)的最高數(shù)據(jù)速率達7.68 Gb/s,。為了滿足整個系統(tǒng)傳輸速率的要求,采用了基于Aurora協(xié)議的光纖傳輸方案,。Aurora協(xié)議是Xilinx公司開發(fā)的一種支持多路光纖傳輸,,且具備信道初始化與時鐘矯正等功能的高速串并轉(zhuǎn)換協(xié)議[6],。針對不同應用的需求,Aurora協(xié)議可支持流(Streaming)和幀(Framing)兩種數(shù)據(jù)傳輸模式,,以及全雙工,、單工數(shù)據(jù)通信方式[6]。Aurora 8b/10b IP核結(jié)構(gòu)框圖如圖3[7]所示,。
本設計中Aurora IP核數(shù)據(jù)接口數(shù)據(jù)寬度配置為8 B,,參考時鐘配置為200 MHz,配置兩路光纖鏈路,,光纖鏈路速率配置為5 Gb/s,,采用全雙工,幀格式進行數(shù)據(jù)傳輸,。在Aurora IP核數(shù)據(jù)接收模塊與A/D采集控制模塊之間添加一個數(shù)據(jù)接收FIFO達到數(shù)據(jù)位數(shù)匹配,。在Aurora IP核數(shù)據(jù)發(fā)送模塊與A/D采集控制模塊之間添加一個數(shù)據(jù)發(fā)送FIFO達到數(shù)據(jù)速率匹配和數(shù)據(jù)緩存的目的。
3 數(shù)字邏輯設計
數(shù)字邏輯設計主要包括可編程時鐘電路配置模塊,、AD9226數(shù)據(jù)采集電路控制模塊,、外部觸發(fā)模塊,,以及基于Aurora協(xié)議的光纖收發(fā)模塊的控制設計,。其中可編程時鐘電路主要是通過SPI總線配置寄存器產(chǎn)生不同頻率時鐘信號,將不同頻率的時鐘提供給8路AD9226數(shù)據(jù)采集電路實現(xiàn)不同采樣率下的信號采集,,完成對AD9226數(shù)據(jù)采集電路的控制,。
3.1 外部觸發(fā)模塊
在數(shù)據(jù)采集過程中,為了達到某種特定條件再開始采集,,需要在系統(tǒng)下發(fā)開始采集命令后,,由被采集信號控制具體開始采集時刻,為了滿足這些需求,,本系統(tǒng)設計了外部邊沿觸發(fā)和門控觸發(fā)模式,。上位機下發(fā)等待觸發(fā)以及觸發(fā)類型命令后,硬件電路首先判斷是否需要外部觸發(fā),,其次判斷觸發(fā)類型,。當觸發(fā)類型為外部邊沿觸發(fā)時,第一個外部脈沖上升沿到來時觸發(fā)系統(tǒng)開始采集,,下一個外部脈沖上升沿到來時觸發(fā)系統(tǒng)停止采集,;當觸發(fā)類型為外部門控觸發(fā)時,外部脈沖為高電平時開始采集,,為低電平時停止采集,。如果不等待外部觸發(fā),則直接觸發(fā)電路開始采集,。邊沿觸發(fā)示意圖如圖4所示,,門控觸發(fā)示意圖如圖5所示,。
3.2 基于Aurora協(xié)議的光纖收發(fā)模塊
系統(tǒng)上電后光纖傳輸鏈路首先進行初始化,然后信號Channel_up和Lane_up[1:0]拉高,,準備開始接收或發(fā)送數(shù)據(jù),,系統(tǒng)完成初始化。初始化后等待接收上位機命令,,并按照上位機通信協(xié)議解析命令,。
系統(tǒng)接收到上位機命令后,開始解析命令,,首先按照上位機下發(fā)的采樣率參數(shù),,配置可編程時鐘電路產(chǎn)生對應頻率的時鐘??删幊虝r鐘電路配置完成后判斷觸發(fā)模式,,如果為外部觸發(fā),判斷外部觸發(fā)方式等待觸發(fā),,否則直接開始采集,。在數(shù)據(jù)采集過程中如果收到停止命令,或者外部觸發(fā)停止,,則系統(tǒng)處于復位狀態(tài),,停止采集。程序流程圖如圖6所示,。
3.2.1 光纖數(shù)據(jù)發(fā)送模塊
光纖數(shù)據(jù)發(fā)送模塊主要用于將數(shù)據(jù)按照Aurora協(xié)議中的數(shù)據(jù)幀(Framing)格式發(fā)送,。本系統(tǒng)中發(fā)送模塊主要設計了數(shù)據(jù)包幀頭標志TX_DATA_SOF、數(shù)據(jù)包幀尾標志TX_DATA_EOF,、數(shù)據(jù)有效信號TX_DATA_Vaild,,以及要發(fā)送的數(shù)據(jù)TX_DATA。其中TX_DATA_SOF為低時表示幀頭有效,,TX_DATA_EOF為低時表示幀尾有效,,TX_DATA_Vaild為低代表數(shù)據(jù)有效[7]。具體傳輸時序如圖7所示,。
3.2.2 光纖數(shù)據(jù)接收模塊
光纖數(shù)據(jù)接收模塊主要實現(xiàn)外部數(shù)據(jù)接收,。與數(shù)據(jù)發(fā)送模塊類似,在數(shù)據(jù)接收模塊設計中主要按照Aurora協(xié)議中的數(shù)據(jù)幀格式接收數(shù)據(jù),。其中數(shù)據(jù)包幀頭標志為RX_DATA_SOF,,數(shù)據(jù)包幀尾標志為RX_DATA_EOF,數(shù)據(jù)有效信號為RX_DATA_Vaild,,要發(fā)送的數(shù)據(jù)為RX_DATA,。RX_DATA_SOF為低時表示幀頭有效,RX_DATA_EOF為低時表示幀尾有效, RX_DATA_Vaild為低代表數(shù)據(jù)有效[7],。具體傳輸時序如圖8所示,。
4 測試結(jié)果
為了直觀測試采集系統(tǒng)測量精度,實驗中8路A/D分別采集8種不同電壓值,,將采集數(shù)據(jù)按照幀格式上傳至上位機,,電壓采集測試部分數(shù)據(jù)如圖9所示。
上位機收到數(shù)據(jù)以后,,按照協(xié)議解析數(shù)據(jù)將多次測量數(shù)據(jù)取平均按式(1)反向計算就得到真實測量值,,結(jié)果如表1所示。
由表1觀察得到,,系統(tǒng)采集到的電壓值最大誤差為0.08%,,最小誤差0%,達到了設計目標,。為了進一步驗證采集系統(tǒng)的采樣率,,利用安捷倫信號發(fā)生器產(chǎn)生了8種幅度不同頻率相同的的正弦波。通過上位機配置AD9226采集電路,,以60 MHz采樣率對模擬信號采樣,,將采樣數(shù)據(jù)利用上位機軟件分析,分析結(jié)果如圖10所示,。從圖中可以看出8路A/D采集可以同時以60 MHz采樣率進行采樣,,正弦波波形連續(xù)說明傳輸系統(tǒng)沒有丟數(shù),正弦波波形光滑說明系統(tǒng)傳輸也沒有出現(xiàn)誤碼,,證明系統(tǒng)可以以60 MHz采樣率工作,,而且光纖傳輸速率可以滿足7.68 Gb/s的要求。由此進一步證明了采集系統(tǒng)的可靠性,。
5 總結(jié)
本文介紹了一種以高速數(shù)據(jù)采集與光纖傳輸系統(tǒng)的設計過程。經(jīng)過測試證明,,系統(tǒng)每通道采樣速率為60 MHz,,最大傳輸速率7.68 Gb/s。目前,,本系統(tǒng)已成功應用于某型高速數(shù)據(jù)記錄儀,,該記錄儀在多種測試條件下都表現(xiàn)出良好的測試效果。該系統(tǒng)還可以應用于其他高速數(shù)據(jù)采集領域,。
參考文獻
[1] 黃萬維,,董永吉.Xilinx FPGA高速串行傳輸技術(shù)與應用[M].北京:電子工業(yè)出版社,2015.
[2] 王冰,,靳學明.LVDS技術(shù)及其在多信道高速數(shù)據(jù)傳輸中的應用[J].電子技術(shù)應用,,2003(3):55-56.
[3] 姜漫.10Gbps/40Gbps光纖通信技術(shù)研究與系統(tǒng)實現(xiàn)[D].長春:中國科院學長春光學精密機械與物理研究所,2012.
[4] 徐文波,,田耘.Xilinx FPGA開發(fā)實用教程[M].北京:清華大學出版社,,2012.
[5] 趙健.導航接收機數(shù)字信號處理平臺設計與實現(xiàn)[D].哈爾濱:哈爾濱工程大學,,2006.
[6] 魯睿其,曾健平,,趙豫斌,,等.基于Aurora協(xié)議光纖實時信號傳輸性能測試[J].核技術(shù),2015(3):49-53.
[7] Xilinx PG046.Xilinx logicore ip aurora 8B/10B product guide[EB/OL].(2014)[2016].http://www.xilinx.com/support/documentation/ip_documentation/aurora_8b10b/v11_0/pg046-au-rora-8b10b.pdf