專利名稱:數(shù)字濾波方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字信號(hào)處理技術(shù)領(lǐng)域,具體而言,涉及ー種數(shù)字濾波方法和裝置。
背景技術(shù):
在目前的數(shù)字信號(hào)處理系統(tǒng)中,數(shù)字濾波器被廣泛地應(yīng)用于干擾的濾除、有用信號(hào)的提取、信號(hào)的整形等各方面。數(shù)字濾波器根據(jù)其沖激響應(yīng)函數(shù)的時(shí)域特性,可分為兩種,即無限長沖激響應(yīng)(IIR)濾波器和有限長沖激響應(yīng)(FIR)濾波器。FIR濾波器的單位沖激響應(yīng)只能持續(xù)一段時(shí)間,它由于可以很方便地實(shí)現(xiàn)線性相位特性和容易實(shí)現(xiàn)而在工程上得到廣泛應(yīng)用。FIR數(shù)字濾波器通過乘累加運(yùn)算來實(shí)現(xiàn),輸入信號(hào)X (η)經(jīng)過FIR濾波器過程是一
個(gè)輸入信號(hào)與単位脈沖響應(yīng)進(jìn)行線性卷積的過程,即—為濾
波器的輸出,h(i)為濾波器的單脈沖響應(yīng),L-I為濾波器的階數(shù)。從表達(dá)式可以看出,毎次輸出y (η)需要進(jìn)行L次乘法和L-I次加法操作實(shí)現(xiàn)。傳統(tǒng)的乘累加器結(jié)構(gòu)需要使用L個(gè)乘法器和L-I個(gè)加法器,而且隨著濾波器的階數(shù)越大,需要的乘法器和加法器越多,占用的硬件資源也就越大。對(duì)于ー些特殊的應(yīng)用場(chǎng)合,例如超高頻無源射頻識(shí)別閱讀器的前向波形成形濾波,其輸入波形為矩形波或者階梯波,為了達(dá)到較好的濾波效果需要使用高階的FIR濾波器,如果采用傳統(tǒng)的乘累加結(jié)構(gòu),會(huì)占用大量的硬件資源,増加設(shè)備的成本。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供ー種數(shù)字濾波方法和裝置,以至少解決當(dāng)輸入波形為矩形波或者階梯波吋,能夠解決現(xiàn)有技術(shù)中FIR濾波器需要大量乘法器和加法器的問題,達(dá)到了降低硬件資源使用、提高系統(tǒng)運(yùn)行效率的效果。根據(jù)本發(fā)明的ー個(gè)方面,提供了ー種數(shù)字濾波方法,包括對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào);從預(yù)先存儲(chǔ)的單位階躍響應(yīng)表中輸出單位階躍響應(yīng);將階躍信號(hào)的幅度和単位階躍響應(yīng)相乘得到階躍響應(yīng);對(duì)所有的階躍響應(yīng)求和得到對(duì)輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果。對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào)的步驟包括在輸入信號(hào)發(fā)生沿跳變時(shí)提取出階躍信號(hào)。在對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào)之前,數(shù)字濾波方法還包括計(jì)算FIR濾波器的単位階躍響應(yīng),將單位階躍響應(yīng)數(shù)據(jù)存儲(chǔ)在單位階躍響應(yīng)表中。從預(yù)先存儲(chǔ)的單位階躍響應(yīng)表中輸出單位階躍響應(yīng)并將所述階躍信號(hào)的幅度和所述單位階躍響應(yīng)相乘得到階躍響應(yīng)的步驟包括當(dāng)階躍響應(yīng)模塊檢測(cè)到有階躍信號(hào)吋,對(duì)緩存器進(jìn)行刷新,將階躍響應(yīng)模塊當(dāng)前的輸出結(jié)果反饋到緩存器,并保存在緩存器中作為基準(zhǔn)信號(hào);從所述單位階躍響應(yīng)表中獲取所述單位階躍響應(yīng),并將所述階躍信號(hào)的幅度和単位階躍響應(yīng)輸入到乘法器進(jìn)行相乘操作;將乘法器的輸出結(jié)果和基準(zhǔn)信號(hào)分別輸入到加法器進(jìn)行求和操作,并將求和的結(jié)果作為階躍響應(yīng)模塊的輸出結(jié)果。如果輸入信號(hào)變化的最小間隔時(shí)間大于FIR濾波器的階躍響應(yīng)時(shí)間長度,則設(shè)置ー個(gè)階躍響應(yīng)模塊;如果輸入信號(hào)變化的最小間隔時(shí)間小于FIR濾波器的階躍響應(yīng)時(shí)間長度,則設(shè)置多個(gè)階躍響應(yīng)模塊,階躍信號(hào)依次分配給多個(gè)階躍響應(yīng)模塊,其中,每個(gè)階躍響應(yīng)模塊輸出各自的輸出結(jié)果,然后再對(duì)所有階躍響應(yīng)模塊的輸出結(jié)果進(jìn)行求和。對(duì)所有的階躍響應(yīng)求和得到對(duì)輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果的步驟還包括若采用ニ進(jìn)制補(bǔ)碼運(yùn)算或者輸出結(jié)果的范圍滿足輸入信號(hào)與響應(yīng)數(shù)據(jù)乘積的最大值和最小值,則對(duì)出現(xiàn)溢出的輸出結(jié)果不做處理。根據(jù)本發(fā)明的另一方面,提供了ー種數(shù)字濾波裝置,包括沿提取單元,用于對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào);查表單元,用于從預(yù)先存儲(chǔ)的単位階躍響應(yīng)表中輸出單位階躍響應(yīng);處理單元,用于將階躍信號(hào)的幅度和単位階躍響應(yīng)相乘得到階躍響應(yīng),并對(duì)所有的階躍響應(yīng)求和得到對(duì)輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果。
數(shù)字濾波裝置還包括計(jì)算單元,用于計(jì)算FIR濾波器的單位階躍響應(yīng);存儲(chǔ)單元,用于將FIR濾波器的單位階躍響應(yīng)數(shù)據(jù)存儲(chǔ)在所述單位階躍響應(yīng)表中。處理單元包括緩存器,用于當(dāng)檢測(cè)到有階躍信號(hào)時(shí)將處理單元當(dāng)前的輸出結(jié)果反饋到緩存器,并保存在緩存器中作為基準(zhǔn)信號(hào);乘法器,用于階躍信號(hào)的幅度和単位階躍響應(yīng)進(jìn)行相乘操作;第一加法器,用于對(duì)乘法器輸出的輸出結(jié)果和緩存器輸出的基準(zhǔn)信號(hào)進(jìn)行求和操作,并將求和的結(jié)果作為處理模塊的輸出結(jié)果。如果輸入信號(hào)變化的最小間隔時(shí)間小于FIR濾波器的階躍響應(yīng)時(shí)間長度,則設(shè)置多個(gè)處理模塊,階躍信號(hào)依次分配給多個(gè)處理模塊,其中,裝置還包括第二加法器,用于對(duì)每個(gè)處理模塊輸出的輸出結(jié)果進(jìn)行求和。本發(fā)明中,通過提取階躍信號(hào),查表輸出階躍響應(yīng),并對(duì)階躍響應(yīng)進(jìn)行疊加的方法,實(shí)現(xiàn)了高效的FIR濾波計(jì)算,這種方式對(duì)應(yīng)的硬件結(jié)構(gòu)簡單、占用硬件資源非常少,能夠解決現(xiàn)有技術(shù)中FIR濾波器需要大量乘法器和加法器的問題,達(dá)到了降低資源使用、提高系統(tǒng)運(yùn)行效率的效果。
此處所說明的附圖用來提供對(duì)本發(fā)明的進(jìn)ー步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中圖I是根據(jù)本發(fā)明實(shí)施例的數(shù)字FIR濾波器的結(jié)構(gòu)示意圖;圖2是根據(jù)本發(fā)明實(shí)施例的階躍響應(yīng)模塊的示意圖;圖3是根據(jù)本發(fā)明實(shí)施例的數(shù)字濾波方法的一種優(yōu)選的流程圖;圖4是根據(jù)本發(fā)明實(shí)施例的649階FIR低通濾波器的單脈沖響應(yīng)曲線;圖5是根據(jù)本發(fā)明實(shí)施例的FIR濾波器的單位階躍響應(yīng)曲線的示意圖;圖6是根據(jù)本發(fā)明實(shí)施例的ー個(gè)輸入臺(tái)階信號(hào)波形的示意圖;圖7是根據(jù)本發(fā)明實(shí)施例的經(jīng)過沿提取模塊后的各路階躍信號(hào)的示意圖;圖8是根據(jù)本發(fā)明實(shí)施例的經(jīng)過階躍響應(yīng)模塊的10路階躍響應(yīng);圖9是根據(jù)本發(fā)明實(shí)施例的3路階躍響應(yīng)模塊的輸出波形;
圖10是根據(jù)本發(fā)明實(shí)施例的輸出波形;圖11是根據(jù)本發(fā)明實(shí)施例的仿真波形;圖12是根據(jù)本發(fā)明實(shí)施例的數(shù)字濾波裝置的結(jié)構(gòu)圖。
具體實(shí)施例方式實(shí)施例I単位階躍信號(hào)u (η)通過FIR濾波器系統(tǒng)產(chǎn)生的沖激響應(yīng)是單位階躍響應(yīng)s (η),
其表達(dá)式為咖)=Σ沖+)< _〗),其中h(i)為FIR濾波器的單脈沖響應(yīng)。當(dāng)輸入信號(hào)x(n)
i=0 是矩形波或者階梯波時(shí),其時(shí)域波形變化緩慢,大部分時(shí)間保持恒定電平,我們可以根據(jù)輸入信號(hào)的跳變沿(例如在 tk共k個(gè)時(shí)刻產(chǎn)生跳變,k > I)將輸入信號(hào)分解為多個(gè)階
N-I
躍信號(hào)之和バ㈨=Σ//(/>( -O。其中Ak是tk時(shí)刻發(fā)生階躍信號(hào)的幅度。由于FIR濾波器
i=0
是線性時(shí)不變系統(tǒng),根據(jù)疊加定理
L-IL-IL-Iy(n)=刃沖)x( - O = Σ 沖)Σ べ咖 _ z._ な)=Σ ふ Σ 沖 -i-tk) = ^Aks(n-tk)
i=0 i=0 k k i=0 k從上述公式可以看出,各個(gè)階躍信號(hào)分量単獨(dú)作用于濾波器的階躍響應(yīng)之和即為該輸入信號(hào)x(n)在濾波器下的沖激響應(yīng)。為達(dá)到上述目的,本實(shí)施例提供了ー種數(shù)字FIR濾波器,如圖I所示,該數(shù)字FIR濾波器包括沿提取模塊101、分配器102、階躍響應(yīng)池103、第O路階躍響應(yīng)模塊104、第I路階躍響應(yīng)模塊105、第2路階躍響應(yīng)模塊106、第N-I路階躍響應(yīng)模塊107以及加法器108。圖2是根據(jù)本發(fā)明實(shí)施例的階躍響應(yīng)模塊的示意圖,其包括檢測(cè)單元201、指針計(jì)數(shù)器202、FIR濾波器的單位階躍響應(yīng)表203、乘法器204、緩存器205以及加法器206。圖I和圖2中的各個(gè)部件可以通過查階躍響應(yīng)表的方法實(shí)現(xiàn)FIR數(shù)字濾波器,當(dāng)輸入信號(hào)為矩形波或階梯波吋,能夠解決現(xiàn)有技術(shù)中FIR濾波器需要大量乘法器和加法器的問題,達(dá)到了降低硬件資源使用、提高系統(tǒng)運(yùn)行效率的效果。下面結(jié)合附圖來詳細(xì)描述具體的濾波過程。如圖I和圖2所示,本實(shí)施例的濾波方法包括以下步驟步驟SI :計(jì)算FIR濾波器的単位階躍響應(yīng),將單位階躍響應(yīng)數(shù)據(jù)存儲(chǔ)在一張表中。步驟S2 :輸入信號(hào)x(n)經(jīng)過沿提取模塊101進(jìn)行沿提取,在發(fā)生沿跳變的時(shí)刻提取出階躍信號(hào)。步驟S3 :階躍信號(hào)經(jīng)過分配器102按順序依次分配給階躍響應(yīng)池103中的N路階躍響應(yīng)模塊。N的取值不小于輸入信號(hào)在単位階躍響應(yīng)長度內(nèi)發(fā)生的最大的變化次數(shù)。階躍響應(yīng)池103由第O路階躍響應(yīng)模塊104、第I路階躍響應(yīng)模塊105、第2路階躍響應(yīng)模塊106. ...和第N-I路階躍響應(yīng)模塊107共N路階躍響應(yīng)模塊組成,N路階躍響應(yīng)模塊輸出的結(jié)果分別是Stl S1 S2. ...SN_10每個(gè)階躍響應(yīng)模塊的內(nèi)部處理過程如圖2所示經(jīng)分配后的階躍信號(hào)送入檢測(cè)單元201進(jìn)行檢測(cè),檢測(cè)單元輸出三組信號(hào)觸發(fā)信號(hào)、啟動(dòng)信號(hào)和階躍信號(hào)的幅度。當(dāng)檢測(cè)到有階躍信號(hào)吋,檢測(cè)單元201輸出觸發(fā)信號(hào)對(duì)緩存器205進(jìn)行刷新,將當(dāng)前模塊輸出結(jié)果通過緩存器保存下來作為輸出基準(zhǔn);與此同時(shí),啟動(dòng)信號(hào)啟動(dòng)指針計(jì)數(shù)器202進(jìn)行查表,通過指針依次取出單位階躍響應(yīng)表203中的數(shù)據(jù);取表數(shù)據(jù)和階躍信號(hào)的幅度輸入到乘法器204相乘;乘法器的輸出和基準(zhǔn)信號(hào)分別輸入到加法器206,其相加結(jié)果作為該階躍響應(yīng)模塊的輸出。步驟S4 :階躍響應(yīng)池103輸出的N路階躍響應(yīng)信號(hào)Stl S1 S2. . . . Sn^1輸入給加法器108進(jìn)行相加求和,其求和結(jié)果為該FIR濾波器的輸出。在每個(gè)階躍響應(yīng)模塊中,由于存在加法器206,因此可能會(huì)遇到加法器206輸出結(jié)果溢出的情況,例如連續(xù)兩個(gè)上升沿的正階躍信號(hào)相加,結(jié)果溢出出現(xiàn)負(fù)數(shù)。出現(xiàn)這種情況時(shí)可以通過擴(kuò)展有效數(shù)據(jù)位數(shù)防止溢出;或者可以在滿足下面2個(gè)條件時(shí)對(duì)溢出結(jié)果不做處理1)采用ニ進(jìn)制補(bǔ)碼運(yùn)算;2)保證最后的加法器108的輸出范圍能夠滿足輸入信號(hào)X(η)和單位階躍響應(yīng)乘積的最大值和最小值。實(shí)施例2
基于圖I和圖2所示的濾波裝置,本發(fā)明還提供了一種優(yōu)選的數(shù)字濾波方法,如圖3所示,其包括如下步驟S302,對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào);S304,從預(yù)先存儲(chǔ)的單位階躍響應(yīng)表中輸出單位階躍響應(yīng);S306,將階躍信號(hào)的幅度和単位階躍響應(yīng)相乘得到階躍響應(yīng);S308,對(duì)所有的階躍響應(yīng)求和得到對(duì)輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果。在本優(yōu)選的實(shí)施例中,通過提取階躍信號(hào),查表輸出階躍響應(yīng),并對(duì)階躍響應(yīng)進(jìn)行疊加的方法,實(shí)現(xiàn)了高效的FIR濾波計(jì)算,這種方式對(duì)應(yīng)的硬件結(jié)構(gòu)簡單、占用硬件資源非常少,能夠解決現(xiàn)有技術(shù)中FIR濾波器需要大量乘法器和加法器的問題,達(dá)到了降低資源使用、提高系統(tǒng)運(yùn)行效率的效果。對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào)的步驟包括在輸入信號(hào)發(fā)生沿跳變時(shí)提取出階躍信號(hào)。在本實(shí)施例中,通過輸入信號(hào)的沿跳變可以準(zhǔn)確地提取出階躍信號(hào)。在對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào)之前,數(shù)字濾波方法還包括計(jì)算FIR濾波器的單位階躍響應(yīng);將單位階躍響應(yīng)數(shù)據(jù)存儲(chǔ)在單位階躍響應(yīng)表中。通過這種查表的方式,可以快速地得到FIR濾波器的單位階躍響應(yīng),提高了系統(tǒng)的運(yùn)算速度。從預(yù)先存儲(chǔ)的單位階躍響應(yīng)表中輸出單位階躍響應(yīng)并將所述階躍信號(hào)的幅度和所述單位階躍響應(yīng)相乘得到階躍響應(yīng)的步驟包括當(dāng)階躍響應(yīng)模塊檢測(cè)到有階躍信號(hào)吋,對(duì)緩存器進(jìn)行刷新,將階躍響應(yīng)模塊當(dāng)前的輸出結(jié)果反饋到緩存器,并保存在緩存器中作為基準(zhǔn)信號(hào);從所述單位階躍響應(yīng)表中獲取所述單位階躍響應(yīng),并將所述階躍信號(hào)的幅度和単位階躍響應(yīng)輸入到乘法器進(jìn)行相乘操作;將乘法器的輸出結(jié)果和基準(zhǔn)信號(hào)分別輸入到加法器進(jìn)行求和操作,并將求和的結(jié)果作為階躍響應(yīng)模塊的輸出結(jié)果。在本實(shí)施例中,通過對(duì)當(dāng)前的輸出結(jié)果進(jìn)行累積相加,可以實(shí)現(xiàn)只通過較少的加法器和乘法器既可得到對(duì)所述輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果,從而大大筒化了硬件結(jié)構(gòu),降低了系統(tǒng)的復(fù)雜度和成本。如果輸入信號(hào)變化的最小間隔時(shí)間大于FIR濾波器的階躍響應(yīng)時(shí)間長度,則設(shè)置ー個(gè)階躍響應(yīng)模塊;如果輸入信號(hào)變化的最小間隔時(shí)間小于FIR濾波器的階躍響應(yīng)時(shí)間長度,則設(shè)置多個(gè)階躍響應(yīng)模塊,階躍信號(hào)依次分配給多個(gè)階躍響應(yīng)模塊,其中,每個(gè)階躍響應(yīng)模塊輸出各自的輸出結(jié)果,然后再對(duì)所有階躍響應(yīng)模塊的輸出結(jié)果進(jìn)行求和。在本實(shí)施例中,通過對(duì)不同的輸入信號(hào)來設(shè)置不同的處理模塊,増加了本發(fā)明的適用性。對(duì)所有的階躍響應(yīng)求和得到對(duì)輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果的步驟還包括若采用ニ進(jìn)制補(bǔ)碼運(yùn)算或者輸出結(jié)果的范圍滿足輸入信號(hào)與響應(yīng)數(shù)據(jù)乘積的最大值和最小值,則對(duì)出現(xiàn)溢出的輸出結(jié)果不做處理。實(shí)施例3下面結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明的兩個(gè)實(shí)施例再作進(jìn)ー步詳細(xì)的說明第一個(gè)實(shí)施例為設(shè)計(jì)ー個(gè)649階的低通FIR濾波器,圖4是該FIR濾波器的單脈沖響應(yīng)曲線,圖5是該FIR濾波器的單位階躍響應(yīng),圖6是輸入信號(hào),其波形為臺(tái)階波,在濾波器的単位階躍響應(yīng)長度內(nèi)發(fā)生的最大變化次數(shù)為3,N不小于3,優(yōu)選的,N在本實(shí)例中取 值為3,階躍響應(yīng)池有3個(gè)階躍響應(yīng)模塊。SI :計(jì)算649階低通FIR濾波器的單位階躍響應(yīng),將單位階躍響應(yīng)數(shù)據(jù)存儲(chǔ)在ー張表中。圖5是該濾波器的單位階躍響應(yīng)曲線。S2 :在沿提取模塊中對(duì)輸入信號(hào)進(jìn)行沿提取,得到多路的階躍信號(hào)。圖7中,第O路信號(hào)是輸入信號(hào),第I 10路信號(hào)分別是沿提取后輸出的各路階躍信號(hào)。S3 :在分配器模塊中對(duì)階躍信號(hào)進(jìn)行計(jì)數(shù),根據(jù)計(jì)數(shù)結(jié)果按順序依次分配給階躍相應(yīng)池中的3個(gè)階躍響應(yīng)模塊其中階躍信號(hào)(1,4,7,10)通過第O路階躍響應(yīng)模塊,階躍信號(hào)(2,5,8)通過第I路階躍響應(yīng)模塊,階躍信號(hào)(3,6,9)通過第2路階躍響應(yīng)模塊。S4 :在每個(gè)階躍響應(yīng)模塊中,階躍信號(hào)送入檢測(cè)單元檢測(cè),當(dāng)檢測(cè)到階躍信號(hào)吋,將當(dāng)前模塊輸出結(jié)果通過緩存器保存下來作為輸出基準(zhǔn);同時(shí)啟動(dòng)指針計(jì)數(shù)器進(jìn)行查表,查表輸出數(shù)據(jù)和階躍信號(hào)的幅度相乘,相乘結(jié)果和輸出基準(zhǔn)相加為該路階躍響應(yīng)模塊的輸出。圖8中仿真了圖6中10路階躍信號(hào)的階躍響應(yīng)。第O路是輸入信號(hào),第I 10路是各個(gè)階躍信號(hào)的階躍響應(yīng)。圖9中的Stl, S1和S2信號(hào)分別是階躍響應(yīng)池中三個(gè)階躍模塊輸出。S5 :階躍響應(yīng)池輸出的階躍響應(yīng)信號(hào)Stl. S1, S2輸入給加法器進(jìn)行相加,其相加結(jié)果為該FIR濾波器的輸出,圖10是經(jīng)過加法器后的波形,也是本發(fā)明第一實(shí)例的輸出波形。上述的實(shí)例需要3個(gè)乘法器和4個(gè)加法器實(shí)現(xiàn),如果采用乘累加結(jié)構(gòu)實(shí)現(xiàn)的FIR數(shù)字濾波器,需要使用650個(gè)乘法器和649個(gè)加法器,即使由于FIR濾波器具有對(duì)稱結(jié)構(gòu),可使得乘法器數(shù)量減半,也至少需要325個(gè)乘法器和649個(gè)加法器。第二個(gè)實(shí)施例是為了說明當(dāng)階躍響應(yīng)模塊滿足2個(gè)條件時(shí),可對(duì)結(jié)果溢出不處理。該實(shí)施例米用的是623階FIR低通濾波器。如圖11的第一路波形所不,輸入信號(hào)為ー組矩形波,在濾波器的単位階躍響應(yīng)長度內(nèi)發(fā)生的最大變化次數(shù)為1,設(shè)計(jì)吋,N取值為2,階躍響應(yīng)池有兩個(gè)階躍響應(yīng)模塊。輸入信號(hào)經(jīng)過沿提取模塊的提取,上升沿的正階躍信號(hào)都分配給第O路階躍響應(yīng)模塊,下降沿的負(fù)階躍信號(hào)分配給第I路階躍響應(yīng)模塊。圖11中的第二路和第三路分別是兩個(gè)模塊的輸出波形,在第O路中,由于處理的都是上升沿的正階躍信號(hào),輸出響應(yīng)向上疊カロ,導(dǎo)致輸出數(shù)據(jù)在沿1001處溢出,變成負(fù)數(shù)。同理,第I路處理的都是下降沿的負(fù)階躍信號(hào),輸出數(shù)據(jù)在沿1002中溢出,變成正數(shù)。由于該濾波器設(shè)計(jì)時(shí)滿足了兩個(gè)條件采用ニ進(jìn)制補(bǔ)碼運(yùn)算和最后的109加法器的輸出范圍能夠滿足輸入信號(hào)和單位階躍響應(yīng)乘積的最大值和最小值,因此不處理兩路階躍響應(yīng)模塊的溢出數(shù)據(jù)。圖11中的第四路為該FIR濾波器輸出結(jié)果,該結(jié)果和傳統(tǒng)方法乘累加和結(jié)構(gòu)輸出的結(jié)果一致。從兩個(gè)實(shí)例及其仿真結(jié)果可以看出,當(dāng)輸入波形為階梯波或者矩形波時(shí),采用本發(fā)明的方法能夠解決現(xiàn)有技術(shù)中FIR濾波器需要大量乘法器和加法器的問題,達(dá)到了降低資源使用、提高系統(tǒng)運(yùn)行效率的效果。實(shí)施例4圖12是根據(jù)本發(fā)明實(shí)施例的數(shù)字濾波裝置的結(jié)構(gòu)圖,其包括沿提取單元1202,用于對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào);查找單元1204,與沿提取 單元1202和存儲(chǔ)單元1210連接,用于從預(yù)先存儲(chǔ)的單位階躍響應(yīng)表中輸出單位階躍響應(yīng);處理單元1206,與查找單元1204連接,用于將所述階躍信號(hào)的幅度和単位階躍響應(yīng)相乘得到階躍響應(yīng),并對(duì)所有的階躍響應(yīng)求和得到對(duì)所述輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果。在本實(shí)施例中,通過查找的方式來得到與階躍信號(hào)的對(duì)應(yīng)的響應(yīng)數(shù)據(jù),使得能夠快速地進(jìn)行濾波計(jì)算,這種方式對(duì)應(yīng)的硬件結(jié)構(gòu)簡單、占用硬件資源非常少,能夠解決現(xiàn)有技術(shù)中FIR濾波器需要大量乘法器和加法器的問題,達(dá)到了降低資源使用、提高系統(tǒng)運(yùn)行效率的效果。在對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào)的步驟中,沿提取單元1202在輸入信號(hào)發(fā)生沿跳變時(shí)提取出階躍信號(hào)。在本實(shí)施例中,通過輸入信號(hào)的沿跳變可以準(zhǔn)確地提取出階躍信號(hào)。數(shù)字濾波裝置還包括計(jì)算單元1208,用于計(jì)算FIR濾波器的單位階躍響應(yīng);存儲(chǔ)単元1210,與計(jì)算單元1208連接,用于將FIR濾波器的單位階躍響應(yīng)數(shù)據(jù)存儲(chǔ)在所述單位階躍響應(yīng)表中。通過這種查表的方式,可以快速地得到FIR濾波器的単位階躍響應(yīng),提高了系統(tǒng)的運(yùn)算速度。處理單元1206包括緩存器,用于當(dāng)檢測(cè)到有階躍信號(hào)時(shí)將處理單元當(dāng)前的輸出結(jié)果反饋到緩存器,并保存在緩存器中作為基準(zhǔn)信號(hào);乘法器,用于對(duì)階躍信號(hào)的幅度和所述單位階躍響應(yīng)進(jìn)行相乘操作;第一加法器,用于對(duì)乘法器輸出的輸出結(jié)果和緩存器輸出的基準(zhǔn)信號(hào)進(jìn)行求和操作,并將求和的結(jié)果作為處理模塊的輸出結(jié)果。上述緩存器、乘法器以及第一加法器的連接結(jié)構(gòu)可以參考圖2所示的結(jié)構(gòu)。在本實(shí)施例中,通過對(duì)當(dāng)前的輸出結(jié)果進(jìn)行累積相加,可以實(shí)現(xiàn)只通過較少的加法器和乘法器既可得到對(duì)所述輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果,從而大大筒化了硬件結(jié)構(gòu),降低了系統(tǒng)的復(fù)雜度和成本。如果輸入信號(hào)變化的最小間隔時(shí)間小于FIR濾波器的階躍響應(yīng)時(shí)間長度,則設(shè)置多個(gè)處理模塊,階躍信號(hào)依次分配給多個(gè)處理模塊,其中,數(shù)字濾波裝置還包括第二加法器1212,與處理單元1206連接,用于對(duì)每個(gè)處理模塊輸出的輸出結(jié)果進(jìn)行求和。在本實(shí)施例中,通過對(duì)不同的輸入信號(hào)來設(shè)置不同的處理模塊,増加了本發(fā)明的適用性。在對(duì)所有的階躍響應(yīng)求和得到對(duì)輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果的步驟中,若采用ニ進(jìn)制補(bǔ)碼運(yùn)算或者輸出結(jié)果的范圍滿足輸入信號(hào)與響應(yīng)數(shù)據(jù)乘積的最大值和最小值,則處理單元1206對(duì)出現(xiàn)溢出的輸出結(jié)果不做處理。
顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技 術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種數(shù)字濾波方法,其特征在于,包括 對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào); 從預(yù)先存儲(chǔ)的單位階躍響應(yīng)表中讀取單位階躍響應(yīng); 將所述階躍信號(hào)的幅度和所述單位階躍響應(yīng)相乘得到階躍響應(yīng); 對(duì)所有的階躍響應(yīng)求和得到對(duì)所述輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào)的步驟包括 在所述輸入信號(hào)發(fā)生沿跳變時(shí)提取出所述階躍信號(hào)。
3.根據(jù)權(quán)利要求I所述的方法,其特征在于,在對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào)之前,還包括 計(jì)算FIR濾波器的單位階躍響應(yīng); 將所述單位階躍響應(yīng)數(shù)據(jù)存儲(chǔ)在所述單位階躍響應(yīng)表中。
4.根據(jù)權(quán)利要求I所述的方法,其特征在于,從預(yù)先存儲(chǔ)的單位階躍響應(yīng)表中輸出單位階躍響應(yīng)并將所述階躍信號(hào)的幅度和所述單位階躍響應(yīng)相乘得到階躍響應(yīng)的步驟包括 當(dāng)階躍響應(yīng)模塊檢測(cè)到有所述階躍信號(hào)時(shí),對(duì)緩存器進(jìn)行刷新,將所述階躍響應(yīng)模塊當(dāng)前的輸出結(jié)果反饋到所述緩存器,并保存在所述緩存器中作為基準(zhǔn)信號(hào); 從所述單位階躍響應(yīng)表中獲取所述單位階躍響應(yīng),并將所述階躍信號(hào)的幅度和單位階躍響應(yīng)輸入到乘法器進(jìn)行相乘操作; 將所述乘法器的輸出結(jié)果和所述基準(zhǔn)信號(hào)分別輸入到加法器進(jìn)行求和操作,并將求和的結(jié)果作為所述階躍響應(yīng)模塊的輸出結(jié)果。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,如果所述輸入信號(hào)變化的最小間隔時(shí)間大于FIR濾波器的階躍響應(yīng)時(shí)間長度,則設(shè)置一個(gè)所述階躍響應(yīng)模塊;如果所述輸入信號(hào)變化的最小間隔時(shí)間小于FIR濾波器的階躍響應(yīng)時(shí)間長度,則設(shè)置多個(gè)所述階躍響應(yīng)模塊,所述階躍信號(hào)依次分配給所述多個(gè)階躍響應(yīng)模塊,其中,每個(gè)所述階躍響應(yīng)模塊輸出各自的輸出結(jié)果,然后再對(duì)所有所述階躍響應(yīng)模塊的輸出結(jié)果進(jìn)行求和。
6.根據(jù)權(quán)利要求I至5中任一項(xiàng)所述的方法,其特征在于,對(duì)所有的階躍響應(yīng)求和得到對(duì)所述輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果的步驟還包括 若采用二進(jìn)制補(bǔ)碼運(yùn)算或者所述輸出結(jié)果的范圍滿足輸入信號(hào)與響應(yīng)數(shù)據(jù)乘積的最大值和最小值,則對(duì)出現(xiàn)溢出的輸出結(jié)果不做處理。
7.一種數(shù)字濾波裝置,其特征在于,包括 沿提取單元,用于對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào); 查表單元,用于從預(yù)先存儲(chǔ)的單位階躍響應(yīng)表中輸出單位階躍響應(yīng); 處理單元,用于將所述階躍信號(hào)的幅度和單位階躍響應(yīng)相乘得到階躍響應(yīng),并對(duì)所有的階躍響應(yīng)求和得到對(duì)所述輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括 計(jì)算單元,用于計(jì)算FIR濾波器的單位階躍響應(yīng); 存儲(chǔ)單元,用于將FIR濾波器的單位階躍響應(yīng)數(shù)據(jù)存儲(chǔ)在所述單位階躍響應(yīng)表中。
9.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述處理單元包括緩存器,用于當(dāng)檢測(cè)到有所述階躍信號(hào)時(shí)將所述處理單元當(dāng)前的輸出結(jié)果反饋到所述緩存器,并保存在所述緩存器中作為基準(zhǔn)信號(hào); 乘法器,用于對(duì)所述階躍信號(hào)的幅度和所述單位階躍響應(yīng)進(jìn)行相乘操作; 第一加法器,用于對(duì)所述乘法器輸出的輸出結(jié)果和所述緩存器輸出的所述基準(zhǔn)信號(hào)進(jìn)行求和操作,并將求和的結(jié)果作為所述處理模塊的輸出結(jié)果。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,如果所述輸入信號(hào)變化的最小間隔時(shí)間小于FIR濾波器的階躍響應(yīng)時(shí)間長度,則設(shè)置多個(gè)所述處理模塊,所述階躍信號(hào)依次分配給所述多個(gè)處理模塊,其中,所述裝置還包括第二加法器,用于對(duì)每個(gè)所述處理模塊輸出的輸出結(jié)果進(jìn)行求和。
全文摘要
本發(fā)明提供了一種數(shù)字濾波方法和裝置,其中,該方法包括對(duì)需要進(jìn)行FIR濾波的輸入信號(hào)進(jìn)行沿提取得到階躍信號(hào);從預(yù)先存儲(chǔ)的單位階躍響應(yīng)表中讀取單位階躍響應(yīng);將階躍信號(hào)的幅度和單位階躍響應(yīng)相乘得到階躍響應(yīng);對(duì)所有的階躍響應(yīng)求和得到對(duì)輸入信號(hào)進(jìn)行FIR濾波的濾波結(jié)果。本發(fā)明解決了現(xiàn)有技術(shù)中FIR濾波器需要大量乘法器和加法器的問題,達(dá)到了降低硬件資源使用、提高系統(tǒng)運(yùn)行效率的效果。
文檔編號(hào)H03H17/02GK102811036SQ20111014561
公開日2012年12月5日 申請(qǐng)日期2011年5月31日 優(yōu)先權(quán)日2011年5月31日
發(fā)明者周恒箴, 曾祥希 申請(qǐng)人:中興通訊股份有限公司