基于FPGA的高速數(shù)據(jù)采集系統(tǒng)的設(shè)計方案
用VHDL語言來實現(xiàn)狀態(tài)機,其原程序:
然后在Quartus Ⅱ 中進(jìn)行仿真,仿真如圖2所示:
4.2.2 FIFO模塊設(shè)計
利用FPGA中的EAB/ESB等嵌入式模塊構(gòu)成的LPM宏功能模塊來生成LPM_FIFO.其編輯定制方法:
?。?)進(jìn)入QuartusⅡ,選擇菜單File->TOOL->Megawizard Plug-In Manager,選擇Create a new custom megafunctionvariation,選擇FIFO.
(2)選擇FIFO數(shù)據(jù)位寬度為12,深度為512.
?。?)選擇FIFO的端口:12位數(shù)據(jù)輸入輸出端口data[120]和q[120];對clock同步的數(shù)據(jù)寫入和讀出請求wrreq和rdreq;異步清零aclr;存儲數(shù)據(jù)溢出信號full.
5.結(jié)論
本文完成高速、多通道的數(shù)據(jù)采集系統(tǒng)的FPGA設(shè)計。利用VHDL語言對FPGA進(jìn)行設(shè)計,并在QuartusⅡ中進(jìn)行系統(tǒng)仿真和驗證。
由FPGA在線編程的特點,可以依據(jù)現(xiàn)場的具體情況,對FPGA的內(nèi)部配置進(jìn)行修改,進(jìn)一步增加了系統(tǒng)應(yīng)用的靈活性,因此該系統(tǒng)是一種比較理想的實時高速數(shù)據(jù)采集方案
評論