Spring 2015





Course Development

EE 249 - Design of Embedded Systems: Models, Validation and Synthesis - Spring 2016

Current Offering:

This course web page is now hosted on bCourses, Spring 2016.

Material from Previous Offering (Spring 2015):

Edward A. Lee

This course web page was hosted on bCourses, Spring 2015.

Material from Fall 2012 Offering of the Course:

Alberto Sangiovanni-Vincentelli, Pierluigi Nuzzo

The emerging information technology scenario features a swarm of devices that are immersed in all kinds of physical processes and offer a variety of personal or broad use services, from health monitoring to vehicle, building and power management. In these cyber-physical systems computing, networking and control are combined with mechanical, electrical and chemical processes. The increasing sophistication of these systems requires innovations in several technology domains as well as design methodologies. This class merges theoretical aspects with applications to give students a grasp of the fundamentals of system design as well as a taste of the problems posed by complex applications. It presents theories, design methods and tools that help handle the growing complexity and heterogeneity of embedded and cyber-physical systems. Approaches to a new "system science" are demonstrated, where heterogeneity, concurrency, multiple levels of abstraction play a fundamental role and where a set of correct-by-construction refinement and composition techniques are used to substantially reduce design time and errors. System-level design methodologies and tools will be illustrated on several applications including car electronics, building automation and electrical power systems control. During the Lab sessions, methodologies and tools will be demonstrated on industrial strength platforms together with specific design cases. During the discussion sessions, recent results and papers will be presented to the class by the students.

Prerequisites:  There is no formal prerequisite for this course, but some exposure to the basics of real-time embedded system and an inclination to formal reasoning is welcome.


Download the Fall 2012 Course Flier

We will be using Piazza this semester for all course-related communications. Please enroll in the EE 249 Piazza site by using the following link: https://piazza.com/berkeley/fall2012/ee249

Class Organization and Tentative Syllabus:

  1. Introduction
  2. Design complexity, examples of embedded and cyber-physical systems, traditional design flows, Platform-Based Design, design capture and entry.

  3. Functional modeling, analysis and simulation
  4. Overview of models of computation. Finite State Machines, Process Networks, Data Flow, Petri Nets, Synchronous Reactive, Hybrid Systems. Unified frameworks: Tagged Signal Model, Agent Algebra. Compositional methods and Contract-based Design.

  5. Architecture and performance abstraction
  6. Definition of architecture, examples. Distributed architecture, coordination, communication. Real time operating systems, scheduling of computation and communication.

  7. Mapping
  8. Definition of mapping and synthesis. Software synthesis, quasi static scheduling. Communication Synthesis and Communication-Based Design. Design Space Exploration.

  9. Verification
  10. Validation vs. Simulation. Simulation of heterogeneous systems. Formal methods. Verification of hybrid system. Horizontal and Vertical Contracts. Interface automata and assume-guarantee reasoning.

  11. Applications
  12. Automotive: car architecture, communication standards (CAN, FlexRay, AUTOSAR), scheduling and timing analysis. Building automation: Communication (BanNet, LonWorks, ZigBee). Aircraft vehicle management system. Electrical power system embedded control.

To modify this page, use SVN.

©2002-2018 Chess