在当今的处理器世界中,从微小的物联网节点到智能手机,再到庞大的数据中心服务器,ARM 处理器以其卓越的能效比,已经占据了市场的半壁江山。ARM 公司独特的商业模式(专注于芯片架构的设计与授权,而非自行生产制造)使得全球众多半导体公司能够基于其架构开发出形态各异的处理器产品,共同构建了一个繁荣、开放且充满活力的技术生态。


在 ARM 架构漫长的发展史中,从 ARMv1 到 ARMv6,处理器型号通常以数字递增的方式命名,例如经典的 ARM7、ARM9 和 ARM11 系列。既然 ARMv6 的实现是 ARM11,那么 ARMv7 的实现顺理成章地应该叫 ARM12 了吧。然而,ARM 公司却特意没有使用 ARM12 这个名称,而是改用了 Cortex 这个新的系列名称。在 Cortex 发布时,ARM 公司的一位高管曾说:“不叫 ARM12 是为了强调这是一个全新的系列。”

这不仅仅是一个名字的变更,更标志着 ARM 产品战略的深刻转变。Cortex(大脑皮层)是人类神经系统的最高中枢,这个命名彰显了 ARM 打造业界顶级中央处理单元的雄心壮志。更深层次的原因在于,ARMv7 架构不再是单一的设计,而是针对不同市场需求进行了战略性细分,Cortex 品牌正是这一战略的载体。

ARM 公司根据各种应用领域,为 ARMv7 定义了三个子系列:

  • 专为微控制器领域优化的 ARMv7-M,对应于 Cortex-M 系列

  • 专为实时处理领域优化的 ARMv7-R,对应于 Cortex-R 系列

  • 延续并提升传统丰富应用领域的 ARMv7-A,对应于 Cortex-A 系列

这三个Cortex子系列的划分采用的正是对应的 Microcontroller、Real-time 和 Application 的首字母,并且,更妙的是,“A、R、M”这三个字母连接起来就是 ARM 的名称,看来玩命名ARM也是有一套的 

作为 ARM7/9/11 等经典处理器的正统继承者,Cortex-A 系列面向性能密集型的应用领域。它具备完整的操作系统支持(如 Linux、Android)、复杂的内存管理单元(MMU)以及强大的计算能力,是智能手机、平板电脑、服务器和网络设备等高端应用的核心。

Cortex-R 系列专为对实时性和可靠性有严苛要求的场景而设计。例如,汽车的制动系统、硬盘驱动器的控制器以及 5G 基带芯片等。这类处理器拥有紧耦合内存(TCM)和故障检测机制,确保任务能够在可预测的时间内完成,是高可靠性嵌入式系统的理想选择。

Cortex-M 系列的诞生是 ARM 全面进军微控制器(MCU)市场的里程碑。为了在巨大且多样化的 MCU 市场中提供最具竞争力的解决方案,Cortex-M 针对性地移除了 MMU 等在传统 MCU 应用中非必需的复杂功能,专注于实现极致的低功耗、低成本和高能效,也取得了巨大的成功。

指令集 (ISA) 与微架构

理解任何处理器,首先要区分两个核心概念:指令集架构 (Instruction Set Architecture, ISA) 和 微架构 (Microarchitecture)。这两者共同定义了一款处理器的能力与特性。

指令集架构 (ISA):是处理器与软件之间的接口规范,它定义了处理器能够理解和执行的指令集、寄存器、数据类型、内存模型、异常和中断处理等。它关乎“做什么”。例如,ARMv7-AARMv8-A 和 ARMv9-A 就是不同代的 ISA。ISA 的首要目标是保证软件的兼容性和生态系统的稳定性。ISA 的兼容性是软件生态的基石,为特定 ISA 编写的程序(在没有操作系统抽象的情况下)可以直接在所有实现了该 ISA 的处理器上运行。例如任何实现了 ARMv9-A 架构的处理器,无论是 ARM 自己设计的、还是苹果、高通自研的,都必须能正确执行为 ARMv9-A 编译的任何软件

