Skip to content

Commit 4d94747

Browse files
committed
Add SKIP_DETAILED_ROUTE to skip detailed routing
Needed while bringing up a PDK for which can't yet route. Signed-off-by: Matt Liberty <[email protected]>
1 parent 759023c commit 4d94747

File tree

4 files changed

+18
-1
lines changed

4 files changed

+18
-1
lines changed

docs/user/FlowVariables.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,7 @@ configuration file.
214214
| <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). See HOLD_SLACK_MARGIN for more details.| 0|
215215
| <a name="SET_RC_TCL"></a>SET_RC_TCL| Metal & Via RC definition file path.| |
216216
| <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.| |
217+
| <a name="SKIP_DETAILED_ROUTE"></a>SKIP_DETAILED_ROUTE| Skips detailed route.| 0|
217218
| <a name="SKIP_GATE_CLONING"></a>SKIP_GATE_CLONING| Do not use gate cloning transform to fix timing violations (default: use gate cloning).| |
218219
| <a name="SKIP_INCREMENTAL_REPAIR"></a>SKIP_INCREMENTAL_REPAIR| Skip incremental repair in global route.| 0|
219220
| <a name="SKIP_LAST_GASP"></a>SKIP_LAST_GASP| Do not use last gasp optimization to fix timing violations (default: use gate last gasp).| |
@@ -411,6 +412,7 @@ configuration file.
411412
- [MIN_ROUTING_LAYER](#MIN_ROUTING_LAYER)
412413
- [REPORT_CLOCK_SKEW](#REPORT_CLOCK_SKEW)
413414
- [ROUTING_LAYER_ADJUSTMENT](#ROUTING_LAYER_ADJUSTMENT)
415+
- [SKIP_DETAILED_ROUTE](#SKIP_DETAILED_ROUTE)
414416
- [SKIP_REPORT_METRICS](#SKIP_REPORT_METRICS)
415417

416418
## final variables

flow/scripts/detail_route.tcl

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ if { ![grt::have_routes] } {
55
error "Global routing failed, run `make gui_grt` and load $::global_route_congestion_report \
66
in DRC viewer to view congestion"
77
}
8+
9+
if { [env_var_exists_and_non_empty SKIP_DRT] } {
10+
write_db $::env(RESULTS_DIR)/5_2_route.odb
11+
exit
12+
}
13+
814
erase_non_stage_variables route
915
set_propagated_clock [all_clocks]
1016

flow/scripts/final_report.tcl

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ write_def $::env(RESULTS_DIR)/6_final.def
1818
write_verilog $::env(RESULTS_DIR)/6_final.v
1919

2020
# Run extraction and STA
21-
if { [env_var_exists_and_non_empty RCX_RULES] } {
21+
if {
22+
[env_var_exists_and_non_empty RCX_RULES]
23+
&& ![env_var_exists_and_non_empty SKIP_DRT]
24+
} {
2225
# RCX section
2326
define_process_corner -ext_model_index 0 X
2427
extract_parasitics -ext_model_file $::env(RCX_RULES)

flow/scripts/variables.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -998,3 +998,9 @@ RULES_JSON:
998998
config.mk or from bazel-orfs.
999999
stages:
10001000
- test
1001+
SKIP_DETAILED_ROUTE:
1002+
default: 0
1003+
description: >
1004+
Skips detailed route.
1005+
stages:
1006+
- route

0 commit comments

Comments
 (0)