Hardcaml_circuits.Arbiters
Arbiter circuits. Given a set of requesters the arbiter chooses one to succeed.
module Index : sig ... end
Priority 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.list
Rotate 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 ->
'a
Find 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 ... end
Round-robin arbiters with priority.