在使用ARM内核单片机的时候,经常搞不清楚处理器与内核架构之间的对应关系,于是自己画了一个思维导图,方便观看。
其中相关的命名规则如下
指令集命名规则
ARM 指令集架构命名规则:
| ARMv | n | variants | x(variants) |
分成四个组成部分:
·ARMv : 固定字符,即ARM Version
·n : 指令集版本号。迄今为之,ARM架构版本发布了8个系列,所以n=[1:8]。
·variants : 变种。
·x(variants) : 排除x后指定的变种
常见的variants有以下字母可选:
·T : Thumb指令集
·M : 长乘法指令
·E : 增强型DSP指令
·J : Java加速器Jazelle
·SIMD : ARM媒体功能扩展
比如:ARMv5TxM表示ARM指令集版本为5,支持T变种,不支持M变种
在 ARMv3 ~ ARMv6 时期
ARM{x}{y}{z}{T}{D}{M}{I}{E}{J}{F}{-S}
·x : 处理器系列
·y : 存储管理/保护单元
·z : cache
·T : 支持Thumb指令集
·D : 支持片上调试
·M : 支持快速乘法器
·I : 支持Embedded ICE,支持嵌入式跟踪调试
·E : 支持增强型DSP指令
·J : 支持Jazelle
·F : 具备向量浮点单元VFP
·-S : 可综合版本
比如:ARM926, 属于ARMv5指令集架构的,CPU是 ARM9系列的,2个存储管理/保护单元,6个 Cache。
在 ARMv7 以后时期
ARM公司改革了以前的冗长的命名方法,用看起来比较整齐的办法,统一用 Cortex 作为主名。
ARMv7架构是在ARMv6架构的基础上诞生的。该架构采用了Thumb-2技术,Thumb-2技术是在ARM的Thumb代码压缩技术的基础 上发展起来的,并且保持了对现存ARM解决方案的完整的代码兼容性。Thumb-2技术比纯32位代码少使用 31%的内存,减小了系统开销。同时能够提供比已有的基于Thumb技术的解决方案高出38%的性能。ARMv7架构还采用了NEON技术,将DSP和媒 体处理能力提高了近4倍,并支持改良的浮点运算,满足下一代3D图形、游戏物理应用以及传统嵌入式控制应用的需求。此外,ARMv7还支持改良的运行环 境,以迎合不断增加的JIT(Just In Time)和DAC(DynamicAdaptive Compilation)技术的使用。另外,ARMv7架构对于早期的ARM处理器软件也提供很好的兼容性。
ARMv7 首次增加 M(长乘法指令),NEON(DSP+SIMD)
CPU 系列名字为"Cortex",分为了3个款式:A、R、M & SC;
Cortex-A系列(A:Application)
针对日益增长的消费娱乐和无线产品设计,用于具有高计算要求、运行丰富操作系统及提供交互媒体和图形体验的应用领域,如智能手机、平板电脑、汽车娱乐系统、数字电视,智能本、电子阅读器、家用网络、家用网关和其他各种产品。。
Cortex-R系列 (R:Real-time)
针对需要运行实时操作的系统应用,面向如汽车制动系统、动力传动解决方案、大容量存储控制器等深层嵌入式实时应用。
Cortex-M系列(M:Microcontroller)
该系列面向微控制器领域,主要针对成本和功耗敏感的应用,如智能测量、人机接口设备、汽车和工业控制系统、家用电器、消费性产品和医疗器械等。
Cortex-SC系列(SC:SecurCore)
其实,除了上述三大系列之外,还有一个主打安全的Cortex-SC系列(SC:SecurCore),主要用于政府安全芯片。
2019年5月,ARM发布了Cortex-A77 CPU和Mali-G77 GPU架构(准确说是IP,又称内核授权)。
2020年5月ARM正式发布了下一代IP,由Cortex-X1、Cortex-A78和Mali-G78组成的“三剑客”。
ARM表示,预计到2022年交付的芯片设计将比当前的ARM Cortex-A78 CPU内核提升30%的性能,并且该公司为其下一代和下一代设计了一些时间表代处理器,具有:2021年的“Matterhorn一代”、2022年的“Makalu一代”。