set j_y_max 0
set j_y_min 3750
foreach_in_collection j_obj [ all_fanout -from [get_ports op_subsys_pmg_iso[0] ] -only_cells -levels 1 ] {
set j_iso_name [get_attr $j_obj full_name ]
set j_iso_x [lindex [get_attr $j_obj origin ] 0 ]
set j_iso_y [lindex [get_attr $j_obj origin ] 1 ]
if { $j_iso_y > $j_y_max } { set j_y_max $j_iso_y }
if { $j_iso_y < $j_y_min } { set j_y_min $j_iso_y }
}
puts "$j_y_max $j_y_min [ expr $j_y_max - $j_y_min ]"
set j_sink ""
for { set j_i 0 } { $j_i < 21 } { incr j_i } {
foreach_in_collection j_obj [ all_fanout -from [get_ports op_subsys_pmg_iso[0] ] -only_cells -levels 1 ] {
set j_iso_name [get_attr $j_obj full_name ]
set j_iso_x [lindex [get_attr $j_obj origin ] 0 ]
set j_iso_y [lindex [get_attr $j_obj origin ] 1 ]
if { [get_pins -quiet $j_iso_name/PD ] != "" } {
set j_iso_pin $j_iso_name/PD
}
if { $j_iso_y < [ expr $j_y_max - ( $j_i * 20 ) ] && $j_iso_y > [ expr $j_y_max - ( $j_i * 20 ) - 20 ] } {
append j_sink " $j_iso_pin"
}
}
puts "add_buffer -inverter_pair -new_cell_names ISOTREE0903 { $j_sink } C8T28SOI_LL_IVX43_P0\n\n\n"
set j_sink ""
}
|