MULTI-PROCESSING SYSTEM AND A METHOD OF EXECUTING A PLURALITY OF DATA PROCESSING TASKS
First Claim
1. A multi-processor circuit, comprisinga plurality of processing elements each configured to execute at least a respective task comprising execution of a series of instructions;
- a shared resource coupled to the plurality of processing elements;
an arbitration circuit coupled to the processing elements and configured to arbitrate conflicting access requests to the shared resource from the plurality of processing elements dependent on priorities assigned to the processing elements;
priority setting circuitry configured to measure an indication of a speed of progress of execution of respective ones of the tasks and to set the priority for each processing element that executes a particular one of the tasks dependent on the measured indication of the speed of progress of execution of the series of instructions of the particular one of the tasks.
10 Assignments
0 Petitions
Accused Products
Abstract
A plurality of data processing tasks with processing elements (10) that contend for a resource (18). Execution of each task comprising executing a series of instructions. During execution indications are measured of the speed of progress of executing the instructions for respective ones of the tasks. Requests to access the resource (18) for different ones of the tasks are arbitrated, a priority for judging arbitration being assigned to each task based on the measured indication of the speed of progress of the task. At least over a part of a range of possible speed of progress values increasingly higher priority is assigned in case of increasingly lower indication of the speed of progress.
-
Citations
15 Claims
-
1. A multi-processor circuit, comprising
a plurality of processing elements each configured to execute at least a respective task comprising execution of a series of instructions; -
a shared resource coupled to the plurality of processing elements; an arbitration circuit coupled to the processing elements and configured to arbitrate conflicting access requests to the shared resource from the plurality of processing elements dependent on priorities assigned to the processing elements; priority setting circuitry configured to measure an indication of a speed of progress of execution of respective ones of the tasks and to set the priority for each processing element that executes a particular one of the tasks dependent on the measured indication of the speed of progress of execution of the series of instructions of the particular one of the tasks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of executing a plurality of data processing tasks with processing elements that contend for a resource, execution of each task comprising executing a series of instructions, the method comprising
measuring indications of the speed of progress of executing the instructions for respective ones of the tasks; arbitrating requests to access the resource for different ones of the tasks, a priority for judging arbitration being assigned to each task based on the measured indication of the speed of progress of the task, increasingly higher priority being assigned in case of increasingly lower indication of the speed of progress, at least over a part of a range of possible speed of progress values. - View Dependent Claims (10, 11, 12, 13, 14, 15)
Specification