From cea5fde170fec7f847da0b0040665fdf537936c9 Mon Sep 17 00:00:00 2001 From: David Anderson Date: Mon, 9 Sep 2024 12:47:19 -0700 Subject: [PATCH] tasks.py: when running without a full pin map, synth for 100MHz It doesn't matter hugely, but by default nextpnr synthesizes for 12MHz, which doesn't force it to work too hard on the placement. By requesting 100MHz, it needs to try a bit harder on timing and gives results that are a bit closer to the fully constrained outcomes. --- tasks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks.py b/tasks.py index 3926691..6e06c99 100644 --- a/tasks.py +++ b/tasks.py @@ -192,7 +192,7 @@ def synth(c, target): pin_map_arg = f"--lpf {pin_map}" else: print(f"WARNING: no pin map at {pin_map}, executing place&route with no constraints") - pin_map_arg = f"--lpf-allow-unconstrained --lpf=lib/ulx3s_v20.lpf" + pin_map_arg = f"--lpf-allow-unconstrained --lpf=lib/ulx3s_v20.lpf --freq 100" nextpnr_out = out_nextpnr / module_name.with_suffix(".pnr") nextpnr_log = out_nextpnr / module_name.with_suffix(".log") nextpnr_timing = out_nextpnr / module_name.with_suffix(".timing.log")