这种方法与数据表值比较法相比尽管有一定改进,但仍需进一步完善。举例来说,我们不妨假设主要用于过滤应用的 DSP,其工作时间约占 20%,待机时间约占80%。
目前的 DSP 需要考虑到占空比问题,这有助于节电。举例来说,芯片不工作时,电压可降至待机数值。频率在 CMOS 功耗中起主要作用,如果芯片不参与过滤工作,那么我们就能降低频率。
电源优化技术
TI 等半导体厂商努力推出芯片级电源控制技术。以前设计小组是无法应用这种特性的。现在,设计人员能通过软件发挥电源优化技术的优势。
为了说明如何实现上述工作,我们不妨先来看看设计小组能采用哪些优化性能的方法。
在芯片自身内部,系统设计人员能采用深度休眠模式、动态电压和频率缩放等技术,而且还能在芯片闲置时关闭不必要的资源。
我们还能在系统启动过程中节约大量电力。通常说来,启动过程中会开启所有系统,不过我们可以让那些应用及启动过程中不用的部分关闭或保持闲置状态。
我们在软件代码优化时也要想到功耗问题。通常的规律是,我们应以尽可能小的占用空间集成尽可能多的必需功能,这样可以缩减存储器的占用面积。不过,由于应用不得不更频繁的执行代码,这种做法往往会导致功耗的加大。
编写代码时还应减少指令存取的数量,并优化缓存和内部指令缓冲。上述措施都有助于节约DSP的工作模式时间,并最大化闲置时间,以此来降低频率和电压。
我们还能用其他技术来实现系统级控制,包括:
认真选择组件
尽可能减少组件数量
首先采用内部存储器来最小化芯片间的功率损耗
对于启动或低速运算以及偶尔用到的功能采用外部存储器
启动后给启动存储器断电
新一代电源控制技术
通常说来,半导体厂商在芯片中内置的节电功能会自动工作,举例来说,芯片进入闲置状态后电压和频率就会自动降低。
不过,我们现在有了更尖端的技术,系统设计人员现在能对 DSP BIOS 进行工作,从而进一步加强电源管理。
自动的电压或频率缩放是一种有用的特性。不过 DSP 的内核电压快速变动往往会对外设造成意料不到的影响。操作系统的时基可能会因频率变动而受到影响,有些外设驱动程序可能需要了解 频率和电源状态的变化,这样才能继续有效工作。
操作系统调度程序的有效性也会因为频率缩放而受影响。通常说来,系统应进行协调,以确保安全的电压和频率控制,适当地进入闲置状态。
半导体厂商通过创建DSP BIOS功率调整程序库,可实现更高级的功耗控制,同时还能确保避免因电压和频率缩放而发生问题。通过GPIO引脚向外设发送消息,我们还能将上述控制技术从芯片延伸到外设。
图2显示了功率调整例程的实例(如下图中的 PSL),设计人员通过代码编写,可从程序库中直接调用。
我们不妨假设 DSP 正在运行非常复杂的算法。通常说来,内核电压为 1.6V,频率为 200 MHz,如图 2 中左侧蓝线所示。不过,当未运行算法时,我们可用功率调整程序库将频率降至 72 MHz。
一般来说,内核电压会保持为1.6V。不过我们也可用功率调整程序库安全地将
电压降至1.2V,从而在算法不运行期间使功耗进一步降低 30 mW。
TI 率先在其TMS320VC5509A DSP中采用功率调整程序库,这就是本例所用的DSP。
图2. 功率调整程序库功能实现功耗微调