In this course, we tried to cover some introductory topics on digital communication. Starting with a brief review on Fourier Transform, we learned the sampling theorem, pulse code modulation, and few other techniques of digital modulation. For more details, please visit the course website.

In this course, our concentration was concepts and structures of modern operating systems, process communication, memory management, and file systems. Our students completed two hands-on assignments for the the course namely multi-level paging implementation with translation lookaside buffer (following least-recently-used replacement policy) and FAT file system implementation. For more details, please visit the course website.

In this course, my concentration was abstraction ideas in computer architecture, low level instructions: MIPS instruction set, computer arithmetic, and design of datapath and control unit. For more details, please visit the course website.

In this course, we studied all the essential components of a modern compiler. We investigated lexical analysis, syntax analysis, semantic analysis, run-time environments, code generation, and code optimization. In labs, our students implemented a full-fledged compiler with the tools like Lex and Yacc. For more details, please visit the course website.

In this course, my concentration was microcontrollers. I tried to cover all the basic things of programming ATmega microcontroller in this course. This was really a memorable course for me as this was my first experience with teaching. For more details, please visit the course website.