如何选择合适的基于ARM的MCU

简介: 并非所有基于ARM架构的MCU都能提供相同水平的性能和能效,因此选择合适的方案是非常重要的。许多MCU供应商组合包括主题上的数百种变体。虽然看起来基于ARM Cortex-M的MCU的出现可能是这一广泛选择的核心,但实际上总有很多32位选项可供选择。

并非所有基于ARM架构的MCU都能提供相同水平的性能和能效,因此选择合适的方案是非常重要的。
许多MCU供应商组合包括主题上的数百种变体。虽然看起来基于ARM Cortex-M的MCU的出现可能是这一广泛选择的核心,但实际上总有很多32位选项可供选择。
在过去,对任何给定指令集的支持只是选择过程中的一个重要元素,但是由于ARM,指令集的相关性可能已经变得没有实际意义。围绕Cortex-M内核的生态系统意味着工程师可以在一个架构上合理地标准化。但这仍然有许多功能需要比较。在今天的嵌入式应用程序中,这将重点放在一个简短的参数列表中,这些参数仍然可以根据需求进行测量。那么让我们来看看需要考虑的八个最重要的MCU功能。

有功功率
与使用CMOS技术制造的所有集成器件一样,MCU仅在其逻辑门改变状态时消耗功率。现代MCU中CMOS门的数量意味着功耗可能会变得很大,特别是在高时钟速率下。因此,有源功耗是近年来大多数设备制造商关注的关键数字和面积。
大多数MCU将努力在有功功耗和处理性能之间取得平衡。即使相同的内核位于器件的核心,该参数也可能因MCU供应商的设计专业知识而有很大差异。

性能
了解性能指标非常重要,特别是在查阅数据表时,因为规格经常在“理想”(或更不适合)的操作条件下报告。要提供高性能和低有功功率是困难的,同样,一个领域MCU供应商可以区分他们的产品。仔细比较数据表性能规格,并向MCU供应商询问结果背后的实际运行条件。

响应
保持有功功率低的一种方法是降低工作频率,这不可避免地并且很自然地导致睡眠模式。任何MCU都可以进入消耗最少有功和静态功耗的模式,但总是通过时钟和功率门控来实现,即将时钟或功率移到MCU的特定区域。在不适当考虑目标应用的要求的情况下使用该技术的惩罚可能导致MCU在需要时恢复其职责的速度很慢。从深度睡眠模式快速唤醒是MCU供应商中一个激烈争议的参数。

能源效率
如果降低响应性是使用睡眠模式的惩罚,则益处是较低的能量消耗。在这里,趋势是已经有一段时间并且实施一系列睡眠模式,为正确的操作条件提供适当的效率水平。降低功耗和快速唤醒的休眠模式应该补充深度睡眠模式,在应用需要时,即使以更长的唤醒时间为代价,也能将功耗降至最低。超低功耗有源和睡眠模式的组合以及非常快的唤醒时间定义了MCU的能效。
_2

能源效率由功耗随时间变化定义,即最低有效和睡眠模式能量加上最快的唤醒时间。

外设
MCU设计的最新发展是在外围子系统中实现更高的智能,允许各种外设自动运行。除了为应用程序开发带来新的维度之外,自主外设的最重要的好处是它们允许内核更长时间保持(深度)睡眠模式。自动外围设备无需定期从深度节能睡眠模式中出现以检查事件,而是能够注册事件并决定是否需要核心干预。如果您的应用需要出色的能效,请务必选择具有支持自主外设操作的架构的MCU。

情报
自治不需要以单个事件结束; 一些MCU现在实现了允许多个外设进行互操作的系统,从而在唤醒CPU内核之前解析更复杂的条件或一系列相互依赖的事件。MCU供应商对该功能的支持要少得多,但可以在特定应用中提供显着优势,特别是那些由电池供电且需要检测不频繁事件或条件的应用,例如环境变化(湿度,烟雾和二氧化碳)或入侵。

