diff options
author | Sylvain Munaut <tnt@246tNt.com> | 2018-11-26 11:03:57 +0100 |
---|---|---|
committer | Sylvain Munaut <tnt@246tNt.com> | 2018-11-26 12:51:14 +0100 |
commit | 822b525035d7a088f68684d9cf1b6c6bb15006fe (patch) | |
tree | eeaef5f275f9b5e51b59f4128a2d1d9aff107128 | |
parent | 024db62ef0525cc4458e9af122840d88b6f09865 (diff) | |
download | nextpnr-822b525035d7a088f68684d9cf1b6c6bb15006fe.tar.gz nextpnr-822b525035d7a088f68684d9cf1b6c6bb15006fe.tar.bz2 nextpnr-822b525035d7a088f68684d9cf1b6c6bb15006fe.zip |
placer1: During initial placement, don't rip-up strongly binded cells
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
-rw-r--r-- | common/placer1.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/common/placer1.cc b/common/placer1.cc index 0db7ce00..b42ef2ff 100644 --- a/common/placer1.cc +++ b/common/placer1.cc @@ -337,9 +337,10 @@ class SAPlacer } } else { uint64_t score = ctx->rng64(); - if (score <= best_ripup_score) { + CellInfo *bound_cell = ctx->getBoundBelCell(bel); + if (score <= best_ripup_score && bound_cell->belStrength < STRENGTH_STRONG) { best_ripup_score = score; - ripup_target = ctx->getBoundBelCell(bel); + ripup_target = bound_cell; ripup_bel = bel; } } |