大部分系统都有一些不需要高速运行的任务,只需要完成它们就可以了。一般会由于某一原因而保持这些任务处于工作状态,因此,系统不能简单的接通,让它们工作,然后,再次关断。有针对减小这些任务的泄漏功耗而采取的节能方法。 ARM展示了当模块工作在较长的时钟周期中时,您可以在时钟转换期间关掉组合逻辑电源。如果时序正确,保持时间之后关掉供电,在逻辑需要传播新状态时再恢复供电,这样不会改变寄存器中的序列。根据某些信息来源,这一方法能够把泄漏减小25倍。由于逻辑电源网络实际上成为自己的信号通路,因此,这一“子时钟电源选通”(图2)方法会增加一些晶体管,增大动态功耗,当然也会增加时序收敛的复杂度。但是,在电路中降低了25倍,这的确是非常重要的方法。 图2.极低功耗技术,例如,子时钟电源选通,近/亚阈值工作等,实现了拉低曲线的新方法。
这就带来了怎样降低寄存器本身泄漏的问题,这涉及到在时钟转换期间无法进行电源选通的其他电路。Muller说,ARM研究了VDD非常靠近甚至低于Vt。近阈值和亚阈值工作都能够使电路保持在低速工作,同时有效降低泄漏。但是都带来了复杂的问题。 还没有很好的定义什么是近阈值工作。在传统的MOSFET模型中,晶体管有三种不同的工作模式。饱和模式,此时,VDD和VSS明显大于Vt。对于逻辑,这是正常的ON模式。亚阈值模式,此时,VGS低于Vt,这是传统的OFF模式,简单模型表示出只有一些很小的泄漏电流从源极流向漏极。在这两种模式之间是第三种模式,通常称为线性或者欧姆模式,VGS接近Vt。在这种模式中,假设MOSFET的行为与栅极压控电阻相似。 采用目前的短沟道技术,线性和饱和模式之间的区别并不明显。IMEC业务开发执行副总裁Ludo Deferm评论说:“数字设计人员希望能够精确的把阈值电压控制在0.3至0.35 V之间,而工作点正好在这之上。在这一点,短沟道MOSFET已经处于电子速度饱和,行为表现与其饱和特性非常接近,但是电流明显降低。较低的电流有可能会使逻辑速度降低几个数量级。虽然速度慢了,但是,传统的逻辑电路能够继续保持工作,与较高电压时相比,每次操作消耗的能量降低了几个数量级。总之,在这种模式中,可以在很长一段时间周期内或者在循环之间保持寄存器的状态不变。这种近阈值工作也可以用于连续工作系统,以节省能耗。Muller描述了一种自足的堆栈管芯装配,它包括太阳能电池、普通电池,工作在快速运行和电源关断模式下的DSP管芯,以及近阈值CPU管芯,所有这些都在一个有源基底上。 近阈值工作会遇到很多难题。很明显,应用程序必须要容忍性能的大幅度降低。而Deferm提醒说,还有其他引起很大变数的问题。工艺、供电电压、温度变化等都会对晶体管行为产生很大的影响。为减小这些变化的影响,芯片设计人员不仅要依靠其代工线工程师来保持Vt不变,而且,还需要把管芯使用点电压稳压器靠近低电压电路放置,以减小VDD的变化和瞬变。 设计人员如果希望更接近Vt,则需要采用更极端的方法。很多研究人员都建议逻辑电路设计使用差分信号和穿通晶体管逻辑,以及用作探测器的传感放大器,这些都有助于减小各种变化的影响。但是这类技术的应用毕竟是有限的。IMEC首席科学家Praveen Raghavan指出:“您可以通过定制设计流程,在隔离模块中使用低电压差分技术。但是,芯片设计团队仍然需要传统的时序分析方法。工具则无法支持这类电路。” 亚阈值工作 Muller说,ARM在低电压上的兴趣并不会止于Vt。在亚阈值区,MOSFET源极至漏极电流继续响应VGS。但是,这一电流现在非常小——泄漏电流,其响应会非常慢。而且,在某些情况下,特别是在必须保持数据同时要节省能耗的系统中,可以让VDD低于Vt来工作。对于逻辑设计人员,这是尚未开发的领域,只有很少的专业模拟专家有所涉及。 Raghavan说:“对于正常的体晶体管,通过亚阈值工作,可以让能耗降低十倍。但是性能降低了100到1000倍,工艺变化的影响会非常大。”而finFET的出现会有所改变,Raghavan建议,“我们希望finFET能够让我们更好的控制Vt,亚阈值工作对性能造成的影响会小很多,可能只有50倍。”亚阈值工作虽然可能一直需要进行定制设计,但是至少会有较为广泛的应用。 亚时钟电源选通和近阈值或者亚阈值工作为CMOS电路超低泄漏工作开辟了新领域,但是极大的降低了速度,对电源供电结构和设计工具提出了新要求。从这一角度,Muller把话题转向了讨论IC设计方法。但是在DAC的其他讨论中,继续对扩展性能功耗曲线的讨论。 大-小:多核作为节能策略 在DAC计划的异构多核系统小组讨论中,ARM的Carl Wilton介绍了公司的宏体系结构计划,降低高性能系统的系统功耗:大-小计算。 大-小方法(图3)是一种多核体系结构形式,内核有相同的指令集,几乎相同的状态寄存器,但是有完全不同的功耗性能特性。在目前的实现中,这意味着高性能ARM® CortexTM A-15内核簇,并配上高效的A-7内核簇,都通过ARM连贯的互联架构进行连接。 图3.大-小结合连贯簇中的快速A-15和高效的星形A-7内核。
A-15具有连续的三路前端,可无序执行,还具有深达24级的流水线,能够提供服务器级的执行速率。高速缓存结构为其提供支持,用于为不断出现的新指令提供服务。因此,运行在A-15上的任务会执行得非常快。相比较而言,A-7是双路、按序,相对简单的内核,具有较浅的8-10级流水线。A-7执行速度较慢,但是每次操作的能耗不到一半。 这里的想法是,仅在需求较高时使用A-15内核,其他时间对其进行电源选通:Muller的快速运行和关断的观点。不需要A-15速率的任务可以运行在A-7 CPU上,可以使用DVFS来减小每次任务时的能耗。结果是,系统能够支持性能很高的突发,低功耗工作的时间很长,甚至是SoC采用了高泄漏工艺制造的情况。 管理大-小系统的一种方法是使用静态任务分配,把任务分成峰值性能和高能效两部分,相应的把任务分配给CPU。另一方法是通过功耗预知可视化层来控制系统。这一管理程序会认为所有内核功能等价,这些内核工作后,完全根据性能需求,把线程分配给CPU,以满足线程的性能要求,实现最佳总能耗。这种设计会在管理程序和移动任务上消耗额外的能量,但是,能够动态响应环境的变化,或者使用模型的变化。 ARM的IP,您的难题 除了电路级极低电压工作方法,以及系统级降低每次任务的能耗方法,ARM还建议了一种宽范围执行选择。但是,CPU并不是系统解决方案。对于系统设计人员,ARM的IP仍然是难度很大的任务。 在超低能耗方面,系统设计人员的难题是规划工作,近阈值或者亚阈值工作的khz时钟应能满足计算的最低要求。在大-小系统中,对系统建模,使用模式就可以知道每一任务的实际性能,而这是一个主要的问题。而第二个难题是,怎样找到一种方法将信息随时传递给任务管理程序。
ARM的方向是同时扩展性能功耗曲线的低端,提供一种方法在更长的曲线上拉伸系统。但是,具体实现仍然是系统设计人员的任务。 |