布局布线和时序分析
笔记本


2024-08-29 22:26:17icc2.setup走来走去223.167.127.88

# set option
set_app_options -name shell.common.report_default_significant_digits -value 4

# proc
proc co {args1 args2 }  {
	copy_objects [get_selection ] -y_times $args1 -y_pitch_type delta -y_pitch $args2
}

proc hp {args1 args2 }  {
	change_selection [get_timing_paths -from $args1 -to $args2 ]
}

proc hp1 {args1 }  {
	change_selection [get_timing_paths -to $args1 ]
}

proc sc {args1} {
	change_selection [get_flat_cells -hier -all $args1 ]
	gui_zoom -window [gui_get_current_window -types Layout -mru ] -selection
}

proc sn {args1} {
	change_selection [get_nets $args1 ]
	gui_zoom -window [gui_get_current_window -types Layout -mru ] -selection
}

proc sp {args1} {
	change_selection [get_pins $args1 ]
	gui_zoom -window [gui_get_current_window -types Layout -mru ] -selection
}

proc sport {args1} {
	change_selection [get_ports $args1 ]
	gui_zoom -window [gui_get_current_window -types Layout -mru ] -selection
}

proc stp {args1} {
	change_selection [get_timing_paths -to $args1 ]
	gui_zoom -window [gui_get_current_window -types Layout -mru ] -selection
}

proc sport {args1} {
	change_selection [get_ports $args1 ]
	gui_zoom -window [gui_get_current_window -types Layout -mru ] -selection
}

proc joe_remove_inverter_pairs {args1} {

}

proc full_timing {} {
	puts "1. route_global -effort_level medium -reuse_existing_global_route true"
	puts "2. report_timing"
	route_global -effort_level medium -reuse_existing_global_route true
	report_timing
}

proc re_load_err { args1 } {
	close_drc_error_data *err -force
	remove_drc_error_data *err -force
	read_drc_error_file -file $args1
}

proc hl { args1 } { 
	gui_change_highlight -collection [get_timing_path -to $args1 ]
}

proc smg { args } {
	change_selection [get_flat_cells -hier -filter "design_type == macro" $args ]
	gui_zoom -window [lindex [gui_get_window_ids ] 1 ] -selection
}

proc ml { args } { move_objects [get_selection ] -delta " [expr 0 - $args ] 0 " }
proc mr { args } { move_objects [get_selection ] -delta " $args 0 " }
proc mu { args } { move_objects [get_selection ] -delta " 0 $args " }
proc md { args } { move_objects [get_selection ] -delta " 0 [expr 0 - $args ] " }

proc hg { args1 } { 
	gui_change_highlight -collection [get_timing_path -group $args1 ]
}
proc sg { args1 } { 
	change_selection [get_timing_path -group $args1 ]
}

# alias
#

# alias rt report_timing -nosplit -scenario [get_object_name [current_scenario ] ]
alias s {sproc_icc2_spread_cells -cells [get_selection ] }
alias s0 {sproc_icc2_spread_cells -start_orient R0 -cells [get_selection ] }
alias rt {report_timing -nosplit}
alias g  if { $in_gui_session == true } { stop_gui } else { start_gui }
alias l list_blocks
alias o open_block
alias dn remove_routes -detail_route -nets 

puts "Customized procedure sourced"



回到首页时钟 , 联系信箱:yzbox#163.com(把#换成@) 粤ICP备18155639号