EE 249 - Design of Embedded Systems: Models, Validation and Synthesis - Fall 2012
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
Design complexity, examples of embedded and cyber-physical systems, traditional design flows, Platform-Based Design, design capture and entry.
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.
Definition of architecture, examples. Distributed architecture, coordination, communication. Real time operating systems, scheduling of computation and communication.
Definition of mapping and synthesis. Software synthesis, quasi static scheduling. Communication Synthesis and Communication-Based Design. Design Space Exploration.
Validation vs. Simulation. Simulation of heterogeneous systems. Formal methods. Verification of hybrid system. Horizontal and Vertical Contracts. Interface automata and assume-guarantee reasoning.
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 CVS.