NXP

智能硬件开发如何选择低功耗MCU?

2019-07-12 11:50发布

本文转载至:http://www.iot-online.com/IC/embedded/2015/090928393.html 本文将市场上典型的低功耗MCU系列进行了比较,分析得出基于ARMCortex M0+内核的MCU系列最适合穿戴式医疗设备的开发。设备开发者当密切关注其发展动向,结合现有的市场需求、产品体系的构建和升级换代的规划等因素进行合理分析,抉择出适合自身产品的MCU型号。继而针对特殊医疗监测任务的需求,为MCU系统制定最优化的低功耗策略,从而开发出价格亲民、性能优越的设备。

根据穿戴式医疗设备低成本、高性能、高集成度和续航时间长的特点,对比了当前主流的低功耗微控制器MCU)系列,分析得出ARM Cortex M0+内核的MCU系列适合该领域的产品开发。在功耗水平、运算性能、外设集成和产品成本等方面,进一步将各大半导体公司基于Cortex M0+内核的MCU系列展开参数对比,为穿戴式医疗设备的MCU选型提供指南。 近年来穿戴式医疗设备的市场需求在快速增长,将成为拉动经济增长的一个创新型产业。根据艾媒(iiMedia Research)公布的《2012-2013中国移动医疗市场年度报告》显示,在2012年我国移动医疗市场规模达到18.6亿元,其中穿戴式医疗设备占4.2亿元,较上一年增长20%。预计到2017年底,我国穿戴式医疗设备的市场规模将接近50亿元,在未来十年内呈现急速增长的态势。随着市场需求的增长和产品的普及,穿戴式医疗设备正在往低成本、高性能、续航时间长和体积小的方向发展,这就对设备的控制核心——微控制器(MCU)提出了更苛刻的要求。可穿戴的趋向使得设备所选用的MCU必须具有低成本、低功耗、高运算能力、高集成度的特质,否则将会被市场和用户淘汰。

  1 穿戴式医疗设备的简介   穿戴式医疗设备将非介入式生理信号检测技术融合到日常穿戴衣物、器件当中,具有简易便携、长时间监测的优点。这类设备可随时随地长时间监测人体生理状况,已经广泛应用于慢性疾病监测、家庭护理保健、睡眠质量监测等方面,有利于实现慢性、隐性疾病的早发现、早诊断、早治疗。   1.1 穿戴式医疗设备的应用   在市场和用户的追捧热潮下,各种穿戴式医疗设备的解决方案和新产品层出不穷,功能和性能也在不断提升。例如我国的迈瑞公司推出的MC-6800型动态血压监测仪,仅需将充放气的袖带绑在用户手臂上,就能在各种状况下进行24 h无创性动态血压监测。美国Medtronic公司推出的血糖实时连续监测系统(CGMS)可以连续工作3d,仅需将检测探头贴在患者腹部,每10s会对皮下间质液里的葡萄糖浓度进行测量,并将获得的数据通过无线方式传送到接收器上。美国SPO Medical公司推出的PulseOx 6000型“血氧手指套”能长时间工作500 h,仅需套在手指上即可实时监测用户的血氧饱和度和心率,可靠性堪比体温计或血压计。这些产品都体现了区别于常规电子仪器的显著特征:①非介入地检测生理信号;②通过无线或有线的方式连接用户、医护人员和数据系统;③续航时间长;④安全可靠。   1.2 穿戴式医疗设备的需求分析   为了满足穿戴式医疗设备在功耗、性能、体积等方面的要求,所选用的MCU需要满足以下要求:①低成本;②高能效;③高休眠效率;④高集成度。在控制成本方面,可以考虑低功耗的8/16 bit单片机或基于ARM Cortex-M系列内核的32 bit单片机,这些芯片出货量巨大,批量价格一般比较低。在能效方面,应选用低运行功耗、高运算能力的MCU系列,低功耗可以提高续航能力,高运算能力有利于在片上运行复杂算法和数据处理。在休眠效率方面,应选择拥有灵活多样的休眠模式、超低休眠功耗、极短唤醒时间的MCU系列。在集成度方面,可选用那些外设丰富且性能优越的MCU系列,有利于减少体积尺寸、降低硬件成本和提高系统稳定性。   2 典型低功耗MCU系列的比较   各大半导体公司如FreescaleSTNXP、SiliconLabs、Atmel 、TIMicrochip等,纷纷推出适用于穿戴式医疗设备的中低端MCU系列。表1和表2将16bit和32 bit典型的低功耗MCU系列展开对比,8 bitMCU不在比对列表中。这是因为8 bit MCU已经不适合穿戴式医疗设备的发展趋势,其市场也正被ARM Cortex-M系列内核的MCU蚕食。   表1重点比较了16 bit/32 bit内核的性能差别,32bit的内核在运算效率方面全面超越16 bit 的内核,意味着当穿戴式医疗设备需要在片上执行数据处理和复杂算法时,Cortex-M系列内核的32 bit MCU更具优势。表2则将典型的低功耗MCU展开能效对比,可以发现16 bit MCU在低功耗方面的优势已不明显,以低功耗著称的MSP430系列在运行功耗和休眠功耗方面跟Cortex-M系列32 bit内核的STM32L系列相差无几。而32 bit MCU在休眠状态下的唤醒时间也能做到了10 μs以下,在休眠效率、快速响应方面有良好表现。   表1 典型低功耗内核架构的性能对比   Tab.1 The performance comparison between typical low-power architectures 基于ARM Cortex-M0+内核的穿戴式医疗设备MCU选型分析   注:(1)内核性能的测试结果(CoreMark Scores)以EEMBC组织公布的数据为准。   表2 典型低功耗MCU的能效对比   Tab.2 The comparison of energy-efficiency between typical low-power MCUs 基于ARM Cortex-M0+内核的穿戴式医疗设备MCU选型分析   注: (1) 对于表1的MCU系列具体型号的测试报告,所挑选的型号片上配置相近,Flash容量均为64 kB;   (2) 常温条件+25 oC,所有外设关闭,程序从Flash运行;MCU供电电压除了PIC24的3.3 V、Nano120的3.6 V之外,其他均为3.0 V;各型号的测试结果均为当前主频下的最佳配置;   (3) 休眠功耗的测试标准:片内主时钟和所有外设关闭,RTC打开,保留RAM。   综合表1和表2可见,Cortex-M系列内核的32 bitMCU在功耗水平上已经做到与传统8 /16 bit MCU相当,而在运算效率上优势明显,更适合那些对任务和算法有较高要求的穿戴式医疗设备。
