Nordic Tech Tour中国技术巡展
  1. Home
  2. 新闻

    如何优化智能设备的能效

如何优化智能设备的能效 Nordic Semiconductor

进行准确测量是优化能效的第一步,然后要想办法将尽可能多的将数据处理转移到专用硬件模块中,这样可以大大减少耗电量。

进行准确测量是优化能效的第一步,然后要想办法将尽可能多的将数据处理转移到专用硬件模块中,这样可以大大减少耗电量。

在我的上一篇文章中,我研究了令人费解的功耗术语以及如何降低功耗。这一次,我将着眼于优化互联智能设备的能效,这一过程首先要进行准确的测量。

要精确测量能耗,我们需要比电流表功能更强大的设备。电流表这类仪器无法在不断变化的电流下显示正确的结果。

功率分析仪价格昂贵,但也有替代方案

如果您有一个积分时间很长的万用表,那么就可以做到在不断变化的电流下显示正确的结果,但积分时间必须长于您要测量的多个周期。最好的选择仍然是专门为进行这种测量而设计的功率分析仪。大型实验室仪器供应商通常会有一个高分辨率、高精度的分析仪,但它们相当昂贵,高达1万美元。

许多低功耗MCU供应商已经提供了低成本的解决方案,允许开发人员在开发阶段在他们的办公桌上就放一个。这些设备无法提供与实验室工具相同的精度,但可以将误差百分比降到个位数,这足以准确地得出合理的能耗和电池续航估计数据。

专用硬件模块

优化CPU使用的能耗是提高系统能效的关键一步。现代CPU非常灵活,通过编程,您可以让它做任何您想做的事情,但即使是最高效的CPU架构也无法像专用硬件模块那样高效。 嵌入式系统的一个常见情况是需要执行各种小型任务,其他时间只是等待。如果您使用CPU来处理这个问题,那么您有两个基本的选择。一种方式是让CPU任务之间循环等待;另一种方式是休眠,只有在需要时才唤醒执行。

由于CPU通常是系统中最耗电的设备之一,第一个选项将消耗大量的电量,而没有做什么有用的事情。在等待时降低时钟速度将改善这一点,但这将降低工作时的效率,因为CPU在全速运行时通常效率最高。使用第二种方法将导致CPU周期性启停,这通常是一种更好的方法,但每次必须从低功耗状态再次唤醒CPU时,仍然会损失一些电量和时间。

如果能够在专用硬件上完成所有较小的控制操作,并且只有在有数据需要处理时才唤醒CPU,这将极大地提高功效。

找到合适的平衡点

在使用不那么灵活但低功耗的专用硬件和灵活但低能效的CPU之间做出权衡非常重要。在现代的MCU中,正通过加入硬件加速来改善功耗。

Nordic Semiconductor nRF系列芯片使用DMA进行所有的数据传输,并拥有一个名为PPI的硬件控制系统,在硬件模块之间发送控制信号。例如,通过将这些与无线电一起使用,您可以在运行蓝牙的同时,使CPU在大多数时间处于低功耗休眠模式。

与没有硬件加速的系统进行比较,那种CPU通常会一直运行以控制无线电,这再次导致能耗增加。这也意味着峰值功耗值较低的系统很可能会有更高的整体能耗,因为同样的工作需要更长的时间。

硬件加速还允许您优化CPU的效率,而无需在高速操作和低速操作之间进行妥协匹配。您可以主动允许CPU被唤醒,让它以尽可能快且高效的方式进行计算工作,然后返回到低功耗模式。

新型基准测试:帮助您在复杂因素影响下进行功耗评估

专用硬件以及CPU调度策略都会影响功耗的评估,这种复杂性的增加催生了新型的基准测试(Benchmarking)。例如,EEMBC 是一个基准测试领域的行业联盟,他们原本多年来一直也在领导着CoreMark。Coremark被广泛用于测试CPU性能,但它只测试性能。

最近,EEMBC公布了更多与功耗有关的基准。ULPMark-Core Profile的目标是低功耗应用。现在正在使用ULPMark-Peripheral Profile进行扩展,其中外围设备将用于模拟更完整的系统。还有一个正在进行中的IoTMark基准测试,其中将添加无线连接来模拟终端节点。

由于仅仅读取datasheet中的mA数字不再那么准确,这些基准测试能够更方便地在低功耗设备上进行同类比较。虽然这样的基准测试是有用的,但基准测试解决方案越接近您的实际应用它们的价值将越高。

一句忠告

最后总结,由于数字设备中的各种低功耗优化设计的存在,单纯使用datasheet中标注的电流mA值来评估一个应用的功耗情况已经变得越来越困难。如果有人告诉您可以这样做,那就要小心了!您可能会发现,要么设备没有优化到应有的程度,要么您没有被告知完整的故事。

开发案例

了解Nordic系统级芯片及解决方案如何广泛赋能物联网

扫描微信公众号二维码了解更多

联系我们