Module Fifo.With_interface

Create FIFO using interfaces.

Parameters

Signature

module I : sig ... end
module O : Interface.S with type 'a t = 'a t
val create : Signal.t Interface.Create_fn(I)(O).t create_params

Create a normal or showahead fifo using different read-before-write or write-before-read (semantically) rams.

val classic : ?⁠extra_reg:Hardcaml__.Import.bool -> Signal.t Interface.Create_fn(I)(O).t create_params

Create fifo using read-before-write ram only. It may still be used in showahead mode and include an extra register stage. Latency is slightly higher than the version built by create.