数字信号处理

平台

DSP 设计支持

入门

双处理器在延长电池使用寿命方面通常优于单一处理器


结合采用超低功耗 MCU 与性能优化型 DSP 可为系统设计人员带来竞争优势

作者:John Dixon,低功耗处理器产品线经理;Zack Albus,MSP430 应用经理;Adrian Valenzuela,MSP430 应用工程师;JB Fowler,视频系统应用工程师

摘要


向着更低功耗、更高性能的电池供电型系统发展的趋势毋庸置疑。对于电池电源而言,消费者希望便携式电子产品能够以“更低电量执行更多功能”,同时,众多工业产品也开始转而采用电池供电。
数字信号处理器 (DSP) 常用于要求高性能的应用领域,从而导致时钟运行速度不断提升。任何需要高速运行并集成成百上千万晶体管的处理器都需要尽可能地降低功耗。
过去 10 年来,架构创新与低功耗策略推动 DSP 处理能力不断加强,MIPS 性能不断提升,同时,其他性能参数也在迅速得到改进。在此情况下,由于具备这些更高性能的 DSP,诸如手机与超便携式音乐播放器等基于 DSP 的系统的电池使用寿命总体上有了显著而稳定的提升。

头戴式耳机与其他便携式消费类音频设备是要求最佳电源效率的重要范例。此外,工业与医疗产品也在不断向支持高级功能的高集成度便携式设备方向发展。这些设备的电源要求在很大程度上与超便携式消费类电子产品相似。

在 DSP 技术取得快速发展的同时,微控制器 (MCU) 系统也同时面临着不断降低功耗的压力。相对于 DSP 而言,MCU 在降低功耗方面拥有自己独特的优势,比如,其晶体管数量较少,时钟速度较低,而且通常工作电压也较低。

不同于用微安计算的DSP,电源优化的现代 MCU 的待机电流可以纳安计。尽管 DSP的性能大大超过 MCU,而且在电源方面也得到了显著优化,但芯片设计人员在省电方面可做的毕竟有限。

常规性认识


在延长电池使用寿命方面,系统设计工程师的常识是“一颗芯片肯定比两颗芯片好”。他们的想法简单而直接,认为芯片间的通信肯定比片上通信的功耗大,两颗芯片的晶体管数量明显大于集成了对等功能性的单颗芯片。不过,常识未必总是正确的。

随着 DSP 开始集成如加速器、专用通信模块与网络外设等片上功能,其功能对于系统设计人员来说也正变得越发强大和实用。但是,如果芯片仅仅为了执行简单的常规处理或监管程序就保持开启的话,那么就会产生大量无谓的功耗。

决定电池使用寿命的是系统的平均流耗,而非既定时间的瞬时流耗。因此,要延长电池使用寿命,就必须降低平均流耗。对于器件处于运行状态时,典型的高端处理器支持时钟缩放及其他节约功耗的特性,但如果处于非工作状态,器件就很难拥有出色的节电性能了。众多高性能处理器在停止模式下的耗电量达到 50 微安 ~ 100 微安以上。尽管乍看起来这种电流消耗还是可以接受的,但要知道,这是处理器停机时的持续耗电,而且不通过外部重启的话就不能执行任何任务。

对这种处理器及其他较高端处理器来说,保持低功耗状态,同时又能激励 (stimuli) 或执行系统或进行监管任务,这时功耗为数十毫安。这就是说,如果系统依赖高端处理器来执行监管任务的话,电池的使用寿命不过几天而已。

但是,如果通过其他器件来实施系统和监管功能,而且这种器件还可管理主处理器的电源,那么系统的平均电流消耗就可显著降低。

就某些应用而言,用 MCU 取代 DSP 执行系统监管任务是一种非常明智的设计决策。明确双处理器系统架构是否是正确的选择取决于众多因素。应用本身是最重要的因素,因为大多数设计方案还要考虑到空间与成本的局限性。

举例来说,供电监控、复位监管以及电源排序等都是系统需要的最基本的监管功能。当前众多 SoC 都具备多条电源轨,上电时必须进行适当排序才能正常运行。固定功能器件可执行所有上述功能,但却不能满足系统的其他要求,也不能在不需要时关闭主处理器。以小型的低功耗微控制器取代固定功能器件可增加管理主处理器电源的功能,同时还能实施排序、监控以及监管 (monitoring and supervision) 等功能。

