Lopht - the Logical to Physical Time Compiler

APP deposits:
Technology Readiness Level: TRL4, evaluated on a large scale Airbus use case during the ITEA3 ASSUME project and the bilateral collaboration with Airbus.

Description

Lopht is a compiler for real-time embedded systems. It takes as input 3 pieces of specification: Lopht performs the automatic allocation, real-time multiprocessor scheduling, and optimized code generation. It outputs full implementations, including executable code and platform configuration code, that are functionally correct and respect all the non-functional requirements (including real-time requirements).

Its scheduling algorithms ensure an efficient use of platform resources (processor cores, communication media, memory) through the use of advanced optimizations: efficient handling of execution conditions and modes, software pipelining to improve computation throughput, post-scheduling optimization of the number of context switches, task clubbing to reduce implementation complexity, etc. To ensure the respect of real-time requirements, the many-core back-end pilots the use of the worst-case execution time (WCET) analysis tool (ait from AbsInt). By doing this, and by using a precise timing model for the platform, it eliminates the need to adjust the WCET values through the addition of margins to the WCET values that are usually both large and without formal safety guarantees.

All algorithms are scalable heuristics providing good results on case studies and synthetic examples (exact scheduling techniques do not scale for such complex systems). These heuristics are presented in: