洑涵妤
(江蘇技術師范學院 計算機工程學院,常州 213001)
隨著信息技術的飛速發展和數據采集系統的廣泛應用,數據采集系統的性能要求也越來越高。在圖像處理與音頻信號處理等高速、高精度和實時性強的處理中,高性能的數據采集系統尤為重要。
數據采集系統實時性與同步性的要求既限制了低速單片機數據采集系統的使用,也限制了基于DSP頻繁中斷的數據采集系統的采納。如采用可編程邏輯器件設計數據采集系統具有開發周期短、集成度高、設計費用低、工作頻率高、功耗低、編程配置靈活等優點。本文介紹一種基于FPGA的高精度多通道的數據采集系統,并對這個系統的高精度、多通道和高速度等性能進行了分析。
基于FPGA的高精度多通道采集系統(如圖1所示)由多路復用選擇器、模數轉換器、高速精密放大器、數模轉化器和FPGA組成。多路模擬信號由多路復用選擇器引入,經選擇后通過高速精密放大器進行濾波處理,然后再進入高速精密模數轉換器進行數據轉換,在此過程中,模擬輸入信號選擇的控制和模數轉換器的控制均由FPGA實現,而轉換后的數字信號通過FPGA傳輸給處理模塊。數字控制電機轉動過程中,數字控制信號通過數模轉換模塊轉換成為模擬信號。數模轉換模塊主要是和模數轉換模塊進行聯調來證明整個采集系統具有高精度性能。

圖1 數據系統采集框圖
多路復用選擇器采用的是ADI公司生產的ADG1406,包括16個單端通道。它可以將其中一個輸入切換到公共輸出,具體由4位二進制地址線決定(A0、A1、A2和A3)。這款器件EN引腳高低電平可以用來使能或禁用器件,禁用時所有通道都被關斷;啟用時每個通道都執行雙向操作,輸入信號范圍可擴展至電源電壓。這些開關具有超低的導通電阻以及導通電阻平坦度,是低失真度至關重要的數據采集與增益開關應用的理想解決方案,iCMOS?架構具有超低功耗性能[1]。
采集系統做了正負10V-0V的標定輸入和10個單端模擬輸入通道,其中IN1-IN9為模擬輸入。正負15V電源供電,每個電源引腳上要接一個0.1uF的去耦電容,EN引腳接在高電平上。FPGA的I/O腳與A0、A1、A2和A3相連,通道選擇的控制是通過寫邏輯來完成的,D引腳是輸出引腳。
OPA827是一款JFET輸入運算放大器,其具有低功耗、超低噪聲、小封裝尺寸以及高帶寬等特性和較好的AC性能與DC精度。尤其18MHz GBW、22V/us壓擺率以及1kHz頻率下的0.0004%總諧波失真(THD)的AC參數充分保證了系統的高速性[2]。
OPA827與電阻R17、電阻R18和電容C3組成一個單極點反相有源濾波器來實現二階濾波,其具有較低的與電阻R17相同的輸出阻抗[3]。采用±15V電源供電,分別在每個電源引腳接上0.1uF和10uF的去耦電容。從ADG1406出來的模擬信號由Ain進入濾波器,由Ain_opa輸出。
ADS8515是16位并行A/D轉換器,其采樣率為250KSPS。它屬于逐次逼近寄存器型(簡稱SAR型)A/D轉換器,如圖2所示。其內部通常具有采樣保持器,轉換速率快[4]。Vin為信號輸入引腳,A0~A15為轉換輸出的數字信號。采用3.3V的電源供電,不需要再通過電平轉換器件即可以實現器件與FPGA的直接相連。
DAC8822是雙路,并行輸入的16位乘法數模轉換器,2.7V-5.5V的單電源供電,模數轉換器輸出電流的滿偏量程由其外部參考電壓的大小決定。內部電阻(RFB)提供溫度跟蹤來得到滿偏量程,同時并行輸入接口決定了器件高速通信[5]。

圖2 ADS8515硬件接線圖
暫存于FPGA的數字信號從D0-D15流入模數轉換模塊。FPGA通過對A0、A1寫邏輯來實現輸出通道選擇,同時對nWR和LDAC進行時序控制。此外,為了得到更好的輸出模擬信號性能,在輸出后端加入一個電壓跟隨器OPA4277,將原電流輸出轉換成電壓輸出,如圖3所示。

