CSE News Story

Embedded System Design and Synthesis


Embedded systems are computers within other devices such as automobiles andmedical devices. This course will survey the field of real-time embeddedsystem design and synthesis and introduce open research topics in the automaticdesign of reliable, high-performance, low power consumption, inexpensiveembedded systems.

Required text: None

Reference texts

  • Wayne Wolf, "Computers as Components: Principles of EmbeddedComputing System Design", Morgan Kaufman, 2001.
  • Robert Dick, Multiobjective Synthesis of Low-Power Real-TimeDistributed Embedded Systems, Dept. of ElectricalEngineering, Ph.D. dissertation, Princeton University, 2002.
  • Numerous research papers and book chapters will beassigned. Students will write brief summaries of theassigned articles.

Course goals

Prepare students for research in embeddedsystem synthesis and design. Introduce real-time systemsand embedded operating systems basics. Complete originalprojects that may serve as foundations for further research.


  • Knowledge of computer organization, e.g., EECS 470 (Computer Architecture) or EECS 370 (Introduction to Computer Organization) or EECS 373 (Design ofMicroprocessor Based Systems), similar course from another university, orsimilar experience and
  • Knowledge of computer programming and algorithm design, e.g., EECS 281(Data Structures and Algorithms), similar course from another university, orsimilar experience.

Please email the instructor if you are missing aprerequisite 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

  1. Introduction to embedded systems
  2. Overview of heterogeneous multiprocessor system-on-chip design problem
  3. Models and languages
  4. Formal methods for designing reliable embedded systems
  5. Heterogeneous multiprocessor synthesis
  6. Reliability optimization
  7. Real-time systems
  8. Scheduling
  9. Compilation techniques for embedded systems
  10. Embedded operating systems
  11. Low-power and power-aware design
  12. Novel fabrication techniques for compact and low-power embedded systems
  13. Emerging applications (e.g., sensing and actuation intensive applications and user-aware computing)
  14. Hardware and software data compression for use in embedded systems
  15. Review and student presentations on short projects


Students will complete one small project and one main project. Theinstructor will propose a number of possible small project topics. Studentsmay select from among these or propose their own ideas. Small project reportsand presentations will be required. The main course project is often anextended version of the small project, but this is not required.

Exams: There will be a final exam covering the assignedreading.


  • Projects: 50%
  • Presentations: 25%
  • Literature summaries: 10%
  • Exams: 15%
[Full Story]