低引脚数的低功耗微控制器正好适用于这种功能。举例来说,德州仪器 (TI) 推出的MSP430F20x1 与 MSP430F20x2 这两款器件均属 14 引脚的微控制器,并分别带有一个比较器和 10 位模数转换器 (ADC)。它们的待机流耗不足 1 微安,而且运行时的功耗也不过几百微安。

下页上的图 1 显示了一个小型微控制器控制主处理器的电源排序、实施电源管理的实例。微控制器上的软件例程可根据正确顺序启动主处理器调节器,并通过内部 ADC 来确认电源轨达到适当电压的时间。不需要主处理器时,可通过调节器的关断特性来关闭主处理器,从而节约主处理器70 微安到几毫安的电耗。

图 1.小型微控制器管理主处理器的电源排序,并实施电源管理

更好地了解 DSP 与 MCU 各自对优化电源的作用是制定何时将二者在设计方案中结合使用的关键因素。设计人员通过将两个超低功耗处理器用于完成主处理器周期与监控功能,让它们分别实现最大化的电源效率,同时又能获得独特的性能、集成与成本优势,这样就能使双低功耗处理器系统的电池使用寿命超过单个处理器系统。

DSP 的电源


DSP 芯片设计人员采用了众多低功耗技术方案,如降低工作电压、将芯片分为多个时钟域等大多数方案都是在后台执行的。系统设计人员不必过多控制这些特性就能获得相关优势。

不过,在 DSP 选择过程中,系统设计人员要对应用的执行方式发挥充分的作用。在选择最佳 DSP 时,应考虑以下四个重要特性:

  • 采用大容量片上存储器:在应用一般功耗基础上,每次执行片外存储器调用时都要消耗额外的电源。如果使用外部 RAM,就必须为其持续供电,这是一个连续的耗电过程。
  • 选择能高度控制外设的 DSP,因为这直接有利于进一步降低功耗。数种 DSP 能在外设处于非工作状态时自动将片上外设关断,或者也能允许系统设计人员手动管理外设状态。不过这种特性在粒度性上有一定局限性;
  • 选择可提供多种待机状态的 DSP。选项越多,从长远来看节电性能就越好;
  • 选择可提供开发软件的 DSP,以专用于优化电源利用并最小化功耗。所选工具应能轻松缩放芯片的电压与频率、管理电源状态、测量并分析功耗,从而评估各种可选的设计方案。

DSP 固然可以显著延长电池使用寿命,但其它方面的功耗因素是芯片与设计人员所不能控制的,这主要是由于 DSP 的制造工艺来决定的,而这方面的关注重点又必需是性能问题。

从本质上说,高性能 IC 工艺晶体管的漏电流更高。芯片设计人员与工艺工程师可通过某些方法控制整体功耗,比如在功耗方面的要求高于性能时,可采用低漏电流的晶体管。这种措施可以发挥作用,但不能从根本上解决问题。

晶体管漏电流非常重要,因为系统的平均电流消耗(不是某个既定时间的瞬态功率)决定了电池使用寿命,而器件晶体管的漏电流则构成始终存在的固定电流消耗。为了延长电池使用寿命,就必须降低平均电流消耗。

以上提到的 DSP 低功耗特性可在芯片运行时较好地发挥省电作用。但是,当 DSP 处于待机模式时,芯片设计人员很难控制大量高性能晶体管的漏电流。解决漏电流的唯一办法就是彻底关闭晶体管,但这通常又意味着必须从外部重启芯片。

MCU 的电源


优化 MCU 以实现低功耗工作的最佳起点是采用超低功耗工艺来制造 MCU,从而可将晶体管的漏电流锐减至极低的水平。高性能工艺技术会造成 DSP 的功耗加大,与此相对应,专为降低功耗而优化的半导体工艺则可能限制 MCU 的峰值处理性能。

图 2. MSP430F20xx MCU 结构图

时钟速度是最显而易见的局限性。TI 的 MSP430F20xx 是低引脚数的 MCU 系列产品(见图 2),能够利用其独特的超低功耗振荡器(VLO)技术来实现低至 500 纳安的待机模式电流、最高速度为 16 MHz 的优异特性。VLO 技术使 MSP430F20xx MCU 能在超低功耗待机模式下完全自动控制时钟速度,同时无需外接组件就能实现自动唤醒功能,从而使烟雾检测器或家庭温控装置等系统能够在不更换电池的情况就能持续工作 10 年之久。

