这是关于CIC滤波器的一段代码,
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/11 03:39:40
这是关于CIC滤波器的一段代码,
clear all
K=500;
k=0:1:K;
w=pi*k/K;
R=input('Please input R:');
M=input('Please input M:');
N=input('Please input N:');
num=sin(R*M*w/2);
den=sin(w/2)+eps;
H=(num./den).^N;
magH=abs(H);
angH=-1/2*(R*M-1)*N*w;
magH=20*log10(magH+eps);
subplot(2,1,1)
plot(w/pi,magH);grid on;
axis([0,1,-200,300]);
xlabel('frequency in pi units');
ylabel('|H|');
title('Magnitude Response(db)');
subplot(2,1,2);
plot(w/pi,angH/pi);grid on;
xlabel('frequency in pi units');
ylabel('Phase in pi Radians');
title('Phase Response');
clear all
K=500;
k=0:1:K;
w=pi*k/K;
R=input('Please input R:');
M=input('Please input M:');
N=input('Please input N:');
num=sin(R*M*w/2);
den=sin(w/2)+eps;
H=(num./den).^N;
magH=abs(H);
angH=-1/2*(R*M-1)*N*w;
magH=20*log10(magH+eps);
subplot(2,1,1)
plot(w/pi,magH);grid on;
axis([0,1,-200,300]);
xlabel('frequency in pi units');
ylabel('|H|');
title('Magnitude Response(db)');
subplot(2,1,2);
plot(w/pi,angH/pi);grid on;
xlabel('frequency in pi units');
ylabel('Phase in pi Radians');
title('Phase Response');
R是抽取因子或内插因子,取决于你要上采样(提高采样速率)还是要下采样(降低采样率)
M是延迟因子
N是所用CIC的级数
详见matlab help CIC Decimation和CIC Interpolation
再问: MTLAB help里面没有我需要的,RMN我也知道是什么,我就是不懂,为什么CIC是由积分器和梳状器组成,那上面这段代码里面并没有写入积分器和梳状器,而是直接设计的。并且主要是num=sin(R*M*w/2); den=sin(w/2)+eps; 这两句不懂。。求解答,满意一定加分。。。再次拜谢。
再答: CIC在时域上看实际上就是一个矩形序列或矩形窗,如果矩形序列的宽度为L, 系统函数H(z)=(1-Z^(-L))/(1-z^(-1)), 在单位圆上看就是H(e^(jw)=(1-e^(-jwL))/(1-e^(-jw)),用欧拉公式化简得 H(e^(jw)=-e^(-jw(L-1)/2)*sin(Lw/2)/sin(w/2) 程序中你问的第一句就是幅度的分子部分,num=sin(R*M*w/2)=sin(Lw/2) 第二句就是幅度的分母部分,den=sin(w/2)+eps,eps是为了防止分母等于0. num./den=sin(Lw/2)/sin(w/2)
再问: 还有2个问题,为什么:H=num除以den,那么H就是系统函数了,这个理论是什么。第二个问题就是,这段代码里面怎么没看到积分器和梳状器,难道R就代表了积分器和梳状器的级数。是不是编写CIC滤波器只要直接编写。。。谢谢,我会将我手上的分都给你的。
再答: CIC在时域上看实际上就是一个矩形序列或矩形窗,如果矩形序列的宽度为L, H(e^(jw)=(1-e^(-jwL))/(1-e^(-jw)),用欧拉公式化简得 H(e^(jw)=-e^(-jw(L-1)/2)*sin(Lw/2)/sin(w/2) 程序中你问的第一句就是幅度的分子部分,num=sin(R*M*w/2)=sin(Lw/2) 第二句就是幅度的分母部分,den=sin(w/2)+eps,eps是为了防止分母等于0. num./den=sin(Lw/2)/sin(w/2)就是H的实系数部分 系统函数H(z)=(1-Z^(-L))/(1-z^(-1))中分母是积分器,分子就是一个梳状滤波器这两个的首字母即是IC,当N级级联后就是CIC 其实你追问的问题在上次解答中就可以找打答案
M是延迟因子
N是所用CIC的级数
详见matlab help CIC Decimation和CIC Interpolation
再问: MTLAB help里面没有我需要的,RMN我也知道是什么,我就是不懂,为什么CIC是由积分器和梳状器组成,那上面这段代码里面并没有写入积分器和梳状器,而是直接设计的。并且主要是num=sin(R*M*w/2); den=sin(w/2)+eps; 这两句不懂。。求解答,满意一定加分。。。再次拜谢。
再答: CIC在时域上看实际上就是一个矩形序列或矩形窗,如果矩形序列的宽度为L, 系统函数H(z)=(1-Z^(-L))/(1-z^(-1)), 在单位圆上看就是H(e^(jw)=(1-e^(-jwL))/(1-e^(-jw)),用欧拉公式化简得 H(e^(jw)=-e^(-jw(L-1)/2)*sin(Lw/2)/sin(w/2) 程序中你问的第一句就是幅度的分子部分,num=sin(R*M*w/2)=sin(Lw/2) 第二句就是幅度的分母部分,den=sin(w/2)+eps,eps是为了防止分母等于0. num./den=sin(Lw/2)/sin(w/2)
再问: 还有2个问题,为什么:H=num除以den,那么H就是系统函数了,这个理论是什么。第二个问题就是,这段代码里面怎么没看到积分器和梳状器,难道R就代表了积分器和梳状器的级数。是不是编写CIC滤波器只要直接编写。。。谢谢,我会将我手上的分都给你的。
再答: CIC在时域上看实际上就是一个矩形序列或矩形窗,如果矩形序列的宽度为L, H(e^(jw)=(1-e^(-jwL))/(1-e^(-jw)),用欧拉公式化简得 H(e^(jw)=-e^(-jw(L-1)/2)*sin(Lw/2)/sin(w/2) 程序中你问的第一句就是幅度的分子部分,num=sin(R*M*w/2)=sin(Lw/2) 第二句就是幅度的分母部分,den=sin(w/2)+eps,eps是为了防止分母等于0. num./den=sin(Lw/2)/sin(w/2)就是H的实系数部分 系统函数H(z)=(1-Z^(-L))/(1-z^(-1))中分母是积分器,分子就是一个梳状滤波器这两个的首字母即是IC,当N级级联后就是CIC 其实你追问的问题在上次解答中就可以找打答案
关于on(release)一段代码的含义
这是一段kuke程序统计来路的代码,
关于VS2010的一段代码,求大神加上注释
CIC,PICC,是哪几个单词的缩写?
求写一段光学滤波器的发展史
关于留言板的代码这是什么意思
请教一下matlab的fir滤波器设计,已知频率响应的表达式,要如何编写代码设计滤波器呢?
求高手帮忙解释这一段代码的意思,看不懂,
如果要求滤波器是线性相位的,那么使用FIR滤波器还是IIR滤波器呢?
关于小波分解的滤波器理解
求问matlab一段代码的意思!
关于RC滤波器,高通滤波器,在输出端(R上)的电压是输入电压的0.707,相位移超前1/4派.对应的低通滤波器在输出端(