Friday, 22 April 2016

Exp-10 DSP Application

The last experiment was based on a application of signal processing. The signal had to be a one-dimensional signal. This was a group experiment. We had to find patents and ieee papers related to a single application. We were thinking about a audio processing application and after some research we came up with comb filter for noise cancellation.
My group members: Umesh Gawale, Pranav Ghaisas, Tejashree Gore, Natasha Choudhary
Application: Noise Cancellation using Comb Filter
The patents of group were:-
1. Adaptive Frame Comb Filter System
2. Inverse hyperbolic comb filter 
3. Comb Filter
4.Speech signal processor using comb filter
My patent was : Inverse hyperbolic comb filter 
Patent No:- US5270803 
Review:
The patent describes an inverse hyperbolic comb filter. It decodes an encoded signal by subtracting a vertically filtered and horizontally filtered version of the encoded signal from a delayed version of the encoded signal. The output is further horizontally filtered. This gives first output. Later, a twice delayed version has the first output signal subtracted  there from to provide a second output.The inverse hyperbolic comb filter may be used in encoding signals where input signal components are first filtered through respective inverse hyperbolic comb filters to provide filtered component signals which are then provided to a combiner to generate an encoded output signal.With simple comb filters, cross luminance artifacts may result due to high frequecny chroma. Another drawback is loss of high frequency luma resolution of reference points near the innermost corner areas which may give rise to cross-artifacts.
The IEEE paper reviewed was titiled 'New Method of FIR comb Filtering'.In this paper, it is mathematically proven that FFT comb filter can be transformed to a computational efficient equivalent structure. It is also shown this structure can be used as simple FIR filter. The FIR filter removes statbility issues and proper choice of m(radix2) allows FIR filter wih no multiplications avoiding all quantization issues.

https://drive.google.com/open?id=0Bzfvoo_rjoa8S19TN2V1SE9kckk

Exp-9 FIR using Frequency Sampling

This was our second last experiment on scilab, similar to the earlier one-FIR filter design using frequency sampling. The input specifications were taken as usual and the magnitude response was plotted.The basic concept of frequency sampling is sampling the desired frequency response Hd (ω) at ω=(2πk/N).
It is seen that as filter order increases, number of lobes in stop band also increases.Ripples in stop band were obtained of decreasing amplitude. Since, phase plot was linear, output will not be distorted. The phase plot of LPF and HPF were similar since order of both the filters is same.

For this experiment, we spoke to some seniors who did their pracs right behind us. They helped us getting the code right. We had a little bit of confusion regarding the phase and magnitude plot as google showed us plots which did not have limitation from (-pi,pi].Later it was sorted out. Term tests were over by this time but we were surely going to lose our grades as the week passed.
Codes at: google drive 


Exp-8 FIR using window function

In this experiment, we designed a linear phase FIR filter - low pass and band pass. We plotted the magnitude and phase plot of both the filters.  In this method, the desired impulse response is multiplied with window function w(n) to obtain h(n) which after Z-transfrom yields the transfer function H(z).
The Input specifications are Pass band frequency,Stop band frequency, Pass band attenuation, Stop band attenuation, Sampling frequency. Selection of window depends on Stop band attenuation in dB.The window function i used was Hamming window.The phase  plot being linear, there will be no distortion at the output. We later also observed attenuation in stop band is maximum for Blackman window and minimum for Rectangular window.

As we go on increasing As, depending upon filter, side lobe width decreases with increasing main lobe width.

We faced some difficulty in getting the coefficients and phase plot in the same scilab code so we wrote the c code for getting the h(n) coefficients and using these coefficients we plotted the phase plot in a separate scilab program. Term tests were on the line. Even last moment assignments caused us a delay. 
codes can be found at:- https://drive.google.com/open?id=0Bzfvoo_rjoa8S19TN2V1SE9kckk


Exp-7 DSP Processor

This was the first hardware based demo of signal processing. Our senior conducted this for us in the class.The session was conducted using the TMS320F28375 DSP board. Emulation was observed of real time audio input in class demonstration.  We learned to perform basic arithmetic functions-
1.Add,sub,mul
2. Bitwise operations - AND, NOT
3. Shifting operation - shift left/right and rotate left/right
It was the first experience with the dsp processor.We also wrote examples based on register values after every operation. 

Exp-6 OAM/OSM

Back to c programming for this experiment, we performed overlap add and overlap save methods to determine linear convolution. This method is the one that is of more practical use as it allows a very long continuous signal to be processed.
We use the overlap add method to compute the convolution of a signal of a long length.Which is broken down into small sequences and after performing the operations on each of them,they are combined to obtain the final output.Breaking down i.e. buffering small portions of the signal allows better computational efficiency.These are algorithms for decreasing delay in getting the output.

This experiment actually had to be done before the two filter designs but we missed this due to some negligence that cost us our grade.One of the lowest grades i have ever got in my journal uptil now was a little bit disheartening. 


Code at:- https://drive.google.com/open?id=0Bzfvoo_rjoa8S19TN2V1SE9kckk

Exp-5 Chebyshev Filter

This was the second experiment using scilab. It was similar to the previous experiment but here we were designing a chebyshev filter.The Chebyshev filter was designed using the algorithm discussed in class.In chebyshev, the number of ripple peaks represent the order of the filter. Magnitude and pole zero plot was plotted of both LPF and HPF chebyshev filters. The poles were within the unit cirle.
The magnitude spectrum is equi-ripple in passband and monotonic in stop band. In butterworth filter, it was observed the opposite. For the same parameters the order of chebyshev filter is less than of butterworth filters.

This being similar to the butterwoth code, was relatively easier and thus took lesser time to finish. We had started this experiment before butterworth but completed it after finishing butterworth.

Code can be found at :- https://drive.google.com/open?id=0Bzfvoo_rjoa8S19TN2V1SE9kckk

Exp-4 Butterworth Filter

This was our first expirience working with scilab so it took quite sometime to get used to it. We were aware the inbuilt function buttmag() which made our work easier. According to the input specifications of attenuation(pass band and stop band) and passband and stopband frequencies, we plotted the magnitude and pole zero plot of low pass and high pass butterworth filter.
 We learned that the butterworth filter is monotonic in it's pass band as well as stop band i.e. it does not have any ripples.Also how steep the transition band is depends on the order of the filter.

Inspite of help from google, we took a considerable amount of time to finish this experiment. Working during sdp sessions was also not fruitful. It took us 3 weeks to get through this one.  

Codes at : https://drive.google.com/open?id=0Bzfvoo_rjoa8S19TN2V1SE9kckk