It would be nice if various properties of the FIFOs would be documented. What comes to mind is
maximum throughput (SyncFIFO of depth == 1 only does a throughput of 50%, same for SyncFIFOBuffered with depth <=2)
dependencies between the interface signals (does w_stream.ready depend combinatorially on r_stream.ready?, does r_stream.valid depend combinatorially on w_stream.valid?)
We could do that, but I think I'm more interested in deprecating lib.fifo in favor of a stream-based lib.queue with nicer properties (e.g. higher throughput in edge cases).
It would be nice if various properties of the FIFOs would be documented. What comes to mind is
SyncFIFO
ofdepth == 1
only does a throughput of50%
, same forSyncFIFOBuffered
withdepth <=2
)w_stream.ready
depend combinatorially onr_stream.ready
?, doesr_stream.valid
depend combinatorially onw_stream.valid
?)