IIR數(shù)字濾波器設(shè)計(jì)-在FPGA上實(shí)現(xiàn)任意階IIR數(shù)字濾波
此結(jié)構(gòu)既可以接收串行輸入的數(shù)據(jù),也可以接收并行輸入的數(shù)據(jù),通過SEL進(jìn)行設(shè)置。外部CPU可以通過READ信號(hào)來訪問濾波器的計(jì)算結(jié)果,另外,外部CPU也可以通過地址總線A[3:0]對內(nèi)部的存儲(chǔ)器進(jìn)行訪問,用WRITE信號(hào)對濾波器系數(shù)進(jìn)行寫操作,這樣外部CPU就可以根據(jù)自己的需要對濾波器進(jìn)行配置,靈活地實(shí)現(xiàn)各種功能。 各信號(hào)的含義如下:
CLK:系統(tǒng)時(shí)鐘;
RES:異步全局復(fù)位信號(hào),低有效;
SDATA:串行輸入數(shù)據(jù);
PDATA:并行輸入數(shù)據(jù);
SEL:設(shè)置輸入數(shù)據(jù)為并行還是串行;
READ:讀信號(hào),低有效;
WRITE:寫信號(hào),低有效;
SRES:同步復(fù)位信號(hào),高有效;
CLKI:外部CPU時(shí)鐘;
A[3:0]:外部CPU訪問內(nèi)部寄存器的地址總線;
OUT:輸出數(shù)據(jù)。
內(nèi)部算術(shù)與邏輯單元是整個(gè)濾波器的核心,它的結(jié)構(gòu)如圖4所示。
計(jì)算過程是,X、Y為輸入數(shù)據(jù),通過選擇器進(jìn)入乘法器,算術(shù)與邏輯單元從系數(shù)ROM中讀取濾波器的系數(shù)用以輸入數(shù)據(jù)相乘,相乘的結(jié)果與前一步的結(jié)果相加進(jìn)入累加器,累加器讀取上一步計(jì)算的中間結(jié)果A并計(jì)算,最后將此步計(jì)算的結(jié)果M存入到RAM中去。
結(jié)語
本文介紹了一種采用級(jí)聯(lián)結(jié)構(gòu)在FPGA上實(shí)現(xiàn)IIR數(shù)字濾波器的方法。在實(shí)際使用中,可以根據(jù)不同精度要求,方便地對該IIR濾波器進(jìn)行修改以滿足不同的指標(biāo)要求,靈活地組成任意階不同類型的濾波器。同時(shí),在系統(tǒng)運(yùn)行中,外部CPU可以靈活修改濾波器系數(shù),改變?yōu)V波器的頻率響應(yīng),滿足特定的應(yīng)用要求。
電源濾波器相關(guān)文章:電源濾波器原理
絕對值編碼器相關(guān)文章:絕對值編碼器原理 數(shù)字濾波器相關(guān)文章:數(shù)字濾波器原理
評論