基于FPGA的多通道同步數據采集存儲系統
3 多通道同步數據的采集
在執行多通道同步數據采集時(shí),其電路如圖2所示。其主要工作流程:多路模擬信號經(jīng)運放調理電路后進(jìn)入采樣保持器。在每個(gè)周期的開(kāi)始,FPGA通過(guò)編程輸出脈沖至采樣保持器(AD781)和模擬電子開(kāi)關(guān)(ADG706),也就是使用采樣保持器的S/H控制信號進(jìn)行多路同步采樣(S/H=1)和保持(S/H=0),同時(shí)控制模擬開(kāi)關(guān)的A0~A3 4個(gè)選通信號,來(lái)選通相應通道。選通后的信號同時(shí)由FPGA的控制進(jìn)入A/D轉換器(ADS8401)采集單路16 bit量化,最后將采集到的數據寫(xiě)到外部FIFO緩存器中。也就是說(shuō),FPGA通過(guò)編程定時(shí)邏輯送出脈沖至采樣保持器對模擬輸入采樣,然后選擇一個(gè)通道的模擬輸入,完成A/D轉換??傊瓼PGA提供采樣保持、多路選通和A/D轉換電路模塊所需的各種狀態(tài)和控制時(shí)序邏輯。
多通道同步數據采集模塊的程序主要采用Verilog HDL語(yǔ)言,Verilog HDL是用于邏輯設計的硬件描述語(yǔ)言,并且已成為IEEE標準。FPGA重點(diǎn)控制Verilog HDL程序算法的實(shí)現。程序主要包括采樣率計數循環(huán)控制、各路模擬開(kāi)關(guān)選通的設計,幀計數以及幀標志的循環(huán)控制。采樣保持器采樣保持一次,經(jīng)模擬開(kāi)關(guān)計數循環(huán)控制,模擬開(kāi)關(guān)依次選通。選通后的單路信號進(jìn)行A/D轉換,轉換后的數據寫(xiě)入外部FIFO中??紤]到事后數據處理等問(wèn)題,所采集的數據以一定的幀格式寫(xiě)入FIFO中,每一幀數據有幀計數和幀標志。每一幀的長(cháng)度以及幀標志的選擇,可以根據需要靈活選定。
4 多通道同步數據的存儲
根據系統要求,需采用SUMSUNG公司的K9K8G08U0M型Flash作為存儲器。由于1 G的Flash出廠(chǎng)時(shí)帶有一些初始化無(wú)效塊(包含一個(gè)或多個(gè)壞位的存儲塊),它被定義為包含一個(gè)或多個(gè)無(wú)效位的存儲塊,制造商不能保證這些無(wú)效塊具有可靠性。由于NAND型Flash存儲容量較大,難免在使用過(guò)程中出現存儲單元的損壞。為保證寫(xiě)入數據的可靠性,為系統提供真實(shí)準確的參數,該系統存儲模塊采用的關(guān)鍵技術(shù)是Flash的壞塊檢測技術(shù)。系統上電后,FPGA主控模塊首先對Flash進(jìn)行擦除操作。在擦除過(guò)程中,對每塊壞塊標志位進(jìn)行檢測,對使用過(guò)程中又出現的壞塊進(jìn)行標識,以便以后使用。擦除模塊具體程序流程如圖3所示。
評論