Skip to content

Add ringbuffer components#1208

Open
lmbollen wants to merge 10 commits intomainfrom
lucas/ringbuffer-components2
Open

Add ringbuffer components#1208
lmbollen wants to merge 10 commits intomainfrom
lucas/ringbuffer-components2

Conversation

@lmbollen
Copy link
Copy Markdown
Contributor

@lmbollen lmbollen commented Feb 24, 2026

What (what did you do)
Add dedicated components that implement the ringbuffer memories. These components use renewed Protocols infrastructure that aims to make it easier to create components using high level composition of inherently correct Circuits rather than creating the low level implementations by hand.

Why (context, issues, etc.)
To simplify the hardware architecture and the way we describe our Circuits.

Dear reviewer (anything you'd like the reviewer to pay close attention to?)
Whether the new components and their types improves the readability / robustness of the code.

AI disclaimer (heads-up for more than inline autocomplete)
Used AI to generate the ringbuffer tests.

TODO

Cross-out any that do not apply

  • Update documentation, including docs/
  • Link to existing issue

@lmbollen lmbollen changed the base branch from main to lucas/addressable-bytes-wb February 24, 2026 11:13
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch from f4cb42b to efcab35 Compare February 24, 2026 11:18
@lmbollen lmbollen force-pushed the lucas/addressable-bytes-wb branch 4 times, most recently from 9272cbb to 4c5facf Compare February 24, 2026 11:46
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch 2 times, most recently from 0e17e3f to beb7bfa Compare February 24, 2026 13:08
@lmbollen lmbollen force-pushed the lucas/addressable-bytes-wb branch from 4c5facf to ae5f929 Compare February 24, 2026 13:14
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch from beb7bfa to fa3df5d Compare February 24, 2026 13:55
@lmbollen lmbollen force-pushed the lucas/addressable-bytes-wb branch 2 times, most recently from 0fbfaa7 to 133ff8f Compare February 25, 2026 12:44
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch from fa3df5d to a0adbac Compare February 25, 2026 12:52
@lmbollen lmbollen force-pushed the lucas/addressable-bytes-wb branch 3 times, most recently from 6c820a4 to b043367 Compare March 2, 2026 10:52
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch 3 times, most recently from 4c1d105 to 323b817 Compare March 2, 2026 12:56
@lmbollen lmbollen force-pushed the lucas/addressable-bytes-wb branch from b043367 to 48dc51f Compare March 2, 2026 13:05
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch from 323b817 to 52cf480 Compare March 2, 2026 13:06
@lmbollen lmbollen force-pushed the lucas/addressable-bytes-wb branch from 3b469f4 to 59f362f Compare March 2, 2026 16:26
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch 2 times, most recently from 542437e to e6a4972 Compare March 3, 2026 12:55
@lmbollen lmbollen force-pushed the lucas/addressable-bytes-wb branch 5 times, most recently from 1e426ce to 580376d Compare March 6, 2026 13:45
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch from e6a4972 to 02422a8 Compare March 9, 2026 08:12
@lmbollen lmbollen force-pushed the lucas/addressable-bytes-wb branch 2 times, most recently from f11cde9 to 86da3ab Compare March 25, 2026 14:57
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch from 42564c2 to 24261b6 Compare March 25, 2026 15:58
@lmbollen lmbollen force-pushed the lucas/addressable-bytes-wb branch from 86da3ab to bee53a8 Compare March 26, 2026 11:56
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch from 24261b6 to d3ce3e6 Compare March 26, 2026 11:57
Base automatically changed from lucas/addressable-bytes-wb to main March 26, 2026 12:08
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch 2 times, most recently from bd506fe to 4224b98 Compare March 30, 2026 11:48
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch 6 times, most recently from 4213bb0 to dd62211 Compare April 15, 2026 09:52
@lmbollen lmbollen marked this pull request as ready for review April 15, 2026 10:39
@lmbollen lmbollen requested a review from rslawson April 15, 2026 10:39
Copy link
Copy Markdown
Contributor

@martijnbastiaan martijnbastiaan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is hard to review, because it's missing your intent. That is, there isn't sufficient documentation for me to determine that your implementation/tests matches what you had in mind. Could you take a look?

Comment thread bittide/src/Bittide/Ringbuffer.hs
Comment thread bittide/src/Bittide/Ringbuffer.hs
Comment thread bittide/src/Bittide/Ringbuffer.hs Outdated
Comment thread bittide/src/Bittide/Ringbuffer.hs
Comment thread bittide/src/Bittide/Ringbuffer.hs Outdated
Comment thread bittide/src/Bittide/Ringbuffer.hs Outdated
@lmbollen lmbollen force-pushed the lucas/ringbuffer-components2 branch from abe55b1 to 401ac58 Compare April 20, 2026 12:44
lmbollen and others added 2 commits April 20, 2026 14:58
Co-authored-by: Martijn Bastiaan <martijn@qbaylogic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants