Patent ID: 7814253

Claim:
A resource arbiter for processing requests for access to a resource, said requests being received from a plurality of requesters, said resource arbiter comprising: an ordering block to receive respective requests from a set of requesters in a first time slot, and selecting each of said respective requests to be present on a corresponding one of a plurality of priority paths based on a value received on a selection path in said first time slot, wherein each of said plurality of priority paths has a corresponding one of a set of priorities, each of said plurality of priority paths having a corresponding one of a plurality of identifiers; a fixed priority encoder to receive said respective requests on said plurality of priority paths, and to provide an identifier of a highest priority path in said plurality of priority paths on which a grant request indicating that access to said resource is requested is received; a sequencing block to generate said value on said selection path according to an arbitration policy; a plurality of memory elements connected as a shift register in a sequence, wherein each memory element stores one of a plurality of identifiers and shifts in the identifier stored in a previous memory element in the sequence in response to a corresponding one of a plurality of clock input signals, said plurality of identifiers respectively identifying said plurality of requesters; and a policy logic generating said plurality of clock input signals based on said path identifier and an arbitration policy.