Lab & Project
Overview of EECS 149/249A:
Introduction to Embedded Systems
Responsible faculty: Edward A. Lee and Sanjit A. Seshia
Format: 4 units, three hours of lecture, three hours of lab per week.
This course introduces students to the basics of models, analysis tools, and control for embedded systems operating in real time. Students learn how to combine physical processes with computation. The course has a strong laboratory component, with emphasis on a semester-long sequence of projects.
Topics to be covered include the following:
- Models of computation: finite state machines, threads, ordinary differential equations, hybrid systems, actors, discrete-events, data flow
- Basic analysis, control, and systems simulation: Bisimulations, reachability analysis, controller synthesis, approximating continuous-time systems.
- Interfacing with the physical world: sensor/actuator modeling and calibration, concurrency in dealing with multiple real-time streams, handling numerical imprecision in software
- Mapping to embedded platforms: real-time operating systems, execution time analysis, scheduling, concurrency
- Distributed embedded systems: Protocol design, predictable networking, security
Targeted students: upper-level undergraduates and beginning graduate students.
Prerequisites: EECS 16B or 20, EECS 61C, EECS 70 or Math 55
Class web page: http://chess.eecs.berkeley.edu/eecs149