過(guò)采樣技術(shù)是數(shù)字信號(hào)處理者用來(lái)提高模數(shù)轉(zhuǎn)換器(ADC)性能經(jīng)常使用的方法之一,它通過(guò)減小量化噪聲,提高ADC的信噪比,從而提高ADC的有效分辨率[1]。過(guò)采樣技術(shù)不但沒(méi)有增加額外的模擬電路,而且由于提高了有效分辨率還能簡(jiǎn)化模擬電路,并且簡(jiǎn)單易行,因而被數(shù)字信號(hào)處理實(shí)踐者廣泛應(yīng)用于測(cè)控領(lǐng)域[2-6]。
過(guò)采樣技術(shù)的一個(gè)關(guān)鍵環(huán)節(jié)是采樣后的低通濾波器(LPF, Low Pass Filter),沒(méi)有這個(gè)濾波器,過(guò)采樣產(chǎn)生不了任何效果[7]。然而,許多應(yīng)用中,需要測(cè)量多種信號(hào),數(shù)據(jù)采集部分必須具有自適應(yīng)特性,即根據(jù)輸入信號(hào)的頻帶能自主選擇下抽取率,過(guò)采樣后低通濾波器的特性也應(yīng)隨之變化。因而,有必要設(shè)計(jì)一款參數(shù)可變的低通濾波器來(lái)滿(mǎn)足這種需求。
過(guò)采樣技術(shù)中的低通濾波器
過(guò)采樣技術(shù)的低通濾波器要同時(shí)完成量化噪聲的濾除和減采樣時(shí)抗混疊濾波的功能。過(guò)采樣技術(shù)能較完美實(shí)現(xiàn)其目標(biāo)的濾波器參數(shù)滿(mǎn)足:通帶截止頻率,通帶衰減Rc=-3dB,阻帶截止頻率,濾除量化噪聲需要的阻帶衰減為
其中,M為過(guò)采樣率,N為下抽取率,B為ADC原有的分辨率,B0為提高的分辨率,N=4B0,并且通常有 。而濾波器的類(lèi)型為FIR濾波器,其階次與下抽取率成正比。
可變參數(shù)低通濾波器的設(shè)計(jì)
由2節(jié)可知,過(guò)采樣中的濾波器特性由ADC本身的分辨率和下抽取率決定。下抽取率變化,濾波器參數(shù)會(huì)發(fā)生改變,濾波器則必須重新設(shè)計(jì)。從FIR濾波器的設(shè)計(jì)流程[8]來(lái)看,截止頻率變化后,濾波器系數(shù)會(huì)隨之變化。如果獲得截止頻率后再計(jì)算濾波器系數(shù),會(huì)帶來(lái)大量運(yùn)算量,因?yàn)槊坑?jì)算一組濾波器系數(shù)都要進(jìn)行一次IFFT(Inverse Fourier Transform)。通常的做法是在PC機(jī)上計(jì)算出系數(shù)后,做成查找表。由于下抽取率變化,這樣的表會(huì)有很多張,會(huì)消耗大量存儲(chǔ)空間。而本小節(jié)采用的方法,避免了這種情況,選取一組合適的濾波器系數(shù),便可完成多種下抽取率的濾波。
濾波器系數(shù)決定濾波器特性,理論上講,只用一組濾波器系數(shù)是不能實(shí)現(xiàn)可變參數(shù)濾波器的。由2節(jié)可知,下抽取率N與濾波器截止頻率成反比,與阻帶衰減成正比,與濾波器長(zhǎng)度成正比。假設(shè)下抽取率為N0時(shí)濾波器系數(shù)h(n),n=0,1,2…L-1,我們?cè)鯓油ㄟ^(guò)h(n)這組基準(zhǔn)系數(shù)來(lái)獲得N不等于N0時(shí)的濾波器系數(shù)呢?
當(dāng)N
下抽取率的情況實(shí)現(xiàn)較為容易,然而當(dāng)時(shí),濾波器系數(shù)大于基準(zhǔn)系數(shù),此時(shí)怎樣設(shè)計(jì)濾波器來(lái)滿(mǎn)足要求呢?我們采用原本用來(lái)實(shí)現(xiàn)高計(jì)算效率的窄帶低通濾波器的插值FIR濾波器[8],來(lái)實(shí)現(xiàn)低通濾波器參數(shù)的變化。
插值FIR濾波器是在L抽頭、非遞歸線(xiàn)性FIR濾波器的性能基礎(chǔ)上,將L抽頭的FIR濾波器各個(gè)抽頭之間的一個(gè)單延遲,用K個(gè)單位延遲代替而設(shè)計(jì)形成的,K為擴(kuò)展因子,是一個(gè)整數(shù),如圖2所示。原來(lái)的FIR濾波器稱(chēng)為原型濾波器,具有擴(kuò)展延遲的濾波器稱(chēng)為整形子濾波器。
原型FIR濾波器在z域的傳遞函數(shù)為:
式(3)中,Lp為hp的長(zhǎng)度。則整形子濾波器傳遞函數(shù)為:
其擴(kuò)展沖激響應(yīng)長(zhǎng)度為,反映到時(shí)域上,整形子濾波器系數(shù)為:
圖3給出了K=3個(gè)單位延遲在頻域的影響。時(shí)域?yàn)V波器沖激響應(yīng)擴(kuò)展K倍,導(dǎo)致頻域幅度響應(yīng)壓縮K倍,如圖3(b)。圖中那些以1/K整數(shù)倍為中心、重復(fù)出現(xiàn)的的通帶稱(chēng)為虛像。只要將這些虛像濾除,就能獲得衰減特性不變,截止頻率為原濾波器截止頻率1/K的濾波器,恰好符合過(guò)采樣后低通濾波器截止頻率與下抽取率成反比的特性,因而可用于過(guò)采樣中可變參數(shù)濾波器的設(shè)計(jì)。此處,濾除虛像的濾波器稱(chēng)為壓制虛像濾波器。
插值濾波器其實(shí)是整形子濾波器和壓制虛像濾波器的級(jí)聯(lián)。整形子濾波器很好實(shí)現(xiàn),只要在原型濾波器系數(shù)的基礎(chǔ)上按要求插入零值即可,下面主要看壓制虛像濾波器的設(shè)計(jì)。當(dāng)下抽取率大于一定值時(shí),低通濾波器為窄帶濾波器,則整形濾波器的虛像也為一窄帶。平均濾波器的幅度響應(yīng)在1/L的整倍數(shù)處為一窄帶陷波器,可以濾除整形濾波器產(chǎn)生的虛像。虛像出現(xiàn)在1/K的整倍數(shù)處,因此,只要使得作為壓制虛像濾波器的平均濾波器的長(zhǎng)度滿(mǎn)足,,便可以濾除虛像。
圖4為時(shí),原型濾波器、整形濾波器、壓制虛像濾波器和最后獲得的插值濾波器的幅度響應(yīng),原型濾波器為FIR切比雪夫?yàn)V波器。從圖4(a)可以看出,虛像出現(xiàn)的位置與平均濾波器的零點(diǎn)位置對(duì)齊,從而抑制了虛像。由于太小,平均濾波器的旁瓣寬度較大,陷波帶大于虛像帶寬,導(dǎo)致虛像的抑制沒(méi)有達(dá)到濾波器要求的阻帶衰減。但是,虛像所處頻率與過(guò)采樣頻率相當(dāng),此處出現(xiàn)的噪聲僅為量化噪聲,此處衰減特性只要將其抑制到ADC分辨率提高后的量化噪聲水平,即滿(mǎn)足過(guò)采樣的要求。例如:ADC分辨率經(jīng)過(guò)采樣后提高6位,其要求的衰減特性為-36.1dB,而圖4(a)插值濾波器虛像處的衰減為52dB,足以滿(mǎn)足大部分設(shè)計(jì)的要求。
插值濾波器在過(guò)采樣中的實(shí)現(xiàn)的流程為:在原型濾波器進(jìn)行K倍內(nèi)插后,再做K點(diǎn)的平均濾波即可??瓷先バ枰獌刹讲拍軐?shí)現(xiàn)低通濾波,實(shí)際上,由于整形和平均濾波的特性,我們可以一步完成濾波。由式(3)可知,整形子濾波器的輸出為:
為下抽取及計(jì)算方便,將整形濾波器的長(zhǎng)度從,改為KLp 。由于FIR濾波器系數(shù)的不敏感性,這樣做并不會(huì)影響濾波器特性。則插值濾波器的輸出為:
由式(4-9)可知,插值濾波器輸出是將K點(diǎn)值平均后,再與原型濾波器系數(shù)加權(quán)平均的結(jié)果??梢钥闯?,實(shí)現(xiàn)方式很簡(jiǎn)單。
過(guò)采樣技術(shù)在FGPA的實(shí)現(xiàn)
一些通用的數(shù)據(jù)采集模塊需要實(shí)現(xiàn)多種信號(hào)的測(cè)量,注重模塊的通用性,因此,放大、濾波等信號(hào)預(yù)處理電路這樣的個(gè)性事物是不被允許存在的。將過(guò)采樣技術(shù)應(yīng)用于通用模塊,省略信號(hào)預(yù)處理電路,根據(jù)信號(hào)特點(diǎn),選取合適的過(guò)采樣率和下抽取率,平衡最終采樣率和分辨率,來(lái)獲取要求的測(cè)量精度。根據(jù)通用模塊的要求,設(shè)計(jì)了圖5所示結(jié)構(gòu)來(lái)實(shí)現(xiàn)通用模塊的過(guò)采樣技術(shù)。
由圖5可知,FPGA實(shí)現(xiàn)了以下功能:產(chǎn)生ADC時(shí)序,控制ADC的采樣頻率;以ADC轉(zhuǎn)換結(jié)束標(biāo)志位為觸發(fā)信號(hào),讀取ADC的轉(zhuǎn)換數(shù)據(jù);為濾除ADC輸出信號(hào)的量化噪聲和減小數(shù)據(jù)量,實(shí)現(xiàn)低通濾波和減采樣模塊;配置一塊ROM區(qū),用于存儲(chǔ)濾波器系數(shù),用于濾波器的實(shí)現(xiàn);為與外部處理引擎進(jìn)行通訊,實(shí)現(xiàn)UART接口協(xié)議;為使個(gè)模塊協(xié)調(diào)工作,采用鎖相環(huán)產(chǎn)生不同頻率的時(shí)鐘。
而模塊的工作流程為:處理引擎將待測(cè)信號(hào)的頻率通過(guò)UART傳給低通濾波和減采樣模塊,該模塊根據(jù)該頻率設(shè)置濾波器參數(shù)和減采樣的下抽取率;ADC時(shí)序模塊產(chǎn)生CNVST,啟動(dòng)ADC進(jìn)行采樣,BUSY信號(hào)觸發(fā)數(shù)據(jù)讀取模塊將數(shù)據(jù)讀入;低通濾波器和減采樣模塊根據(jù)設(shè)置好的參數(shù)和下抽取率對(duì)讀入的數(shù)據(jù)進(jìn)行處理,處理完畢后,再將數(shù)據(jù)通過(guò)UART傳到處理引擎做后續(xù)處理。
模塊中的ADC選用的是ADI公司的AD7674,18位、800KSPS逐次逼近型模數(shù)轉(zhuǎn)換器,具有較高的數(shù)據(jù)通過(guò)率。支持差分輸入模式,其內(nèi)部采樣保持電路的負(fù)載可調(diào),5V單電源供電。器件內(nèi)部還集成了轉(zhuǎn)換時(shí)鐘、基準(zhǔn)緩沖器及錯(cuò)誤校準(zhǔn)電路,并具有功能強(qiáng)大的串口和并口,與3V和5V電平兼容。而FPGA則選用的是Altera CycloneⅡ-EP2C8Q208C8,包括5個(gè)部分:可編程輸入/輸出單元、基本可編程邏輯單元、嵌入式塊RAM、豐富的布線(xiàn)資源和底層嵌入功能單元。
基于AD7674和EP2C8,該模塊設(shè)計(jì)獲得的相關(guān)參數(shù)為:
(1) 下抽取率,過(guò)采樣率,由于ADC的最高采樣頻率為800KSPS,則該模塊可用于0Hz -32kHz信號(hào)的測(cè)量;
(2) ADC的本身分辨率為18位,過(guò)采樣后達(dá)到的最大分辨率為25位;
(3) ADC基準(zhǔn)電壓為4.096V,最高分辨率時(shí)可分辨的信號(hào)大小為:
(4) 為使ADC達(dá)到25位分辨率,除滿(mǎn)足下抽取率N=47外,還必須保證低通濾波器的阻帶衰減符合過(guò)采樣的要求。由式(1)和(2)可知, 阻帶衰減R0=64.3dB。使用切比雪夫最佳逼近法獲得濾波器系數(shù),通過(guò)計(jì)算及考慮到設(shè)計(jì)余量,得到濾波器長(zhǎng)度L=4N,N=47時(shí),實(shí)際阻帶衰減為R0=75dB;利用MATLAB軟件中的函數(shù)CHEBWIN(L,R0)獲得濾波器系數(shù);將濾波器系數(shù)量化成8位,并進(jìn)行16倍下抽取,抽取后的值對(duì)應(yīng)為N=45 時(shí)的濾波器系數(shù)。將其存入FPGA的ROM區(qū),以此為基準(zhǔn)得到其他下抽取率的濾波器系數(shù)。
(5) 實(shí)現(xiàn)該模塊消耗的FPGA資源為:7275個(gè)LE(88%),65544個(gè)memory bits(40%),24個(gè)9位乘法器(67%),27個(gè)I/O口(20%)1個(gè)PLL(50%)。
實(shí)驗(yàn)結(jié)果和分析
為考察模塊設(shè)計(jì)的正確性,對(duì)其進(jìn)行了測(cè)試。主要分為兩個(gè)部分。第一部分為低通濾波器的測(cè)試。首先以N=1024 為例,驗(yàn)證實(shí)際濾波器的幅度特性是否與設(shè)計(jì)的一致,然后驗(yàn)證可變參數(shù)低通濾波器設(shè)計(jì)的正確性。第二部分則以心電信號(hào)為例,驗(yàn)證模塊分辨率與過(guò)采樣率的關(guān)系。
圖6為N=1024時(shí),MATLAB設(shè)計(jì)的濾波器幅度特性和實(shí)測(cè)的濾波器幅度特性的比對(duì)。測(cè)試方法為:ADC的采樣率為800kHz,下抽取率為1024,最終采樣率為 ;給系統(tǒng)加入3V不同頻率的正弦波,頻率范圍為5Hz-360Hz;獲得的數(shù)據(jù)傳到PC上,用MATLAB計(jì)算各組數(shù)據(jù)的FFT獲得幅度值;假設(shè)5Hz的正弦波經(jīng)過(guò)系統(tǒng)后幅度不發(fā)生衰減,以此為基準(zhǔn)計(jì)算各頻率點(diǎn)的衰減情況。由圖6可知,實(shí)測(cè)的幅度特性與設(shè)計(jì)的基本一致。不足之處是,受采樣率的限制,被測(cè)信號(hào)頻率不能大于采樣率的一半,我們只能得到部分采樣點(diǎn)的衰減情況。
圖7是可變參數(shù)濾波器在不同下抽取率時(shí)的幅度特性。為驗(yàn)證改變參數(shù)時(shí)濾波器是否正常工作,給系統(tǒng)輸入信號(hào)為2V、20Hz正弦波和0.95V、90Hz正弦波的加性信號(hào),ADC分別以采樣率12.5kHz、50kHz、200kHz、800kHz對(duì)加性信號(hào)采樣,下抽取率依次為64、256、1024、4096,則四組數(shù)據(jù)的最終采樣率均為195Hz。以20Hz正弦波為基準(zhǔn),驗(yàn)證90Hz正弦波的衰減情況。圖7中每條曲線(xiàn)上的黑點(diǎn)對(duì)應(yīng)的是90Hz的衰減特性,分別為:15.345dB、15.504 dB、15.54 dB、14.958 dB。圖8是信號(hào)經(jīng)過(guò)系統(tǒng)后的頻譜分析。由圖8可知,90Hz的正弦波明顯得到了抑制,其衰減分別為:16.896 dB、14.408 dB、17.345 dB、14.804 dB,實(shí)測(cè)的數(shù)據(jù)與設(shè)計(jì)的基本一致,說(shuō)明各參數(shù)下的濾波器能正常工作。另外,圖8中三個(gè)小的尖峰,分別為50Hz干擾和20Hz的諧波。
圖9是系統(tǒng)測(cè)得的實(shí)驗(yàn)室某同學(xué)的心電波形。由圖9可知,隨著下抽取率的增大,心電信號(hào)的細(xì)節(jié)越來(lái)越清楚,即分辨率越來(lái)越高。因此,隨者下抽取率的增大,系統(tǒng)的分辨率是增加的。
綜上所述,基于過(guò)采樣技術(shù)的通用數(shù)據(jù)采集模塊可以根據(jù)被測(cè)信號(hào)的不同,改變自身的參數(shù),達(dá)到測(cè)量要求,同時(shí),也完成了可變參數(shù)低通濾波器的硬件實(shí)現(xiàn)。
結(jié)語(yǔ)
為減小通用數(shù)據(jù)采集模塊的體積和成本,將過(guò)采樣技術(shù)應(yīng)用于模塊的ADC中。由于通用模塊測(cè)量多種信號(hào),為達(dá)到過(guò)采樣對(duì)低通濾波器的要求,設(shè)計(jì)了可變參數(shù)低通濾波器。該濾波器簡(jiǎn)單易行,并且計(jì)算效率高,在本文設(shè)計(jì)的通用模塊中,每獲得一個(gè)采樣點(diǎn),最多只需進(jìn)行4次18bits×8bits的乘法運(yùn)算。
此外,本文從硬件上實(shí)現(xiàn)了該模塊的設(shè)計(jì),并對(duì)模塊進(jìn)行了測(cè)試,最后以心電為例,驗(yàn)證了參數(shù)的可變性。