Multicore Partition Distribution for Avionics Temporal Determinism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Multicore processors in avionics computers face challenges in ensuring temporal determinism due to interference from concurrent access to shared resources, which complicates the estimation of worst-case execution time, violating certification requirements for critical real-time applications.
Innovation Solution
A method for distributing software tasks on multicore processors involves identifying hardware architecture parameters, profiling partitions based on performance and memory access criteria, classifying them, and assigning each partition to a core while maintaining sequential ordering, thereby minimizing interference and ensuring temporal isolation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multicore processors are used to improve performance, then processing speed and capability are enhanced, but temporal determinism deteriorates due to interference from concurrent access to shared resources
Solution Approach 1:
The system segments the multicore processor into isolated execution environments called partitions, where each partition is assigned to a specific core or group of cores. This segmentation prevents interference between concurrent partitions by enforcing strict boundaries on resource access, thereby maintaining temporal determinism while allowing multiple partitions to execute in parallel for improved performance.
Solution Approach 2:
The patent applies local quality by assigning different access privileges and resource allocations to different partitions based on their specific requirements. Each partition receives tailored resource allocation (CPU time, memory, I/O access) that optimizes its execution while preventing it from interfering with other partitions. This localized resource management ensures that critical real-time partitions maintain deterministic timing while less time-sensitive partitions can utilize remaining resources.
2Reliability
If strict isolation between functional subsets is implemented to ensure temporal determinism, then execution time predictability is improved, but system performance deteriorates due to inability to utilize multicore parallelism
Solution Approach 1:
The system segments both the software functional subsets and the hardware processor cores, creating a many-to-many mapping between partitions and cores. This allows multiple isolated partitions to execute simultaneously on different cores, achieving parallelism while maintaining the strict isolation boundaries that ensure execution time predictability for each partition.
Solution Approach 2:
The patent transitions from single-dimensional sequential execution on one core to multi-dimensional parallel execution across multiple cores. By adding the spatial dimension of multiple processor cores while maintaining temporal isolation through partitioning, the system achieves both execution time predictability within each partition and improved overall performance through parallel execution of multiple partitions.
3Productivity
If arbitration is implemented for simultaneous access to shared resources, then resource contention is managed, but execution time variability increases due to unpredictable arbitration delays
Solution Approach 1:
The patent extracts the arbitration mechanism from the shared resource access path by assigning dedicated resources to each partition when possible. Instead of having all partitions compete for shared resources through arbitration, critical real-time partitions are given dedicated or reserved access to specific CPU cores, memory regions, and I/O devices, eliminating arbitration delays and ensuring predictable execution times.
Solution Approach 2:
The system changes the access parameters from shared competitive access to partitioned dedicated access. By modifying the resource allocation parameters to provide guaranteed time slices and reserved resources to each partition, the system eliminates the variability introduced by arbitration while still allowing efficient resource utilization through proper configuration of partition priorities and allocations.
Data Source
AI summary
A method and a device for distributing partitions of a sequence of partitions on the cores of a multicore processor are provided. The method makes it possible to identify parameters characterizing the hardware architecture of a multicore processor, and parameters characterizing an initial ordering of the partitions of a sequence; and then to profile and classify each partition of the sequence in order to assign the execution of each partition to a core of the multicore processor while maintaining the initial sequential ordering of the partitions.


