rohd
rohd copied to clipboard
Add support to pipeline entire interfaces using an abstraction
Motivation
If modules leverage ROHD's Interface
s and want them propagated through a Pipeline
abstraction in ROHD, it requires the user to generate per-port connectivity through the Pipeline
and reconstruct per-stage Interface
s. It would be nice if the Pipeline
abstraction could take care of this automation.
Desired solution
Add to or extend functionality of Pipeline
to support pipelining Interface
s.
Alternatives considered
We could leave users to manually perform this themselves, which gives more flexibility but also more overhead.
Additional details
One tricky thing is that constructing a "matching" interface per-cycle depends on the Interface
implementation. Perhaps this development should be paired with something like an upgrade to Interface
that requires a "match" method. Maybe something from #36 could be useful.