新闻中心

EEPW首页 > 电源与新能源 > 设计应用 > 动态电源管理技术优化嵌入式应用性能与功耗比

动态电源管理技术优化嵌入式应用性能与功耗比

作者:时间:2012-07-02来源:网络收藏

  消费者对采用多媒体处理器产品的需求迅速增长,这既要求提高性能又要求降低功耗。但是高性能处理必须增加计算复杂度并加快时钟速率,如果采用权宜之计的节省功耗设计方案,是很难实现的。我们需要的是一种具有战略意义的方法来管理功耗,以便在具体的应用中优化性能与功耗的关系。利用Blackfin数字信号处理器(DSP)系列产品固有的能力,可以实现这样的方法。

  Blackfin DSP是定点、双16位MAC或双40位ALU数字信号处理器。它们非常适合于对功耗敏感的多媒体应用,因为它们支持一种多级的电源管理方法,可以根据系统的需求调整性能。下面我们先来看看系统中的几个关键的功耗问题考虑,再看看Blackfin处理器系列如何采样功能来解决这些问题。

  1. 改变频率和电压

  现代DSP通常适合用于采用CMOS 场效应管(FET)开关的一种处理过程,在稳定的状态期间要么完全导通,要么完全关断(漏电流除外)。静态功耗(处理器空闲时的静态功耗)通常要比动态功耗低得多,动态功耗是当器件频繁地开关并且电压摆动时由于FET负载电容以极高的开关频率充放电引起的。

  在

器件的等效负载电容中存储的电荷量(Q)等于电容乘以其两端所存储的电压(也就是DSP的内核电源电压,Vcore),
      Q = CVcore

  因为给此电容充电的器件电流定义为电荷对时间的变化率,即动态电流(Idyn),由下式给出
      Idyn = dQ/dt = C(dVcore/dt)

  电容器电压随时间的变化率dVcore/dt是电容充电速度或放电速度的一种度量。对于给定的时钟频率(F),因为最快完成一次充电或放电应发生在一个时钟周期内。因此
      dVcore/dt = Vcore(F)
      Idyn = C(dVcore/dt) = CVcoreF

  最后,动态功耗与Vcore×Idyn成正比,或者
      Pdyn ∝ CVcore2F

  因此很显然,动态功耗与工作电压的平方成正比,与工作频率成正比。所以,如果降低F可以线性地降低动态功耗,而降低Vcore可以呈指数地降低功耗。

  考虑图1中的应用组合了三种不同的DSP功能,所以它们具有完全不同的性能需求:
      F0(x) 1.5 V 300 MHz
      F1(y) 1.0 V 100 MHz
      F2(z) 1.3 V 225 MHz

  例如,F0(x)可能是一种视频处理算法,F1(y)可能是某种监视模式(其中DSP采集数据并进行很少的处理),而F2(z)可能是将压缩视频流送出串行端口的过程。

  当DSP长时间处于监视活动中时,仅仅改变频率(不改变电压)对功耗敏感的应用中是很有用的。也就是说,如果DSP正在等待一个外部触发,它就不需要以最高频率运行。

  但是,在某些电池供电应用中,简单地改变频率对于节省功耗可能还不够。例如,如果某应用运行了三部分的代码,降低其中任何一部分的工作频率都意味着这部分代码会花更长的时间去运行。但是如果DSP运行时间加长的话,当三部分代码都完成时,消耗的总功率是一样的。例如,如果频率降低二分之一,代码会执行两倍长的时间,所以就不能节省净功耗。

  另一方面,通过降低电压和频率可以节省相当大的功耗。节省的功耗可以用下式来表征:
      PR/PN=(FCR/FCN)(VDDR/VDDN)2(TFR/TFN)

  其中:
  * PR/PN表示降低功耗与标称功耗的比率
  * FCN表示标称内核的时钟频率
  * FCR表示降低内核的时钟频率
  * VDDN表示标称内部电源电压
  * VDDR表示降低内部电源电压
  * TFR/表示以FCR频率运行的持续时间
  * TFN表示以FCN频率运行的持续时间

功耗与频率和时间之间的关系


  例如,图2示出了具有如下特性的一种情况:
  * FCN = 300 MHz
  * FCR = 100 MHz
  * VDDN = 1.5 V
  * VDDR = 1.0 V
  * TFR = 3
  * TFN = 1

  因此
  (PR/PN) = (100/300)(1.0/1.5)2 ×(3/1) = 0.44(功耗节省了56%)

  G1和G2是在DSP上运行的函数。

  例2用了双倍运行时间,但是节省了功耗56%。

  两例中的G1工作条件相同,但是G2的工作电压分别为1V和1.5V,因此功耗下降比率为 (1.0/1.5)2

  因为Blackfin DSP不仅具有可设置的工作频率,而且允许内核电压根据频率变化而变化,所以以降低的频率和降低的电压运行某一部分代码时可以节省功耗,即使执行时间会变长。在ADSP-21532上可以自动进行电 压频率的转变,而对于ADSP-21535,需要遵循一种简单的顺序。当然,重要的是记住,开发商必需保证在任何系统时钟改变期间与外部系统连接的外围通道的完整性。

  一个视频电话应用示出了如何通过改变工作频率和工作电压来显著延长电池寿命的能力。例如,如果仅仅在视频连接期间需要最高性能(最大内核时钟频率),那么在使用电话仅用于语音处理的时候可以将内核频率降低到某个预先设定值。对于仅注重附加功能而对时间不敏感的操作(例如,个人管理器),可以进一步降低频率。在Blackfin DSP上每一次改变PLL频率都在40ms内完成。

  Blackfin 时钟产生单元

  时钟产生单元包括锁相环路(PLL)和相关的控制电路,是Blackfin DSP中的一个完整单元。其中的PLL是高度可编程的,从而允许用户动态地控制处理器的特性和功耗。

图3示出ADSP


  图3示出ADSP-21532时钟产生单元的简单框图。输入晶体或振荡器信号(10MHz~33MHz)施加到CLKIN引脚。用一个可选的1倍~31倍倍频器作用这个信号以便产生VCO频率。然后,独立的A驱动器和B驱动器各自产生内核时钟(CCLK)和系统或

外围设备时钟(SCLK)频率。控制逻辑保证系统时钟频率不会超过内核时钟频率。

  采用本方法的最大优势在于CCLK和SCLK在工作期间可以改变,几乎没有什么时间周期开销。因此,设计工程师无需两次考虑改变时钟频率以便满足其代码不同部分的不同性能需求。从设计工程师的角度来看,结果可以线性地节省动态功耗,不会增加任何实现上的成本。

  时钟产生单元的另一个特点就是它可以被旁路以便允许CLKIN信号直接连接到CCLK。这种能力允许在不频繁地工作期间采用很低频率的CCLK,以便进一步降低总功耗。

  2. 灵活的电源管理模式

  许多应用都包含一组工作模式,其显著区别在于不同的处理需求。考虑图4所示的系统,其中电池供电的传感器包含一个DSP,用作中央处理器。DSP的其中某个外围设备可能用于采样周围环境的参数。在这种需要极低处理功耗的模式A中,该DSP可能只是读取零星的遥测数据分组。当它已经读取了足够的数据可以调用某种计算的算法时,该DSP随后就进入模式B——需要大量处理的计算模式。还有可能同时存在模式C,以便在没有传感器信号和不需要处理时提供超低功耗。

采用不同工

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