在实现业界领先的 500 纳安待机功耗时,还能确保支持所有器件的故障保护安全特性,如既能实现超低功耗又能实现可靠性极高的系统的零功耗掉电复位(BOR)功能。在 VLO 推出之前,设计人员不得不采用外部晶振或振荡器电路来实现超低待机功耗。VLO 无需使用外部组件就能减少系统组件数、降低成本、缩小板级空间,而这些都是便携式应用的关键需求。与此形成对比的是,以 TMS320C5506 DSP 为例,其待机功耗仅为 10 µA,是上述技术待机功耗的 20 倍之多。

使用智能外设也是降低功耗的高效的 IC 设计策略。以前,MCU 外设都是由 CPU 所执行软件驱动的,尽管这确实能高效工作,但 CPU 始终需要处于工作状态。通过设计尽可能减少软件服务量的中断驱动型外设,我们可以让 CPU 在大多数时间内都处于待机或空闲模式。

图 3.对于 MCU 的电源效率而言,两个时钟比一个更好

此外,系统设计人员选择的 MCU 还应拥有 ADC 自动输入通道扫描功能、硬件转换开始触发器以及 DMA 数据传输机制等。这些特性还可将重复性数据采样实现自动化,并最小化 CPU 的运行时间。

MCU 的时钟系统也可在省电方面发挥重大作用。例如,图 3 显示了单个晶振的双时钟运行情况。

MCU 的低功耗外设使用低频辅助时钟(ACLK)。低频、低功耗操作通常使用 32 KHz 的外部振荡器,可支持实时时钟功能性。高速度的数控振荡器(DCO)可作为由 CPU 和高速外设使用的主系统时钟(MCLK)源。

除通过采用某些外设的低速时钟实现省电之外,TI 的 MSP430 MCU 还片上集成了超低功耗振荡器(VLO),可作为 ACLK 的时钟源。在待机功耗操作模式下(LPM3),ACLK 仍保持运行且启用所有中断,这时 MSP430 器件的典型流耗还不足 1 µA。

此外,DCO 能够在不到 1 µs 的时间里进入工作状态并完全稳定下来,且无需中间步骤。这就实现了“即时启动”的高性能处理功能,而不像采用第二个晶振或双速启动那样需要较长的启动时间。这不仅能节省时间,同时还有助于降低功耗。

双处理器电源


如前所述,诸如加速器、专用通信以及网络外设等的集成功能会导致 DSP 在执行简单功能时无谓耗费电力。

对某些功能而言,MCU 比 DSP 更适用,例如,保持实时时钟工作或者管理电池充电程序等。将上述任务交由 MCU 完成有助于更好地利用 DSP 的 MIPS 速率预算,这非常重要。

双处理器架构的优势非常明显。比方说,假定某系统依赖高端处理器来执行监管任务,那么电池使用寿命可能只有几天的时间。具体地说,典型的 NiMH AA 电池的额定电量为 2500 mAh。如果平均电流仅为 1 mA,那么耗完 AA 电池的电量需要 119 天。如果将平均电流提高到 10 mA,则电池只能工作 12 天就没电了。

通过采用双处理器系统,我们可通过以下系统或监管功能实现电源优化:

  • 保持实时时钟
  • 供电排序
  • 电源监控与复位
  • 键区或人机接口管理
  • 电池管理
  • 显示管理

在描述 MCU 低功耗技术时,我们已经探讨了实时时钟功能。将上述原理作简单的扩展发挥,我们可用 MCU 来为 DSP 提供时钟。

管理 DSP 的电源


众多现代 DSP 都拥有必须进行上电排序才能实现正常运行的多条电源轨。通常情况下,这些电源轨包括内核电源轨、DDR 电源轨以及 I/O 电源轨等。尽管我们可用固定功能的器件来执行电源排序,但却不能扩展支持其他功能。

如图 4 所示,采用小型低功耗微控制器(如 TI 的 MSP430 MCU)取代固定功能器件就能实施排序、监控与监管等功能,从而实现主处理器(TI TMS320C550x DSP)的电源管理。

图 4. 采用 MCU 实现的 DSP 电源排序

图 5. TMS320C550x DSP 结构图

以上的图 5 显示了 C550x DSP 的特性。MSP430 MCU 上的软件例程可实现以正确的顺序启用 C550x DSP 稳压器电路。MSP430 采用其内部 ADC 来确认电源轨达到适当电压的时间。如果不需要 C550x,则可采用稳压器的关断特性将主处理器关闭。

