From c8a9bb807c21db935985a6be0d7f7deb1afd16d0 Mon Sep 17 00:00:00 2001 From: David Shah Date: Mon, 1 Oct 2018 17:45:35 +0100 Subject: ecp5: Debugging DRAM packing Signed-off-by: David Shah --- common/timing.cc | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'common/timing.cc') diff --git a/common/timing.cc b/common/timing.cc index 62697353..e5e90445 100644 --- a/common/timing.cc +++ b/common/timing.cc @@ -164,6 +164,24 @@ struct Timing } // Sanity check to ensure that all ports where fanins were recorded were indeed visited + if (!port_fanin.empty()) { + for (auto fanin : port_fanin) { + NetInfo *net = fanin.first->net; + if (net != nullptr) { + log_info(" remaining fanin includes %s (net %s)\n", fanin.first->name.c_str(ctx), + net->name.c_str(ctx)); + if (net->driver.cell != nullptr) + log_info(" driver = %s.%s\n", net->driver.cell->name.c_str(ctx), + net->driver.port.c_str(ctx)); + for (auto net_user : net->users) + log_info(" user: %s.%s\n", net_user.cell->name.c_str(ctx), + net_user.port.c_str(ctx)); + } else { + log_info(" remaining fanin includes %s (no net)\n", fanin.first->name.c_str(ctx)); + + } + } + } NPNR_ASSERT(port_fanin.empty()); // Go forwards topographically to find the maximum arrival time and max path length for each net -- cgit v1.2.3