结论:我们所接触到提到的命名规则,应该分成两类。

  1. 基于ARM Architecture版本的"指令集架构"命名规则:例如armv6, armv7, armv7s, arm64 等系列是ARM CPU的不同指令集,原则上是向下兼容的。

  2. 基于ARM Architecture版本的"处理器系列"命名规则

比如: s3c2410采用ARMv4T架构版本,ARM920T处理器系列

指令集命名规则

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架构定义了三大分工明确的系列:"A"系列面向尖端的基于虚拟内存的操作系统和用户应用;"R"系列针对实时系统;"M"系列对微控制器和低成本应用提供优化

ARM命名历史

(1)ARMv1、ARMv2 这两代没有做CPU,没有商业化;

(2)ARMv3 对应的 CPU 是 ARM6;

(3)ARMv4 首次增加 Thumb 指令集;

对应的 CPU 有:ARM7-TDMI,ARM720-T,ARM9-TDMI,ARM920-T,ARM940-T

(4) ARMv5 改进了 Thumb,首次增加 E(增强型DSP指令)、J(Java加速器Jazelle);

对应的 CPU 有:

ARMv5TE指令集:ARM9-E-S,ARM966-E-S,ARM1020-E,ARM1022-E,ARM940-T

ARMv5EJ指令集:ARM926-EJ-S,ARM7-EJ-S,ARM1026-EJ-S

(5)ARMv6 首次增加 SIMD,升级为 Thunmb-2,首次增加TrustZone;

对应 CPU 有:ARM1136-J(F)-S,ARM1156-J(F)-S,ARM1176-J(F)-S,ARM11 MPCore

(6)ARMv7 首次增加 M(长乘法指令),NEON(DSP+SIMD)

CPU 系列名字为"Cortex",分为了3个款式:A、R、M & SC;

(6.1)A 系列,支持大型嵌入式系统,如手机;

节能:A5,A7

平衡:A8,A9

性能:A15,A17

(6.2)R 系列,Real-time 处理器,即执行一个指令段的耗时是固定时钟周期数。

用于比如汽车控制,这种不允许随机执行时间的应用

功能安全:R4,R5

存储、调制解调:R7,R8

(6.3)M 系列,单片机市场,抢8051的生意;

超低的功耗、面积:M0,M0+

平衡:M3,M4,M7

SC(SecurCore)系列,主打"安全",面向支付、政府、SIM 卡;SC000,SC300;

(7)ARMv8 首次增加 指令集A64,可执行64位指令;可在 32位 和 64位 之间切换;

(7.1)A 系列,

节能:A32,A35

平衡:A53,

性能:A57,A72,A73

(7.2)R 系列

功能安全:R52

(7.3)M 系列,

超低的功耗、面积:M23

平衡:M33

