基于FPGA的高速數(shù)據(jù)采集存儲(chǔ)系統(tǒng)的設(shè)計(jì)
出處:dongln 發(fā)布于:2009-10-26 09:45:45
0 引言
信息技術(shù)的發(fā)展,特別是各種數(shù)字處理器件處理速度的提高,實(shí)時(shí)處理大量的數(shù)據(jù)已經(jīng)成為現(xiàn)實(shí)。但是,在一些惡劣環(huán)境和數(shù)據(jù)無(wú)法進(jìn)行實(shí)時(shí)傳輸?shù)那闆r下,還必須用到存儲(chǔ)測(cè)試的方法。存儲(chǔ)測(cè)試是指在對(duì)被測(cè)對(duì)象無(wú)影響或影響在允許的范圍條件下,在被測(cè)體內(nèi)置入微型存儲(chǔ)測(cè)試系統(tǒng),現(xiàn)場(chǎng)實(shí)時(shí)完成信息快速采集與存儲(chǔ),事后對(duì)存儲(chǔ)器進(jìn)行回收,由計(jì)算機(jī)處理和再現(xiàn)被測(cè)信息的一種動(dòng)態(tài)測(cè)試技術(shù)。針對(duì)具體的情況,我們研制開發(fā)了一種用蓄電池就可工作的、能在各種惡劣環(huán)境下應(yīng)用的、可回收的小體積低功耗的大容量數(shù)據(jù)采集存儲(chǔ)系統(tǒng)。
1 系統(tǒng)總體設(shè)計(jì)
整個(gè)系統(tǒng)以FPGA為控制器來(lái)組織工作,它控制著整個(gè)系統(tǒng)的讀、寫、擦除等操作。系統(tǒng)主要解決的問題是采集、存儲(chǔ)和數(shù)據(jù)事后讀取。系統(tǒng)整體框圖如下圖1所示。

1.1 數(shù)據(jù)采集
由于要同時(shí)對(duì)多路信號(hào)進(jìn)行采集,我們采取了FPGA對(duì)模擬開關(guān)進(jìn)行均等時(shí)間推進(jìn)以實(shí)現(xiàn)通道的轉(zhuǎn)換。當(dāng)轉(zhuǎn)換到某一通道時(shí),F(xiàn)PGA同時(shí)要啟動(dòng)A/D進(jìn)行模數(shù)轉(zhuǎn)換。為了達(dá)到高采集的目的,采用16位的AD轉(zhuǎn)換器AD762l,模擬開關(guān)選用ADG706。以下是AD轉(zhuǎn)換器的硬件電路連接圖2。

1.2 AD采集時(shí)序
AD采集時(shí)序圖如下圖3所示。AD采集過(guò)程從/CNVST信號(hào)下降沿開始,BUSY信號(hào)下降沿完成,BYTE信號(hào)控制數(shù)據(jù)類型,低電平為低8位數(shù)據(jù),高電平為高8位數(shù)據(jù)。延遲0.9us給出個(gè)WRFIFO信號(hào),WRFIF0高電平有效,在此期間數(shù)據(jù)線上的數(shù)據(jù)為低8位數(shù)據(jù),經(jīng)過(guò)1.8us的低電平后,給出第二個(gè)WRCLK信號(hào),此時(shí)數(shù)據(jù)為高8位數(shù)據(jù),一個(gè)數(shù)據(jù)的轉(zhuǎn)換完成。圖3 AD采集時(shí)序圖

1.3 數(shù)據(jù)存儲(chǔ)
對(duì)數(shù)據(jù)的存儲(chǔ),我們采用閃存(FLASH Memory)作為存儲(chǔ)器.它具有體積小、功耗低和數(shù)據(jù)不易丟失的特點(diǎn)。對(duì)FLASH的寫操作過(guò)程有其固定的操作模式,如圖3所示。由于FLASH是按頁(yè)存儲(chǔ)的,當(dāng)一頁(yè)寫完之后要進(jìn)行下一頁(yè)的控制字和地址的重新寫入,為了使采集回來(lái)的數(shù)據(jù)能及時(shí)準(zhǔn)確的寫/kFLASH,而不至于在頁(yè)與頁(yè)的交替時(shí)間內(nèi)使數(shù)據(jù)丟失.所以不可能將采集回的數(shù)據(jù)直接存入FLASH,我們利用FPGA內(nèi)部集成FIF0來(lái)緩存FLASH MEMORY編程期間A/D控制器上傳的數(shù)據(jù),A/D轉(zhuǎn)換器總的采樣率為12KSPS,為12位,加上通道號(hào)和幀計(jì)數(shù),每秒鐘A/D控制器上傳到FIF0的數(shù)據(jù)為34KB。FLASH MEMORY編程時(shí)間為300us。在FLASH MEMORY編程期間A/D轉(zhuǎn)換器上傳到FIF0的數(shù)據(jù)為:34KB×300us=10.2B。因此FPGA內(nèi)部集成FIF0設(shè)計(jì)成寬度為一個(gè)字節(jié),深度為1024的異步FIFO,即總?cè)萘繛?KB,完夠緩存FLASH MEMORY編程期間A/D控制器上傳的數(shù)據(jù)。
FPGA內(nèi)部集成FIFO是由存儲(chǔ)器、地址比較器、寫地址控制器和讀地址控制器構(gòu)成,原理框圖如4所示。

