Repository navigation
Replace the local interconnect with a software-configurable HCI (log) interconnect - #111
Open
luca24balboni wants to merge 2 commits into
Open
luca24balboni wants to merge 2 commits into
luca24balboni wants to merge 2 commits into
Conversation
luca24balboni
force-pushed
the
lb/Collectives-Parametrize-Magiav4-HCI
branch
6 times, most recently
from
October 7, 2026 14:07
664bb7d to
950cee1
Compare
luca24balboni
force-pushed
the
lb/Collectives-Parametrize-Magiav4-HCI
branch
8 times, most recently
from
October 26, 2026 09:59
c3c7b8e to
95884cb
Compare
luca24balboni
changed the base branch from
main
to
lb/Collectives-Parametrize-Magiav4
October 26, 2026 11:08
luca24balboni
force-pushed
the
lb/Collectives-Parametrize-Magiav4-HCI
branch
from
November 4, 2026 11:16
6ec7f6c to
fc4872e
Compare
luca24balboni
force-pushed
the
lb/Collectives-Parametrize-Magiav4
branch
from
November 4, 2026 11:16
21ed3a4 to
3b40b77
Compare
Member
|
Ciao, I will look at the code in more detail but one thign that I think should go here is the support for misaligned access in RedMulE. I thought we had that already, but it's disabled. Claudio-generated instructions to enable it (I did not check the specific lines of code but generally speaking they check out):
Maybe instead of defaulting to 1 we can expose this in a package parameter (with default 1 - I really see no reason to not support misaligned access). |
luca24balboni
force-pushed
the
lb/Collectives-Parametrize-Magiav4-HCI
branch
from
November 9, 2026 11:47
fc4872e to
bf4f4ec
Compare
luca24balboni
force-pushed
the
lb/Collectives-Parametrize-Magiav4
branch
from
November 9, 2026 11:47
3b40b77 to
73caae8
Compare
luca24balboni
force-pushed
the
lb/Collectives-Parametrize-Magiav4-HCI
branch
from
November 9, 2026 15:00
bf4f4ec to
37bc98f
Compare
luca24balboni
force-pushed
the
lb/Collectives-Parametrize-Magiav4
branch
2 times, most recently
from
November 11, 2026 09:05
2fb9b65 to
08f9a1e
Compare
Collaborator
|
Addressing #91 |
…ol register behind ctrl_demux
luca24balboni
force-pushed
the
lb/Collectives-Parametrize-Magiav4-HCI
branch
from
November 12, 2026 10:29
842213e to
54fb751
Compare
luca24balboni
marked this pull request as ready for review
November 12, 2026 12:20
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
This PR replaces the local interconnect of magia_isle and makes the arbitration between accelerators and cores configurable from software. It also lets RedMulE access the TCDM at misaligned addresses.
New interconnect:
magia_hci_interconnect replaces local_interconnect, and HCI moves to 2.6.1.
Configurable arbitration:
A new control register (obi_slave_ctrl_hci) sets how the interconnect arbitrates between the wide side (RedMulE and iDMA) and the narrow side (cores).
It controls which side has priority and a programmable priority ratio.
At reset the policy is a fair 1:2 round-robin.
RedMulE misaligned access:
RedMulE can now access the TCDM at addresses that are not aligned to a bank word.
The new TileCfg.RedMule.MisalignedAccess enables it, and it is on by default.
When it is on, the RedMulE HCI port is one bank word (32 bit) wider, so it uses one more bank on the interconnect.
Tests and SW
New magia_stats.h, which now holds the cycle and time counter helpers previously in magia_tile_utils.h.
New test hci_arb_redmule_bench: a RedMulE run under the different arbitration policies.
matmul_compare_spatz_test updated.