3 基于Cortex-M0+内核的MCU选型分析
  3.1 Cortex M系列内核的对比
  Cortex-M系列中低功耗成员有M3、M0和M0+,是ARM公司针对那些对成本敏感、同时对能效有较高要求的应用而设计的。当传统的8/16 bit MCU在性能、功能上表现越来越乏力时,ARM公司于2009年推出了低成本、低功耗、高能效的Cortex-M0内核。Cortex-M0内核以优异的表现击败了传统的8bit MCU,成功杀入低端的MCU市场。在这契机下,ARM公司于2012年相应适宜地推出M0的升级版——M0+,在能效和功能上作进一步的优化和增设,以超低的能耗提供更快的任务处理能力。
  从表1和2的数据可知,三者内核性能的排序为M3>M0+>M0,运行功耗的排序为M3>M0>M0+,即M0+内核的能效高于M0,运算性能仅次于M3。由于M0+在价格方面比M3有优势,故更适合于执行低成本、高能效的任务。综合可知,那些对功耗有苛刻要求、运算处理任务较复杂、且需要控制成本的设备选择M0+内核的MCU最为合适。
  3.2 基于Cortex M0+内核的主流MCU系列
  各大MCU生产厂商结合自身的优势对Cortex-M0+内核加以整合优化,在功耗、性能和外设方面各有所长。表3列举了市场上M0+内核的主流MCU系列,并结合穿戴式医疗设备的需求进行分析。
  表3 基于Cortex M0+内核的主流MCU系列
  Tab.3 The mainstream MCU series based on Cortex-M0+ architecture
基于ARM Cortex-M0+内核的穿戴式医疗设备MCU选型分析基于ARM Cortex-M0+内核的穿戴式医疗设备MCU选型分析
  注:(1) ST公司和NXP公司都建立了涵盖Cortex-M系列所有内核的产品线,Cortex-M系列MCU的中国市场在2012年达到1.68亿美元,其中ST以35%的市场份额居于首位,而NXP位居第二占有32%;
  (2) Silicon Labs于2013年收购了专攻低功耗领域的Energy Micro,之后推出的Zero Gecko系列吸取了以往EFM32系列超低功耗的优点。
  上述Cortex M0+内核的MCU 系列可为穿戴式医疗设备开发者提供多种选择,而具体的MCU型号要根据设备的实际需求来决定。在同一系列里,MCU的最高主频、内核效率、功耗状况都是一致的,具体型号之间的差别在于片上资源。如表4所示,STM32L0系列分为3条主要的产品线,差异就体现在一些特殊的集成外设,如DAC、USB控制器和LCD控制器。恰当地选用这些高集成度的MCU有助于减少外部芯片的个数,可降低系统成本和功耗。因此,片上集成资源的种类、数量、功耗和性能,都是决定MCU选型的重要参考因素。
  表4 STM32L0系列的3条产品线
  Tab.4 Three product lines of STM32L0 series
