diff options
author | Eddie Hung <eddieh@ece.ubc.ca> | 2018-08-06 12:30:24 -0700 |
---|---|---|
committer | Eddie Hung <eddieh@ece.ubc.ca> | 2018-08-06 12:30:24 -0700 |
commit | 1b9a664bb1e86d6dea2df3315bb536c44f674501 (patch) | |
tree | 0b5ef5a445ea464a98403e4648771f23f58df8a7 /ice40 | |
parent | daedf732911bc6d149e7c6db14f4fd976c79bbac (diff) | |
parent | 4f79b32c96497c107ee6838bcf8a25f65b7c359c (diff) | |
download | nextpnr-1b9a664bb1e86d6dea2df3315bb536c44f674501.tar.gz nextpnr-1b9a664bb1e86d6dea2df3315bb536c44f674501.tar.bz2 nextpnr-1b9a664bb1e86d6dea2df3315bb536c44f674501.zip |
Merge branch 'master' into assign_budget_speedup
Diffstat (limited to 'ice40')
-rw-r--r-- | ice40/arch.cc | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/ice40/arch.cc b/ice40/arch.cc index b142ae8b..324934d0 100644 --- a/ice40/arch.cc +++ b/ice40/arch.cc @@ -645,8 +645,23 @@ bool Arch::getBudgetOverride(const NetInfo *net_info, const PortRef &sink, delay auto sink_loc = getBelLocation(sink.cell->bel); if (driver_loc.y == sink_loc.y) budget = 0; - else - budget = 190; + else switch (args.type) { +#ifndef ICE40_HX1K_ONLY + case ArchArgs::HX8K: +#endif + case ArchArgs::HX1K: + budget = 190; break; +#ifndef ICE40_HX1K_ONLY + case ArchArgs::LP384: + case ArchArgs::LP1K: + case ArchArgs::LP8K: + budget = 290; break; + case ArchArgs::UP5K: + budget = 560; break; +#endif + default: + log_error("Unsupported iCE40 chip type.\n"); + } return true; } return false; |