基于FPGA的高速實(shí)時(shí)數據采集系統設計
摘要:設計的基于FPGA的高速實(shí)時(shí)數據采集系統,可控制6路模擬信號的采集和處理,FPGA中的6個(gè)FIFO對數據進(jìn)行緩存,數據總線(xiàn)傳給DSP進(jìn)行實(shí)時(shí)處理和上傳給上位機顯示。程序部分是用Verilog HDL語(yǔ)言,并利用QuartusⅡ等EDA軟件進(jìn)行仿真,驗證了設計功能的正確性。
關(guān)鍵詞:FPGA;Verilog HDL;FIFO;數據采集
0 引言
隨著(zhù)當今社會(huì )信息技術(shù)的快速發(fā)展,高速數據采集及處理在人們生活、現代工業(yè)和科學(xué)研究等很多領(lǐng)域中廣泛地應用。同樣,在一些高精度、快速的測量中需要對數據進(jìn)行高質(zhì)量、高速度的采集。傳統的數據采集系統往往采用單片機或數字信號處理器(DSP)作為控制器,來(lái)控制模/數轉換器(ADC)、存儲器和其他外圍電路的工作。但由于單片機本身的指令周期以及處理速度的影響,效率較低,很難滿(mǎn)足系統對數據采集系統實(shí)時(shí)性和同步性的要求。同時(shí),FPGA具有高的時(shí)鐘頻率,運行速度快,開(kāi)發(fā)周期短,集成度高,功耗低,設計費用低,組成形式靈活等諸多優(yōu)點(diǎn)。因此,設計利用FPGA的高速實(shí)時(shí)數據采集系統有著(zhù)重要的價(jià)值。
1 FPGA硬件設計
1.1 數字系統設計介紹
6路模擬信號經(jīng)過(guò)模擬信號處理模塊,形成電壓差分模擬信號,其目的是減少直流漂移,去除共模干擾,為后級的模/數轉換器(ADC)做準備,系統的硬件框圖如圖1所示。經(jīng)過(guò)ADS8364模數轉換器件后,將輸入的模擬差分信號變換為適用于控制過(guò)程、存儲、處理、執行計算并顯示讀出等其他目的的數字信號。在FPGA的控制下,數字信號被存儲在異步FIFO中,再按照設計要求將存儲在異步FIFO中的數據通過(guò)總線(xiàn)接口實(shí)時(shí)、高速、大量地傳輸到DSP芯片中進(jìn)行實(shí)時(shí)處理,最后再傳輸到上位機。
1.2 外圍主要電路
1.2.1 外部開(kāi)關(guān)控制信號
外部開(kāi)關(guān)控制信號的作用是給整個(gè)系統提供開(kāi)關(guān)信號。為了滿(mǎn)足工業(yè)應用,避免長(cháng)線(xiàn)傳輸中的共地和電平不一致,采用了光電隔離,實(shí)現了將輸入的24 V電壓轉化為3 V輸出電壓的功能,然后再通過(guò)整形電路整形后,傳輸到FPGA的I/O接口上。
1.2.2 A/D轉換電路
對于采集的6個(gè)通道的信號,由于采樣速率高,因此選擇了ADS8364芯片進(jìn)行模數轉換。其工作電壓為+5V,獨立6通道全差分輸入,2.5V參考電壓的REFIN和REFOUT引腳、有效數據位為14位、采樣頻率可以根據設計要求進(jìn)行調節并且最高的采樣頻率可以達到250 KSPS、帶有6級深度的FIFO輸出、功耗只有450 MW、6個(gè)差分采樣放大器以及高速并行接口等主要參數。
ADS8364芯片的輸入通道分為三組(A,B和C)的6路模擬信號輸入通道,每個(gè)端口含有ADCS和保持信號引腳,這兩個(gè)信號用來(lái)保證幾個(gè)通道能同時(shí)進(jìn)行采樣和轉換,同時(shí)輸入電壓是從-VREF到+VREF之間變化的差分模擬輸入電壓信號。6個(gè)十六位ADCS可以同時(shí)工作,即6通道同時(shí)進(jìn)行轉換。HOLDA,HOLDB,HOLDC這三個(gè)轉換保持信號啟動(dòng)相對應的通道進(jìn)行模數轉換。如果這些保持信號同時(shí)有效時(shí),這6個(gè)通道轉換的結果就被保存在6個(gè)寄存器中,如果FPGA中的AD控制模塊對ADS8364芯片執行每一個(gè)讀操作時(shí)。ADS836就會(huì )輸出十六位數據到FPGA中,A0,A1,A2這3個(gè)是地址/模式信號,它們決定ADS8364芯片采用何種方式讀取數據。有單通道,單周期或FIFO模式三種模式供選擇。HOLDA,HOLDB,HOL DC至少20 ns保持低電平,相應的通道才能開(kāi)始轉換。20 ns的低電平使得相應通道的采樣保持放大器處于保持狀態(tài),進(jìn)而所選擇的模數轉換通道就開(kāi)始進(jìn)行數據轉換,本設計方案所選擇的ADS8364地址/模式信號是單通道模式讀取數據,6通道同時(shí)進(jìn)行數據轉換,其器件連接圖如圖2所示。
1.2.3 UART通信模塊
在本設計中,采用了一片CP2101芯片來(lái)實(shí)現與PC機的USB接口通信,其電路原理圖如圖3所示。
評論