《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 電源技術(shù) > 設(shè)計(jì)應(yīng)用 > 窄帶噪聲主動(dòng)控制系統(tǒng)的FPGA實(shí)現(xiàn)
窄帶噪聲主動(dòng)控制系統(tǒng)的FPGA實(shí)現(xiàn)
2017年電子技術(shù)應(yīng)用第9期
姜宇程,關(guān) 添,王佳飛
清華大學(xué)深圳研究生院 生物醫(yī)學(xué)工程研究中心,廣東 深圳518055
摘要: 基于FPGA的窄帶噪聲主動(dòng)控制系統(tǒng),采用并行計(jì)算能力強(qiáng)的FPGA作為核心處理器,能夠應(yīng)對(duì)多頻率、多通道情況下計(jì)算量成倍增加的情況;系統(tǒng)實(shí)現(xiàn)了并聯(lián)結(jié)構(gòu)的窄帶前饋FxLMS算法,可以針對(duì)噪聲中的不同頻率分量分別進(jìn)行主動(dòng)控制。并聯(lián)結(jié)構(gòu)算法對(duì)于乘法器資源的消耗極大,因此提出了一種乘法器資源復(fù)用技術(shù)。實(shí)現(xiàn)三通道的算法所用的乘法器資源降低到原來的33.3%,極大降低了系統(tǒng)成本,便于該系統(tǒng)的廣泛應(yīng)用。
中圖分類號(hào): TN98;O422.8
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.170182
中文引用格式: 姜宇程,關(guān)添,王佳飛. 窄帶噪聲主動(dòng)控制系統(tǒng)的FPGA實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2017,43(9):61-63,67.
英文引用格式: Jiang Yucheng,Guan Tian,Wang Jiafei. The FPGA implementation of narrowband active noise control system[J].Application of Electronic Technique,2017,43(9):61-63,67.
The FPGA implementation of narrowband active noise control system
Jiang Yucheng,Guan Tian,Wang Jiafei
Research Center of Biomedical Engineering,Graduated School at Shenzhen,Tsinghua University,Shenzhen 518055,China
Abstract: Active narrowband noise control system based on FPGA can deal with large calculation such as multi-frequency, multi-channel circumstance. The parallel structure of feedforward FxLMS algorithm was achieved which could control different frequency component of noise respectively. The parallel algorithm needs a large cost of multiplier resources, so this article proposes a multiplier resources reuse technology which reduced the multiplier usage to 33.3% in three channels application. This technology greatly reduces the system cost and expands the system′s application.
Key words : acoustics;narrow-band ANC;FPGA;parallel FxLMS algorithm;resource reuse

0 引言

    噪聲污染廣泛存在于工業(yè)生產(chǎn)和日常生活中,而其中的周期性噪聲,如發(fā)動(dòng)機(jī)、壓縮機(jī)、風(fēng)扇及螺旋槳等旋轉(zhuǎn)或往復(fù)設(shè)備發(fā)出的噪聲也十分常見[1]。由于其噪聲能量集中分布于特定的頻帶,所以被稱為窄帶噪聲。隨著電子技術(shù)的進(jìn)步,主動(dòng)噪聲控制技術(shù)逐漸發(fā)展,相比于傳統(tǒng)的被動(dòng)噪聲控制,主動(dòng)噪聲控制具有成本低、靈活性高等優(yōu)點(diǎn)[2]。而且窄帶噪聲不同于寬帶噪聲,其頻率數(shù)值往往可以通過非聲學(xué)傳感器采集得到,進(jìn)而避免了聲反饋問題,更適合于采用主動(dòng)控制的方法[3]。

    目前主動(dòng)噪聲控制系統(tǒng)工程實(shí)現(xiàn)時(shí)主要采用的是DSP處理器,其優(yōu)點(diǎn)在于相關(guān)驅(qū)動(dòng)比較成熟并且芯片成本較低[4]。但是隨著窄帶噪聲頻率的提高,需要的音頻采樣率也要提高,因此計(jì)算量會(huì)相應(yīng)增加,DSP的計(jì)算速度就會(huì)成為瓶頸,所以目前的主動(dòng)噪聲控制系統(tǒng)所應(yīng)用的場(chǎng)景都是低頻噪聲[5]。為了能夠?qū)Ω哳l噪聲進(jìn)行主動(dòng)控制,同時(shí)也為了應(yīng)對(duì)多頻率、多通道情況下計(jì)算量成倍增加的情況,本系統(tǒng)采用并行計(jì)算能力較強(qiáng)的FPGA作為核心處理器,并對(duì)并聯(lián)結(jié)構(gòu)的窄帶前饋FxLMS算法進(jìn)行了工程實(shí)現(xiàn)與實(shí)際測(cè)試。此外考慮到并聯(lián)結(jié)構(gòu)算法對(duì)于乘法器資源的消耗大,本文采用乘法器資源復(fù)用技術(shù)[6],極大降低了系統(tǒng)成本,便于系統(tǒng)的實(shí)際工程應(yīng)用。

