采用FPGA實(shí)現(xiàn)四階IIR數(shù)字濾波電路設(shè)計(jì)
采用FPGA實(shí)現(xiàn)四階IIR數(shù)字濾波器,通過(guò)兩個(gè)二階節(jié)級(jí)聯(lián)構(gòu)成數(shù)字橢圓低通濾波器。通帶內(nèi)波紋小于0.1dB,阻帶衰減大于32dB。常用的數(shù)字濾波器有FIR數(shù)字濾波器和IIR數(shù)字濾波器。FIR數(shù)字濾波器具有精確的線性相位特性, 在信號(hào)處理方面應(yīng)用極為廣泛,而且可以采用事先設(shè)計(jì)調(diào)試好的FIR數(shù)字濾波器IP Core來(lái)完成設(shè)計(jì)。另外,對(duì)于相同的設(shè)計(jì)指標(biāo),F(xiàn)IR濾波器所要求的階數(shù)比IIR濾波器高5~10倍,成本較高,而且信號(hào)的延遲也較大。IIR濾波器所要求的階數(shù)不僅比FIR濾波器低,而且可以利用模擬濾波器的設(shè)計(jì)成果,設(shè)計(jì)工作量相對(duì)較小,采用FPGA實(shí)現(xiàn)的IIR濾波器同樣具有多種優(yōu)越性。
本文引用地址:http://2s4d.com/article/201610/307924.htm數(shù)字濾波器實(shí)際上是一個(gè)采用有限精度算法實(shí)現(xiàn)的線性非時(shí)變離散系統(tǒng),它的設(shè)計(jì)步驟為:首先根據(jù)實(shí)際需要確定其性能指標(biāo),再求得系統(tǒng)函數(shù),最后采用有限精度算法實(shí)現(xiàn)。根據(jù)需要,本系統(tǒng)的設(shè)計(jì)指標(biāo)為:模擬信號(hào)采樣頻率為2MHz,每周期最少采樣20點(diǎn),即模擬信號(hào)的通帶邊緣頻率為fp=100kHz,阻帶邊緣頻率 =1MHz,通帶波動(dòng) 不大于0.1dB (通帶誤差不大于5%),阻帶衰減A s不小于32dB。系統(tǒng)函數(shù)的計(jì)算采用Matlab軟件比較方便。
本文采用一個(gè)折中的方法實(shí)現(xiàn),即乘加單元(MAC)的乘法器采用陣列乘法器,而不使用串行乘法器,以提高運(yùn)算速度。需要注意的是,MAX+plus II的LPM庫(kù)中乘法運(yùn)算為無(wú)符號(hào)數(shù)的陣列乘法,所以使用時(shí)需要先將兩個(gè)補(bǔ)碼乘數(shù)轉(zhuǎn)換為無(wú)符號(hào)數(shù)相乘后,再將乘積轉(zhuǎn)換為補(bǔ)碼乘積輸出。每個(gè)二階節(jié)完成一次運(yùn)算共需要6個(gè)時(shí)鐘周期, 而且需采用各自獨(dú)立的MAC實(shí)現(xiàn)兩級(jí)流水線結(jié)構(gòu),即每個(gè)數(shù)據(jù)經(jīng)過(guò)兩個(gè)二階節(jié)輸出只需要6個(gè)時(shí)鐘周期。
評(píng)論