Resume

Sign in

Engineering Design

Location:
Tucson, Arizona, 85719, United States
Salary:
80000-90000
Posted:
May 18, 2011
Email:
f93zlm@r.postjobfree.com
Contact Info:
********@*****.*******.***


SUNDARARAMAN KUNCHITHAPATHAM

****, * ******** ****., *** 110, Tucson, AZ 85719

Email: f93zlm@r.postjobfree.com

Phone: (520) ***-****

________________________________________________________________________________________________________

EDUCATION Master of Science (M.S.) - Electrical and Computer Engineering, University of Arizona.

Graduation Date: May 2011, CGPA: 3.75/4

Bachelor of Engineering (B.E.) - Electronics and Communication Engineering, Anna University.

Graduation Date: May 2009, CGPA: 81%

COURSE WORK

Graduate: Introduction to Algorithms, Operating Systems, Computer Architecture, Distributed Computing,

Computer Aided Logic Design, Random Process for Engineering Applications, Engineering of Computer

Based Systems, Digital Image Analysis.

Undergraduate: Data Structures in C, Object Oriented Programming, Microprocessors and Microcontrollers,

Computer Organization, Computer Hardware and Interface, Embedded Systems

PROGRAMMING SKILLS

Languages: Proficient: C, C++, MATLAB

Beginner: Java, Perl, Verilog

Architecture: x86, MIPS, DLXOS

API: CUDA, SystemC, OpenMP, MPI

Tools: GNU, SVN

PROFESSIONAL EXPERIENCE

Graduate Teaching Assistant Aug 2010-Dec 2010

Department of Electrical and Computer Engineering, University of Arizona

Teaching Assistant for course ECE372-Microcontroller Design. Responsibilities include assisting students in

developing small projects using PIC24 microcontroller which was programmed in Embedded C using MPLab.

PROJECTS

MAILBOX AND MULTI-LEVEL FEEDBACK QUEUES FOR DLXOS

Implemented message passing interface using mailbox for processes to communicate in a distributed memory

system. Also implemented a multi-level feedback queue for process scheduling. The multi-level feedback queue was

implemented to prevent resource starvation by a single process. (DLXOS, C)

MONITOR LIKE SYNCHRONIZATION FOR DLXOS

Implemented a monitor-like synchronization using locks and conditional variables to address the bounded buffer

problem. Using locks, mutual exclusion is guaranteed and using conditional variables, dependencies between various

processes are sorted. (DLXOS, C)

EDGE DETECTION FOR PARALLEL FRAMEWORK

Implemented Sobel Edge Detection Algorithm using shared memory (OpenMP) and distributed memory (MPI) model

obtained up to 5x speedup. Then implemented the same algorithm in CUDA kernel and obtained up to 90x speedup

(CUDA, OpenMP, MPI, C)

HIGH LEVEL SYNTHESIS TOOL

Designed and implemented a high-level synthesis tool capable of creating a synthesizable high-level state machine

(HLSM) description in Verilog from a C-like sequential program supporting conditional and loop constructs while

providing various scheduling alternatives. An Efficient file parsing function was written in C to read a generic C like

sequential file (C, Verilog, Xilinx ISE)

SYSTEM-LEVEL DESIGN OF HARWARE/SOFTWARE PARTITIONED APPLICATION

Implemented the matrix multiplication application as a hardware/software partitioned design consisting of software

component, hardware co-processor and memory communicating over a shared bus using SystemC and Transactionlevel

modeling (SystemC/C++, TLM)

SYSTEM-LEVEL DESIGN OF FIR FILTER

Implemented a system-level design of FIR filter using SystemC and Transaction-level modeling and did time accurate

performance estimation (SystemC/C++, TLM)

ADVANCED HIGH-PERFORMANCE BUS

Implemented Advanced Microcontroller Bus Architecture - Advanced High-Performance Bus (AMBA-AHB) in

Archulator framework to study the change in the performance of the Archulator. The basic archulator framework

consists of processor core, system bus, instruction and data cache all implemented using SystemC (SystemC/C++,

TLM)

AUTOMATIC LICENSE PLATE CHARACTER RECOGNITION

Developed software which recognizes the character present on the license plate and displays the license information

to the user. A template matching algorithm was used to match the characters extracted from the license plate to the

original characters. Totally 36 templates were used to account for both alphabets and numbers (MATLAB)