32階FIR濾波器的FPGA實(shí)現(xiàn)
隨著軟件無線電的發(fā)展。對于濾波器的處理速度要求越來越高。傳統(tǒng)的FIR濾波器一般采用通用DSP處理器,但是DSP處理器采用的是串行運(yùn)算,而FPGA是現(xiàn)場可編程陣列,可以實(shí)現(xiàn)專用集成電路,另外還可以采用純并行結(jié)構(gòu)及考慮流水線結(jié)構(gòu),因此在處理速度上可以明顯高于DSP處理器。本文采用并行分布式算法在FPGA上設(shè)計(jì)并實(shí)現(xiàn)了高速處理的32階FIR低通濾波器,在此過程中利用Matlab的數(shù)值計(jì)算與分析功能來提高設(shè)計(jì)效率。
1 FlR低通濾波器的窗函數(shù)實(shí)現(xiàn)
理想的濾波器頻率響應(yīng)中傅里葉反變換ha(n)一定是無限長的序列,而且是非因果的,而實(shí)際要設(shè)計(jì)的濾波器h(n)是有限長的,因此要用有限長來逼近無限長的,其方法就是用一個(gè)有限長度的窗口函數(shù)序列ω(n)來截取,即:
常見的窗函數(shù)有矩形窗、巴特利特窗、漢寧窗、哈明窗、布萊克曼窗、凱澤窗。其中,凱澤窗提供了可變的過渡帶寬。本文采用凱澤窗對FIR濾波器進(jìn)行設(shè)計(jì),其窗函數(shù)表達(dá)式為:
I0[?]為第一類變形零階貝賽爾函數(shù),形狀參數(shù)β為依賴于濾波器階數(shù)M的參數(shù),用來調(diào)整主瓣寬度與旁瓣衰減,選擇M可產(chǎn)生各種過渡帶寬和接近最優(yōu)的阻帶衰減。給定通帶截止頻率ωp,阻帶起始頻率ωs,阻帶衰減As,凱澤窗設(shè)計(jì)中有經(jīng)典公式可供使用,如下:
過渡帶寬:
濾波器階數(shù):
形狀參數(shù):
假設(shè)低通數(shù)字濾波器設(shè)計(jì)指標(biāo)如下:
評論