Dinesh K. Bhatia

 

 


Senior Projects

I am involved in teaching at all levels of instruction. Graduate level classes tend to be more close to my areas of research. I am very interested in undergraduate education and keeping students motivated towards contemporary engineering design techniques.


Digital Circuits
The primary goal of this course is to understand basic digital circuits. Digital circuits form the basis for most of the electronic devices ranging from small electronic toys to large scale computers. The material covered in this course will deal with fundamental concepts that are used to design and implement digital circuits. All digital circuits operate based on fundamental circuits covered in this class. After completing this course, students will be able to design digital circuits of low complexity. Topics covered include: Boolean logic. Design and analysis of combinational logic circuits using SSI and MSI. Design and analysis of synchronous state machines. Use of programmable logic devices and simple CAD tools.

[Course Website]


Design Automation of VLSI Systems
This course is designed to introduce students with Physical Design Automation (DA) of VLSI systems. DA related issues for the current state of the art will familiarize students with existing techniques in VLSI design. Data structures and algorithms related to DA will provide insight into design of CAD tools. Students will understand the relationships between DA algorithms and various constraints posed by VLSI fabrication and design technology. Critical performance related parameters and their importance in DA tools will be introduced. The material will be presented in technology independent style and will prepare students for design and development of DA tools. One of the key goals is to prepare students for research in physical design automation of VLSI systems.

[Course Website]


Reconfigurable Computing Systems
Reconfigurable and adaptive computing systems is the focus of discussion. Special emphasis is given to the high density programmable devices and their impact on (general purpose) computing. CAD/CAE issues for reconfigurable computers is discussed during early parts of the course. The role of reconfigurability in co-design, co-execution, verification, and yield enhancement is also addressed. Given that it is possible to change the configuration of execution units as well as the interconnection networks, a reconfigurable computer can achieve performances that are orders of magnitude better than those of general purpose computing platforms. The course also addresses the impact of programmable logic on computer architecture. Software environments for interacting with such computing platforms are also investigated.