Announcements Real Time Signal Processing Laboratory Reading Guides
Coming up! EE69014

Subject Type: Core
LTP: 0-0-3 | Credits: 2
Location: N240, SIP Lab., Dept. Electrical Engineering
Time: Slot X / Wed (1:30 PM - 4:25 PM) (M. Tech - ISP)
Slot P / Fri (1:30 PM - 4:25 PM) (Dual Degree - EE)

Instructor(s): Dr. Debdoot Sheet (Slot X) + Prof. Pranab K. Dutta (Slot P)
TA(s): Priya Ranjan Muduli, Anjith George (Slot X) + Arunava Naha, Aparna Mohanty (Slot P)
Linear Algebra - Gilbert Strang
Digital Signal Processing - Alan V. Oppenheim
Design and Analysis of Algorithms - Dana Moshkovitz and Bruce Tidor
Performance Engineering of Software Systems - Saman Amarasinghe and Charles Leiserson
Introduction To MATLAB Programming - Yossi Farjoun
Computational Methods of Scientific Programming - Thomas Herring and Chris Hill

Part A: Preparatory Exercises
Objective These exercises are modelled to provide you with an exposure to theoretical foundations of algorithms, computational and space complexity estimation, enable budgeting and optimize algorithms according to hardware resource availability. The exercises are designed to empower you design multiple architectures (viz. single core vs. multi-thread, loop execution vs. vector programming) of a single functional form of multidimensional signal processing algorithm and compare theoretical complexity and hardware dependent execution complexity through code profiling.
Experiment 1
Computational complexity estimation and Code profiling on Matlab.
Estimation of polynomial order of complexity of searching, sorting (linear and bubble), DFT algorithms. Matlab coding of the algorithms and their profiling for execution complexity estimation.
>>Download the Learning Help
>>Matlab guide to Code Profiling
Experiment 2
Algorithm redesign and Parallelization for execution speedup.
The 2D and nD Convolution and DFT algorithm using nested loop, parallel loops and GPU programming (Matlab-CUDA wrapper). Code profiling for execution complexity comparison.
>>Matlab guide to the Parallel Computing Toolbox
>>Matlab guide to GPU Computing
Experiment 3
Space complexity estimation and Vector programming for multidimensional signal processing.
Functional mapping of fixed point polynomial functions using look-up tables. Dynamic range compression in imaging signals. Scan conversion of multidimensional imaging signals (Polar to Cartesian coordinate and vice versa). Linear vs vector programming. Space complexity estimation and code profiling for executing complexity comparison.
>>Ultrasound imaging wiki
S. Sikdar, et al., "Programmable ultrasound scan conversion on a media-processor based system", Proc. SPIE, vol. 4319, 2001.
Experiment 4
Fast Fourier Transform.
Implementation of Radix-2 DIT and DIF FFT algorithm in Matlab. Comparison of computational complexity, space complexity and execution complexity with the DFT algorithm.
R. M. Piedra, "Parallel 1-D FFT Implementation", Application Report # SPRA108, Texas Instruments, 1994.
Experiment 5
Fast 2D Median filter.
Implementation of the moving window fast 2D median filter in Matlab using parallel programming and estimation of space, time and execution complexity.
T. S. Huang, et al., "A Fast Two-Dimensional Median Filtering Algorithm", IEEE Trans. Acoust. Speech, Signal Process., vol. 27, no. 1, pp. 13-18, Feb. 1979.

Part B: Specialization
Coming up!