Teaching


Spring 2023:

CS4380/CS5331: Embedded Systems/Special Problems in CS: Cyber Physical Systems
This course focuses on cyber physical systems (CPS) implementation with embedded systems (ES). These systems include wearables, Internet-of-Things (IoT), drones, robots, self-driving cars, and other autonomous devices. These systems need to be co-designed with knowledge and skills of both hardware and software. This course introduces the fundamental concepts including discussion on system modeling, hardware considerations, software considerations, and critical concepts including interrupts and real-time algorithms.
CS5375: Computer Systems Organization and Architecture
Introduction to the architecture, organization, and design of computer systems. Topics include processor, control andmemory design, computer arithmetic, I/O, and a brief introduction to multiprocessors.

Fall 2022:

CS3375: Computer Architecture
Introduction to computer architecture concepts and recent developments. Computer abstractions and technology trends, performance models, computer arithmetic, organization and architecture of pipelined processor systems, instruction level parallelism, memory organization, and fundamentals on multiprocessor systems and parallelism.

Spring 2022:

CS4331/5331: Special Topics/Problems in Computer Scinece: CPS with Embedded Systems
This course focuses on cyber physical systems (CPS) implementation with embedded systems. CPS includes wearables, Internet-of-Things (IoT), drones, robots, self-driving cars, and other autonomous devices. These systems need to be co-designed with knowledge and skills of both hardware and software. This course introduces the fundamental concepts including discussion on CPS system modeling, hardware considerations and design, software considerations and critical concepts including interrupts and real-time algorithms, prototyping, testing, optimization, and regulation.
CS3350: Computer Organization and Assembly Language Programming
Introduction to the organization of single-processor computer systems via Assembly Language. Topics addressed include basic concepts of computer architecture and organization, assembly programming, interfacing assembly with High Level Languages, sub-procedures and macros, I/O devices, interrupts, and multitasking issues.

Fall 2021:

CS4366: Senior Capstone Project
A project-oriented course intended not only to consolidate most theoretical aspects of software engineering, but also to emphasize team work and foster communication skills. Projects are formulated, formally proposed, designed, implemented, tested, documented, and demonstrated. Link to project related page.

Spring 2021:

CS4331/5331: Special Topics/Problems in Computer Scinece: Cyber Physical Systems
This course focuses on cyber physical systems (CPS), which combines the cyber domain of computation with the physical domain of real-world in a close-loop configuration. The topics will include the cyber and physical domain modeling, cyber-physical interfacing hardware, microcontrollers, artificially intelligent algorithms such as machine learning and deep learning, real-time feedbacks, and cloud-, fog-, and edge-computing.

Fall 2020:

CS4331/5331: Special Topics/Problems in Computer Scinece: Embedded Systems
Introduction to hardware/software co-designed embedded systems for wearables, Internet-of-Things (IoT), robotics, and other smart devices. Course content includes discussion on system modeling, hardware consideration, design, and simulation, software programming, real-time constraints, adaptive and intelligent algorithms, prototyping, testing, optimization, and regulation.