Multicore Engine Control Unit Task Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current engine control units with multicore microprocessors face reliability challenges due to sequential execution methods that do not fully utilize parallel-processing capabilities, particularly at high engine speeds, leading to potential safety issues and malfunctions.
Innovation Solution
A method that divides cyclic tasks into parent and child subtasks executed by different microprocessor cores, allowing for dynamic load balancing and overlap analysis to identify and prevent conflicts between concurrent executables, thereby enhancing reliability and safety.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If semaphore principles are used to ensure safety in multicore processor execution, then reliability is improved, but execution latency increases substantially and parallel-processing capabilities are not fully utilized
Solution Approach 1:
The cyclic task is segmented into parent subtasks and child subtasks that can be executed by different microprocessor cores. This segmentation allows parallel execution of task portions while maintaining safety through structured handover protocols, avoiding the need for comprehensive semaphores that would serialize all execution.
Solution Approach 2:
The system performs preliminary actions by pre-defining the structure of parent and child subtasks and establishing handover protocols before execution begins. This preliminary structuring enables safe parallel execution without requiring runtime synchronization overhead, thus reducing latency while maintaining reliability.
2Productivity
If multicore microprocessors are used to increase computing capacity, then productivity is improved, but the risk of execution conflicts and reliability loss increases
Solution Approach 1:
By dividing cyclic tasks into parent and child subtasks that can be assigned to different cores, the system utilizes multicore computing capacity for parallel execution while maintaining clear boundaries between concurrent executions, thereby preventing conflicts and preserving reliability.
Solution Approach 2:
The handover protocol acts as an intermediary mechanism between parent and child subtasks executed on different cores. This protocol ensures safe transitions and coordination between parallel execution streams, enabling productivity gains from multicore processing while maintaining execution safety.
3Reliability
If sequential execution with semaphores is used to ensure safety, then reliability is improved, but the parallel-processing capabilities of multicore processors are not fully utilized
Solution Approach 1:
The task segmentation into parent and child subtasks enables different portions of the cyclic task to execute in parallel on different cores, fully utilizing multicore capabilities while maintaining safety through the structured handover protocol rather than sequential semaphore-based execution.
Solution Approach 2:
The system dynamically assigns parent and child subtasks to appropriate microprocessor cores based on availability and load, enabling flexible parallel execution that fully utilizes multicore resources while maintaining safety through the handover protocol, rather than rigid sequential execution.
Data Source
AI summary
Disclosed is a method for controlling an engine control unit which includes at least two microprocessor cores, including steps of executing a parent subtask and at least one child subtask. The method includes the following steps: —determining the number of executables which remain to be executed in the last child subtask of the first period when the parent subtask of the second period starts; and—determining the number of executables already executed in the parent subtask of the second period when the last child subtask of the first period finishes.