微架构 (Microarchitecture):则是 ISA 的具体物理实现,它关系到处理器内部的电路设计,如流水线级数、缓存大小、分支预测器的算法、执行单元的数量等。它决定“如何做”以及“做得多快”。微架构的首要目标是在性能、功耗和面积 (PPA) 之间取得最佳平衡,这是芯片公司竞争的核心战场。实现微架构的例子如: ARM 自己的 Cortex-X4;苹果自研的 Everest (M2 高性能核);高通自研的 Oryon。它们可能都实现了相同的 ARMv9-A ISA,但它们的内部设计天差地别。

ARM 公司通过授权其 ISA(可获取授权后自研微架构)和微架构 IP(直接提供 Cortex 核心设计)两种模式,构建了其庞大的生态系统。ISA 保证了整个 ARM 生态的统一和繁荣,而微架构的差异化设计则是各大芯片巨头一较高下、展现自身技术实力的舞台。

像苹果、高通这样的顶级公司通过获取ARM的ISA授权,然后投入数百甚至上千名顶尖工程师,花费数十亿美元,从零开始设计属于自己的、独一无二的微架构,实现深度优化。

而通过授权微架构的方式,也有如高通、联发科、三星、NXP、TI、瑞芯微、全志、博通 等公司通过选择不同的Cortex微架构进行组合来构建其 SoC产品,这种模式催生了一个庞大且竞争激烈的半导体生态系统,这类SoC产品也是保持着相当开放的市场策略。

比如瑞芯微,基于ARM的Cortex微架构的授权,设计了像RK3506(3核[email protected]+Cortex-M0)、RK3562(4核 Cortex-A53@2GHz+1T算力NPU)、RK3576(4核 [email protected]+4核Cortex-A53@2GHz+6T 算力 NPU)这类的SoC产品。

基于瑞芯微的SoC、我们又有像创龙科技推出的各类瑞芯微国产工业评估板可以快速进行开发。

ARM 的开放授权模式创造了一个充满活力和竞争的“热带雨林”生态,催生了无数适应各种环境的、低成本、高集成的 SoC 物种。这片土壤完美地滋养了形态各异、功能丰富的板卡市场。开发者可以找到针对特定需求的、功能各异的评估板,将产品快速推向市场。

指令集的演进

ARMv7-A: 32 位时代的王者


ARMv7-A 是 Cortex-A 系列早期成功的基石,它是一个 32 位的 ISA。它引入了 NEON SIMD (单指令多数据流) 扩展,极大地提升了多媒体处理能力。同时,Thumb-2 指令集的引入,通过混合使用 16 位和 32 位指令,在性能和代码密度之间取得了卓越的平衡,统治了整个 32 位移动计算时代。

ARMv8-A: 迈向 64 位的革命


ARMv8-A 是 ARM 架构的一次革命性飞跃,全面引入了 64 位计算能力,以应对超过 4GB 内存的寻址需求和更复杂的计算负载。它包含两种执行状态:

  • AArch64:提供 64 位处理能力,拥有更庞大的虚拟地址空间和多达 31 个通用寄存器,是为现代高性能计算设计的全新状态。

  • AArch32:用于向后兼容,可以无缝运行为 ARMv7-A 编写的 32 位代码,保证了生态的平滑过渡。

ARMv9-A: 面向 AI 与安全的新纪元

