用户工具

站点工具


vlsi:icc:macro-side-routeguide

Create Route Guide Around Macro

proc gdh_create_macro_side_route_guide {} {
  set all_macros [all_macro_cells]
  set n 0
  set route_guide_prefix macro_side_route_guide_
  remove_route_guide ${route_guide_prefix}*
  foreach_in_collection m $all_macros {
    set bbox [get_attribute $m bbox]
    set llx [ lindex $bbox  0 0 ]
    set lly [ lindex $bbox  0 1 ]
    set trx [ lindex $bbox  1 0 ]
    set try [ lindex $bbox  1 1 ]
    set route_guide_bbox_left "[expr $llx-5] $lly $llx $try"
    set route_guide_bbox_right "$trx $lly [expr $trx + 5] $try"
    create_route_guide \
      -coordinate $route_guide_bbox_left \
      -no_preroute_layers {M5 M6} \
      -name macro_side_route_guide_${n}_left
    create_route_guide \
      -coordinate $route_guide_bbox_right \
      -no_preroute_layers {M5 M6} \
      -name macro_side_route_guide_${n}_right
 
    echo [ join [list $bbox $llx $lly $trx $try] ", " ]
    incr n
    #break
  }
}
vlsi/icc/macro-side-routeguide.txt · 最后更改: 2011/06/17 03:32 (外部编辑)