?FPGA+ARM的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
?FPGA+ARM的數(shù)據(jù)采集系統(tǒng)是一種結(jié)合了FPGA和ARM處理器的數(shù)據(jù)采集方案,旨在利用兩者的優(yōu)勢實(shí)現(xiàn)高效、高精度的數(shù)據(jù)采集和處理。?
基本概念和原理
FPGA(Field-Programmable Gate Array,現(xiàn)場可編程門陣列)具有高集成度、高可靠性和低功耗的特點(diǎn),適合進(jìn)行高速并行處理和實(shí)時(shí)控制。ARM(Advanced RISC Machines)處理器則以其強(qiáng)大的計(jì)算能力和靈活性著稱,適合處理復(fù)雜的算法和系統(tǒng)管理任務(wù)。將FPGA和ARM結(jié)合,可以充分利用兩者的優(yōu)勢,實(shí)現(xiàn)高效的數(shù)據(jù)采集和處理。
硬件配置和系統(tǒng)結(jié)構(gòu)
FPGA+ARM的數(shù)據(jù)采集系統(tǒng)通常包括以下幾個(gè)部分:
?ARM控制器?:負(fù)責(zé)系統(tǒng)的整體控制和數(shù)據(jù)處理。
?FPGA邏輯控制電路?:負(fù)責(zé)高速數(shù)據(jù)采集和實(shí)時(shí)處理。
?A/D轉(zhuǎn)換電路?:將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。
?FIFO緩存?:用于數(shù)據(jù)緩存,確保數(shù)據(jù)的連續(xù)采集和存儲(chǔ)。
?存儲(chǔ)電路?:用于存儲(chǔ)采集到的數(shù)據(jù)。
?接口電路?:包括RS485/RS232或高速以太網(wǎng)等,用于數(shù)據(jù)傳輸?12。
應(yīng)用場景和優(yōu)勢
FPGA+ARM的數(shù)據(jù)采集系統(tǒng)廣泛應(yīng)用于各種需要高精度、實(shí)時(shí)數(shù)據(jù)處理的應(yīng)用場景,如物探分析、地下勘探、地震波觀測、頻譜分析、電力調(diào)度系統(tǒng)等。其優(yōu)勢包括:
?高精度和高速率的數(shù)據(jù)采集?:FPGA的高并行處理能力確保了數(shù)據(jù)的快速采集和處理。
?多參數(shù)同步測量?:通過FPGA控制多個(gè)數(shù)據(jù)采集通道,實(shí)現(xiàn)多參數(shù)的同步測量。
?實(shí)時(shí)處理和網(wǎng)絡(luò)傳輸?:ARM處理器負(fù)責(zé)數(shù)據(jù)處理和通過網(wǎng)絡(luò)傳輸數(shù)據(jù),支持10/100M以太網(wǎng)或CDMA/GPRS無線網(wǎng)絡(luò),實(shí)現(xiàn)高效的數(shù)據(jù)傳輸?13。
隨著計(jì)算機(jī)技術(shù)與現(xiàn)代工業(yè)系統(tǒng)的發(fā)展,工業(yè)領(lǐng)域中對數(shù)據(jù)采集的精度和數(shù)據(jù)處理的實(shí)時(shí)性提出了更加苛刻的要求,以保證后續(xù)更加復(fù)雜的控制,而傳統(tǒng)的數(shù)據(jù)采集系統(tǒng)一般采用A/D 芯片與主控芯片搭配的方法,處理速度慢、功能單一,當(dāng)被測對象復(fù)雜且數(shù)據(jù)量較大時(shí),很難滿足對數(shù)據(jù)高精度的采樣,而通過RS232 串口與上位機(jī)通信則更無法保證數(shù)據(jù)處理的實(shí)時(shí)性。針對這一實(shí)際情況,設(shè)計(jì)了基于FPGA 與ARM 搭配的數(shù)據(jù)采集系統(tǒng),F(xiàn)PGA 負(fù)責(zé)保證數(shù)據(jù)采樣的高精度和高速度,而ARM 作為主控芯片,嵌入Linux 內(nèi)核,負(fù)責(zé)控制整個(gè)系統(tǒng),并將數(shù)據(jù)通過USB高速上傳到上位機(jī)中,借助上位機(jī)的強(qiáng)大運(yùn)算能力,保證數(shù)據(jù)處理的實(shí)時(shí)性,同時(shí)根據(jù)不同的被測信號(hào)只需選擇相應(yīng)的數(shù)據(jù)采集卡,即可方便簡單地組成一個(gè)用戶自定義的數(shù)據(jù)采集系統(tǒng),具備良好的通用性。
1 系統(tǒng)總體設(shè)計(jì)
數(shù)據(jù)采集系統(tǒng)的總體結(jié)構(gòu)如圖1 所示,主要由輸入調(diào)理電路、A/D 轉(zhuǎn)換電路、FPGA 和ARM控制電路組成。被采集的模擬信號(hào)經(jīng)由調(diào)理電路輸入到A/D 轉(zhuǎn)換芯片,進(jìn)行模數(shù)轉(zhuǎn)換,在FPGA的控制下送入到FPGA 內(nèi)嵌的FIFO 存儲(chǔ)模塊中并通知ARM 立即取走數(shù)據(jù),最后通過USB 交由上位機(jī)進(jìn)行實(shí)時(shí)處理。