作为近十年来最大的一次架构升级,ARMv9-A 在 ARMv8-A 的基础上,将重心放在了三个关键领域:安全、AI 与向量计算、性能

  • 机密计算架构 (Confidential Compute Architecture, CCA):引入了 Realm Management Extension (RME),在原有的安全世界(Secure World)和普通世界(Normal World)之外,创建了硬件隔离的“Realm”。应用程序可以在 Realm 中运行,即使是操作系统或虚拟机监视器(Hypervisor)也无法访问其数据,为数据安全和隐私保护提供了前所未有的保障。

  • 可伸缩向量扩展第二代 (SVE2):作为 NEON 的继任者,SVE2 提供了更强大和灵活的向量处理能力。它允许向量长度在 128 位到 2048 位之间以 128 位为增量进行选择,使得软件开发者可以编写与硬件实现无关的向量化代码,极大地增强了在机器学习(ML)、数字信号处理(DSP)和多媒体等领域的计算性能。

    为什么ARM11之后,没有ARM12了?
  • 内存标记扩展 (Memory Tagging Extension, MTE):为了解决长期困扰软件行业的内存安全问题(如缓冲区溢出),MTE 为内存的每个 16 字节块附加了一个小标签,并在指针中也嵌入了相同的标签。在访存时,处理器会检查两者是否匹配,如果不匹配则会立即引发异常,从而在硬件层面高效地检测并阻止内存安全漏洞。

ARMv9-A 并非简单的 “性能升级”,而是 ARM 针对未来 5~10 年计算需求的 “架构重构”—— 通过 SVE2 指令集夯实 AI 与 HPC 基础,通过 RME 安全域构建多层防护体系,通过 “动态能效优化” 平衡性能与功耗,最终实现 “从端侧(手机、汽车)到云端(服务器)” 的全场景覆盖。

Cortex-A 核心演进之路


通过分析从 ARMv7 到 ARMv9 时代的代表性 Cortex-A 核心,我们可以清晰地看到 ARM 在性能、功耗和面积(PPA)之间不断权衡与探索的演进路径。

下表综合了各主要核心的关键特性:

处理器核心 ARM ISA 位数 用途定位 发布年份 (约) 关键特点
Cortex-A8 ARMv7-A 32 单核性能 2005 首款 ARMv7-A 处理器,ARM 首款超标量
Cortex-A9 ARMv7-A 32 性能与功耗平衡 2007 首款乱序执行多核,移动时代的主力
Cortex-A7 ARMv7-A 32 高能效LITTLE核 2011 big.LITTLE 中的经典 ‘LITTLE’ 核
Cortex-A15 ARMv7-A 32 高性能big核 2010 big.LITTLE 中的经典 ‘big’ 核
Cortex-A53 ARMv8-A 64 高能效LITTLE核 2012 统治多年的 64 位高能效核心
Cortex-A57 ARMv8-A 64 高性能big核 2012 首批 64 位高性能核心
Cortex-A72 ARMv8-A 64 高性能big核 2015 A57 的功耗优化版,一代经典
Cortex-A55 ARMv8.2-A 64 高能效LITTLE核 2017 DynamIQ 时代的高能效核心
Cortex-A75 ARMv8.2-A 64 高性能big核 2017 DynamIQ 时代的性能核心
Cortex-A78 ARMv8.2-A 64 平衡型大核 2020 PPA 平衡的典范
Cortex-X1 ARMv8.2-A 64 极致性能超大核 2020 Cortex-X 项目开山之作
Cortex-A510 ARMv9-A 64 高能效小核 2021 首款 ARMv9 高能效核,采用合并内核设计
Cortex-A710 ARMv9-A 64 平衡型大核 2021 首款 ARMv9 高性能大核
Cortex-X2 ARMv9-A 64 极致性能超大核 2021 X1 的继任者,专注单核性能
Cortex-A520 ARMv9.2-A 64 高能效小核 2023 移除32位支持,专注64位能效
Cortex-A720 ARMv9.2-A 64 平衡型大核 2023 主流性能核心,面积与性能的平衡
Cortex-X4 ARMv9.2-A 64 极致性能超大核 2023 冲击更高频率和IPC
Cortex-A725 ARMv9.2-A 64 高效能大核 2024 A720 继任者,25%能效提升
Cortex-X925 ARMv9.2-A 64 极致性能超大核 2024 代号’Blackhawk’,3nm工艺,性能巨兽

选型参考

工业控制和 HMI的选择

需要较好的性能和稳定性,经典的 Cortex-A7 或性能与能效平衡的现代核心如 Cortex-A55 是不错的选择。

