有效的MCU设计必须先了解电源和性能之间的平衡
扫描二维码
随时随地手机看文章
微控制器被用作几乎每个应用可以想象在主控制元件。他们的权力和灵活性,让他们去到组件的大多数设计的心脏。关键要建立高效的设计中使用的MCU往往依赖于使功耗和性能之间的智能权衡。许多MCU提供了几个选项,可以限制MCU时钟速率,因此,其性能的MCU供电。了解工作电压和工作时钟速率之间的公共关系可以是如何充分利用你的下一个MCU设计的关键。本文将快速回顾一下一些常见的选项供电MCU和讨论履行很可能导致所产生的制约。修改工作电压在运行时获得的性能和能效的最佳组合常用的技术进行探讨,以帮助您选择和实施你的下一个基于MCU的设计。
频率与工作电压 - 一个关键的性能考虑
一个性能和功耗之间的最根本的关系是MCU工作时的电压。工作电源直接关系到工作电压(由定义,因为功率等于电压乘以电流),如此清晰的动作电力需求上,你会用你的设计的MCU决定何时是一个关键的考虑因素。你可能会认为,这意味着你应该总是使用最低的功耗MCU,但是如果性能是设计中的所有问题,您将需要考虑工作频率为关键要素,以及,一个MCU的工作频率经常被限制其工作电压。许多的MCU厂家明白的工作电压,工作频率,MCU性能,和MCU操作功率之间的关系的重要性,并且它们提供不同级别的操作功率和工作频率,以便更容易对设计的最佳拟合优化到系统要求。作为一个例子,瑞萨RL78 MCU有四种不同的工作电压范围,每一个都支持不同的操作频率,如下面的图1。在1.6 V和1.8 V时,RL78可在1 MHz和4 MHz之间的任何地方运行。间2.7 V和5.5 V时,可以在最多20兆赫运行。因此,RL78可以操作快五倍,如果它使用2.7 V代替1.8伏,在工作电源电压只增加了50%。
图1:电压与频率图瑞萨RL78 MCU。
改善电源效率的上述关系时,在更高的电压下工作是常见于许多MCU,并了解在电源效率是设计中的关键要求是最重要的关系之一。在许多情况下,它更省电,以保持在尽可能低的功耗状态的MCU,也许是一个低的睡眠模式,当它需要做一些处理(也许采样传感器是否采取进一步的行动,看其唤醒需要采取)。当需要处理它通常更省电以更快的频率下运行,以尽量减少在较高功率状态的时间。如果处理可以做到5倍的速度,并只需一个操作功率增加50%,(如在RL78的情况下),可以清楚地看到,所要求的总能量会少得多,因此这将是一个更节能的设计。
时钟控制的MCU操作的频率是由一个时钟控制块管理;和许多时钟控制块具有的功能,可用于选择,控制和管理的时钟源的CPU,内存,外围设备,和模拟模块。通过控制时钟频率,以这些块,甚至关闭的时钟功能没有被在特定处理例程使用的动态电流的量(所需的电流来改变一个信号或存储元件的电压电平)可以被调制,以便您使用的电流以最有效的方式。 (注意,基于电池的应用,特别,是最新的意识的设计,因为它是从电池通常是最关键的约束所提供的总电流)。许多最常见的和有用的时钟控制功能包含在 Microchip的PIC32MX单片机的时钟控制块,对于大多数时钟控制模块示于图2的出发点是时钟源,并且通过具有多个源它使得有可能独立地优化的时钟为多个模块。例如,PIC32MX具有低功耗内部RC振荡器(LPRC图2的底部附近),可以当极低速操作是可接受的被使用。它可以提供看门狗定时器(WDT),这样即使在非常低功耗模式这一关键计时器仍然可以使用。主振荡器(POSC)使用一个外部晶体,以产生由该装置的性能最高的部分的精确高速时钟源的使用,并将该系统和USB锁相环(在图的顶部)。需要注意的是独立的PLL也意味着USB操作可以独立于系统时钟,提供优化的时钟和潜在的节省功耗的级别。快速RC振荡器(FRC)规定如果不需要外部振荡器8 MHz的时钟源,当不需要的最高频率和精度节省电路板空间,元件数量,或许省电。最后,辅助振荡器可用于低功耗工作由外部32 kHz晶振。
图2:在Microchip的PIC32MX1XX家庭时钟控制模块。
这财富时钟源可以选择和通过后的定标器,预定标器,和两个主要的PLL来产生所需的装置的各种子部分的频率进一步划分。由16块固定鸿沟和可选择的FRC后 scale分频器(由FRCDIV输入控制)创建CPU和外设(SYSCLK)主时钟。外设时钟可以通过附加的后分频器被进一步划分为优化外设时钟速度,最大限度地减少在这些函数生成的动态电流。许多在图2所示的时钟选项可以通过配置寄存器来控制或根据所需由编程的性能水平被自动选择。现代的MCU更容易操作,甚至通过简单的应用程序接口(API)调用,简化和减少潜在冲突配置这些块时“的手。”你看这些API的MCU厂商的文献,软件是最复杂的时钟管理器工具 - 根据配置向导,代码示例和参考设计,以简化设计过程。
闪存的性能和时钟频率
在选择的MCU时经常被忽视的一个领域是代码闪速存储器的性能。一些MCU都有快速CPU周期时间,但这些快速的操作速度可以通过代码或存储在闪速存储器中的数据的访问时间的限制。例如,在爱特梅尔AT32UC MCU闪光周期时间与工作频率,如下面的图3。当在33兆赫和由此所读访问时间只需要一个周期的闪光等待状态(FWS)的数目是零。在66兆赫工作频率快速存储器插入FWS,所以存取时间需要两个周期。因此,你可能希望最后得到33 MHz的有效工作频率,具有66 MHz的时钟运行时也是如此。 MCU制造商已经开发出多种方法却减轻了等待状态插入,这样你通常支付比全开销要少得多。
图3:闪存等待状态爱特梅尔AVR MCU AT32UC。
以减轻闪存等待状态是管道中的闪存接口,这是爱特梅尔AT32UC MCU所采??取的办法。这种流水线方式允许突发来自连续存储位置读取(通过代码存储器访问到目前为止,绝大多数都是连续的,因为你通常只持续到下一个指令)不读罚款。这导致只有15%在有效时间周期的平均开销,不是完整的100%,否则你可能期望。以减轻慢速闪光访问另一种常见的方法是使用本地存储器缓存以便反复访问可以使用已经获取的数据,并且不要求完全读较慢闪存块。你应该总是仔细看看闪存存取和整体处理性能之间的相互作用在您的设计,以确定影响你的选择的时钟速度将对整体处理性能。[!--empirenews.page--]
其中操作最省电的模式的MCU是刚刚关闭设备完全实现了零功耗。该MCU性能也有效零为好,所以这可能似乎不是一个非常有用的方法,如果你需要确保某些操作最小量总是发生。例如,你可能需要一个实时时钟保持精确的时间记录,甚至当设备处于关闭状态。幸运的是,一些MCU可在电池备份模式下运行,这样,如果所述装置的其余部分断电时简单的操作可以继续连。德州仪器(TI)提供了MSP430x5xx / 6xx系列MCU系列正是这样的能力。如图4所示,电池备份块从辅助电源(VBAT)如果主电源(DVCC)失败供给子系统。备份提供的子系统通常含有一个实时时钟模块(连同所需LF-晶体振荡器)和一个备用RAM。块的各种操作由寄存器位(与“BAK”前缀信号)控制,使得充电,选择,和ADC操作可以由处理器全部进行管理。当一个RTC和备份SRAM是必需的,他们可以逃跑电池电压和RTC甚至可以用来“打开”,MCU的周期性操作的其余部分。这样可以节省电源的最高金额,并创造了一个非常节省空间的和高能效控制系统,完全关闭(在零频率运行)的CPU散热的同时非常少(几乎为零)系统上电也许是极致的动力性能权衡。
图4:德州仪器(TI)MSP430x5xx / 6xx系列单片机系列电池备份子系统。
关键要建立高效的设计中使用的MCU往往依赖于使功耗和性能之间的智能权衡。许多MCU提供几个选项,可以限制在MCU时钟速率,因此,其性能在MCU 供电。管理时钟,选择合适的工作电压电平,并了解电压等级和闪光灯性能之间的关系都是至关重要的,以创造最节能的MCU设计成为可能。