本發明涉及信號處理技術,尤其涉及一種多相插值濾波器及濾波方法。
背景技術:
目前,對于有限長單位沖激響應(FIR,Finite Impulse Response)濾波器,通常在實現整數倍插值濾波器的功能時,會將原始的濾波器系數按照插值倍數分成多相子濾波器來進行實現,每一相子濾波器均為直接性結構。此時,將原始的濾波器系數分相之后,各相子濾波器的系數個數相同,其各相子濾波器的系數與原始濾波器系數對應相同,以圖1所示的兩相插值濾波器結構為例,第一相子濾波器和第二相子濾波器的系數個數均為10個,并且各相子濾波器的常規系數與原始濾波器的系數對應相同,由于原始的濾波器系數具有鏡像對稱的性質,設定圖1所示的兩相插值濾波器所對應的原始濾波器系數為C(0),C(1),C(2),……,C(19),那么,這些系數具有鏡像對稱性質的具體表現為:C(0)=C(19),C(1)=C(18),C(2)=C(17),C(3)=C(16),C(4)=C(15),C(5)=C(14),C(6)=C(13),C(7)=C(12),C(8)=C(11),C(9)=C(10);而在圖1所示的兩相插值濾波器中,第一相子濾波器的系數依次為:C(0)、C(2)、C(4)、C(6)、C(8)、C(10)、C(12)、C(14)、C(16)、C(18);第二相子濾波器的系數依次為:C(1)、C(3)、C(5)、C(7)、C(9)、C(11)、C(13)、C(15)、C(17)、C(19)。由于原始的濾波器系數具有鏡像對稱的性質,因此第一相子濾波器的系數組與第二相子濾波器的系數組的逆序是相同的,如圖2所示,以相同形狀的圖案為例進行說明,第一相子濾波器的系數組用實線形狀表示,第二相子濾波器的系數組用虛線形狀表示,由此可以得知,第一相子濾波器的系數前半部分與第二相子濾波器的系數后半部分對稱相同,第一相子濾波器的系數后半部分與第二相子濾波器的系數前半部分對稱相 同,基于這種系數組逆序相同的關系,圖1所示的兩相插值濾波器存在對相同的數據data在不同時刻進行重復計算的操作的情況,從而存在計算資源的浪費。
技術實現要素:
為解決上述技術問題,本發明實施例期望提供一種多相插值濾波器及濾波方法,能夠利用濾波器系數的對稱性質,減少實現多相插值濾波器所需要的計算資源消耗。
本發明的技術方案是這樣實現的:
第一方面,本發明實施例提供了一種多相插值濾波器,所述多相插值濾波器包括:系數變換單元、多相子濾波器組單元、濾波器還原單元和插值單元,其中,
所述系數變換單元,用于將原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器的常規系數按照預設的轉換規則生成具有鏡像對稱性質的第一濾波器的系數組和具有奇對稱性質的第二濾波器的系數組;
所述多相子濾波器組單元,用于將所述第一濾波器中系數相同的兩個延時單元的輸出求和后乘以所述相同的系數,并將乘積進行求和;
以及,將所述第二濾波器中系數相反的兩個延時單元的輸出求差后乘以所述相反系數中的一個,并將乘積求和;
所述濾波器還原單元,用于分別對多相子濾波器組單元中所述第一濾波器的乘積和以及所述第二濾波器中的乘積和進行相加和相減運算,分別還原得到原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器;
所述插值單元,用于根據預設的插值運算規則對所述濾波器還原單元中還原得到的所述原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器進行插值。
在上述方案中,所述第一濾波器和所述第二濾波器的階數與所述原始多相插值濾波器中子濾波器的階數相同。
在上述方案中,所述系數變換單元,具體用于將所述兩相子濾波器的常規 系數對應相加,得到具有鏡像對稱性質的第一濾波器的系數組;
以及,將所述兩相子濾波器的常規系數對應相減,得到具有奇對稱性質的第二濾波器的系數組。
在上述方案中,當所述原始多相插值濾波器中的子濾波器沒有與其系數具有逆序相同關系的子濾波器時,所述系數變換單元,還用于保留所述子濾波器的系數;
相應地,所述多相子濾波器組單元,用于將所述系數變換單元所保留的系數與第三濾波器的延時單元的輸出對應相乘,并將乘積求和;其中,所述第三濾波器的階數與所述子濾波器的階數相同。
在上述方案中,當原始多相插值濾波器中的子濾波器沒有與其系數具有逆序相同關系的子濾波器時,所述子濾波器的系數滿足鏡像對稱性質;
相應地,所述多相子濾波器組單元,還用于將所述第三濾波器中系數相同的延時單元的輸出求和后乘以所述相同的系數,并將乘積求和;其中,所述第三濾波器的階數與所述子濾波器的階數相同。
第二方面,本發明實施例提供了一種濾波方法,所述濾波方法應用于一多相插值濾波器,所述方法包括:
所述多相插值濾波器將原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器的常規系數按照預設的轉換規則生成具有鏡像對稱性質的第一濾波器的系數組和具有奇對稱性質的第二濾波器的系數組;
所述多相插值濾波器將待濾波數據分別輸入至所述第一濾波器和所述第二濾波器;
所述多相插值濾波器將所述第一濾波器中系數相同的兩個延時單元的輸出求和后乘以所述相同的系數,并將乘積進行求和;
所述多相插值濾波器將所述第二濾波器中系數相反的兩個延時單元的輸出求差后乘以所述相反系數中的一個,并將乘積求和;
所述多相插值濾波器分別對多相子濾波器組單元中所述第一濾波器的乘積和以及所述第二濾波器中的乘積和進行相加和相減運算,分別還原得到原始多 相插值濾波器中具有系數組逆序相同關系的兩相子濾波器;
所述多相插值濾波器根據預設的插值運算規則對所述濾波器還原單元中還原得到的所述原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器進行插值。
在上述方案中,所述第一濾波器和所述第二濾波器的階數與所述原始多相插值濾波器中子濾波器的階數相同。
在上述方案中,所述多相插值濾波器將原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器的常規系數按照預設的轉換規則生成具有鏡像對稱性質的第一濾波器的系數組和具有奇對稱性質的第二濾波器的系數組,具體包括:
所述多相插值濾波器將所述兩相子濾波器的常規系數對應相加,得到具有鏡像對稱性質的第一濾波器的系數組;
所述多相插值濾波器將所述兩相子濾波器的常規系數對應相減,得到具有奇對稱性質的第二濾波器的系數組。
在上述方案中,所述當所述原始多相插值濾波器中的子濾波器沒有與其系數具有逆序相同關系的子濾波器時,所述方法還包括:
所述多相插值濾波器保留所述子濾波器的系數;
所述多相插值濾波器將所述保留的系數與第三濾波器的延時單元的輸出對應相乘,并將乘積求和;其中,所述第三濾波器的階數與所述子濾波器的階數相同。
在上述方案中,所述當所述原始多相插值濾波器中的子濾波器沒有與其系數具有逆序相同關系的子濾波器時,所述方法還包括:
所述多相插值濾波器將所述第三濾波器中系數相同的延時單元的輸出求和后乘以所述相同的系數,并將乘積求和;其中,所述第三濾波器的階數與所述子濾波器的階數相同。
本發明實施例提供了一種多相插值濾波器及濾波方法,通過利用濾波器系數的對稱性質,能夠在不增加緩存單元的前提下,降低多相插值濾波器中用于 濾波器系數相乘的乘法器數量,從而減少了實現多相插值濾波器所需要的計算資源消耗。
附圖說明
圖1為現有技術中的兩相插值濾波器結構示意圖;
圖2為現有技術中兩相插值濾波器中的子濾波器系數關系示意圖;
圖3為本發明實施例提供的一種多相插值濾波器的結構示意圖;
圖4為本發明實施例提供的另一種多相插值濾波器的結構示意圖;
圖5為本發明實施例提供的一種實現中間相子濾波器的結構示意圖;
圖6為本發明實施例提供的一種濾波方法流程示意圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述。
本發明實施例的基本思想是:在原始多相差值濾波器中,將具有系數逆序相同關系的兩相子濾波器的常規系數進行等效變換,得到分別具有鏡像對稱性質和奇對稱性質的兩組變換后的濾波器系數,利用兩組變換后的濾波器系數分別所具有的鏡像對稱性質和奇對稱性質對兩相子濾波器的乘法器進行復用,從而減少了濾波器結構中乘法器的數量,降低了實現多相插值濾波器所耗費的計算資源。
參見圖3,其示出了本發明實施例提供的一種多相插值濾波器30的結構,該濾波器30可以包括:系數變換單元301、多相子濾波器組單元302、濾波器還原單元303和插值單元304,其中,
系數變換單元301,用于將原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器的常規系數按照預設的轉換規則生成具有鏡像對稱性質的第一濾波器的系數組和具有奇對稱性質的第二濾波器的系數組;
多相子濾波器組單元302,用于將第一濾波器中系數相同的兩個延時單元 的輸出求和后乘以所述相同的系數,并將乘積進行求和;
以及,將第二濾波器中系數相反的兩個延時單元的輸出求差后乘以所述相反系數中的一個,并將乘積求和;
濾波器還原單元303,用于分別對多相子濾波器組單元302中第一濾波器的乘積和以及第二濾波器中的乘積和進行相加和相減運算,分別還原得到原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器;
插值單元304,用于根據預設的插值運算規則對濾波器還原單元303中還原得到的原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器進行插值。
需要說明的是,第一濾波器和第二濾波器的階數與原始多相插值濾波器中子濾波器的階數相同。因此,在多相子濾波器組單元302中,對于第一濾波器和第二濾波器,均分別可以依據系數的鏡像對稱性質和奇對稱性質來講乘法器進行復用,從而減少了乘法器的數量。
在本發明實施例中,系數組具有鏡像對稱性質表示系數組的系數關于中間系數鏡像對稱,例如系數組(a,b,c,d,e)具有鏡像對稱性質,則以c為中心有a=e,b=d;而系數具有奇對稱性質表示系數組的系數關于中間系數奇對稱,例如系數組(a,b,c,d,e)具有奇對稱性質,則以c為中心有a=-e,b=-d。
示例性地,系數變換單元301,具體用于將所述兩相子濾波器的常規系數對應相加,得到具有鏡像對稱性質的第一濾波器的系數組;
以及,將所述兩相子濾波器的常規系數對應相減,得到具有奇對稱性質的第二濾波器的系數組。
需要說明的是,當原始多相插值濾波器中的子濾波器沒有與其系數具有逆序相同關系的子濾波器時,系數變換單元301,用于保留該子濾波器的系數;多相子濾波器組單元302,用于將系數變換單元301所保留的系數與第三濾波器的延時單元的輸出對應相乘,并將乘積求和;其中,第三濾波器的階數與該子濾波器的階數相同。
進一步地,當原始多相插值濾波器中的子濾波器沒有與其系數具有逆序相 同關系的子濾波器時,該子濾波器的系數滿足鏡像對稱性質,因此,多相子濾波器組單元302,可以用于將第三濾波器中系數相同的延時單元的輸出求和后乘以所述相同的系數,并將乘積求和;其中,第三濾波器的階數與該子濾波器的階數相同。可以理解地,對于原始多相插值濾波器中沒有與系數具有逆序相同關系的子濾波器,仍然也可以按照系數的鏡像對稱關系進行乘法器的復用,從而也減少了乘法器的數量。
可以理解地,在奇數相插值濾波器中,中間相子濾波器沒有與其系數具有逆序相同關系的子濾波器,但是中間相子濾波器系數自身滿足鏡像對稱性質,因此,仍然可以利用中間相子濾波器系數的鏡像對稱性質減少中間相子濾波器中的乘法器數量。
以下通過兩個具體實施例對上述多相插值濾波器的結構進行說明。
具體實施例一
以圖1所示的兩相插值濾波器作為原始多相插值濾波器進行說明,在圖1中,第一相子濾波器的常規系數依次為:C(0)、C(2)、C(4)、C(6)、C(8)、C(10)、C(12)、C(14)、C(16)、C(18);第二相子濾波器的常規系數依次為:C(1)、C(3)、C(5)、C(7)、C(9)、C(11)、C(13)、C(15)、C(17)、C(19);第一相子濾波器的常規系數組與第二相子濾波器的常規系數組的逆序是對應相同的,因此,兩者具有逆序相同的性質。第一相子濾波器為第二相子濾波器為
對于系數變換單元301來說,一方面,將兩相子濾波器的常規系數對應相加,可以得到第一濾波器的系數組:A(0)=C(0)+C(1);A(1)=C(2)+C(3);…;A(8)=C(16)+C(17);A(9)=C(18)+C(19);但是由于C(0)=C(19),C(1)=C(18),C(2)=C(17),C(3)=C(16),C(4)=C(15),C(5)=C(14),C(6)=C(13),C(7)=C(12),C(8)=C(11),C(9)=C(10);因此有:A(0)=C(0)+C(1);A(1)=C(2)+C(3);…;A(8)=C(3)+C(2)=A(1);A(9)=C(1)+C(0)=A(0);所以第一濾波器的系數組A(0), A(1),…,A(8),A(9)具有鏡像對稱性質;
另一方面,系數變換單元301,將兩相子濾波器的常規系數對應相減,可以得到第二濾波器的系數組:B(0)=C(0)-C(1);B(1)=C(2)-C(3);…;B(8)=C(16)-C(17);B(9)=C(18)-C(19);同樣由于C(0)=C(19),C(1)=C(18),C(2)=C(17),C(3)=C(16),C(4)=C(15),C(5)=C(14),C(6)=C(13),C(7)=C(12),C(8)=C(11),C(9)=C(10);因此有:B(0)=C(0)-C(1);B(1)=C(2)-C(3);…;B(8)=C(3)-C(2)=-B(1);B(9)=C(1)-C(0)=-B(0);所以第二濾波器的系數組B(0),B(1),…,B(8),B(9)具有奇對稱性質;
如圖4所示,多相子濾波器組單元302設置與各相子濾波器階數相同的第一濾波器和第二濾波器;并且在第一濾波器中,將系數相同的兩個延時單元的輸出進行求和之后乘以對應的相同系數,并將乘積求和;可以得到第一濾波器的表達式為:
在第二濾波器中,將第二濾波器中系數相反的兩個延時單元的輸出求差后乘以所述相反系數中的一個,并將乘積求和;可以得到第二濾波器的表達式為:
由于以及所以,濾波器還原單元303將第一濾波器和第二濾波器進行相加后,可以得到兩相插值濾波器中的第一相子濾波器;同理,將第一濾波器和第二濾波器進行相減后,可以得到兩相 插值濾波器中的第二相子濾波器;從而實現了對原始多相插值濾波器的還原。
而插值單元304,用于根據預設的插值運算規則對濾波器還原單元303中還原得到的原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器進行插值。具體的實現與現有技術中的原始多相插值濾波器的插值單元的實現相同,且不是本發明實施例技術方案的創新之處,本實施例不做贅述。
對比圖1和圖4很容易發現,圖1所示的原始多相插值濾波器中,包括有:20個乘法器,2個加法器,10個延時單元,一個插值單元;圖4所示的結構中包括有:10個乘法器,8個加法器,6個減法器,10個延時單元,一個插值單元;兩者經過對比可以得出,圖4所示的結構比圖1所示的原始多相插值濾波器節省了10個乘法器,增加6個加法器和6個減法器,折算成門級資源為-10×3000+6×120+6×120=-28560,而實現圖1所示的原始多相插值濾波器所需要的門級資源為20×3000+2×120+10×16×6+300=61500,因此,總資源減少了可以得出實現圖4所示的結構需要的總資源減少了46.4%。
對于具體實施例一,還需要補充的是,當原始多相插值濾波器為偶數相插值濾波器時,例如2N相插值濾波器,N為自然數。那么第i相與第2N-i+1相子濾波器的系數符合逆序相同的性質,因此,可以將第i相與第2N-i+1相子濾波器通過本實施例的多相插值濾波器的結構來進行實現,其中,i=1,2,…,N,從而能夠在實現濾波器的過程中減少乘法器的數量。
具體實施例二
當原始多相插值濾波器為奇數相插值濾波器時,例如2N+1相插值濾波器,N為自然數。那么第i相與第2N+2-i相子濾波器的系數符合逆序相同的性質,其中,i=1,2,3,…,N-1;但是第N+1相為中間相,沒有與其常規系數具有逆序相同關系的其他相子濾波器,但是第N+1相子濾波器系數自身滿足鏡像對稱性質,因此,仍然可以利用中間相子濾波器常規系數的鏡像對稱性質減少中間相子濾波器中的乘法器數量。當圖1所示的兩相插值濾波器中多出一個中間 相子濾波器,成為三相插值濾波器時,比如:第一相子濾波器的常規系數依次為:C(0)、C(2)、C(4)、C(6)、C(8)、C(10)、C(12)、C(14)、C(16)、C(18);第三相子濾波器的常規系數依次為:C(1)、C(3)、C(5)、C(7)、C(9)、C(11)、C(13)、C(15)、C(17)、C(19);而作為中間相的第二相子濾波器的常規系數為E(0)、E(1)、E(2)、…、E(8)、E(9),第二相子濾波器為由于第一相子濾波器和第三相子濾波器的常規系數滿足逆序相同的性質,因此,可以按照具體實施例一中所描述的偶數相插值濾波器來實現,但是對于中間相子濾波器來說,由于E(0)=E(9),E(1)=E(8)、E(2)=E(7)、E(3)=E(6)、E(4)=E(5),因此,如圖5所示,多相子濾波器組單元302可以設置與中間相子濾波器階數相同的第三濾波器,并且將第三濾波器中系數相同的延時單元的輸出求和后乘以所述相同的系數,并將乘積求和;即:
從而通過對稱關系,減少了在實現中間相子濾波器過程中所使用的乘法器數量。
實施例二
基于前述實施例相同的技術構思,參見圖6,其示出了本發明實施例提供的一種濾波方法的流程,該方法可以應用于前述實施例所述的任意一種多相插值濾波器結構,該方法可以包括:
S601:多相插值濾波器將原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器的常規系數按照預設的轉換規則生成具有鏡像對稱性質的第一濾波器的系數組和具有奇對稱性質的第二濾波器的系數組;
S602:多相插值濾波器將待濾波數據分別輸入至第一濾波器和第二濾波器;
S603:多相插值濾波器將第一濾波器中系數相同的兩個延時單元的輸出求和后乘以相同的系數,并將乘積進行求和;
S604:多相插值濾波器將第二濾波器中系數相反的兩個延時單元的輸出求差后乘以相反系數中的一個,并將乘積求和;
S605:多相插值濾波器分別對多相子濾波器組單元中第一濾波器的乘積和以及第二濾波器中的乘積和進行相加和相減運算,分別還原得到原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器;
S606:多相插值濾波器根據預設的插值運算規則對濾波器還原單元中還原得到的原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器進行插值。
需要說明的是,第一濾波器和第二濾波器的階數與原始多相插值濾波器中子濾波器的階數相同。
示例性地,多相插值濾波器將原始多相插值濾波器中具有系數組逆序相同關系的兩相子濾波器的常規系數按照預設的轉換規則生成具有鏡像對稱性質的第一濾波器的系數組和具有奇對稱性質的第二濾波器的系數組,具體包括:
多相插值濾波器將兩相子濾波器的常規系數對應相加,得到具有鏡像對稱性質的第一濾波器的系數組;
多相插值濾波器將兩相子濾波器的常規系數對應相減,得到具有奇對稱性質的第二濾波器的系數組。
示例性地,當原始多相插值濾波器中的子濾波器沒有與其系數具有逆序相同關系的子濾波器時,方法還包括:
多相插值濾波器保留該子濾波器的系數;
多相插值濾波器將保留的系數與第三濾波器的延時單元的輸出對應相乘,并將乘積求和;其中,第三濾波器的階數與該子濾波器的階數相同。
示例性地,當原始多相插值濾波器中的子濾波器沒有與其系數具有逆序相同關系的子濾波器時,方法還包括:
多相插值濾波器將第三濾波器中系數相同的延時單元的輸出求和后乘以相同的系數,并將乘積求和;其中,第三濾波器的階數與該子濾波器的階數相同。
本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或計 算機程序產品。因此,本發明可采用硬件實施例、軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產品的形式。
本發明是參照根據本發明實施例的方法、設備(系統)、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執行的指令提供用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上,僅為本發明的較佳實施例而已,并非用于限定本發明的保護范圍。