Cortex-A7 在设计上聚焦于以最小的功耗和核心面积提供适度的性能。其关键特性包括:

  • 高能效设计: 作为 ARM 当时最高效的应用处理器,单个 Cortex-A7 核心的能效是 Cortex-A8 的 5 倍,而尺寸仅为其五分之一,性能却有显著提升。

  • 有序、部分双发射流水线: Cortex-A7 采用了较为简单的 8 级有序执行流水线架构,这有助于降低功耗和芯片面积。

  • ARMv7-A 架构: 它实现了 ARMv7-A 指令集架构,并与高性能的 Cortex-A15 在架构上完全兼容,这是实现 big.LITTLE 无缝切换的基础。这包括支持 NEON SIMD 扩展、VFPv4 浮点单元、硬件虚拟化、大物理地址扩展 (LPAE) 等特性。

  • 可配置的多核: 支持单核到最多八核的配置,为不同设备提供了灵活的选择。

  • 集成的 L2 缓存: 集成的 L2 缓存(最大 1MB)提升了内存系统性能,相比前代产品有超过 20% 的性能改进。

物联网 (IoT) 和深度嵌入式的选择

功耗和成本极其敏感,Cortex-A53 或其现代继任者 Cortex-A510 / A520 是理想选择。它们提供足够的 64 位性能来运行 Linux 等系统,同时保持极低的功耗。

Cortex-A53 的设计目标是取代广受欢迎的 32 位 Cortex-A7 处理器,在提供更高性能的同时,保持极低的功耗。

Cortex-A53 在能效、性能和面积之间取得了精妙的平衡,其关键特性包括:

  • ARMv8-A 架构与 64 位计算:Cortex-A53 是 ARM 向 64 位计算迁移的先锋。它实现了全新的 ARMv8-A 指令集,能够运行在 64 位 (AArch64) 和 32 位 (AArch32) 两种执行状态下,确保了对现有 32 位应用的向后兼容性。64 位架构带来了更大的虚拟地址空间和更多的通用寄存器,对处理大规模数据和复杂计算至关重要。

  • 高能效设计:作为 ARM 当时能效最高的应用处理器,Cortex-A53 在同等工艺下,性能超越了 Cortex-A9,而功耗和面积却大幅减小。它的设计重点是在功耗受限的环境中提供强大的计算能力。

  • 有序、双发射流水线:Cortex-A53 采用了一个有序执行的 8 级流水线,并且是双路超标量设计,能够同时解码和发射部分指令,这相较于 Cortex-A7 的单发射能力是一个显著的进步。

  • 可配置的多核:Cortex-A53 支持从单核到最多四核(甚至在某些设计中达到八核)的灵活配置,每个核心拥有独立的 L1 缓存,并共享一个 L2 缓存。

  • 集成的 NEON 和 VFPv4:每个核心都强制集成了先进的 SIMD (NEON) 和 VFPv4 浮点单元,显著提升了多媒体和信号处理任务的性能。

性能计算的选择

DynamIQ 架构的“超大核+大核+小核”三层结构是当前的主流设计。旗舰设备通常采用最新的 Cortex-X + Cortex-A7xx + Cortex-A5xx 组合。而像瑞芯微的 RK3576 采用的 big.LITTLE 架构也是个不错的选择。RK3576的“big” 部分采用4个 Cortex-A72 高性能核心,用于处理计算密集型任务,例如运行复杂的应用程序、处理高清用户界面、游戏或进行复杂的算法运算。RK3576的“LITTLE”部分4个 Cortex-A53 高能效核心,功耗极低,它们负责处理负载较轻的后台任务、系统待机、音频播放或简单的日常操作。

这种“4大核 + 4小核”的配置是瑞芯微非常成熟和成功的设计。RK3576 可以看作是经典型号 RK3399 (2x A72 + 4x A53) 的一个强力升级版,将大核心数量翻倍,并搭配了更强大的 NPU (高达 6 TOPS) 和其他外围设备。

对于需要快速评估Cortex-A处理的小伙伴,可以看看创龙科技他们家的评估板产品