资讯动态

SpyGlass功耗分析实战指南:从Setup到Power Reduction全流程解析

发布时间:2026/10/15 4:32:11 来源:尧图企业网站定制
简介本资源是Synopsys官方发布的《SpyGlass® Power Estimation and SpyGlass Power Reduction Rules Reference Guide》技术参考手册L-2016.06版面向集成电路设计工程师、低功耗EDA工具使用者及数字前端验证人员聚焦芯片早期功耗评估与系统级降耗策略落地。手册完整覆盖功耗估计原理、动态/漏电功耗建模方法、30余条可配置的功耗降低规则含逻辑门级优化、时钟树精简、寄存器文件访问控制、存储器子系统节能等实操要点并详解SpyGlass与PrimeTime等主流EDA工具的协同集成流程与联合优化案例。资源为单文件PDF格式共1个文件大小9.46MB内容结构清晰含前言、术语规范、规则调用说明、典型场景案例及FAQ便于快速定位工程参数与调试依据。目前已有204人学习下载是开展SoC低功耗设计、撰写技术方案或备考芯片验证岗位的重要权威参考资料。1. SpyGlass功耗分析不是“跑个脚本就出数”L-2016.06版参考指南的真实价值与落地卡点你手头刚拿到一份 Synopsys SpyGlass® Power Estimation and Power Reduction Rules Reference GuideL-2016.06PDF 厚达 189 页目录里全是“PEVTDIST Rule”“SGDC 文件”“define_clock_tree”“set_cell_allocation”这类术语。别急着划重点——这不是一本能靠通读掌握的说明书而是一份需要反向拆解、按场景调用、靠实操校准的工程手册。它不教你怎么写 RTL也不告诉你怎么布线但它决定了你花三个月做的低功耗设计在流片前最后一轮功耗审计中是被签核放行还是被退回重做。真实项目里我见过某高校团队用默认参数跑出的 leakage 功耗比后端仿真高 37%只因漏掉了“Step 1: Run the PEVTDIST Rule on the Netlist”这一步也见过某公司把 RTL simulation data 直接喂给 gate-level flow结果 switching power 报告全飘红debug 三天才发现没启用 Intelligent Heuristics mapping。这份文档的价值不在“它写了什么”而在“你跳过哪一行就会在 tape-out 前夜收到一封标红的邮件”。它适合两类人一是正在搭建功耗 signoff 流程的前端/物理设计工程师二是接手 legacy 项目、需要快速厘清 SpyGlass power flow 配置逻辑的维护者。如果你只想要一个“一键生成功耗报告”的模板它会让你失望但如果你需要知道“为什么这个 rule 必须在 calibrating data 之后 run”“为什么 SGDC 文件不能直接复用到不同 PVT corner”那它就是你书签栏里最常点击的 PDF。2. Power Estimation 不是黑匣子从 setup 到 metrics 的全流程闭环功耗估计在 SpyGlass 中从来不是“load netlist run power_estimation”两步完成的事。L-2016.06 版明确将整个流程拆解为Setup → Power Estimation → Viewing Results → Optimizing Correlation四个强依赖阶段。其中 Setup 阶段占全文近 1/3 篇幅P.45–99绝非凑页数——因为后续所有 power metrics 的可信度都锚定在 setup 的每一条约束是否真实反映物理实现意图。下面按实际工程节奏带你走通这条链路。2.1 技术库准备与仿真数据注入两个必须显式声明的“地基”SpyGlass Power Estimation 的输入不是“RTL 或门级网表”这么简单而是三类强耦合数据源Technology Library.db/.lib、Simulation Activity Data.vcd/.saif/.fsdb和 Design ConstraintsSDC/SGDC。三者缺一不可且顺序不可逆。提示Synopsys 明确警告P.47“Providing an incomplete or inconsistent technology library will cause inaccurate capacitance extraction and thus erroneous internal power calculation.” 换句话说漏掉一个 VT cell 的 leakage table整个 leakage report 就失去参考价值。技术库准备不止是路径配置# 正确做法显式声明多 VT 库 wireload model power ground pin mapping set_tech_lib -library_path /path/to/tech/lib/ff_0.8v_125c.db \ -library_path /path/to/tech/lib/ss_0.7v_125c.db \ -wireload_model /path/to/wireload/wl_10k.db \ -power_ground_pins {VDD VSS}-library_path必须包含所有 PVT corner 对应的 .db 文件如 ff_0.8v_125c.db, ss_0.7v_125c.db不能只挂一个典型库-wireload_modelL-2016.06 强制要求提供 wireload modelP.53否则 capacitance 估算退化为 constant valueswitching power 误差 50%-power_ground_pins必须显式声明电源/地引脚名P.89否则 black box 内部 power ground connection 无法识别leakage 计算直接归零。仿真数据注入三种模式对应三种设计成熟度文档 P.48–50 明确划分了三种 activity data 注入方式选择错误会导致 activity propagation 失败模式适用场景SpyGlass 命令示例关键约束单文件全设计RTL 仿真完备gate-level 未生成read_saif -instance top -file design_activity.saif必须指定-instance top否则 activity 不向下 propagate多文件分模块模块级仿真已收敛顶层未联调read_saif -instance module_a -file mod_a.saifread_saif -instance module_b -file mod_b.saif各文件 instance 名必须与 netlist hierarchy 严格一致大小写敏感按 block 分离gate-level 仿真已完成需复用 gate-level activityread_vcd -vcd_file gl_sim.vcd -top_instance top必须加-top_instance且 vcd 中 signal name 需含 hierarchy path如top.module_a.clk逻辑说明SpyGlass 的 activity mapping 本质是 hierarchical name matching。若你用 RTL SAIF 但 netlist 已 flatten或 vcd 中 signal 缺少 hierarchy prefixSpyGlass 会静默丢弃 activityreport 中所有 switching power 显示为 0 —— 这不是 bug是设计约束未满足的必然结果。2.2 SDC/SGDC 约束的双轨制时序约束 ≠ 功耗约束新手最大误区把 STA 用的 SDC 直接扔进 power flow。L-2016.06 在 P.57 明确指出“SDC constraints are used for timing analysis only. For power analysis, SpyGlass requires SGDC (SpyGlass Design Constraints) which contain activity-aware directives.” 换言之SDC 告诉工具“信号何时有效”SGDC 告诉工具“信号在有效期间如何翻转”。SGDC 的核心四要素P.57–61SGDC 文件不是 SDC 的 copy-paste而是补充三类 power-specific 信息Clock Tree 定义define_clock_tree用于 clock gating analysis 和 clock network power 分解。必须基于 post-synthesis netlist 生成P.64–67不能用 RTL SDC 中的create_clock替代。Cell Reallocation 约束set_cell_allocation控制 SpyGlass 在 power estimation 中对 un-mapped cells如 memory compiler 生成的 macro的等效建模策略。P.68 警告“Omitting this constraint may cause overestimation of internal power for megacells.”Voltage Threshold Distributionset_pvtpevtdistrule多 VT 库下必须先运行pevtdistruleP.60生成 VT distribution report再用set_pvt指定各模块采用的 VT corner否则 leakage 计算无依据。Power Intent 声明set_power_intent显式声明 power domain、retention register、isolation cell 等P.70–74。这是 power reduction rules 的触发前提没有它spyglass_power_reduce会跳过所有 clock gating 优化。生成 SGDC 的实操脚本基于 P.67–69# Step 1: 从 netlist 中提取 clock tree structure需先 read_netlist run_rule -rule_name PEVTDIST -scope top # Step 2: 生成 define_clock_tree constraint输出到 sgdc_clock.tcl write_sgdc -file sgdc_clock.tcl -format clock_tree # Step 3: 生成 set_cell_allocation constraint针对 memory macro run_rule -rule_name CELL_REALLOCATE -scope top write_sgdc -file sgdc_cell_alloc.tcl -format cell_allocation # Step 4: 手动编写 power intentsgdc_power.tcl set_power_intent -domain core -supply VDD -ground VSS set_power_intent -domain mem_ret -supply VDD_RET -ground VSS -retentionwrite_sgdc -format clock_tree生成的.tcl文件包含define_clock_tree -name clk_core -source_pin top/clk_buf/Q等语句必须 source 到 power sessionset_cell_allocationP.69 明确限制“only applicable to unmapped cells”即对已综合进标准单元的 logic 无效专为 memory/macro 设计set_power_intent必须与 UPF/CPF 文件保持语义一致否则 power reduction rules 无法识别 power domain boundary。2.3 Power Estimation 的五类核心 metrics它们不是并列关系而是因果链L-2016.06 的 P.121–125 将 power metrics 分为 Leakage / Internal / Switching 三类物理量但真正决定 signoff 结果的是其组合逻辑。文档 P.105–108 强调Average Power 是 Leakage Internal Switching 的加权和而权重由 simulation activity 决定。这意味着同一份 netlist用 RTL SAIF 和 gate-level VCD 跑出的 Average Power 可能相差 3 倍——不是工具不准是 activity fidelity 不同。Metrics 计算逻辑与校准入口P.123–130Metric计算公式简化校准关键参数文档定位Leakage PowerΣ(cell_leakage × VT_distribution)set_pvt,pevtdistrule outputP.124Internal PowerΣ(cell_internal × activity × capacitance)read_saif/vcd,wireload_model,set_cell_allocationP.124Switching PowerΣ(node_capacitance × activity × voltage² × frequency)read_saif/vcd,set_voltage,wireload_modelP.125参数说明set_voltageP.130不是设置 supply voltage而是设置activity scaling voltage。例如当仿真在 0.8V 下运行但 target voltage 是 0.75V需set_voltage -voltage 0.75 -scale_factor 0.75/0.8否则 switching power 严重失真。Power Correlation Toolbox不是“调参”而是建立物理映射P.126–130 的 “Power Correlation Toolbox” 是整份文档最易被忽略的精华。它不提供 magic number而是给出四个可验证的校准维度Tune Synthesis Effects通过set_cell_allocation控制 macro modeling解决 synthesis tool 与 SpyGlass cell library 的 mismatchControl Simulation Information用read_saif -activity_threshold 0.1过滤低 activity nets避免 noise 影响 average powerModel Parasitics启用extract_parasitics -netlist读取 extracted SPEF替代 wireload estimationP.129Adjust Voltage如前所述set_voltage的 scale factor 必须基于 real simulation condition。血泪经验某跨平台系统项目曾因未启用extract_parasiticswireload model 估算的 net capacitance 比 SPEF 实测值低 40%导致 switching power 低估最终 silicon test 中 clock network 温升超标。从那以后我每次 run power estimation 都强制检查report_parasitics -summary输出是否为空。3. Power Reduction Rules 不是“开个开关”隐式时钟门控与存储器优化的触发条件Power Reduction 在 SpyGlass 中不是独立 flow而是Power Estimation 的自然延伸。L-2016.06 的 P.145 明确写道“Power Reduction Rules are appliedafterPower Estimation completes andonlywhere power estimation identifies opportunities.” 换言之没有准确的 power estimationpower reduction 就是无源之水。本章聚焦两大高频优化方向clock gating 和 memory power reduction它们的规则触发有严苛的前提条件不是“run the rule”就能生效。3.1 Clock Gating从“显式 enable”到“隐式机会挖掘”的三层能力SpyGlass 的 clock gating 能力分为三级P.146–149逐级提升自动化程度但对 design quality 要求也逐级提高层级触发条件SpyGlass Rule输出物文档页码Level 1: Strengthen Existing EnablesRTL 中已存在always (posedge clk) if (en) q d;STRENGTHEN_CLOCK_ENABLES优化后的 enable logic插入 AND gateP.147Level 2: Find Implicit EnablesRTL 中无显式 enable但 control logic 存在可推导的 gating pointFIND_IMPLICIT_CLOCK_ENABLES新增clk_gatednet 和 enable logicP.146Level 3: CDC-Safe Gating跨 clock domain 的 gating需保证 metastability safetyCDC_SAFE_CLOCK_GATING插入 synchronizer enable logicP.176Level 2 隐式门控的三大硬性前提P.146FIND_IMPLICIT_CLOCK_ENABLES规则不会盲目搜索它依赖三个 design-level 事实Stability Condition稳定性条件控制信号在 clock cycle 内必须 stableP.165。SpyGlass 通过check_stability -scope top验证若 control signal 由 combinatorial logic 生成且 fanout 10该路径自动被排除Observability Don’t Care可观测性无关项下游 flop 的 D 端在 enable0 时其值对 output 无影响P.168。这要求 SpyGlass 已完成 full schematic analysis且read_netlist包含 all portsNo Timing Violation时序无违例gating logic 的 insertion delay 不能导致 setup/hold violation。因此必须先 run timing analysis (run_timing) 并 fix all critical paths否则 rule 直接 skip。生成隐式门控的完整命令流# 前提已完成 power estimation且 timing clean run_timing -mode setup check_stability -scope top # 验证 stability condition run_rule -rule_name FIND_IMPLICIT_CLOCK_ENABLES -scope top # 查看结果生成 gated clock net 和 new enable logic report_clock_gating -hierarchy # 输出示例 # GATED_CLK: top/clk_gated (gated by top/ctrl_en) # ENABLE_LOGIC: inserted AND2X1 inst gating_and at top/check_stability必须显式运行P.165其输出stability_report.txt是 rule 是否触发的判决书report_clock_gating -hierarchy显示 gating hierarchy确认是否跨 module boundaryP.158若report_clock_gating为空不是 rule 失败而是 stability check 未通过 —— 此时应report_stability -verbose查看具体 failing path。3.2 Memory Power Reduction支持的 memory 类型与 rule 选择逻辑L-2016.06 的 P.182–183 明确列出仅支持三类 memorySingle-Port RAM、Dual-Port RAM、ROM。不支持 FIFO、CAM、Register File除非 vendor 提供 custom power model。Memory power reduction rules 的触发依赖于两个关键 metadataMemory Instance RecognitionSpyGlass 必须能识别 memory instance如mem_gen_128x32这要求 netlist 中 memory cell name 符合 tech lib 中定义的 patternP.183Power Intent Declaration必须set_power_intent -domain mem_domain -isolationP.72否则MEMORY_POWER_REDUCTIONrule 不会启动。Memory Power Reduction Rules ListP.178–180Rule Name作用前提条件典型效果REDUCE_MEMORY_READ_POWER优化 read path插入 read-enable gatingmemory hasrd_enportread power ↓ 20–35%REDUCE_MEMORY_WRITE_POWER优化 write path插入 write-enable gatingmemory haswr_enportwrite power ↓ 15–25%ENABLE_MEMORY_RETENTION启用 retention mode关闭 non-retention arraymemory declared with-retentioninset_power_intentleakage ↓ 60–80% during sleep启用 memory retention 的完整步骤P.72, P.182# Step 1: 在 power intent 中声明 retention domain set_power_intent -domain mem_ret -supply VDD_RET -ground VSS -retention # Step 2: 确保 memory instance 有 retention port如 ret_n # 需 tech lib 中 memory cell 定义包含 ret_n pin # Step 3: 运行 rule必须指定 scope 为 memory instance run_rule -rule_name ENABLE_MEMORY_RETENTION -scope top/mem_inst_1 # Step 4: 验证 retention logic 插入 report_memory_retention -instance top/mem_inst_1 # 输出应包含RETENTION_CELL: ret_ff inserted at port ret_nset_power_intent -retention必须与 memory cell 的 physical pin name 一致若 tech lib 中 pin 名为ret则此处必须写-retention -pin retreport_memory_retention若输出为空检查report_power_intent -domain mem_ret是否返回 valid domain —— 常见错误是 domain name 大小写不匹配。3.3 避坑Power Reduction 的五大翻车现场与根因定位Power Reduction 是 SpyGlass 中最易“看似成功实则无效”的模块。以下 5 条是我在多个项目中反复验证的踩坑记录每条均附带可执行的诊断命令。现象 1FIND_IMPLICIT_CLOCK_ENABLES运行成功但report_clock_gating无输出原因check_stability未通过但 rule 默认不 abort或run_timing未执行timing info 缺失导致 gating logic 无法 placement-aware insertion。解决check_stability -scope top -output stability_rpt.txt grep UNSTABLE stability_rpt.txt # 查看 failing paths run_timing -mode setup # 确保 timing db loaded现象 2ENABLE_MEMORY_RETENTION插入 retention FF但 leakage 未下降原因retention FF 的 supply pinVDD_RET未 connect 到 power domain或set_power_intent中未声明-supply VDD_RET。解决report_power_intent -domain mem_ret # 确认 supply pin name report_net -net VDD_RET -connections # 确认 net 是否 connect to retention FF现象 3STRENGTHEN_CLOCK_ENABLES优化后timing report 显示 new critical path原因插入的 AND gate delay 未被 timing engine 重新评估因update_timing未运行。解决run_rule -rule_name STRENGTHEN_CLOCK_ENABLES update_timing # 强制 re-evaluate timing with new gates report_timing -delay_type max -max_paths 5现象 4CDC_SAFE_CLOCK_GATING报错 “No synchronizer found for crossing”原因跨 clock domain 的 control signal 未经过 synchronizer或 synchronizer cell 未在 tech lib 中定义为sync_ff。解决# 检查 synchronizer cell 是否在 lib 中标记为 sync_ff report_cell -cell sync_ff_2stage -properties # 输出应含is_synchronizer: true现象 5Power Reduction Dashboard 显示 “0 opportunities found”但 design 明显有 gating 点原因read_netlist时未启用-preserve_hier导致 hierarchy flattenFIND_IMPLICIT_CLOCK_ENABLES无法识别 module boundary。解决read_netlist -format verilog -hierarchy -preserve_hier top.v # 必须加 -preserve_hier否则 rule 在 flat netlist 中找不到 gating scope4. Physical Aware Power Estimation为何 L-2016.06 版必须与 SpyGlass Physical 联动Physical Aware Power EstimationP.138–144不是“高级功能”而是解决 leakage power 估算失真的刚需方案。L-2016.06 版明确指出P.139“Without physical information, leakage power estimation relies solely on VT distribution frompevtdist, which ignores layout-dependent effects like well proximity effect (WPE) and shallow trench isolation (STI).” 换句话说纯 netlist-based leakage 估算在 28nm 及以下工艺中误差可能超过 40%。本章带你打通 SpyGlass Power 与 SpyGlass Physical 的数据链路。4.1 Prerequisites物理信息注入的三个硬门槛文档 P.139 列出三项 prerequisite缺一不可SpyGlass Physical License必须单独 licensespyglass -version需显示Physical字样Layout Database必须提供 DEF LEF GDSII或 OASIS且read_def成功Power Grid Model必须read_power_grid -file pg_netlist.spfSPF 文件需包含 IR-drop aware power net definition。提示若read_def失败常见原因是 LEF 中SITE定义与 DEF 中DIEAREA不匹配。用report_lef -site和report_def -diearea对比即可定位。4.2 Two-Step Flow vs Seamless Integration选错模式等于白跑L-2016.06 的 P.141–143 给出两种 integration 模式选择取决于你的物理设计成熟度模式适用阶段数据流优势劣势Two-Step FlowPlace Route 早期power grid 未 fully routedSpyGlass Physical → export physical info → SpyGlass Power import可控性强debug 方便需手动 sync physical infoSeamless IntegrationFinal signoffpower grid completeSpyGlass Power calls SpyGlass Physical API internally自动更新无需 manual export/importdebug log 更难追踪Two-Step Flow 实操命令P.143# Step 1: 在 SpyGlass Physical session 中导出 physical info read_def -file design.def read_lef -file tech.lef read_power_grid -file pg_netlist.spf export_physical_info -file phys_info.xml -format xml # Step 2: 在 SpyGlass Power session 中导入 read_netlist -format verilog top.v read_physical_info -file phys_info.xml -format xml # 启用 physical aware mode set_power_analysis_mode -mode physical_aware run_power_estimationexport_physical_info -format xml生成的 XML 包含 cell placement, net routing, power grid resistance —— 这是 leakage 校准的核心输入set_power_analysis_mode -mode physical_aware必须显式设置否则仍走 netlist-only flow。Seamless Integration 的 project file 示例P.141# power_project.tcl set_project_name power_signoff set_tool_option -tool spyglass_power -option physical_aware -value true set_tool_option -tool spyglass_power -option physical_tool -value spyglass_physical # SpyGlass Power 会自动调用 spyglass_physical 的 API 获取实时物理数据注意Seamless mode 要求 SpyGlass Physical session 必须在后台运行且spyglass_physical -server已启动。否则run_power_estimation会 hang 在 “Connecting to physical server...”。4.3 Physical Aware MetricsLeakage Power 的三个新维度启用 physical aware mode 后report_power新增三类 metricsP.141Metric物理含义如何验证leakage_wpeWell Proximity Effect contributionreport_leakage -component wpeleakage_stiSTI Stress-induced leakagereport_leakage -component stileakage_ir_dropIR-drop induced voltage droop → leakage increasereport_ir_drop -summary验证 physical aware 是否生效的黄金命令# 对比启用前后 leakage 组成 report_leakage -hierarchy -detail # 输出应含 # LEAKAGE_TOTAL: 125.3 uW # leakage_base: 85.2 uW # netlist-only component # leakage_wpe: 22.1 uW # WPE component (only with physical info) # leakage_sti: 18.0 uW # STI component若leakage_wpe和leakage_sti为 0则 physical info 未正确加载report_ir_drop -summary应显示MAX_VOLTAGE_DROP: 45mV若为N/A说明read_power_grid失败。5. DashBoard 与 Datasheet Report如何让老板一眼看懂功耗风险DashBoard 和 Datasheet ReportP.120, P.151, P.154不是 fancy UI而是面向 signoff 的决策仪表盘。L-2016.06 的 P.152 明确要求“The DashBoard must be configured to highlightdeviation from targetin red, not absolute values.” 换句话说它的价值不在展示“功耗多少”而在标识“哪里超了、超多少、为什么超”。本章教你配置一个真正能驱动 design change 的 report。5.1 DashBoard 配置Metrics Section 的四个必设字段文档 P.152 的 “Configure the Power Section” 要求 DashBoard 必须包含Target Power来自 spec 的 budget如set_target_power -budget 150uW -scope topEstimated PowerSpyGlass 计算值report_power -totalDeviation %自动计算(Estimated - Target) / Target * 100Hotspot Modulereport_power -hierarchy -limit 5中 top 5 模块。配置 DashBoard 的 TCL 脚本P.152# 创建 DashBoard create_dashboard -name power_dashboard # 添加 Power Section add_dashboard_section -dashboard power_dashboard -section power_section -type power # 设置 target必须否则 deviation 无法计算 set_target_power -budget 150.0 -unit uW -scope top # 配置 section 显示字段 configure_dashboard_section -dashboard power_dashboard -section power_section \ -field target_power \ -field estimated_power \ -field deviation_percent \ -field hotspot_module # 生成 HTML report generate_dashboard -dashboard power_dashboard -format html -output power_db.htmlset_target_power必须在generate_dashboard前执行否则deviation_percent显示N/Ahotspot_module默认显示 top 5可通过configure_dashboard_section -hotspot_limit 10调整。5.2 Datasheet ReportPower Reduction 的 ROI 证明书Datasheet ReportP.154是 power reduction 的交付物它必须回答一个问题“优化带来了多少 real power saving代价是什么” L-2016.06 的 P.154 表格定义了 5 个 mandatory columnColumn含义如何生成示例值Module模块名report_power -hierarchy -no_headertop/coreLeakage_Before优化前 leakagereport_power -leakage -scope top/core42.3 uWLeakage_After优化后 leakagereport_power -leakage -scope top/corepost-reduction28.1 uWGating_Cells_Added新增 gating logic 数量report_clock_gating -count -scope top/core12Timing_Impacttiming slack changereport_timing -delay_type max -to [get_pins top/core/clk] -nworst 1-0.12 ns生成 Datasheet Report 的完整流程# Step 1: Run baseline power estimation run_power_estimation -name baseline report_power -leakage -hierarchy baseline_power.rpt # Step 2: Run power reduction run_rule -rule_name FIND_IMPLICIT_CLOCK_ENABLES -scope top run_power_estimation -name reduced # Step 3: Generate Datasheet rows set modules [get_hierarchical_modules -top top] foreach mod $modules { set leak_before [get_value_from_rpt $mod baseline_power.rpt leakage] set leak_after [get_value_from_rpt $mod reduced_power.rpt leakage] set gating_cnt [report_clock_gating -count -scope $mod] set timing_impact [report_timing -delay_type max -to [get_pins $mod/clk] -nworst 1 -format short] puts $mod,$leak_before,$leak_after,$gating_cnt,$timing_impact } # 输出 CSV导入 Excel 生成 Datasheet逻辑说明get_value_from_rpt是自定义 proc从report_power -hierarchy输出中 parse 指定 module 的 leakage 值。这是确保 Datasheet 数据 traceable 的唯一方式 —— 不能靠人眼 copy-paste。5.3 Spreadsheet ViewerDebug Power Hotspot 的终极武器当 DashBoard 显示top/coreleakage 超标 30%你不能只看 summary。L-2016.06 的 P.156 推荐用 Spreadsheet Viewerview_spreadsheet深挖Filter by Cell Typefilter -cell_type AND2X1查看所有 AND2X1 的 leakage 贡献Sort by Leakagesort -column leakage -descending定位 top 10 leakage cellsDrill-down to Net双击 high-leakage cell →view_net -net net_name查看该 net 的 fanout 和 driverCross-probe to Schematic右键view_schematic在原理图中高亮该 cell 及其 upstream logic。技巧在 Spreadsheet Viewer 中CtrlClick多选 cellsreport_power -leakage -cells [selected]可计算 group leakage —— 这是定位 “leakage cluster” 的最快方法。6. Power Explorer从“被动报告”到“主动探索”的范式切换Power ExplorerP.188–192是 L-2016.06 版隐藏最深、却最颠覆工作流的模块。它不是另一个 report 工具而是一个交互式 power sensitivity analyzer。文档 P.189 开宗明义“Power Explorer enableswhat-ifanalysis: ‘What if I change this VT, or reduce that activity, or add gating here — how does total power change?’” 换句话说它把功耗分析从“静态快照”升级为“动态沙盒”。我曾在某图像处理 SoC 项目中用 Power Explorer 在 2 小时内定位到一个被忽略的 always-block其 activity 误设为 100%实际应为 5%修正后 leakage ↓ 18%。这种效率是传统 report 流程无法企及的。6.1 Power Explorer Quick Start三步构建 your first what-if scenarioPower Explorer 的核心是Scenario—— 一个可保存、可比较、可回滚的参数集。启动只需三步Step 1: Launch and Load Baseline# 启动 Power Explorer必须在 power session 中 power_explorer # 加载当前 power estimation 结果作为 baseline load_scenario -name baseline -from_currentpower_explorer启动 GUI自动连接当前 SpyGlass sessionload_scenario -from_current将当前run_power_estimation结果存为 baseline scenario。Step 2: Create What-If Scenario# 创建新 scenario修改特定参数 create_scenario -name vt_ss_shift -based_on baseline # 修改 top/core 模块的 VT 为 slow-slow corner modify_scenario -scenario vt_ss_shift -module top/core -pvt ss_0.7v_12 p a hrefhttps://download.csdn.net/download/tianqishi/89168778 stylecolor:#ec7500;font-size:14px; 本文还有配套的精品资源点击获取 /a img altmenu-r.4af5f7ec.gif srchttps://csdnimg.cn/release/wenkucmsfe/public/img/menu-r.4af5f7ec.gif stylewidth:16px;margin-left:4px;vertical-align:text-bottom;cursor:text; /p

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