Skip to content

Commit a89296c

Browse files
committed
variables.yaml: review feedback
Signed-off-by: Øyvind Harboe <[email protected]>
1 parent 81057c6 commit a89296c

File tree

4 files changed

+28
-18
lines changed

4 files changed

+28
-18
lines changed

docs/user/FlowVariables.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -160,31 +160,31 @@ configuration file.
160160
| VERILOG_FILES | The path to the design Verilog files or JSON files providing a description of modules (check `yosys -h write_json` for more details). |
161161
| VERILOG_INCLUDE_DIRS | Specifies the include directories for the Verilog input files. |
162162
| VERILOG_TOP_PARAMS | Apply toplevel params (if exist). |
163-
## synth
163+
## synth variables
164164

165-
ABC_AREA ABC_CLOCK_PERIOD_IN_PS ABC_DRIVER_CELL ABC_LOAD_IN_FF ADDER_MAP_FILE ADDITIONAL_FILES ADDITIONAL_GDS ADDITIONAL_LEFS ADDITIONAL_LIBS BLOCKS CAP_MARGIN CDL_FILES CLKGATE_MAP_FILE CORNER DESIGN_NAME DESIGN_NICKNAME DFF_LIB_FILES DONT_USE_CELLS DONT_USE_LIBS DPO_MAX_DISPLACEMENT ENABLE_DPO FASTROUTE_TCL FILL_CELLS FILL_CONFIG GDS_FILES GENERATE_ARTIFACTS_ON_FAILURE GLOBAL_PLACEMENT_ARGS GND_NETS_VOLTAGES GUI_NO_TIMING IR_DROP_LAYER KLAYOUT_TECH_FILE LATCH_MAP_FILE LIB_FILES MACRO_EXTENSION MAX_UNGROUP_SIZE MIN_BUF_CELL_AND_PORTS PLACE_DENSITY_LB_ADDON PLATFORM PRESERVE_CELLS PROCESS PWR_NETS_VOLTAGES RCX_RULES RECOVER_POWER REPAIR_PDN_VIA_LAYER RESYNTH_AREA_RECOVER RESYNTH_TIMING_RECOVER SC_LEF SDC_FILE SEAL_GDS SET_RC_TCL SKIP_INCREMENTAL_REPAIR SKIP_REPORT_METRICS SLEW_MARGIN SYNTH_ARGS SYNTH_HIERARCHICAL TAP_CELL_NAME TECH_LEF TIEHI_CELL_AND_PORT TIELO_CELL_AND_PORT USE_FILL VERILOG_FILES VERILOG_INCLUDE_DIRS VERILOG_TOP_PARAMS
165+
ABC_AREA ABC_CLOCK_PERIOD_IN_PS ABC_DRIVER_CELL ABC_LOAD_IN_FF ADDER_MAP_FILE CLKGATE_MAP_FILE LATCH_MAP_FILE MAX_UNGROUP_SIZE MIN_BUF_CELL_AND_PORTS RESYNTH_AREA_RECOVER RESYNTH_TIMING_RECOVER SYNTH_HIERARCHICAL TIEHI_CELL_AND_PORT TIELO_CELL_AND_PORT VERILOG_FILES VERILOG_INCLUDE_DIRS VERILOG_TOP_PARAMS
166166

167-
## floorplan
167+
## floorplan variables
168168

