《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 設(shè)計應(yīng)用 > 基于雙備份多路數(shù)據(jù)采集存儲系統(tǒng)的設(shè)計與實踐
基于雙備份多路數(shù)據(jù)采集存儲系統(tǒng)的設(shè)計與實踐
來源:電子技術(shù)應(yīng)用2012年第2期
郭小兵,李圣昆,,任勇峰,,董小娜
中北大學(xué) 電子測試技術(shù)國家重點實驗室,山西 太原030051
摘要: 給出了基于雙備份存儲器的數(shù)據(jù)采集存儲系統(tǒng)的電路設(shè)計和控制邏輯設(shè)計,。在介紹多通道異步時分數(shù)據(jù)采集電路的同時,,詳細地介紹了采用FPGA實現(xiàn)采集控制邏輯的方法,實現(xiàn)了對數(shù)據(jù)的幀結(jié)構(gòu)在線可編程,,也給出了控制邏輯及控制流程,。實踐證明,該設(shè)計實現(xiàn)了對23路模擬信號的高精度采集,、存儲,,滿足了工程實際需求。
中圖分類號: TP273
文獻標識碼: A
文章編號: 0258-7998(2012)02-0066-04
The design and practice of back-up multiplex data acquisition and storage system
Guo Xiaobing, Li Shengkun, Ren Yongfeng,,Dong Xiaona
National Key Laboratory for Electronic Measurement Technology, North University of China, Taiyuan 030051, China
Abstract: The circuit design and control logic design for the data acquisition and storage system based on double backup memory are introduced in this paper. This paper combined the theory and practice when introducing asynchronous time-division multi-channel data acquisition circuit, meanwhile, it had a detailed description of the method for acquisition control logic via FPGA, we not only achieve the online programmable for the frame structure of data, but also give the control logic and its flow chart. the design can acquire 23 channels analog signals, achieving high-precision signal acquisition, storage, to meet the needs of the practical engineering.
Key words : data acquisition; FPGA; double backup; acquisition and storage system

    隨著信息技術(shù)的發(fā)展以及數(shù)字集成電路速度的提高,,實時處理大量數(shù)據(jù)已經(jīng)成為現(xiàn)實,但在一些特殊條件下,,無法實時傳輸數(shù)據(jù),,必須使用存儲測試方法。該方法是在不影響被測對象或在允許的范圍下,,將微型存儲測試系統(tǒng)置入被測體內(nèi),,現(xiàn)場實時完成信息的快速采集與存儲,,并回收存儲器,由計算機處理,,再現(xiàn)被測信息的一種動態(tài)測試技術(shù)[1],。實際應(yīng)用中,由于在不同的條件下對采樣速率和采樣精度的要求有所不同,,系統(tǒng)的實現(xiàn)方法也各有特點,。為了增加系統(tǒng)數(shù)據(jù)回收的可靠性,本文介紹了基于雙備份存儲的數(shù)據(jù)采集存儲系統(tǒng)的設(shè)計與實現(xiàn)方法,。

1 技術(shù)要求
    在某飛行體遙測系統(tǒng)中,為了獲取飛行體的參數(shù),,需要設(shè)計一種數(shù)據(jù)采集存儲系統(tǒng),要求實現(xiàn)對23路模擬信號的采集,、編幀存儲,。要求輸入信號電平為0~5 V,系統(tǒng)總采樣率為245.76 kHz, 記錄時間不小于500 s,,對速變信號的采樣率為5.12 kHz,緩變信號的采樣率為160 Hz, 23路模擬量信號輸入中包括9路速變信號和14路緩變信號,。
2 整體方案的設(shè)計
    信號采集存儲系統(tǒng)是基于雙備份的數(shù)據(jù)存儲器設(shè)計而成,整個系統(tǒng)以FPGA為核心控制器,,控制數(shù)據(jù)的采集,、編幀存儲。系統(tǒng)結(jié)構(gòu)如圖1所示,。

