We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent b4322c1 commit 1d645ddCopy full SHA for 1d645dd
1 file changed
src/grt/src/GlobalRouter.cpp
@@ -1441,8 +1441,9 @@ std::vector<RoutePt> GlobalRouter::findOnGridPositions(
1441
pos_on_grid = grid_->getPositionOnGrid(rect_middle);
1442
// if a macro/pad pin is unreachable due to not having enough resources
1443
// at its on grid position, get the position closest to the macro/pad
1444
- // boundary to ensure routability
1445
- if (pin.isConnectedToPadOrMacro()
+ // boundary to ensure routability. CUGR has no FastRoute edge capacities
+ // to query, so it skips this heuristic and routes from the center.
1446
+ if (!use_cugr_ && pin.isConnectedToPadOrMacro()
1447
&& !isPinReachable(pin, pos_on_grid)) {
1448
pos_on_grid = grid_->getPositionOnGrid(
1449
pin.getPositionNearInstEdge(pin_box, rect_middle));
0 commit comments