aboutsummaryrefslogtreecommitdiffstats
path: root/ice40/arch.cc
diff options
context:
space:
mode:
authorDavid Shah <dave@ds0.me>2018-12-02 12:01:43 +0000
committerDavid Shah <dave@ds0.me>2018-12-06 10:53:01 +0000
commitb51308708bf7202c097deb7f70ff83e710e0970c (patch)
treedc90d65de331e885266127021f612670150df092 /ice40/arch.cc
parent1b7214a18ae4cf6fb62827b06e4b5f158292da4b (diff)
downloadnextpnr-b51308708bf7202c097deb7f70ff83e710e0970c.tar.gz
nextpnr-b51308708bf7202c097deb7f70ff83e710e0970c.tar.bz2
nextpnr-b51308708bf7202c097deb7f70ff83e710e0970c.zip
timing_opt: Debugging and integration
Signed-off-by: David Shah <dave@ds0.me>
Diffstat (limited to 'ice40/arch.cc')
-rw-r--r--ice40/arch.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/ice40/arch.cc b/ice40/arch.cc
index ada78020..5cd55774 100644
--- a/ice40/arch.cc
+++ b/ice40/arch.cc
@@ -27,6 +27,7 @@
#include "placer1.h"
#include "router1.h"
#include "util.h"
+#include "timing_opt.h"
NEXTPNR_NAMESPACE_BEGIN
@@ -626,7 +627,13 @@ bool Arch::getBudgetOverride(const NetInfo *net_info, const PortRef &sink, delay
// -----------------------------------------------------------------------
-bool Arch::place() { return placer1(getCtx(), Placer1Cfg(getCtx())); }
+bool Arch::place() {
+ if(!placer1(getCtx(), Placer1Cfg(getCtx())))
+ return false;
+ TimingOptCfg tocfg(getCtx());
+ tocfg.cellTypes.insert(id_ICESTORM_LC);
+ return timing_opt(getCtx(), tocfg);
+}
bool Arch::route() { return router1(getCtx(), Router1Cfg(getCtx())); }