Teaching

Current

  • VIP:CISC/CPEG x87: “Vertically Integrated Projects”

    • The "IoT – Internet of Threats” team centers on the study of various cybersecurity threats coming with the global information network, as well as defense of mobile phones, IoT, and embedded devices against these cyberattacks. Sample projects include secure garage door design, covert channels built with smart bulbs, power-based side-channel attacks and defenses for crypto engines.

  • CPEG 222: “Microprocessor Systems”

    • Introduction to microprocessors as embedded devices. Emphasizes input/output devices, interrupts, real-time operations, high-level code debugging and interfacing to various types of sensors and actuators. Projects that address various embedded applications are a major part of the course. Final project is organized as a departmental annual robot competition.

  • CPEG 422/622: “Embedded Systems Design”

    • Provides an introduction to hardware/software co-design of embedded systems. Topics include, but are not limited to, VHDL, IP cores and customization, Memory, bus, and IO devices, Matrix multiplication, DSP, Cybersecurity, etc.

  • ELEG 662: “Digital Systems Seminar”

    • A weekly lecture and discussion on specialized topics in digital systems. It introduces graduate students to different research topics in the computer engineering area. Many internal and external speakers are invited.

  • CPEG 853/867/467/667: “Reliable Computer Systems”

    • Introduction to reliability challenges in computer systems, including permanent, transient, and intermittent faults. Various types of redundancy for fault tolerant computing are studied. Hardware/software approaches for reliability enhancement in various computer systems are examined, emphasizing tradeoffs involving performance, power, and reliability.

Former

  • CPEG 202: “Introduction to Digital Systems”

    • Analysis and design of logic circuits. Topics include: Boolean algebra and its application to digital circuits, simplification of Boolean functions, design of combinational circuits at gate level and at component level. Analysis and design of synchronous and asynchronous sequential state machines.

  • ELEG/CPEG 652: “Principles of Parallel Architectures”

    • Provides an introduction to the principles of parallel computer architectures. Topics include, but are not limited to, introduction-level, thread-level, and processor-level parallelism, pipelining, branch prediction, memory hierarchy, coherency and consistency, runtime and compile-time optimizations, etc.