Skip to content

Add fast arbiter module (masked round-robin) - #295

Merged
awalsemann merged 4 commits into
masterfrom
fast-arbiter
Oct 28, 2026
Merged

awalsemann merged 4 commits into
masterfrom
fast-arbiter

Conversation

@cbespin

@cbespin cbespin commented Oct 27, 2026

Copy link
Copy Markdown
Contributor

This MR adds a masked round-robin arbiter that is a (mostly) drop-in replacement for rrp_arbiter. It uses a mask to identify relevant input streams that are then dealt with in a round-robin fashion.
It offers priority mode for selected input channels (which differs from rrp_arbiter by also requiring data on that stream, not reserving the output for data). To achieve the same functionality, the prioritization has to dealt with upstream.

The masking makes this significantly faster by reducing the amount of logic levels and utilizing carry instances.

@cbespin
cbespin requested a review from awalsemann October 27, 2026 15:00
@cbespin cbespin self-assigned this Oct 27, 2026

@awalsemann awalsemann left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Minor changes could be implemented, but it should work as is.

@awalsemann
awalsemann merged commit dd5a8f7 into master Oct 28, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants