Browse Prior Art Database

Programmable Cascading Arbiter

IP.com Disclosure Number: IPCOM000106537D
Original Publication Date: 1993-Nov-01
Included in the Prior Art Database: 2005-Mar-21
Document File: 2 page(s) / 72K

Publishing Venue

IBM

Related People

Drehmel, RA: AUTHOR [+5]

Abstract

A method for arbitrating across multiple sources is described. Each source, or group of sources can be set to different arbitration priority levels. In addition, the priority levels and groupings can be reordered through a programmable interface.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Programmable Cascading Arbiter

      A method for arbitrating across multiple sources is described.
Each source, or group of sources can be set to different arbitration
priority levels.  In addition, the priority levels and groupings can
be reordered through a programmable interface.

      The possible request groups are broken up into their highest
desired granularity.  The highest granularity would be a source for
each priority level or a priority level for each source.  This may be
over designing the arbiter, so the highest desired granularity should
be implemented.  This is to say that groups will or could be
developed.  By developing these groups, the arbiter's size can be
reduced and the speed kept under control.

      Each of the priority levels will use a twisted round robin
arbiter.  The round robin's twist is on the advancement of the
pointer upon source selection.  In a normal round robin the pointer
is advanced from one source to another at the point of selection.  If
a source does not have a request then one of two things can occur.
One, no request is selected or two, the next request in the chain is
selected.  This method follows the second choice since a request will
be selected at each arbitration cycle if any request is available.

      In the standard round robin, once the selection is made the
pointer is always advanced to the next position even if that position
represents the request that was just selected.  The twist that is
applied here is that once selection is made the pointer is updated so
that it will make the last selected source lowest priority in that
level.  With this twisted round robin the arbiter will allow other
sources to share in the benefit of a non-requesting source, not just
the source that follows it.

      Each priority level will then select a single winner and pass
it to the next level.  Then at the ne...