ARM Cortex系列那么多处理器,该怎么区分?

💡 原文中文,约2700字,阅读约需7分钟。
📝

内容提要

ARM Cortex系列处理器适用于不同市场,包括Cortex-A系列适用于复杂操作系统和用户应用程序,Cortex-R系列适用于实时系统,Cortex-M系列适用于低性能端。这些处理器具有高效能、低功耗和成本等特点,适用于各种应用领域。

🔎

延伸解读

Cortex-A、R、M的定位差异

Cortex-A、R、M三类处理器面向不同市场:A系列用于复杂操作系统和用户应用,支持高计算需求;R系列针对实时系统,强调可靠性和实时响应;M系列集中在低性能端,适合低功耗和成本敏感场景。选型时需根据应用是否需要操作系统、实时性要求以及功耗成本约束来决定。

Cortex-M的架构变化与迁移成本

Cortex-M处理器采用与经典ARM处理器(如ARM7TDMI、ARM9)显著不同的架构,仅支持Thumb指令集并扩展到Thumb-2,内置嵌套向量中断控制器,中断处理可用标准C语言编程,响应速度确定且低延迟。这些变化意味着为经典ARM编写的汇编代码需要修改,老项目需重新编译才能迁移到Cortex-M平台。

Cortex-R系列的性能与实时特性

Cortex-R系列专为实时系统设计,其中R4基于ARMv7-R,用于硬盘控制器、无线基带等深层嵌入式应用;R5扩展了功能集,支持低延迟外设端口和加速器一致性端口,基于40nm工艺可近1GHz运行,提供1500 Dhrystone MIPS;R7是性能最高的Cortex-R处理器,基于40nm工艺可超1GHz,提供2700 Dhrystone MIPS,适合高性能实时SoC。

❓

Q&A

ARM Cortex系列处理器分为哪几类?各自面向什么市场?

ARM Cortex系列分为三类:Cortex-A面向尖端的基于虚拟内存的操作系统和用户应用;Cortex-R针对实时系统;Cortex-M面向微控制器。

Cortex-A系列处理器的主要特点是什么?

Cortex-A系列是用于复杂操作系统和用户应用程序的应用程序处理器,支持ARM、Thumb和Thumb-2指令集,适用于高计算要求、运行丰富操作系统以及提供交互媒体和图形体验的应用领域。

Cortex-M处理器与经典ARM处理器(如ARM7TDMI)在架构上有哪些主要区别?

Cortex-M处理器架构与经典ARM处理器显著不同:仅支持ARM Thumb指令,并扩展到同时支持16位和32位指令的Thumb-2版本;内置嵌套向量中断控制器,自动处理中断优先级、屏蔽、嵌套和系统异常;中断处理函数可用标准C语言编程,中断响应确定且低延迟;向量表变为中断和系统异常处理函数的起始地址;寄存器组和编程模式也有改变。因此,许多经典ARM汇编代码需要修改,老项目需重新编译才能迁移。

Cortex-R系列有哪些型号?它们分别针对什么应用?

Cortex-R系列包括R4、R5和R7。R4是第一个基于ARMv7-R体系的嵌入式实时处理器,用于大容量深层嵌入式片上系统应用,如硬盘驱动控制器、无限基带处理器、消费产品手机MTK平台和汽车系统的电子控制单元。R5基于ARMv7-R体系,扩展了R4的功能集,支持更高级别的系统性能、效率和可靠性,并加强错误管理,适用于可靠的实时系统。R7是性能最高的Cortex-R系列处理器,是高性能实时SoC的标准,设计用于65nm至28nm工艺,提升能效、实时响应性、高级功能和简化系统设计。

Cortex-A系列处理器按性能从高到低如何排序?

从高到低大体排序为:Cortex-A73、Cortex-A72、Cortex-A57、Cortex-A53、Cortex-A35、Cortex-A32、Cortex-A17、Cortex-A15、Cortex-A7、Cortex-A9、Cortex-A8、Cortex-A5。

Cortex-M处理器在低功耗和成本敏感应用中有什么优势?

Cortex-M处理器家族集中在低性能端,但性能仍比许多传统微控制器强大,例如Cortex-M4和M7最大时钟频率可达400MHz。同时,该家族包含各种产品来满足不同需求,特别适合低功耗和成本关键的应用。

🏷️

标签

➡️

继续阅读