A Synchronous Object-Oriented Design Flow for Embedded Applications

  • P. G. Plöger
  • Reinhard Budde
  • Karl H. Sylla


The selection of hardware components for embedded controllers is strongly influenced by timing constraints to be met. We present a design flow for synchronous object-oriented for embedded applications, which integrates timing estimations into the design process. It is based on the language synchronousEifel sE which unifies the synchrony hypothesis with OO design principles. sE uses Synchronous Automatons, a compact and optimized intermediate language. This representation allows to apply both hardware evaluation and software optimization techniques. Code is produced in a retargetable way which enables execution time evaluation on a high level. Thus the synchrony hypothesis may get validated, target processor selection can be postponed to a late design stage, and true hardware-software co-design becomes possible. An example for a successful design is given.


Basic Block Design Flow Input Event Assembly Code Intermediate Language 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Felice Balarin, Harry Hsieh, Attila Jurecska, Luciano Lavagno, and Alberto Sangiovanni-Vincentelli. Formal verification of embedded systems based on CFSM networks. In Proc. 33rd Design Automation Conference, 1996.Google Scholar
  2. [2]
    A. Benveniste and G. Berry. The synchronous approach to reactive and real-time systems. Proceedings of the IEEE, 79 (9), 1991.Google Scholar
  3. [3]
    Grady Booch. Object-Oriented Analysis and Design with Applications. Benjamin Cummings, Redwood City, 2 edition, 1994.Google Scholar
  4. [4]
    R. Budde. The Design and Programming Language synchronousEifel sE. Technical report, GMD-AiS, St. Augustin, 1997.Google Scholar
  5. [5]
    Pai Chou, Ross B. Ortega, and Gaetano Borriello. The chinook hardware/software co-synthesis system. In Proceedings of the Eight International Symposium on System Synthesis, pages 22–27, Cannes, France, 1995.CrossRefGoogle Scholar
  6. [6]
    R. Ernst, J. Henkel, and T. Benner. Hardware/software cosynthesis for microcontrollers. IEEE Design ei Test of Computers, 10 (4): 64–75, 1993.CrossRefGoogle Scholar
  7. [7]
    Daniel D. Gajsk, Nikil Dutt, Allen Wu, and Steve Lin. High-Level Synthesis: Introduction to Chip and System Design. Kluwer, 1992.Google Scholar
  8. [8]
    Uwe Gläser and K. T. Cheng. Logic optimization by an improved sequential redundancy addition and removal technique. In Proceedings IEEE Asian and South Pacific DAC, pages 235–240, 1995.Google Scholar
  9. [9]
    Rajesh K. Gupta and Giovanni de Micheli. A co-synthesis approach to embedded system design automation. Design Automation for Embedded Systems, 1 (1–2): 69–120, 1996.Google Scholar
  10. [10]
    David Hard and A. Naamad. The STATEMATE semantics of statecharts. ACMTSEM: ACM Transactions on Software Engineering and, 5, 1996.Google Scholar
  11. [11]
    Ivar Jacobson, Magnus Christerson, Parik Jonsson, and Gunnar Övergard. Object-Oriented Software Engineering. Addison-Wesley, 1992.Google Scholar
  12. [12]
    A. Jerraya, M. Abid, and T. B.Ismail. Cosmos: A codesign approach for communicating systems. In Third International Workshop on Hardware/Software Codesign, pages 17–24, Grenoble, France, 1994. IEEE Computer Society Press.Google Scholar
  13. [13]
    Sanjaya Kumar, James H. Aylor, Barry W. Johnson, and Wm. A. Wulf. The Codesign of Embedded Systems: A Unified Hardware/Software Representation. Kluwer, 1996.Google Scholar
  14. [14]
    Y.-T. S. Li, S. Malik, and A. Wolfe. Performance estimation of embedded software with instruction cache modeling. In International Conference on Computer Aided Design, pages 380–387, Los Alamitos, Ca., USA, 1995. IEEE Computer Society Press.Google Scholar
  15. [15]
    M. Chiodo, P. Giusto, H. Hsieh, A. Jurecska, L. Lavango, and A. Sangiovanni-Vincentelli. Synthesis of mixed software-hardware implementation from CFSM specifications. In Proceeding of International Workshop on Hw-Sw Codesign, 1993.Google Scholar
  16. [16]
    J. Madsen, J. Grode, P. V. Knudsen, M. E. Petersen, and A. Haxthausen. Lycos: the lyngby co-synthesis system. Design Automation of Embedded Systems, 2 (2), 1997.Google Scholar
  17. [17]
    J. L. Peterson. Petri Net Theory and the Modelling of Systems. Prentice-Hall, Englewoods Cliffs, New Jersey, 1981.Google Scholar
  18. [18]
    Axel Poigne, Matthew Morley, Olivier Maffeis, Leszek Holenderski, and Reinhard Budde. The synchronous approach to designing reactive systems. Formal Methods in System Design, 12 (2): 163–188, 1998.CrossRefGoogle Scholar
  19. [19]
    Paul Strayers. Embedded System Design. PhD thesis, TU Delft, 1994.Google Scholar
  20. [20]
    Kei Suzuki and Alberto Sangiovanni-Vincentelli. Efficient software performance estimation methods for hardware/software codesign. In 33rd Design Automation Conference, pages 605–610, New York, 1996. Association for Computing Machinery.Google Scholar
  21. [21]
    Steven Vercauteren, Bill Lin, and Hugo De Man. A strategy for real-time kernel support in application-specific HW/SW embedded architectures. In 33rd Design Automation Conference, pages 678–683, New York, 1996. Association for Computing Machinery.Google Scholar

Copyright information

© Springer Science+Business Media New York 2001

Authors and Affiliations

  • P. G. Plöger
    • 1
  • Reinhard Budde
    • 1
  • Karl H. Sylla
    • 1
  1. 1.Schloß BirlinghovenGMD-AiSSankt AugustinGermany

Personalised recommendations