amaranth icon indicating copy to clipboard operation
amaranth copied to clipboard

docs/stdlib/fifo: document fifo stream interfaces

Open purdeaandrei opened this issue 1 year ago • 3 comments

Rendered document: image

purdeaandrei avatar Aug 04 '24 19:08 purdeaandrei

These interfaces are meant to be transitionary, and the FIFOs themselves should be adapted to be stream-first. However, that would require some amount of design work and an RFC.

I realize we should probably document these things as they are in the interim, but I'm going to think for a while about how we document them.

whitequark avatar Aug 05 '24 03:08 whitequark

I understand, the renamed signals look not so idiomatic.

Just... my perspective as a new user was:

  1. I read the Data streams page, including the Completed pipeline example where I saw SyncFIFOBuffered connected up as a stream
  2. I got to the FIFO page, and I saw no sign of stream interface, so my first reaction was: something's not quite right, and I had to look in the source code to figure it out.

Are the names of w_stream/r_stream likely to change for the FIFOs? Cause if what's gonna happen is that the old single wire non-stream signals will disappear, and the fifo will only support the stream interface, then it sounds more like we should be deprecating the single wires, and documenting w_stream/r_stream.

purdeaandrei avatar Aug 05 '24 09:08 purdeaandrei

Are the names of w_stream/r_stream likely to change for the FIFOs? Cause if what's gonna happen is that the old single wire non-stream signals will disappear, and the fifo will only support the stream interface, then it sounds more like we should be deprecating the single wires, and documenting w_stream/r_stream.

I'm actually considering whether or not we should deprecate the interface entirely and make a new stream-only one. This is undecided yet.

whitequark avatar Aug 08 '24 17:08 whitequark