ARM 命名规则和ARM 版本
结论:我们所接触到提到的命名规则,应该分成两类。
基于ARM Architecture版本的"指令集架构"命名规则:例如armv6, armv7, armv7s, arm64 等系列是ARM CPU的不同指令集,原则上是向下兼容的。
基于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 版本的更多相关文章
- css的命名规则
本文转载自谈笑涧<css的命名规则> 操作系统版本:Windows 7 浏览器版本:IE6,IE7,IE8,Firefox 3.6.2,Safari 4.0.4,Chrome 5.0.35 ...
- 【海洋女神原创】知识普及:IS版本命名规则和高低关系
经常有朋友对IS的版本命名不甚了解,有时候在交流的时候就会造成误会,在这里做一下普及. IS最早出名的版本是IS6.22,这是个非常古老的版本的,但是在IS历史上有不可磨灭的贡献. 之后很长一段时间内 ...
- Cisco IOS版本命名规则
首先说说IOS的运行平台,c2500.c2600.c4500.c2950代表运行此IOS的硬件平台,例如:C2500指2500系列路由器. 其次,看看IOS的版本,IOS有主版本号:11.0.11.1 ...
- STM32芯片命名规则 | STM32大中小容量芯片之间的差别
1. STM32命名规则 STM32F105和STM32F107互连型系列微控制器之前,意法半导体已经推出STM32基本型系列.增强型系列.USB基本型系列.增强型系列:新系列产品沿用增强型系列的72 ...
- [No00009E]几种常见的命名规则
变量命名规则 必须遵循的命名规则 1. 变量名首字母必须为字母(a-z A-Z),下划线(_),或者美元符号($)开始php编程中所有变量必须以$开始. 2. 变量名只能是字母(a-z A ...
- html页面的CSS、DIV命名规则
CSS命名规则 头:header 内容:content/containe 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中:l ...
- JAVA基础篇NO1--环境变量的配置及命名规则
标签(空格分隔): java基础 一:计算机概述 计算机:硬件和软件 硬件:控制器 运算器 存储器 输入和输出设备 存储器:外存(硬盘) 内存 软件:系统软件 应用软件 系统软件:wi ...
- J2EE开发时的包命名规则
http://www.blogjava.net/paulwong/archive/2012/04/15/374675.html 转一个J2EE开发时的包命名规则,养成良好的开发习惯 代码编写规范目的: ...
- JavaWeb 命名规则
命名规范命名规范命名规范命名规范 本规范主要针对java开发制定的规范项目命名项目命名项目命名项目命名 项目创建,名称所有字母均小写,组合方式为:com.company.projectName.com ...
- C++变量命名规则
转自:http://www.cnblogs.com/finallyliuyu/archive/2010/09/25/1834301.html 浅谈C++变量命名规则 不知道别的公司如何,反正我现在的公 ...
随机推荐
- ubuntu 防火墙命令
# 防火墙状态,如果输出显示 Status: inactive,表示 UFW 处于禁用状态 sudo ufw status # 关闭防火墙 sudo ufw disable # 启动防火墙 sudo ...
- Linux中的touch命令
Linux中一个文件有3种时间属性,分别是mtime,ctime,atime: modification time (mtime) 当该文件的『内容数据』变更时,就会升级这个时间!内容数据指的是文件的 ...
- 腾讯、阿里、B站最新面经汇总,有的妥妥的凉经。
除了BAT(没错我说的B是B站的B),还有网易.希音科技.美柚等中小厂的最新面经. 这次投稿的同学行文幽默风趣,处处透漏着不成功便搞笑的骚气. 祝他早日上岸,也欢迎大家在评论区讨论这些面试题,有哪些面 ...
- 国产Linux音视频聊天程序开发遇到的坑及解决:相互听不到对方声音?
最近完成了一个银河麒麟上的视频聊天项目,在我们开发机上测试一切正常后,提交给甲方测试.结果发现在甲方的某些银河麒麟V10的电脑上,听不到声音. 这个问题,使用<Avalonia 实现跨平台的IM ...
- 记录一次 对应用程序日志排查,老是刷出有本地ip登录Sqlserver数据库失败的日志
在我电脑-计算机管理-事件查看器-windows日志-应用程序里 1秒中就刷很多条 用户sa登录某个数据库失败,客户端ip:192....; 我查看ip发现是本机的ip地址.也就是说有本地的应用程序在 ...
- Vue——基本使用
Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统.我们不再和 HTML 直接交互了.一个 Vue 应用会将其挂载到一个 DOM 元素上 (对于这个例子是 #app ...
- C#WPF的多屏显示问题
如果想让窗口在第二个屏幕中显示 public MainWindow() { InitializeComponent(); Screen[] _screens = Screen.AllScreens; ...
- python利用flux基本读写influxDB
1.读取 QuerApi 形式 python 利用 flux 语句查询 influxdb 数据. https://influxdb-client.readthedocs.io/en/latest/ap ...
- 阿里bxet逆向
声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 目标网站 x82y 分析过 ...
- SELinux 安全模型——MLS
首发公号:Rand_cs SELinux 安全模型--MLS BLP 模型:于1973年被提出,是一种模拟军事安全策略的计算机访问控制模型,它是最早也是最常用的一种多级访问控制模型,主要用于保证系统信 ...