-
Notifications
You must be signed in to change notification settings - Fork 17
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
Spit xbar into two levels #301
base: main
Are you sure you want to change the base?
Conversation
aa7d051
to
d2d8797
Compare
rebased onto draft pinmux changes |
d2d8797
to
f5b35a4
Compare
rebased |
% for block in config.blocks: | ||
% if not block.name == "gpio": | ||
% if block.name not in ["gpio", "i2c", "spi"]: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it may be nicer to add field to a block which states which crossbar it should be in. Instead of hard coding certain blocks in the templates.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fair enough, I've had a go. How does it look to you now?
f5b35a4
to
0b3a015
Compare
0b3a015
to
99c2962
Compare
Attempt to reduce the depth of xbar logic on critical timing paths to/from the HyperRAM/SRAM by moving most peripherals from the main cross-bar to a new "peri" (peripheral) sub-crossbar. Keeps addresses the same, but some few devices have increased access latency due to being moved to xbar_peri or to improve QoR. Blocks with increased access latency: timer, system_info, & hw_rev. Blocks with decreased access latency: plic.
99c2962
to
fe713fc
Compare
rebase |
Attempt to reduce the depth of xbar logic on critical timing paths to/from the HyperRAM/SRAM by moving most peripherals from the main cross-bar to a new "peri" (peripheral) sub-crossbar. Keeps addresses the same, but some few devices have increased access latency due to being moved to xbar_peri or to improve QoR.
Blocks with increased access latency: timer, system_info, & hw_rev.
Blocks with decreased access latency: plic.
Seems to improve timing and area utilisation.