You are on page 1of 2

set max_trans 0.

050
set max_skew 0.1
set max_fanout 50

set_analysis_view -setup {ana1} -hold {ana1}


setAnalysisMode -analysisType onChipVariation -cppr both -checkType setup

cleanupSpecifyClockTree

add_ndr -name default_2x_space -spacing {metal1 0.38 metal2:metal5 0.42 metal6


0.84}

create_route_type -name leaf_rule -non_default_rule default_2x_space -


top_preferred_layer metal4 -bottom_preferred_layer metal2
create_route_type -name trunk_rule -non_default_rule default_2x_space -
top_preferred_layer metal4 -bottom_preferred_layer metal2 -shield_net VSS -
shield_side both_side
create_route_type -name top_rule -non_default_rule default_2x_space -
top_preferred_layer metal4 -bottom_preferred_layer metal2 -shield_net VSS -
shield_side both_side

set_ccopt_property route_type -net_type leaf leaf_rule


set_ccopt_property route_type -net_type trunk trunk_rule
set_ccopt_property route_type -net_type top top_rule

setDesignMode -process 40
set_ccopt_property buffer_cells {BUF_X1 BUF_X2 BUF_X4 BUF_X8 BUF_X16 CLKBUF_X1
CLKBUF_X2}
set_ccopt_property inverter_cells {INV_X1 INV_X2 INV_X4 INV_X8 INV_X16}
for {set a 0} {$a < 2} {incr a} {
for {set b 0} {$b < 2} {incr b} {
for {set c 0} {$c < 2} {incr c} {
set_ccopt_property target_max_trans $max_trans
set_ccopt_property target_skew $max_skew
set_ccopt_property max_fanout $max_fanout
set_ccopt_property update_io_latency 0

create_ccopt_clock_tree_spec -views {ana1} -file


Rocket2.0/rocket/do_pr/results/ctsSpec_results$max_trans$max_skew$max_fanout.tcl
source
Rocket2.0/rocket/do_pr/results/ctsSpec_results$max_trans$max_skew$max_fanout.tcl

ccopt_design

set step "cts"


set rpt_dir
"Rocket2.0/rocket/do_pr/reports/Rocket_design/$step/max_trans_$max_trans/
max_skew_$max_skew/max_fanout_$max_fanout"
timeDesign -postCTS -numPaths 10 -outDir $rpt_dir -prefix $step
timeDesign -postCTS -hold -numPaths 10 -outDir $rpt_dir -prefix $step
report_ccopt_clock_trees -file $rpt_dir/clock_trees.rpt
report_ccopt_skew_groups -file $rpt_dir/skew_groups.rpt
report_timing > $rpt_dir/timing_report_postCCopt.rpt

saveDesign
Rocket2.0/rocket/do_pr/results/Rocket_design/$step/cts_tsf_$max_trans$max_skew$max_
fanout.enc
set max_fanout [expr {$max_fanout + 50}]
}
set max_fanout 50
set max_skew [expr {$max_skew + 0.1}]
}
set max_skew 0.1
set max_trans [expr {$max_trans + 0.050}]
}

You might also like