新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 高階FIR濾波器的計(jì)算機(jī)設(shè)計(jì)與FPGA實(shí)現(xiàn)

高階FIR濾波器的計(jì)算機(jī)設(shè)計(jì)與FPGA實(shí)現(xiàn)

作者: 時(shí)間:2011-03-31 來源:網(wǎng)絡(luò) 收藏

以本文設(shè)計(jì)的為例(后面詳述),輸入信號的速率為2 MHz(周期為500 ns),的階數(shù)為64階,由此構(gòu)造了8個(gè)乘法器(最多可以構(gòu)造25個(gè)),分8次完成所有的乘法。相對分布式算法的流水速度而言,構(gòu)造的乘法器完成一次乘法需要20 ns,相對耗時(shí)長一點(diǎn),但是完成8次乘法也只需8×20=160 ns,小于輸入信號一個(gè)周期的時(shí)間,因此滿足設(shè)計(jì)需求。將輸入數(shù)據(jù)的一個(gè)周期平均分為8個(gè)時(shí)間塊,每個(gè)時(shí)間內(nèi)的濾波設(shè)計(jì)模塊的框圖如圖4所示。

本文引用地址:http://butianyuan.cn/article/191265.htm

8.JPG


其他7個(gè)時(shí)間塊內(nèi)的模塊同圖4,所不同的是參與乘法運(yùn)算的信號輸入數(shù)據(jù)和濾波器抽頭系數(shù)不同,分別從x(n-8)到x(n-63)和h(8)到h(63)。待8個(gè)乘加模塊的結(jié)果均送入寄存器后,再在最后一個(gè)時(shí)間塊內(nèi)完成累加得到最終的輸出(相對乘法運(yùn)算而言,完成累加的時(shí)間可以忽略),其實(shí)現(xiàn)框圖如圖5。
結(jié)合圖4和圖5,可全部完成基于LPM參數(shù)化宏功能模塊的FIR濾波器設(shè)計(jì)。由兩圖可以發(fā)現(xiàn),有多個(gè)全加器,且輸入數(shù)據(jù)的位數(shù)(bit數(shù))不同,只要調(diào)節(jié)LPM宏功能模塊的參數(shù)即可方便地完成設(shè)計(jì),輸出數(shù)據(jù)y(n)的位數(shù)則根據(jù)工程需要取最終累加結(jié)果的高12位。取高12位帶來的誤差為7.JPG(最高位為符號位,不予數(shù)值考慮),這是可以接受的誤差。

2 基于Matlab和QuartusⅡ的FIR濾波器設(shè)計(jì)
2.1 利用Matlab進(jìn)行濾波器系數(shù)設(shè)計(jì)
設(shè)計(jì)指標(biāo):采樣頻率為2 MHz,f1=200 kHz,f2=330 kHz,通帶衰減1 dB,阻帶衰減70 dB。通過參數(shù)指標(biāo)確定所需的階數(shù)和參數(shù)值,部分程序如下:
9.JPG



關(guān)鍵詞: FPGA FIR 濾波器 計(jì)算機(jī)

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