CIC濾波器是滑動平均濾波器的非常高效的迭代實現,只需要一個減法和一個加法,而滑動平均需要N-1個加法。
cic濾波器相當於一個梳狀濾波器y(n)=x(n)-x(n-D),H(z)=1-z-D,和一個積分濾波器y(n)=x(n)+y(n-1),H(z)=(1-z-1)-1的級聯,兩個級聯后y(n)=x(n)-x(n-D)+y(n-1),H(z)=(1-z-D)/(1-z-1),和求和表達式y(n)=x(n)+x(n-1)+x(n-2)...+x(n-D),H(z)=(1-z-D)/(1-z-1)一樣.
通常將comb部分放在低采樣率步驟,可以減少存儲器用於延時的Size,此乃精巧模式;an N-sample delay after decimation by R is equivalent to a D-sample delay before decimation by R。
問題
抽取后和抽取前的頻域公式怎么變換?
x(n)=X(w)*ejwn,抽取后y(n)=x(Rn)=X(w)ejwRn=Y(w1)ejw1n;令w1=Rw,得到Y(w1)=X(w/R)。
抽取因子,差分因子改變對頻域公式的影響?他們不一樣對實際應用的影響?
抽取因子變化,對濾波器形狀影響很小?同樣的FIR濾波器可以用於變抽取因子的系統?
以上兩個問題,可以回答為:H(z)=(1-z-RM)/(1-z-1),R倍抽取后變為H(z)=(1-z-M)/(1-z-1/R),系統的零點由分子決定,與R無關,因此R的變化不會改變濾波器的帶寬,
梳妝濾波器和降采樣顛倒后,差分因子變為N=D/R?
-> 
CIC怎么降低硬件要求的?減少存儲器,減小時鍾
運算過程中位數的變化?
積分器有可能不溢出,滿足兩個條件?
CIC濾波器的FPGA表達(精巧模式):
process(rst,clk)
begin
if rst=1 then
y(n-1)=0;
k=0;
x(n)=0;
if rising(clk) then
x(n)=x(n)+xin;
k=k+1;
if k=3 then
k=0;
endif;
if k=0 then
y(n-1)=x(n);
y(n)=y(n-1);
yout=y(n)-y(n-1);
endif;
end process
CIC濾波器的FPGA表達(粗獷模式):
process(rst,clk)
begin
if rst=1 then
y(n-1)=0;
k=0;
if rising(clk) then
x(n)="0000"+xin;
x(n-1)=x(n);
x(n-2)=x(n-1);
x(n-3)=x(n-2);
xd4=x(n)-x(n-3);
y(n)=xd4+y(n-1);
k=k+1;
if k=0 then
yout=y(n);
endif;
if k=3 then
k=0;
endif;
end process
