Hardcaml_circuits.ArbitersArbiter circuits. Given a set of requesters the arbiter chooses one to succeed.
module Index : sig ... endPriority is specified as either a offset to start searching from, or as a special mask.
val rotate_by_index :
(module Hardcaml.Comb.S with type t = 'a) ->
index:'a ->
data:'a Hardcaml.With_valid.t Base.list ->
'a Hardcaml.With_valid.t Base.listRotate element index in data to 0 using a log_shift circuit.
val select_next_with_clz :
(module Hardcaml.Comb.S with type t = 'a) ->
index:'a Index.t ->
'a ->
'aFind the 1st bit set in the input vector greater than index, but wrapping at the top back to bit 0 and on to index-1.
module Round_robin_with_priority : sig ... endRound-robin arbiters with priority.