有人会很奇怪一件事情,ARM居然会变种,不会是基因突变了吧,呵呵,其实ARM变种通俗一点来讲呢,就是ARM突然具备了一种特定的功能!并非是基因突变哦!ARM是reboot好不好?

回到顶部

ARM体系变种

首先让我们通过一个表格来看看ARM变种。了解ARM变种涉及到了什么!

现在让我来为大家解释一下这张图:

  • ARMv你就不用去管它了

  • v后面对应的是ARM指令集的版本号

  • 有x呢,表示排除某项功能

要说的是自版本4之后M变种就为标准功能了,不再列出了!

那么这个就是ARM/Thumb的命名格式啦!不要着急还不了解什么ARM体系变种,且听我细细道来!

T变种

t变种的全名——Thumb指令集,可以说T变种是ARM的效率上质一般的飞跃,thumb指令集是ARM指令集的一个子集重新编码而成的。它使ARM更加高效地进行运作。

ARM的指令长度为32位,而Thumb指令长度只有16位,对于一些冗余空余位的操作来讲的话,在使用16位的基础上,明显比使用32位更加高效!

但是thumb自身也有一定的局限性:

  • 完成相同的操作时,Thumb指令通常情况下需要比ARM更多的指令。

  • Thumb指令集是不包含异常处理时的一些指令的

因此ARM是不能舍弃ARM的32位指令的!它与16位的Thumb指令配合才能更加有效率地执行

那么发展至今,Thumb有哪些版本呢?

  1. Thumb指令集版本1,这个适用在ARM体系版本4中

  2. Thumb指令集版本2,这个适用在ARM体系版本5中

M变种

我们通常称之为长乘法指令,那么注意了:

上篇我们说到了长乘法操作与长乘加操作(乘法指令和乘加法指令的操作),现在就为大家解释一下这两个操作。

  • 长乘法操作:32位整数乘以32位整数,生成64位整数

  • 长乘加操作:32位整数乘以32位整数,加上32位整数,生成64位整数

它其实做版本3中正式引入,版本2的时候仅是有了这个思想的,然后在版本4以后,M变种就变成了系统中的标准部分。我们也不再说M变种了,因为我们在开发ARM过程中直接是使用相应的指令的!

E变种

我们将其定义为增强型DSP指令,针对于ARM的应用范围越来越广阔,那么为了满足DSP算法,ARM就需要增强这个算法的处理性能。

那么它到底有了哪些的增强呢?

  • 增加了新的16位数据乘法与乘加操作指令

  • 实现饱和的带符号数的加减法操作指令

  • 进行双字数据操作的指令,包含LDRD、STDR、MCRR\MRRC

  • cache预取指令PLD

E变种是在版本5T中开始使用的。值得注意的是:早期的E变种未有包含LDRD、STRD、MCRR\MRRC、PLD

J变种

ARM能跑android和java不得不归功于这个变种——java加数器jazelle

这个加数器相当了不起,与一般的java虚拟机相比,它将java代码运行速度提高了整整8倍,而功耗竟降低了80%。使得程序员们可以在这个上面做更有力的开发!

SIMD变种

随着技术进步,人们对于数字媒体流更加追捧,你能够在手机上看电影,玩游戏,大多归功于ARM技术的强劲的高性能音频\视频处理技术,这就是我们所说的ARM媒体功能扩展(SIMD变种)

它将音频\视频处理性能提高了4倍,具有这个功能的ARM芯片(泛指采用ARM技术的芯片)是目前市场上最受欢迎的芯片了!

那么,它的特点有哪些呢:

  • 音频\视频处理性能提高了4倍

  • 提供小数算术运算

  • 可同时进行两个16位操作数或者4个8位操作数的运算

  • 用户可以定义饱和运算模式

  • 两套16位操作数的乘加/乘减运算

  • 32位乘以32位的小数MAC

