Task Synthesis for Control Applications on Multicore Platforms

Multicore processors promise to improve the performance of systems, by integrating more and more cores onto a single chip. Existing software systems, such as control software from the automation domain, need adjustments to be adapted on multicores. To exploit the concurrency offered by multicore processors, appropriate algorithms have to be used to divide the control application software into tasks, and tailored task partitioning and scheduling approaches are required to increase the overall performance. In this paper we present a model-driven approach for automatic synthesis and deployment of control applications on multicore processors. The approach is centered around a system model, which describes the control applications, the multicore platform, as well as the mapping between the two. We apply the approach on a number of control applications out of which we synthesize tasks and present their run-time behavior in a real-time operating system.

[1]  Maxime Pelcat,et al.  Multi-Core Code Generation From Interface Based Hierarchy , 2009 .

[2]  Alan Burns,et al.  A survey of hard real-time scheduling for multiprocessor systems , 2011, CSUR.

[3]  Michael Tiegelkamp,et al.  IEC 61131-3: Programming Industrial Automation Systems: Concepts and Programming Languages, Requirements for Programming Systems, Decision-Making Aids , 2001 .

[4]  Eugenio Villar,et al.  System synthesis from UML/MARTE models: The PHARAON approach , 2013, Proceedings of the 2013 Electronic System Level Synthesis Conference (ESLsyn).

[5]  James H. Anderson,et al.  A Hybrid Real-Time Scheduling Approach for Large-Scale Multicore Platforms , 2007, 19th Euromicro Conference on Real-Time Systems (ECRTS'07).

[6]  Jan Carlson,et al.  Towards a Model-Based Approach for Allocating Tasks to Multicore Processors , 2012, 2012 38th Euromicro Conference on Software Engineering and Advanced Applications.

[7]  Séverine Sentilles,et al.  A Component Model for Control-Intensive Distributed Embedded Systems , 2008, CBSE.

[8]  Daniel Gajski,et al.  Hardware-dependent Software synthesis for many-core embedded systems , 2009, 2009 Asia and South Pacific Design Automation Conference.

[9]  Heiko Koziolek,et al.  FASA: a scalable software framework for distributed control systems , 2012, ISARCS '12.

[10]  V. Vyatkin,et al.  Alternatives for Execution Semantics of IEC61499 , 2007, 2007 5th IEEE International Conference on Industrial Informatics.

[11]  Yun Li,et al.  PID control system analysis, design, and technology , 2005, IEEE Transactions on Control Systems Technology.

[12]  David S. Johnson,et al.  Near-optimal bin packing algorithms , 1973 .

[13]  Kyong Hoon Kim,et al.  Deriving High-Performance Real-Time Multicore Systems Based on Simulink Applications , 2011, 2011 IEEE Ninth International Conference on Dependable, Autonomic and Secure Computing.

[14]  Robert de Simone,et al.  From Synchronous Specifications to Statically Scheduled Hard Real-Time Implementations , 2010, Synthesis of Embedded Software.

[15]  Françoise Simonot-Lion,et al.  Multisource Software on Multicore Automotive ECUs—Combining Runnable Sequencing With Task Scheduling , 2012, IEEE Transactions on Industrial Electronics.

[16]  Arquimedes Canedo,et al.  Towards parallel execution of IEC 61131 industrial cyber-physical systems applications , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).