diff --git a/BUILD.bazel b/BUILD.bazel index 74a4715..5ef8cc9 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -355,6 +355,9 @@ SWEEP = { "dissolve": boom_regfile_rams.keys(), }, "naja": { + "renamed_inputs": { + "floorplan": {"1_synth.v": ":naja"}, + }, }, "1": { "variables": { @@ -372,6 +375,10 @@ SWEEP = { "SYNTH_HIERARCHICAL": "0", "MACRO_PLACEMENT_TCL": "$(location write_macro_placement)", }, + # share synthesis with a different variant + "previous_stage": { + {"floorplan": "BoomTile_1_synth"}, + }, }, } @@ -427,15 +434,8 @@ write_binary( for m in (boom_regfile_rams.keys() + all_srams.keys()) if m not in SWEEP[variant].get("dissolve", []) ], - previous_stage = {"floorplan": "BoomTile_synth"} if ((BOOMTILE_VARIABLES | SWEEP[variant].get("variables", {}))["SYNTH_HIERARCHICAL"] == "1" and - SWEEP[variant].get("dissolve") == SWEEP["base"].get("dissolve") and - "naja" not in variant) else {}, - # Share synthesis stage between all variants - renamed_inputs = { - "naja": { - "floorplan": {"1_synth.v": ":naja"}, - }, - }.get(variant, {}), + previous_stage = SWEEP[variant].get("previous_stage", {}) + renamed_inputs = SWEEP[variant].get("renamed_inputs", {}), # Explictily set arguments for a stage when stages are not listed in # variables.yaml or we want to explicitly set a multi-stage argument # for a specific stage, e.g. SETUP_SLACK_MARGIN could be useful to