Method for arbitrating access to a shared resource
First Claim
1. A method for arbitrating access to a resource shared by several electronic elements and accessible according to access cycles clocked by a clock signal, wherein each element wishing to access the shared resource sends an access request, the method comprising:
- allocating each element a first counting value and a first penalty;
decrementing or incrementing the first counting value of each element, in synchronization with the clock signal;
incrementing or decrementing the first counting value of each element,, by a value equal to the first penalty, every time the element is selected for an access cycle; and
when several elements are simultaneously waiting to access the shared resource, selecting an element to access the resource if its first counting value is lower than or equal, or respectively higher than or equal, a determined threshold, and if its first counting value is lower, or respectively higher, than the first counting values of the other elements having sent an access request.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for arbitrating access to a resource shared by several electronic elements. Each element is allocated a first counting value and a first penalty, the first counting value is decremented in synchronization with a clock signal, and is incremented by a value equal to the first penalty every time the element is selected for an access cycle. When several elements are simultaneously waiting to access the shared resource, an element is selected to access the resource if its first counting value is lower than or equal to a determined threshold, and is lower than the first counting values of the other elements having sent an access request.
41 Citations
33 Claims
-
1. A method for arbitrating access to a resource shared by several electronic elements and accessible according to access cycles clocked by a clock signal, wherein each element wishing to access the shared resource sends an access request, the method comprising:
-
allocating each element a first counting value and a first penalty;
decrementing or incrementing the first counting value of each element, in synchronization with the clock signal;
incrementing or decrementing the first counting value of each element,, by a value equal to the first penalty, every time the element is selected for an access cycle; and
when several elements are simultaneously waiting to access the shared resource, selecting an element to access the resource if its first counting value is lower than or equal, or respectively higher than or equal, a determined threshold, and if its first counting value is lower, or respectively higher, than the first counting values of the other elements having sent an access request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A device for arbitrating access to a resource shared by several electronic elements, the shared resource being accessible according to access cycles clocked by a clock signal, each element wishing to access the shared resource having to send an access request, the device comprising:
-
first registers for storing, for each element, a first penalty individually allocated to each element;
first counters for individually allocating to each element a first counting value, and for decrementing, or incrementing, the first counting value in synchronization with the clock signal, and incrementing, or respectively decrementing, the first counting value by a value equal to the first penalty, every time the corresponding element is selected for an access cycle; and
a first comparison circuit for supplying, when several elements are simultaneously waiting to access the shared resource, a first selection signal designating an element the first counting value of which is lower than or equal, or respectively higher than or equal, to a determined threshold, and the first counting value of which is lower, or respectively higher, than the first counting values of the other elements having sent an access request. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A method for arbitrating access to a resource shared by several electronic elements and accessible according to access cycles clocked by a clock signal, wherein each element wishing to access the shared resource sends an access request, the method comprising:
-
allocating to the elements respectively first counting values and respectively first penalty values;
decrementing or incrementing the first counting values in synchronization with of the clock signal;
selecting one of the elements;
incrementing the first counting value of the selected element by the first penalty value of the selected element in response to the selecting step if the first counting values are decremented in synchronization with the clock signal;
decrementing the first counting value of the selected element by the first penalty value of the selected element in response to the selecting step if the first counting values are incremented in synchronization with the clock signal;
when plural of the elements are waiting to be selected;
determining whether any of the waiting elements has a first counting value that has attained a minimum access threshold;
if there is only one of the waiting elements that has a first counting value that has attained the minimum access threshold, then selecting the one element; and
if there are plural of the waiting elements having first count values that have attained the minimum access threshold, then selecting one of the waiting elements based on a comparison of the first counting values of the waiting elements with each other. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33)
-
Specification