基于FPGA的高速數據采集存儲系統的設計
FPGA內部集成FIFO是由存儲器、地址比較器、寫(xiě)地址控制器和讀地址控制器構成,原理框圖如4所示。本文引用地址:http://dyxdggzs.com/article/192105.htm
其中存儲器是由兩個(gè)寬度為4位、深度為1024的雙口RAM采用并聯(lián)的方式構成的。連接方法如圖5所示。
通過(guò)DIA端口將數據寫(xiě)入雙口RAM,通過(guò)DOB端口將數據讀出,WEA和JENA接VCC,即接高電平,使雙口RAM的A部分工作在寫(xiě)入狀態(tài),在CLKA的上升沿通過(guò)DIA將數據寫(xiě)入雙口RAM;WEB接GND,即接低電平;ENB接VCC,即接高電平,使雙口RAM的B部分工作在輸出狀態(tài),在CLKB的上升沿通過(guò)DOB將數據輸出雙口RAM。
1.4 數據的分區存儲
本系統采用一片FLASH存儲器,該芯片有128M Byte的容量,根據計算32M Byte的容量就可以把需要采集的數據全部記錄下來(lái),所以把存儲器按其塊地址順序分為4個(gè)區,每個(gè)區均為32M Byte。測試系統上電復位后首先進(jìn)入的是自檢狀態(tài),每次順序檢測第1區中是否有數據,如果沒(méi)有則把該次啟動(dòng)的采集的數據順序寫(xiě)入第l區中,直到第1區存儲完成,則停止記錄并且系統斷電。斷電后再一次啟動(dòng)采集也一樣首先檢測第一塊中是否有數據,有數據則檢測下一塊是否有數據,若沒(méi)有數據,則順序把從FIFO中上傳的導彈飛行數據寫(xiě)入存儲器,如果有數據,則依次地址跳到下下一塊,采集滿(mǎn)則停止,依次類(lèi)推,直到把4個(gè)區都寫(xiě)入了數據,則不論怎么啟動(dòng)采集也不會(huì )把數據覆蓋再寫(xiě)入,除非執行擦除操作把存儲器中的數據清空。
這種多次啟動(dòng)系統,存儲器分區記錄的技術(shù)使系統具有一定的冗余設計,雖然不能從根本上消除誤啟動(dòng)而造成整個(gè)試驗的失敗,但是該技術(shù)在實(shí)際試驗中具有十分重大的意義。
2 系統的灌封技術(shù)
采集存儲系統需工作在高溫高壓等惡劣環(huán)境下,因此最重要的是它的防護結構的設計。在結構設計上采用了抗高沖擊的結構設計技術(shù),主要包括:緩沖保護技術(shù)、灌封保護技術(shù),力求能夠最好的保護好存儲模塊。圖7是采集存儲器的可靠性結構示意圖。圖7采集存儲器可靠性結構示意圖
3 創(chuàng )新性說(shuō)明
本文介紹了一種基于FPGA的多路數據采集存儲系統的設計方法及其可靠性結構設計,該系統存儲容量大,體積小,可工作在高溫、高壓、強沖擊、強振動(dòng)、高過(guò)載等惡劣環(huán)境下。采用了存儲器分區存儲技術(shù),可以避免誤操作將有用數據覆蓋。該系統已投入使用,性能優(yōu),值得推廣。
評論