CS 522, Embedded Systems

Spring 2012 - 2013


Purandar Bhaduri, ext: 2360 (email: pbhaduri)

Teaching Assistants

  1. Debjani Saha (email: debjani)
  2. Rahul Kundra (email: r.kundra)
  3. Lalatendu Behera (email: lalatendu)

TA Assignment for Labs


 Edward A. Lee and Sanjit A. Seshia, Introduction to Embedded Systems, A Cyber-Physical Systems Approach, http://LeeSeshia.org, ISBN 978-0-557-70857-4, 2011. A copy of the book can be downloaded from the website. Here is Version 0.5 (August 2010 edition). This will be the main textbook. The slides for the course EECS 149 at Berkeley based on the book.


Links to additional material used in the course will be provided in the class.

Reference Books

You may refer to the following books for additional reading.

  1. P. Marwedel, Embedded System Design. Springer Verlag, 2006. (Available in Indian edition from New Age International, New Delhi.) The author’s course material (including lecture slides) from the first edition. The slides for the second edition of the book.

  2. W. Wolf, Computers as components: principles of embedded computing system design. Morgan Kaufmann, 2005.

  3. G.C. Buttazzo, Hard real-time computing systems: predictable scheduling algorithms and applications. Kluwer Academic Publishers, 2005.     

  4. H. Kopetz, Real-time system design principles for distributed embedded applications, Springer, Indian edition, 1997.


Assignments, Seminar/Term Paper    15%

Midsem                                            35%

Endsem                                            50%

Solutions to Midsem Exam

Other Sources

CIS 540: Principles of Embedded Computation, Spring 2013 at UPenn with lecture notes by Rajeev Alur.


EE249 Course at Berekeley (Design of Embedded Systems: Models, Validation and Synthesis, Fall 2012) with lecture notes by Alberto L. Sangiovanni-Vincentelli.


Structure and Interpretation of Signals and Systems by Edward Lee and Pravin Varaiya. The second edition can be downloaded from the website.


Feedback Systems: An Introduction for Scientists and Engineers by Karl J. Astrom, Richard M. Murray. Publisher: Princeton University Press 2008. This site contains the complete text for the book.


Matlab and Simulink based tutorials from the MathWorks website.


Shorter Simulink tutorials from Ohio State University, the University of Michigan and by Tom Nguyen.


Some tutorial slides on Matlab/Simulink/Stateflow by Reinhard von Hanxleden.


Stateflow Documentation from MathWorks. Also see a stateflow example, Modeling a Bouncing Ball in Continuous Time.


 Lecture Notes on Hybrid Systems by John Lygeros.


ARTIST Network of Excellence on Embedded Systems Design is an excellent source containing a wealth of material on research on embedded systems. In particular, look at the Dissemination and Course Material Available Online page.


Lecture Slides of Reinhard von Hanxleden on Modeling Reactive Systems (2005) and Model-Based Design and Distributed Real-Time Systems (2006/07 and 2008/09).



The synchronous hypothesis and synchronous languages, D. Potop-Butucaru, R. De Simone, J.-P. Talpin, in The Embedded Systems Handbook, CRC Press, 2005. See also, The Synchronous Languages Twelve Years Later, A. Benveniste et al, Proc. of the IEEE, 91(1), special issue on Embedded Systems, 64-83, Jan 2003.



  1. The ESTEREL Language (see the link on main papers and read “The Foundations of Esterel” and “The Esterel Primer”.)

  2. Esterel Studio from Esterel Technologies


The original Statecharts model proposed by David Harel

  1. Statecharts: A Visual Formulation for Complex Systems, David Harel, Science of Computer Programming 8(3): 231-274 (1987). Copy from the author’s website.

  2. STATEMATE: A Working Environment for the Development of Complex Reactive Systems, David Harel, Hagi Lachover, Amnon Naamad, Amir Pnueli, Michal Politi, Rivi Sherman, Aharon Shtull-Trauring, Mark Trakhtenbrot, IEEE Trans. Software Eng. 16(4): 403-414 (1990)


UML and UML State Machines


  1. The UML Resource Page from OMG.

  2. UML 2.0 Tutorial by Ileana Ober.

  3. Unified Modeling Language 2.0 by Harald Störrle and Alexander Knapp.

  4. Executable Object Modeling with Statecharts, D. Harel and E. Gery, Computer 30:7 (July 1997), IEEE Press, 31-42 (cover feature).

  5. Slides on “UML State Machines and Statecharts” (Part 1 and Part 2) by Bruce Powell Douglass.

  6. Class 505/525: State machines and Statecharts, Bruce Powel Douglass, Proceedings of Embedded Systems Conference, San Francisco 2001.

  7. Rhapsody: A Complete Life-Cycle Model-Based Development System, Eran Gery, David Harel, Eldad Palachi, IFM 2002, pp 1-10.

