CTS Spec File & ICC2 Commands
(with Skew Group, Fanout, and
Transition)
For Synopsys ICC2 – Clock Tree
Synthesis Setup
Clock Skew Group – Concept
• • A skew group ensures minimum timing
difference between key clock paths.
• • Useful for timing-critical domains (like data-
paths).
• • Helps control skew between registers within
a group.
CTS .spec File – Core Settings
• • Target Skew: 100ps
• • Max Fanout: 16
• • Max Transition: 100ps
• • Buffers: BUFX2, BUFX4, BUFX8
• • Inverters: INVX1, INVX2
• • Skew Group: Defined for CLK or multiple
clocks
Sample CTS .spec (TCL Snippet)
• set_clock_tree_options -clock_name CLK -
target_skew 100ps
• set_clock_tree_options -clock_name CLK -
target_insertion_delay 1200ps
• set_clock_tree_options -clock_name CLK -
max_fanout 16
• set_clock_tree_options -clock_name CLK -
max_transition 100ps
• set_clock_tree_cell -buffer_list {BUFX2 BUFX4
BUFX8}
Skew Group Setup – Commands
• create_clock_skew_group -name DATA_PATH -
clocks {CLK1 CLK2}
• set_skew_group_options -name DATA_PATH -
max_skew 30ps
Run CTS in ICC2
• clock_opt -only_cts
• • Performs only CTS stage.
• • Uses all skew/fanout/transition settings.
• • Ensures CTS legal clock tree and timing.