Sunday, 23 April 2017

DSPP Experiment 10 : Signal Processing Application

This was a group Experiment - finding out relevant papers and patents on DSPP applications . We, as a group of 5 - Cristina Varghese, Utkarsha Bondre, Swastikha Digha, Abhishek Gaikwad and myself had to study on IEEE papers and patents which implemented one dimensional signal processing. We chose to study "Audio Signal Processing" as an application. Each one of us reviewed a paper and a project in the aforementioned domain and decided on a common project to work on.

I reviewed the paper : " An automatic classification of bird species using audio feature extractionand support vector machines"
Authors : Pallavi Rai, Vikram Golchha, Aishwarya SrivastavaGarima VyasSourav Mishra
Link To Paper Review
Link to paper


I reviewed the patent : "Audio Signal Feature Extraction".
Patent No : EP 1403783A2
Link to Patent
Link to Patent Review

We worked on the project : "Processing and Extraction of a One Dimensional Audio Signal" which we developed on MATLAB

Link To Project Report
Link to Plagiarism Report

DSPP Experiment 9 : Basic Operations on DSP Processor

DSPP's are generally used for a specific application rather than general purpose processors.They implement Harvard Architecture, pipelining and parallel processing techniques for faster computations.
In this experiment, we got acquainted to using the code composer studio which is used for writing c codes and debugging them, generally for Texas Instruments' Processors. The DSP kit we used for this experiment was TMS320F28335.
Basic operations were performed on the board such as addition and subtraction among others. We also implemented FFT algorithms. The difference in implementing on hardware is that we have to reference the registers too while writing the code while a simple C language implementation does not require this.

DSPP Experiment 8 : Design of FIR filter using FSM Method

In experiment 7, we discussed the windowing method of FIR filter design. In this experiment, we use another method of FIR filter design, which is known as the Frequency Sampling Method (FSM).It involves uniform sampling of the desired frequency response, and performing an inverse DFT to obtain the corresponding FIR response. For practical design, we used Scilab. The formulae for DFT and IDFT were incorporated into the code and the filter parameters were taken as user input. Plot function helped us verify the results.

The flow is shown below :
Hd(w)----------------H(k)------------------h(n)
         (By sampling)             (by IDFT)

It was also observed that a factor of 2*pi has to be added every time a sign change occurs in the magnitude.

DSPP Experiment 7 : Design of FIR filter using Windowing Method

In experiment 5 & 6, we designed IIR filters viz. Butterworth Filter and Chebyshev Filter. IIR filters are not stable due their recursive nature. Also, they have non-linear phase response hence, the output of the filter appears to be distorted version of the input. What can be done to avoid this? Use FIR filters!
These are filters that have a Finite Impulse Response. and hence, output of the filter is the phase shifted input signal. Also, since they don't have any feedback, the filters are very stable. However, this requires large memory as compared to IIR filters.

There are two methods of designing FIR filters. One of them is using Windowing Method. In this method, a particular window function is chosen on the basis of the attenuation required in the stop band. 
We used a Hanning Window as the window function and wrote the code accordingly. During execution, the filter parameters like the attenuation and frequencies were given as user input similar to IIR filter design. The plot function was used to verify the response of the designed filter. A notable difference between IIR and FIR designing is that much of the calculation is done in time domain rather than the transform domain.

DSPP Experiment 6 : Chebyshev Filter Design

In experiment 5, we designed a butterworth filter which is maximally flat which has its disadvantages of higher orders.This leads to requirement of large components for the practical design of the filter and the cost of the filter increases. Butterworth filters also do not have a steep roll off factor. Thus, in applications where frequency response is more important than the constant amplitude across the frequency range and cheaper filters are required, chebyshev filter is used.

 A Chebyshev filter is one in which we can see ripples in a filter response, either in the stop band or the pass band. This experiment is similar to Experiment 5. The only difference in the filter design is in the formulae for calculating analog parameters of the filter.

We designed a Chebyshev 1 filter where the ripple exists only in the pass band and the stop band is free of it. The frequency response of the digital filter could be seen to be close enough to the desired response. As in experiment 5, we designed both LPF and HPF.

DSPP Experiment 5 : Butterworth Filter Design

This was the first experiment where we used Scilab for implementing the code. It's an open source tool for simulation. I had used Matlab earlier so I was quite comfortable using Scilab, as it is similar. Of course, if you're willing to spend some money, then MATLAB is a better software. But one should always be familiar with open source tools.
In this experiment, we wrote a code in Scilab to design a Butterworth filter wherein the various parameters like pass band attenuation, stop band attenuation, pass band frequency, stop band frequency and sampling frequency are passed as input and the order of the filter as well as its cutoff frequency is calculated. The order of filters in practical systems is very high for a desired response.

The normalized transfer function is evaluated according to the filter type,i.e LPF or HPF(replacing s by 1/s). From the normalized transfer function, the transfer function of the filter was calculated in the Laplace (s) domain and then converted to the Z domain by using the Bilinear Transform Method.
We concluded that the response by simulation was very close to the desired one and the order was high for most of the designs.