US9128475B2ActiveUtilityA1
Parallelized program control based on scheduled expiry of time signal generators associated with respective processing units
Est. expiryNov 23, 2029(~3.3 yrs left)· nominal 20-yr term from priority
Inventors:Ramon Barth
G06F 9/4887G05B 2219/34407G05B 19/0421G05B 2219/2205G06F 9/4825G05B 2219/34411
64
PatentIndex Score
5
Cited by
25
References
17
Claims
Abstract
A processor comprises a plurality of processing units operating in parallel. Each processing unit is associated with a time signal generator upon the expiry of which the corresponding processing unit is capable to set expired time signal generator to a predefined duration of time. In case an end of the predefined duration of time deviates less than a predefined duration of time from a scheduled expiry of a time signal generator assigned to a different processing unit; predefined duration of time is modified.
Claims
exact text as granted — not AI-modifiedThe invention claimed is:
1. A control method for executing programs on a plurality of processing units operating in parallel, each processing unit being associated with a respective time signal generator upon expiry of which the control method is carried out on the processing unit associated with the respective expired time signal generator, the control method comprising:
selecting a program from a plurality of programs available for execution on the processing unit associated with the respective expired time signal generator;
determining a predefined duration of time being provided to the selected program before the control method is accessed again on the associated processing unit;
setting the respective expired time signal generator to the predefined duration of time;
starting the selected program on the associated processing unit;
determining whether an end of the predefined duration of time collides with an end of a different duration of time of the respective time signal generator assigned to a different processing unit;
modifying, if a result of the determining is positive, the predefined duration of time by taking into account a periodicity of points in time at which each processing unit is interrupted; and
preventing further accesses of the control method to another of the processing units when executing the control method on the processing unit associated with the respective expired time signal generator.
2. The control method of claim 1 , wherein the program available for execution is real-time capable, wherein a non-real-time capable operating system is additionally available for executing, and wherein for successive executions of the control method on a same processing unit the real-time capable program and the non-real-time capable operating system are selected in an alternating manner.
3. The control method of claim 2 , wherein predefined durations of time of the non-real-time capable operating system and of the real-time capable program complement each other to result in a cycle time being assigned to the processing unit associated with the respective expired time signal generator.
4. The control method of claim 1 , wherein modifying the predefined duration of time comprises a shift by a fixed value in the predefined duration of time.
5. The control method of claim 1 , a list being assigned to each processing unit, in which the programs assigned to this processing unit are listed, and selecting taking place under the entries in said list.
6. The control method of claim 5 , each entry comprising a priority and selecting being effected depending on the priorities.
7. The control method of claim 6 , further comprising:
entering a program into one of the lists on the basis of a past capacity utilization of at least one of the processing unit.
8. A control method for executing programs on a plurality of processing units operating in parallel, each processing unit being associated with a respective time signal generator upon the expiry of which the control method is carried out on the processing unit associated with the respective expired time signal generator, the control method comprising:
selecting a program from a plurality of programs available for execution on the processing unit associated with the respective expired time signal generator;
determining a predefined duration of time being provided to the selected program before the control method is accessed again on the processing unit associated with the respective expired time signal generator;
setting the respective expired time signal generator to the predefined duration of time starting the selected program on the processing unit;
comparing whether an end of the predefined duration of time deviates less than a predefined length of time from a scheduled expiry of a time signal generator assigned to a different processing unit; and
modifying the predefined duration of time, if a result of the comparing is positive, by taking into account a periodicity of points in time at which each processing unit is interrupted;
preventing further accesses of the control method to another of the processing units when executing the control method on the processing unit associated with the respective expired time signal generator.
9. The control method of claim 8 , wherein modifying the predefined duration of time comprises a shift by a fixed value in the predefined duration of time.
10. The control method of claim 8 , wherein the program available for execution is real-time capable, wherein a non-real-time capable operating system is additionally available for executing, and wherein for successive executions of the control method on a processing unit the real-time capable program and the non-real-time capable operating system are selected in an alternating manner.
11. The control method of claim 10 , wherein the predefined durations of time of the non-real-time capable operating system and of the real-time capable program complement each other to result in a cycle time being assigned to the processing unit.
12. A processor comprising:
a plurality of processing units operating in parallel according to a control method, each processing unit being associated with a respective time signal generator upon the expiry of which the processing unit associated with the respective expired time signal generator is configured to:
select a program from a plurality of programs available for execution,
determine a predefined duration of time being provided to the selected program before the control method is accessed again by the processing unit associated with the respective expired time signal generator,
set the respective expired time signal generator to the predefined duration of time, and
determine whether an end of the predefined duration of time deviates less than a predefined length of time from a scheduled expiry of a time signal generator assigned to a different processing unit;
wherein, if the end of the predefined duration of time deviates less than the predefined length of time from the scheduled expiry of the time signal generator assigned to the different processing unit, the predefined duration of time is modified;
wherein scheduled expiry times of all the time signal generators are stored in a memory area which can be accessed by each of the plurality of processing units for preventing further accesses of the control method to another of the processing units when executing the control method on the processing unit associated with the respective expired time signal generator.
13. The processor of claim 12 , wherein each time signal generator comprises a respective counter which is operated by a clock signal, each counter causing an interrupt in the processing unit assigned to it as soon as the counter reaches a predetermined value.
14. The processor of claim 13 , wherein each counter comprises a respective programmable divider for dividing a clock signal shared by all dividers into one respective clock signal assigned to a counter.
15. The processor of claim 12 , wherein each processing unit comprises a respective list, in which the programs assigned to the processing unit are listed.
16. The processor of claim 15 , each entry in the list comprising a priority.
17. The processor of claim 15 , a program is entered into one of the lists on the basis of a past capacity utilization of at least one of the processing unit.Join the waitlist — get patent alerts
Track US9128475B2 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.