What you’ll learn
Course structure & Assessments
4 credit course, weekly online assignments, 2 in-person invigilated quizzes, 1 in-person invigilated end term exam. For details of standard course structure and assessments, visit Academics page.
MODULE 1 | Foundations of HDL and FPGA Design: Introduction to Verilog HDL, FPGA concepts, and basic digital design techniques. |
MODULE 2 | Advanced Verilog and Design Techniques: Finite State Machines, advanced Verilog constructs, and timing analysis basics |
MODULE 3 | CPU Design: Designing a basic CPU architecture, including datapath and control unit, using Verilog. |
MODULE 4 | System Integration: Memory systems, peripheral interfaces, and bus protocols for digital system integration. |
MODULE 5 | Advanced Topics and System Design: Advanced timing analysis, design for testability, and debugging techniques. |
MODULE 6 | System-on-Chip Concepts: Overview of SoC architectures, IP cores, and system-level design considerations. |
Prescribed Books
The following are the suggested books for the course:
“Digital Design and Computer Architecture” by David Harris and Sarah Harris, Morgan-Kaufmann 2012
Advanced Digital Design with the Verilog HDL” by Michael D. Ciletti, Pearson 2017
About the Instructors
Nitin Chandrachoodan received his BTech (electronics and communication engineering) from IIT Madras in 1996, and PhD from the University of Maryland at College Park in 2002, in the area of high-level synthesis techniques for mapping DSP algorithms to architectures. He has been with the department of electrical engineering at IIT Madras since 2004, where he is currently an professor.
His research interests include digital systems design and design automation tools and techniques, as well as design of embedded systems with a special focus on assistive technologies. He has taught graduate courses on digital integrated circuit design and on mapping algorithms to architectures, and a UG course on data structures and algorithms, as well as a laboratory course on digital design using FPGAs. He is an associate editor of the Springer Journal of Signal Processing Systems.
Other courses by the same instructor: CS2101 - Embedded C Programming , EE3102 - Control Engineering , - Humanities Elective , - Humanities Elective , - Humanities Elective , - Humanities Elective , - Humanities Elective , - Humanities Elective and - Humanities Elective