Skip to the content of the web site.

ECE720T5, Winter 2014: Cyber-Physical Systems

General Information

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

Room: EIT 3151 Moved to EIT 3141

Office Hour: Based on appointment

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

You should make sure to read the required papers before coming to class. The list of required papers for a given class will be published by Wednesday 11:59PM the week before. You are not required to read the other references, but you might want to keep a copy on hand because they might be discussed in class.

Lecture Topic Slides Papers Student Presentations
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 Required Reading:
Further References:
Lecture 8: OS Required Reading: Further References:
Lecture 9: Timing Analysis 1 Required Reading: Further References:
Lecture 10: Timing Analysis 2 Required Reading:
Further References:
Lecture 11: Models and Verification Required Reading: Further References:
Lecture 12: Project Presentations Required Reading:
Further References:

Required Reading List

This is a list of papers that will be required reading during the course. Please see the table above to determine which papers are assigned for each class. You can not select one of these papers for your formal presentation. For students selecting the applied track, the final exam will be focused on the required papers and additional instructor slides. I reserve the right to change this list before the end of the course.

Introduction to CPS

CPS Applications

Predictable Computer Architectures

OS Abstractions

Timing and Performance Analysis

Models and Verification

Paper Presentation 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 list below (divided by topic). If you wish to cover a different but related topic, please contact the instructor.

Seminar Presentation Details

This year, each presentation will be allocated a 18 minutes slot + 5 minutes for questions. The presentation will be run "conference style", i.e., all questions will be asked at the end. Keep into mind this essential points when preparing your presentation:

  • Structure your presentation with a clear introduction, main section and conclusions.
  • While I will introduce the main topic in class before each seminar, keep into mind that the audience is not very familiar with the specific problem at hand. Hence, include enough details that students can clearly understand the motivation and problem covered by the paper.
  • Since you have limited time, focus more on discussing good points/results/limitations of the main solution discussed in the paper rather than trying to cover all technical details.
  • Try to provide a critique of the paper (even if not perfect): what did you like about the paper? What do you think are weaknesses? Could it be improved?

You will be evaluated based on: 1. oral presentation 2. slides quality and organization 3. content. To simplify running the presentation during class, if possible provide your slides to the instruction in either .pdf or powerpoint format before the start of the lecture (either by email of USB stick). If you prefer to use a different file format, you can alternatively use your own laptop.

CPS Applications

Predictable Computer Architectures

OS Abstractions

Timing and Performance Analysis

Models and Verification

Course Deadlines

List of deadlines for the course project - research track. Please see the syllabus and Lecture 1 slides for additional details.

  • Project proposal - Feb 3 8:00AM
  • Literature Review - Mar 3 8:00AM
  • Project presentation - during Lecture 12, April 1
  • Project report - due on final exam date
  • Final - To Be Announced

List of deadlines for the applied track. Please see the syllabus and Lecture 1 slides for additional details.

  • Midterm report - Mar 3 Mar 10 8:00AM
  • Project presentation - during Lecture 12, April 1
  • Project report - April 4 11:59PM (last day of class)
  • Final - To Be Announced

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.

The final exam for the applied track consists of a traditional 2 hours and 30 mins written exam. See Lecture 1 slides for more details. This is an example set of questions for the final exam, applied track - note that the question set is not necessarily representative of the length of the exam, but it covers the main types of questions that will appear in the exam.