Course description for EECS 598: Embedded System Design and
Synthesis
Course title: Embedded System Design and Synthesis
Instructor: Robert Dick
Description
Embedded systems are computers within other devices such as automobiles and
medical devices. This course will survey the field of real-time embedded
system design and synthesis and introduce open research topics in the automatic
design of reliable, high-performance, low power consumption, inexpensive
embedded systems.
Required text: None
Reference texts
- Wayne Wolf, "Computers as Components: Principles of Embedded
Computing System Design", Morgan Kaufman, 2001.
- Robert Dick, Multiobjective Synthesis of Low-Power Real-Time
Distributed Embedded Systems, Dept. of Electrical
Engineering, Ph.D. dissertation, Princeton University, 2002.
- Numerous research papers and book chapters will be
assigned. Students will write brief summaries of the
assigned articles.
Course goals
Prepare students for research in embedded
system synthesis and design. Introduce real-time systems
and embedded operating systems basics. Complete original
projects that may serve as foundations for further research.
Prerequisites
- Knowledge of computer organization, e.g., EECS 470 (Computer Architecture) or
EECS 370 (Introduction to Computer Organization) or EECS 373 (Design of
Microprocessor Based Systems), similar course from another university, or
similar experience and
- Knowledge of computer programming and algorithm design, e.g., EECS 281
(Data Structures and Algorithms), similar course from another university, or
similar experience.
Please email the instructor if you are missing a
prerequisite but believe your background might be sufficient.
Prerequisites by topics
- Computer programming,
- Algorithm analysis and design, and
- Fundamentals of logic design and computer organization
Lecture topics
- Introduction to embedded systems
- Overview of heterogeneous multiprocessor system-on-chip design problem
- Models and languages
- Formal methods for designing reliable embedded systems
- Heterogeneous multiprocessor synthesis
- Reliability optimization
- Real-time systems
- Scheduling
- Compilation techniques for embedded systems
- Embedded operating systems
- Low-power and power-aware design
- Novel fabrication techniques for compact and low-power embedded systems
- Emerging applications (e.g., sensing and actuation intensive applications
and user-aware computing)
- Hardware and software data compression for use in embedded systems
- Review and student presentations on short projects
Projects
Students will complete one small project and one main project. The
instructor will propose a number of possible small project topics. Students
may select from among these or propose their own ideas. Small project reports
and presentations will be required. The main course project is often an
extended version of the small project, but this is not required.
Exams
There will be a final exam covering the assigned reading.
Grading
- Projects: 50%
- Presentations: 25%
- Literature summaries: 10%
- Exams: 15%
Page maintained by Robert Dick.