ARM&Linux基础
+ -

ARM&CPU架构

2025-11-03 45 0

嵌入式Linux系统一般使用的是ARM架构。

ARM架构版本与典型CPU 对照

1. ARMv5 / ARMv5TE

  • 状态: 32位
  • 特点: 引入了增强的DSP指令(Thumb-EE)。这是早期功能手机和嵌入式设备的基石。
  • 典型CPU核心
    • ARM7ARM9 系列核心
  • 经典设备: 最早的iPod、第一代树莓派(RP1)的Broadcom BCM2835(虽然SoC是现代的,但核心是ARMv5的ARM1176JZF-S)。

2. ARMv6 / ARMv6-M

  • 状态: 32位
  • 特点: 改进了多媒体处理(SIMD),为后来的Raspberry Pi奠定了基础。
  • 典型CPU核心
    • ARM11 系列
  • 经典设备: 树莓派 1 代(Model A, B, B+)、树莓派 Zero(原始版)(Broadcom BCM2835)。

3. ARMv7-A / ARMv7-R

  • 状态: 32位
  • 特点: 引入了 Thumb-2 指令集,大幅提升代码密度和性能。这是现代智能手机和嵌入式系统的起点,也是第一个使用 Cortex 品牌名的架构。
  • 典型CPU核心
    • Cortex-A5: 低功耗、低成本
    • Cortex-A7: 高能效比,常用于“大小核”中的小核
    • Cortex-A8: 首个高通Scorpion核心的基础
    • Cortex-A9: 首款多核Cortex-A处理器,性能强劲
    • Cortex-A15: 高性能,早期平板和智能电视常用
    • Cortex-A17: A12的优化版
  • 经典设备
    • 树莓派 2(Broadcom BCM2836,Cortex-A7)
    • iPhone 4(Apple A4,基于Cortex-A8)
    • 无数2015年以前的安卓手机和平板。

imx6ul是armv7l

4. ARMv8-A

  • 状态64/32位
  • 特点革命性更新,引入了 64位执行状态(AArch64) 和一套新的指令集(A64),同时完全兼容32位(AArch32)。这是现代移动计算和服务器市场的基石。
  • 典型CPU核心
    • Cortex-A53: 经典“小核”,能效极高
    • Cortex-A57: 首款64位大核,性能强劲但功耗较高
    • Cortex-A72A73A75: 性能与能效不断平衡的迭代
    • Cortex-A55: A53的继任者,最成功的“小核”
    • Apple A系列(A7 ~ A11): 苹果自研的Cyclone/Typhoon/Twister等核心,基于ARMv8指令集,但微架构是苹果自定义的,性能远超公版。
  • 经典设备
    • 树莓派 3(Broadcom BCM2837,Cortex-A53)
    • 树莓派 4(当运行32位系统时,显示为armv7l)
    • iPhone 5s(Apple A7,全球首款消费级64位手机CPU)
    • 几乎所有2015年后的中高端安卓设备。

RK3588是ARMv8-A 64位架构的处理器。big.LITTLE 架构:

  • 4x Cortex-A76:负责处理高负载任务,如大型游戏、视频编码、复杂计算等,提供强大的峰值性能。
  • 4x Cortex-A55:负责处理日常轻量任务和待机后台任务,极其省电,保证了设备的续航和低发热。

5. ARMv9-A

  • 状态: 64位
  • 特点: ARM的最新架构,专注于安全性(机密计算架构CCA)、AI/ML(可伸缩矢量扩展SVE2)和性能。
  • 典型CPU核心
    • Cortex-A710: 性能大核(v9时代的“大核”)
    • Cortex-A510: 高能效小核(v9时代的“小核”)
    • Cortex-A715: A710的升级版,进一步提升能效
    • Cortex-X2 / X3: 极致性能的“超级大核”
    • Apple A系列(A14 ~ A17 Pro)& M系列: 苹果自研核心,基于ARMv8指令集,但在特性上(如SVE)已与ARMv9看齐甚至超越。
  • 经典设备
    • 高通骁龙 8 Gen 1/2/3 等
    • 联发科天玑 9000/9200 等
    • 苹果 iPhone 12 及之后的所有型号、所有 Apple Silicon Mac(M1, M2, M3系列)。

总结与快速辨别

架构版本 位数 典型 uname -m 输出 核心示例 时代
ARMv6 32位 armv6l ARM11 功能手机/早期嵌入式
ARMv7-A 32位 armv7l Cortex-A7, A8, A9, A15 智能手机初期/嵌入式
ARMv8-A 64/32位 aarch64 Cortex-A53, A57, A72, A73, A75, A76 现代移动计算主流
ARMv9-A 64位 aarch64 Cortex-X2, A710, A515 最前沿(AI/安全/性能)

关键要点

  1. Cortex-A 系列是应用处理器核心,用于运行复杂的操作系统(如Linux, Android, iOS)。
  2. 苹果的 CPU 是基于 ARM 指令集,但微架构是苹果自研的,这是其性能领先的关键。
  3. 看到 aarch64,就意味着设备是 64 位的 ARMv8 或 ARMv9 架构。
  4. 看到 armv7l,意味着设备运行在 32 位模式,其硬件可能是 ARMv7 芯片,也可能是 ARMv8/ARMv9 芯片运行了 32 位操作系统。

0 篇笔记 写笔记

ARM9的启动方式及Bootloader的下载
下面详细说明 ARM9(以经典的 S3C2440 芯片为例)的两种主要启动方式、配置方法,以及在这些模式下下载 Bootloader 所使用的工具。S3C2440 的启动方式由 OM0 和 OM1 这两个引脚的电平状态决定。工作模式OM0OM1备注NOR Flash 启动......
Cortex-A7 MPCore
Cortex-A7 MPCore 支持在一个处理器上选配 1~4 个内核。Cortex-A系列的ARM在还来7种运行模式上增加了TruZone安全扩展模式。而后续的新的CPU又增加了Monitor模式,所以共有9种模式。模式描述User(USR) 用户模式,非特权模式,大部分......
交叉编译工具链arm-linux-gnueabihf-gcc
GCC ARM Linux GNUEABIHF 工具链详细介绍gcc-arm-linux-gnueabihf 是一个针对 ARM 架构的交叉编译工具链,专门用于在 x86/x86_64 主机上开发运行在 ARM Linux 系统上的应用程序。这个工具链名称中的各部分含义如下:gcc: GNU C......
arm-linux开发配置总结
工具下载ubuntu镜像 https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/交叉工具链的下载 https://snapshots.linaro.org/gnu-toolchain/安装软件sudo apt-get install net-t......
ARM&CPU架构
嵌入式Linux系统一般使用的是ARM架构。ARM架构版本与典型CPU 对照1. ARMv5 / ARMv5TE状态: 32位特点: 引入了增强的DSP指令(Thumb-EE)。这是早期功能手机和嵌入式设备的基石。典型CPU核心:ARM7、ARM9 系列核心经典设备: 最早的iPod、第一代......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!