aboutsummaryrefslogtreecommitdiffstats
path: root/ice40/main.cc
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2018-07-23 14:03:23 +0200
committerClifford Wolf <clifford@clifford.at>2018-07-23 14:03:23 +0200
commite647604e2a584917ad2fc9acfe838a1395c613c2 (patch)
tree79af7f375362eeae2a0d9ee96c1bc6f09ab8fcce /ice40/main.cc
parent90fe002a36a9b90cd6d003d34398242a5d5affb6 (diff)
downloadnextpnr-e647604e2a584917ad2fc9acfe838a1395c613c2.tar.gz
nextpnr-e647604e2a584917ad2fc9acfe838a1395c613c2.tar.bz2
nextpnr-e647604e2a584917ad2fc9acfe838a1395c613c2.zip
Add Context::archcheck() and "nextpnr-ice40 --test"
Signed-off-by: Clifford Wolf <clifford@clifford.at>
Diffstat (limited to 'ice40/main.cc')
-rw-r--r--ice40/main.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/ice40/main.cc b/ice40/main.cc
index 24b49184..4de05d00 100644
--- a/ice40/main.cc
+++ b/ice40/main.cc
@@ -107,6 +107,7 @@ int main(int argc, char *argv[])
options.add_options()("seed", po::value<int>(), "seed value for random number generator");
options.add_options()("version,V", "show version");
options.add_options()("tmfuzz", "run path delay estimate fuzzer");
+ options.add_options()("test", "check architecture database integrity");
#ifdef ICE40_HX1K_ONLY
options.add_options()("hx1k", "set device type to iCE40HX1K");
#else
@@ -315,6 +316,9 @@ int main(int argc, char *argv[])
std::cout << "</svg>\n";
}
+ if (vm.count("test"))
+ ctx->archcheck();
+
if (vm.count("tmfuzz")) {
std::vector<WireId> src_wires, dst_wires;
@@ -360,8 +364,10 @@ int main(int argc, char *argv[])
ctx->chip_info->wire_data[dst.index].type);
}
}
+
if (vm.count("freq"))
ctx->target_freq = vm["freq"].as<double>() * 1e6;
+
ctx->timing_driven = true;
if (vm.count("no-tmdriv"))
ctx->timing_driven = false;