Skip to main content
Log in

Times Square – Marriage of Real-Time and Logical-Time in GALS and Synchronous Languages

  • Published:
Journal of Signal Processing Systems Aims and scope Submit manuscript

Abstract

In this paper we introduce exact and non-exact real-time waits in the reactive Globally Asynchronous Locally Synchronous (GALS) programming languages and synchronous languages as their subset. The language constructs that allow use of real-time waits are illustrated on the SystemJ GALS language. They allow system designers to explicitly use, at the specification level, not only logical time but also real-time in order to control program execution. We transform the real-time constructs into a logical model of time, and statically bound the amount of delay introduced by these constructs. In addition, the introduced concepts utilize execution platforms that allow finding best and worst reaction time of a GALS or synchronous program.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16

Similar content being viewed by others

Notes

  1. The TAGRC for HRTCS has been abstracted for the sake of understanding.

References

  1. After the successful use of SCADE on the A340, AIRBUS adopted it for several A380 projects. http://www.esterel-technologies.com/success-stories/airbus/.

  2. JSR 302: Safety Critical Java Technology. http://jcp.org/en/jsr/detail?id=302.

  3. Alur, R., & Dill, D.L. (1994). A theory of timed automata. Theoretical Computer Science, 126, 183–235.

    Article  MathSciNet  MATH  Google Scholar 

  4. Barry, R. (2009). Using the FreeRTOS real time kernel: a practical guide. Real Time Engineers Limited.

  5. Behrmann, G., David, A., & Larsen, K.G. (2004). A tutorial on uppaal In M. Bernardo, & F. Corradini (Eds.), International school on formal methods for the design of computer, communication, and software systems, SFM-RT 2004. Revised Lectures, Lecture Notes in Computer Science, vol. 3185, (pp. 200–237). Berlin: Springer. http://doc.utwente.nl/51010/.

    Google Scholar 

  6. Berry, G. (1993). The semantics of pure esterel. citeseer.ist.psu.edu/berry93semantics.html.

  7. Berry, G., & Sentovich, E. (2001). Multiclock Esterel. In T. Margaria, & T. Melham (Eds.), Correct hardware design and verification methods, lecture notes in computer science, vol. 2144. (pp. 110–125). Berlin: Springer. doi:10.1007/3-540-44798-9_10.

    Google Scholar 

  8. Bertin, V., Poize, M., Pulou, J., & Sifakis, J. (2000). Towards validated real-time software. In Proceedings of the 12th Euromicro conference on Real-time systems, Euromicro-RTS’00 (pp. 157–164). Washington.

  9. Boldt, M., Traulsen, C., & von Hanxleden, R. (2008). Worst case reaction time analysis of concurrent reactive programs. ENTCS, 203(4), 65–79.

    Google Scholar 

  10. Bourke, T., & Sowmya, A. (2010) In Benveniste, A., Edwards, S. A., Lee, E., Schneider, K., & von Hanxleden, R. (Eds.), Delays in Esterel, (pp. 55–84). Dagstuhl: Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik.

  11. Chen, R., Wang, Y., & Shao, Z. (2013). DHeating: Dispersed heating repair for self-healing NAND flash memory. In Proceedings of the Ninth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis, CODES+ISSS ’13 (pp. 7:1–7:10). Piscataway: IEEE Press. http://dl.acm.org/citation.cfm?id=2555692.2555699.

  12. Hoare, C.A.R. (1985). Communicating sequential processes. Prentice Hall.

  13. Li, Z., Malik, A., & Salcic, Z. (2014). TACO: A scalable framework for timing analysis and code optimization of synchronous programs. In International Workshop on Embedded and Multi-core Systems and Applications (IWMSA). Chongqing.

  14. Logothetis, G., & Schneider, K. (2002). Extending synchronous languages for generating abstract real-time models. DATE ’02, (pp. 795–802). Washington: IEEE Computer Society.

    Google Scholar 

  15. Malik, A., Salcic, Z., Chong, C., & Javed, S. (2012). System-level approach to the design of a smart distributed surveillance system using systemj. ACM Transactions Embedded Computer Systems, 11(4), 77.

    Article  Google Scholar 

  16. Malik, A., Salcic, Z., Roop, P.S., & Girault, A. (2010). SystemJ: A GALS language for system level design. Elsevier Journal of Computer Languages, Systems and Structures, 36(4), 317–344.

    Article  Google Scholar 

  17. Park, H., Salcic, Z., Wang, K.I.K., Atmojo, U.D., Sun, W.T., & Malik, A. (2013). A new design paradigm for designing reactive pervasive concurrent systems with an ambient intelligence example. In ISPA, 2013 IEEE 11th International Symposium. Melbourne.

  18. Potop-Butucaru, D., Edwards, S.A., & Berry, G. (2007). Compiling esterel. USA: Springer.

    Google Scholar 

  19. Qin, Z., Wang, Y., Liu, D., & Shao, Z. (2010). Demand-based block-level address mapping in large-scale NAND flash storage systems. In Proceedings of the Eighth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis, CODES/ISSS ’10, (pp. 173–182). New York: ACM. doi:10.1145/1878961.1878991.

  20. Salcic, Z., & Malik, A. (2013). GALS-HMP: A heterogeneous multiprocessor for embedded applications. ACM Transactions Embedded Computer Systems, 12(1s), 58. doi:10.1145/2435227.2435254.

    Google Scholar 

  21. Schneider, S. (1999). Concurrent and real time systems: The CSP approach, 1st edn. New York: Wiley.

    Google Scholar 

  22. Schoeberl, M. (2008). A java processor architecture for embedded real-time systems. Journal of Systems Architecture, 54/1–2, 265–286.

    Article  Google Scholar 

  23. Shyamasundar, R.K. (1994). Programming dynamic real-time systems in CRP. In Proceedings of the CSA Jubilee Workshop on Computing and Intelligent Systems (pp. 76–89). Tata-McGraw Hill Publishing Co.

  24. Sifakis, J., Tripakis, S., & Yovine, S. (2003). Building models of real-time systems from application software. Proceedings of the IEEE, 91(1), 100–111.

    Article  Google Scholar 

  25. Singh, N.K., Wellings, A., & Cavalcanti, A. (2012). The Cardiac Pacemaker Case Study and Its Implementation in Safety-critical Java and Ravenscar Ada. In Proceedings of the 10th International Workshop on Java Technologies for Real-time and Embedded Systems, JTRES ’12, (pp. 62–71). New York: ACM. doi:10.1145/2388936.2388948.

  26. Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., Bernat, G., Ferdinand, C., Heckmann, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P., Staschulat, J., & Stenström, P. (2008). The worst-case execution-time problem—overview of methods and survey of tools. Transactions on Embedded Computing System, 7(3), 1–53. doi:10.1145/1347375.1347389.

    Article  Google Scholar 

  27. Zhang, C., Wang, Y., Wang, T., Chen, R., Liu, D., & Shao, Z. (2014). Deterministic crash recovery for NAND flash based storage systems. In Proceedings of the 51st Annual Design Automation Conference, DAC ’14 (pp. 148:1–148:6). New York: ACM. doi:10.1145/2593069.2593124.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Heejong Park.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Park, H., Li, Z., Malik, A. et al. Times Square – Marriage of Real-Time and Logical-Time in GALS and Synchronous Languages. J Sign Process Syst 84, 163–180 (2016). https://doi.org/10.1007/s11265-015-0991-7

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-015-0991-7

Keywords

Navigation