====== Script to Highlight Launch and Capture Clock Paths in the Layout ======
You can use the get_timing_paths command with the get_attribute command to create collections of the timing paths,
and use the gui_change_highlight command to highlight each collection of paths with a unique color in the GUI.
The example below uses the get_timing_paths and gui_change_highlight commands to highlight the paths for the launch and capture clocks for the
I_SDRAM_TOP/I_SDRAM_READ_FIFO/reg_array_reg_1__31_/D
register input.
set path [get_timing_paths -to I_SDRAM_TOP/I_SDRAM_READ_FIFO/reg_array_reg_1__31_/D \
-group SDRAM_CLK]
gui_change_highlight -color yellow -collection $path
set launch_clock [get_timing_paths -through [get_attribute [get_attribute $path startpoint_clock] sources] \
-to [get_attribute $path startpoint]]
gui_change_highlight -color green -collection $launch_clock
set capture_clock [get_timing_paths -through [get_attribute [get_attribute $path endpoint_clock] sources] \
-to [get_attribute $path endpoint_clock_pin]]
gui_change_highlight -color blue -collection $capture_clock
{{:vlsi:icc:launch-capture-clock.png|}}
===== Proc Version =====
proc highlight_clock_path {from_point to_point} {
set path [get_timing_paths -from $from_point -to $to_point]
gui_change_highlight -color yellow -collection $path
set launch_clock [get_timing_paths -through [get_attribute [get_attribute $path startpoint_clock] sources] \
-to [get_attribute $path startpoint]]
gui_change_highlight -color green -collection $launch_clock
set capture_clock [get_timing_paths -through [get_attribute [get_attribute $path endpoint_clock] sources] \
-to [get_attribute $path endpoint_clock_pin]]
gui_change_highlight -color blue -collection $capture_clock
}