我们知道在芯片设计中,降低动态功耗的方法有很多种。比如clock gating,power gating等。今天想介绍一个通过减小移动数据位宽来降低动态功耗的方法。
动态功耗的来源是信号的传播,翻转。clock gating通过减少时钟信号的翻转,降低了寄存器clk pin本身的功耗,并且通过寄存器的特性,间接减少了Q pin的翻转,从而降低了数据链路的功耗。而power gating更绝,直接将电路断电,更无翻转可言。这两种方式本质上都是在电路或者某些寄存器没有数据更新需求的时候减少无谓的信号翻转,以此来降低功耗。而减小传播数据的位宽,可以在有数据更新需求的时候减少动态功耗。毕竟传递的数据少了,需要翻转的信号自然也少了。但是这样做需要考虑上减小数据位宽所带来的一点额外逻辑开销造成的功耗。不过大多数时候都能得到正收益,特别是当数据位宽较大的时候。