diff options
author | gatecat <gatecat@ds0.me> | 2022-12-17 10:49:51 +0000 |
---|---|---|
committer | gatecat <gatecat@ds0.me> | 2022-12-17 10:50:20 +0000 |
commit | ccb573298c28d84f3d1dc468ae5a701bb7ee3cf0 (patch) | |
tree | e92a42b1c26a368b9ebc59b23fc33dc17ad42d44 | |
parent | 0eb53d59d84ea1c46de7d9e25eb5a9901544202d (diff) | |
download | nextpnr-ccb573298c28d84f3d1dc468ae5a701bb7ee3cf0.tar.gz nextpnr-ccb573298c28d84f3d1dc468ae5a701bb7ee3cf0.tar.bz2 nextpnr-ccb573298c28d84f3d1dc468ae5a701bb7ee3cf0.zip |
heap: encourage more spreading of heterogenous chains
Signed-off-by: gatecat <gatecat@ds0.me>
-rw-r--r-- | common/place/placer_heap.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/common/place/placer_heap.cc b/common/place/placer_heap.cc index 0dfc29e6..339b88e7 100644 --- a/common/place/placer_heap.cc +++ b/common/place/placer_heap.cc @@ -663,7 +663,7 @@ class HeAPPlacer if (cell->cluster != ClusterId()) { const auto base = cell_locs[cell->name]; for (auto child : cluster2cells.at(cell->cluster)) { - if (child->type == cell->type && child != cell) + if (child != cell) chain_size[cell->name]++; Loc offset = ctx->getClusterOffset(child); cell_locs[child->name].x = std::max(0, std::min(max_x, base.x + offset.x)); @@ -856,7 +856,7 @@ class HeAPPlacer // Was now placed, ignore if (ci->bel != BelId()) continue; - // log_info(" Legalising %s (%s)\n", top.second.c_str(ctx), ci->type.c_str(ctx)); + // log_info(" Legalising %s (%s) %d\n", top.second.c_str(ctx), ci->type.c_str(ctx), top.first); FastBels::FastBelsData *fb; fast_bels.getBelsForCellType(ci->type, &fb); int radius = 0; |