Efficient synchronization methods for LET-based applications on a Multi-Processor System on Chip

Distributed control applications cover a wide range of areas such as automotive, avionics, and automation. The Logical Execution Time (LET) Model of Computation (MoC) was proposed as a formal method to describe the functional and timing behavior of such applications. However, modern Multi-Processor Systems on Chip (MPSOC) do not have a shared notion of time between processors, due to their use of Globally Asynchronous Locally Synchronous (GALS) architecture. In this paper we propose two methods (based on FIFO channels and barriers) to implement time and data synchronization on a MPSOC. While a barrier synchronizes the execution flows of tasks at predefined points in their executions, a FIFO is an asynchronous data communication method between two tasks. First, they are used to implement LET applications. Next, we show how dataflow applications and mixed LET-dataflow applications are supported too. We implemented both methods on a MPSOC prototyped on a FPGA, and show that the data synchronization outperforms the related work by 67% in terms of software overhead.

[1]  E.A. Lee,et al.  Synchronous data flow , 1987, Proceedings of the IEEE.

[2]  Binoy Ravindran,et al.  Space-Optimal, Wait-Free Real-Time Synchronization , 2007, IEEE Transactions on Computers.

[3]  Jean A. Peperstraete,et al.  Cycle-static dataflow , 1996, IEEE Trans. Signal Process..

[4]  Aniruddha S. Gokhale,et al.  Developing applications using model-driven design environments , 2006, Computer.

[5]  Kang Lee,et al.  IEEE 1588 standard for a precision clock synchronization protocol for networked measurement and control systems , 2002, 2nd ISA/IEEE Sensors for Industry Conference,.

[6]  Binoy Ravindran,et al.  On Scalable Synchronization for Distributed Embedded Real-Time Systems , 2008, SEUS.

[7]  Edward A. Lee,et al.  PTIDES: A Programming Model for Distributed Real-Time Embedded Systems , 2008 .

[8]  Lee E. Weiss,et al.  Dynamic sensor-based control of robots with visual feedback , 1987, IEEE Journal on Robotics and Automation.

[9]  Kees G. W. Goossens,et al.  dAElite: A TDM NoC Supporting QoS, Multicast, and Fast Connection Set-Up , 2014, IEEE Transactions on Computers.

[10]  Ning Wang,et al.  The implementation of IEEE 1588 clock synchronization system based on FPGA , 2014, Fifth International Conference on Intelligent Control and Information Processing.

[11]  Pau Arumí,et al.  Time-triggered static schedulable dataflows for multimedia systems , 2009, Electronic Imaging.

[12]  Axel Jantsch,et al.  System modeling and transformational design refinement in ForSyDe [formal system design] , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[13]  David L. Mills,et al.  Computer network time synchronization : the network time protocol on earth and in space , 2006 .

[14]  Michael J. Pont,et al.  Implementation of H-Infinity Control Algorithms for Sensor-Constrained Mechatronic Systems Using Low-Cost Microcontrollers , 2008, IEEE Transactions on Industrial Informatics.

[15]  Hermann Kopetz,et al.  The time-triggered architecture , 1998, Proceedings First International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC '98).

[16]  Xue Liu,et al.  Experimental Evaluation and Selection of Data Consistency Mechanisms for Hard Real-Time Applications on Multicore Platforms , 2014, IEEE Transactions on Industrial Informatics.

[17]  Manel Velasco,et al.  Clock Synchronization for Networked Control Systems Using Low-Cost Microcontrollers , 2008 .

[18]  Ana Sokolova,et al.  The Logical Execution Time Paradigm , 2012, Advances in Real-Time Systems.

[19]  Carlo Rossi,et al.  Giotto a time-triggered language for embedded programming , 2011 .

[20]  Orlando Moreira,et al.  Scheduling multiple independent hard-real-time jobs on a heterogeneous multiprocessor , 2007, EMSOFT '07.

[21]  M. Branicky,et al.  Design Considerations for Software Only Implementations of the IEEE 1588 Precision Time Protocol , 2005 .

[22]  Martin Schoeberl,et al.  Support for the logical execution time model on a time-predictable multicore processor , 2016, SIGBED.