在基于finfet设计的功率探索中需要考虑什么。
文/ Abishek Ranjan, Saurabh Shrimal, Sanjiv Narayan
finFET技术的采用在芯片设计领域创造了一个结构性的转变。除了更好的性能(在相同的功率范围内)和更高的可靠性外,finfet在较小的技术节点上显著降低了漏电功率。与此同时,随着功率密度的增加,越来越多的门被封装在更小的几何形状上,动态功耗的份额继续上升。
功率优化可以在不同的抽象级别上完成。在系统级别,设计者可以修改算法,改变流水线,在串行与并行通信/计算之间进行权衡,或者为设计的各个部分指定功率域。在微体系结构级别,可以部署诸如块级时钟门控、确定内存配置和存储、或推断FIFO和其他通信通道等技术。在RTL级别,通常使用时钟门控和内存门控。最后,在物理层采用时钟树设计、Multi-Vdd、multi - vth等技术降低功耗。
尽管在这些较低的抽象级别上,设计人员降低功耗的能力显著下降,但功耗降低工作仍然集中在设计过程的后期阶段。最近对500多名RTL设计师进行的一项盲测显示,设计团队经常将自己局限于细粒度的节能技术,如时钟门控,这些技术不再是低功耗市场竞争的唯一差异化因素。
功率优化探索很少关注有影响力的微架构权衡,例如:
•哪种内存库或寄存器文件配置消耗的电量最少?
•用循环缓冲器代替移位寄存器能省电吗?
•哪种状态寄存器编码可以最小化功耗?
•使用不同的总线编码方案可以降低功耗吗?
•用给定的表达式关闭整个块会有什么影响?
•如果我们将时钟设置在200mhz而不是250mhz,可以节省多少电量?
由于缺乏关于哪些技术甚至与他们的设计相关的知识,设计人员常常在探索节能替代方案时犹豫不决。即使他们已经确定了特定的功耗降低转换,他们也缺乏一种自动化的方法来评估这种转换的功耗影响。
重要的是要理解在更高抽象级别上进行权力探索所涉及的工作。例如,假设设计师希望确定用循环缓冲区替换移位寄存器是否会降低功率。评估这种设计决策的功率影响需要设计师:
1.修改RTL,将移位寄存器替换为循环缓冲区;
2.重新模拟修改后的RTL,以验证设计功能没有改变;
3.综合改进后的RTL,生成栅极级网表;
4.重新模拟生成的门级网络列表以生成门级交换活动
5.使用步骤4中生成的开关活动估计栅极网表的功率。
上述步骤的顺序将需要:
•多种工具(模拟、综合和功率估计);
•工具之间的多个数据交换,以及
•多个团队参与(验证、综合和功率估计)。
评估单个权衡的功率影响的周转时间至少需要几天到几周。考虑到在设计计划中很少有足够的时间允许设计人员评估甚至一个这样的功耗降低转换,评估多个权衡几乎是不可能的。
显然,RTL设计师迫切需要能够自动识别节能微架构转换,能够快速探索设计中所有可能的微架构实现,确定每个实现的面积、时间和功耗影响,然后选择最适合其设计目标的选项。
在本系列的第二部分中,我们将介绍一些对设计功耗有重大影响的关键微架构转换,并介绍一种在设计过程早期完成这种设计探索的方法。
作者简介:Abhishek Ranjan是Mentor Graphics的工程总监,总部位于印度诺伊达。Saurabh Shrimal是Mentor Graphics的应用工程师,总部位于印度诺伊达。
Sanjiv Narayan是Mentor Graphics的市场总监,总部位于加州弗里蒙特。
留下回复