想要从事ARM SOC,以下的文档是必须要理解学习的,按照循序渐进的顺序列了如下表格,看完这些,心中对很多陌生名词的疑问,会迎刃而解。
| 学习阶段 | 文档名称 | 对应标准/简称 | 核心学习目标与侧重点 |
|---|---|---|---|
| 阶段一:概念入门与核心基础 | Arm Architecture Reference Manual | ARM ARM (Armv8-A / Armv9-A) | 理解 CPU 基础机制:异常等级 (EL0-EL3)、虚拟内存 (MMU/TLB)、内存模型 (Memory Model) 及 TrustZone 安全架构。 |
| Learn the Architecture Guides | Arm Guides (AArch64 Memory, GICv3 Guide) | 官方推出的图文教学导读,适合在阅读规范大书前快速建立对内存管理与中断机制的直观认知。 | |
| 阶段二:片上总线与互联 | AMBA APB Protocol Specification | AMBA APB | 掌握低速外设配置总线(寄存器读写)的基本握手时序与信号定义。 |
| AMBA AXI Protocol Specification | AMBA AXI4 / AXI5 | 掌握高性能主从通信总线:通道分离结构、Out-of-Order 乱序、Interleaving 交织及 Exclusive 独占访问机制。 | |
| AMBA ACE / CHI Architecture Specification | AMBA ACE / CHI | 学习多核/多 Cluster 间的系统级缓存一致性(Cache Coherency)机制,理解硬件 Snooping 与基于包(Packet-based)的 Mesh 传输。 | |
| 阶段三:系统核心外设 IP | ARM Generic Interrupt Controller Architecture Spec | GICv3 / GICv4 Spec | 深入理解中断路由与分发机制,掌握 SPI、PPI、SGI 以及 LPI(MSI/MSI-X 消息中断)的处理流程。 |
| ARM System MMU Architecture Specification | SMMUv3 Spec | 理解外设/DMA 的地址转换与内存隔离,掌握 Stage 1 & Stage 2 虚拟化页表映射与 Context Bank 概念。 | |
| CoreLink Interconnect / NoC TRM | NIC-400 / CMN-700 TRM | 研读具体片上互联 IP 的技术参考手册,理解 Crossbar 路由与 Mesh 网格片上网络(NoC)的物理拓扑与节点配置。 | |
| 阶段四:系统规范与功耗管理 | Power Control System Architecture Specification | PCSA | 建立系统级功耗管理全景,理解功耗域划分、SCP(系统控制处理器)与 PPU(电源策略单元)的硬件协作逻辑。 |
| System Control and Management Interface Spec | SCMI Spec | 学习操作系统/固件与 SCP 之间通信的标准协议,掌握 DVFS(调频调压)、传感器及电源状态切换的软硬件接口。 | |
| Base System Architecture Specification | BSA / TBSA | 结合通用架构与安全规范,掌握整颗 SoC 的硬件设施标准(Timer/GIC/PCIe/SMMU 地址映射)与安全根(Root of Trust)硬件设计规范。 | |
| 阶段五:具体 CPU 核与系统集成 | CPU Technical Reference Manual | CPU TRM (如 Cortex-A78 / X2 TRM) | 查阅特定处理器核手册的 External Interfaces 章节,学习 CPU 如何通过 AXI/CHI、GIC、Clock/Power 接口挂载到 SoC 系统中。 |
所有需要的文档(ARM、AMBA、GIC、SMMU、PCSA、TRM)全部都是公开且免费的 。直接在官网 developer.arm.com 搜索下载即可。
CPU_Architecture_ARM_ARM/和CPU_Core_TRMs有什么区别CPU_Architecture_ARM_ARM/和CPU_Core_TRMs有什么区别?
这两个文件夹区分的是 "理论规范 (Specification)" 与 "物理实现/IP 手册 (Product Manual)" 的区别。
在 Arm 的知识体系中,它们有着明确的界限与分工:

| 维度 | CPU_Architecture_ARM_ARM | CPU_Core_TRMs |
|---|---|---|
| 全称 | Arm Architecture Reference Manual | Technical Reference Manual |
| 核心关注点 | "架构规范"(CPU 应该能做什么,软件怎么看 CPU) | "微架构实现"(硬件电路具体怎么做,接口怎么连) |
| 文档对象 | 面向整个架构系列(如 Armv8-A / Armv9-A) | 面向具体 CPU IP(如 Cortex-A78 / Cortex-A55) |
| 典型内容 | 指令编码、异常等级 (EL0-EL3)、MMU 页表、内存屏障 | 流水线、Cache 大小、AMBA AXI/CHI 接口信号、Clock/Power 接口 |
| 主要使用者 | 操作系统/编译器开发者、系统级验证工程师 | 数字前端 RTL 工程师、SoC 集成工程师、芯片 Low Power 验证工程师 |