其中存儲(chǔ)器是由兩個(gè)寬度為4位、深度為1024的雙口RAM采用并聯(lián)的方式構(gòu)成的。連接方法如圖5所示。

通過(guò)DIA端口將數(shù)據(jù)寫入雙口RAM,通過(guò)DOB端口將數(shù)據(jù)讀出,WEA和JENA接VCC,即接高電平,使雙口RAM的A部分工作在寫入狀態(tài),在CLKA的上升沿通過(guò)DIA將數(shù)據(jù)寫入雙口RAM;WEB接GND,即接低電平;ENB接VCC,即接高電平,使雙口RAM的B部分工作在輸出狀態(tài),在CLKB的上升沿通過(guò)DOB將數(shù)據(jù)輸出雙口RAM。
1.4 數(shù)據(jù)的分區(qū)存儲(chǔ)
本系統(tǒng)采用一片F(xiàn)LASH存儲(chǔ)器,該芯片有128M Byte的容量,根據(jù)計(jì)算32M Byte的容量就可以把需要采集的數(shù)據(jù)全部記錄下來(lái),所以把存儲(chǔ)器按其塊地址順序分為4個(gè)區(qū),每個(gè)區(qū)均為32M Byte。測(cè)試系統(tǒng)上電復(fù)位后首先進(jìn)入的是自檢狀態(tài),每次順序檢測(cè)第1區(qū)中是否有數(shù)據(jù),如果沒有則把該次啟動(dòng)的采集的數(shù)據(jù)順序?qū)懭氲趌區(qū)中,直到第1區(qū)存儲(chǔ)完成,則停止記錄并且系統(tǒng)斷電。斷電后再啟動(dòng)采集也一樣首先檢測(cè)塊中是否有數(shù)據(jù),有數(shù)據(jù)則檢測(cè)下一塊是否有數(shù)據(jù),若沒有數(shù)據(jù),則順序把從FIFO中上傳的導(dǎo)彈飛行數(shù)據(jù)寫入存儲(chǔ)器,如果有數(shù)據(jù),則依次地址跳到下下一塊,采集滿則停止,依次類推,直到把4個(gè)區(qū)都寫入了數(shù)據(jù),則不論怎么啟動(dòng)采集也不會(huì)把數(shù)據(jù)覆蓋再寫入,除非執(zhí)行擦除操作把存儲(chǔ)器中的數(shù)據(jù)清空。

這種多次啟動(dòng)系統(tǒng),存儲(chǔ)器分區(qū)記錄的技術(shù)使系統(tǒng)具有一定的冗余設(shè)計(jì),雖然不能從根本上消除誤啟動(dòng)而造成整個(gè)試驗(yàn)的失敗,但是該技術(shù)在實(shí)際試驗(yàn)中具有十分重大的意義。
2 系統(tǒng)的灌封技術(shù)
采集存儲(chǔ)系統(tǒng)需工作在高溫高壓等惡劣環(huán)境下,因此重要的是它的防護(hù)結(jié)構(gòu)的設(shè)計(jì)。在結(jié)構(gòu)設(shè)計(jì)上采用了抗高沖擊的結(jié)構(gòu)設(shè)計(jì)技術(shù),主要包括:緩沖保護(hù)技術(shù)、灌封保護(hù)技術(shù),力求能夠的保護(hù)好存儲(chǔ)模塊。圖7是采集存儲(chǔ)器的可靠性結(jié)構(gòu)示意圖。圖7采集存儲(chǔ)器可靠性結(jié)構(gòu)示意圖

3 創(chuàng)新性說(shuō)明
本文介紹了一種基于FPGA的多路數(shù)據(jù)采集存儲(chǔ)系統(tǒng)的設(shè)計(jì)方法及其可靠性結(jié)構(gòu)設(shè)計(jì),該系統(tǒng)存儲(chǔ)容量大,體積小,可工作在高溫、高壓、強(qiáng)沖擊、強(qiáng)振動(dòng)、高過(guò)載等惡劣環(huán)境下。采用了存儲(chǔ)器分區(qū)存儲(chǔ)技術(shù),可以避免誤操作將有用數(shù)據(jù)覆蓋。該系統(tǒng)已投入使用,性能優(yōu),值得推廣。
參考文獻(xiàn):
[1]. ADG706 datasheet http://m.58mhw.cn/datasheet/ADG706_1131260.html.
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- EDA技術(shù)工具鏈與全流程設(shè)計(jì)運(yùn)維指南2026/1/5 10:28:51
- PLC程序現(xiàn)場(chǎng)疑難問題排查與深度優(yōu)化指南2025/12/24 14:36:36
- PLC程序現(xiàn)場(chǎng)調(diào)試與優(yōu)化實(shí)操指南2025/12/24 14:29:57
- 工業(yè)PLC模擬量信號(hào)采集:調(diào)理技術(shù)與抗干擾工程方案2025/12/15 14:39:08
- PLC設(shè)備如何選型2025/9/5 17:15:14









