diff options
author | David Shah <dave@ds0.me> | 2018-12-02 15:49:24 +0000 |
---|---|---|
committer | David Shah <dave@ds0.me> | 2018-12-06 10:53:01 +0000 |
commit | f53dc8d3c9735b4d9c50db1848de9dd3fefbe7ef (patch) | |
tree | 538924ac118afb846ba76f7af01c20919a36a489 /common/timing.cc | |
parent | a990a1576cc3b932ec784a0d9863f0ba9c337b0f (diff) | |
download | nextpnr-f53dc8d3c9735b4d9c50db1848de9dd3fefbe7ef.tar.gz nextpnr-f53dc8d3c9735b4d9c50db1848de9dd3fefbe7ef.tar.bz2 nextpnr-f53dc8d3c9735b4d9c50db1848de9dd3fefbe7ef.zip |
timing_opt: Improve heuristics
Signed-off-by: David Shah <dave@ds0.me>
Diffstat (limited to 'common/timing.cc')
-rw-r--r-- | common/timing.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/common/timing.cc b/common/timing.cc index 18caa989..6965307d 100644 --- a/common/timing.cc +++ b/common/timing.cc @@ -566,16 +566,20 @@ struct Timing auto &nc = (*net_crit)[net->name]; if (nc.slack.empty()) nc.slack.resize(net->users.size(), std::numeric_limits<delay_t>::max()); +#if 0 if (ctx->debug) log_info("Net %s cd %s\n", net->name.c_str(ctx), startdomain.first.clock.c_str(ctx)); +#endif for (size_t i = 0; i < net->users.size(); i++) { delay_t slack = nd.min_required.at(i) - (nd.max_arrival + ctx->getNetinfoRouteDelay(net, net->users.at(i))); +#if 0 if (ctx->debug) log_info(" user %s.%s required %.02fns arrival %.02f route %.02f slack %.02f\n", net->users.at(i).cell->name.c_str(ctx), net->users.at(i).port.c_str(ctx), ctx->getDelayNS(nd.min_required.at(i)), ctx->getDelayNS(nd.max_arrival), ctx->getDelayNS(ctx->getNetinfoRouteDelay(net, net->users.at(i))), ctx->getDelayNS(slack)); +#endif if (worst_slack.count(startdomain.first)) worst_slack.at(startdomain.first) = std::min(worst_slack.at(startdomain.first), slack); else @@ -612,7 +616,7 @@ struct Timing nc.cd_worst_slack = std::min(nc.cd_worst_slack, worst_slack.at(startdomain.first)); } } - +#if 0 if (ctx->debug) { for (auto &nc : *net_crit) { NetInfo *net = ctx->nets.at(nc.first).get(); @@ -628,6 +632,7 @@ struct Timing log_break(); } } +#endif } return min_slack; } |