Abstract
Model-based design using Synchronous Reactive (SR) models is becoming widespread for control software development in industry. However, software synthesis is challenging for multi-rate SR models consisting of blocks modeled with finite state machines, due to the complexity of validating the system’s real-time schedulability. The existing approach uses the simplified periodic task model to allow an efficient schedulability analysis, which leads to pessimistic and suboptimal solutions. Instead, in this paper, we adopt a more accurate but more complex schedulability analysis. We develop several optimization techniques to improve the algorithm’s efficiency. Experimental results on synthetic systems and an industrial case study show that the proposed optimization framework preserves the solution optimality but is much faster (e.g., 1000× for systems with 15 blocks) than the branch-and-bound algorithm, and it generates better control software than the existing approach.
- Z. Al-bayati, H. Zeng, M. Di Natale, and Z. Gu. 2013. Multitask implementation of synchronous reactive models with Earliest Deadline First scheduling. In IEEE Symposium on Industrial Embedded Systems.Google Scholar
- Karl J. Åström and Björn Wittenmark. 1997. Computer-controlled Systems (3rd Ed.). Prentice-Hall, Inc. Google Scholar
Digital Library
- Neil Audsley. 1991. Optimal priority assignment and feasibility of static priority tasks with arbitrary start times. Technical Report YCS 164. Department of Computer Science, University of York, UK.Google Scholar
- Blind. 2017. Exact and approximate methods for response time analysis of tasks implementing synchronous finite state machines. Submitted (2017).Google Scholar
- Frédéric Boussinot and Robert De Simone. 1991. The ESTEREL language. Proc. IEEE 79, 9 (1991), 1293--1304.Google Scholar
Cross Ref
- Paul Caspi and Albert Benveniste. 2008. Time-robust discrete control over networked loosely time-triggered architectures. In IEEE Conf. Decision 8 Control.Google Scholar
Cross Ref
- P. Caspi, A. Curic, A. Maignan, C. Sofronis, S. Tripakis, and P. Niebert. 2003. From simulink to SCADE/Lustre to TTA: a layered approach for distributed embedded applications. In ACM Conf. Language, Compiler, and Tool for Embedded Systems. Google Scholar
Digital Library
- P. Caspi, N. Scaife, C. Sofronis, and S. Tripakis. 2008. Semantics-preserving multitask implementation of synchronous programs. ACM Trans. Embed. Comput. Syst. 7, 2 (2008), 1--40. Google Scholar
Digital Library
- R. Davis, L. Cucu-Grosjean, M. Bertogna, and A. Burns. 2016. A review of priority assignment in real-time systems. J. Syst. Archit. 65, C (2016), 64--82. Google Scholar
Digital Library
- M. Di Natale and V. Pappalardo. 2008. Buffer optimization in multitask implementations of simulink models. ACM Trans. Embed. Comput. Syst. 7, 3 (2008), 1--32. Google Scholar
Digital Library
- J. Forget, F. Boniol, D. Lesens, and C. Pagetti. 2008. A multi-periodic synchronous data-flow language. In IEEE High Assurance Systems Engineering Symposium. Google Scholar
Digital Library
- N. Halbwachs, P. Caspi, P. Raymond, and D. Pilaud. 1991. The synchronous data flow programming language LUSTRE. Proc. IEEE 79, 9 (1991), 1305--1320.Google Scholar
- Simon Kramer, Dirk Ziegenbein, and Arne Hamann. 2015. Real World automotive benchmarks for free. In International Workshop on Analysis Tools and Methodologies for Embedded and Real-time Systems (WATERS).Google Scholar
- Edward Lee and Pravin Varaiya. 2011. Structure and Interpretation of Signals and Systems, 2nd Edition. LeeVaraiya.org.Google Scholar
- P. LeGuernic, T. Gautier, M. Le Borgne, and C. Le Maire. 1991. Programming real-time applications with SIGNAL. Proc. IEEE 79, 9 (1991), 1321--1336.Google Scholar
Cross Ref
- C. L. Liu and James W. Layland. 1973. Scheduling algorithms for multiprogramming in a hard-real-time environment. J. ACM 20, 1 (Jan. 1973), 46--61. Google Scholar
Digital Library
- MathWorks. The MathWorks Simulink and StateFlow User’s Manuals. MathWorks.Google Scholar
- M. Di Natale, L. Guo, H. Zeng, and A. Sangiovanni-Vincentelli. 2010. Synthesis of multi-task implementations of simulink models with minimum delays. IEEE Trans. Industrial Informatics 6, 4 (2010), 637--651.Google Scholar
Cross Ref
- M. Di Natale and H. Zeng. 2012. Task implementation of synchronous finite state machines. In Conference on Design, Automation Test in Europe. Google Scholar
Digital Library
- C. Pagetti, J. Forget, F. Boniol, M. Cordovilla, and D. Lesens. 2011. Multi-task implementation of multi-periodic synchronous programs. Discrete Event Dynamic Systems 21, 3 (2011), 307--338. Google Scholar
Digital Library
- C. Pagetti, D. Saussié, R. Gratia, E. Noulard, and P. Siron. 2014. The ROSACE case study: from Simulink specification to multi/many-core execution. In IEEE Real-Time and Embedded Technology and Applications Symposium.Google Scholar
- D. Potop-Butucaru, B. Caillaud, and A. Benveniste. 2004. Concurrency in synchronous systems. In Int. Conf. Application of Concurrency to System Design. Google Scholar
Digital Library
- D. Potop-Butucaru, S. A. Edwards, and G. Berry. 2007. Compiling Esterel. Springer. Google Scholar
Digital Library
- W. Puffitsch, E. Noulard, and C. Pagetti. 2013. Mapping a multi-rate synchronous language to a many-core processor. In IEEE Real-Time and Embedded Technology and Applications Symposium. Google Scholar
Digital Library
- M. Stigge, P. Ekberg, N. Guan, and W. Yi. 2011. The digraph real-time task model. In IEEE Real-Time 8 Embedded Technology 8 Applications Symposium. Google Scholar
Digital Library
- M. Stigge and W. Yi. 2012. Hardness results for static priority real-time scheduling. In Euromicro Conference on Real-Time Systems. Google Scholar
Digital Library
- M. Stigge and W. Yi. 2015. Combinatorial abstraction refinement for feasibility analysis of static priorities. Real-Time Systems 51, 6 (2015), 639--674. Google Scholar
Digital Library
- S. Tripakis, C. Pinello, A. Benveniste, A. Sangiovanni-Vincent, P. Caspi, and M. Di Natale. 2008. Implementing synchronous models on loosely time-triggered architectures. IEEE Trans. Comput. 57, 10 (2008), 1300--1314. Google Scholar
Digital Library
- H. Zeng and M. Di Natale. 2011. Mechanisms for guaranteeing data consistency and time determinism in AUTOSAR software on multicore platforms. In IEEE Symposium on Industrial Embedded Systems.Google Scholar
- H. Zeng and M. Di Natale. 2012. Schedulability analysis of periodic tasks implementing synchronous finite state machines. In Euromicro Conference on Real-Time Systems. Google Scholar
Digital Library
- Y. Zhao and H. Zeng. 2017. The concept of unschedulability core for optimizing priority assignment in real-time systems. In Conference on Design, Automation and Test in Europe. Google Scholar
Digital Library
- Q. Zhu, P. Deng, M. Di Natale, and H. Zeng. 2013. Robust and extensible task implementations of synchronous finite state machines. In Conference on Design, Automation Test in Europe. Google Scholar
Digital Library
Index Terms
Optimization of Real-Time Software Implementing Multi-Rate Synchronous Finite State Machines
Recommendations
Multiple real-time semantics on top of synchronous block diagrams
DEVS 13: Proceedings of the Symposium on Theory of Modeling & Simulation - DEVS Integrative M&S SymposiumSynchronous block diagrams form an established fundament for the model-based development of embedded real-time systems. Their synchronous reactive (SR), also called zero execution time, semantics offers indisputable advantages in designing, testing and ...
A Function for Hard Real-Time System Search-Based Task Mapping Optimisation
ISORC '15: Proceedings of the 2015 IEEE 18th International Symposium on Real-Time Distributed ComputingA task mapping is deemed feasible for a hard real-time embedded system if the end-to-end response times of all tasks, which include the computation and the communication delays, does not exceed their deadlines. In this paper, we propose a new fitness ...
Multi-Criteria Compiler-Based Optimization of Hard Real-Time Systems
SCOPES '18: Proceedings of the 21st International Workshop on Software and Compilers for Embedded SystemsReal-Time Systems often come with additional requirements apart from being functionally correct and adhering to their timing constraints. Common additional optimization goals are meeting code size requirements or the reduction of energy consumption. We ...






Comments