圖3 模數轉換模塊硬件連線圖
FPGA采用ALTERA公司Cyclone III系列的EP3C16F484C8N,靜態功耗小于0.25瓦。采用+3.3V、+2.5V、+1.2V分別給不同區進行供電。靈活的I/O控制使得編程簡化,電路設計方便[6]。采用AS和JTAG配置模式,配置芯片是EPCS16SI8N,器件的時鐘配置為50MHz。
采用Altera Quartus II9.0編寫系統軟件,用硬件語言verilog來實現。在這個采集系統中,要對多路復用選擇器、D/A轉換器和A/D轉換器進行編程。通過對ADG1406的A0、A1、A2、A3進行寫邏輯,從而決定輸入通道的選擇,可以分別選擇0000-1111等16個通道的選擇。
對A/D轉換器的編程,主要是對A/D轉換器的控制信號進行寫邏輯。如圖4所示,為以信號作為A/D轉換器數據轉換和數據讀取的控制時序圖。首先,檢測和的狀態,直到處于高電平和處于低電平;然后下降沿觸發A/D轉換器開始轉換。當A/D轉換器開始轉換時,變為低電平,直到轉換結束。在和處于低電平至少tw1(典型值為40ns)時間后,置為高電平。在轉換結束后,器件內部寄存器會自動進行更新,變為高電平。對于數據的讀取,同樣需要檢測和的狀態,直到和都處于高電平,此時以的下降沿觸發數據讀取。

圖4 為轉換和讀取控制的時序圖

表 1 D/A轉換器輸出通道選擇情況

圖5 數模轉換器編程時序圖
在測試過程中,為了驗證本數據采集系統的性能,將D/A轉換器的輸出端接到多路復用選擇器的輸入端,即將D/A轉換器的模擬輸出作為A/D轉換器的輸入,然后將D/A轉換器的數字量設定值和A/D轉換器的輸出結果作比較。將D/A轉換器的模擬輸出值轉化成輸入十六進制數字量,與實測結果十六進制數字量進行比較。一共分兩組通過最小二乘標定將實測結果向理論結果逼近,一組測試值為正,一組為負,其采集值如表2所示。

表2 30個數據采集值

續表
利用MATLAB繪圖如圖6、圖7和圖8所示。圖6為輸入模擬電壓值與實測AD輸出的曲線圖;圖7為未標定AD輸出值與理論值的十六進制差值散點圖;圖8為最小二乘標定后AD輸出值與理論值的十六進制差值散點圖。

圖6 表示輸入模擬電壓值與實測AD輸出的曲線圖

圖7 未標定-AD輸出值與理論值的十六進制差值散點圖

圖8 最小二乘標定后-AD輸出值與理論值的十六進制差值散點圖
為了大大增加輸入通道,采用多路復用選擇器作為模擬信號輸入前段;FPGA的電路設計和編程由于靈活多變的I/O而顯得簡單。采用模數轉換器與數模轉換器之間相互聯調,可以在沒有高精密電源和穩定模擬輸入信號的情況下,對采集系統進行有效的評估。最后通過對結果的比較清楚地得到采集系統的最終精度14位。
[1] ADG1406,16-Channel,Differential 8-Channel, iCMOS Multiplexers [Z]. ADI.Inc.
[2] Bonnis Bake著, 李喻奎, 譯. 嵌入式系統中的模擬設計[M]. 北京:北京航空航天大學出版社, 2006
[3] OPA827 Low-Noise, High-Precision, JFET-Input OPERATIONAL AMPLIFIER[Z]. TI. Inc. 2009
[4] ADS8515 16-BIT 250-KSPS SAMPLING CMOS ANALOG-TO-DIGITAL CONVERTER [Z] .TI. Inc. 2005.
[5] DAC8822 16-Bit, Dual, Parallel Input, Multiplying Digitalto-Analog Converter[Z].TI. Inc. 2008.
[6] Cyclone III FPGA Family datasheet[Z]. Altera, Inc. 2008.