Skip to content

Commit 620ded6

Browse files
explain why CHANZ wires are excluded in alloc_and_load_actual_fc() when setting fc
1 parent 221fafe commit 620ded6

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

vpr/src/route/rr_graph_generation/rr_graph.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1232,6 +1232,10 @@ std::vector<vtr::Matrix<int>> alloc_and_load_actual_fc(const std::vector<t_physi
12321232
// General case indicating that this pin connects to general-purpose routing
12331233

12341234
// Unidir tracks formed in pairs, otherwise no effect.
1235+
// CHANZ wires are not necessarily formed in pairs. Even if they are created in pairs,
1236+
// an OPIN may not connect to a pair of CHANZ wires going into different directions.
1237+
// For example, a in 2-layer architecture, an OPIN at the bottom layer may connect to CHANZ wires
1238+
// going upward, but it doesn't make sense to connect it to CHANZ wires going downward.
12351239
int fac = 1;
12361240
if (directionality == UNI_DIRECTIONAL && segment_inf[iseg].parallel_axis != e_parallel_axis::Z_AXIS) {
12371241
fac = 2;

0 commit comments

Comments
 (0)