ARM的体系结构变种相关推荐

  1. ARM的体系结构与编程系列博客——ARM体系版本

    ARM体系版本前言 很多人都知道,ARM有许多版本,口中最长说的就是ARM7\ARM9\ARM11,诚然,这个的确是ARM处理器的版本,但绝对不是ARM的版本,其实ARM到迄今为止经历了6代版本,随着 ...

  2. ARM Cortex-A8体系结构

    ARM Cortex-A8体系结构 一.ARM体系简介 1.1 ARM体系结构及其及其对应的内核 1.2.ARM处理器的主要产品 1.3.ARM开发工具 二.Cortex-A8处理器架构 三.Cort ...

  3. 嵌入式系统的组成、嵌入式处理器分类总结、ARM处理器系列总结、ARM Cortex-M3体系结构总结!

    一.嵌入式系统的组成 嵌入式系统的组成主要由:嵌入式硬件系统.嵌入式软件系统. (1)嵌入式硬件系统主要包括:嵌入式处理器.存储器.模拟电路.电源.接口控制器.接插件等 1)嵌入式处理器:是嵌入式系统 ...

  4. ARM处理器体系结构总结

    CPU--核心,也可理解为MPU,而MCU微控制器表示包括CPU.片上外设(如存储器控制器)在内. 处理器--可能包括多个CPU 处理器系统--可能包括多个处理器 一.处理器体系结构 1. CISC ...

  5. ARM V8A体系结构-第十九章 ARMv8 Models

    概述 平台模型(如本章中描述的模型)允许在不需要实际硬件的情况下开发软件.软件模型从程序员的角度提供处理器和设备的模型.模型的功能行为等效于实际硬件.为了实现快速的模拟执行速度,牺牲了绝对计时精度.这 ...

  6. ARM V8A体系结构-第五章 ARMv8指令集简介

    概述 ARMv8体系结构中引入的最重要的变化之一是添加了64位指令集.该指令集补充了现有的32位指令集体系结构.此新增提供了对64位宽整数寄存器和数据操作的访问,以及使用64位大小的内存指针的能力.新 ...

  7. ARM V8A体系结构-第十二章 The Memory Management Unit

    概述 内存管理单元(MMU)的一个重要功能是使系统能够运行多个任务,作为独立的程序在它们自己的私有虚拟内存空间中运行.他们不需要了解系统的物理内存映射,也就是硬件实际使用的地址,或者可能同时执行的其他 ...

  8. ARM V8A体系结构-第七章 AArch64的浮点和NEON

    概述 ARM高级SIMD体系结构.相关实现和支持软件通常被称为NEON技术.AArch32(相当于ARMv7 NEON指令)和AArch64都有NEON指令集.这两种方法都可以大大加快大型数据集上的重 ...

  9. ARM V8A体系结构-第十四章 多核处理器

    概述 ARMv8-A体系结构为包含多个处理元素的系统提供了高水平的支持.Cortex-A57MPCore和Cortex-A53MPCore处理器等ARM多核处理器可以包含一到四个核.使用Cortex- ...

最新文章

  1. python 序列化函数_python – 如何序列化sympy lambdified函数?
  2. html js文件域val,js实现文件上传表单域美化特效
  3. datepicker 颜色 android,Android修改DatePicker字體顏色及分割線顏色
  4. Scala _06集合_数组(二)
  5. 【转】如果要像钢铁侠那样看世界,谷歌眼镜远不够!还有这些技术问题需要解决...
  6. java分割字符串_Java中分割字符串
  7. 程序员自家种水果,新鲜包邮配送
  8. 使用CDI简化JAX-RS缓存
  9. java获取行号_java – 如何获取一个方法的行号?
  10. 系统架构设计师软考考后回顾
  11. navicate连接远程数据库
  12. agv车辆调度系统-技术篇
  13. 新北京交通限行时间、尾号查询
  14. 如何安全存储密码都不知道,难怪我被面试官吊打呢...学完这个一定打回去!...
  15. 前端自学路线(一定要记笔记)
  16. 独立产品灵感周刊 DecoHack #022 - 截图应用如何在一个月收入 8000 美元
  17. 托运行李安检系统行业研究及十四五规划分析报告
  18. 洛谷:P6560 [SBCOI2020] 时光的流逝(博弈、拓扑序列)
  19. 手把手教你制作一目了然的可视化地图
  20. 计算机语言对传统文化的影响,网络文化对传统文化的冲击

热门文章

  1. 数据仓库相关书籍调研
  2. colab长时间处于正在连接
  3. check hierarchy时cadence ic5141崩溃退出
  4. hexo的yelee主题修改左上角的博客名字颜色、修改代码模块中的引号内部的字体颜色
  5. nuSVC的使用和解读
  6. 统计学习方法例2.1实现(转)
  7. 通俗地讲清楚fit_transform()和transform()的区别
  8. OPenCV学习笔记八-图像的滤波
  9. 深度学习(六)——CNN进化史
  10. 机器学习基础:最优化方法