Patent attributes
Systems, apparatuses, and methods for implementing a configurable packet arbiter with minimum progress guarantees are described. An arbiter includes at least control logic, a plurality of counters, and a tunables matrix. The tunables matrix stores values for a plurality of configurable parameters for the various transaction sources of the arbiter. These parameter values determine the settings that the arbiter uses for performing arbitration. One of the parameters is a minimum progress guarantee value that specifies how many times each source should be picked per interval. The minimum progress guarantee helps to reduce arbitration-related jitter. Also, the arbiter includes a grant counter for each source. After the minimum progress guarantees are satisfied, the arbiter selects the source with the lowest grant counter among the sources with packets eligible for arbitration. Then, the arbiter increments the grant counter of the winning source by a grant increment amount specific to the source.