Power Artist PA功耗仿真
WHY需要 PowerArtist
功耗是芯片的一大重要指标(PPA),在项目中需尽早识别出功耗的风险及对需要优化的代码做出甄别。
环境适配
根据脚本的层次进行适配、 脚本说明
脚本之间的调用关系如下。/pa/run为最顶层脚本
/pa/run—>/pa/scr/pa_run.tcl----> /pa/scr/ d e s i g n / c o n f i g u r a t i o n . t c l / p a / s c r / l i b / l i b r a r y / L i b r a r y x x x . t c l / p a / s c r / {design}/configuration.tcl /pa/scr/lib/library/Library_xxx.tcl /pa/scr/ design/configuration.tcl/pa/scr/lib/library/Libraryxxx.tcl/pa/scr/{design}/UserConfiguration.tcl–>/pa/scr/lib/don’t_use_list/xxx.tcl
–>/pa/scr/lib/set_vt/xxx.tcl
–>/pa/scr/ d e s i g n / c l o c k . t c l / p a / s c r / {design}/clock.tcl /pa/scr/ design/clock.tcl/pa/scr/{design}/filelist
/pa/tc/ d e s i g n . t c l / p a / s c r / s e t u p . t c l 其中变量 d e s i g n 的值即为要跑功耗的 s u b 的顶层的名字,也是 r u n 命令的第一个参数。 ! [ 在这里插入图片描述 ] ( h t t p s : / / i m g − b l o g . c s d n i m g . c n / 85855 d f d 9 d e 445 b e 90 d 5 e 88 a b e 3 e d 238. p n g ) ! [ 在这里插入图片描述 ] ( h t t p s : / / i m g − b l o g . c s d n i m g . c n / 992 f e 6826 b 644 a e 4926 a d 6266 e 29 a 315. p n g ) 1.1 U s e r C o n f i g u r a t i o n . t c l : 设置 w i r e l o a d m o d e l 这个值是一个经验值,根据 P T P X 结果和 P A 来匹配,通过该设置的调整使 P A 结果接近 P T P X 结果;设置 c o r n e r , V T 比例;设置时钟 L I S T (一般为仿真顶层输入端口的时钟以及内部 C R G 的输出时钟);设置参考时钟(频率最高) / p a / t c / {design}.tcl /pa/scr/setup.tcl 其中变量design的值即为要跑功耗的sub的顶层的名字,也是run命令的第一个参数。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/85855dfd9de445be90d5e88abe3ed238.png) ![在这里插入图片描述](https://img-blog.csdnimg.cn/992fe6826b644ae4926ad6266e29a315.png)1.1 UserConfiguration.tcl:设置wire_load_model 这个值是一个经验值,根据PTPX结果和PA来匹配,通过该设置的调整使PA结果接近PTPX结果;设置corner,VT比例;设置时钟LIST(一般为仿真顶层输入端口的时钟以及内部CRG的输出时钟);设置参考时钟(频率最高) /pa/tc/ design.tcl/pa/scr/setup.tcl其中变量design的值即为要跑功耗的sub的顶层的名字,也是run命令的第一个参数。![在这里插入图片描述](https://img−blog.csdnimg.cn/85855dfd9de445be90d5e88abe3ed238.png)![在这里插入图片描述](https://img−blog.csdnimg.cn/992fe6826b644ae4926ad6266e29a315.png)1.1UserConfiguration.tcl:设置wireloadmodel这个值是一个经验值,根据PTPX结果和PA来匹配,通过该设置的调整使PA结果接近PTPX结果;设置corner,VT比例;设置时钟LIST(一般为仿真顶层输入端口的时钟以及内部CRG的输出时钟);设置参考时钟(频率最高)/pa/tc/{testcase}.tcl:1设置需要跑的阶段
ELABORATE,VECTOR,AVERAGE,REDUCE,REWRITE,DEBUG,RPM,REPORT
ELABORATE设为0时,如果之前已经跑过Elaborate,为了节省时间,会跳过ELABORATE阶段,设为1时,无论之前是否已经跑过Elaborate,都会重新跑。如果代码做过修改,建议删除之前跑的文件夹或设Elaborate=1,让其重新跑ELABORATE。
2、里面指定要跑的testcase和其对应的波形,以及波形里面跑功耗的起始和截止时间。
如果有多个case,多个case是顺序执行的,在rpt目录 每个testcase都会生成一个文件夹。功耗数据在里面。
结果查看
1 Black boxing检查(must)
在报告目录下Yourdesign.Elaborate.log中搜索关键字“HDL-61”,”black boxing”等关键字,确认是否有模块被blackbox
2 时钟untrace(must)
报告目录/用例名/averagepower.log
在AveragePower.log中检查时钟定义缺失。需要在clock list中增加缺失的时钟。
ENG-127
3 HDL-136
vendor_data目录下所有库文件的仿真模型.v文件,不可添加在verilog_startup_file的filelist中读入,应该读入对应的lib文件,filelist中应该只包含rtl代码(前仿)或网表文件(后仿)。
4 结果分析
PowerArtist &
打开对应用例下AveragePower.pdb
PA背景知识
PA输入输出文件
输入:RTL files/Power models/Clock Definitions/Activity(仿真波形)/Parasitics(WLM)/Power Format(UPF/CPF)
输出:功耗报告
The Unified Power Format(UPF)是一种可以贯穿在芯片设计、分析、验证、实现整个流程的统一电源信息描述格式语言,可以对电路系统的 supply network、switches、isolation、retention以及其他相关因素进行详细的说明(独立于逻辑电路独立且是逻辑电路的抽象)。UPF明确了对每个设计单元的电源供应网,和各个独立的供应网络在和谐共处的前提下能保证每个部件正常工作,以及逻辑功能如何扩展使得能支持动态的电源变化。通过调节不同供电网络的电压,来实现对芯片的工作区域的控制。
Common Power Format (CPF), a standardized format for specifying power-saving techniques early in the design process, to deliver an end-to-end low-power design solution to IC engineers.
通用电源格式(CPF),一种在设计过程的早期,用于指定节能技术的标准化格式,为IC工程师提供端到端低功耗设计方案。
4功耗计算
静态功耗(Leakage Power)
短路功耗(short_current power/internal power)
开关功耗(Switching Power)
PA 执行流程
ELABORATE-VECTOR-AVERAGE
PA注意事项
5.1 userconfiguration 时钟设置
参考时钟为用例中有效的最高频率的时钟(该时钟不要求与对应用例中任务有关,但必须要在波形中确定该时钟打开),注意在波形中确认各个时钟的状态。
5.2 用例&波形
在合入用例的时候,也要关注.cfg .sv .h的内容。
要关注哪些功能的功耗,用例中要保证这部分功能覆盖到。
PA用到的波形仿真时间不要过长,正常情况下5us。
5.3 MEM功耗
MEM尺寸不变的话,静态功耗差异不大。
5.4 软件版本
要注意Verdi-2015.09SP1 和PA-17.1.6软件的版本要兼容。
5.5 功耗比对
在和之前版本功耗对比时,要注意器件库的选择,VT比例,线负载模型是否一致,通过下面报告确认
5.6 PA 执行指令
run + 模块名+TC名+foundry+VT+7T+20P+0p7
5.7 裁剪波形指令
复制:
拼接:
5.8 打5.8 打开pa失败
打开PA失败:1 查看是否安装软件
2 ma licstat
PowerArtist &
5.9 打开reduce功能
Tc.tcl中如下设置:
PA波形 建议波形层次为0(ALL)。8000为内存大小,每个.fsdb为8000,超过的波形会存为wave_001,2,3
Power Artist PA功耗仿真相关推荐
- PVT的理解和以及它们在后仿/功耗仿真中的注意点
PVT(process, voltage, temperature)是影响集成电路性能的主要因素. P是指芯片制造过程中的工艺偏差,在不同晶体管/晶片/批次之间,NMOS或PMOS的驱动能力(有时也理 ...
- RP Fiber Power 免费讲座---光纤激光器仿真设计
- power 相关:(二)功耗的分析 —— power compiler
前面学习了进行低功耗的目的个功耗的构成,今天就来分享一下功耗的分析.由于是面向数字IC前端设计的学习,所以这里的功耗分析是基于DC中的power compiler工具:更精确的功耗分析可以采用PT,关 ...
- 低功耗设计——功耗估算
根据在功耗分析的过程中是否有输入向量的提供,功耗估算方法可以分为仿真的方法(Simulative)和非仿真的方法(Non-simulative): 仿真的方法是根据用户所提供的大量输入向量来对电路进行 ...
- readyread信号不触发_触发器型PFD与传统型PFD性能仿真对比
@TOC 鉴频鉴相器中为了保证鉴相范围,主要有两种PFD可以在理想情况下实现 到 的鉴相范围. 传统的PFD和边沿触发型的PFD 1.电路结构 1.1传统型电路结构 参考文献:宽带CMOS分数频率合 ...
- (数字IC)低功耗设计入门(二)——功耗的分析+Comments
前面学习了进行低功耗的目的个功耗的构成,今天就来分享一下功耗的分析.由于是面向数字IC前端设计的学习,所以这里的功耗分析是基于DC中的power compiler工具:更精确的功耗分析可以采用PT,关 ...
- (数字IC)低功耗设计入门(二)——功耗的分析
前面学习了进行低功耗的目的个功耗的构成,今天就来分享一下功耗的分析.由于是面向数字IC前端设计的学习,所以这里的功耗分析是基于DC中的power compiler工具:更精确的功耗分析可以采用PT,关 ...
- 数字SOC设计之低功耗设计入门(二)——功耗的分析
前面学习了进行低功耗的目的个功耗的构成,今天就来分享一下功耗的分析.由于是面向数字IC前端设计的学习,所以这里的功耗分析是基于DC中的power compiler工具:更精确的功耗分析可以采用PT,关 ...
- IC设计基础系列之低功耗篇2:(数字IC)低功耗设计入门(二)——功耗的分析
来自:http://www.cnblogs.com/IClearner/tag/%E4%BD%8E%E5%8A%9F%E8%80%97%E8%AE%BE%E8%AE%A1/ 前面学习了进行低功耗的目的 ...
最新文章
- 【Python】快速认识Pandas的10大索引
- leetcode181. 超过经理收入的员工(SQL)
- 极验创始人吴渊:恶意流量威胁新趋势,洞察网络黑产3大核心本质
- redis配置文件参数详解
- UNIX域套接字编程和socketpair 函数
- ofstream/ifstream 文本/二进制 方式 读入/写出 数据方法
- RVC使用指南(六)-排错
- win7 下安装ubuntu14.04 本人实测撰写
- 举办了一个如何对外协作的讲座,4人到场
- Python爬取淘宝商品附加cookie修改
- 谷歌学术搜索 简易PDF爬虫
- 关于ansys19.0安装问题
- 2022-2023 物联网毕业设计选题推荐
- winvnc异常,端口变为5901
- 携程商旅酒店直连平台的实践(一)
- 怎么让微信头像做模糊背景
- 从“触点”到“旅程”——浅谈数字时代的客户体验提升
- 支付宝手机网站支付、支付查询、退款、退款查询、转账接口整合
- simulink他励直流电动机降电压启动仿真
- Paillier 半同态加密:原理、高效实现方法和应用