A dynamic arbitration controller includes components for reading current
state information as well as records of known arbitration states which
may cause a deadlock condition, comparing the current state to the
records of known arbitration states and resolving deadlock conditions
during arbitration. The dynamic arbitration controller may include
circuits for storing and retrieving information related to the
arbitration. The dynamic arbitration controller may be implemented as a
circuit design or as a computer program product stored on machine
readable media.