2.1采編器電路的設(shè)計
    采編器[2]主要完成對各種被測信號的采集,,并對數(shù)據(jù)進行實時編碼、邏輯控制和實時存儲控制,,分為速變,、緩變信號采集模塊和采集控制模塊,兩者通過內(nèi)部總線相連,。
   速變,、緩變信號采集模塊主要完成23路輸入模擬信號的調(diào)理,、選擇,、A/D采集等功能,包括輸入接口電路、濾波跟隨電路,、模擬通道切換電路,、信號調(diào)理電路等。
    采集控制模塊完成模擬信號的A/D采集控制,、編幀,、內(nèi)部時序控制等功能,包括長線接口電路,、控制電路,、存儲器接口電路,、幀結(jié)構(gòu)下載電路等。
    采編器的主控器件采用XC2S100E型現(xiàn)場可編程門陣列(FPGA),該器件體積小,、功耗低,、內(nèi)部延時小,全部控制邏輯由硬件自動完成,,編程配置靈活,,可實現(xiàn)程序的并行執(zhí)行,因而可大大提高系統(tǒng)的工作性能,。該采編器的電壓采集范圍為0~+5 V,,采集精度不低于0.1%。由于FPGA本身不具備A/D轉(zhuǎn)換模塊,,因此各通道的模擬信號分別經(jīng)信號調(diào)理電路后,,由模擬多路開關(guān)ADG506選擇模擬通道,再經(jīng)外部高速AD7667實現(xiàn)A/D轉(zhuǎn)換,,轉(zhuǎn)換的數(shù)據(jù)在FPGA內(nèi)編幀后輸出到存儲器中,。具體的每幀數(shù)據(jù)由各路模擬信號和幀標記FDB1 8540組成。采編器的電源由電源模塊提供的5 V電壓經(jīng)TPS70351調(diào)理后產(chǎn)生,。
    采編器電路框圖如圖2所示,。

2.2存儲器電路的設(shè)計
    存儲器主要完成數(shù)據(jù)的存儲功能,存儲器包括兩套獨立的存儲電路A,、B片,,兩者互為備份。每套存儲器內(nèi)包括與采編器相連的長線接口,、FPGA和Flash存儲芯片,。該雙備份設(shè)計能進一步提高數(shù)據(jù)回收的可靠性。
    存儲器電路框圖如圖3所示,。

    技術(shù)要求總采樣率約250 kHz,,記錄時間不小于500 s, A/D采集的有效位數(shù)為16 bit,,則一個采樣周期(即4 μs)產(chǎn)生的數(shù)據(jù)量為2 B,, 則1 s的數(shù)據(jù)量為1×106×2/4=500 000 B,則500 s內(nèi)的記錄數(shù)據(jù)量為2.5×108 B=238.5 MB, 可見容量為256 MB的閃存芯片便可滿足記錄要求,,本設(shè)計采用SAMSANG公司的Flash存儲芯片K9K8G08U0M,,存儲容量達1 GB,是為了留出存儲余量,,這樣就為以后系統(tǒng)的升級和擴展提供可行性解決方案,。
