Skip to content

Commit a31181b

Browse files
committed
Merge remote-tracking branch 'origin/master' into HEAD
2 parents f69f4e7 + 3cf48df commit a31181b

File tree

162 files changed

+88059
-2281
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

162 files changed

+88059
-2281
lines changed

docs/user/FlowVariables.md

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -70,19 +70,19 @@ configuration file.
7070
| <a name="CLKGATE_MAP_FILE"></a>CLKGATE_MAP_FILE| List of cells for gating clock treated as a black box by Yosys.| | |
7171
| <a name="CORE_AREA"></a>CORE_AREA| The core area specified as a list of lower-left and upper-right corners in microns (X1 Y1 X2 Y2).| | |
7272
| <a name="CORE_ASPECT_RATIO"></a>CORE_ASPECT_RATIO| The core aspect ratio (height / width). This value is ignored if `CORE_UTILIZATION` is undefined.| | |
73-
| <a name="CORE_MARGIN"></a>CORE_MARGIN| The margin between the core area and die area, in multiples of SITE heights. The margin is applied to each side. This variable is ignored if `CORE_UTILIZATION` is undefined.| | |
73+
| <a name="CORE_MARGIN"></a>CORE_MARGIN| The margin between the core area and die area, specified in microns. Allowed values are either one value for all margins or a set of four values, one for each margin. The order of the four values are: `{bottom top left right}`. This variable is ignored if `CORE_UTILIZATION` is undefined.| | |
7474
| <a name="CORE_UTILIZATION"></a>CORE_UTILIZATION| The core utilization percentage (0-100).| | |
7575
| <a name="CORNER"></a>CORNER| PVT corner library selection. Only available for ASAP7 and GF180 PDK.| | |
7676
| <a name="CTS_ARGS"></a>CTS_ARGS| Override `clock_tree_synthesis` arguments.| | |
7777
| <a name="CTS_BUF_DISTANCE"></a>CTS_BUF_DISTANCE| Distance (in microns) between buffers.| | |
78-
| <a name="CTS_CLUSTER_DIAMETER"></a>CTS_CLUSTER_DIAMETER| Maximum diameter (in microns) of sink cluster. Default 20.| | |
79-
| <a name="CTS_CLUSTER_SIZE"></a>CTS_CLUSTER_SIZE| Maximum number of sinks per cluster. Default 50.| | |
78+
| <a name="CTS_CLUSTER_DIAMETER"></a>CTS_CLUSTER_DIAMETER| Maximum diameter (in microns) of sink cluster.| 20| |
79+
| <a name="CTS_CLUSTER_SIZE"></a>CTS_CLUSTER_SIZE| Maximum number of sinks per cluster.| 50| |
8080
| <a name="CTS_SNAPSHOT"></a>CTS_SNAPSHOT| Creates ODB/SDC files prior to clock net and setup/hold repair.| | |
8181
| <a name="DESIGN_NAME"></a>DESIGN_NAME| The name of the top-level module of the design.| | |
8282
| <a name="DESIGN_NICKNAME"></a>DESIGN_NICKNAME| DESIGN_NICKNAME just changes the directory name that ORFS outputs to be DESIGN_NICKNAME instead of DESIGN_NAME in case DESIGN_NAME is unwieldy or conflicts with a different design.| | |
8383
| <a name="DETAILED_METRICS"></a>DETAILED_METRICS| If set, then calls report_metrics prior to repair operations in the CTS and global route stages| 0| |
8484
| <a name="DETAILED_ROUTE_ARGS"></a>DETAILED_ROUTE_ARGS| Add additional arguments for debugging purposes during detail route.| | |
85-
| <a name="DETAILED_ROUTE_END_ITERATION"></a>DETAILED_ROUTE_END_ITERATION| Maximum number of iterations, default 64.| | |
85+
| <a name="DETAILED_ROUTE_END_ITERATION"></a>DETAILED_ROUTE_END_ITERATION| Maximum number of iterations.| 64| |
8686
| <a name="DFF_LIB_FILES"></a>DFF_LIB_FILES| Technology mapping liberty files for flip-flops.| | |
8787
| <a name="DIE_AREA"></a>DIE_AREA| The die area specified as a list of lower-left and upper-right corners in microns (X1 Y1 X2 Y2).| | |
8888
| <a name="DONT_USE_CELLS"></a>DONT_USE_CELLS| Dont use cells eases pin access in detailed routing.| | |
@@ -102,7 +102,7 @@ configuration file.
102102
| <a name="GPL_ROUTABILITY_DRIVEN"></a>GPL_ROUTABILITY_DRIVEN| Specifies whether the placer should use routability driven placement.| | |
103103
| <a name="GPL_TIMING_DRIVEN"></a>GPL_TIMING_DRIVEN| Specifies whether the placer should use timing driven placement.| | |
104104
| <a name="GUI_TIMING"></a>GUI_TIMING| Load timing information when opening GUI. For large designs, this can be quite time consuming. Useful to disable when investigating non-timing aspects like floorplan, placement, routing, etc.| 1| |
105-
| <a name="HOLD_SLACK_MARGIN"></a>HOLD_SLACK_MARGIN| Specifies a time margin for the slack when fixing hold violations. This option allows you to overfix or underfix(negative value, terminate retiming before 0 or positive slack).| | |
105+
| <a name="HOLD_SLACK_MARGIN"></a>HOLD_SLACK_MARGIN| Specifies a time margin for the slack when fixing hold violations. This option allows you to overfix or underfix(negative value, terminate retiming before 0 or positive slack). Use min of HOLD_SLACK_MARGIN and 0(default hold slack margin) in floorplan. This avoids overrepair in floorplan for hold by default, but allows skipping hold repair using a negative HOLD_SLACK_MARGIN. Exiting timing repair early is useful in exploration where the .sdc has a fixed clock period at designs target clock period and where HOLD/SETUP_SLACK_MARGIN is used to avoid overrepair(extremelly long running times) when exploring different parameter settings.| 0| |
106106
| <a name="IO_CONSTRAINTS"></a>IO_CONSTRAINTS| File path to the IO constraints .tcl file.| | |
107107
| <a name="IO_PLACER_H"></a>IO_PLACER_H| The metal layer on which to place the I/O pins horizontally (top and bottom of the die).| | |
108108
| <a name="IO_PLACER_V"></a>IO_PLACER_V| The metal layer on which to place the I/O pins vertically (sides of the die).| | |
@@ -120,6 +120,7 @@ configuration file.
120120
| <a name="MACRO_PLACE_HALO"></a>MACRO_PLACE_HALO| Horizontal/vertical halo around macros (microns). Used by automatic macro placement.| | |
121121
| <a name="MACRO_WRAPPERS"></a>MACRO_WRAPPERS| The wrapper file that replaces existing macros with their wrapped version.| | |
122122
| <a name="MAKE_TRACKS"></a>MAKE_TRACKS| Tcl file that defines add routing tracks to a floorplan.| | |
123+
| <a name="MATCH_CELL_FOOTPRINT"></a>MATCH_CELL_FOOTPRINT| Enforce sizing operations to only swap cells that have the same layout boundary.| | |
123124
| <a name="MAX_ROUTING_LAYER"></a>MAX_ROUTING_LAYER| The highest metal layer name to be used in routing.| | |
124125
| <a name="MAX_UNGROUP_SIZE"></a>MAX_UNGROUP_SIZE| For hierarchical synthesis, we ungroup modules of size given by this variable.| | |
125126
| <a name="MIN_BUF_CELL_AND_PORTS"></a>MIN_BUF_CELL_AND_PORTS| Used to insert a buffer cell to pass through wires. Used in synthesis.| | |
@@ -139,14 +140,15 @@ configuration file.
139140
| <a name="REMOVE_ABC_BUFFERS"></a>REMOVE_ABC_BUFFERS| Remove abc buffers from the netlist. If timing repair in floorplanning is taking too long, use a SETUP_HOLD_MARGIN to terminate timing repair early instead of using REMOVE_ABC_BUFFERS or set SKIP_LAST_GAST=1.| | yes|
140141
| <a name="REMOVE_CELLS_FOR_EQY"></a>REMOVE_CELLS_FOR_EQY| String patterns directly passed to write_verilog -remove_cells <> for equivalence checks.| | |
141142
| <a name="REPAIR_PDN_VIA_LAYER"></a>REPAIR_PDN_VIA_LAYER| Remove power grid vias which generate DRC violations after detailed routing.| | |
143+
| <a name="REPORT_CLOCK_SKEW"></a>REPORT_CLOCK_SKEW| Report clock skew as part of reporting metrics, starting at CTS, before which there is no clock skew. This metric can be quite time-consuming, so it can be useful to disable.| 1| |
142144
| <a name="RESYNTH_AREA_RECOVER"></a>RESYNTH_AREA_RECOVER| Enable re-synthesis for area reclaim.| | |
143145
| <a name="RESYNTH_TIMING_RECOVER"></a>RESYNTH_TIMING_RECOVER| Enable re-synthesis for timing optimization.| | |
144146
| <a name="ROUTING_LAYER_ADJUSTMENT"></a>ROUTING_LAYER_ADJUSTMENT| Default routing layer adjustment| 0.5| |
145147
| <a name="SC_LEF"></a>SC_LEF| Path to technology standard cell LEF file.| | |
146148
| <a name="SDC_FILE"></a>SDC_FILE| The path to design constraint (SDC) file.| | |
147149
| <a name="SDC_GUT"></a>SDC_GUT| Load design and remove all internal logic before doing synthesis. This is useful when creating a mock .lef abstract that has a smaller area than the amount of logic would allow. bazel-orfs uses this to mock SRAMs, for instance.| | |
148150
| <a name="SEAL_GDS"></a>SEAL_GDS| Seal macro to place around the design.| | |
149-
| <a name="SETUP_SLACK_MARGIN"></a>SETUP_SLACK_MARGIN| Specifies a time margin for the slack when fixing setup violations. This option allows you to overfix or underfix(negative value, terminate retiming before 0 or positive slack).| | |
151+
| <a name="SETUP_SLACK_MARGIN"></a>SETUP_SLACK_MARGIN| Specifies a time margin for the slack when fixing setup violations. This option allows you to overfix or underfix(negative value, terminate retiming before 0 or positive slack).| 0| |
150152
| <a name="SET_RC_TCL"></a>SET_RC_TCL| Metal & Via RC definition file path.| | |
151153
| <a name="SKIP_CTS_REPAIR_TIMING"></a>SKIP_CTS_REPAIR_TIMING| Skipping CTS repair, which can take a long time, can be useful in architectural exploration or when getting CI up and running.| | |
152154
| <a name="SKIP_GATE_CLONING"></a>SKIP_GATE_CLONING| Do not use gate cloning transform to fix timing violations (default: use gate cloning).| | |
@@ -164,7 +166,7 @@ configuration file.
164166
| <a name="TIEHI_CELL_AND_PORT"></a>TIEHI_CELL_AND_PORT| Tie high cells used in Yosys synthesis to replace a logical 1 in the Netlist.| | |
165167
| <a name="TIELO_CELL_AND_PORT"></a>TIELO_CELL_AND_PORT| Tie low cells used in Yosys synthesis to replace a logical 0 in the Netlist.| | |
166168
| <a name="TNS_END_PERCENT"></a>TNS_END_PERCENT| Default TNS_END_PERCENT value for post CTS timing repair. Try fixing all violating endpoints by default (reduce to 5% for runtime). Specifies how many percent of violating paths to fix [0-100]. Worst path will always be fixed.| 100| |
167-
| <a name="USE_FILL"></a>USE_FILL| Whether to perform metal density filling. Default 0 (=off).| | |
169+
| <a name="USE_FILL"></a>USE_FILL| Whether to perform metal density filling.| 0| |
168170
| <a name="VERILOG_FILES"></a>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).| | |
169171
| <a name="VERILOG_INCLUDE_DIRS"></a>VERILOG_INCLUDE_DIRS| Specifies the include directories for the Verilog input files.| | |
170172
| <a name="VERILOG_TOP_PARAMS"></a>VERILOG_TOP_PARAMS| Apply toplevel params (if exist).| | |
@@ -213,6 +215,7 @@ configuration file.
213215
- [MACRO_PLACE_HALO](#MACRO_PLACE_HALO)
214216
- [MACRO_WRAPPERS](#MACRO_WRAPPERS)
215217
- [MAKE_TRACKS](#MAKE_TRACKS)
218+
- [MATCH_CELL_FOOTPRINT](#MATCH_CELL_FOOTPRINT)
216219
- [PDN_TCL](#PDN_TCL)
217220
- [PLACE_DENSITY](#PLACE_DENSITY)
218221
- [PLACE_PINS_ARGS](#PLACE_PINS_ARGS)
@@ -236,6 +239,7 @@ configuration file.
236239
- [IO_CONSTRAINTS](#IO_CONSTRAINTS)
237240
- [IO_PLACER_H](#IO_PLACER_H)
238241
- [IO_PLACER_V](#IO_PLACER_V)
242+
- [MATCH_CELL_FOOTPRINT](#MATCH_CELL_FOOTPRINT)
239243
- [MAX_ROUTING_LAYER](#MAX_ROUTING_LAYER)
240244
- [MIN_ROUTING_LAYER](#MIN_ROUTING_LAYER)
241245
- [PLACE_DENSITY](#PLACE_DENSITY)
@@ -256,8 +260,10 @@ configuration file.
256260
- [DETAILED_METRICS](#DETAILED_METRICS)
257261
- [EQUIVALENCE_CHECK](#EQUIVALENCE_CHECK)
258262
- [HOLD_SLACK_MARGIN](#HOLD_SLACK_MARGIN)
263+
- [MATCH_CELL_FOOTPRINT](#MATCH_CELL_FOOTPRINT)
259264
- [POST_CTS_TCL](#POST_CTS_TCL)
260265
- [REMOVE_CELLS_FOR_EQY](#REMOVE_CELLS_FOR_EQY)
266+
- [REPORT_CLOCK_SKEW](#REPORT_CLOCK_SKEW)
261267
- [SETUP_SLACK_MARGIN](#SETUP_SLACK_MARGIN)
262268
- [SKIP_CTS_REPAIR_TIMING](#SKIP_CTS_REPAIR_TIMING)
263269
- [SKIP_GATE_CLONING](#SKIP_GATE_CLONING)
@@ -274,6 +280,7 @@ configuration file.
274280
- [HOLD_SLACK_MARGIN](#HOLD_SLACK_MARGIN)
275281
- [MAX_ROUTING_LAYER](#MAX_ROUTING_LAYER)
276282
- [MIN_ROUTING_LAYER](#MIN_ROUTING_LAYER)
283+
- [REPORT_CLOCK_SKEW](#REPORT_CLOCK_SKEW)
277284
- [ROUTING_LAYER_ADJUSTMENT](#ROUTING_LAYER_ADJUSTMENT)
278285
- [SETUP_SLACK_MARGIN](#SETUP_SLACK_MARGIN)
279286
- [SKIP_GATE_CLONING](#SKIP_GATE_CLONING)
@@ -288,8 +295,10 @@ configuration file.
288295
- [DETAILED_ROUTE_ARGS](#DETAILED_ROUTE_ARGS)
289296
- [DETAILED_ROUTE_END_ITERATION](#DETAILED_ROUTE_END_ITERATION)
290297
- [FILL_CELLS](#FILL_CELLS)
298+
- [MATCH_CELL_FOOTPRINT](#MATCH_CELL_FOOTPRINT)
291299
- [MAX_ROUTING_LAYER](#MAX_ROUTING_LAYER)
292300
- [MIN_ROUTING_LAYER](#MIN_ROUTING_LAYER)
301+
- [REPORT_CLOCK_SKEW](#REPORT_CLOCK_SKEW)
293302
- [ROUTING_LAYER_ADJUSTMENT](#ROUTING_LAYER_ADJUSTMENT)
294303
- [SKIP_REPORT_METRICS](#SKIP_REPORT_METRICS)
295304

@@ -300,6 +309,7 @@ configuration file.
300309
- [MAX_ROUTING_LAYER](#MAX_ROUTING_LAYER)
301310
- [MIN_ROUTING_LAYER](#MIN_ROUTING_LAYER)
302311
- [PWR_NETS_VOLTAGES](#PWR_NETS_VOLTAGES)
312+
- [REPORT_CLOCK_SKEW](#REPORT_CLOCK_SKEW)
303313
- [ROUTING_LAYER_ADJUSTMENT](#ROUTING_LAYER_ADJUSTMENT)
304314
- [SKIP_REPORT_METRICS](#SKIP_REPORT_METRICS)
305315

0 commit comments

Comments
 (0)