專利名稱:一種基于fpga的車輛振動信號濾波裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及噪聲消除裝置,具體涉及一種車載噪聲背景下的車輛振動信號的濾波
直ο
背景技術(shù):
危險(xiǎn)品車輛行駛狀態(tài)數(shù)據(jù)即車輛振動信號采集的準(zhǔn)確性和精確性是車輛姿態(tài)數(shù)據(jù)融合分析獲得可靠性結(jié)果的前提條件。常用加速度傳感器對車輛的俯仰、橫滾角度與三個方向的加速度信號對車輛姿態(tài)進(jìn)行判定,在車載環(huán)境下,加速度傳感器在測量過程中由于機(jī)械轉(zhuǎn)子容易漂移和受到其它激振源干擾等原因,真實(shí)振動信號往往受到嚴(yán)重的干擾, 如果直接使用這種振動信號會對后續(xù)分析產(chǎn)生較大誤差,給最終的數(shù)據(jù)分析決策帶來很大困難,所以需要先對振動信號進(jìn)行濾波降噪處理。車載環(huán)境下加速度傳感器的干擾信號來源多樣且為非平穩(wěn)信號,在實(shí)際工程中經(jīng)常用到的低通濾波器對此類信號的處理卻無能為力。由于車輛內(nèi)部各部分的固有頻率不同,在行駛中車輛由于路面不平、發(fā)動機(jī)振動、車輪滾動的周期振動和傳動系統(tǒng)的不平衡造成的激勵。所以,這個實(shí)際信號是一個含噪聲的非平穩(wěn)振動信號。由于車輛的振動信號主要集中在低頻部分,噪聲分布有低頻和高頻部分,并且存在非平穩(wěn)性和隨機(jī)性,很難以用傳統(tǒng)方法來解決有用信號的提取。若低通濾波器太寬,則在濾波器后,信號仍存在有大量噪聲; 若低通濾波器太窄,則將一部分有用信號認(rèn)為是噪聲被濾掉。目前的濾波方法都是采用軟件或者DSP等硬件實(shí)現(xiàn)的,由于軟件速度慢,對實(shí)時信號進(jìn)行處理比較困難,DSP芯片功耗大,處理能力受到主頻的限制等,在處理速度和抗干擾性能方面不能滿足系統(tǒng)高速、實(shí)時的需求。
發(fā)明內(nèi)容
針對上述現(xiàn)有技術(shù)存在的缺陷或不足,本發(fā)明的目的在于提供一種基于FPGA的車輛振動信號的濾波裝置,該裝置是基于FPGA的L階FIR濾波裝置。為實(shí)現(xiàn)上述技術(shù)任務(wù),本發(fā)明采取如下的技術(shù)方案—種基于FPGA的車輛振動信號濾波裝置,其特征在于該裝置包括第一寄存器、 第二寄存器、第三寄存器、減法器、變步長因子計(jì)算電路和濾波器;參考噪聲信號x(n)接入第一寄存器的輸入端緩存,含噪振動信號d(n)接入第二寄存器的輸入端緩存,第一寄存器的將緩存后的參考噪聲信號x(n)輸出至濾波器的一個輸入端,減法器輸出的誤差信號 e(n-l)分別接入第三寄存器的輸入端、濾波器的第二輸入端和變步長因子計(jì)算電路的輸入端,變步長因子計(jì)算電路的輸出信號變步長因子μ (η-1)接入濾波器的第三輸入端,第二寄存器將緩存后的含噪振動信號d(n)輸入至減法器一個輸入端,濾波器輸出的濾波后的參考噪聲信號y(n)接入減法器的另一輸入端,第三寄存器輸出濾波處理后的車輛振動信號;其中d(n)為η時刻的含噪振動信號,χ(η)為η時刻的參考噪聲信號,e(n-l)為(n-1)時刻的誤差信號,μ (η-1)為(η-1)時刻濾波器的變步長因子,初始時刻減法器與變步長因子計(jì)算電路的輸出均為0,即e(l) =0, μ (1) = 0;所述變步長因子計(jì)算電路由乘法器1、乘法器2、乘法器3、加法器1、減法器1、除法器1和分頻器構(gòu)成實(shí)現(xiàn)變步長因子μ (η-1)的計(jì)算;該μ (η-1)的計(jì)算公式如下μ(η-\) = 0.08(1 -1)
IOOxe {η-1) + 1所述分頻器由計(jì)數(shù)器、比較器1、比較器2、反相器和D觸發(fā)器1構(gòu)成,該分頻器對 FPGA平臺時鐘進(jìn)行8分頻后,為除法器1提供觸發(fā)時鐘;所述計(jì)數(shù)器的輸出端與比較器1 的輸入端和比較器2的輸入端連接,所述比較器1的輸出端與反相器的輸入端連接,所述反相器的輸出端與D觸發(fā)器1的ce管腳連接,所述比較器2的輸出端與D觸發(fā)器1的d管腳連接,所述比較器1的輸出端與計(jì)數(shù)器的clr管腳連接,D觸發(fā)器1的輸出端與除法器1連接;所述濾波器為基于FPGA的L階LMS濾波器,該濾波器由L個LMS_tap和L個加法器構(gòu)成完成如下運(yùn)算Wi (n) = Wi (η-1) +2 μ (n-1) e (η-1) χ (n-i+1)Yi (η) = Wi (η) χ (n-i+1)y (η) = Y1 (η) +y2 (η) +y3 (η)... +Yi (η)... +yL (η)其中L為彡1的自然數(shù),1彡i彡L,y(n)為濾波器所計(jì)算的η時刻濾波后的參考噪聲信號,Yi (η)為第i個LMS_tap即LMS_tapi所計(jì)算的η時刻濾波后的參考噪聲信號, Wi (η)為LMS_tapin時刻的濾波權(quán)系數(shù),初始時刻LMS_tapi的濾波權(quán)系數(shù)為0。上述濾波器中的LMS_tap個數(shù)或加法器個數(shù)L = 128。本發(fā)明與現(xiàn)有方法相比,具有以下優(yōu)點(diǎn)基于FPGA的車輛振動信號去噪電路采用了 FIR串行濾波器結(jié)構(gòu),充分利用了 FPGA 芯片的邏輯資源,可實(shí)現(xiàn)對中低速車輛振動信號的實(shí)時處理,并且降低了濾波器的開發(fā)成本?;贔PGA的車輛振動信號去噪電路具有良好的可擴(kuò)展性,在FPGA芯片乘法器內(nèi)核數(shù)量允許的情況下,可配置為任意階數(shù)的濾波器結(jié)構(gòu),從而濾波效果更好。裝置所依據(jù)的算法具有計(jì)算速度快、收斂速度快、實(shí)時性高、濾波效果好等優(yōu)點(diǎn), 可以滿足信號處理方面的實(shí)時處理需求。
圖1為本發(fā)明的裝置的結(jié)構(gòu)示意圖;圖2為變步長因子計(jì)算電路的電路圖;圖3為分頻器的電路圖;圖4為濾波器的電路圖。以下結(jié)合附圖和實(shí)施例對本發(fā)明作進(jìn)一步的詳細(xì)說明。
具體實(shí)施方式
對于濾波器來說,濾波算法的選取是一個方面,算法的硬件實(shí)現(xiàn)方案也很重要,實(shí)現(xiàn)平臺的選取直接影響到數(shù)據(jù)處理的實(shí)時可靠性。本文選取了高速FPGA芯片實(shí)現(xiàn)優(yōu)選的自適應(yīng)濾波算法。隨著通信技術(shù)、信號處理理論和計(jì)算機(jī)技術(shù)的飛速發(fā)展,處理的信號量越來越大, 對實(shí)時性的要求也越來越高。FPGA是基于查找表結(jié)構(gòu)的可編程器件,具有非常豐富的寄存器資源,而且可以通過系統(tǒng)內(nèi)的重新配置來改變邏輯功能,使設(shè)計(jì)的更新與改動十分方便。 隨著FPGA密度和速度的提高,現(xiàn)在FPGA已經(jīng)可以勝任一些原來只有專用芯片或者多個DSP 才能完成的計(jì)算任務(wù)。基于FPGA的數(shù)字信號處理系統(tǒng)的優(yōu)點(diǎn)是,首先FPGA支持并行處理和流水結(jié)構(gòu),可以使用時分復(fù)用,通過多個處理單元的并行工作,實(shí)現(xiàn)高性能的數(shù)字信號處理。特別是那些結(jié)構(gòu)性好、數(shù)據(jù)量大的算法實(shí)現(xiàn)。比如快速傅里葉變換(Fast Fourier Transformation, FFT)和數(shù)字濾波算法等。其次,F(xiàn)PGA內(nèi)部越來越多的內(nèi)嵌了 DSP乘法模塊。這些模塊是硬件模塊,運(yùn)行速度很高,特別適合那些需要大量乘法計(jì)算的算法??傊?FPGA是DSP設(shè)計(jì)的理想器件。本發(fā)明的基于FPGA的車輛振動信號濾波裝置所使用的FPGA芯片為Xilinx公司的Virtex-II Pro XC2VP30芯片,所述的寄存器、乘法器、加法器、減法器、緩存器、計(jì)數(shù)器、 D觸發(fā)器均為Xilinx公司的FPGA芯片的IP核。參考圖1至圖4,本發(fā)明的基于FPGA的車輛振動信號濾波裝置包括第一寄存器、 第二寄存器、第三寄存器、減法器、變步長因子計(jì)算電路和濾波器;參考噪聲信號x(n)接入第一寄存器的輸入端,含噪振動信號d(n)接入第二寄存器的輸入端,第一寄存器的輸出信號x(n)接入濾波器的一個輸入端,減法器輸出的誤差信號e(n-l)分別接入第三寄存器的輸入端、濾波器的第二輸入端和變步長因子計(jì)算電路的輸入端,變步長因子計(jì)算電路的輸出信號變步長因子μ (η-1)接入濾波器的第三輸入端,第二寄存器的輸出信號d(η)接入減法器一個輸入端,濾波器輸出的濾波后的參考噪聲信號y (η)接入減法器的另一輸入端,第三寄存器輸出濾波處理后的車輛振動信號;其中d(n)為η時刻的含噪振動信號,χ(η)為η時刻的參考噪聲信號,e(n-l)為 (η-1)時刻的誤差信號,μ (η-1)為(η-1)時刻濾波器的變步長因子,初始時刻減法器與變步長因子計(jì)算電路的輸出均為0,即e(l) = 0, μ (1) = 0;所述變步長因子計(jì)算電路由乘法器1、乘法器2、乘法器3、加法器1、減法器1、除法器1和分頻器構(gòu)成實(shí)現(xiàn)變步長因子μ (η-1)的計(jì)算;該μ (η-1)的計(jì)算公式如下^ (^-1) = 0.08(1- 1 )
IOOxe {η-1) + 1q) 其中,0.08為計(jì)算公式中的常系數(shù),變步長因子計(jì)算電路是按照上述計(jì)算公式來實(shí)現(xiàn)的;變步長因子算法的FPGA原理框圖如圖2所示,減法器的輸出信號e(n-l)接到乘法器1中,完成e2 (η-1)計(jì)算;乘法器1的輸出e2 (η-1)接入乘法器2與ox64000 (十進(jìn)制的是 100)計(jì)算IOOXe2(Ii-I);計(jì)算結(jié)果100Xe2(n-l)輸入加法器1中與oxlOOO (公式中的十進(jìn)制1)相加完成100 Xe2 (η-1)+1的運(yùn)算;100 X e2 (η-1)+1計(jì)算結(jié)果輸入除法器1的除數(shù)端,用oxlOOO (公式中的十進(jìn)制被除數(shù)1)與之相除,得到的計(jì)算結(jié)果輸入減法器1與被減數(shù)οχ1000(公式中的十進(jìn)制被減數(shù)1)實(shí)現(xiàn)(1_ιηη 2:、工J運(yùn)算;減法器1的計(jì)算結(jié)果
IOOxe (/7-1) + 1
輸入乘法器3中,在乘法器3中完成0+08(1-1 ,、工P運(yùn)算,即與十六進(jìn)制數(shù)147相
IOOxe (/7-1) + 1
乘得到最終的步長因子。其中,OX表示十六進(jìn)制數(shù),所述的公式(1)中的十進(jìn)制小數(shù)與整數(shù)的轉(zhuǎn)換是采用 b = a*(2"12)的方法計(jì)算得到。其中,假設(shè)a為原十進(jìn)制數(shù),通過計(jì)算公式得到一個整數(shù)b。再將b轉(zhuǎn)換為十六進(jìn)制得到。所述分頻器結(jié)構(gòu)圖如圖3所示,因?yàn)槌ㄆ?需要8個周期的時鐘才能執(zhí)行完一次除法操作,分頻器主要為除法器1提供觸發(fā)時鐘,它將FPGA平臺時鐘進(jìn)行8分頻后,為除法器1提供觸發(fā)時鐘;該分頻器具體是由計(jì)數(shù)器、比較器1、比較器2、反相器和D觸發(fā)器構(gòu)成完成對FPGA 平臺時鐘的分頻工作;所述計(jì)數(shù)器的輸出端與比較器1的輸入端和比較器2的輸入端連接, 所述比較器1的輸出端與反相器的輸入端連接,所述反相器的輸出端與D觸發(fā)器1的ce管腳連接,所述比較器2的輸出端與D觸發(fā)器1的d管腳連接,所述比較器1的輸出端與計(jì)數(shù)器的clr管腳連接,D觸發(fā)器1的輸出端與除法器1連接;分頻器的輸入為FPGA平臺時鐘信號clk(本發(fā)明中的所有參與的模塊,如寄存器, 加法器,除法器,減法器等的輸入信號都有系統(tǒng)時鐘信號作為觸發(fā)時鐘),計(jì)數(shù)器對輸入的時鐘信號elk脈沖信號進(jìn)行上升沿監(jiān)測,每檢測到一個elk的上升沿計(jì)數(shù)器的值加1,且將計(jì)數(shù)器的值分別輸入比較器1和比較器2 ;比較器1為計(jì)數(shù)器提供清零操作指令;比較器1將計(jì)數(shù)器的值與7比較,當(dāng)計(jì)數(shù)器的值等于7,比較器1輸出1即高電平,與比較器1相連的計(jì)數(shù)器clr管腳接收到高電平時, 計(jì)數(shù)器執(zhí)行清零操作;當(dāng)計(jì)數(shù)器的值不等于7時,比較器1輸出0即低電平,此時計(jì)數(shù)器進(jìn)行加值操作;比較器1與反相器為D觸發(fā)器1提供輸出使能指令;比較器1將計(jì)數(shù)器的值與7 比較,當(dāng)計(jì)數(shù)器的值等于7,則比較器1輸出1即高電平,該高電平經(jīng)反相器翻轉(zhuǎn)為低電平后輸入至D觸發(fā)器1的ce管腳,D觸發(fā)器1輸出不變,仍然輸出D觸發(fā)器1上一時刻輸出的信號;當(dāng)計(jì)數(shù)器的值不等于7時,比較器1輸出0即低電平,該低電平經(jīng)反相器翻轉(zhuǎn)為高電平后輸入至D觸發(fā)器1的ce管腳,D觸發(fā)器1輸出比較器2的電平;比較器2控制D觸發(fā)器1輸出電平翻轉(zhuǎn);比較器2將計(jì)數(shù)器的值與3進(jìn)行比較,當(dāng)計(jì)數(shù)器的值小于3時,比較器2輸出低電平至D觸發(fā)器1的d管腳,與此同時,D觸發(fā)器1的 ce管腳接收到反相器輸入的高電平,D觸發(fā)器1輸出為比較器2的低電平,該電平輸入乘法器3為其提供觸發(fā)時鐘;當(dāng)計(jì)數(shù)器的值大于3時,比較器2輸出高電平至D觸發(fā)器1的d管腳,與此同時,D觸發(fā)器1的ce管腳接收到反相器輸入的高電平,D觸發(fā)器1輸出為比較器 2的高電平,該電平輸入乘法器3為其提供觸發(fā)時鐘;通過對elk的脈沖計(jì)數(shù),當(dāng)計(jì)數(shù)值小于3時將clk_8置為低電平,大于3時置為高電平,而在計(jì)數(shù)器等于7時,計(jì)數(shù)器清零。以此反復(fù)。clk_8是相當(dāng)于將elk的時鐘放大了 8倍來得到的。所述濾波器為基于FPGA的L階LMS濾波器(自適應(yīng)濾波器),該濾波器由L個
6LMS_tap ( 一階濾波單元)和L個加法器構(gòu)成進(jìn)行如下運(yùn)算Wi (η) = ^(η-1)+2μ (n-l)e(n-l)x(n-i+l)Yi (η) = Wi (η) χ (n-i+1)y(n) = Y1 (η) +y2 (η) +y3 (η) —+Yi (η) — +yL (η)其中:L為》1的自然數(shù),1 < i^L,y(n)為濾波器η時刻所計(jì)算的濾波后的參考噪聲信號,Ii (η)為第i個LMS_tap LMS_tapi所計(jì)算的η時刻所計(jì)算的濾波后的參考噪聲信號,Wi(Ii)為LMS_tapi η時刻的濾波權(quán)系數(shù),初始時刻LMS_tapi的濾波權(quán)系數(shù)為0 ;所述L個 LMS_tap 分別為LMS_tapl、LMS_tap2、...、LMS_tap (i_l)、LMS_tapi、LMS_ tap (i+1)、…、LMS_tap (L-I)禾口 LMS_tapL ;所述 LMS_tapl、LMS_tap2、 ...、LMS_tap (i_l)、 LMS_tapi、…、LMS_tap (L-I)和LMS_tapL結(jié)構(gòu)相同且依次連接;所述LMS_tapi由乘法器 4、加法器2、與門、D觸發(fā)器2、D觸發(fā)器3和乘法器5構(gòu)成,所述乘法器4、加法器2、與門、D 觸發(fā)器2和乘法器5依次連接;所述D觸發(fā)器2與加法器2連接;所述LMS_tapi中的乘法器4、乘法器5和D觸發(fā)器3均與LMS_tap (i_l)中的D觸發(fā)器3連接,所述LMS_tap (i+1) 中的乘法器4、乘法器5和D觸發(fā)器3均與LMS_tapi中的D觸發(fā)器3連接;所述L個加法器分別為加法器3-1、加法器3-2、…、加法器3_(i_l)、加法器3_i、 加法器3-(i+l)、…、加法器3-(L-l)和加法器3-L ;該L個加法器依次連接,LMS_tapi中的乘法器5與加法器3-i連接;該L個加法器的初始化值均為0 ;LMS_tapl中的乘法器4與第一寄存器連接,LMS_tapl中的D觸發(fā)器3與第一寄存器連接,LMS_tapl中的乘法器5與第一寄存器連接;L個LMS_tap中的乘法器4均與變步長因子計(jì)算電路中的乘法器3連接,L個LMS_tap中的乘法器4均與減法器連接,加法器3-L 與減法器連接。L個LMS_tap中的D觸發(fā)器2是用來存儲當(dāng)前計(jì)算的濾波權(quán)系數(shù)以計(jì)算后續(xù)時刻的濾波權(quán)系數(shù),本發(fā)明中初始時刻即第1時刻reset輸入與門為0,其他時刻reset輸入與門為1,當(dāng)reset輸入與門為0時,與門輸出0于D觸發(fā)器2中,每個LMS_tap的初始濾波權(quán)系數(shù)為0,當(dāng)reset輸入與門為1時,與門輸出加法器2的計(jì)算結(jié)果濾波權(quán)系數(shù)于D觸發(fā)器 2中;第一寄存器輸出的(η-L+l)時刻參考噪聲信號χ (n_L+l)接入LMS_tapl中的乘法器4中,第一寄存器的輸出x(n-L+l)接入LMS_tapl中的乘法器5中,第一寄存器的輸出 x(n-L+l)接入LMS_tapl中的D觸發(fā)器3中時;變步長因子計(jì)算電路輸出的(n-L)時刻變步長因子μ (n-L)分別接入L個LMS_ tap的乘法器4中,減法器的輸出的(n-L)時刻誤差信號e (n-L)分別接入L個LMS_tap的乘法器4中;LMS_tapl中的乘法器4完成2 μ (n-L) e (n-L) χ (n-L+1)運(yùn)算,該運(yùn)算結(jié)果輸入加法器2中,D觸發(fā)器2中緩存的W1(Ii-L)同時也輸入至加法器2中,在加法器2中完成 (η-L+l)時刻 LMS_tapl 的濾波權(quán)系數(shù) W1 (n-L+1) = W1 (n-L) +2 μ (n-L) e (n-L) χ (n-L+1)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W1 (η-L+l) 運(yùn)算結(jié)果輸入乘法器5中完成yi (η-L+l) = W1 (η-L+l) χ (η-L+l)運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-1中,加法器3-1將yi (η-L+l)的計(jì)算值輸入至加法器3_2中,該加法器3_1的初始值為0 ;輸入至D觸發(fā)器3中的x(n-L+l)經(jīng)延遲輸入LMS_tap2的乘法器4、乘法器5和D 觸發(fā)器3中;
第一寄存器輸出的(n-L+2)時刻參考噪聲信號χ (n_L+2)分別接入LMS_tapl中的乘法器4、乘法器5和D觸發(fā)器3中時,變步長因子計(jì)算電路輸出的(η-L+l)時刻變步長因子μ (η-L+l)分別接入L個 LMS_tap的乘法器4中,減法器的輸出(η-L+l)時刻的誤差信號e (n_L+l)分別接入L個 LMS_tap的乘法器4中;LMS_tapl中的乘法器4完成2 μ (η-L+l) e (η-L+l) χ (n-L+2)運(yùn)算,該運(yùn)算結(jié)果輸入加法器2中,D觸發(fā)器2中緩存的W1 (η-L+l)同時也輸入至加法器2中,在加法器2中完成(n-L+2)時刻 LMS_tapl 的濾波權(quán)系數(shù) W1 (n_L+2) = W1 (η-L+l)+2 μ (η-L+l) e (η-L+l) χ (n-L+2)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將 W1 (n-L+2)運(yùn)算結(jié)果輸入乘法器5中完成yi (n-L+2) = W1 (n-L+2) χ (n-L+2)運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-1中,加法器3-1將該值輸入加法器3-2中;與此同時,LMS_tap2中的乘法器4完成2 μ (η-L+l) e (η-L+l) χ (η-L+l)運(yùn)算,該運(yùn)算結(jié)果輸入加法器2中,D觸發(fā)器2中緩存的W2 (η-L+l)同時也輸入至加法器2中,在加法器2中完成(n-L+2)時刻LMS_tap2的濾波權(quán)系數(shù)w2 (n-L+2) = W2 (η-L+l) +2 μ (η-L+l) e (η-L+l) χ (η-L+l)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W2 (n-L+2)運(yùn)算結(jié)果輸入乘法器5 中完成y2 (n-L+2) =w2 (n-L+2) χ (η-L+l)運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3_2中,在加法器 3-2中完成yi (n-L+2)+y2 (n-L+2)的計(jì)算,該計(jì)算值輸入至加法器3_3中;輸入至LMS_tap2D觸發(fā)器3中的x(n-L+l)經(jīng)延遲輸入LMS_tap3的乘法器4、乘法器5和D觸發(fā)器3中;輸入至LMS_taplD觸發(fā)器3中的x(n-L+2)經(jīng)延遲輸入LMS_tap2的乘法器4、乘法器5和D觸發(fā)器3中;依此類推,第一寄存器的輸出η時刻的參考噪聲信號χ (η)分別接入LMS_tapl中的乘法器4、 乘法器5和D觸發(fā)器3中時,變步長因子計(jì)算電路的輸出(n-1)時刻的變步長因子μ (η-1) 分別接入L個LMS_tap的乘法器4中,減法器的輸出(n_l)時刻的誤差信號e (n_l)分別接入L個LMS_tap的乘法器4中;LMS_tapi中的乘法器4和乘法器5以及D觸發(fā)器3均接收到參考噪聲信號x(n_i+l);LMS_tapl中的乘法器4完成2 μ (n-1) e (η-1) χ (η)運(yùn)算,該運(yùn)算結(jié)果輸入加法器2 中完成W1 (n) =W1 (η-1)+2 μ (n-1) e (η-1) χ (η)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W1 (η)運(yùn)算結(jié)果輸入乘法器5中完成yi (η) = W1 (η) χ (η) 運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-1中,在加法器3-1初始之為0的條件下完成yi(n)+0運(yùn)算后,將運(yùn)算所得結(jié)果輸入加法器3-2 ;LMS_tapi中的乘法器4完成2 μ (n-1) e (η-1) χ (n_i+l)運(yùn)算,該運(yùn)算結(jié)果輸入加法器2中,D觸發(fā)器2中緩存的Wi (n-1)同時也輸入至加法器2中,在加法器2中完成Wi (η) =Wi (η-1)+2 μ (n-l)e(n-l)x(n-i+l)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于 D觸發(fā)器2中,D觸發(fā)器2將&(11)運(yùn)算結(jié)果輸入乘法器5中完成yi (n) = Wi (η) χ (n-i+1) 運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-i中,在加法器3-i中完成yi (η) +y2 (η) +y3 (η)-+y, (η)的運(yùn)算,并將該運(yùn)算結(jié)果輸入至加法器3-(i+1)中;0^_{& 1^中的乘法器4完成2 4 (n-1) e (η-1) χ (η-L+l)運(yùn)算,該運(yùn)算結(jié)果輸入加法器2中,D觸發(fā)器2中緩存的wjn-l)同時也輸入至加法器2中,在加法器2中完成wjn)= wL (n-1) +2 μ (n-l)e(n-l)x (n-L+1)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將& (η)運(yùn)算結(jié)果輸入乘法器5中完成九(n) = wL (η) χ (η-L+l)運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-L中,在加法器3-L中完成y (n) = Yl (η) +y2 (η) +y3 (η)... (η)... +yL(n)的運(yùn)算,并將該運(yùn)算結(jié)果輸入至減法器中;在減法器中完成e(n) = d(n)-y(n)的運(yùn)算,e(n)經(jīng)第三緩存器輸出得到濾波后的車輛振動信號;e(n)輸入至變步長因子計(jì)算電路中按照公式(1)完成μ (η)的計(jì)算;新輸入的(η+1)時刻的含噪振動信號d(n+l)和參考噪聲信號x(n+l)、濾波器中延遲的x(n)至x(n-L)、e(n)和μ (η)按照上述工作流程計(jì)算得到新的濾波后的車輛噪聲振動信號。輸入至濾波器中時,相應(yīng)的濾波器中的LMS_tapl和L個加法器工作;乂2)輸入至濾波器中時,相應(yīng)的濾波器中的LMS_tapl、LMS_tap2和L個加法器工作;xC3)輸入至濾波器中時,相應(yīng)的濾波器中的LMS_tapl、LMS_tap2、LMS_tap3和L個加法器工作;依此類推,χ (L-I)輸入至濾波器中時,相應(yīng)的濾波器中的LMS_tapl至LMS_tap(L-l)和L個加法器工作;實(shí)施例1 本實(shí)施例中L = 3。第1時刻的含噪振動信號d(l)接入第二寄存器,第二寄存器輸出d(l)至減法器,參考噪聲信號X(I)接入第一寄存器,在第一寄存器緩存,第一寄存器輸出X (1)接入濾波器中的LMS_tapl中的乘法器4、乘法器5和D觸發(fā)器3中;LMS_tapl的 reset輸入與門為0,與門輸出0于D觸發(fā)器2中,LMS_tapl的初始濾波權(quán)系數(shù)為0,該存儲于D觸發(fā)器2中;LMS_tapl的D觸發(fā)器3中的χ⑴延遲輸入至LMS_tap2中的乘法器4、乘法器5和D觸發(fā)器3中;此過程中,d(l)和x(l)為裝置的啟動信號;第2時刻的含噪振動信號(1( 接入第二寄存器,第二寄存器輸出(1( 至減法器, 參考噪聲信號χ ( 接入第一寄存器,在第一寄存器緩存,第一寄存器輸出xO)接入濾波器中的LMS_tapl中的乘法器4、乘法器5和D觸發(fā)器3中;LMS_tapl中的乘法器4、乘法器5 和D觸發(fā)器3中,減法器初始輸出的誤差信號e (1) = 0,變步長因子計(jì)算電路初始輸出的 μ (1) = 0, e(l)和μ (1)輸入3個LMS_tap中的乘法器4中;在11^_1即1的乘法器4中完成2 4 (1)Θ(1)Χ(1),該運(yùn)算結(jié)果輸入加法器2中,D觸發(fā)器2中緩存的初始濾波權(quán)系數(shù)同時也輸入至加法器2中,在加法器2中完成2時刻LMS_ 1即1的濾波權(quán)系數(shù)《乂2) =0+2 μ (l)e(l)x(2) = 0運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W1⑵運(yùn)算結(jié)果輸入乘法器5中完成yi⑵= W1 (2) χ (2) = 0運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-1中,在加法器3-1初始值為0的條件下加法器3-1將yi (2)輸入至加法器3-2中;與此同時,LMS_tap2的reset輸入與門為0,與門輸出0于D觸發(fā)器2中,LMS_tap2 的初始濾波權(quán)系數(shù)為0,該存儲于D觸發(fā)器2中;LMS_tap2中的乘法器4完成2 μ (l)e(l) x(l)運(yùn)算,該運(yùn)算結(jié)果輸入加法器2中,D觸發(fā)器2中緩存的初始權(quán)系數(shù)同時也輸入至加法器2中,在加法器2中完成0^_{即2的濾波權(quán)系數(shù) 0) = 0+2 μ (I)e(I)x(I) = 0運(yùn)算, 該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W2⑵運(yùn)算結(jié)果輸入乘法器5中完成y2 O) =W2 (2) x(l) =0運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-2中,在加法器3-2中完成yQ) =Y1 (2)+y2 (2) = 0的計(jì)算,該計(jì)算值輸入至加法器3_3中,加法器3-3將yQ)的值輸入減法器中,在減法其中完成eO) =d(2)-y(2)的計(jì)算;輸入至LMS_tap2D觸發(fā)器3中的χ (1)經(jīng)延遲輸入LMS_tap3的乘法器4、乘法器5 和D觸發(fā)器3中;輸入至LMS_taplD觸發(fā)器1中的經(jīng)延遲輸入LMS_tap2的乘法器4、 乘法器5和D觸發(fā)器3中;第3時刻的含噪振動信號dC3)接入第二寄存器,第二寄存器輸出dC3)至減法器, 參考噪聲信號X C3)接入第一寄存器,在第一寄存器緩存,第一寄存器輸出xC3)接入濾波器中的LMS_tapl中的乘法器4、乘法器5和D觸發(fā)器3中;LMS_tapl中的乘法器4、乘法器5 和D觸發(fā)器3中,e (2)輸入3個LMS_tap中的乘法器4中,e(2)輸入至變步長因子計(jì)算電路中完成μ (2)的計(jì)算,得到的μ (2)值輸入3個LMS_tap中的乘法器4中;在0^_1即1的乘法器4中完成2口 (2) e (2) χ (3),該運(yùn)算結(jié)果輸入加法器2中,D 觸發(fā)器2中緩存的W1 O)同時也輸入至加法器2中,在加法器2中完成2時刻LMS_tapl的濾波權(quán)系數(shù)W1 (3) = W1 (2) +2 μ (2) e (2) χ (3)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W1 (3)運(yùn)算結(jié)果輸入乘法器5中完成yi (3) = W1 (3) χ (3) 運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-1中,在加法器3-1初始值為0的條件下加法器3-1將 Y1 (3)輸入至加法器3-2中;在11^_1即2的乘法器4中完成211 O) e O) χ O),該運(yùn)算結(jié)果輸入加法器2中,D 觸發(fā)器2中緩存的W2 O)同時也輸入至加法器2中,在加法器2中完成2時刻LMS_tapl的濾波權(quán)系數(shù)W2 (3) =W2 (2)+2 μ (2)e(2)x(2)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W2 (3)運(yùn)算結(jié)果輸入乘法器5中完成y2 (3) = W2 (3) χ⑵ 運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-2中,在加法器3-2中完成yi (3) +y2 (3)的運(yùn)算,并將運(yùn)算結(jié)果輸入至加法器3-3中;與此同時,LMS_tap3的reset輸入與門為0,與門輸出0于D觸發(fā)器2中,LMS_tap3 的初始濾波權(quán)系數(shù)為0,該存儲于D觸發(fā)器2中;LMS_tap3中的乘法器4完成2 μ (2) e (2) x(l)運(yùn)算,該運(yùn)算結(jié)果輸入加法器2中,D觸發(fā)器2中緩存的初始濾波權(quán)系數(shù)同時也輸入至加法器2中,在加法器2中完成LMS_tap3的濾波權(quán)系數(shù)W3(3) = 0+2 μ (I)e(I)x(I)運(yùn)算, 該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W3 (3)運(yùn)算結(jié)果輸入乘法器5中完成y3 (3) =W3 (3) x(l)運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3_3中,在加法器 3-3中完成yC3) =Y1 (3)+y2 (3)+y3 (3)的計(jì)算,該計(jì)算值輸入至加法器3_3中,加法器3_3 將7( 的值輸入減法器中,在減法器中完成eC3) =d(3)-y(3)的計(jì)算;eC3)經(jīng)第三寄存器輸出得到濾波后的車輛振動信號;LMS_tap2D觸發(fā)器3中的χ (2)經(jīng)延遲輸入LMS_tap3的乘法器4、乘法器5和D觸發(fā)器3中,信號χ⑵將LMS_tap3中的乘法器4、乘法器5D觸發(fā)器3中的χ⑴信號替換; 輸入至LMS_taplD觸發(fā)器3中的χ (3)經(jīng)延遲輸入LMS_tap2的乘法器4、乘法器5和D觸發(fā)器3中;第4時刻的含噪振動信號d (4)接入第二寄存器,第二寄存器輸出d (4)至減法器, 參考噪聲信號χ (4)接入第一寄存器,在第一寄存器緩存,第一寄存器輸出χ (4)接入濾波器中的LMS_tapl中的乘法器4、乘法器5和D觸發(fā)器3中;LMS_tapl中的乘法器4、乘法器5 和D觸發(fā)器3中,e (3)輸入3個LMS_tap中的乘法器4中,e(3)輸入至變步長因子計(jì)算電路中完成μ (3)的計(jì)算,得到的μ (3)值輸入3個LMS_tap中的乘法器4中;
在LMS_tapl的乘法器4中完成2 μ (3) e (3) χ ,該運(yùn)算結(jié)果輸入加法器2中,D 觸發(fā)器2中緩存的W1 (3)同時也輸入至加法器2中,在加法器2中完成2時刻LMS_tapl的濾波權(quán)系數(shù)W1 (4) = W1 (3) +2 μ (3) e (3) χ (4)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W1 (4)運(yùn)算結(jié)果輸入乘法器5中完成yi (4) = W1 (4) χ (4) 運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-1中,在加法器3-1初始值為0的條件下加法器3-1將 Y1 (4)輸入至加法器3-2中;在0^_1即2的乘法器4中完成211 (3) e (3) χ (3),該運(yùn)算結(jié)果輸入加法器2中,D 觸發(fā)器2中緩存的W2 (3)同時也輸入至加法器2中,在加法器2中完成2時刻LMS_tapl的濾波權(quán)系數(shù)W2 G) =W2 (3)+2 μ (3)e(3)x(3)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將W2 (4)運(yùn)算結(jié)果輸入乘法器5中完成y2 (4) = W2 (4) χ (3) 運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-2中,在加法器3-2中完成yi (4) +y2 (4)的運(yùn)算,并將運(yùn)算結(jié)果輸入至加法器3-3中;在LMS_tap3的乘法器4中完成2 μ (3) e (3) χ (2),該運(yùn)算結(jié)果輸入加法器2中,D觸發(fā)器2中緩存的W3 (3)同時也輸入至加法器2中,在加法器2中完成2時刻LMS_tapl的濾波權(quán)系數(shù)%(4) =W3(3)+2 μ (3)e(3)x(2)運(yùn)算,該運(yùn)算結(jié)果經(jīng)與門輸入至D觸發(fā)器2并存儲于D觸發(fā)器2中,D觸發(fā)器2將%(4)運(yùn)算結(jié)果輸入乘法器5中完成=W3(4)χ(2)運(yùn)算,該運(yùn)算結(jié)果輸入至加法器3-3中,在加法器3-3中完成y (4) = Y1 (4)+y2 (4)+y3 (4)的運(yùn)算,并將運(yùn)算結(jié)果輸入至減法器中;在減法器中完成e(4) = d(4)-y(4)的計(jì)算;e(4)經(jīng)第三寄存器輸出得到濾波后的車輛振動信號。e(4)輸入至變步長因子計(jì)算電路中完成μ (4) 的計(jì)算;新輸入的5時刻的含噪振動信號d 和參考噪聲信號χ(5)、濾波器中延遲的χ(5) 至x(3)、e(4)和μ (4)按照上述工作流程計(jì)算得到新的濾波后的車輛噪聲振動信號。實(shí)施例2 本實(shí)施例中L = 128。本實(shí)施例中的裝置的結(jié)構(gòu)和工作原理與實(shí)施例1中的相同。
1權(quán)利要求
1.一種基于FPGA的車輛振動信號濾波裝置,其特征在于該裝置包括第一寄存器、第二寄存器、第三寄存器、減法器、變步長因子計(jì)算電路和濾波器;參考噪聲信號x(n)接入第一寄存器的輸入端緩存,含噪振動信號d(n)接入第二寄存器的輸入端緩存,第一寄存器的將緩存后的參考噪聲信號x(n)輸出至濾波器的一個輸入端,減法器輸出的誤差信號 e(n-l)分別接入第三寄存器的輸入端、濾波器的第二輸入端和變步長因子計(jì)算電路的輸入端,變步長因子計(jì)算電路的輸出信號變步長因子μ (η-1)接入濾波器的第三輸入端,第二寄存器將緩存后的含噪振動信號d(n)輸入至減法器一個輸入端,濾波器輸出的濾波后的參考噪聲信號y(n)接入減法器的另一輸入端,第三寄存器輸出濾波處理后的車輛振動信號;其中d(n)為η時刻的含噪振動信號,χ (η)為η時刻的參考噪聲信號,e (η_1)為(η_1) 時刻的誤差信號,μ (η-1)為(η-1)時刻濾波器的變步長因子,初始時刻減法器與變步長因子計(jì)算電路的輸出均為0,即e(l) =0, μ (1) = 0;所述變步長因子計(jì)算電路由乘法器1、乘法器2、乘法器3、加法器1、減法器1、除法器1 和分頻器構(gòu)成實(shí)現(xiàn)變步長因子μ (η-1)的計(jì)算; 該μ (η-1)的計(jì)算公式如下μ(η-\) = 0.08(1 -1)IOOxe ( -1) + 1所述分頻器由計(jì)數(shù)器、比較器1、比較器2、反相器和D觸發(fā)器1構(gòu)成,該分頻器對FPGA 平臺時鐘進(jìn)行8分頻后,為除法器1提供觸發(fā)時鐘;所述計(jì)數(shù)器的輸出端與比較器1的輸入端和比較器2的輸入端連接,所述比較器1的輸出端與反相器的輸入端連接,所述反相器的輸出端與D觸發(fā)器1的ce管腳連接,所述比較器2的輸出端與D觸發(fā)器1的d管腳連接, 所述比較器1的輸出端與計(jì)數(shù)器的clr管腳連接,D觸發(fā)器1的輸出端與除法器1連接;所述濾波器為基于FPGA的L階LMS濾波器,該濾波器由L個LMS_tap和L個加法器構(gòu)成完成如下運(yùn)算Wi(Ji) = Wi (η-1)+2 μ (n-1) e (η-1) χ (n-i+1)Yi (η) = Wi (η) χ (n-i+1) y (η) = Y1 (η) +y2 (η) +y3 (η)…+Yi (η)…+yL (η)其中L為> 1的自然數(shù),為濾波器所計(jì)算的η時刻濾波后的參考噪聲信號,Ii (η)為第i個LMS_tap即LMS_tapi所計(jì)算的η時刻濾波后的參考噪聲信號,Wi (η) 為LMS_tapi η時刻的濾波權(quán)系數(shù),初始時刻LMS_tapi的濾波權(quán)系數(shù)為0。
2.如權(quán)利要求1所述的基于FPGA的車輛振動信號濾波裝置,其特征在于,所述濾波器中的LMS_tap個數(shù)或加法器個數(shù)L = 128。
全文摘要
本發(fā)明公開了一種基于FPGA的車輛振動信號濾波裝置。該裝置中參考噪聲信號x(n)接入第一寄存器的輸入端,含噪振動信號d(n)接入第二寄存器的輸入端,第一寄存器的輸出信號x(n)接入濾波器的一個輸入端,減法器輸出的誤差信號e(n-1)分別接入第三寄存器的輸入端、濾波器的第二輸入端和變步長因子計(jì)算電路的輸入端,變步長因子計(jì)算電路的輸出信號變步長因子μ(n-1)接入濾波器的第三輸入端,第二寄存器的輸出信號d(n)接入減法器一個輸入端,濾波器輸出的濾波后的參考噪聲信號y(n)接入減法器的另一輸入端,第三寄存器輸出濾波處理后的車輛振動信號。裝置所依據(jù)的算法具有計(jì)算速度快、收斂速度快、實(shí)時性高、濾波效果好等優(yōu)點(diǎn),可以滿足信號實(shí)時處理的需求。
文檔編號H03H17/02GK102394591SQ20111025900
公開日2012年3月28日 申請日期2011年9月2日 優(yōu)先權(quán)日2011年9月2日
發(fā)明者余騰, 劉占文, 史昕, 惠飛, 楊瀾, 趙祥模, 雷濤 申請人:長安大學(xué)