File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -46,7 +46,11 @@ set_placement_padding -global \
4646 -left $::env(CELL_PAD_IN_SITES_DETAIL_PLACEMENT) \
4747 -right $::env(CELL_PAD_IN_SITES_DETAIL_PLACEMENT)
4848
49- set result [catch { log_cmd detailed_placement } msg]
49+ if { [env_var_exists_and_non_empty USE_NEGOTIATION] && $::env(USE_NEGOTIATION) } {
50+ set result [catch { log_cmd detailed_placement -use_negotiation } msg]
51+ } else {
52+ set result [catch { log_cmd detailed_placement } msg]
53+ }
5054if { $result != 0 } {
5155 save_progress 4_1_error
5256 error " Detailed placement failed in CTS: $msg "
@@ -70,7 +74,11 @@ if { !$::env(SKIP_CTS_REPAIR_TIMING) } {
7074 run_lec_test 4_rsz 4_before_rsz_lec.v 4_after_rsz_lec.v
7175 }
7276
77+ if { [env_var_exists_and_non_empty USE_NEGOTIATION] && $::env(USE_NEGOTIATION) } {
78+ set result [catch { log_cmd detailed_placement -use_negotiation } msg]
79+ } else {
7380 set result [catch { log_cmd detailed_placement } msg]
81+ }
7482 if { $result != 0 } {
7583 save_progress 4_1_error
7684 error " Detailed placement failed in CTS: $msg "
Original file line number Diff line number Diff line change @@ -15,7 +15,11 @@ proc do_dpl { } {
1515 set_placement_padding -global \
1616 -left $::env(CELL_PAD_IN_SITES_DETAIL_PLACEMENT) \
1717 -right $::env(CELL_PAD_IN_SITES_DETAIL_PLACEMENT)
18- log_cmd detailed_placement {*}[env_var_or_empty DETAIL_PLACEMENT_ARGS]
18+ if { [env_var_exists_and_non_empty USE_NEGOTIATION] && $::env(USE_NEGOTIATION) } {
19+ log_cmd detailed_placement -use_negotiation {*}[env_var_or_empty DETAIL_PLACEMENT_ARGS]
20+ } else {
21+ log_cmd detailed_placement {*}[env_var_or_empty DETAIL_PLACEMENT_ARGS]
22+ }
1923
2024 if { $::env(ENABLE_DPO) } {
2125 if { [env_var_exists_and_non_empty DPO_MAX_DISPLACEMENT] } {
Original file line number Diff line number Diff line change @@ -62,7 +62,11 @@ proc global_route_helper { } {
6262 # Running DPL to fix overlapped instances
6363 # Run to get modified net by DPL
6464 log_cmd global_route -start_incremental
65- log_cmd detailed_placement
65+ if { [env_var_exists_and_non_empty USE_NEGOTIATION] && $::env(USE_NEGOTIATION) } {
66+ log_cmd detailed_placement -use_negotiation
67+ } else {
68+ log_cmd detailed_placement
69+ }
6670 # Route only the modified net by DPL
6771 log_cmd global_route -end_incremental {*}$res_aware \
6872 -congestion_report_file $::env(REPORTS_DIR) /congestion_post_repair_design.rpt
@@ -80,7 +84,11 @@ proc global_route_helper { } {
8084 # Running DPL to fix overlapped instances
8185 # Run to get modified net by DPL
8286 log_cmd global_route -start_incremental
83- log_cmd detailed_placement
87+ if { [env_var_exists_and_non_empty USE_NEGOTIATION] && $::env(USE_NEGOTIATION) } {
88+ log_cmd detailed_placement -use_negotiation
89+ } else {
90+ log_cmd detailed_placement
91+ }
8492 check_placement -verbose
8593 # Route only the modified net by DPL
8694 log_cmd global_route -end_incremental {*}$res_aware \
You can’t perform that action at this time.
0 commit comments