ARM 内核架构根据需求和发展时间,分为多种系列和类型,主要有:
- ARM7系列:2010年前ARM公司早期推出的处理器系列之一,主要应用于嵌入式系统。它包括ARM7TDMI、ARM7TDMI-S等多个型号,具有低功耗、低成本、高性能等优点。
- ARM9系列:该系列是ARM公司推出的高性能处理器系列,相比ARM7系列,在性能和功能上有所提升。它包括ARM926EJ-S、ARM946E-S等多个型号,广泛应用于智能手机、平板电脑、数字电视等领域。
- ARM Cortex系列:该系列是ARM公司最新的处理器系列,基于ARMv7架构(ARMV7 并非 ARM7),分为Cortex-A、Cortex-R和Cortex-M三个类型。其中,Cortex-A系列面向高性能应用,支持虚拟内存和复杂的操作系统,多用于大型系统开发,一般适配linux系统开发;Cortex-R系列面向实时应用,具有高可靠性和低功耗的特点,面向深层的嵌入式实时应用;Cortex-M系列面向微控制器应用,具有低成本、低功耗和易于编程等优点。
- ARM11系列:该系列是ARM公司针对下一代消费类电子、无线设备、网络应用和汽车电子产品等领域推出的高性能处理器系列。它基于ARMv6架构,具有高性能、低功耗和可扩展性强的特点。
Cortex-M系列使用最为广泛,根据性能和功能主要分为:M0、M0+、M3、M4、M7等系列,不同内核的单片机,其价格也是不同
- M0和M0+:属于基础版本,以此内核生产的单片机如STM32等,并非高性能单片机。M0只有特权模式,并且不支持MPU,具有三级流水线(取指、解析、执行);而M0+可以选择是否支持非特权执行等级和MPU,并且仅有二级流水线(取指+预解析、解析+执行),减少了处理器内振器的数量,降低了动态功耗。
- M3:目前最主流的设计内核选型,应用范围广。相比M0,它在性能和功能上有所提升。它包括了一个高性能的32位CPU,支持高效的数据处理和低延迟中断处理。此外,它还包括了许多高级功能,如嵌套向量中断控制器(NVIC)、微控制器调试接口(Micro Trace Buffer)等。
- M4:在M3的基础上进一步增强了数字信号处理(DSP)和浮点运算能力。它包含了一个32位CPU,并增加了专门用于DSP和浮点运算的硬件支持。相比M3,M4处理器添加了DSP的数据(浮点数)处理的指令。如果应用的领域需要大量浮点数据的运算,那么选择M4的内核会大大提高处理器性能和运算速度。
- M7:性能好和功耗高兼具,适合追求极致性能项目。
开发过程中芯片选型时,需要考虑较多因素,如:
- 产品的性能需求
- 该芯片是否大规模应用
- 芯片资料是否完整齐全(datasheet, manual, sdk etc.)关系着开发的难易程度
- 是否可以有其他单片机实现pin 2 pin替换,芯片的备选项,降低项目风险