Claims
- 1. In a system having multiple master devices coupled to a shared bus, a bus arbitration method comprising the steps of:
saving state information regarding round-robin arbitration among master devices all having a first priority level; interrupting round-robin arbitration when a master device having a higher priority level requests said shared bus; and resuming round-robin arbitration among said master devices at said first priority level using said state information.
- 2. The method of claim 1 wherein the step of saving comprises the step of:
registering a nearest master device ID corresponding to the next master device requesting said shared bus at said first priority level.
- 3. The method of claim 2 wherein the step of resuming comprises the step of:
granting said shared bus to the next master device identified by said nearest master device ID.
- 4. The method of claim 1 wherein the step of saving comprises the step of:
saving an index indicative of the next master device requesting said shared bus at said first priority level.
- 5. The method of claim 4 wherein the step of resuming comprises the step of:
granting said shared bus to the next master device identified by said nearest master device ID.
- 6. A bus arbitration circuit comprising:
a plurality of round-robin arbitration selection elements for selecting a next requesting master device among a plurality of master devices coupled to each round-robin arbitration selection element wherein each round-robin arbitration selection element includes:
a state memory indicating the last master device selected by said selection element; and a nearest function element coupled to said state memory for determining said next requesting master device as a function of said last master device; and a priority arbitration selection element coupled to said plurality of round-robin arbitration selection elements for selecting the highest priority master device among the selected requesting master devices selected by each of said plurality of round-robin arbitration selection elements.
- 7. The circuit of claim 6 wherein said state memory comprises a register.
- 8. The circuit of claim 6 wherein said nearest function element comprises a lookup table indexed by said last master device to locate said next requesting master device in said lookup table.
- 9. In a system having multiple master devices coupled to a shared bus, a bus arbitration apparatus comprising:
means for saving state information regarding round-robin arbitration among master devices all having a first priority level; means for interrupting round-robin arbitration when a master device having a higher priority level requests said shared bus; and means for resuming round-robin arbitration among said master devices at said first priority level using said state information.
- 10. The system of claim 9 wherein the means for saving comprises:
means for registering a nearest master device ID corresponding to the next master device requesting said shared bus at said first priority level.
- 11. The system of claim 10 wherein the means for resuming comprises:
means for granting said shared bus to the next master device identified by said nearest master device ID.
- 12. The system of claim 9 wherein the means for saving comprises:
means for saving an index indicative of the next master device requesting said shared bus at said first priority level.
- 13. The method of claim 12 wherein the means for resuming comprises:
means for granting said shared bus to the next master device identified by said nearest master device ID.
RELATED PATENTS
[0001] This patent is related to co-pending, commonly owned United States Patent Application Serial Number 01-876, filed (concurrently herewith), entitled METHODS AND STRUCTURE FOR IMPROVED FAIRNESS BUS ARBITRATION and is related to co-pending, commonly owned United States Patent Application Serial Number 01-831, filed (concurrently herewith), entitled METHODS AND STRUCTURE FOR DYNAMIC MODIFICATIONS TO ARBITRATION FOR A SHARED RESOURCE, both of which are hereby incorporated herein by reference.