Hi, I am designing a 3 stages decimation filter for a second order 1 bit delta sigma modulator. The sampling rate of DSM is 1.536Mhz. The bandwidth for the input signal is 4Khz. For the first stage I used matlab's function cicdecimate with the following parameters: m = 1; n = 3 ; r = 32; q = quantizer([8 0],'fixed'); out1a = cicdecimate(m,n,r,in1a,q); %in1a is the output of DSM For the second and third stage I used matlab's function remezord with the following parameters: Second stage: rp = 0.1; % Passband ripple rs = 85; % Stopband ripple fs3 = 96e3; % input frequency from comb filter f = [4e3 20e3]; %cutoff freq is 24-4 a = [1 0]; [n1,f1,a1,w1] = remezord(f,a,dev,fs3); h1=remez(n1,f1,a1,w1) out2a=filter(h1,1,out1a); out2b=downsample(out2a,4); Third stage: rp = 0.1; % Passband ripple rs = 85; % Stopband ripple fs3 = 24e3; % input frequency from comb filter f = [4e3 8e3]; % Cutoff frequencies 12-4=8 a = [1 0]; [n1,f1,a1,w1] = remezord(f,a,dev,fs3); h2=remez(n1,f1,a1,w1); out3a=filter(h2,1,out2b); out3b=downsample(out3a,2); My simulation result shows this filter only works for input up to 3Khz, for 3.3Khz or 4Khz input, the simulation result shows a low freq noise. For the 3.3khz how do I determine if the output is acceptable? Can somebody please explain to me what did I do wrong? According to some articles sinc filter will introduce distortion in the low-freq part of signal band. Can somebody please elaborate on this issue? Where is the distortion come in for my sinc filter? How do I equalize it on the next stage filter? Any help is greatly appreciated. Thank you, EngGan |
comb filter and distortion
Started by ●July 3, 2003