Difficult DSP Interview Preparation Guide Download PDF
DSP frequently Asked Questions in various DSP job Interviews by interviewer. Get preparation of DSP job interview
9 DSP Questions and Answers:
Table of Contents:
1 :: Explain Is the Gibbs phenomenon ever a factor?
Yes Gibbs phenomenon becomes constraining when we are
analysing signals containing frequency tones quite close to
each other. If the side lobes of the windowing function are
significant then it leads to energy leakages between the
frequency bins/sub-bands. Thus very close lying frenecy
tones gets their magnitudes smeared up in the process.
analysing signals containing frequency tones quite close to
each other. If the side lobes of the windowing function are
significant then it leads to energy leakages between the
frequency bins/sub-bands. Thus very close lying frenecy
tones gets their magnitudes smeared up in the process.
2 :: What is an anti aliasing filter and why is it required?
Anti aliasing filter reduces errors due to aliasing. If a
signal is sampled at 8 kS/S, the max frequency of the input
should be 4 kHz. Otherwise, aliasing errors will result.
Typically a 3.4kHz will have an image of 4.6 khz, and one
uses a sharp cut off filter with gain of about 1 at 3.4kHz
and gain of about 0.01 at 4.6 kHz to effectively guard
against aliasing. Thus one does not quite choose max
frequency as simply fs/2 where fs is sampling frequency.
One has to have a guard band of about 10% of this fmax, and
chooses max signal frequency as 0.9*fs/2
signal is sampled at 8 kS/S, the max frequency of the input
should be 4 kHz. Otherwise, aliasing errors will result.
Typically a 3.4kHz will have an image of 4.6 khz, and one
uses a sharp cut off filter with gain of about 1 at 3.4kHz
and gain of about 0.01 at 4.6 kHz to effectively guard
against aliasing. Thus one does not quite choose max
frequency as simply fs/2 where fs is sampling frequency.
One has to have a guard band of about 10% of this fmax, and
chooses max signal frequency as 0.9*fs/2
3 :: How do we implement a fourth order Butterworth LP filter at 1kHz if sampling frequency is 8 kHz?
A fourth order Butterworth filter can be made as cascade of
two seond order LP filters with zeta of 0.924 and 0.383.
One can use a bilinear transformation approach for
realising second order LP filters. Using this technique
described well in many texts, one can make two second order
LP filters and cascade them.
two seond order LP filters with zeta of 0.924 and 0.383.
One can use a bilinear transformation approach for
realising second order LP filters. Using this technique
described well in many texts, one can make two second order
LP filters and cascade them.
4 :: Suppose we are sending address of thesalve and then data then after i want to read the data which i was sent recently, in that case before im reading is there any need to send a stop bit before read?
Before reading the data if you are giving the stop bit then
the communication is stopped.so after sending the data you
will give the stop bit.
the communication is stopped.so after sending the data you
will give the stop bit.
5 :: Explain what is dirac delta function and its fourier transform and its importance?
Dirac delta is a continuous time function with unit area and
infinite amplitude at t=0.
the fourier transform of dirac delta is 1.
using dirac delta as an input to the system, we can get the
system respnose. it is used to study the behavior of the
circuit.
we can use this system behavior to find the output for any
input.
infinite amplitude at t=0.
the fourier transform of dirac delta is 1.
using dirac delta as an input to the system, we can get the
system respnose. it is used to study the behavior of the
circuit.
we can use this system behavior to find the output for any
input.
6 :: Can we create a table with out primary key?
yes we can create
CREATE TABLE Orders
(
OrderID SMALLINT UNSIGNED NOT NULL PRIMARY KEY,
ModelID SMALLINT UNSIGNED NOT NULL,
ModelDescrip
);
CREATE TABLE Orders
(
OrderID SMALLINT UNSIGNED NOT NULL PRIMARY KEY,
ModelID SMALLINT UNSIGNED NOT NULL,
ModelDescrip
);
7 :: What is the difference between ProtoPlus and ProtoPlus Lite?
ProtoPlus prototyping daughter card - A plug-in,
2-connector, multi-layer, low noise, and stackable
prototyping board that plugs into the Texas Instruments DSK
and EVM DSP development systems.
ProtoPlus Lite prototyping daughter card - A Low cost,
2-connector, plug-in prototyping board that plugs into the
Texas Instruments DSK and EVM DSP development systems.
2-connector, multi-layer, low noise, and stackable
prototyping board that plugs into the Texas Instruments DSK
and EVM DSP development systems.
ProtoPlus Lite prototyping daughter card - A Low cost,
2-connector, plug-in prototyping board that plugs into the
Texas Instruments DSK and EVM DSP development systems.
8 :: Do you know How is the non-periodic nature of the input signal handled?
Fourier series is applied for periodic signals since they
violate Dirchilet's conditions. This will give the
fundamental and harmonic signal components for periodic
signals.
For non-periodic signals if we need frequency analysis as a
whole then fourier transform is applied for the entire
duration. Provided its energy is finite and follows other
conditions as laid out by Dirchilet.
violate Dirchilet's conditions. This will give the
fundamental and harmonic signal components for periodic
signals.
For non-periodic signals if we need frequency analysis as a
whole then fourier transform is applied for the entire
duration. Provided its energy is finite and follows other
conditions as laid out by Dirchilet.
9 :: Please write a code in C / Verilog to implement a basic FIR filter?
%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');
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');