Skip to content

Commit 66dc514

Browse files
committed
build: register VERILOG_FILES_BLACKBOX in variables.yaml
It's a generic ORFS convention used by hierarchical designs -- sky130hd/microwatt and sky130hd/chameleon append a glob of IPs/*.v to VERILOG_FILES via this variable. bazel-orfs's config_mk_parser puts it into the orfs_flow sources dict, where check_variables then rejects it because variables.yaml didn't list it. Add the entry so microwatt loads. (chameleon also references FP_PDN_RAIL_OFFSET/WIDTH, which are design-specific knobs read by chameleon's pdn.cfg only; those need the orfs_flow user_arguments path, not a variables.yaml entry.) Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
1 parent eade390 commit 66dc514

3 files changed

Lines changed: 16 additions & 0 deletions

File tree

docs/user/FlowVariables.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,7 @@ configuration file.
324324
| <a name="USE_NEGOTIATION"></a>USE_NEGOTIATION| Enable using negotiation legalizer for detailed placement.| 0|
325325
| <a name="VERILOG_DEFINES"></a>VERILOG_DEFINES| Preprocessor defines passed to the language frontend. Example: `-D HPDCACHE_ASSERT_OFF`| |
326326
| <a name="VERILOG_FILES"></a>VERILOG_FILES| The path to the design Verilog/SystemVerilog files providing a description of modules.| |
327+
| <a name="VERILOG_FILES_BLACKBOX"></a>VERILOG_FILES_BLACKBOX| Verilog files (typically `IPs/*.v`) that are appended to VERILOG_FILES in hierarchical designs and treated as blackbox modules by yosys. Only used by config.mk; ORFS doesn't read it as an env var.| |
327328
| <a name="VERILOG_INCLUDE_DIRS"></a>VERILOG_INCLUDE_DIRS| Specifies the include directories for the Verilog input files.| |
328329
| <a name="VERILOG_TOP_PARAMS"></a>VERILOG_TOP_PARAMS| Apply toplevel params (if exist). Passed in as a list of key value pairs in tcl syntax; separated by spaces: PARAM1 VALUE1 PARAM2 VALUE2| |
329330
| <a name="VIA_IN_PIN_MAX_LAYER"></a>VIA_IN_PIN_MAX_LAYER| Passed as -via_in_pin_top_layer to pin_access and detailed_route.| |
@@ -376,6 +377,7 @@ configuration file.
376377
- [UNSET_ABC9_BOX_CELLS](#UNSET_ABC9_BOX_CELLS)
377378
- [VERILOG_DEFINES](#VERILOG_DEFINES)
378379
- [VERILOG_FILES](#VERILOG_FILES)
380+
- [VERILOG_FILES_BLACKBOX](#VERILOG_FILES_BLACKBOX)
379381
- [VERILOG_INCLUDE_DIRS](#VERILOG_INCLUDE_DIRS)
380382
- [VERILOG_TOP_PARAMS](#VERILOG_TOP_PARAMS)
381383
- [YOSYS_FLAGS](#YOSYS_FLAGS)

flow/scripts/variables.json

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flow/scripts/variables.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1585,3 +1585,11 @@ CDL_FILE:
15851585
for generating Circuit Description Language output.
15861586
stages:
15871587
- final
1588+
VERILOG_FILES_BLACKBOX:
1589+
description: >
1590+
Verilog files (typically `IPs/*.v`) that are appended to
1591+
VERILOG_FILES in hierarchical designs and treated as blackbox
1592+
modules by yosys. Only used by config.mk; ORFS doesn't read it as
1593+
an env var.
1594+
stages:
1595+
- synth

0 commit comments

Comments
 (0)