ARM Cortex-M 处理器家族介绍和比较
品开发
7.1为什么Cortex-M系列处理器容易使用
虽然Cortex-M系列处理器有非常多的特性,但是很容易使用的。例如,差不多所有的开发都可以用像C语言这样的高级编程语言。虽然,基于Cortex-M系列处理器产品都大不相同(例如,有不同大小的内存,不同的外设,性能和封装等等),架构的一致性让开发者一旦对他们其中的一块有开发经验,就很容易开始使用新的Cortex-M处理器。
为了实现更容易的软件开发,更好的软件重用性和可移植性,ARM开发了CMSIS-CORE,这儿CMSIS表示Cortex-Microcontroller Software Interface Standard,CMSIS-CORE通过一组APIs为处理器的各种特性像终端管理控制提供了一个标准的硬件抽象层(HAL), CMSIS-CORE集成在各种微处理器厂商提供的设备驱动程序库里,被各种开发工具套件支持。
除了CMSIS-CORE, CMSIS还包含一个DSP软件库(CMSIS-DSP)。这个库提供了为Cortex-M4 和 Cortex-M7优化过的各种DSP函数,当然也支持其他的Cortex-M系列处理器。CMSIS-CORE 和 CMSIS-DSP库都是免费的,可以从GitHub (CMSIS 4, CMSIS 5)下载到,并被许多工具厂商支持。
7.2处理器选择
对大多数微控制器用户来说,微控制器设备的选择标准主要取决于成本和外设的支持情况。但是,你们中间的很多人可能是为下个芯片产品选择处理器核心芯片设计者,这种情况下,处理器 本身会是考虑的焦点。
明显的,在这样的情况下,性能,芯片面积,功耗和成本会是至关重要的因素。同时,还有各种其他的因素需要考虑。例如,如果你在开发一款互联网连接产品,你也许需要选择有TrustZone安全扩展和MPU的处理器,这样你可以用TrustZone保护关键的安全特性数据,运行某些任务在非特权级别并用MPU来保护内存空间。另一方面,如果你需要在某些方面认证你的产品,Cortex-M23, Cortex-M33, Cortex-M3, Cortex-M4 和 Cortex-M7支持的ETM生成的指令跟踪会对代码覆盖率认证非常有帮助。
在其他的芯片设计领域,如果你正在设计可以运行在能量采集设备供电的小传感器,那么Cortex-M23 和 Cortex-M0+会是最好的选择,因为他们非常小并且做了最先进的功耗优化。
7.3生态系统
使用ARM Cortex-M系列处理器的关键优势之一是广泛的成熟设备,开发工具链和软件库的支持。目前有
-超过15家微控制器厂商正在销售基于ARM Cortex-M系列内核的微控制器产品
-超过10种开发套件支持ARM Cortex-M系列处理器
-40多家操作系统厂商的操作系统支持Cortex-M系列处理器
这给了你大量选择,让你可以获得适合目标应用的最好的设备,开发工具和中间件组合。
8总结
性能,特性和芯片面积,功耗之间总是需要平衡。为此,ARM开发了各种Cortex-M处理器,拥有不同级别的指令集特性,性能,系统和调试特性。本文介绍了Cortex-M处理器家族各种异同。
虽然存在这差别,但架构的一致性和CMSIS-CORE标准化的APIs都让Cortex-M系列处理器软件有更好的移植性和可重用性。同时,Cortex-M系列处理器非常方便使用。因此,Cortex-M系列处理器很快成为微控制器市场的最受欢迎的32位处理器架构。
- 分析:2011年商用PC市场发展情况乐观(03-01)
- 富士通半导体与ARM签署全面授权协议(03-07)
- ARM手机芯片市场份额已超90% 英特尔倍感压力(03-17)
- 中国正探寻如何快速进驻HPC芯片领域(03-23)
- 美国国家半导体推出10款全新SolarMagic IC芯片 (05-03)
- IDC:中国一季度平板电脑出货量达86万台(07-20)