2 FPGA 系統(tǒng)設(shè)計(jì)
FPGA 具有高集成度、高可靠性、低功耗及時(shí)序控制精確等優(yōu)點(diǎn),選用Xilinx Spartan3 系列的XC3S200 負(fù)責(zé)控制A/D 轉(zhuǎn)換及數(shù)據(jù)的緩存,可以簡化電路設(shè)計(jì),縮短開發(fā)周期。ARM 選用Atmel公司的SAM9G45 芯片,工作頻率達(dá)400MHz,能夠保證實(shí)時(shí)高速地控制采集系統(tǒng)和上傳數(shù)據(jù)。
2.1 FPGA 與ADC 的連接與控制
數(shù)據(jù)采集芯片選用ADI 公司的AD7656,是一款六通道16 位逐次逼近型,低功耗,每路通道最大采集速度為250kS /s 的A/D 轉(zhuǎn)換芯片,可實(shí)現(xiàn)較高的采樣精度和速率。
FPGA 與AD7656 的連接如圖2 所示,AD7656 的6 個(gè)采樣通道被分為3 組,由CONV STA、CONV STB 和CONV STC 3 個(gè)信號(hào)啟動(dòng)對應(yīng)的雙通道同步采樣,將該3 個(gè)引腳相連即可實(shí)現(xiàn)6個(gè)輸入通道的同步采樣,同時(shí)提供并行和串行接口兩種模式,為了提高數(shù)據(jù)吞吐率,采用16 位( /B 引腳置低) 的并行接口( SER/引腳置低) 模式,以便與FPGA 的16 位數(shù)據(jù)線直接相連傳輸數(shù)據(jù)。

FPGA 中的A/D 控制模塊通過將CONV ST引腳電平拉高,啟動(dòng)相應(yīng)通道的采樣,采樣過程中BUSY 引腳為高電平,表示正在進(jìn)行采樣; 當(dāng)采樣完畢后,AD7656 自動(dòng)將BUSY 置低; FPGA 中的A/D 控制模塊檢測到BUSY 信號(hào)為低后將CS 和RD 信號(hào)置低,讀取并保存數(shù)據(jù)到FPGA 內(nèi)部的FIFO 中。FPGA 對AD7656 的控制過程仿真如圖3 所示。

市面上的FPGA開發(fā)板和ARM開發(fā)板很多,但是將兩者結(jié)合起來完成數(shù)據(jù)采集與網(wǎng)絡(luò)通訊的開發(fā)板很少。大多數(shù)的勘探、觀測工作都是在嚴(yán)苛的環(huán)境中進(jìn)行的,對數(shù)據(jù)的準(zhǔn)確性、實(shí)時(shí)性都有著較高的要求,并且大多情況下要求多參數(shù)同步測量。飛旭公司在基于實(shí)際的工程項(xiàng)目成功的基礎(chǔ)上,推出了基于ARM+FPGA的低功耗、高速率、高精度、多通道同步數(shù)據(jù)采集方案,可以通過監(jiān)測者的要求完成多通道數(shù)據(jù)的同步采集并實(shí)現(xiàn)實(shí)時(shí)的網(wǎng)絡(luò)傳輸。
基于ARM+FPGA的高速同步數(shù)據(jù)采集方案,解決了數(shù)據(jù)采集的同步性問題,與以往的數(shù)據(jù)采集方案相比,具有高精度、高速率、多參數(shù)同步測量、實(shí)時(shí)處理、網(wǎng)絡(luò)傳輸不受區(qū)域限制等特點(diǎn)。
主要應(yīng)用于物探分析領(lǐng)域、天然氣、石油等地下勘探領(lǐng)域、觀測技術(shù)領(lǐng)域(地震波、頻譜分析)、電力調(diào)度系統(tǒng)等行業(yè)。
1)通過系統(tǒng)接口直接與采集終端通訊,完成工業(yè)現(xiàn)場的多通道模擬量、開關(guān)量的數(shù)據(jù)采集與A/D轉(zhuǎn)換,實(shí)現(xiàn)對數(shù)據(jù)采集終端的控制;
2)系統(tǒng)設(shè)有FIFO緩存模塊,支持信號(hào)的長時(shí)間連續(xù)采集存儲(chǔ);
3)支持采集數(shù)據(jù)的移動(dòng)存儲(chǔ),可對采集數(shù)據(jù)通過存儲(chǔ)卡進(jìn)行存取;
4)支持10/100M以太網(wǎng)或CDMA/GPRS無線網(wǎng)絡(luò),可以實(shí)現(xiàn)高效率的網(wǎng)絡(luò)數(shù)據(jù)傳輸。
高速同步數(shù)據(jù)采集系統(tǒng)主要包括以下幾個(gè)部分:ARM控制器、存儲(chǔ)電路、FPGA邏輯控制電路、A/D轉(zhuǎn)換電路、FIFO緩存、電源電路、接口電路等。
系統(tǒng)具備多通道數(shù)據(jù)采集接口,F(xiàn)PGA邏輯電路控制A/D采集和FIFO緩存模塊,實(shí)現(xiàn)長時(shí)間不間斷的數(shù)據(jù)采集與數(shù)據(jù)轉(zhuǎn)換;同時(shí)系統(tǒng)具有豐富的外圍控制接口和通信接口,可以實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)、顯示,完成RS485/RS232或高速以太網(wǎng)絡(luò)的數(shù)據(jù)傳輸。