Patent ID: 7054330

Claim:
A method to arbitrate between a plurality of requests, the method comprising: identifying a winning request in each arbitration within a current round of arbitration based on a set of values stored in a mask register and a priority associated with a requestor of the winning request, wherein identifying the winning request comprises: identifying one or more requestors that are qualified to participate in the current round of arbitration based on the set of values in the mask register; determining which of the qualified requesters have requests in a queue; and selecting a requestor with a higher priority from the qualified requests that have requests in the queue; upon identifying the winning request in each arbitration, updating a value corresponding to the requestor of the winning request in the mask register to disqualify the requester of the winning request from further participation in the current round of arbitration; and resetting the set of values in the mask register when completing the current round of arbitration to allow each requestor to participate in the next round of arbitration.