skip to main content
research-article

Composing heterogeneous reactive systems

Published:01 August 2008Publication History
Skip Abstract Section

Abstract

We present a compositional theory of heterogeneous reactive systems. The approach is based on the concept of tags marking the events of the signals of a system. Tags can be used for multiple purposes from indexing evolution in time (time stamping) to expressing relations among signals, like coordination (e.g., synchrony and asynchrony) and causal dependencies. The theory provides flexibility in system modeling because it can be used both as a unifying mathematical framework to relate heterogeneous models of computations and as a formal vehicle to implement complex systems by combining heterogeneous components. In particular, we introduce an algebra of tag structures to define heterogeneous parallel composition formally. Morphisms between tag structures are used to define relationships between heterogeneous models at different levels of abstraction. In particular, they can be used to represent design transformations from tightly synchronized specifications to loosely-synchronized implementations. The theory has an important application in the correct-by-construction deployment of synchronous design on distributed architectures.

References

  1. Alur, R. and Henzinger, T. A. 1999. Reactive modules. Formal Meth. Syst. Design 15, 7--48.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Alur, R., Dang, T., Esposito, J., Hur, Y., Ivancic, F., Kumar, V., Lee, I., Mishra, P., Pappas, G. J., and Sokolsky, O. 2003. Hierarchical modeling and analysis of embedded systems. Proc. IEEE 91, 1, 11--28.]]Google ScholarGoogle ScholarCross RefCross Ref
  3. Balarin, F., Watanabe, Y., Hsieh, H., Lavagno, L., Passerone, C., and Sangiovanni-Vincentelli, A. 2003. Metropolis: An integrated electronic system design environment. IEEE Comput. 36, 4, 45--52.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Benveniste, A., Caillaud, B., and Le Guernic, P. 1999. From synchrony to asynchrony. In Proceedings of the 10th International Conference on Concurrency Theory (CONCUR'99). Lecture Notes in Computer Science, vol. 1664, 162--177. Springer, Berlin.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Benveniste, A., Caillaud, B., and Le Guernic, P. 2000. Compositionality in dataflow synchronous languages: Specification & distributed code generation. Inform. Comput. 163, 125--171.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Benveniste, A., Caspi, P., Le Guernic, P., Marchand, H., Talpin, J.-P., and Tripakis, S. 2002. A protocol for loosely time-triggered architectures. In Proceedings of the 2nd International Workshop on Embedded Software (EMSOFT'02). A. Sangiovanni-Vincentelli and J. Sifakis Eds., Lecture Notes in Computer Science, vol. 2491, 252--265, Springer, Berlin.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Benveniste, A., Carloni, L. P., Caspi, P., and Sangiovanni-Vincentelli, A. L. 2003. Heterogeneous reactive systems modeling and correct-by-construction deployment. In Proceedings of the 3rd International Conference on Embedded Software (EMSOFT'03). Lecture Notes in Computer Science, vol. 2855, Springer, Berlin.]]Google ScholarGoogle Scholar
  8. Benveniste, A., Caspi, P., Edwards, S., Halbwachs, N., Le Guernic, P., and de Simone, R. 2003. The synchronous language twelve years later. Proc. IEEE 91, 1, 64--83.]]Google ScholarGoogle ScholarCross RefCross Ref
  9. Berry, G. 2000. The Foundations of Esterel. MIT Press, Cambridge, MA.]]Google ScholarGoogle Scholar
  10. Burch, J., Passerone, R., and Sangiovanni-Vincentelli, A. L. 2001. Overcoming heterophobia: Modeling concurrency in heterogeneous systems. Proceedings of the 2nd International Conference on Application of Concurrency to System Design.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Buttazzo, G. 2002. Scalable applications for energy-aware processors. In Proceedings of the 2nd International Workshop on Embedded Software (EMSOFT'02). A. Sangiovanni-Vincentelli and J. Sifakis Eds., Lecture Notes in Computer Science, vol. 2491, 153--165. Springer, Berlin.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Carloni, L. P., McMillan, K. L., and Sangiovanni-Vincentelli, A. L. 2001. Theory of latency-insensitive design. IEEE Trans. Comput.-Aid. Design Integr. Circuits Syst. 20, 9, 1059--1076.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Caspi, P. 2001. Embedded control: From asynchrony to synchrony and back. In Proceedings of 1st International Workshop on Embedded Software (EMSOFT'01). T.A. Henzinger and C.M. Kirsch Eds., Lecture Notes in Computer Science, vol. 2211. Springer, Berlin, 80--96.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Chakrabarti, A., de Alfaro, L., Henzinger, T. A., and Mang, F. Y. C. 2002. Synchronous and bidirectional component interfaces. In Proceedings of the 14th International Conference on Computer-Aided Verification (CAV'02), Lecture Notes in Computer Science, Springer, Berlin, 414--427.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Cortadella, J., Kondratyev, A., Lavagno, L., and Sotiriou, C. 2003. A concurrent model for de-synchronization. In Proceedings of the International Workshop on Logic Synthesis.]]Google ScholarGoogle Scholar
  16. de Alfaro, L. and Henzinger, T. A. 2001a. Interface automata. In Proceedings of the Joint 8th European Software Engineering Conference and 9th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (ESEC/FSE01).]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. de Alfaro, L., and Henzinger, T. A. 2001. Interface theories for component-based design. In Proceedings of 1st International Workshop on Embedded Software (EMSOFT'01). T. A. Henzinger and C. M. Kirsch Eds., Lecture Notes in Computer Science, vol. 2211, Springer, Berlin, 32--49.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Eker, J., Janneck, J. W., Lee, E. A., Liu, J., Ludwig, J., Neuendorffer, S., Sachs, S., and Xiong, Y. 2003. Taming heterogeneity—The Ptolemy approach. Proc. IEEE, 91, 1, 127--144. http://ptolemy.eecs.berkeley.edu/ptolemyII/]]Google ScholarGoogle ScholarCross RefCross Ref
  19. Halbwachs, N., Caspi, P., Raymond, P., and Pilaud, D. 1991. The synchronous data flow programming language LUSTRE. Proc. IEEE 79, 9, 1305--1320.]]Google ScholarGoogle Scholar
  20. Karsai, G., Sztipanovits, J., Ledeczi, A., and Bapty, T. 2003. Model-integrated development of embedded software. Proc. IEEE 91, 1, 127--144.]]Google ScholarGoogle ScholarCross RefCross Ref
  21. Kopetz, H. 1997. Real-Time Systems: Design Principles for Distributed Embedded Applications. Kluwer Academic Publishing, Novell, MA.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Lamport, L. 1983. Specifying concurrent program modules. ACM Trans. Prog. Lang. Sys., 5, 2, 190--222.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Lamport, L. 2003. Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers. Addison Wesley Professional, Reading, MA.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Le Guernic, P., Gautier, T., Le Borgne, M., and Le Maire, C. 1991. Programming real-time applications with SIGNAL. Proc. IEEE 79, 9, 1326--1333.]]Google ScholarGoogle Scholar
  25. Le Guernic, P., Talpin, J.-P., and Le Lann, J.-C. 2003. Polychrony for system design. J. Circuits Syst. Comput.]]Google ScholarGoogle Scholar
  26. Lee, E. A. and Sangiovanni-Vincentelli, A. 1998. A framework for comparing models of computation. IEEE Trans. Comput.-Aided Design Integr. Circuits Syst. 17, 12, 1217--1229.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Lee, E. A., and Xiong, Y. 2001. System-level types for component-based design. In Proceedings of 1st International Workshop on Embedded Software (EMSOFT'01). T. A. Henzinger and C. M. Kirsch Eds., Lecture Notes in Computer Science, vol. 2211. Springer, Berlin, 32--49.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Mattern, F. 1989. Virtual time and global states of distributed systems. In Proceedings of the International Workshop on Parallel & Distributed Algorithms. M. Cosnard et al. Eds., Elsevier Science, Berlin, 215--226.]]Google ScholarGoogle Scholar
  29. Mathaikutty, D., Patel, H., and Shukla, S. 2004. A functional programming framework of heterogeneous model of computations for system design. In Proceedings of the Forum on Specification and Design Languages (FDL).]]Google ScholarGoogle Scholar
  30. Mathaikutty, D., Patel, H., Shukla, S., and Jantsch, A. 2005. UMoC++: A C++ -based multi-MoC modeling environment. In Advances in Design and Specification Languages for SoCs—Selected Contributions from FDL'05, A. Vachoux, Ed. Chapter 7. Springer, Berlin.]]Google ScholarGoogle Scholar
  31. Potop-Butucaru, D., Caillaud, B., and Benveniste, A. 2004. Concurrency in synchronous systems. In Proceedings of the 4th International Conference on Applications of Concurrency in System Design (ACSD). Hamilton, Canada.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Potop-Butucaru, D. and Caillaud, B. 2005. Correct-by-construction asynchronous implementation of modular synchronous specifications. In Proceedings of the 5th International Conference on Application of Concurrency to System Design (ACSD'05). 48--57.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Sander, I. and Jantsch, A. 2004. System modeling and transformational design refinement in ForSyDe, IEEE Trans. Comput. Aided Design Integr. Circuits Syst. 23, 1, 17--32.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Winskel, G. 1982. Event structure semantics for CCS and related languages. In Proceedings of ICALP. M. Nielsen and M. Schmidt Eds., Lecture Notes in Computer Science, vol. 140. Springer-Verlag, Berlin, 561--576.]] Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Composing heterogeneous reactive systems

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!