Skip to content

Commit ad8d752

Browse files
committed
variables: fix TIE_SEPARATION
it is used only from floorplan and was ignored as it was listed as place only in variables.yaml added default value, less brittle Signed-off-by: Øyvind Harboe <[email protected]>
1 parent c22d243 commit ad8d752

File tree

3 files changed

+6
-11
lines changed

3 files changed

+6
-11
lines changed

docs/user/FlowVariables.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ configuration file.
238238
| <a name="TECH_LEF"></a>TECH_LEF| A technology LEF file of the PDK that includes all relevant information regarding metal layers, vias, and spacing requirements.| |
239239
| <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.| |
240240
| <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.| |
241-
| <a name="TIE_SEPARATION"></a>TIE_SEPARATION| Distance separating tie high/low instances from the load.| |
241+
| <a name="TIE_SEPARATION"></a>TIE_SEPARATION| Distance separating tie high/low instances from the load.| 0|
242242
| <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|
243243
| <a name="USE_FILL"></a>USE_FILL| Whether to perform metal density filling.| 0|
244244
| <a name="VERILOG_DEFINES"></a>VERILOG_DEFINES| Preprocessor defines passed to the language frontend. Example: `-D HPDCACHE_ASSERT_OFF`| |
@@ -331,6 +331,7 @@ configuration file.
331331
- [TAPCELL_TCL](#TAPCELL_TCL)
332332
- [TIEHI_CELL_AND_PORT](#TIEHI_CELL_AND_PORT)
333333
- [TIELO_CELL_AND_PORT](#TIELO_CELL_AND_PORT)
334+
- [TIE_SEPARATION](#TIE_SEPARATION)
334335
- [TNS_END_PERCENT](#TNS_END_PERCENT)
335336

336337
## place variables
@@ -353,7 +354,6 @@ configuration file.
353354
- [ROUTING_LAYER_ADJUSTMENT](#ROUTING_LAYER_ADJUSTMENT)
354355
- [SKIP_REPORT_METRICS](#SKIP_REPORT_METRICS)
355356
- [SWAP_ARITH_OPERATORS](#SWAP_ARITH_OPERATORS)
356-
- [TIE_SEPARATION](#TIE_SEPARATION)
357357

358358
## cts variables
359359

flow/scripts/util.tcl

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,25 +14,19 @@ proc log_cmd { cmd args } {
1414
}
1515

1616
proc repair_tie_fanout_helper { } {
17-
if { [env_var_exists_and_non_empty TIE_SEPARATION] } {
18-
set tie_separation $env(TIE_SEPARATION)
19-
} else {
20-
set tie_separation 0
21-
}
22-
2317
# Repair tie lo fanout
2418
puts "Repair tie lo fanout..."
2519
set tielo_cell_name [lindex $::env(TIELO_CELL_AND_PORT) 0]
2620
set tielo_lib_name [get_name [get_property [lindex [get_lib_cell $tielo_cell_name] 0] library]]
2721
set tielo_pin $tielo_lib_name/$tielo_cell_name/[lindex $::env(TIELO_CELL_AND_PORT) 1]
28-
repair_tie_fanout -separation $tie_separation $tielo_pin
22+
repair_tie_fanout -separation $::env(TIE_SEPARATION) $tielo_pin
2923

3024
# Repair tie hi fanout
3125
puts "Repair tie hi fanout..."
3226
set tiehi_cell_name [lindex $::env(TIEHI_CELL_AND_PORT) 0]
3327
set tiehi_lib_name [get_name [get_property [lindex [get_lib_cell $tiehi_cell_name] 0] library]]
3428
set tiehi_pin $tiehi_lib_name/$tiehi_cell_name/[lindex $::env(TIEHI_CELL_AND_PORT) 1]
35-
repair_tie_fanout -separation $tie_separation $tiehi_pin
29+
repair_tie_fanout -separation $::env(TIE_SEPARATION) $tiehi_pin
3630
}
3731

3832
proc fast_route { } {

flow/scripts/variables.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,8 @@ TIE_SEPARATION:
232232
description: |
233233
Distance separating tie high/low instances from the load.
234234
stages:
235-
- place
235+
- floorplan
236+
default: 0
236237
EARLY_SIZING_CAP_RATIO:
237238
description: |
238239
Ratio between the input pin capacitance and the output pin load during initial gate sizing.

0 commit comments

Comments
 (0)