Multi-Core Processor Partitioning for Deterministic Resource Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-core processor platforms, especially in critical fields like avionics, the simultaneous execution of software applications leads to contention issues due to shared resources, resulting in uncontrolled process execution times and loss of determinism, which hinders platform qualification and certification.

Innovation Solution

A method is introduced where a specific partition, called the IO device access partition, centralizes exchanges with IO devices, and the processor cores are selectively assigned to execute partitions based on a sequential list of assignments, ensuring each core is dedicated to a partition for a predetermined time, thereby minimizing contention and maintaining deterministic processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple software applications are executed simultaneously on a multi-core processor, then productivity is improved, but contention occurs due to shared resources resulting in uncontrolled process execution times and loss of determinism

Engineering Contradiction:
Improvesimultaneous execution of applicationsVSAvoiddeterminism of processing times
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments the multi-core processor into dedicated time slots for different application partitions, with each core selectively assigned to execute specific partitions during predetermined time intervals. This temporal segmentation eliminates resource contention by ensuring that only one partition accesses shared resources at any given moment, thereby maintaining determinism while enabling multi-application execution across the processor system.

Inventive Principle:
Principle #1Segmentation

2Reliability

If a sequential list of assignments is used to organize core usage by application partitions, then contention is reduced and processing times are controlled, but the complexity of resource management increases

Engineering Contradiction:
Improvecontrol of processing timesVSAvoidresource management structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements periodic time-triggered execution where each core cycles through a predetermined sequence of application partitions in fixed time intervals. This periodic structure simplifies resource management by using hardware-based timers and automatic context switching mechanisms that eliminate the need for complex software scheduling algorithms, while ensuring deterministic processing times through regular, predictable execution patterns.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentEP3792759B1Method for accessing shared resources of a computer platform, associated computer program and computer platform
Publication Date: 2024.08.07 THALES SA
  • EP3792759B1 patent drawingFigure 1
  • EP3792759B1 patent drawingFigure 2
  • EP3792759B1 patent drawingFigure 3

AI summary

A method for accessing shared resources of a computer platform (10) comprising a multi-core processor (21), shared resource(s) (18) between first partitions, whereby requests for access to shared resources issued by the first partitions are addressed to a second partition which, when executed on the processor, performs said accesses; - multiple cores (22) are reserved synchronously for the execution of the second access partition for a predetermined time; - accesses to distinct shared resources (18) performed by the second partition must be executed by distinct reserved cores; and - all accesses to a shared resource performed by the second access partition must be executed, during said predetermined time, by a single core among the reserved cores.