Synopsys公司做功耗分析使用到的工具是:黃金時(shí)間的PX***PTPX鐵可以在邏輯綜合之后就進(jìn)行功耗預(yù)估的PrimeTime 軌道進(jìn)行分析,所以,我們只要用到的PrimeTime PX來做功耗分析就夠了。
上圖是布局布線后和邏輯綜合后進(jìn)行功耗分析的流程。
一。邏輯綜合后的功耗分析
所用到的文件有:1。邏輯綜合后的Verilog的文件
2。靜態(tài)時(shí)序分析時(shí)用到的約束文件
3。RTL的仿真文件,我用的是VCD,畢竟標(biāo)準(zhǔn)各個(gè)仿真器都支持?
4。有功耗信息的庫文件。分貝,這個(gè)庫文件可以報(bào)告一個(gè)庫里的細(xì)胞,看是否有。
有了這些文件之后,就可以做功耗分析了,下面說一下功耗分析的流程:
1。允許功耗分析功能集power_enable_analysis
2。設(shè)置分析模式 設(shè)置 的因素。
3。讀入設(shè)計(jì)和庫文件
4。指定工作條件
5。時(shí)序分析 update_timing
6。獲取活動(dòng)數(shù)據(jù)
如果是RTL級(jí)別的網(wǎng)表文件,要用RTL來告訴PT之前指定的VCD文件是布局布線之前的。如果VCD是zero_delay的仿真,也就是說是純純的功能模擬的話,應(yīng)該家用zero_delay選項(xiàng)如果都為指定,PT默認(rèn)是門級(jí)。
7。設(shè)置功耗分析選項(xiàng)set_power_analysis_options:
-static_leakage_only選項(xiàng)set_power_analysis_options命令只支持 平均功率分析模式。
-waveform_interval-cycle_accurate_cycle_count,-cycle_accurate_clock,-waveform_format, - waveform_output,包括-include_groups選項(xiàng) 只支持基于時(shí)間的 功率分析模式。
8。功耗分析 update_power
9。生成功耗分析報(bào)告report_power
要說明的是,PTPX是primetime的一個(gè)增強(qiáng)功能,只用一個(gè)PT腳本就可以了,我把自己的pt腳本拿出來分享一下:
文件:pt.tcl
###########################################
# 設(shè)置功率分析模式
###########################################
設(shè)置真正power_enable_analysis;
集平均power_analysis_mode;
###########################################
# 讀取和門級(jí)網(wǎng)表鏈接
###########################################
設(shè)置SEARCH_PATH“。。/源DB / /結(jié)果”
設(shè)置link_library“typical.db”
設(shè)置target_library“typical.db”
read_verilog jnd_90s.v
設(shè)置top_name JND
current_design JND
鏈接
###########################################
# 閱讀SDC和過渡時(shí)間或注釋寄生
###########################################
read_sdc pt_con.tcl
###########################################
# 檢查,更新或報(bào)告時(shí)序
###########################################
check_timing
update_timing
report_timing
###########################################
# 讀取開關(guān)活動(dòng)文件
###########################################
read_vcd-RTL測(cè)試平臺(tái)jnd_all.vcd strip_path
report_switching_activity list_not_annotated
###########################################
# 檢查或更新或報(bào)告電源
###########################################
check_power
update_power
report_power層次
二。布局布線后的功耗分析
功率格式。這里不介紹。
#讀庫,設(shè)計(jì),使電源分析
#和鏈路設(shè)計(jì)
設(shè)為power_enable_analysis真
設(shè)置link_library slow_pgpin.db
read_verilog power_pins.v
鏈接
#創(chuàng)建后備電源網(wǎng)
create_power_net_info vdd_backup功率
create_power_net_info vss_backup-GND
#創(chuàng)建域電力網(wǎng)
create_power_net_info t_vdd功率切換
-nominal_voltages {1.2} voltage_ranges {1.1 1.3}
create_power_net_info a_vdd功率
create_power_net_info b_vdd功率
#創(chuàng)建域地面網(wǎng)
create_power_net_info t_vss-GND
create_power_net_info a_vss-GND
create_power_net_info b_vss-GND
#創(chuàng)建內(nèi)部電源網(wǎng)
create_power_net_info int_vdd_1功率
-nominal_voltages {1.2} voltage_ranges [1.1 1.3}
可切換的
create_power_net_info int_vdd_2功率
-nominal_voltages {1.25} voltage_ranges {1.1 1.3}
create_power_net_info int_vdd_3功率
-nominal_voltages {1.2} voltage_ranges {1.1 1.3}
create_power_net_info int_vdd_4功率
#創(chuàng)建電源域
一個(gè)create_power_domain噸
一個(gè)create_power_domain一個(gè)對(duì)object_list [get_cells PD0_inst]
POWER_DOWN power_down_ctrl [A] get_nets
power_down_ctrl_sense 0
一個(gè)create_power_domain B-object_list里get_cells PD1_inst]
POWER_DOWN
#連接到電源域的軌
connect_power_domain T-primary_power_net t_vdd
primary_ground_net t_vss
connect_power_domain一個(gè)primary_power_net的a_vdd
-primary_ground_net a_vss
-backup_power_net vdd_backup
backup_ground_net vss_backup
connect_power_domain B-primary_power_net b_vdd
primary_ground_net b_vss
#設(shè)置電壓的電力網(wǎng)
set_voltage 1.15 object_list里{t_vdd a_vdd b_vdd}
#讀取SDC和其他時(shí)間或電源斷言
set_input_transition 0.0395 [all_inputs]
1.0 set_load [所有輸出]
#執(zhí)行。時(shí)序分析
update_timing
#讀取開關(guān)活動(dòng)
set_switching_activity 。。.
set_switching_activity 。。.
。。.
report_power
三。關(guān)于報(bào)告
一個(gè)標(biāo)準(zhǔn)的報(bào)告:
電力集團(tuán)電源電源電源電源(%)ATTRS
-------------------------------------------------- -------------
io_pad 0.0000 0.0000 0.0000 0.0000(0.00%)
內(nèi)存0.0000 0.0000 0.0000 0.0000(0.00%)
black_box 0.0000 0.0000 0.0000 0.0000(0.00%)
clock_network 0.0000 0.0000 0.0000 0.0000(0.00%)
注冊(cè)8.442e-05 1.114e-05 9.208e-09 9.557e-05(29.97%),我
組合0.0000 0.0000 0.0000 0.0000(0.00%)
順序0.0000 0.0000 0.0000 0.0000(0.00%)
屬性
----------
- 包括驅(qū)動(dòng)寄存器功率
內(nèi)部開關(guān)漏電總時(shí)鐘
電源電源電源電源(%)ATTRS
-------------------------------------------------- -------------
CLK 1.813e-04 4.199e-05 4.129e-10 2.233e-04
-------------------------------------------------- -------------
預(yù)計(jì)Clock1.813e 04 4.199e 054.129e 102.233e-04(70.03%)
開關(guān)電源凈額= 5.313e-05(16.66%)
細(xì)胞內(nèi)部功率= 2.657e-04(83.33%)
電池泄漏功率= 9.627e-09(0.00%)
---------
總功率= 3.188e-04(100.00%)
關(guān)于門控時(shí)鐘的報(bào)告:
report_clock_gate_savings
****************************************
報(bào)告:時(shí)鐘門儲(chǔ)蓄
power_mode:平均值
設(shè)計(jì):mydesign
版本:D-2009.12
日期:2010年10月29 12:08:20 2009
****************************************
-------------------------------------------------- ----------------
時(shí)鐘:CLK
+時(shí)鐘切換率:0.392157
+寄存器數(shù):19262
+的時(shí)鐘門數(shù):12
+平均時(shí)鐘切換率在寄存器:0.305872
+平均切換儲(chǔ)蓄的寄存器:22.0%
-------------------------------------------------- ----------------
切換儲(chǔ)蓄數(shù)目%
分布寄存器寄存器
-------------------------------------------------- ----------------
100%0 0.0%
80% - 100%76 0.4%
60% - 80%5660 29.4%
40% - 60%0 0.0%
20% - 40%8 0.0%
0% - 20%0 0.0%
0%13518 70.2%
----------------------
評(píng)論
查看更多