Mitch Bailey
12/30/2021, 12:06 AMMatthew Guthaus
12/30/2021, 1:57 AMKunal
12/30/2021, 3:48 AMMatthew Guthaus
12/30/2021, 4:09 AMMitch Bailey
12/30/2021, 4:17 AMMatt Venn
12/30/2021, 10:36 AMMitch Bailey
12/30/2021, 11:31 AMMatt Liberty
12/31/2021, 4:36 AMMatthew Guthaus
12/31/2021, 5:00 AMMatt Liberty
12/31/2021, 7:17 AMMatthew Guthaus
12/31/2021, 5:04 PMf {[info exists ::env(CLOCK_PORT)] && $::env(CLOCK_PORT) != ""} {
create_clock [get_ports $::env(CLOCK_PORT)] -name $::env(CLOCK_PORT) -period $::env(CLOCK_PERIOD)
} else {
create_clock -name __VIRTUAL_CLK__ -period $::env(CLOCK_PERIOD)
set ::env(CLOCK_PORT) __VIRTUAL_CLK__
}
Matt Liberty
12/31/2021, 5:06 PMMatthew Guthaus
12/31/2021, 5:07 PMputs "\[INFO]: Performing clock tree synthesis..."
puts "\[INFO]: Looking for the following net(s): $::env(CLOCK_NET)"
puts "\[INFO]: Running Clock Tree Synthesis..."
clock_tree_synthesis\
-buf_list $::env(CTS_CLK_BUFFER_LIST)\
-root_buf $::env(CTS_ROOT_BUFFER)\
-clk_nets $::env(CLOCK_NET)\
-sink_clustering_enable\
-sink_clustering_size $::env(CTS_SINK_CLUSTERING_SIZE)\
-sink_clustering_max_diameter $::env(CTS_SINK_CLUSTERING_MAX_DIAMETER)
set_propagated_clock [all_clocks]
if { ! [info exists ::env(CLOCK_NET)] } {
set ::env(CLOCK_NET) $::env(CLOCK_PORT)
}
Matt Liberty
12/31/2021, 5:26 PMMatthew Guthaus
01/01/2022, 8:41 AM