事实上,MCU 可通过直接与 VXO 通信来控制电压,或通过与 PLL 直接通信来控制频率,从而同时实现对 DSP 电压与频率的控制。这样做明显的好处在于,DSP 完成了计算密集型任务后,MCU 可让 DSP 进入有效的待机模式。

监控进程是双向的,换言之,MCU 可探询 DSP 的繁忙程度。在此模式下,其可发挥智能控制器的作用。另一方面,DSP 的内部监控功能也能发挥作用。由于既可对 MCU 进行读取也能写入,因此 DSP 可根据应用需要通知 MCU 时钟的加速或减速。

人机接口管理


我们可通过与 MCU 的交互来降低 DSP 的功耗,避免在内部用 DSP 来执行简单的任务。不过这种做法的更大好处在于,系统设计人员能将单处理器系统中由 DSP 执行的一些监管任务交给 MCU 来完成。

MCU 能轻松满足键区操作的相关要求,而且功耗比 DSP 低得多。比方说,仅为 500 纳安的待机电流就比 DSP 小得多。只有在将按键按下再放开后,我们才向 DSP 实施中断,通过确保这一点,MCU 可避免按键卡住后造成的电流消耗,而这种按键卡住不动的情况在某些手持设备中并不少见。

此外,16 MHz MCU 还能支持用户显示的管理工作。为了进一步提高节能效率,MCU 应拥有集成的片段型 LCD 驱动器,以处理四个多路复用的数据流。

此外,MCU 还应具备相关集成功能,以能通过标准 SPI、UART、I2C 或 RF 等与外设通信,而且还应在无需轮询的情况下即能自动从低功耗模式启动。

电池充电与充电管理通常是采用固定功能器件可执行的另一个监管功能,不过该任务也可由微控制器来完成。我们可用微控制器的 ADC 来测量电压;用定时器和软件来管理充电;并用脉宽调制输出来提供充电波形。微控制器厂商的应用报告通常会介绍其产品如何完成上述功能,而且还会提供代码样例。例如,您可从 TI 网站上下载编号为 SLAA287、题为“采用 MSP430 的锂离子电池充电器解决方案”的应用报告,其中介绍了 MSP430 产品的相关解决方案。

一旦系统分组完成后,我们还必需将 MCU 与 DSP 连接在一起,确保其彼此间正常通信。MCU 与外设交互过程中所需的大部分数据都要与 DSP 共享。当然,这会对 MCU 的技术规范提出一定的要求。我们应当寻求至少具备 16 个 GPIO 端口的产品,以支持处理器间的通信。此外,还应要求所选产品支持片上 SPI 与 I2C 接口,而电池充电功能需要10 位 ADC。

在大多数系统中,我们可构建简单的协议,让 DSP 向微控制器发出基本命令。在某些情况下,如果主处理器与微控制器是相同厂商提供的,那么可以通过应用报告及相关解决方案将二者很好地结合起来。

两个例子可用于将 MSP430 微控制器连接至 TI 的DSP:应用报告 SLAA174 与 SPRA639A。后者描述了如何通过其主机端口接口将 MSP430 和 TMS320C54x™ DSP 相连接,如图 6 所示。

图 6. MSP430 与 TMS320C54x DSP 通过主机端口接口相

结论


DSP 在降低功耗方面取得了重大进步,但由于制造 DSP 的高性能工艺技术所限,要实现应有的作用还比较有限。在芯片处于待机或空闲模式时,它们特别容易受到晶体管漏电流造成的功耗影响。说到底,设计人员需要根据对 DSP 和/或 MCU 的计算、测量分析以及两者间的折中平衡来确定到底其应用方案应采用一个处理器,还是结合采用两个处理器。

重要说明:TI 及其在此所提及各子公司的产品与服务均根据 TI 标准销售条款进行销售。TI 建议用户在下订单前查阅最新最全面的产品与服务信息。对于应用协助、客户的应用或产品设计、软件性能或者专利侵权,请恕 TI 概不负责。有关任何其它公司产品或服务的发布信息均不构成 TI 因此对其的批准、保证或授权。

TMS320C54x 是德州仪器的商标。所有商标均是其各自所有者的财产。

© 2008 德州仪器公司版权所有
SPRY114