Skip to the content of the web site.

ECE720T5, Fall 2011: Cyber-Physical Systems

General Information

Lecture Time: Wednesday 11:30AM - 2:20PM

Room: EIT 3141

Office Hour: TBD

Syllabus

Calendar Description

This course covers concepts, theory and research issues in safety-critical embedded systems and Cyber-Physical Systems (CPS), with a focus on the architectural design and analysis of the underlying hardware/software computing system.

Topics include: challenges in CPS design, predictable computer architectures, scheduling of hardware resources, operating system abstractions for CPS, timing and performance analysis, modeling and verification, CPS applications.

Course Description

Cyber-Physical Systems (CPS) are systems featuring a tight integration of computation with physical processes. Applications of CPS include new generation automotive systems, high confidence medical devices, avionics, smart power infrastructure, process control, distributed robotics, and others. All such systems exhibit stringent real-time and safety requirements: computation must progress in parallel with physical processes in the environment, and system disruption can lead to catastrophic consequences. Compared to traditional embedded systems, the vision for CPS calls for open, interconnected systems rather than closed, "black box" devices.

The goal of this course is to introduce the students to the key challenges, design methodologies and research directions in the field of cyber-physical systems, with an emphasis on the design of the underlying computing architecture. In particular, we will show how CPS requirements of predictability and reliability lead to significant changes in the hardware architecture, and we will study state-of-the-art solutions in this area. Due to the multidisciplinary nature of CPS design, the course will also touch on related topics, including: predictable operating system abstractions, timing analysis, modeling and verification.

Lecture Material

Lecture Topic Slides Papers
Lecture 1: Introduction to CPS and Course Overview
Lecture 2: Introduction to Real-Time Systems Required Reading: Further References:
Lecture 3: CPS Applications Required Reading: Further References:
Lecture 4: Predictable Computer Architectures - Memories Required Reading: Further References:
Lecture 5: Predictable Computer Architectures - Interconnects Required Reading: Further References:
Lecture 6: Predictable Computer Architectures - Microarchitecture Required Reading: Further References:
Lecture 7: Predictable Computer Architectures - Heterogeneous Systems Required Reading: Further References:
Lecture 8 and 9a: Real-Time OS Required Reading: Further References:
Lecture 9b, 10, 11: Timing Analysis Required Reading - 9b: Required Reading - 10: Further References:
Lecture 12a: Monitoring and Hybrid Verification Required Reading: Further References:
Lecture 12b: Student Presentations

Reading List

Each student is required to provide a formal seminar presentation during lecture. Each seminar presentation covers one or two related research papers and shall provide an introduction followed by sufficient details for the class to understand the motivation, problems, and main solutions provided by the authors. Papers can be selected from the reading list below (divided by topic). If you wish to cover a different but related topic, please contact the instructor.

Predictable Computer Architectures

OS Abstractions

Timing Analysis

Models and Verification

Final Exam

This is an example text for the final exam (research track). Students will be generally assigned a topic close to their interests. The actual number of questions in the exam could be different from the exam, but it will be similarly structured.