3系統(tǒng)軟件設(shè)計
3.1采集控制邏輯的設(shè)計

  對于多通道異步時分采集這種形式的電路,由于在電子開關(guān)切換的過程中存在著串擾,信號受到該串擾后,,濾波放大器的輸出在ADC采樣前未穩(wěn)定至其應(yīng)有的精度,,就會對ADC的采樣有影響,從而影響采集精度,。所以,,為了解決串擾問題,只有在實踐的基礎(chǔ)上,,靠經(jīng)驗去選擇合適的運放,,或者是通過硬件與系統(tǒng)軟件優(yōu)化相結(jié)合的方法尋找解決途徑。
  在確保系統(tǒng)采樣率的前提下,,本設(shè)計通過硬件與軟件相結(jié)合的方法來解決串擾問題,。硬件上采集模塊選擇SR(壓擺率)較高的運放LF247作為濾波跟隨器,軟件上則以并行的工作方式確保采樣前采樣通道信號的穩(wěn)定,,即在時序設(shè)計上,,主程序中采用了兩個進程:(1)完成數(shù)據(jù)的轉(zhuǎn)換、幀計數(shù)和數(shù)據(jù)的傳輸,; (2)根據(jù)幀計數(shù)frame_cnt控制通道地址信號a和p進行通道切換,。這兩個進程并行執(zhí)行。
    FPGA采集控制邏輯流程圖如圖4所示,。其中,,a為通道選擇輸出,接ADG506的通道選擇控制端(A3~A0),;P為ADG506選通信號,接ADG506的片選端(EN),。
    由于存儲器采用雙備份設(shè)計以及對兩片存儲器的寫入操作完全相同,故采集控制邏輯中分別有控制A,、B片存儲器的控制信號wrclkA和wrclkB,,數(shù)據(jù)通過MAdata、MBdata分別存入存儲器的A,、B片中,,如圖5所示。
  圖5[3]是FPGA的時序轉(zhuǎn)換圖,。其中,,Convst為啟動轉(zhuǎn)換信號;Addr為通道地址,;byte信號用于控制數(shù)據(jù)并行輸出的模式,,低電平為低8位數(shù)據(jù),高電平為高8位數(shù)據(jù),;ADdata 連接到AD7667的數(shù)據(jù)輸出端;數(shù)據(jù)通過ADdata輸入到FPGA。

 

 

    圖5的數(shù)據(jù)轉(zhuǎn)換過程:A/D轉(zhuǎn)換器的數(shù)據(jù)采集是從Convst信號下降沿開始,,Convst下降沿啟動對n-1通道的采樣轉(zhuǎn)換, 進入轉(zhuǎn)換進程后,,通道地址信號a和p根據(jù)幀計數(shù)切換到采集通道n, 在等待足夠的轉(zhuǎn)換時間t4后,AD7667在byte高電平的控制下從AD[7:0]輸出n-1通道高8位的轉(zhuǎn)換數(shù)據(jù),高8位數(shù)據(jù)在寫時鐘Wrclk的控制下,,以足夠的時間傳輸給緩存器,AD7667在byte低電平的控制下從AD[7:0]輸出n-1通道低8位的轉(zhuǎn)換數(shù)據(jù),低8位數(shù)據(jù)在寫時鐘Wrclk的控制下,,以足夠的時間傳輸給緩存器,并在傳輸?shù)耐瑫r進入n通道的采集過程,,此時n通道信號在經(jīng)過了時間t3后,,已經(jīng)達到穩(wěn)定的電平。
    在采集的過程中測得的Convst信號波形與運放的輸出波形如圖6 (a),、(b)所示,。

    在圖6 (a)、(b)中,CH1通道為Convst信號,,頻率約為250 MHz(采樣周期4 μs),,CH2通道為運放輸出信號。 圖6(c),、(d)分別為用LM224和LF247作為運放時采集數(shù)據(jù)的回放波形,。從圖6 (a)、(b)可以看出,,在開關(guān)切換的過程中,,運算放大器輸出的信號存在劇烈抖動。圖6(a)中測得的是用LM224作為濾波跟隨器(SR為0.3 V/?滋s)的輸出信號,,此濾波放大器的輸出抖動直到ADC采樣前還未穩(wěn)定,,導(dǎo)致采集到的數(shù)據(jù)波形出現(xiàn)嚴重失真,如圖6(c)所示,;在圖6(b)中的豎線處,,運放的輸出也存在一定的抖動,然而,,由于濾波運放采用LF247(該運放的SR為16 V/?滋s),其輸出在ADC采樣前已經(jīng)穩(wěn)定到極高的精度,,所以用該運放作為濾波跟隨器采集到的數(shù)據(jù)波形非常準確,如圖6(d)所示,。
    由此可以看出,,與傳統(tǒng)的流水線順序相比較,由于硬件描述語言VHDL進程之間具有并發(fā)特性(進程(1)與進程(2)的并發(fā)性),,這樣就必然節(jié)省了通道切換,、采樣和保持的時間,同時結(jié)合硬件,,選擇合適的運放,,即可保證ADC轉(zhuǎn)換之前轉(zhuǎn)換通道信號的穩(wěn)定,,這就解決了通道串擾問題。
