PT环境的脚本配置

一般情况下会是如下的两个文件夹

---分割线

rm_setup内容如下:

---分割线

pt_setup.tcl

 1 set REPORTS_DIR "reports" #定义rpt文件夹
 2 set RESULTS_DIR "results" #定义输出结果文件夹
 3 ###Library&Design Setup###
 4 set search_path "XXXX"
 5 
 6 set LAYOUT_PATH XXXXX #spef文件所在的文件夹
 7 set NETLIST_FILES "XXXX" #PR输出的netlist位置
 8 
 9 ##DMSA File Section###
10 set sh_source_uses_search_path true
11 
12 ##set dmsa corners##
13 set dmsa_corners "setup_wc1_cmax \"
14 
15 ##set corner lib##
16 set dmas_corner_library_files (setup_wc1_cmax) "ss125.lib \"
17 
18 ##set dmsa modes##
19 set dmsa_modes "FUNC SCAN" #一般是这两个
20 
21 set dmsa_mode_constraint_files(FUNC) "XXX.sdc"
22 set dmsa_mode_constraint_files(SCAN) "XXX.sdc"
23 
24 set PARASITIC_FILES(setup_wc1_cmax) "$LAYOUT_PATH/XXX.spf.cmax_125"
25 
26 ##set derate##
27 set dmsa_derate_clock_early_cell_value(FUNC_setup_wc1_cmax) "XX"
28 set dmsa_derate_clock_early_net_value(FUNC_setup_wc1_cmax) "XX"
29 
30 set dmsa_derate_clock_early_cell_value(SCAN_setup_wc1_cmax) "XX"
31 set dmsa_derate_clock_early_net_value(SCAN_setup_wc1_cmax) "XX"
32 
33 ##set the number of hosts and licenses to number of dmsa_corners * number of dmsa_modes
34 set dmsa_num_of_hosts [expr [llength $dmsa_corners]*[llength $dmsa_modes]]
35 set dmsa_num_of_licenses [expr [llength $dmsa_corners]*[llength $dmsa_modes]]
36 ##Fix ECO DRC set_up
37 set eco_drc_buf_list "XXX"
38 ##Fix ECO timing setup
39 set eco_hold_buf_list "XXX"

 common_setup.tcl

 1 set DESIGN_NAME "XXX_chiptop"
 2 
 3 set DESIGN_REF_DATA_PATH "XXXX"
 4 
 5 set HIERARCHICAL_DESIGNS ""
 6 set HIERARCHICAL_CELLS ""
 7 
 8 set ADDITIONAL_SEARCH_PATH "$DESIGN_REF_DATA_PATH/xxx \"
 9 
10 set MIN_LIBRARY_FILES ""
11 set MW_REFERENCE_CONTROL_FILE ""
12 set LIBRARY_DONT_USE_FILE ""
 
 ---分割线
rm_pt_scripts内容如下:
dmsa.tcl
dmsa_mc.tcl
dmsa_analysus.tcl
---分割线
dmsa.tcl
 1 ##filename: dmsa.tcl
 2 set sdir "../scr"
 3 
 4 ##source common and pt_setup .tcl File
 5 source $sdir/rm_setup/common_setup.tcl
 6 source $sdir/rm_setup/pt_setup.tcl
 7 
 8 ##make REPORTS_DIR
 9 fille mkdir $REPORTS_DIR
10 
11 ##make RESULT_DIR
12 file mkdir $RESULT_DIR
13 
14 #file delete -force ./work
15 set multi_scenario_working_directory ./work
16 set multi_scenario_merged_error_log ./work/error_log.txt
17 
18 #inherit the master's search_path
19 set search_path "$search_path $sh_launch_dir $sh_launch_dir/$sdir/rm_pt_scripts"
20 
21 #run process on the local machine
22 set_host_options -num_processes $dmsa_num_of_hosts -max_cores 4
23 
24 #CORE SECTION
25 if {1} {
26 foreach corner $dmsa_corners {
27 foreach mode $dmsa_modes {
28 create_scenario -name ${mode}_${corner} -specific_variables {mode corner} -specific_data "$sdir/rm_setup/common_setup.tcl $sdir/rm_setup/pt_setup.tcl $sdir/rm_pt_scripts/dmsa_mc.tcl"
29 }
30 }
31 }
32 #RENGE only run for one corner
33 if {0} {
34 set mode "FUNC"
35 set corner "DBG"
36 create_scenario -name ${mode}_${corner} -specific_variables {mode corner} -pecific_data "$sdir/rm_setup/common_setup.tcl $sdir/rm_setup/pt_setup.tcl $sdir/rm_pt_scripts/dmsa_mc.tcl"
37 }
38 
39 #start process
40 start_hosts
41 #set session focus to all scenarios
42 current_session -all
43 #produce report for all scenarios
44 source $sdir/rm_pt_scripts/dmsa_analysis.tcl

---分割线

dmsa_mc.tcl

 

 
 
 
posted @ 2024-10-12 09:20  chippeace  阅读(455)  评论(0)    收藏  举报