1 FxLMS算法分析與改進(jìn)

1.1 窄帶前饋FxLMS算法

    前饋ANC系統(tǒng)有兩種實(shí)現(xiàn)方法,其主要區(qū)別在于參考信號(hào)的來源[2]。雖然用聲學(xué)傳感器采集初級(jí)噪聲作為參考信號(hào)的算法可以針對(duì)寬帶和窄帶噪聲進(jìn)行主動(dòng)控制,但是聲反饋問題會(huì)嚴(yán)重影響算法的穩(wěn)定性。所以本文設(shè)計(jì)的系統(tǒng)只針對(duì)窄帶噪聲信號(hào),從而可利用加速度計(jì)、轉(zhuǎn)速計(jì)等非聲學(xué)傳感器采集并計(jì)算出噪聲信號(hào)主要頻率,進(jìn)而在系統(tǒng)內(nèi)部生成參考信號(hào)。窄帶前饋FxLMS算法的結(jié)構(gòu)如圖1所示。算法主要包括參考信號(hào)的產(chǎn)生、次級(jí)聲通道的離線辨識(shí)以及LMS自適應(yīng)濾波3個(gè)部分[7]。

qrs4-t1.gif

    圖1中W(z)代表FIR濾波器,P(z)代表初級(jí)聲通道,S(z)代表從次級(jí)噪聲數(shù)模轉(zhuǎn)換到傳聲器采集到音頻數(shù)據(jù)之間的次級(jí)聲通道,qrs4-gs1-s1.gif是次級(jí)聲通道S(z)的M階FIR估計(jì)。次級(jí)聲通道會(huì)導(dǎo)致系統(tǒng)不穩(wěn)定[8],為了補(bǔ)償次級(jí)聲通道的影響,F(xiàn)xLMS算法需要得到次級(jí)聲通道S(z)的M階FIR估計(jì) 。假設(shè)次級(jí)聲通道是時(shí)不變系統(tǒng),則可以采用離線辨識(shí)的方法。圖1中虛線框內(nèi)即為系統(tǒng)所采用的離線辨識(shí)模塊。穩(wěn)定后得到次級(jí)聲通道的傳遞函數(shù)為:

qrs4-gs1-5.gif

1.2 并聯(lián)結(jié)構(gòu)FxLMS算法

    在實(shí)際中,窄帶噪聲往往還包括其基頻的高次諧波或者其他能量較高的頻率分量。為了解決這個(gè)問題,可以使上一節(jié)中的正弦信號(hào)發(fā)生器包含多個(gè)對(duì)應(yīng)的頻率分量,這樣做的優(yōu)點(diǎn)是算法結(jié)構(gòu)簡(jiǎn)單、資源消耗低。但同時(shí)會(huì)帶來一個(gè)嚴(yán)重的問題,即當(dāng)噪聲中各頻率分量差距較大時(shí),同一個(gè)步長(zhǎng)因子μ無法使所有頻率達(dá)到最佳的收斂狀態(tài),會(huì)產(chǎn)生振蕩或者不收斂的情況。而當(dāng)各頻率分量差距較小時(shí),就需要自適應(yīng)濾波器的階數(shù)足夠長(zhǎng),以滿足相鄰頻率的高分辨率,這會(huì)導(dǎo)致收斂速度慢、量化誤差大等問題[2]。所以,解決這個(gè)問題最好的辦法是單獨(dú)處理各個(gè)頻率分量,即采用并聯(lián)結(jié)構(gòu)的FxLMS算法。算法結(jié)構(gòu)如圖2所示。