169-
ADDITIONAL_FILES ADDITIONAL_GDS ADDITIONAL_LEFS ADDITIONAL_LIBS BLOCKS CAP_MARGIN CDL_FILES CORE_AREA CORE_ASPECT_RATIO CORE_MARGIN CORE_UTILIZATION CORNER DESIGN_NAME DESIGN_NICKNAME DFF_LIB_FILES DIE_AREA DONT_USE_CELLS DONT_USE_LIBS DPO_MAX_DISPLACEMENT ENABLE_DPO FASTROUTE_TCL FILL_CELLS FILL_CONFIG FLOORPLAN_DEF GDS_FILES GENERATE_ARTIFACTS_ON_FAILURE GLOBAL_PLACEMENT_ARGS GND_NETS_VOLTAGES GUI_NO_TIMING IO_PLACER_H IO_PLACER_V IR_DROP_LAYER KLAYOUT_TECH_FILE LIB_FILES MACRO_BLOCKAGE_HALO MACRO_EXTENSION MACRO_HALO_X MACRO_HALO_Y MACRO_PLACEMENT MACRO_PLACEMENT_TCL MACRO_PLACE_CHANNEL MACRO_PLACE_HALO MACRO_WRAPPERS MAKE_TRACKS PDN_TCL PLACE_DENSITY PLACE_DENSITY_LB_ADDON PLACE_SITE PLATFORM PRESERVE_CELLS PROCESS PWR_NETS_VOLTAGES RCX_RULES RECOVER_POWER REPAIR_PDN_VIA_LAYER RTLMP_FLOW SC_LEF SDC_FILE SEAL_GDS SET_RC_TCL SKIP_INCREMENTAL_REPAIR SKIP_REPORT_METRICS SLEW_MARGIN SYNTH_ARGS TAPCELL_TCL TAP_CELL_NAME TECH_LEF TNS_END_PERCENT USE_FILL
169+
CELL_PAD_IN_SITES_GLOBAL_PLACEMENT CORE_AREA CORE_ASPECT_RATIO CORE_MARGIN CORE_UTILIZATION DIE_AREA FLOORPLAN_DEF IO_PLACER_H IO_PLACER_V MACRO_BLOCKAGE_HALO MACRO_HALO_X MACRO_HALO_Y MACRO_PLACEMENT MACRO_PLACEMENT_TCL MACRO_PLACE_CHANNEL MACRO_PLACE_HALO MACRO_WRAPPERS MAKE_TRACKS PDN_TCL PLACE_DENSITY PLACE_SITE RTLMP_FLOW TAPCELL_TCL TNS_END_PERCENT
170170

171-
## place
171+
## place variables
172172

173-
ADDITIONAL_FILES ADDITIONAL_GDS ADDITIONAL_LEFS ADDITIONAL_LIBS BLOCKS CAP_MARGIN CDL_FILES CELL_PAD_IN_SITES_DETAIL_PLACEMENT CELL_PAD_IN_SITES_GLOBAL_PLACEMENT CORNER DESIGN_NAME DESIGN_NICKNAME DFF_LIB_FILES DONT_USE_CELLS DONT_USE_LIBS DPO_MAX_DISPLACEMENT ENABLE_DPO FASTROUTE_TCL FILL_CELLS FILL_CONFIG GDS_FILES GENERATE_ARTIFACTS_ON_FAILURE GLOBAL_PLACEMENT_ARGS GND_NETS_VOLTAGES GPL_ROUTABILITY_DRIVEN GPL_TIMING_DRIVEN GUI_NO_TIMING IO_PLACER_H IO_PLACER_V IR_DROP_LAYER KLAYOUT_TECH_FILE LIB_FILES MACRO_EXTENSION MAX_ROUTING_LAYER MIN_ROUTING_LAYER PLACE_DENSITY PLACE_DENSITY_LB_ADDON PLATFORM PRESERVE_CELLS PROCESS PWR_NETS_VOLTAGES RCX_RULES RECOVER_POWER REPAIR_PDN_VIA_LAYER ROUTING_LAYER_ADJUSTMENT SC_LEF SDC_FILE SEAL_GDS SET_RC_TCL SKIP_INCREMENTAL_REPAIR SKIP_REPORT_METRICS SLEW_MARGIN SYNTH_ARGS TAP_CELL_NAME TECH_LEF USE_FILL
173+
CELL_PAD_IN_SITES_DETAIL_PLACEMENT CELL_PAD_IN_SITES_GLOBAL_PLACEMENT GPL_ROUTABILITY_DRIVEN GPL_TIMING_DRIVEN IO_PLACER_H IO_PLACER_V MAX_ROUTING_LAYER MIN_ROUTING_LAYER PLACE_DENSITY ROUTING_LAYER_ADJUSTMENT TIEHI_CELL_AND_PORT TIELO_CELL_AND_PORT
174174

175-
## cts
175+
## cts variables
176176

