数字IC后端——功耗分析

文章目录

  • 1.静态功耗
    • 1.1 漏电流功耗(leakage power)
    • 1.2 如何降低漏电流功耗
    • 1.3 分析漏电流为零
  • 2.动态功耗
    • 2.1 开关功耗(Switch Power)
      • 2.1.1 如何降低开关功耗
    • 2.2内部功耗(Internal Power)
    • 2.3 如何降低动态功耗

功耗分析主要可以分为两个部分 静态功耗动态功耗,功耗的计算很难有一个准确值,各个工具计算的差别会很大。
(注意:opt log中报的power是leakage power,不是总功耗,最终报power通过report_power_analysis)

1.静态功耗

1.1 漏电流功耗(leakage power)

在CMOS电路中,静态功耗主要是漏电流引起的功耗即使电路处于静止状态,没有时钟,没有任何switching,这部分功耗依然存在

漏电流的公式,其中Ipeak为泄露电流:
Ppeak = VDD*Ipeak

数字IC后端——功耗分析_第1张图片
漏电流的计算主要通过.lib中的数据,从而选定一种或几种适合当前design需求的library。比如C30LVT可能leakage比较大,相比C35RVT,C40LVT的leakage可能要大好几倍。因此再做PR时就不会选C30LVT。
数字IC后端——功耗分析_第2张图片

1.2 如何降低漏电流功耗

更换阈值电压大的cell。阈值电压越低,饱和电流越小,速度性能越快,但漏电流越大,因此功耗会变差。HVT的cell其阈值电压最大,掺杂浓度越高,其泄露功耗最小。

名字 含义
SVT Standard V threshold
LVT Low V threshold
RVT Regular V threshold
HVT High V threshold

按速度排列:SVT > LVT>RVT>HVT
按消耗功耗排列:SVT > LVT>RVT>HVT

1.3 分析漏电流为零

漏电流为零,PR肯定有问题,关注VDD,VSS是否连接上。

2.动态功耗

2.1 开关功耗(Switch Power)

Switch Power是在CMOS电路中,对负载电容进行充放电时消耗的功耗。

开关功耗的公式,A是average switching activity:
Pswitch = 0.5 * V^2 * C * Tr
Tr为翻转率的值,是通过前端设计给的VCD波形文件,给定一段时间,计算平均翻转率来计算。

2.1.1 如何降低开关功耗

从公式可以看出,改善动态功耗可以通过改变工作电压翻转率负载电容实现。

2.2内部功耗(Internal Power)

内部功耗(Internal Power)也称短路功耗,是由于信号翻转时,有一段时间PMOS和NMOS同时导通,那么电源VDD到地VSS之间就有了通路,形成短路电流。

内部功耗的公式:
Pshort = Tr * V * Qx
Tr为翻转率的值,Qx是在一次翻转过程中从电源到地的电荷量

数字IC后端——功耗分析_第3张图片
由于这部分是由标准单元内部switch造成的功耗。工具根据.lib里的数据计算这部分功耗。输入A变化引起的功耗。工具根据输入A的transition time查询rise_power, fall_power 表。
数字IC后端——功耗分析_第4张图片

2.3 如何降低动态功耗

对于GPU这种芯片,对timing要求不高,可以通过将移动ICG放在clock source近端,来实现低功耗设计,因为它可以对设计中暂时不用的寄存器通过ICG来关断后面寄存器的时钟来实现低功耗设计的目的。不好的一点是会引起setup违例

你可能感兴趣的:(数字IC后端笔记,IC后端)