ARM Cortex-A 移动处理器发展概览

  简介

  ARM Cortex-A 移动应用处理器产品线横跨了几代产品和三个主要产品类别。有些开发人员和 SoC 设计人员经历了一款或多款新型 ARM 处理器的推出过程,他们知道该产品线如何从单个高性能通用 CPU 设计演进成为三个不同产品线,分别面向高端、中端、入门级的移动设备 SoC 市场,这让他们受益匪浅。

  Cortex-A8

  ARM 在 2005 年向市场推出 Cortex-A8 处理器,是第一款支持 armv7-a 架构的处理器。ARMv7 包括 3 个关键要素:NEON 单指令多数据 (SIMD) 单元、ARM trustZone 安全扩展、以及thumb2 指令集,通过 16 位和 32 位混合长度指令以减小代码长度。Cortex-A8 是 ARM 实现的第一个基于新ISA的超标量处理器:它实现了完全双发射流水线,这意味着 cortex-a8 能够同时发出在指令流中先后出现的任何两个没有数据依赖的指令。但是,它不能乱序来发射或撤销指令 –该功能在之后的设计中才被实现。

  ARM Cortex-A 移动处理器发展概览

  当我们推出 Cortex-A8 时,很多合作伙伴认为这款处理器放在移动电话上是大材小用,他们很自然地质疑道,“客户会在手机上浏览互联网?不太可能吧。”但是,我们和业界一些主要思想领袖合作,向客户将会需要的产品迈进,尤其是因为当 Cortex-A8 在 2008 年投入批量生产时,高带宽无线连接 (3G ) 已经问世,大屏幕也用于移动设备。创新的移动行业充分利用了该产品:Cortex-A8 芯片的推出正好赶上了智能手机出货量猛增的大好时机。

  Cortex-A9

  推出 Cortex-A8 之后不久,ARM 又推出了首款多核 ARMv7 CPU:cortex-a9。Cortex-A9 利用硬件模块来管理 CPU 集群中一至四个核心之间的高速缓存一致性,加入了一个外部二级高速缓存。理论上,客户可以设计不包括二级缓存的小型版本 Cortex-A9,这种设计允许剔除管理高速缓存一致性的逻辑模块,以实现尺寸更小的单核设计。但实际上,大多数设计都采用双核个或更多核心并附带二级高速缓存。此外,在2011 年底和 2012 年初,当移动 SoC 设计人员可以采用多个核心之后,提高性能的突破点从提高单核性能转移到提高核的数量。旗舰级高端移动 CPU迅速从最初的双核拓扑结构移至四核 Cortex-A9。

  ARM Cortex-A 移动处理器发展概览

  除了开启了多核性能大门之外,与 Cortex-A8 相比,每个 Cortex-A9 处理器的单时钟周期指令吞吐量提高了大约 25%。这个性能的提升是在保持相似功耗和芯片面积的前提下, 通过缩短流水线并乱序执行以及在流水线早期阶段集成neon SIMD 和浮点功能而实现的。

  Cortex-A15

  随着智能手机市场开始加速发展,ARM 再次预见到了不断发展的移动系统对芯片性能提出的更高要求。为此ARM开发了一款性能上大幅提升的处理器,用以专门针对新的高端移动市场。在已经非常强大的 Cortex-A9 的基础上,ARM 凭借 cortex-a15 又将性能提高了 50% 以上。此外,Cortex-A15 引入了一系列架构扩展,从而实现了更大物理地址空间、硬件虚拟化支持和扩展一致性。在 32 位系统中内存被划分为 2GB 设备内存和 2GB 普通内存,当设备的 RAM 超出2GB的时候,拥有更大的物理地址空间就变得异常重要。ARM和其他合作伙伴也一直在探索虚拟化技术在商务移动系统和自带设备中的用户操作系统以及类似应用情景进行探索。。扩展一致性在 big.LITTLE 处理器技术中被应用的淋漓尽致,它提供了一种降低平均功耗并在功耗受限的条件下优化达到最大性能的方法。

  ARM Cortex-A 移动处理器发展概览

  Cortex-A15 集群集成了监听控制单元 (SCU) 以实现硬件一致性,每个集群包含一至四个 CPU 核心,并集成二级高速缓存控制器 – Cortex-A15 之后的所有 ARM Cortex-A 系列 CPU 都沿用了这种拓扑结构。

  在移动设备中不断突破性能极限

  ARM Cortex-A 移动处理器发展概览

  比较 Cortex-A 系列高端处理器的性能,可以看到自从 Cortex-A8 1GH 处理器在 2008 年上市以来,性能有了大幅提升。

  一致性扩展机制,实现为 AMBA ACE, 使下图所示的big.little SoC成为可能。在 big.LITTLE 系统中,通常实现一个“大”CPU 集群,并对其进行调节以满足高性能的要求,同时对“小”的 CPU 集群进行调节,满足对高能效。在典型工作负载中,LITTLE 处理器可以处理绝大部分工作,而“big”CPU 集群的激活时间不足 10%,在很多情况下还达不到总 CPU 运行时间的 1%。通过 CoreLink CCI-400 高速缓存一致性互连组件,CPU 集群能够监听其他集群的高速缓存,从而实现软件线程从一个集群到另一集群的快速转移。

  Cortex-A12

  随着智能手机市场的爆炸式增长,SoC 供应商和 OEM 将该市场划分为旗舰高端级别、中端级别、低成本入门级别。随着这些细分市场的出现,ARM 一直在定义专门针对上述三个级别市场的不同处理器。cortex-a12 是采用全新微架构的一个全新处理器,专门面向快速发展的中端移动市场。下图显示了这些细分市场的规模,以及面向这些细分市场的 ARM Cortex-A 产品:

  ARM Cortex-A 移动处理器发展概览

  Cortex-A12 的设计面向中端移动 SoC,以满足这一细分市场对于芯片面积和功耗的要求。它使用无序双执行流水线,其性能比当前在许多中端移动 SoC 中使用的 Cortex-A9 高出 40%。Cortex-A12 在 2013 年中推向市场,有望在 2014 投入量产。它是一款 32 位处理器,具有与 Cortex-A15 相同的物理地址扩展和相关的架构特性。

  ARM Cortex-A 移动处理器发展概览

  Cortex-A12 能够在很多(但并非全部)用例中提供接近 Cortex-A15 的性能。Cortex-A12 还针对中端移动设计进行了优化,取消了一些企业功能,使用略微简单的流水线,因此在横跨多个市场的高端设备上都可以找到Cortex-A15的身影,而 Cortex-A12 则专门面向中端移动设计。

技术专区

  • 裸机程序如何驱动硬件?看前辈是怎么说的
  • ARM紧耦合内存简介及配置
  • ARMv8 通过设计简化软件移植详解
  • STM32中断优先级谁更高 主要根据两个方面来判断
  • 基于ARM与DSP的主从式双CPU嵌入式四轴运动控制器设计方案
  • ARM Cortex-A 移动处理器发展概览已关闭评论
    A+
发布日期:2019年07月14日  所属分类:物联网