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

RocketTile: do not distort placement when hartid is not constant #2432

Merged
merged 1 commit into from
Apr 25, 2020

Conversation

terpstra
Copy link
Contributor

When hartid is not a constant, driving it to the I$ D$ and CSR file directly from a Tile IO distorts placement of the core. These registers alleviate that.

However, when the hartid IS a constant, these registers are unneeded. I believe chisel will eliminate the registers via constant propagation.

Type of change: other enhancement
Impact: no functional change
Development Phase: implementation

Release Notes
Pipeline tile hartid input.

@terpstra terpstra requested review from hcook and aswaterman April 24, 2020 19:26
Copy link
Member

@hcook hcook left a comment

Choose a reason for hiding this comment

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

"constants" :(

you'd think i would learn...

@terpstra terpstra merged commit 3fc2850 into master Apr 25, 2020
@terpstra terpstra deleted the pipeline-hartid branch April 25, 2020 01:27
@ingallsj
Copy link
Contributor

mark as multi-cycle path instead of adding registers?

@aswaterman
Copy link
Member

Need some Chisel support for that, and a bunch of other infrastructural plumbing for different tools. Until that exists, the tiny number of flops is fine.

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.

4 participants