Free copy of Real-Time Systems: Specification, Verification and Analysis, Mathai Joseph, Ed. Prentice-Hall, 1995.

Some Important Papers

1.      Embedded System Design for Automotive Applications, A. Sangiovanni Vincentelli, M. Di Natale, IEEE Computer, Vol 40 (10), Oct. 2007, pp 42-51.

2.      Design of Embedded Systems: Formal Methods, Validation and Synthesis, S. Edwards, L. Lavagno, E. Lee, A. Sangiovanni-Vincentelli, Proceedings of the IEEE, vol. 85 (n.3) - March 1997, pp 366-290.

3.      System level design paradigms: Platform-based design and communication synthesis, A. Pinto et al,  ACM Transactions on Design Automation of Electronic Systems 11(3): 537-563 (2006). See also, Platform-Based Design for Embedded Systems, L. Carloni et al, in R. Zurawski (Ed.), The Embedded Systems Handbook, CRC Press , 2005 and  System design: traditional concepts and new paradigms, A. Ferrari and  A. Sangiovanni-Vincentelli, International Conference on Computer Design 1999 (ICCD '99),  pp 2-12.

4.      The Discipline of Embedded Systems Design, T. A. Henzinger and J. Sifakis, IEEE Computer Vol. 40, Issue 10, pp 32-40, 2007.

5.      The embedded systems design challenge, Thomas A. Henzinger and Joseph Sifakis, Proceedings of the 14th International Symposium on Formal Methods (FM), Lecture Notes in Computer Science 4085, Springer, 2006, pp. 1-15.

6.      From Control Loops to Real-Time Programs, P. Caspi and O. Maler, Handbook of Networked and Embedded Control Systems, 395-418, 2005.

7.      Real Time Scheduling Theory: A Historical Perspective, L. Sha et al, Real-Time Systems 28(2-3): 101-155 (2004).

8.      Scheduling algorithms for multiprogramming in a hard-real-time environment, C.L. Liu and J.W. Layland,  J. ACM Vol. 20 (1), 1973, pp. 46–61.

9.      Liu and Layland's schedulability test revisited, Raymond R. Devillers and Joël Goossens, Inf. Process. Lett. 73(5-6): 157-161 (2000).

10.  The time-triggered architecture, H. Kopetz and G. Bauer, Proceedings of the IEEE, 91(1):112--126, January 2003.

11.  Timed Automata, R. Alur,  NATO-ASI 1998 Summer School on Verification of Digital and Hybrid Systems. See also, Timed Automata: Semantics, Algorithms and Tools, J. Bengtsson and W. Yi, Lectures on Concurrency and Petri Nets 2003, pp 87-124 and Foundation for Timed Systems, P. Bouyer, ARTIST2 Summer School on Component & Modelling, Testing & Verification, and Static Analysis of Embedded Systems, Sept 29 - Oct 2, 2005.

12.  Model-based Framework for Schedulability Analysis Using Uppaal 4.1,  Alexandre David, Kim Guldstrand Larsen, Jacob Illum Rasmussen and Arne Skou, in Model-Based Design for Embedded Systems, pp. 93-119, CRC Press LLC, 2010.

13. Modeling Cyber-Physical Systems, Patricia Derler, Edward A. Lee, Alberto L. Sangiovanni-Vincentelli, Proceedings of the IEEE 100(1): 13-28 (2012)


Homework Policy

Late assignments would be penalised by deducting (10 × no. of days of lateness) % of the marks. Any form of copying will incur zero marks.



1.      (Due 4 February, Monday)

Solve Exercise 6 from Chapter 2 (page 41 in Version 0.5) of the textbook using Simulink. Send the simulation results by email to the TA assigned to you and also show a demo to him or her.

2.      (Due 18 March, Monday)

Construct a model of the hybrid automaton described in Exercise 4.10 (a) from Chapter 4 (page 105 - 106 in Version 0.5) of the textbook using Simulink/Stateflow. Use the parameter values specified in the exercise and send the model and simulation runs to the TA concerned. You also need to give a demo to your TA if asked. For an explanation of Zeno behaviour see the page Simulation of a Bouncing Ball and the Lecture Notes on Hybrid Systems by John Lygeros.



 back to homepage