想要在物联网(IoT)市场占据一席之地,原始设备制造商(OEM)必须加快创新的步伐。物联网的应用让一切变得无限可能,成功的企业会敦促其开发人员不断拓展和采取新的、更实用的方法来发挥传感器的功能,监测不同类型的数据,掌控整个设备的生态系统。
物联网应用覆盖广泛,包括可穿戴设备、汽车、住宅、工业、乃至城市等众多领域。这些应用需要更加高效节能的、创新的、安全的体系作为支持。应用程序十分重要,旨在实现软件开发的直观性和易用性。
微控制器(MCU)作为物联网产品的核心,选择合适的 MCU 是满足客户当前和未来需求的关键。本文将探讨当今不断增强的嵌入式 MCU 的丰富功能,MCU 在加速设计的同时还可实现创新应用。在第一部分,我们会介绍到先进的工艺技术、低功耗设计技术、多核系统的功耗问题、多核间的通讯、串行存储器接口以及系统安全性。
物联网市场(增长最快的引擎):
物联网技术不断改变我们的日常工作和生活方式,使我们的生活更加经济、便捷、舒适和智能化。物联网市场可以大致分为两大类:消费型物联网和企业物联网。
消费型物联网包括住宅、生活方式、健康和出行。个人用户可以通过这些物联网设备产品提高其生产力、安全性和生活质量。从智能住宅到联网汽车,消费者市场正在为下一波浪潮做好准备。
图1:消费型物联网市场细分
企业物联网的覆盖范围巨大,包括零售、医疗、能源、出行、城市、制造业和公共服务。企业物联网细分市场会改变组织和社区,从而创造一个实现经济增长的新时代。物联网通过连接数据、人员和机器来提高生产力、生产效率以及日常运营水平。企业物联网也可以作为帮助企业识别未开发领域新增长机会的工具。
图2:企业物联网市场细分
工艺技术(尺寸 — 十分重要):制造 MCU 的工艺技术对于其本身的性能、低功耗和成本而言至关重要。物联网应用需要高效的有源功耗和低功耗模式消耗来提高系统的整体功效。随着制造技术的不断进步,促使硅核心面积不断缩小。同一块硅片上可以制造出更多的 MCU,从而降低了芯片的整体成本,性能和功耗也因此直接受到影响。尺寸的缩小减少了开启/关闭每个晶体管所需的电流,同时保证了时钟频率不变。因此,更小的芯片意味着具备更高的的最大时钟频率,可以在较低的功耗下实现更高的性能。
例如,用于制造赛普拉斯半导体 PSoC 6 BLE 系列 MCU 的 40 纳米工艺技术,为各种物联网应用提供了高性能,且高效节能的解决方案。深度睡眠时的电流仅为几微安,且能够完全保留RAM数据。运行、睡眠、低功耗运行和低功耗睡眠等其他功耗模式,助力开发人员能够在灵活地优化系统功耗的同时根据需求保持应用的高性能。
图3:用于物联网应用的低功耗 MCU 框图
功率(至关重要):设计物联网设备时所面临的一大挑战是高能耗。大多数物联网设备处于实时在线、小体积,这意味着自身电池容量非常有限。MCU 供应商在优化其在物联网应用时需要考虑诸多因素,比如:
改进工艺技术
提供高度灵活的功耗模式
实现功耗优化过的硬件 IP 模块
更高的集成度以减少组件数量
优化闪存频率
启用高速缓存
支持更大范围的工作电压
然而,在工艺技术缩小体积、提高性能、改进功耗和集成度的同时,也出现了电流泄漏的管理问题,尤其是在低功耗模式下。为了应对电流泄漏问题的挑战,MCU 供应商采用了特殊的晶体管工艺技术,如多栅器件、高压晶体管/逻辑/电路、专门设计的存储单元以及其多方面的技术。
灵活的功耗模式能够促使开发人员安排独立系统活动,从而优化整体功耗。提供多种可以在低功耗模式下运行且可以在不唤醒 CPU 的情况下被唤醒执行其功能的外设,是这方面的关键技术。一些 MCU 还提供外围设备,只能执行有限功能的特殊低功耗工作模式(例如较低的工作频率和电压)以进一步优化应用功耗,甚至可以设计优化功耗的特定外设,即BLE 无线电可以采用支持低功率无线通讯的设计。
影响功耗的另一个因素是非易失性(NV)内存访问,尤其是使用闪存(NV存储器)存储固件代码的 MCU。闪存访问的任何优化都会大大降低功耗,其目标是尽量减少闪存访问的频率。这里使用了两种常用的技术,其中一种是提供一个高速缓冲存储器。这样,实际的代码存储器(闪存)就无需在每个执行周期都被访问。另一种方法是增加一个周期内获取的数据量,通过使用范围更广的闪存访问降低闪存的访问频率。
基于物联网的 MCU 也可以提供灵活的电源系统。在支持宽电源电压范围的情况下,MCU 可以由多个电源供电。例如像健身跟踪器这类简单的物联网应用,可以由纽扣电池来供电,而智能手表这类复杂的物联网应用则需要由 PMIC (电源管理集成电路)供电。另外,一些 MCU 通过其内部的降压转换器来有效地调节自身电源。
在考虑 MCU 的功耗模式时,超越其基本架构十分重要。例如,标准 ARM CPU 内核支持运行、睡眠和深度睡眠。附加功耗模式通常由特定的 MCU 供应商添加。例如,赛普拉斯的 PSoC 6 BLE MCU可执行包括,低功耗运行、低功耗睡眠和休眠状态在内的六种工作功耗模式。
图4:PSoC 6 BLE MCU 的功耗模式转换示例
多处理器 MCU(加快并行应用程序任务的运行速度):基于物联网系统功能特性的增长,其复杂性也随之增加,而实际尺寸则越来越小。MCU 制造商的目标是提高系统的性能,同时尽可能降低尺寸和减少功耗。多核 MCU 和片上系统(SoC)通过在单个芯片中集成更多功能和最大限度地减少芯片面积提供更高的性能。多核处理器是包含两个或更多个独立核心(或 CPU)的 MCU 或 SoC。这些内核通常集成在单个芯片上,它们也可以作为一个封装中的多个芯片。
多核 MCU 有助于提供高性能并保持小尺寸。可穿戴设备等典型的物联网设计需要多个MCU,包括:一个用于无线通信的 BLE 控制器、用于执行用户界面的 Touch MCU 和一个用来实现该应用程序运行的主要的 MCU。这三种 MCU 的功能可以由一个高度集成的多核 MCU 提供。
多核 MCU 可带来许多其他益处。例如,它可以集成足够的资源使 CPU 能够并行处理密集型任务,从而充分发挥多任务处理的效率。这也使开发人员可以有效地将系统事件分配给特定的内核,从而达到功耗和性能目标。再比如,在双核可穿戴设计中,可以将需要较少 CPU 干预的周期性功能(例如无线广播和触摸感应)分配给一个内核。其他“频繁接触”的功能,如需要 CPU 频繁干预的传感器融合等,可以分配给另一个内核。当在系统中运行多个应用程序时,这种分区缩短了延迟时间。通过整合协议栈和程序存储器的集成还可以提高效率。
图5:物联网多核 MCU 示例
图6表示的是一个多核 MCU — 赛普拉斯 MCU PSoC 6 BLE。该双核 MCU 具有两个32位 ARM Cortex CPU — Cortex-M4 和 Cortex-M0+。这两个 CPU 都是具备一个32位的数据路径、寄存器和存储器接口的32位处理器。Cortex-M4是专为实现短中断响应时间、高代码密度和高32位吞吐量同时保证严格的成本和功耗预算而设计的主 CPU。Cortex-M0+ 作为辅助 CPU,用于提供网络安全、物理安全和保护功能。Cortex CPU 执行 Thumb指令集的一个子集,并具有两种被称为线程模式和处理者模式的操作模式。这些 CPU 在退出复位并执行应用程序软件时会进入线程模式。为了处理异常情况,CPU 会进入处理者模式。当所有异常处理完成后,CPU 返回到线程模式。