ARM要分清

作者: CoderDock | 来源:发表于2017-12-24 12:19 被阅读0次

  总是有人在说,我是搞ARM的,到底是说的ARM架构还是ARM系列,这点要搞清楚!


aRM.png

  在Dock看来,ARM有两个概念,ARM架构、ARM系列,不同的架构,不同的系列在性能、功耗、尤其是价格方面有着很大的不同。

1. ARM公司

  ARM(Advanced RISC Machine)公司作为半导体行业最为著名的公司,你不能不知道。详情看度娘ARM
下面我们重点说架构系列两个概念。

2. ARM架构

  ARM架构指的就是这颗芯片内核所用的指令集的版本。C++语言还有C++10C++11版本之说,更何况内核呢?

  最为显著的就是总线宽度。"Thumb指令集"为16位,"ARM指令集"为32位,以及"ISA指令集"为64位。这也就从根本上区分了每一个ARM内核有所不同。当然ARM还有很多很多不同的拓展功能,如Java加速器-JazelleTrustZone技术SIMD等,这些不同的组合就组成了不同的ARM架构。

2.1 ARMv4 ARMv5 ARMv6 ARMv7

  这是市面上最老的ARM架构版本了。只支持32位地址空间,ARM7系列的一些芯片用到了这个指令集。

  ARMv5相较于v4架构增加了DSP指令优化。

  ARMv6 在存储系统、异常处理等方面做了很多改进,最为重要的是增加了对多媒体处理的支持。

  ARMv7增加了NEON GPU多媒体处理支持,将DSP和媒体处理能力提高了近四倍,并且支持改良的浮点运算。满足下一代3D图形应用的需求,也就是从v7开始,ARMv7架构的处理器芯片开始应用于智能终端设备。

2.2 ARMv8

  2011年11月,ARM公司发布了新一代处理器架构ARMv8的部分技术细节。这是ARM公司的首款支持64位指令集的处理器架构。但其支持AArch32 AArch64两套指令集,为的就是向前兼容32位的应用。

2.3 拓展

  有时候我们又能看到ARMv5TEJ等词汇,这又是什么意思,后面的每一个字母代表一种拓展功能。如 T-Thumb指令集、E-增强型DSP指令 J-Java加速器。

3. ARM系列

  在相同的指令集下,搭配不同的部件就可以组成不同的功能的处理器。比如有无内存管理,有无调试功能等。

3.1 ARM7-11

  ARM7 - ARM11是比较老的一些处理器器了。其主要的分别大致如下:

  • ARM7是低功耗的32位处理器,主要特点是没有MMU(内存管理),如果有人给你说他用ARM7跑系统,你就可以呵呵了。
  • 相较于ARM7,增加了MMU和Cache,指令集执行效率相比于ARM7有很大提高,最高可达300MIPS。
  • ARM11,基于ARMv6指令集架构,在实时性和浮点处理方面有很大提高。

3.2 ARM-Cortex

  在ARM11以后,ARM就不再以数字进行ARM处理器系列进行区分,而是使用Cortex进行命名。主要区分为一下三个系列:

  • Cortex-A 和 Cortex-A50 系列 - 面向开放式操作系统的高性能处理器。
  • Cortex-R 系列- 面向实时应用的卓越性能。
  • Cortex-M 系列 - 面向具有确定性的微控制器应用的成本功耗敏感型解决方案。

  ARM Cortex-A 内核基于ARMv7-A架构,基本上都可以支持ARM、Thumb-2、Thumb指令集、Java加速扩展的Jazelle技术、ThustZone的安全扩展、针对浮点FPU的VFP硬件扩展、DSP & SIMD 扩展、并行多数据SIMD的NEON多媒体处理器扩展、主流的嵌入式OS(Linux、Android、Windows Mobile、Windows Phone、Symbian)、以及支持分支预测branch prediction。但各处理器在VFP/NEON的类型、半精度浮点(16-bit half precision floating-point)的支持、多核MPCore、流水线pipeline、单MHz处理性能、L1/L2 cache控制器、乱序执行、指令dual-issue并发等方面有略有不同。

  Cortex-R系列的内核接触不多,主要用于实时控制领域。我所知道的在Xilinx的MPSOC芯片中就使用了两颗R-5内核作为对A-9内核的实时增强。

  Cortex-M处理器家族更多的集中在低性能端,但是这些处理器相比于许多微控制器使用的传统处理器性能仍然很强大。例如,Cortex-M4和Cortex-M7处理器应用在许多高性能的微控制器产品中,最大的时钟频率可以达到400Mhz。如我们最熟悉的Stm32就是基于Cortex-M系列处理器。

相关文章

  • ARM要分清

      总是有人在说,我是搞ARM的,到底是说的ARM架构还是ARM系列,这点要搞清楚!   在Dock看来,ARM有...

  • 工作要分清

    不能因为一时心软去揽不该自己干的活。别人不会感恩你的帮助,还会觉得这就是你的工作。当你后面再想把这份原本就该她做的...

  • 要分清主次

    【说地】 一个旅行者租了一头驴,骑着驴到远方去。 那天天热的很,日光很毒,旅行者便坐在驴的影子下乘凉小憩(qì)。...

  • 要分清主次!

    女儿昨天让老师给我发信息,说手很痛,我让她爷爷去幼儿园把她接回来。 匆忙的给她挂个号,让家婆带她过来看医生。 上周...

  • 代码还原的技术 ARM汇编入门教程(一) Hello World

    一、目标 为什么要学ARM汇编? 不为什么。 学了ARM汇编有用吗? 没啥用 学完ARM汇编能找到工作吗? 目前流...

  • ARM系列与ARM内核架构

    ARM系列 经典系列,主要有ARM7、ARM8、ARM9、ARM10、ARM11;cortex系列,主要有ARM ...

  • 做事要分清主次

    在工作过程中我们会经常遇到事情冲突的时候,应分清主次,以大局为重,善于取舍。 早上接到通知,要11点...

  • 有用~无用要分清

    有的人认为请教别人问题是件很羞耻的事,所以就私下独自研究。不但浪费时间还走了弯路。这也是不问则不知的道理。 ...

  • 朋友要分清楚

    朋友交往重在以诚相待,此乃至理。 有些人和你交往可能为了钱为了色之类的,要看清楚。不要物以类聚。 有些人狗眼看人低...

  • 做事要分清主次

    做事时,如果分不清主次,眉毛胡子一把抓,这样的结果就是哪件事都做不好。 我就是一个活生生的例子。每天把时间...

网友评论

    本文标题:ARM要分清

    本文链接:https://www.haomeiwen.com/subject/hmntgxtx.html