3.2 存儲邏輯設(shè)計
    存儲邏輯主要包括對Flash的擦除,、讀寫及識別無效塊,。控制流程圖如圖7所示,。

    存儲器默認為讀狀態(tài),上電復(fù)位時間設(shè)置為0.8 s,,復(fù)位完成則判斷是否處于寫狀態(tài),若是,,則記錄采編器傳輸?shù)臄?shù)據(jù),,若否,則在讀請求信號有效時(低電平有效),,送出Flash芯片內(nèi)所存數(shù)據(jù),,送完256 MB自動停止。若中間讀請求信號無效,,存儲器停止送數(shù),,維持當前狀態(tài),并等待請求信號再次有效,。
    當存儲器處于寫狀態(tài)時,,A、B片同時完成數(shù)據(jù)的記錄,;當處于讀狀態(tài)時,,在各自讀請求信號有效時,分時復(fù)用采編器數(shù)據(jù)總線,,先后將兩套存儲器數(shù)據(jù)上傳,。1#存儲器為默認優(yōu)先上傳存儲器,通過設(shè)置采編器通道切換信號為有電流狀態(tài),,可選擇2#存儲器上傳數(shù)據(jù),。
    備用讀數(shù)狀態(tài)下,分別讀取兩套存儲器,。
4 測試試驗
  對數(shù)據(jù)采集存儲系統(tǒng)進行炮擊試驗,,其目的是為了考核記錄器的外部結(jié)構(gòu)以及內(nèi)部電路板的抗過載能力。試驗前,,采編器采集標準的模擬彈上信源(正弦波,、方波、直流量,、鋸齒波……依次循環(huán)),,并存入存儲器,然后將整個系統(tǒng)安裝在飛行體中,飛行體以極高的速度著靶,,測試采集存儲系統(tǒng)的沖擊過載能力,。試驗后電路板正常無損壞,,而其中一塊(B片)外部晶體振蕩器損壞,因此,,存儲器采用雙時鐘源,,正常情況下由晶體振蕩器提供時鐘源,,在存儲器回收后讀取數(shù)據(jù)時,,若晶體振蕩器損壞,可由地面測試臺提供的備用時鐘作為存儲器時鐘源,,這樣就避免了回收存儲器后更換晶體振蕩器的麻煩,。試驗完成后從A片存儲器中回收數(shù)據(jù),并與試驗前的數(shù)據(jù)相比較,,結(jié)果一致,,再從B片存儲器中回收數(shù)據(jù)(由于外部晶體振蕩器損壞,需用備用時鐘源),,與試驗前的數(shù)據(jù)相比較,,其波形一致,如圖8所示,。圖8中列舉了其中4個通道T1~T4的電壓信號,試驗表明,,該系統(tǒng)具有很強的抗過載能力。

    本文給出了基于雙備份存儲器的數(shù)據(jù)采集存儲系統(tǒng)的電路設(shè)計和控制邏輯設(shè)計,。在工程實踐的基礎(chǔ)上,,對多通道異步時分電路的通道串擾現(xiàn)象提出了可行性的解決方案,同時詳細地介紹了采用FPGA實現(xiàn)采集控制邏輯以及存儲邏輯的方法,,也給出了采集控制邏輯的流程和存儲邏輯的設(shè)計流程,。通過飛行試驗,該采集存儲系統(tǒng)采集了用來評估飛行器的各種技術(shù)指標的有用數(shù)據(jù),,實踐證明,,雙備份設(shè)計有效的提高了數(shù)據(jù)回收的可靠性。
參考文獻
[1] 趙艷利,,甄國涌,,文豐.多路數(shù)據(jù)采編存儲測試系統(tǒng)設(shè)計與應(yīng)用[J].電子設(shè)計工程,2008(10):17-19.
[2] 李艷軍,,郭正剛,,張志新.基于FPGA多通道同步數(shù)據(jù)采集系統(tǒng)設(shè)計[J].微計算機信息,2007,,23(2):212-214.
[3] 鄭永秋,,李圣昆,任勇峰.多通道高速高精度數(shù)據(jù)采集電路的設(shè)計與實踐[J].電測與儀表,,2011(9).
[4] OPPENHEIM A V, WILLSKY A S, NAWAB S H. Signal and systems[M]. 2nd edition. Prentice-Hall, 1996.
[5] 范旭明,,李喜軍,,白效賢.先進的機載PCM固態(tài)記錄器[J].測控技術(shù),2001,20(8):12-14.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。