177-
ADDITIONAL_FILES ADDITIONAL_GDS ADDITIONAL_LEFS ADDITIONAL_LIBS BLOCKS CAP_MARGIN CDL_FILES CORNER CTS_ARGS CTS_BUF_DISTANCE CTS_CLUSTER_DIAMETER CTS_CLUSTER_SIZE CTS_SNAPSHOT DESIGN_NAME DESIGN_NICKNAME DETAILED_METRICS DFF_LIB_FILES DONT_USE_CELLS DONT_USE_LIBS DPO_MAX_DISPLACEMENT ENABLE_DPO EQUIVALENCE_CHECK FASTROUTE_TCL FILL_CELLS FILL_CONFIG GDS_FILES GENERATE_ARTIFACTS_ON_FAILURE GLOBAL_PLACEMENT_ARGS GND_NETS_VOLTAGES GUI_NO_TIMING HOLD_SLACK_MARGIN IR_DROP_LAYER KLAYOUT_TECH_FILE LIB_FILES MACRO_EXTENSION PLACE_DENSITY_LB_ADDON PLATFORM POST_CTS_TCL PRESERVE_CELLS PROCESS PWR_NETS_VOLTAGES RCX_RULES RECOVER_POWER REMOVE_CELLS_FOR_EQY REPAIR_PDN_VIA_LAYER SC_LEF SDC_FILE SEAL_GDS SETUP_SLACK_MARGIN SET_RC_TCL SKIP_CTS_REPAIR_TIMING SKIP_GATE_CLONING SKIP_INCREMENTAL_REPAIR SKIP_PIN_SWAP SKIP_REPORT_METRICS SLEW_MARGIN SYNTH_ARGS TAP_CELL_NAME TECH_LEF TNS_END_PERCENT USE_FILL
177+
CELL_PAD_IN_SITES_DETAIL_PLACEMENT CTS_ARGS CTS_BUF_DISTANCE CTS_CLUSTER_DIAMETER CTS_CLUSTER_SIZE CTS_SNAPSHOT DETAILED_METRICS EQUIVALENCE_CHECK POST_CTS_TCL REMOVE_CELLS_FOR_EQY SKIP_CTS_REPAIR_TIMING TNS_END_PERCENT
178178

179-
## grt
179+
## grt variables
180180

181-
ADDITIONAL_FILES ADDITIONAL_GDS ADDITIONAL_LEFS ADDITIONAL_LIBS BLOCKS CAP_MARGIN CDL_FILES CORNER DESIGN_NAME DESIGN_NICKNAME DETAILED_METRICS DFF_LIB_FILES DONT_USE_CELLS DONT_USE_LIBS DPO_MAX_DISPLACEMENT ENABLE_DPO FASTROUTE_TCL FILL_CELLS FILL_CONFIG GDS_FILES GENERATE_ARTIFACTS_ON_FAILURE GLOBAL_PLACEMENT_ARGS GND_NETS_VOLTAGES GUI_NO_TIMING IR_DROP_LAYER KLAYOUT_TECH_FILE LIB_FILES MACRO_EXTENSION MAX_ROUTING_LAYER MIN_ROUTING_LAYER PLACE_DENSITY_LB_ADDON PLATFORM PRESERVE_CELLS PROCESS PWR_NETS_VOLTAGES RCX_RULES RECOVER_POWER REPAIR_PDN_VIA_LAYER ROUTING_LAYER_ADJUSTMENT SC_LEF SDC_FILE SEAL_GDS SET_RC_TCL SKIP_INCREMENTAL_REPAIR SKIP_REPORT_METRICS SLEW_MARGIN SYNTH_ARGS TAP_CELL_NAME TECH_LEF TNS_END_PERCENT USE_FILL
181+
CELL_PAD_IN_SITES_DETAIL_PLACEMENT DETAILED_METRICS MAX_ROUTING_LAYER MIN_ROUTING_LAYER ROUTING_LAYER_ADJUSTMENT TNS_END_PERCENT
182182

183-
## route
183+
## route variables
184184

