Patent ID: 7865647

Claim:
A method of arbitrating access to a resource, the method comprising: receiving resource requests; storing the resource requests in a queue, wherein the queue comprises queue slots, wherein each queue slot stores one of the resource requests and is associated with a static priority and wherein at least one of the queue slots is associated with a token, wherein resource requests are assigned to random or arbitrarily selected available queue slots; determining if a resource is available to service at least one of the resource requests; initiating an arbitration cycle in response to the determination that the resource is available, wherein the arbitration cycle comprises: selecting the at least one queue slot associated with the token; selecting the resource request from the at least one selected queue slot if the at least one selected queue slot is storing one of the resource requests or a resource request from the queue slot that has the highest static priority for servicing; and associating at least one different queue slot with the token.