qrs4-t2.gif

    自適應(yīng)算法的系數(shù)調(diào)整公式為:

     qrs4-gs6.gif

    在并聯(lián)結(jié)構(gòu)的FxLMS算法中,不同頻率的正弦參考信號(hào)由其對(duì)應(yīng)的自適應(yīng)濾波器分別處理。所有濾波器輸出信號(hào)相加后作為次級(jí)噪聲信號(hào),用于抵消初級(jí)噪聲。通過這種方式將噪聲中不同的頻率成分分開處理,系統(tǒng)的穩(wěn)定性和收斂速度都會(huì)得到明顯提高,同時(shí)增加了系統(tǒng)應(yīng)用的靈活性。相比于一般結(jié)構(gòu)的FxLMS算法,并聯(lián)結(jié)構(gòu)算法會(huì)成倍地增加對(duì)系統(tǒng)資源的占用,但是這個(gè)不足可以利用系統(tǒng)FPGA實(shí)現(xiàn)過程中采用的資源復(fù)用技術(shù)克服。

2 ANC系統(tǒng)的搭建與實(shí)現(xiàn)

    系統(tǒng)采用FPGA作為信號(hào)處理器的原因有兩點(diǎn)。首先是將算法進(jìn)行硬件實(shí)現(xiàn)后,其運(yùn)算速度更快,利于搭建實(shí)時(shí)處理系統(tǒng);其次利用FPGA并行計(jì)算的優(yōu)點(diǎn),通過簡(jiǎn)單的復(fù)制,即可將現(xiàn)有ANC系統(tǒng)擴(kuò)展為多通道,使系統(tǒng)可以應(yīng)用于更多的實(shí)際場(chǎng)景。然而FPGA在實(shí)現(xiàn)數(shù)字信號(hào)處理算法,尤其是濾波器等乘加運(yùn)算較多的算法時(shí),其內(nèi)部的乘法器資源消耗會(huì)很大,而選擇乘法器數(shù)量多的FPGA型號(hào)會(huì)極大提高系統(tǒng)成本。所以為了提高ANC系統(tǒng)的實(shí)用性,需要對(duì)FPGA內(nèi)部的乘法器進(jìn)行復(fù)用。

2.1 乘法器資源復(fù)用技術(shù)

    考慮到系統(tǒng)中FPGA的工作時(shí)鐘為50 MHz,而音頻模塊的采樣時(shí)鐘為32 kHz,滿足系統(tǒng)時(shí)鐘頻率遠(yuǎn)大于數(shù)據(jù)時(shí)鐘頻率的條件。所以采用將同一時(shí)刻并行進(jìn)行的乘法運(yùn)算部分轉(zhuǎn)換為串行計(jì)算的方法對(duì)乘法器進(jìn)行復(fù)用,即所謂的時(shí)間復(fù)用。時(shí)間復(fù)用的時(shí)序過程如圖3所示。

qrs4-t3.gif

    假設(shè)有N個(gè)并行的階數(shù)為M的濾波器,則當(dāng)數(shù)據(jù)時(shí)鐘上升沿到來時(shí),需要計(jì)算出N×M個(gè)乘法結(jié)果,即需要N×M個(gè)乘法器。而如果采用復(fù)用技術(shù),乘法器在數(shù)據(jù)有效后接受控制器的統(tǒng)一調(diào)度,逐一計(jì)算各濾波器在該級(jí)的乘法運(yùn)算,只要滿足兩次乘法運(yùn)算的時(shí)間間隔大于乘法器輸出結(jié)果的時(shí)間,則N個(gè)乘法器串行計(jì)算的輸出結(jié)果正確。這樣并行濾波器所消耗的乘法器數(shù)目就會(huì)降為M個(gè),大大節(jié)約了乘法器資源。

    由于本系統(tǒng)是對(duì)相同類型的算法模塊進(jìn)行乘法器復(fù)用,所以可以采用簡(jiǎn)單的計(jì)數(shù)器實(shí)現(xiàn)調(diào)度控制,即在數(shù)據(jù)有效后對(duì)系統(tǒng)時(shí)鐘開始進(jìn)行計(jì)數(shù),在不同的計(jì)數(shù)值進(jìn)行各算法模塊的乘法運(yùn)算,同時(shí)在不同的計(jì)數(shù)值輸出各乘法運(yùn)算結(jié)果。

