新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于FPGA的高速數(shù)據(jù)采集系統(tǒng)設(shè)計

基于FPGA的高速數(shù)據(jù)采集系統(tǒng)設(shè)計

作者: 時間:2011-09-13 來源:網(wǎng)絡(luò) 收藏


2 硬件控制器的設(shè)計
整個數(shù)據(jù)系統(tǒng)含有數(shù)據(jù)模塊和數(shù)據(jù)傳輸模塊。其中數(shù)據(jù)模塊由AD數(shù)據(jù)轉(zhuǎn)換模塊和Nandflash數(shù)據(jù)存儲模塊組成。系統(tǒng)采用USB接口做數(shù)據(jù)傳輸模塊,在此不作為本論文的重點(diǎn)進(jìn)行描述。在數(shù)據(jù)傳輸部分本系統(tǒng)采用了DMA傳輸技術(shù)。其內(nèi)部電路功能模塊如圖2所示。

本文引用地址:http://m.butianyuan.cn/article/191012.htm

b.jpg


其中ALE,WR分別連接處理器的地址鎖存和WR引腳。而處理器設(shè)置成地址總線和數(shù)據(jù)總線分時復(fù)用的模式。這樣可以通過ALE信號來鎖存處理器的地址。而控制命令生成器用來譯碼產(chǎn)生相應(yīng)的命令和操作。DMA控制器是我們自己編寫的特定的控制器,它需在收到處理器的DMA使能命令的情況下使得DMA_EN有效,然后在收到DMA開啟信號DMA_restart后,才會啟動一次DMA傳輸數(shù)據(jù),每啟動一次傳輸一頁2 K的數(shù)據(jù)。在傳輸過程中,因為是多片F(xiàn)IFO的讀,為了數(shù)據(jù)不會亂,我們通過一個特定的控制器將DMA_FLASH_WE和多片F(xiàn)IFO的DMA_FIFO_RD匹配的統(tǒng)一起來產(chǎn)生了多片F(xiàn)IFO輪換讀的操作。
在采樣速率選擇的設(shè)計中,我們是應(yīng)用先微處理器的軟件系統(tǒng)給的硬件系統(tǒng)一個采樣速率選擇值,而后FPGA的硬件系統(tǒng)內(nèi)部將譯碼微處理器給的頻率值,頻率選擇器將根據(jù)這個數(shù)值產(chǎn)生相應(yīng)的頻率輸出,頻率選擇器輸出的頻率又將輸入到控制AD轉(zhuǎn)換的狀態(tài)機(jī)里,這樣控制AD轉(zhuǎn)換的狀態(tài)機(jī)將根據(jù)輸入的頻率進(jìn)行相應(yīng)的頻率采集、數(shù)據(jù)的讀取和向FIFO寫數(shù)據(jù)等操作。

3 控制與存儲模塊
本系統(tǒng)在存儲方式設(shè)計時采用流水線操作方式。Nandflash存儲器的寫入有兩個階段:數(shù)據(jù)加載階段(即通過I/O端口將數(shù)據(jù)寫入頁數(shù)據(jù)寄存器)和編程階段(在芯片內(nèi)部,將頁數(shù)據(jù)寄存器中的數(shù)據(jù)轉(zhuǎn)存到非易失性存儲單元內(nèi))。數(shù)據(jù)編程階段是自動進(jìn)行的,不需要外部系統(tǒng)的其它操作,但它需要很長的時間,其典型值是200μs。而如果采用流水線存儲方式就可克服Nandflash芯片寫入速度較慢的缺點(diǎn)。應(yīng)用流水線操作方式對Nandflash存儲器進(jìn)行寫操作流程原理如圖3所示。首先對第一片Nandflash進(jìn)行數(shù)據(jù)的加載,數(shù)據(jù)加載完后,第一片Nandflash隨后就將進(jìn)入自動數(shù)據(jù)編程階段;然后再對第二片Nandflash進(jìn)行數(shù)據(jù)的加載,數(shù)據(jù)加載完后,第二片Nandflash也將進(jìn)入自動數(shù)據(jù)編程階段;然后依次對第三片Nandflash和第四片Nandflash進(jìn)行相同的上述操作。而當(dāng)?shù)谒钠琋andflash數(shù)據(jù)加載完后,第一片Nandflash剛好已經(jīng)自動編程數(shù)據(jù)結(jié)束,接著再從第一片Nandflash重復(fù)剛開始的加載數(shù)據(jù)和自動編程數(shù)據(jù)階段。就這樣如此循環(huán)一直到數(shù)據(jù)采集完成。這就是流水線的存儲方式。從整體時間來看,整個系統(tǒng)在一直的進(jìn)行著數(shù)據(jù)的傳輸和存儲。

c.jpg



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