Change tile outputs to initialize with async reset #2611
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related issue:
Type of change: bug report
Impact: no functional change
Development Phase: implementation
Release Notes
Tile notification output ports should be reset to 0 asynchronously when using
SubsystemResetKey = ResetAsynchronous
. Since the module reset for the Tile is a stretchedBool()
reset, bring a second reset into the Tile sourced from the original external IO. When the notifications are placed in awithReset
block, this resets the registers driving the outputs asynchronously.@hcook, there's probably a cleaner way to connect the core_reset IO into the Tile...
Also changed the
RationalCrossing
so that the sink (which may be in an async reset domain) does not act on any output from the source (which may be synchronously reset some time later) until after the source has completed its reset at the first clock edge.