接口
一些供应商提供的MCU能够直接和智能地连接到更广泛的信号。MCU本质上是数字的,但通常具有高水平的混合信号能力,例如集成模拟到数字和数字到模拟转换器。然而,由于我们生活的世界本质上仍然是模拟的,因此越来越需要为模拟信号提供更大的支持,特别是那些来自传感器的模拟信号。物联网(IoT)将由先进的传感器启用,这些传感器将包含很小的模拟信号。能够直接连接到小型电容式,电感式或电阻式传感器,并在唤醒CPU之前智能地解析信号,这无疑将成为面向物联网设计的常见用例。

软件
虽然如前所述,ARM Cortex系列拥有强大且不断发展的软件提供商生态系统,但终端应用程序仍需要专用的应用程序代码。软件开发现在被认为是工程资源的最大单一消费者,因此在选择合适的MCU时,考虑生态系统和MCU供应商提供的软件支持水平和工具质量非常重要。MCU供应商仍然必须提供强大且用户友好的软件开发工具。即使IDE由首选合作伙伴提供,也必然会有特定差异化功能所需的支持元素。寻找能够提供非常全面的开发生态系统的MCU供应商,旨在简化设计过程。

_1

Silicon Labs的Simplicity Studio生态系统是一个以能源优化工具为特色的综合开发平台的主要示例。
为选择最合适的32位MCU需要全面了解应用和可用的MCU解决方案。在高层面上来看,许多基于ARM的MCU可能看起来一样,但事实是它们不是。通过仔细定义您的应用需求,工程师将能够更好地评估供应商选项并找到理想的32位MCU。

相关文章
|
27天前
|
数据采集 监控 安全
精简高效与安全兼备:ARM32与MCU32平台上的信息协议设计新思路
精简高效与安全兼备:ARM32与MCU32平台上的信息协议设计新思路
214 1
|
1月前
|
存储 缓存 安全
【ARM架构】ARMv8-A 系统中的安全架构概述
【ARM架构】ARMv8-A 系统中的安全架构概述
31 0
|
1月前
|
存储 小程序 中间件
单片机中MCU跑RTOS相比裸机的优势
单片机中MCU跑RTOS相比裸机的优势
24 1
|
7月前
|
Linux C++
基于ARM-contexA9-Linux驱动开发:如何获取板子上独有的ID号
基于ARM-contexA9-Linux驱动开发:如何获取板子上独有的ID号
75 0
|
9月前
|
机器学习/深度学习 存储 弹性计算
阿里云服务器X86计算、ARM计算、GPU/FPGA/ASIC等架构区别及选择参考
在我们选购阿里云服务器的时候,云服务器架构有X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、超级计算集群之分,很多初次接触阿里云服务器的用户并不知道他们之间有何区别,本文来介绍一下阿里云服务器各个架构的特点及适用场景,以供大家了解他们之间的区别,从而对选择哪种架构做一个参考。
999 1
阿里云服务器X86计算、ARM计算、GPU/FPGA/ASIC等架构区别及选择参考
|
9月前
|
机器学习/深度学习 弹性计算 编解码
阿里云服务器架构ARM计算和X86区别?
阿里云服务器架构ARM计算和X86区别?阿里云服务器架构有什么区别?X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、超级计算集群有什么区别?阿里云服务器网分享云服务器ECS架构详细说明:
536 0
|
缓存 芯片
ARM裸板开发——UART通信方式及使用(二)
ARM裸板开发——UART通信方式及使用
164 0
|
Linux 编译器 Shell
arm嵌入式Linux系统移植实例过程及问题
arm嵌入式Linux系统移植实例过程及问题
460 0
|
存储 算法 开发工具
除了ZYNQ还有哪些内嵌ARM硬核的FPGA?
除了ZYNQ还有哪些内嵌ARM硬核的FPGA?
624 0
除了ZYNQ还有哪些内嵌ARM硬核的FPGA?
|
人工智能 架构师 测试技术
ARM 推出全新 CPU 和 GPU:首次基于 Armv9 指令集,性能显著提升
ARM 推出全新 CPU 和 GPU:首次基于 Armv9 指令集,性能显著提升
370 0
ARM 推出全新 CPU 和 GPU:首次基于 Armv9 指令集,性能显著提升

热门文章

最新文章