Skip to content

Commit 4788ec9

Browse files
authored
Merge pull request #2147 from The-OpenROAD-Project-staging/secure-tns-percent
improve QoR by more aggressive timing repair
2 parents 7650230 + 3693e07 commit 4788ec9

File tree

9 files changed

+24
-9
lines changed

9 files changed

+24
-9
lines changed

flow/Makefile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,9 @@
104104
# Default design
105105
DESIGN_CONFIG ?= ./designs/nangate45/gcd/config.mk
106106

107-
# Default TNS_END_PERCENT value
108-
export TNS_END_PERCENT ?=5
107+
# Default TNS_END_PERCENT value for post CTS timing repair
108+
# Try fixing all violating endpoints by default (reduce to 5% for runtime)
109+
export TNS_END_PERCENT ?=100
109110

110111
# If we are running headless use offscreen rendering for save_image
111112
ifndef DISPLAY

flow/designs/gf12/bp_single/config.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ export DESIGN_NAME = bsg_chip
33
export PLATFORM = gf12
44

55
export SKIP_GATE_CLONING = 1
6+
export TNS_END_PERCENT = 5
67

78
# export VERILOG_FILES = $(PLATFORM_DIR)/bp/bsg_ac_black_parrot_single_core_v0/bsg_chip.sv2v.v
89
export VERILOG_FILES = $(PLATFORM_DIR)/bp/bsg_ac_black_parrot_single_core_v0/yosys/synth_don_abc_script.v \

flow/designs/gf12/bp_single/config_mpl2.mk

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@ export DESIGN_NICKNAME = bp_single
22
export DESIGN_NAME = bsg_chip
33
export PLATFORM = gf12
44

5+
export SKIP_GATE_CLONING = 1
6+
export TNS_END_PERCENT = 5
7+
58
export SYNTH_HIERARCHICAL = 1
69
export RTLMP_FLOW = True
710
#

flow/designs/gf12/ca53/config.mk

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,5 +65,6 @@ else
6565
export DESIGN_TYPE = CELL_NODEN
6666
endif
6767

68-
export SKIP_PIN_SWAP = 1
68+
#export SKIP_PIN_SWAP = 1
6969
export SKIP_INCREMENTAL_REPAIR = 1
70+
export TNS_END_PERCENT = 5

flow/designs/gf12/jpeg/config.mk

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,6 @@ else
2020
export DESIGN_TYPE = CELL_NODEN
2121
endif
2222

23-
export SKIP_PIN_SWAP = 1
23+
#export SKIP_PIN_SWAP = 1
2424
export SKIP_GATE_CLONING = 1
25+

flow/designs/intel16/aes/config.mk

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,5 @@ export CORE_AREA = 1.26 1.89 248 248
1515

1616

1717
export PLACE_DENSITY = uniform
18-
export SKIP_PIN_SWAP = 1
18+
#export SKIP_PIN_SWAP = 1
19+
export SKIP_GATE_CLONING = 1

flow/designs/intel16/aes/metadata-base-ok.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -325,4 +325,4 @@
325325
"synth__mem__peak": 134532.0,
326326
"synth__runtime__total": "0:48.61",
327327
"total_time": "0:08:54.570000"
328-
}
328+
}

flow/designs/intel16/aes/rules-base.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
"compare": "<="
2929
},
3030
"detailedroute__route__wirelength": {
31-
"value": 283519,
31+
"value": 265022,
3232
"compare": "<="
3333
},
3434
"detailedroute__route__drc_errors": {
@@ -59,4 +59,4 @@
5959
"value": -10.0,
6060
"compare": ">="
6161
}
62-
}
62+
}

flow/scripts/global_route.tcl

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,14 @@ if { ![info exists ::env(SKIP_INCREMENTAL_REPAIR)] } {
7070
# Repair timing using global route parasitics
7171
puts "Repair setup and hold violations..."
7272
estimate_parasitics -global_routing
73-
repair_timing -verbose
73+
74+
# process user settings
75+
set additional_args "-verbose"
76+
append_env_var additional_args SKIP_PIN_SWAP -skip_pin_swap 0
77+
append_env_var additional_args SKIP_GATE_CLONING -skip_gate_cloning 0
78+
puts "repair_timing [join $additional_args " "]"
79+
repair_timing {*}$additional_args
80+
7481
if {[info exist ::env(DETAILED_METRICS)]} {
7582
report_metrics 5 "global route post repair timing"
7683
}

0 commit comments

Comments
 (0)