Design of Embedded Systems with Complex Task Dependencies and Shared Resource Interference (Short Paper)
Languages for embedded systems ensure predictable timing behavior by specifying constraints based on either data streaming or reactive control models of computation. Moreover, various toolsets facilitate the incremental integration of application functionalities and the system design by evolutionary refinement and model-based code generation. Modern embedded systems involve various sources of interference in shared resources (e.g. multicores) and advanced real-time constraints, such as mixed-criticality levels. A sufficiently expressive modeling approach for complex dependency patterns between real-time tasks is needed along with a formal analysis of models for runtime resource managers with timing constraints. Our approach utilizes a model of computation, called Fixed-Priority Process Networks, which ensures functional determinism by unifying streaming and reactive control within a timed automata framework. The tool flow extends the open source TASTE tool-suite with model transformations to the BIP language and code generation tools. We outline the use of our flow on the design of a spacecraft on-board application running on a quad-core LEON4FT processor.
KeywordsModel-based design Embedded systems Model of computation Code generation Multicores
- 3.Poplavko, P., Socci, D., Bourgos, P., Bensalem, S., Bozga, M.: Models for deterministic execution of real-time multiprocessor applications. In: Design, Automation and Test in Europe Conference and Exhibition, DATE 2015, Grenoble, France, pp. 1665–1670 (2015)Google Scholar
- 4.Hugues, J., Zalila, B., Pautet, L., Kordon, F.: From the prototype to the final embedded system using the ocarina AADL tool suite. ACM Trans. Embed. Comput. Syst. 7(4), 42:1–42:25 (2008)Google Scholar
- 7.GR-CPCI-LEON4-N2X: Quad-Core LEON4 Next Generation Microprocessor Evaluation Board. http://www.gaisler.com/index.php/products/boards/gr-cpci-leon4-n2x