热度 1| ||
总体功耗分为动态功耗和静态功耗。
动态功耗包括翻转功耗(switch power)和内部功耗(internal power)。
静态功耗为泄露功耗(leakage power)。
翻转功耗:
晶体管驱动负载电容充放电引起的功耗。与电压V、频率F和负载电容C大小有关,公式为:
P=0.5*C*V²*F
内部功耗:
由于晶体管内部寄生电容充放电和短路电流导致的功耗,其中短路电流指的是输入信号在0.5VDD左右时,PMOS和NMOS同时导通产生的电流。与频率和输入信号斜率(slew)有关。可通过时序库中internal power的查找表查询。
漏电功耗:
由于器件泄漏电流导致的功耗。不同状态下漏电功耗值不同,比如反相器输入0还是1。可以根据时序库leakage power查询。
影响功耗的主要因素:
PVT(工艺、电压、温度),频率,负载电容和信号反转时间(transition time越小,意味着驱动能力更强,芯片面积也越大)。
工艺:
先进工艺和特殊工艺(如FDSOI)
顶层架构:
多电压域结构(Multiple Supply Voltage)
电源关断(Power shut off)
动态电压调节(DVFS:dynamic voltage and frequency scaling)
芯片实现:
门控时钟(clock gating)
多阈值电压,非关键路径用高阈值管。
多沟道长度,沟道越长速度越慢功耗越低。
多位寄存器优化(Multi-bit register)
翻转率负载协同优化,这个就是数电课上学的那些速度更快的信号更接近输出等方式,工具都会自动做的。
体偏执,为PMO和NMOS添加可以调节的体电位,在standby模式可以让MOS管关断的更彻底,降低静态功耗,工作模式取消偏执,增加速度。
越顶层,对功耗的优化程度更大,版图阶段再想降低功耗就很难了。
顶层架构的低功耗方法
模拟on top:做很多只有一个电压域的数字,模拟后期拼起来。
数字on top:只有一个数字,通过UPF(IEEE 1801标准)/CPF(cadence专用流程)走一种更复杂的流程,实现电源关断、多电压域等功能。