基于ARM Cortex-M0+内核的穿戴式医疗设备MCU选型分析
  3.3 MCU系统的低功耗策略
  Cortex M0+内核的MCU 系列兼具低功耗、高性能和灵活的休眠模式,为穿戴式医疗设备的开发提供了优良的平台和电气基础。然而,如何在保持高性能的情况下,将任务的整体平均功耗降到最低,将是设备开发者的重要任务。MCU系统的低功耗策略决定了设备的性能和续航时间,策略的制定需要从以下四个方面入手:
  (1) 合理地控制MCU的时钟系统,针对特定的任务,选择适合系统运行的时钟频率,迅速完成复杂的任务争取更多的休眠时间;
  (2) 选择恰当的休眠模式和休眠时间;
  (3) 进入休眠模式时, 将未用到的外设以及时钟关闭;
  (4) 优化任务的时间片,将平均功耗降到最低。
  图1 展示了基于表3的Zero Gecko系列设计的动态心电记录仪的低功耗策略,MCU系统任务的理论耗电流如图2所示。其中,MCU主要在三个模式之间切换:运行模式1(EM0_1),运行模式2(EM0_2),深度睡眠模式(EM2)。平时MCU工作在EM2,高频时钟和外设关闭,耗电流为IEM2;当定时器发生中断时,MCU从EM2中唤醒,将进入EM0_1以f1主频高速运行,此时耗电流为IEM0_1,同时启动A/D进行心电信号采样,采样完毕后将数据暂存在RAM中;如果缓存的数据量没有达到阈值,MCU将直接进入EM2并定时等待;如果缓存的数据量达到阈值,则MCU切换到更高的f2主频进入EM0_2,耗电流短时间内达到IEM0_2,对缓存数据进行处理并存储到SD卡上,存储完毕后进入EM2。运行模式下使用到两个不同的主频f1和f2,分别是由A/D采样任务和SD卡存储任务对运算能力的不同需求来决定,将任务的平均功耗最优化。
基于ARM Cortex-M0+内核的穿戴式医疗设备MCU选型分析
  图1 基于Zero Gecko系列的动态心电记录仪的低功耗策略
  Fig.1 The low-power strategy of the dynamic ECG recorder based on Zero Gecko series
基于ARM Cortex-M0+内核的穿戴式医疗设备MCU选型分析
  图2 动态心电记录仪执行不同任务下的理论耗电流曲线
  Fig.2 The theoretical power consumption profile of the dynamic ecg recorder performing different tasks
4 穿戴式医疗设备的MCU选型案例
  血氧饱和度的监测是了解人体心血管生理状况的重要手段,设计一款腕带式血氧饱和度监测仪,设计目标:基于反射式光电容积脉搏波的测量方法,实现无创、连续地检测人体动脉血的血氧饱和度;对脉搏波信号进行处理、分析,计算得到心率和呼吸频率这两个重要的生理参数;当用户的血氧饱和度或心率超出正常预定范围时,会自动报警提醒。
基于ARM Cortex-M0+内核的穿戴式医疗设备MCU选型分析
  图3 腕带式血氧饱和度监测仪的功能框图
  Fig.3 The function block diagram of wrist-wearable pulse oximetry
  根据设计方案和目标进行系统功能规划,腕戴式血氧饱和度监测仪的功能框图如图3所示。该设备对MCU的特殊要求有:
  (1) 高能效,即低运行功耗、超低休眠功耗和较高的运算性能;
  (2) 低功耗的ADC,采样精度不低于10 bit,脉搏波采样频率设为200Hz;
  (3) USB控制器,需要通过USB接口烧写程序或与主机通讯。
  综合考虑了该设备对MCU性能、功耗以及外设所提出的要求,可以分三个步骤来进行MCU选型:
  (1) 结合前文对不同内核的分析,选择低功耗、高性能的Cortex-M0+内核;
  (2) 根据Cortex M0+内核MCU系列的横向比较,选择集成了低功耗12 bit ADC的STM32L0系列,满足长时间采样的需求;
  (3) 考虑到带USB控制器的型号, 可以选择STM32L052C8作为设备的主控制器,从而达到在性能、功耗、成本和体积方面的最佳平衡。
  在实际的MCU选型中要具体问题具体分析,根据现有的MCU系列和设备的切实需求,做出最恰当的抉择。