ARM 命名规则和ARM 版本的更多相关文章

  1. css的命名规则

    本文转载自谈笑涧<css的命名规则> 操作系统版本:Windows 7 浏览器版本:IE6,IE7,IE8,Firefox 3.6.2,Safari 4.0.4,Chrome 5.0.35 ...

  2. 【海洋女神原创】知识普及:IS版本命名规则和高低关系

    经常有朋友对IS的版本命名不甚了解,有时候在交流的时候就会造成误会,在这里做一下普及. IS最早出名的版本是IS6.22,这是个非常古老的版本的,但是在IS历史上有不可磨灭的贡献. 之后很长一段时间内 ...

  3. Cisco IOS版本命名规则

    首先说说IOS的运行平台,c2500.c2600.c4500.c2950代表运行此IOS的硬件平台,例如:C2500指2500系列路由器. 其次,看看IOS的版本,IOS有主版本号:11.0.11.1 ...

  4. STM32芯片命名规则 | STM32大中小容量芯片之间的差别

    1. STM32命名规则 STM32F105和STM32F107互连型系列微控制器之前,意法半导体已经推出STM32基本型系列.增强型系列.USB基本型系列.增强型系列:新系列产品沿用增强型系列的72 ...

  5. [No00009E]几种常见的命名规则

    变量命名规则 必须遵循的命名规则 1.    变量名首字母必须为字母(a-z A-Z),下划线(_),或者美元符号($)开始php编程中所有变量必须以$开始. 2.    变量名只能是字母(a-z A ...

  6. html页面的CSS、DIV命名规则

    CSS命名规则 头:header 内容:content/containe 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中:l ...

  7. JAVA基础篇NO1--环境变量的配置及命名规则

    标签(空格分隔): java基础 一:计算机概述 计算机:硬件和软件 硬件:控制器 运算器 存储器 输入和输出设备       存储器:外存(硬盘) 内存 软件:系统软件 应用软件   系统软件:wi ...

  8. J2EE开发时的包命名规则

    http://www.blogjava.net/paulwong/archive/2012/04/15/374675.html 转一个J2EE开发时的包命名规则,养成良好的开发习惯 代码编写规范目的: ...

  9. JavaWeb 命名规则

    命名规范命名规范命名规范命名规范 本规范主要针对java开发制定的规范项目命名项目命名项目命名项目命名 项目创建,名称所有字母均小写,组合方式为:com.company.projectName.com ...

  10. C++变量命名规则

    转自:http://www.cnblogs.com/finallyliuyu/archive/2010/09/25/1834301.html 浅谈C++变量命名规则 不知道别的公司如何,反正我现在的公 ...

随机推荐

  1. C语言程序设计-笔记04-函数

    C语言程序设计-笔记04-函数 例5-1  计算圆柱体的体积.输入圆柱的高和半径,求圆柱体积volume=πxr^2xh.要求定义和调用函数cylinder(r,h)计算圆柱体的体积. #includ ...

  2. CF1872G

    题意:一个正整数序列,\(a[i] < 10^9\),求 \(l\),\(r\),最大化 \[\sum_{i = 1}^{l - 1} a[i] + \prod_{i = l}^r a[i] + ...

  3. CF877F Ann and Books (分类统计贡献+普通莫队)

    CF877F Ann and Books 题意: 商店里有 \(n\) 本书,每本书中有 \(a_i\) 个 \(t_i=1/2\) 类问题. \(m\) 次询问,每次询问给出一个区间,求有多少个符合 ...

  4. 一种光电容积波PPG 转换到心电图ECG进行房颤检测的神经网络模型

    具体的软硬件实现点击 http://mcu-ai.com/ MCU-AI技术网页_MCU-AI人工智能 光电体积描记法(PPG)是一种经济有效的非侵入性技术,利用光学方法测量心脏生理学. PPG 在健 ...

  5. 如何在Ubuntu 16.04上安装和保护MongoDB

    第1步 - 添加MongoDB存储库 sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14 ...

  6. IPv6 — 子网划分

    目录 文章目录 目录 前文列表 IPv6 的子网划分 前文列表 <IPv6 - 网际协议第 6 版> <IPv6 - 地址格式与寻址模式> <IPv6 - 协议头> ...

  7. .NET8 Identity Register

    分享给需要帮助的人:记一次 IdentityAPI 中注册的源码解读:设置用户账户为未验证状态,以及除此之外更安全的做法: 延迟用户创建.包含了对优缺点的说明,以及适用场景. 在ASP.NET 8 I ...

  8. asp.net core api 3.1 dynamic 入参转json对象

    比如接口 public object GetList(dynamic obj){ //var jElement=(JsonElement)obj;//使用system.text.json处理 var ...

  9. Linux进程Fork详解

    一. fork函数详解 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同 ...

  10. kubernetes ingress网站发布

    ingress网站发布 单域名 # 1.创建nginx pod 名称: nginx-nodeport.yaml cat nginx-nodeport.yaml apiVersion: v1 kind: ...