基于FPGA的FIR數(shù)字濾波器的優(yōu)化設(shè)計(jì)
測(cè)試實(shí)驗(yàn)數(shù)據(jù)及結(jié)果如圖2所示。在本C語言程序中用X來指代碼,輸入數(shù)據(jù)為16位。本文引用地址:http://www.ex-cimer.com/article/191069.htm
4 實(shí)例設(shè)計(jì)過程與仿真
4.1 FIR系數(shù)提取
利用Matlab中Fdatlool設(shè)計(jì)一個(gè)16階低通FIR濾波器,各項(xiàng)性能指標(biāo)為:采用頻率fs=48 kHz,截止頻率fstop=12 kHz,通帶寬度fpass=9.6 kHz。系數(shù)數(shù)據(jù)寬度為16位;輸出數(shù)據(jù)寬度是16位。為了便于FIR濾波器的FPGA實(shí)現(xiàn),減小誤差,將Fdatlool提取的濾波器的系數(shù)量化取整后為:
4.2 系數(shù)的CSD轉(zhuǎn)換
讀入量化系數(shù),進(jìn)行CSD轉(zhuǎn)換操作,生成CSD碼,表1是部分量化后的系數(shù)及對(duì)應(yīng)的CSD數(shù)。
4.3 FIR濾波器實(shí)現(xiàn)結(jié)構(gòu)
采用轉(zhuǎn)置形式的FIR濾波器結(jié)構(gòu),此結(jié)構(gòu)和直接型結(jié)構(gòu)不同的是,輸入信號(hào)X[n]是同時(shí)分別和濾波器系數(shù)向量相乘,不需要通過不同的延時(shí)單元再和相對(duì)應(yīng)的濾波器系數(shù)相乘。這種結(jié)構(gòu)最大的優(yōu)點(diǎn)是工作頻率較高,圖3給出了采用CSD編碼算法的設(shè)計(jì)流程圖。
評(píng)論