PTPX功耗分析实战, VCD, SAIF, FSDB的区别
注:文章转载自微信公众号 RTL2GDS (微信号:rtl2gds)
你好,我是老本(Benjamin)。
STA系列文章定期会在微信公众号每周日晚8点更新,其它时间就先写点随笔吧,这是一篇PTPX进行功耗分析的实战文章,介绍了主要的命令和选项,以及对反标翻转率的解析,不同波形文件的比较。
PTPX功耗分析
PT如果report_power需要额外的PTPX的licence,可以通过以下变量打开:
set_app_var power_enable_analysis true (默认是false)
用PT做平均功耗分析,分三种情况:
(1)假如有波形文件:最理想的情况是能提供后仿产生的VCD/SAIF文件,通过read_vcd/read_saif将真实的翻转率反标到Net上,然后通过report_switching_activity检查反标率,然后report_power报功耗值。
(2)人为设置翻转率:根据经验值,通过set_switching_activity/set_case_analysis来设置register,clock gate以及memory/blackbox的翻转率,这个经验是从以往项目的仿真得到的,然后通过以下类似下面的命令设置:
reset_switching_activity (重置之前设置的翻转率)
set_switching_activity [get_pins -of_object [all_registers]] -toggle_rate 0.5 -static_probability 0.5 -base_clock * (设置register的翻转率)
set_switching_activity -type black_boxes -toggle_rate 0.1 -static_probability 0.5 -base_clock * -hierarchy (设置blockboxs上的翻转率