成形滤波器、CIC补偿滤波器 matlab设计与FPGA实现

成形滤波插5
Matlab

Rs = 500e3; %符号速率
beta = 0.2; %滚降系数(0,1)  (实际带宽-理想带宽)/理想带宽
W = (1+beta)*Rs/2 %所需带宽
span = 36; 	%滤波阶数
sps = 5; 	%单个符号采样数
			% 滤波器阶数 = span*sps
			% 滤波器系数数 = span*sps + 1
mfir_i5 = rcosdesign(beta,span,sps);
fvtool(mfir_i5);

FPGA:
滤波器类型选择插值(Interpolation)、插值倍数选择5。

CIC补偿滤波器

%% CIC滤波器
R  = 4;
X1 = ones(1,R);   %1级
X2 = conv(x1,x1); %2级
X3 = conv(x2,x1); %3级
X4 = conv(x3,x1); %4级
X5 = conv(x4,x1); %5级
X6 = conv(x5,x1); %6fvtool(x1);
fvtool(x2);
fvtool(x3);
fvtool(x4);
fvtool(x5);
fvtool(x6);

cfir = firceqrip(99,2/R,[0.01 0.001],'invsinc',[1/R 100*R]); %补偿滤波
fvtool(cfir);
fvtool(conv(cfir,x6)); %与补偿滤波级联

你可能感兴趣的:(fpga开发,matlab,开发语言)