數字系統已經越來越廣泛地應用到現實世界的各個領域中,絕大多數數字系統無法直接處理現實世界中的信號,必須采用ADC器件把模擬信號轉換成數字信號后才能處理。FPGA和DSP處理器是數字信號處理的兩大主流技術。隨著技術的發展和進步,一些FPGA器件集成了一些模擬電路以及混合信號處理模塊,比如集成溫度監控二極管。Actel公司的混合FPGA系列已經集成ADC、DAC、PGA(Programmable Gain Amplifier)、電壓參考基準源和RCC(Resistance Capacitance)振蕩器。Xilinx公司的V5系列FPGA集成電壓和溫度監控ADC,用戶可以直接通過JTAG下載調試接口讀取電壓和溫度值。但這些單元物理位置固定,靈活性受限,僅限于特定的應用。而采用FPGA的LVDS接收器來實現ADC,邏輯電路完全在FPGA內部實現,可重新配置,擴展性好,需要的外圍器件少,使FPGA能直接進行混合信號處理。 1 ∑一△ADC原理 ∑一△ADC的核心是∑一△調制器和數字濾波器。∑一△調制原理在半個多世紀前已經提出,但在20世紀90年代才廣泛應用到ADC設計中。∑一△ADC的模型如圖1所示。 從圖中可以看到,乏一△架構的ADC主要由左邊方框內模擬∑一△調制器和右邊的數字濾波器組成。∑-△調制器包含1個積分器、1個ADC和1個構成反饋環路的DAC。其中積分器用離散時間表示,以方便采用Z變換分析。e(n)是AD量化器的量化噪聲。假設量化噪聲是加性噪聲,反饋環路中DAC是理想的,其傳輸函數是固定增益。采用線性系統分析方法,先令e(n)=O,考察積分器的差分方程: 由公式(1)和公式(2)推導出∑一△調制器對信號的系統傳遞函數為: 由公式(7)可以看出,在Z變換域,調制器對信號只是延遲,而對噪聲進行差分處理。因為差分器具有高通濾波器特性,因此噪聲被高通濾波,調制器對應的時域輸出為: 剩余的噪聲則由后續的數字濾波器濾除。 2 LVDS收發器標準及其原理 LVDS是一種低壓低功耗的高速串行差分數據傳輸標準,在高速數據互聯和數據通信領域得到廣泛的應用,主流的FPGA器件都集成了高速的LVDS收發器。LVDS收發傳輸框圖如圖2所示。 在圖2中,LVDS發送端的4個開關管交叉控制3.5mA電流源在接收端的流向。電流在100Ω電阻上建立約350 mV的電壓差,接收器通過比較電壓的極性來判決是邏輯“1”還是邏輯“0”。LVDS驅動器是電流型,對電源波動不敏感,功耗很低,1路LVDS傳輸功耗為35 mA×350 mV="1".2 mW。由于采用差分傳輸方式,LVDS收發器可以很好地消除共模干擾,提高系統電磁兼容性能。利用FPGA集成的LVDS接收器,配合少量外圍器件,即可在FPGA內部實現ADC。 3 用FPGA集成的LVDS接收器實現ADC 參考第2部分的∑一△架構的ADC原理,在FPGA內部實現ADC的框圖如圖3所示。 在圖3中,虛線框內表示在FPGA內部實現。外部僅需要1個1 kΩ的電阻和1個1 nF的電容作為模擬積分器,輸入信號和積分器輸出值在LVDS接收器進行比較,比較結果被量化成數據比特流,經過寄存器后輸出到CIC(Cascaded Integrated Comb)濾波器及其后續的數字濾波模塊,同時通過1個FPGA引腳作為1位的DAC,輸出到外部的積分器。在數字濾波模塊里面,CIC濾波器累加量化的比特流并恢復成18位數的量化值,同時通過大倍數的抽取,把數據率降低;CICCOMP是15階FIR濾波器,用于補償CIC濾波器幅頻響應。抽取器是31階FIR低通濾波器,降低數據率并進一步濾除帶外的噪聲。整個系統運行于49.152 MHz時鐘下,采樣數據經過CIC進行512倍抽取后,數據率降為96 kHz,最后經過低通濾波器進行2倍抽取,數據率降為48 kHz。用FPGA實現ADC,包括LVDS接收器部分,全部采用VerilogHDL語言編寫,實現簡單,可移植性較好。 4 FPGA內部實現的ADC實驗分析 整個ADC設計工程在Xilinx公司的FPGA集成開發環境ISE下編譯,下載到XC2VP70系列FPGA上進行測試,用Tektronix公司的信號源AFG3101產生音頻信號,經ADC采用后通過板載的8位DAC輸出,用Agilent公司的示波器54622D進行分析,頻率為3 kHz的正弦信號輸入/輸出波形和頻譜如圖4所示。 圖4上半部分波形是輸入的信號和頻譜,下半部分波形是經過ADC采樣后通過DAC輸出的波形和頻譜。從圖中可以看到,盡管受限于板載DAC的位數,DAC后面也沒有抗混疊濾波器,僅將ADC的18位量化值高8位輸出,但波形和頻譜完全沒有失真。輸出波形上疊加的高頻噪聲是DAC轉換引入的,可以通過濾波器濾除。信號源產生20 Hz~20 kHz的音頻信號,ADC輸出的波形和頻譜均沒有失真,FPGA在3.3 V的I/O電壓下,ADC最大輸入信號的峰值電壓約O.8 V,輸出信號SNR約為50 dB。 結語 FPGA實現ADC的模型,僅需要極少數外圍元器件,核心模塊均采用FPGA資源實現,明顯降低板上面積,同時邏輯可重配置,具備強大的擴展性。通過適當改進和優化,該方法可以應用到語音通信,溫度、電壓監控,水壓檢測,壓力傳感等諸多領域。 |