如果您希望可以时常见面,欢迎标星收藏哦~
来源:内容由半导体行业观察(ID:icbank)编译自allaboutcircuits,谢谢。
仅执行控制任务的 MCU 是一回事。但在当今的 AI 时代,真正支持 AI 的 MCU 需要提供更多功能。了解重要因素 — 从优化的神经处理单元 (NPU) 到节能架构,再到巧妙的内存拓扑。
执行嵌入式控制功能而没有任何原生人工智能 (AI) 功能的传统微控制器 (MCU) 永远存在市场。但是,在端点执行 AI 功能的需求迅速增长,这将越来越决定新产品设计中使用的 MCU 的规格。图 1 在宏观层面上说明了这一点。
MCU 市场的竞争将越来越被那些能够将神经处理单元 (NPU) 功能与传统 MCU 特性和功能紧密结合的人所赢得。MCU 制造商为这种新型混合 CPU/NPU 设备采用的架构对 OEM 的产品设计有着实际影响,会影响其性能和响应时间、功耗以及开发产品的工程团队的生产力。
所有这些都是为了满足最终消费者的期望,他们希望以实惠的价格在可穿戴设备、可听设备、健身和健康监测器、智能相机和游戏等产品中体验流畅、实用的功能,而不会出现可察觉的延迟,并且对云端的依赖较少。
负责选择具有 AI 功能的 MCU 的工程师当然会依赖性能基准和其他技术数据,但他们也将受益于深入了解 NPU 集成到熟悉的嵌入式控制器结构中的方式。
关于 MCU 中神经网络功能的竞争对手实现的争论尚未爆发,仅仅是因为很少有制造商能够真正满足终端物联网设备对有效机器学习 (ML) 功能的市场需求。
总体而言,MCU 市场的巨头们更倾向于通过在其软件开发套件 (SDK) 中添加 ML 功能来增强现有产品组合,同时保持基本不变的传统硅 IP。在几乎所有情况下,这种 IP 都基于 Arm 的旧版 Cortex-M CPU 架构来执行 ML 工作负载,而在极少数情况下,会采用专有的神经网络协处理器。
除此之外,人们正在使用传统的内部存储器实现,这些存储器容量太小、共享过度,并且没有放置在靠近神经处理活动的适当位置,无法以所需的速率和功耗解决 ML 推理。当被迫使用片外存储器时,系统成本、尺寸和功耗会增加,而安全级别会下降。
这种立场不会成立。实际经验向 MCU 用户表明,神经网络操作很难映射到传统 MCU 核心的控制导向型 RISC CPU 上。为了保持在功耗预算之内并满足性能要求,用于端点应用的 MCU 需要针对乘法累加 (MAC) 操作进行优化的 NPU 硬件,这些操作是神经网络应用的基础,并且连接到具有极高带宽的内存。
从市场上的方面可以看出,不少MCU 采用当代的 Cortex-M55 CPU 内核,其中包括名为 Helium 的单指令多数据 (SIMD) 矢量处理扩展,并与 Ethos-U55 NPU 协处理器配对。
从相关对比我们可以看到,嵌入式 CPU 本身将难以处理有意义的 ML 工作负载,因为高度并行的 ML 网络得出的推理必须以串行方式解决,这会花费过多的时间并消耗大量能源。Cortex-M55 是最好的嵌入式 CPU 架构之一,并且已经提供了良好的数据,在 ML 工作负载方面已经比前几代 Cortex-M CPU 内核好 5 倍左右。
但是,即使 Cortex-M55 已经如此出色。但与仅使用 CPU 相比,使用完全加速时的性能提升超过或接近两个数量级。如果您考虑到 Cortex-M55 的性能已经比其他广泛使用的 Cortex-M 架构高出约五倍,您通常可以将这些收益再乘以 5 倍。对于语音识别,每次推理的速度大约快 800 倍,能耗降低 400 倍。
而且,与仅使用 CPU 相比,将基于 SIMD 的矢量化数学功能引入 MCU 空间可显著提高性能和功耗,因为它允许进行更多并行处理。Helium M-Profile 矢量扩展 (MVE) 借助 Cortex-M55 CPU Armv8.1-M 架构引入了此空间。
由此可以得出结论,专用 NPU 协处理器大放异彩。ML 工作负载由编译器在 NPU 和 CPU 之间分配,通常 95% 或更多的 ML 工作负载落在 NPU 上,具体取决于 ML 模型。NPU 通过以大规模并行方式在硬件中执行 MAC 操作,以极快且高效的方式生成推理。作为一项重要的附带好处,当 NPU 工作时,CPU 可以进入休眠状态以节省能源或执行其他任务。
随着时间的推移,所有用于终端机器学习应用的 MCU 都将成为混合 CPU/NPU 设备。这与过去几十年 MCU 领域的其他基本趋势一样不可避免,例如转向基于闪存的 MCU,以及几乎每个 MCU 都集成 USB 连接。
那么问题是,MCU 制造商关于集成神经网络功能的架构选择会如何影响 OEM 的开发团队?
根据经验,OEM 开发人员在为端点 ML 应用程序选择 MCU 时应该研究混合 CPU/NPU 架构的三个最重要的方面。
快速、低功耗的 ML 推理取决于内存类型和拓扑。
最大程度延长电池寿命
提高开发人员的工作效率
让我们逐一详细检查这些要点。
1
内存类型和拓扑
在许多情况下,OEM 将在终端实施 ML,因为应用程序需要用户认为是即时的响应。此外,这些产品中的大多数将是便携式和无线的,因此小型电池的长寿命至关重要。
增强的处理能力是实现高性能和高能效的关键,但如果没有优化的内存系统作为后盾,结果将无法达到预期。
我们认为,需要使用大型 SRAM 来保存传感器数据(例如来自摄像头和麦克风的输入),大型非易失性存储器则包含 ML 模型本身以及应用程序代码。当大型片上存储器以这种方式分布以最大限度地减少竞争总线流量时,并发内存事务将蓬勃发展,瓶颈将被清除,内存访问时间将最小化,并且功耗与使用小型电池兼容。
请记住,在嵌入式 ML 系统中,生成推理所消耗的大部分能量来自将数据从一个地方移动到另一个地方。在内存不足且内存拓扑较差的系统中,仅仅来回移动数据所消耗的能量就可能超过 CPU 和 NPU 处理功能所消耗的能量。
此外,如果溢出数据或代码要求强制使用外部片外存储器,则能量需求可能会增加一个数量级,并且还会使敏感代码和 ML 模型 IP 面临潜在的安全漏洞。
2
最大程度延长电池寿命
我们很早就意识到,在不久的将来,终端本地 ML 能力的集中度将大幅提升,同时这些产品的物理尺寸将迅速缩小,尤其是可穿戴设备。智能眼镜、健身环和听力增强器都是支持 AI 的可穿戴设备的例子,预计市场对这些设备的需求将大幅增长。所有这些都需要由更小的电池供电。
延长电池寿命的方法有多种。以下是两个示例:
对系统进行分区,使芯片的低功耗部分可以始终处于开启状态。这个始终开启的部分提供了强大的计算能力,使其能够选择性地唤醒芯片中性能更高的部分来执行繁重的工作负载,然后返回睡眠状态
电源管理系统会动态地仅为芯片需要的部分供电,而在不需要时将其关闭。
为了想象这带来的优势,想象一下一个智能占用摄像机,它使用高效对以低帧速率连续扫描房间来对有效事件(例如人摔倒在地板上或特定的手势)进行分类,从而唤醒高性能对来识别一个人或多个人,检查出口是否被堵塞,拨打电话寻求帮助等等。
在这种情况下,摄像头可以智能地保持警惕,减少误报,并延长电池寿命。这两对 CPU+NPU 核心的类似用途可以同样适用于许多不同应用中的声音、语音、单词、OCR 文本、振动和传感器数据的分类。
3
提高开发人员的生产力
对于许多精通实时嵌入式控制的工程师来说,人工智能系统是一个陌生的领域,需要采用新的软件开发方法。但这种陌生感并不一定延伸到开发环境本身。
MCU 世界已将 Arm Cortex-M 架构标准化为嵌入式控制,现在 Arm 的 Ethos NPU 正在加入这一强大的支持生态系统,并享受其所有熟悉的优势。但在嵌入式 NPU 引擎领域,IP 供应商提供了多种其他产品供您选择,一些知名的 MCU 制造商正在创建自己的专有 NPU IP。
尽管有很多,但本文描述了三个最重要的基础,在这些基础之上,为端点机器学习提供 MCU 的战斗似乎势必会打响。
点这里加关注,锁定更多原创内容
*免责声明:本文由作者原创。文章内容系作者个人观点,半导体行业观察转载仅为了传达一种不同的观点,不代表半导体行业观察对该观点赞同或支持,如果有任何异议,欢迎联系半导体行业观察。
今天是《半导体行业观察》为您分享的第3848内容,欢迎关注。
『半导体第一垂直媒体』
实时 专业 原创 深度
公众号ID:icbank
喜欢我们的内容就点“在看”分享给小伙伴哦 |
|