Merge pull request #1065 from YosysHQ/gatecat/heap-chains-fix

heap: encourage more spreading of heterogenous chains
This commit is contained in:
myrtle 2022-12-19 08:44:26 +00:00 committed by GitHub
commit 3ea3a931ca
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -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;