1.完整项目描述和程序获取
>面包多安全交易平台:https://mbd.pub/o/bread/Y56Ulp1p
>如果链接失效,可以直接打开本站店铺搜索相关店铺:
>如果链接失效,程序调试报错或者项目合作也可以加微信或者QQ联系。
2.部分仿真图预览
3.算法概述
在一个采样间隔T内,FARROW滤波器结构的系数不变,可变的是分数延迟,在一个采样间隔内,可任意改变分数延迟,提高采样率。一般拉格朗日内插采用直接的FIR滤波器实现,虽然简单,但系数随迟延变化而变化,一旦延迟D变化,需重新计算或保存滤波器系数,且滤波器系数与内插因子成比例,实现不灵活。因此提出一种更为灵活高效的实现结构,FARROW滤波器结构。FARROW滤波器结构不仅可应对变化的分数延迟而且大大减少运算,提高运行效率。理想的分数延迟滤波器是since滤波器,在时域里,它是一个无限长冲击响应滤波器,不可实现。
4.部分源码
.........................................................
% create the input impulse
x = zeros(1,L);
x(1) = 1;
% set the initial conditions
x0 = zeros(1,size(P,1)-1);
t0 = 0;
if 1,
[h t N t0 x0] = asrc_farrow(x,1/M,t0,x0,P);
else,
[h t N t0 x0] = asrc_farrow_loop(x,1/M,t0,x0,P);
end;
% plot the approximated impulse response and overlay the filter output
subplot(5,1,3);
plot(hh);
hold on;
plot(h,'k');
hold off;
% plot the magnitude response
[H,f] = freqz(h/M,1,M*np);
subplot(5,1,4);
% first drop a marker at the original nyquist
plot([pi/M pi/M],[FLOOR 0],'k');
hold on;
% plot dB magnitude with a -60dB floor
plot(f,max(20*log10(abs(H)),FLOOR));
% zoom in on the passband
%plot(f(1:np)*M,max(20*log10(abs(H(1:np))),-60/10)*10,'r');
hold off;
% plot the phase response
subplot(5,1,5);
plot(f,angle(H));
hold on;
% zoom in on the passband
plot(f(1:np)*M,angle(H(1:np)),'r');
hold off;
end;
A208