- DO-178C Workshop »
- Multicore Workshop »
Discover Multicore Timing analysis for critical systems
Multicore Timing analysis for Critical Systems
The critical embedded industry is moving towards the use of multi-core rather than single-core processors due to improved performance. The increased performance of multicore and manycore systems per unit area is especially sought after in the embedded aerospace and automotive industries due to the limited physical space often available and the ever-increasing complexity of software in these industries.
Using multicore processors poses specific challenges in these domains, however, as assurance must often be given that software operates within timing deadlines.
Solving the challenges of multicore timing analysis
Rapita Systems' approach for performing timing analysis is offered in collaboration with the Barcelona Supercomputing Center and uses RapiTime to automate the capture and analysis of results from microbenchmarks written from experimental design. This approach provides the right balance of rigor, flexibility, precision and effort to deliver estimates of worst-case execution time that can be used even for the highest software criticality levels.
- Combination of RapiDaemons & mature toolchain
- Engineering expertise to understand multicore systems in enough depth to perform the analysis
This demo highlights the effects of interference on multicore execution times on the YOLO real-time object detection software.
It demonstrates a slowdown in task execution time of almost a factor of 10 when we applied contention for shared resources used by that task.
Challenges of multicore timing analysis
‘‘Using multicore processors poses specific challenges in the critical embedded domain. As traditional worst-case execution time analysis methods don’t take interference effects into account, we need to use new methods.
In the critical automotive domain, the rapid developmnent of technologies such as autonomous driving and Advanced Driver Assistance Systems (ADAS) has placed increasing importance on the safety of multicore systems. Per ISO 26262, multicore software should be free from cascading failures caused by software failing to meet timing deadlines.
In the critical aerospace domain, worst-case timing evidence must be provided to certification authorities for multicore systems certified against DO-178B or DO-178C. In this context, the use of multicore architectures is addressed specifically in the CAST-32A guidance paper.
Validating the timing requirements of multicore systems offers new challenges. In multicore systems, the timing behavior of a task is affected not only by the software running on it, and its inputs, but also by contention over resources shared with other tasks.
This contention causes interference to the timing behavior of the task. As traditional worst-case execution time analysis methods don’t take interference effects into account, we need to use new methods, such as Rapita Systems' Multicore Timing Analysis Solution.