185-
ADDITIONAL_FILES ADDITIONAL_GDS ADDITIONAL_LEFS ADDITIONAL_LIBS BLOCKS CAP_MARGIN CDL_FILES CORNER DESIGN_NAME DESIGN_NICKNAME DETAILED_ROUTE_ARGS DETAILED_ROUTE_END_ITERATION DFF_LIB_FILES DONT_USE_CELLS DONT_USE_LIBS DPO_MAX_DISPLACEMENT ENABLE_DPO FASTROUTE_TCL FILL_CELLS FILL_CONFIG GDS_FILES GENERATE_ARTIFACTS_ON_FAILURE GLOBAL_PLACEMENT_ARGS GND_NETS_VOLTAGES GUI_NO_TIMING IR_DROP_LAYER KLAYOUT_TECH_FILE LIB_FILES MACRO_EXTENSION MAX_ROUTING_LAYER MIN_ROUTING_LAYER PLACE_DENSITY_LB_ADDON PLATFORM PRESERVE_CELLS PROCESS PWR_NETS_VOLTAGES RCX_RULES RECOVER_POWER REPAIR_PDN_VIA_LAYER ROUTING_LAYER_ADJUSTMENT SC_LEF SDC_FILE SEAL_GDS SET_RC_TCL SKIP_INCREMENTAL_REPAIR SKIP_REPORT_METRICS SLEW_MARGIN SYNTH_ARGS TAP_CELL_NAME TECH_LEF USE_FILL
185+
DETAILED_ROUTE_ARGS DETAILED_ROUTE_END_ITERATION MAX_ROUTING_LAYER MIN_ROUTING_LAYER ROUTING_LAYER_ADJUSTMENT
186186

187-
## final
187+
## final variables
188188

189-
ADDITIONAL_FILES ADDITIONAL_GDS ADDITIONAL_LEFS ADDITIONAL_LIBS BLOCKS CAP_MARGIN CDL_FILES CORNER DESIGN_NAME DESIGN_NICKNAME DFF_LIB_FILES DONT_USE_CELLS DONT_USE_LIBS DPO_MAX_DISPLACEMENT ENABLE_DPO FASTROUTE_TCL FILL_CELLS FILL_CONFIG GDS_FILES GENERATE_ARTIFACTS_ON_FAILURE GLOBAL_PLACEMENT_ARGS GND_NETS_VOLTAGES GUI_NO_TIMING IR_DROP_LAYER KLAYOUT_TECH_FILE LIB_FILES MACRO_EXTENSION PLACE_DENSITY_LB_ADDON PLATFORM PRESERVE_CELLS PROCESS PWR_NETS_VOLTAGES RCX_RULES RECOVER_POWER REPAIR_PDN_VIA_LAYER ROUTING_LAYER_ADJUSTMENT SC_LEF SDC_FILE SEAL_GDS SET_RC_TCL SKIP_INCREMENTAL_REPAIR SKIP_REPORT_METRICS SLEW_MARGIN SYNTH_ARGS TAP_CELL_NAME TECH_LEF USE_FILL
189+
ROUTING_LAYER_ADJUSTMENT
190190

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
#!/usr/bin/env python3
2+
# variables.yaml is the single source of truth w.r.t. metainformation about
3+
# the ORFS variables.
4+
#
5+
# This script injects an autogenerated section in FlowVariables.md with
6+
# information about the variables from variables.yaml.
27
import os
38
import yaml
49

@@ -40,11 +45,11 @@
4045
markdown_table += table_header + table_rows
4146

4247
for stage in stages:
43-
markdown_table += f"## {stage}\n\n"
48+
markdown_table += f"## {stage} variables\n\n"
4449
stage_keys = [
4550
key
4651
for key in sorted(data)
47-
if "stages" not in data[key] or stage in data[key]["stages"]
52+
if "stages" in data[key] and stage in data[key]["stages"]
4853
]
4954
markdown_table += " ".join(stage_keys) + "\n\n"
5055

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
#!/usr/bin/env python3
2-
2+
#
3+
# Reading .yaml from tcl is tedious and we already have
4+
# a yaml library in Python.
5+
#
6+
# This script generates a list of variables known
7+
# not to be in the current stage.
38
import os
49
import sys
510
import yaml

flow/scripts/util.tcl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ proc erase_non_stage_variables {stage_name} {
107107
# Tcl yaml package can't be imported in the sta/openroad environment:
108108
#
109109
# https://github.com/The-OpenROAD-Project/OpenROAD/issues/5875
110-
set variables [exec $::env(SCRIPTS_DIR)/stage_variables.py $stage_name]
110+
set variables [exec $::env(SCRIPTS_DIR)/non_stage_variables.py $stage_name]
111111
foreach var $variables {
112112
if {[info exists ::env($var)]} {
113113
unset ::env($var)

0 commit comments

Comments
 (0)