芯片低功耗设计
电路的功耗分为静态功耗和动态功耗。
静态功耗:微亚米级工艺之前可以忽略静态功耗,当工艺的特征尺寸达到0.06μm时,静态功耗将超过系统的动态功耗,通过对不工作的三极管关闭供给电压消除静态功耗,但会对电路的性能产生不好的影响。
动态功耗:该功耗时电路工作时消耗的功率,分为翻转功耗和内部功耗。
翻转功耗:一个驱动元件在对负载电容进行充放电时消耗的功率。
内部功耗:电路发生翻转时会出现瞬时的同时导通的情况,这时会消耗一定的功率,称为短路功耗,翻转速度越慢,功耗越明显。
动态功耗公式可表示为:
通常由系统性能决定,不能更改,因此低功耗的基本方法是减少α、C和V。
方法一:降低供给电压
动态功耗的大小与供给电压的平方成正比,因此降低供给电压对功耗影响最大,然而,降低供给电压会降低芯片时序上的性能,通常采用流水线设计和并行设计来提高设计的内部性能,通过面积换性能,提高性能的同时降低功耗。
方法二:降低电容和翻转次数
1.存储器的结构
把一个单一的、容量大的存储器划分为多个小的存储单元,放在多个块中,通过对地址比特的高低位的解码来选择存储块。这种方法产生了冗余的逻辑(如解码器),它以略微增加的面积的代价换取了功耗的降低。使用时只调用需要的存储块,避免占用一个大的存储器带来的庞大功耗。
2.时钟策略
单一的、基于触发器的设计比基于锁存器的双时钟的设计功耗低50%,其次,如果关闭同步设计的触发器的时钟信号的话,它将不会发生翻转,因此不会产生动态功耗。
使用门控时钟(Clock Gating)技术能减少电路的翻转次数从而降低芯片的功耗。门控时钟有两种类型:针对整个模块的门控时钟以及针对单一触发器的门控时钟。给不同模块提供独立的时钟模块,关闭不使用的模块,以节省功耗。
3.操作数隔离
这种方法主要是对系统中的算术和逻辑运算模块进行低功耗设计,在不需要进行算术和逻辑运算时,使输入为“0”,不让操作数进来,输出结果不会翻转。如两种不同设计的加法器:
对于采用操作数隔离方法设计的加法器,当使能信号为0时,两个输入端都为0,输出不会发生任何翻转,不会产生动态功耗。