ICC2:ETM(extract timing model)
blog.csdn.net/m0_61544122/article/details/127408490
Copyright statement: This article is an original blogger article, following the CC 4.0 BY-SA
copyright agreement, please attach the original source link and this statement for
reprinting.
Link to this article: https://blog.csdn.net/m0_61544122/article/details/127408490
ICC2
The column includes this content
38 articles
51 subscriptions
subscribe column
ICC2 needs block-level ndm for top-level PR work. ICC2 can directly call PT extract model
to generate ndm for a specified block. The process is as follows.
1)create_frame
Before extracting the model, a frame view needs to be generated for the specified block.
2) Environment settings
set_scnario_status -active true -leakage_power true -dynamic_power true [all_scenarios]
set_app_options -name \
time.si_enable_analysis -value true
set_app_options -name \
abstract.annotate_power -value true
set_app_options -name \
abstract_enable_signal_em_analysis -value true
set_app_options -name \
time.use_pt_delay -value true
set_pt_options -pt_exec /eda/synopsys/PT_xx/bin/pt_shell (-pre_link_script
pre_link.tcl -post_link_script post_link.tcl)
#pre_link.tcl and post_link.tcl are applied to eco fusion flow and are scripts
describing the variable settings of each scenario. If the pre/post link script
is not used, the tool will refer to the ICC2 environment to set the PT
environment.
1/5
set_app_options -name
extract.starrc_mode true/none
set_starrc_options -config starrc_fig
#It should be noted here that if you set true, it is easy to have bugs, and pt
fails to run. If you set none, the tool will use the RC method that comes with
ICC2. The starrc_config file is the Starrc environment configuration file.
3)extract_model
Looking at the log here, the generation of lib generally does not fail, but the generation of
db is prone to failure. If db is generated, the tool will create the corresponding ndm by
itself . If it fails, human intervention is required to convert lib into db and then create
ndm.
4) optional, Library Compile converts lib into db
Here ICC2 can directly call lc_shell, the command is as follows:
set_lc_options -exec_path /eda/synopsys/LC_xx/bin/lc_shell
lc {
foreach sce {SCE1 SCE2 ... ...} {
read_lib work_dir/DMSA/$sce/top_cell.lib
write_lib top_cell -format db -output \
work_dir/DMSA/$sec/top_cell_lib.db
remove_lib -all
}
The extract model will generate work_dir and ETM_Lib_work_dir directories by default.
The extract_model command under ETM_Lib_work_dir/top_cell will generate a
create_ndm.tcl
If the tool does not generate ndm by itself, the user needs to run the script by himself
icc2_lm_shell -file ETM_Lib_work_dir/top_cell/create_ndm.tcl
#pre_link.tcl example:
set sce [current_scenario]
2/5
switch $sce {
FUNC_SLOW_CMAX125 {
set sh_source_use_search_path true
set si_enable_analysis true
set power_enable_analysis true
... ....
}
FUNC_SLOW_CMAX-40 {
set sh_source_use_search_path true
set si_enable_analysis true
set power_enable_analysis true
... ...
}
... ...
#post_link.tcl
set sce [current_scenario]
switch $sce {
FUNC_SLOW_CMAX125 {
set power_default_toggle_rate 0.1
set power_default_static_probability 0.5
set timing_save_pin_arrival_and_slack true
set_timing_derate ... ...
set_dont_use ... ...
}
... ...
3/5
}
# starrc_config example
SIGNOFF_IMAGE: /eda/synopsys/STARRC_xx/bin/StarXtract
CORNER_GRD_FILE: cornergrd.mapping
MAPPING_FILE: layer.map
COMMAND_FILE: starrc_cmd_gate_eco_fusion
The difference between starrc_cmd_gate_eco_fusion and general starrc running files is
that only environment settings are reserved, and input and output files such as
BLOCK/LEF_FILE/TOP_DEF_FILE/CORNER_FILE/NETLIST_FILE do not need to be
set.
#cornergrd.mapping example
slow125 xx/xx-cmax.nxgrd
slow-40 xx/xx-cmax.nxgrd
... ...
Shilu Building
WeChat public account
IC Backend Study Guide
Did Related Recommendations help you?
very unhelpful
no help
4/5
generally
helpful
very helpful
5/5