Multicore Task Distribution for Real-Time Machine Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In a multicore processor environment, maintaining real-time properties required for machine control is challenging when a general-purpose OS is used, as conventional technologies fail to prevent degradation caused by factors other than time lag between instruction and execution, leading to issues in system and machine control.
Innovation Solution
An apparatus and method that generate identical periodic tasks and distribute them across multiple cores of a multicore processor, with the number of tasks determined by load conditions or operation modes, ensuring that these tasks are executed to maintain real-time properties in machine control while maintaining system control functionality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a general-purpose OS is used in a multicore processor to perform both system control and machine control, then cost is reduced and functionality is integrated, but real-time properties required for machine control deteriorate
Solution Approach 1:
The invention segments the machine control function into multiple identical periodic tasks that are distributed across multiple cores. Each core executes the same periodic task independently, creating redundant execution paths that ensure real-time properties are maintained even if one core fails to meet its deadline.
Solution Approach 2:
The invention applies local quality by having different cores execute identical periodic tasks with potentially different execution characteristics. Each core's execution of the periodic task is optimized for its local context, while the overall system benefits from the redundancy and diversity of execution across multiple cores.
2Reliability
If task migration is used to balance load across cores, then software real-time properties are maintained, but real-time properties still deteriorate due to other factors such as execution time lag
Solution Approach 1:
The invention performs preliminary action by pre-distributing identical periodic tasks to multiple cores before execution begins. This eliminates the need for task migration during runtime, as each core already has its copy of the periodic task ready to execute. The preliminary distribution ensures that execution time lag is minimized and real-time properties are maintained.
3Reliability
If multiple identical periodic tasks are distributed across multiple cores, then real-time properties are secured through redundancy, but system complexity increases
Solution Approach 1:
The invention uses copying by creating multiple identical copies of the periodic task and distributing them across different cores. Each copy is independent and executes the same function, providing redundancy without requiring complex inter-core communication or coordination mechanisms. This copying approach maintains simplicity while ensuring real-time properties.
4Reliability
If the number of periodic tasks is increased to handle higher load, then real-time properties are maintained under heavy load, but resource utilization efficiency decreases
Solution Approach 1:
The invention applies dynamics by making the number of periodic tasks adaptable to the system's load conditions. The system can dynamically adjust how many identical periodic tasks are distributed across cores based on the current operational mode and load, ensuring real-time properties are maintained when needed while optimizing resource utilization when load is lower.
Data Source
AI summary
An apparatus capable of executing a system control application generating system control tasks for system control and a machine control application for machine control under a general-purpose operating system includes a control unit configured to generate a plurality of identical periodic tasks of periodically performing a predetermined process related to the machine control, and cause at least two cores of a multicore processor to execute the generated periodic tasks, the multicore processor having a plurality of cores including the at least two cores.


