🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
PTPX在功耗分析中的作用 当今,随着工艺的越来越深入,芯片的漏电也变得越来越大。而且芯片的性能也越来越高,如之前的matrix只要几十Mhz,现在都需要上百Mhz这样的频率。而且CPU/GPU的主频也变得越来越高。又由于现在人们越来越讲究电池的续航能力,无论是手持设备,还是笔记本,人们都希望自己的电子设备待机时间越长越好。所以,种种原因,降低功耗提高到了一个空前的关注度。 那么,本文就相关PTPX在功耗分析中的作用,稍微简述一下。 首先,功耗大致包括total power = leakage power +internal power + switching power。其中internal power + switch power = dynamic power. Leakage power,即漏电功耗和本身工艺库特性相关,后端可以对non-crtical path进行cell的替换,从LVTàSVT,SVTàHVT,HVTàUHVT。另外,也可以对设计进行划分power domain。当这个模块不工作的时候,可以进行断电。从而大大降低芯片的漏电功耗。 Internal power,即短路功耗,即上下PMOS和NMOS同时导通时的功耗。当物理上cell驱动transition time很差的时候,会导致chip的internal power有异样。 Switch power,即开关功耗。动态功耗和data的翻转率(TR),静态概率(SP),电压,负载电容相关。一般情况下,需要读入SPEF文件,从而抽取每个节点上的RC参数用于计算switch power。 第二,我们可以设置以下命令可以让PrimeTime进入功耗分析模式: set power\_enable\_analysis true PTPX可以在设计的不同阶段,可以采用不同的模式进行功耗的分析。下面提供PTPX两种不同的流程。方式一比较适合大型设计,大型设计的后端都比较难出,所以采用RTL的waveform,通过PTPX的propagation算法,自动推导出netlist上每个节点的翻转,即(TR,SP),进而得到功耗。另外也非常适合在设计的早期阶段,评估和计算设计中的功耗。方式二,比较适合小型设计。另外加上后仿波形相对容易获取,那么可以采用方式二获得功耗值。方式二相比方式一在功耗值上更接近芯片回片真实值。 ![](https://img.kancloud.cn/43/8f/438f2108a973cc628984cd94d4d76d62_366x244.png) ![](https://img.kancloud.cn/ab/2b/ab2b1982edc4b201e67933c43ec1429a_291x142.png) 第三,从PTPX中我们可以获取average power和time-based power. 从Average power中我们可以获取clk tree power,这是我们关注的重点。经验值告诉我们,在重负载情况下,clk tree power占据1/3total power。对于Combinational power,根据经验,对于大型算法模块,如通信算法,图像处理ISP等。在RTL阶段可能看不出power的异样,一旦加入SDF就会发现power成倍增加,这是大家小心的地方。 ![](https://img.kancloud.cn/52/c7/52c71911201f73de753201c5a071e61e_690x221.png) 下面是time\-based power曲线图,可以看出整个数据发包,收包,解包过程的功耗变化趋势。 ![](https://img.kancloud.cn/52/d1/52d1283d8af674e264ee31032f40b30d_438x97.png) 第四,PTPX不仅能够提供功耗值,还能利用PTPX找出功耗为什么过大的原因。主要利用的特性为clock gating efficiency,clock gating ratio以及register gating efficiency。 经验表明,提高CGE,可以高效的对功耗进行优化。下图为一个CGE的概括图,CGE和clock-gating cell后面带的filp-flop的个数,以及CG cell本身的toggle rate saving系数相关。 ![](https://img.kancloud.cn/49/98/49988cba97ed72752926189549fb2e22_408x269.png) 综上,可以使用PTPX的average power、time-based power、clock gating efficiency、clock gating ratio、Q/CP等feature对设计进行功耗的评估,给出功耗优化的指导方向。