2.2 系統(tǒng)分析

    本文所實(shí)現(xiàn)的ANC系統(tǒng)所完成的功能是對(duì)環(huán)境噪聲中3個(gè)主要頻率分量進(jìn)行主動(dòng)控制,達(dá)到整體降噪的目的。降噪算法采用3個(gè)并聯(lián)的FxLMS濾波器實(shí)現(xiàn),如果不采用資源復(fù)用技術(shù),除了次級(jí)聲通道辨識(shí)以外,算法還需要3個(gè)128階FIR濾波器以及3個(gè)64階LMS自適應(yīng)濾波器,理論上共需要960個(gè)乘法器。由于采用了復(fù)用技術(shù),所以系統(tǒng)算法包括一個(gè)128階的次級(jí)聲通道辨識(shí)模塊、一個(gè)三輸入三輸出的128階FIR濾波器和一個(gè)三輸入三輸出的64階LMS自適應(yīng)濾波器,只需要320個(gè)乘法器即可,相比復(fù)用前節(jié)約了2倍的乘法器資源。系統(tǒng)采用的FPGA芯片為Altera公司Stratix III系列中的EP3SE260F1152C2,系統(tǒng)實(shí)現(xiàn)后所消耗的資源及比例如表1所示。

qrs4-b1.gif

    由表1可以看出,F(xiàn)PGA的資源可以滿足算法要求,經(jīng)調(diào)試后系統(tǒng)整體可以正常工作。

3 結(jié)果分析

    對(duì)所搭建的ANC系統(tǒng)進(jìn)行實(shí)際應(yīng)用測(cè)試,測(cè)試所采用的初級(jí)噪聲為音箱發(fā)出的窄帶噪聲信號(hào),其主要頻率為1 000 Hz、2 000 Hz和3 000 Hz。ANC系統(tǒng)工作之前,拾音器采集到的聲音為初級(jí)噪聲,ANC系統(tǒng)工作之后,拾音器采集到的聲音為初級(jí)噪聲和次級(jí)噪聲疊加以后的誤差噪聲信號(hào)。通過將ANC系統(tǒng)工作前后拾音器所采集到的信號(hào)的時(shí)域和頻域進(jìn)行對(duì)比,即可以判斷預(yù)期的系統(tǒng)功能是否實(shí)現(xiàn)。

    對(duì)參考信號(hào)頻率與噪聲頻率基本相同的情況進(jìn)行測(cè)試,即參考信號(hào)的頻率成分1 000 Hz、2 000 Hz和3 000 Hz。圖4顯示了ANC系統(tǒng)工作前后的噪聲信號(hào)時(shí)域和頻域的對(duì)比。

qrs4-t4.gif

    定義收斂時(shí)間為時(shí)域波形中的誤差噪聲信號(hào)幅值降低到初級(jí)噪聲幅值的20%以下的時(shí)間,對(duì)噪聲時(shí)域波形的分析可以得出在無頻偏的情況下,ANC系統(tǒng)的收斂時(shí)間為12.5 ms。分析頻域圖可以得出,無頻偏情況下系統(tǒng)對(duì)于噪聲中1 000 Hz、2 000 Hz和3 000 Hz的頻率分量分別可以達(dá)到15.5 dB、14.3 dB和11.0 dB的衰減。基于DSP的FxLMS算法的系統(tǒng)在汽車發(fā)動(dòng)機(jī)噪聲主動(dòng)控制測(cè)試的結(jié)果為13.5 dB[10],可以看出本文所實(shí)現(xiàn)的系統(tǒng)在降噪效果和功能擴(kuò)展方面具有明顯優(yōu)勢(shì)。

