Skip to content

feat: add support for YX routing algorithm#193

Merged
fischeti merged 7 commits into
mainfrom
lleone/yx-routing
Jun 19, 2026
Merged

feat: add support for YX routing algorithm#193
fischeti merged 7 commits into
mainfrom
lleone/yx-routing

Conversation

@Lore0599

@Lore0599 Lore0599 commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

YX Routing Algorithm

Add YX routing algorithm support to FlooNoC. YX routing resolves the Y dimension first, then X—the inverse of XY routing. Both algorithms now support unicast, multicast, and reduction operations.

  • RTL

    • hw/floo_pkg.sv: Added YXRouting to enum
    • hw/floo_route_select.sv: Unified XY/YX routing with separate unicast blocks; shared multicast instantiation
    • hw/floo_route_xymask.sv: Added RouteAlgo parameter; swapped dimension order for YX in masks
  • Floogen:

    • floogen/model/network.py: Extended routing algorithm matching to accept YX; removed XY-only restriction for collective operations
  • CI:

    • .gitlab-ci.yml: Added yx to compile-meshes and run-traffic matrix
    • Added floogen/examples/axi_mesh_yx.yml and nw_mesh_yx.yml configs

@Lore0599 Lore0599 requested a review from fischeti June 18, 2026 16:42
@Lore0599 Lore0599 marked this pull request as ready for review June 19, 2026 11:17
Comment thread hw/floo_route_select.sv Outdated

@fischeti fischeti left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM! Thanks for adding real support now. Just two minor things below

Comment thread hw/floo_pkg.sv Outdated
@fischeti fischeti changed the title hw: YX routing algorithm feat: add support for YX routing algorithm Jun 19, 2026
@fischeti fischeti merged commit f7f81e2 into main Jun 19, 2026
24 of 25 checks passed
@fischeti fischeti deleted the lleone/yx-routing branch June 19, 2026 15:52
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.

2 participants