Central Scheduling Unit with Look-Up Tables for Multiprocessor Task Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Efficient allocation and scheduling of tasks among multiple processing cores in multiprocessor devices is challenging, requiring autonomous task distribution and intuitive programming models to maximize resource utilization.

Innovation Solution

A multiprocessor architecture featuring a central scheduling unit (CSU) with look-up tables listing tasks and conditions for allocation, coupled with a hierarchical network of distribution units for task allocation and termination reporting, allowing for concurrent execution of regular and duplicable tasks with prioritization and quota management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a central scheduling unit with look-up tables is used to manage task allocation, then task scheduling efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvetask scheduling efficiencyVSAvoidscheduling unit complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The scheduling system is segmented into a central scheduling unit that manages task allocation logic and distributed processing cores that execute tasks. The look-up tables are divided into multiple tables (LUT0, LUT1, LUT2) that can be independently configured, allowing the scheduling logic to be broken down into manageable segments that improve efficiency without overwhelming complexity in any single component.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Task allocation criteria and scheduling logic are pre-configured in the look-up tables before runtime execution. The CSU loads task definitions, dependencies, and allocation rules into the LUTs in advance, allowing the system to make rapid scheduling decisions during runtime by simply querying the pre-computed tables rather than performing complex real-time calculations.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If autonomous task distribution is implemented in runtime, then resource utilization is maximized, but programming complexity increases

Engineering Contradiction:
Improveresource utilizationVSAvoidprogramming simplicity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The multiprocessor system implements autonomous task distribution where the central scheduling unit automatically allocates tasks to processing cores based on pre-configured criteria in the look-up tables. The system serves itself by making runtime scheduling decisions without requiring programmer intervention, thereby maximizing resource utilization while keeping the programming model simple.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The look-up tables act as an intermediary layer between the programmer's high-level task definitions and the low-level runtime scheduling decisions. Programmers simply define tasks and their criteria in the LUTs, and the CSU mediates the autonomous distribution by querying these tables and allocating tasks appropriately, shielding programmers from complex scheduling logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Manufacturing precision

If hierarchical distribution units are used for task allocation, then allocation precision is improved, but network complexity increases

Engineering Contradiction:
Improvetask allocation precisionVSAvoiddistribution network complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The distribution network is segmented into a hierarchical structure with a root distribution unit and multiple leaf distribution units. Each leaf DU manages a specific subset of processing cores, allowing task allocation to be divided into precise, localized decisions at the leaf level while the root DU coordinates overall task distribution. This segmentation improves allocation precision without creating a monolithic complex network.

Inventive Principle:
Principle #1Segmentation

4Reliability

If task termination reporting is implemented, then scheduling reliability is improved, but communication overhead increases

Engineering Contradiction:
Improvescheduling reliabilityVSAvoidcommunication overhead
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system implements a feedback mechanism where processing cores report task termination status back to the central scheduling unit. This feedback loop ensures the CSU has accurate information about completed tasks, enabling reliable scheduling decisions for subsequent task allocations. The feedback is efficiently managed through the existing distribution network without requiring excessive communication overhead.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3516515B1Scheduling of tasks in a multiprocessor device
Publication Date: 2024.02.14 RAMON SPACE LTD
  • EP3516515B1 patent drawingFigure 1
  • EP3516515B1 patent drawingFigure 2
  • EP3516515B1 patent drawingFigure 3

AI summary

Computational apparatus (20) includes multiple processing cores (22), which concurrently execute tasks that are respectively assigned to them. A central scheduling unit (CSU) (26) includes a CSU memory holding one or more look-up tables (LUTs)(70, 72, 74, 76) listing tasks for allocation to the processing cores and respective conditions for enabling of each of the tasks. The CSU receives indications of termination of the tasks by the processing cores, and selects, responsively to the indications, enabled tasks from the one or more LUTs for allocation to the processing cores. A network of distribution units (28, 30, 32) is connected between the CSU and the processing cores. The distribution units allocate the selected tasks from the CSU to the processing cores for execution and report the termination of the tasks from the processing cores to the CSU.