Skip to content

Conversation

soheilshahrouz
Copy link
Contributor

This PR includes the following changes:

  1. Creates nodes and edges in RR graph based on scatter-gather patterns specifed in the architecture file.
  2. Updates router lookahead map to handle CHANZ nodes properly.
  3. Computes indexed data for CHANZ nodes.
  4. Removes 3-d (with above and under) switch blocks from code

soheilshahrouz and others added 30 commits September 5, 2025 12:44
@github-actions github-actions bot added the docs Documentation label Sep 26, 2025
@soheilshahrouz
Copy link
Contributor Author

Titan 2D

Metric master.txt feature.txt
vtr_flow_elapsed_time 1 1.01962283887379
max_vpr_mem 1 0.988996538527656
pack_time 1 1.0159114629532
placed_wirelength_est 1 1
place_time 1 1.03434272913768
placed_CPD_est 1 1
routed_wirelength 1 1
critical_path_delay 1 1
crit_path_route_time 1 1.01068496559616

@soheilshahrouz
Copy link
Contributor Author

soheilshahrouz commented Sep 29, 2025

Comparison between 3D and 2D architectures on this branch

6 upward and 6 downward connections everywhere
The delay of an interdie mux twice an L4 (118ps vs. 59ps)
fanin = fanout = 30

Titan other

Pack Time Place Time Route Time WL CPD
0.988 0.997 1.009 0.925 0.968

Titan 23

Pack Time Place Time Route Time WL CPD
1.013 0.985 0.963 0.898 0.899

Comparison between 3D and 2D architectures on master
Titan other

fanin = fanout = 60
No control over the number of CHANZ connections

Metric pack time place time route time WL CPD
3D/2D ratio 0.983 0.997 1.109 0.945 0.970

@vaughnbetz
Copy link
Contributor

Looks good! I'm reviewing now; if you can resolve the conflicts that would be good.

Copy link
Contributor

@vaughnbetz vaughnbetz 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 so far. Done up to (but not including) libs/librrgraph/src/io/gen/rr_graph_uxsdcxx.h

No critical changes flagged here, but some clean ups / commenting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Documentation lang-cpp C/C++ code libarchfpga Library for handling FPGA Architecture descriptions libvtrutil VPR VPR FPGA Placement & Routing Tool
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants