Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bundle Bridge Tile MMIO Address Prefix #2533

Merged
merged 18 commits into from
Jul 8, 2020

Conversation

hcook
Copy link
Member

@hcook hcook commented Jun 25, 2020

In some configurations we want to be able to relocate the apparent base address of MMIO devices inside the tile. This is problematic for the fast path that the RocketCore has to the ITIM and DTIM, which has to know what the overridden base address should be. To address this limitation this PR adds another (optional) tile input "constant" that is or'd with the base address used in the ITIM and DTIM hit calculations.

This PR also cleans up a few loose ends left over from #2521 and #2497

Type of change: other enhancement

Impact: API modification

Development Phase: implementation

Release Notes

  • BaseTile.mmioAddressPrefixNode propagates a prefix or supplies a default 0.U
  • TileCrossingParamsLike.controlBaseAddressPrefixWhere to lookup prefix information location for tiles
  • mmioAddressPrefixSinkNodeOpt and hartIdSinkNodeOpt in HellaCache and ICache, defined iff the scratchpads are
  • certain TLBusWrapper subclasses will propagate their prefix information

@hcook hcook force-pushed the bundle-bridge-tile-local-address-prefix branch from 69170d4 to 938c633 Compare June 25, 2020 00:25
@hcook hcook requested review from mwachs5, aswaterman and terpstra June 25, 2020 00:29
@hcook hcook force-pushed the bundle-bridge-tile-local-address-prefix branch from 938c633 to 7618777 Compare June 25, 2020 00:41
Copy link
Member

@aswaterman aswaterman left a comment

Choose a reason for hiding this comment

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

Fine with me, given the description suggests you already thought about/tested deduplication.

Copy link
Contributor

@mwachs5 mwachs5 left a comment

Choose a reason for hiding this comment

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

Looks good. Might be nice to clarify how the "prefix" is applied, especially if it is actually OR-ed in similar to the hardID prefix

@hcook hcook force-pushed the bundle-bridge-tile-local-address-prefix branch from 99b6fd8 to d68e791 Compare June 27, 2020 16:19
@hcook hcook force-pushed the bundle-bridge-tile-local-address-prefix branch from d68e791 to 1cd3592 Compare July 6, 2020 21:12
@hcook hcook merged commit c459d0c into master Jul 8, 2020
@hcook hcook deleted the bundle-bridge-tile-local-address-prefix branch September 3, 2020 19:07
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.

3 participants