基于流水線技術(shù)的并行高效FIR濾波器設(shè)計
摘要:基于流水線技術(shù),利用FPGA進行并行可重復(fù)配置高精度的FIR濾波器設(shè)計。使用VHDL可以很方便地改變?yōu)V波器的系數(shù)和階數(shù)。在DSP中采用這種FIR濾波器的設(shè)計方法可以充分發(fā)揮FPGA的優(yōu)勢。
本文引用地址:http://m.butianyuan.cn/article/191651.htm數(shù)字濾波器可以濾除多余的噪聲,擴展信號頻帶,完成信號預(yù)調(diào),改變信號的特定頻譜分量,從而得到預(yù)期的結(jié)果。數(shù)字濾波器在DVB、無線通信等數(shù)字信號處理中有著廣泛的應(yīng)用。在數(shù)字信號處理中,傳統(tǒng)濾波器通過高速乘法累加器實現(xiàn),這種方法在下一個采樣周期到來期間,只能進行有限操作,從而限制了帶寬。現(xiàn)實中的信號都是以一定的序列進入處理器的,因此處理器在一個時鐘周期內(nèi)只能處理有限的位數(shù),不能完全并行處理?;?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/并行">并行流水線結(jié)構(gòu)的FIR濾波器可以使筆者設(shè)計的64階或者128階濾波器與16階濾波器的速度一樣快,其顯著特別是在算法的每一個階段存取數(shù)據(jù)。FPGA結(jié)構(gòu)使得以采樣速率處理數(shù)字信號成為常數(shù)乘法器的理想載體,提高了整個系統(tǒng)的性能。由于設(shè)計要求的差異,如字長、各級輸出的保留精度等不同,在整個設(shè)計過程中,各個環(huán)節(jié)也有所不同,這就需要根據(jù)不同的要求對數(shù)據(jù)進行不同的處理,如截斷、擴展等,從而設(shè)計出既滿足設(shè)計需要,又節(jié)省FPGA資源的電路。. .
圖1 并行濾波器結(jié)構(gòu)
1 FIR并行濾波器結(jié)構(gòu)
數(shù)字濾波器主要通過乘法器、加法器和移位寄存器實現(xiàn)。串行處理方式在階數(shù)較大時,處理速度較慢。而現(xiàn)代數(shù)字信號處理要求能夠快速、實時處理數(shù)據(jù),并行處理數(shù)據(jù)能夠提高信號處理能力,其結(jié)構(gòu)如圖1所示。
圖2 查找表相乘和累加
從上面的算法可以看出,處理數(shù)據(jù)的采樣時鐘對每一個抽頭來說都是并行的,并且加法器和移位寄存器采用級聯(lián)方式,完成了累加器的功能,綜合了加法器和移位寄存器的優(yōu)點,而且這種算法的各級結(jié)構(gòu)相同,方便擴展,實現(xiàn)了任意階數(shù)的濾波器。算法中,真正點用系統(tǒng)資源的是乘法器。如果將系數(shù)量化成二進制,就能采用移位寄存器和加法器實現(xiàn)乘法功能。對于一個特定的濾波器,由于它有固定的系數(shù),乘法功能就是一個長數(shù)乘法器。下面將討論乘法器的設(shè)計問題。
評論