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.
Similar content being viewed by others
Notes
The TAGRC for HRTCS has been abstracted for the sake of understanding.
References
After the successful use of SCADE on the A340, AIRBUS adopted it for several A380 projects. http://www.esterel-technologies.com/success-stories/airbus/.
JSR 302: Safety Critical Java Technology. http://jcp.org/en/jsr/detail?id=302.
Alur, R., & Dill, D.L. (1994). A theory of timed automata. Theoretical Computer Science, 126, 183–235.
Barry, R. (2009). Using the FreeRTOS real time kernel: a practical guide. Real Time Engineers Limited.
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/.
Berry, G. (1993). The semantics of pure esterel. citeseer.ist.psu.edu/berry93semantics.html.
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.
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.
Boldt, M., Traulsen, C., & von Hanxleden, R. (2008). Worst case reaction time analysis of concurrent reactive programs. ENTCS, 203(4), 65–79.
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.
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.
Hoare, C.A.R. (1985). Communicating sequential processes. Prentice Hall.
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.
Logothetis, G., & Schneider, K. (2002). Extending synchronous languages for generating abstract real-time models. DATE ’02, (pp. 795–802). Washington: IEEE Computer Society.
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.
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.
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.
Potop-Butucaru, D., Edwards, S.A., & Berry, G. (2007). Compiling esterel. USA: Springer.
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.
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.
Schneider, S. (1999). Concurrent and real time systems: The CSP approach, 1st edn. New York: Wiley.
Schoeberl, M. (2008). A java processor architecture for embedded real-time systems. Journal of Systems Architecture, 54/1–2, 265–286.
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.
Sifakis, J., Tripakis, S., & Yovine, S. (2003). Building models of real-time systems from application software. Proceedings of the IEEE, 91(1), 100–111.
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.
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.
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.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
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
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11265-015-0991-7