4 結(jié)論

    本文提出了一種基于FPGA的窄帶噪聲主動(dòng)控制系統(tǒng)的設(shè)計(jì)方法。該系統(tǒng)克服了傳統(tǒng)ANC系統(tǒng)只能針對(duì)低頻窄帶噪聲控制應(yīng)用的不足,使其更適于實(shí)際應(yīng)用。此外,資源復(fù)用技術(shù)的應(yīng)用大大減少了系統(tǒng)對(duì)于FPGA乘法器資源的消耗,降低了系統(tǒng)成本。由于FPGA的并行性特點(diǎn),可以通過模塊復(fù)制將系統(tǒng)應(yīng)用于多頻率多通道噪聲主動(dòng)控制的環(huán)境。

    通過對(duì)系統(tǒng)的實(shí)際測(cè)試驗(yàn)證了系統(tǒng)噪聲控制的有效性。通過與不同噪聲頻率分析算法配合,可以將該系統(tǒng)應(yīng)用于多種窄帶噪聲的控制領(lǐng)域。例如對(duì)于汽車車內(nèi)發(fā)動(dòng)機(jī)噪聲的主動(dòng)控制,可以通過實(shí)時(shí)采集汽車發(fā)動(dòng)機(jī)信號(hào),分析出汽車發(fā)動(dòng)機(jī)噪聲主要頻率,進(jìn)而利用本文所提出的系統(tǒng)對(duì)其進(jìn)行主動(dòng)控制。但是本文系統(tǒng)自適應(yīng)算法的內(nèi)部參數(shù),包括濾波器階數(shù)以及算法步長(zhǎng)因子等是通過仿真實(shí)驗(yàn)確定的,并沒有形成一個(gè)統(tǒng)一的選擇方法,還需要后續(xù)的研究加以完善,以擴(kuò)大系統(tǒng)的實(shí)際應(yīng)用范圍。

參考文獻(xiàn)

[1] ROULET C A.Indoor environment quality in buildings and its impact on outdoor environment[J].Energy and Buildings,2001,33:183-191.

[2] ROURE A.Self-adaptive broadband active sound control system[J].Journal of Sound and Vibration,1985,101(3):429-441.

[3] KUO S M,MORGAN D R.Active noise control systems:algorithms and DSP implementations[M].New York:Wiley,1996.

[4] 孫琳.基于DSP的窄帶主動(dòng)噪聲控制系統(tǒng)實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2011.

[5] 劉劍.基于FXLMS算法的窄帶主動(dòng)噪聲控制系統(tǒng)性能分析研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2011.

[6] 劉純武,黃芝平.一種多通道信號(hào)處理復(fù)用結(jié)構(gòu)及其FPGA實(shí)現(xiàn)方法[J].電子測(cè)量與儀器學(xué)報(bào),2008,22(1):72-75.

[7] VU H S,CHEN K H,SUN S F,et al.A power-efficient circuit design of feed-forward FxLMS active noise cancellation for in-ear headphones[C].VLSI Design,Automation and Test(VLSI-DAT),2015 International Symposium on.IEEE,2015:1-4.

[8] XIAO Y,IKUTA A,MA L,et al.Stochastic analysis of the FXLMS-based narrowband active noise control system[J].IEEE Transactions on Audio,Speech,and Language Processing,2008,16(5):1000-1014.

[9] 劉小明,洪一.基于查找表和Taylor展開的正余弦函數(shù)的實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2009,32(13):165-166.

[10] 計(jì)煒梁,凌強(qiáng),朱學(xué)俊,等.基于DSP的主動(dòng)降噪系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].微型機(jī)與應(yīng)用,2015,34(24):32-34.

[11] 王雯婷,葛海波,王艷艷.變步長(zhǎng)LMS算法抑制窄帶干擾技術(shù)研究[J].電子技術(shù)應(yīng)用,2015,41(2):89-92.



作者信息:

姜宇程,關(guān)  添,王佳飛

(清華大學(xué)深圳研究生院 生物醫(yī)學(xué)工程研究中心,廣東 深圳518055)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。