Diagnostics for Real Time Distributed Multi-core Architecture in Avionics - Description

The objective of the proposed project is to provide the most accurate tools to run under real loads in order to monitor and trace sophisticated real-time avionics applications, typically in a multi-core, distributed, real-time, partially simulated environment. These tools will be used for performance monitoring, tuning and debugging during development, operation and maintenance.

At the present time, commonly used tools for software development are software debuggers. However, they are not applicable to real-time programs and have important limitations for multi-core systems running multiple applications in parallel, since they stop execution and significantly alter the timing of the system. Instead, hardware tracing with logic analyzers is often used for embedded real-time software development. This method is becoming less viable due to advances in the processor technologies.

A potential solution is to use whole system tracing coupled with a sophisticated trace analysis framework. Our team has recently contributed to the development of a low overhead, low disturbance tracing framework for Linux, LTTng, as a part of this solution. In this project, the tracing framework will be extended and optimized for real-time avionics systems and avionics simulators. The resulting framework will produce traces that have minimal impact on the traced system, insuring that it behaves almost exactly as when not traced.