IP Library Granted Patent US 6,990,541
Granted Patent B2
US 6,990,541 · App. 10/302,133 · Granted Jan 24, 2006

Arbitration unit for prioritizing requests based on multiple request groups

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,990,541
App. No.
10/302,133
Granted
Jan 24, 2006
Kind
B2
Abstract

An arbitration unit includes an input unit, a selection unit and an output unit. The input unit may receive a plurality of input requests on a plurality of inputs. The selection unit may prioritize inputs into a priority order and may also select up to two of the input requests having a higher priority than others of the plurality of input requests during a current arbitration cycle. The output unit may provide an output indicative of which of the plurality of input requests were selected. During a subsequent arbitration cycle, the selection unit may reprioritize the plurality of inputs depending upon which of the plurality of input requests were selected.

Claims (47)

1. An arbitration unit comprising:

an input unit configured to receive a plurality of input requests on a plurality of inputs;

a selection unit coupled to said input unit and configured to prioritize said plurality of inputs into a priority order and during a current arbitration cycle to select up to two of said plurality of input requests having a higher priority than others of said plurality of input requests; and

an output unit coupled to said selection unit and configured to provide an output indicative of which of said up to two of said plurality of input requests were selected;

wherein upon a subsequent arbitration cycle, said selection unit is further configured to reprioritize said plurality of inputs depending upon which of said up to two of said plurality of input requests were selected.

2. The arbitration unit as recited in claim 1 , wherein said selection unit is further configured to reprioritize said plurality of inputs such that during said subsequent arbitration cycle said inputs corresponding to said selected input requests and any other of said plurality of inputs having a higher priority than said selected input requests have a lower priority than all others of said plurality of inputs while maintaining a relative priority order.

3. The arbitration unit as recited in claim 2 , wherein one input request of said up to two of said plurality of input requests has a high priority and another of said up to two of said plurality of input requests has a low priority.

4. The arbitration unit as recited in claim 3 , wherein said selection unit includes a state pointer configured to hold a value corresponding to one of said plurality of inputs having a higher priority than all others of said plurality of inputs.

5. The arbitration unit as recited in claim 4 , wherein said selection unit further includes a control unit coupled to said priority pointer and is configured to store said value within said state pointer.

6. The arbitration unit as recited in claim 5 , wherein said selection unit is configured to select said up to two of said plurality of input requests dependent upon a first and a second selection control signal.

7. The arbitration unit as recited in claim 6 , wherein said control unit is further configured to calculate said value by adding one to a number corresponding to said low priority input request in response to said selection unit selecting two of said plurality of input requests.

8. The arbitration unit as recited in claim 6 , wherein said control unit is further configured to calculate said value by adding one to a number corresponding to said high priority input request in response to said selection unit selecting one of said plurality of input requests.

9. The arbitration unit as recited in claim 6 , wherein in response to selecting none of said plurality of input requests, said selection unit is configured to not reprioritize said plurality of inputs.

10. A method of arbitrating a plurality of input requests received on a plurality of groups of inputs, said method comprising:

prioritizing each of said plurality of groups of inputs into a first priority order;

selecting up to two of said plurality of input requests within each group having a higher priority than others of said plurality of input requests based upon said first priority order;

receiving an indication indicative of said plurality of input requests within a group and prioritizing said indications into a second priority order;

selecting one of said plurality of groups of inputs based upon said second priority order and providing a grant indication indicative of which of said plurality of groups of inputs was selected; and

providing an output indicative of which of said plurality of input requests was selected in response to receiving said grant indication.

11. The method as recited in claim 10 further comprising reprioritizing said plurality of inputs such that during a subsequent arbitration cycle said inputs corresponding to said selected input requests and any other of said plurality of inputs having a higher priority than said selected input requests have a lower priority than all others of said plurality of inputs while maintaining a relative priority order.

12. An arbitration unit for arbitrating a plurality of input requests received on a plurality of groups of inputs, said arbitration unit comprising:

means for prioritizing each of said plurality of groups of inputs into a first priority order;

