Write a code in C / Verilog to implement a basic FIR filter.

Need an answer.



Write a code in C / Verilog to implement a basic FIR filter. Need an answer...

Answer / mk

%program for FIR filters

disp('choose the window from the list');
ch=menu('types of
windows','bartlett','blackman','hamming','hanning','kaiser',
'rectangular');
rp=input('enter the passband ripple in db');
rs=input('enter the stopband ripple in db');
wsample=input('enter sampling frequency in hertz');
wp=input('enter the passband frequency in hertz');
ws=input('enter the stopband frequency in hertz');
wp=2*wp/wsample; ws=2*ws/wsample;
p=20*log10(sqrt(rp*rs))-13;
q=14.6*(ws-wp)/wsample;
N=1+floor(p/q);
N1=N;
if(rem(N,2)==0)
N1=N+1;
else
N=N-1;
end
switch ch
case 1
y=bartlett(N1);
case 2
y=blackman(N1);
case 3
y=hamming(N1);
case 4
y=hanning(N1);
case 5
beta=input('enter beta for kaiser window');
y=kaiser(N1,beta);
case 6
y=boxcar(N1);
otherwise
disp('enter proper window number');
end
disp('select the type of filter from the list');
type=menu('types of
filters','lowpass','highpass','bandpass','bandstop');
switch type
case 1
b=fir1(N,wp,'low',y);
case 2
b=fir1(N,wp,'high',y);
case 3
b=fir1(N,[wp ws],'bandpass',y);
case 4
b=fir1(N,[wp ws],'stop',y);
otherwise
disp('enter type number properly');
end
[h,w]=freqz(b,1,512);
magn=20*log10(abs(h));
phase=(180/pi)*unwrap(angle(h));
w=(w*wsample)/(2*pi);
subplot(2,1,1); plot(w,magn),grid on;title('magnitude
plot'); subplot(2,1,2); plot(w,phase),grid on;title('phase
plot');

Is This Answer Correct ?    8 Yes 17 No

Post New Answer

More DSP Interview Questions

Tell me the steps involved in demodulating a signal.

0 Answers   Ericsson,


What is BIBO stability? What is the condition to be satisfied for stability?

0 Answers  


What are recursive and non recursive systems? give examples?

0 Answers  


State difference between analog and digital signals.

0 Answers   HPCL, Hughes Systique Corporation,


classifying discrete time systems.

0 Answers  






What is the basic concept of frequency re-use?

0 Answers   Ericsson,


Is the Gibbs phenomenon ever a factor?

5 Answers   Qualcomm,


what is dsp?

0 Answers  


Define digital signal.

0 Answers  


Define signal sampling?

0 Answers  


What is Nyquist rate?

0 Answers  


What do you mean by radio environment in building?

0 Answers   Ericsson,


Categories