means for selecting up to two of said plurality of input requests within each group having a higher priority than others of said plurality of input requests based upon said first priority order;

means for receiving an indication indicative of said plurality of input requests within a group and ordering said indications into a second priority order;

means for selecting one of said plurality of groups of inputs based upon said second priority order and providing a grant indication indicative of which of said plurality of groups of inputs was selected; and

means for providing an output indicative of which of said plurality of input requests was selected in response to receiving said grant indication.

13. An arbitration unit comprising:

an input unit configured to receive a plurality of input requests on a plurality of inputs;

a selection unit coupled to said input unit and configured to prioritize said plurality of inputs into a priority order and during a current arbitration cycle to select two or more of said plurality of input requests having a higher priority than others of said plurality of input requests; and

an output unit coupled to said selection unit and configured to provide an output indicative of which of said two or more of said plurality of input requests were selected;

wherein upon a subsequent arbitration cycle, said selection unit is further configured to reprioritize said plurality of inputs depending upon which of said two or more plurality of input requests were selected.

14. The arbitration unit as recited in claim 13 , wherein said selection unit is further configured to reprioritize said plurality of inputs such that during said subsequent arbitration cycle said inputs corresponding to said selected input requests and any other of said plurality of inputs having a higher priority than said selected input requests have a lower priority than all others of said plurality of inputs while maintaining a relative priority order.

15. An arbitration unit comprising:

an input unit configured to receive a plurality of input requests on a plurality of inputs;

a selection unit coupled to said input unit and configured to prioritize said plurality of inputs into a priority order and during a current arbitration cycle, in response to particular combinations of inputs, to select at least two of said plurality of input requests having a higher priority than others of said plurality of input requests; and

an output unit coupled to said selection unit and configured to provide an output indicative of which of said at least two of said plurality of input requests were selected;

wherein upon a subsequent arbitration cycle, said selection unit is further configured to reprioritize said plurality of inputs depending upon which of said at least two of said plurality of input requests were selected.

16. The arbitration unit as recited in claim 15 , wherein said selection unit is configured to select said at least two of said plurality of input requests in response to said particular combinations of inputs including said plurality of input requests being received on at least two of said plurality of inputs.

17. The arbitration unit as recited in claim 15 , wherein said selection unit is configured to select less than two of said plurality of input requests in response to said particular combinations of inputs including said plurality of input requests being received on less than two of said plurality of inputs.

18. The arbitration unit as recited in claim 17 , wherein said selection unit includes a state pointer configured to hold a value corresponding to one of said plurality of inputs having a higher priority than all others of said plurality of inputs.

19. The arbitration unit as recited in claim 18 , wherein said selection unit further includes a control unit coupled to said priority pointer and is configured to store said value within said state pointer.

20. The arbitration unit as recited in claim 19 , wherein said selection unit is configured to select said at least two of said plurality of input requests dependent upon a first and a second selection control signal.

21. The arbitration unit as recited in claim 18 , wherein said control unit is further configured to calculate said value by adding one to a number corresponding to said low priority input request in response to said selection unit selecting two of said plurality of input requests.

22. The arbitration unit as recited in claim 18 , wherein said control unit is further configured to calculate said value by adding one to a number corresponding to said high priority input request in response to said selection unit selecting one of said plurality of input requests.

23. The arbitration unit as recited in claim 18 , wherein in response to selecting none of said plurality of input requests, said selection unit is configured to not reprioritize said plurality of inputs.

24. The arbitration unit as recited in claim 15 , wherein said selection unit is further configured to reprioritize said plurality of inputs such that during said subsequent arbitration cycle said inputs corresponding to said selected input requests and any other of said plurality of inputs having a higher priority than said selected input requests have a lower priority than all others of said plurality of inputs while maintaining a relative priority order.

25. The arbitration unit as recited in claim 15 , wherein one input request of said at least two of said plurality of input requests has a high priority and another of said at least two of said plurality of input requests has a low priority.

Assignments (1)
MERGER AND CHANGE OF NAME Recorded Dec 14, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037280/0188 →