关于ARM的内核架构 您所在的位置:网站首页 arm32架构 关于ARM的内核架构

关于ARM的内核架构

2024-05-09 10:11| 来源: 网络整理| 查看: 265

 

 

主要功能

从图上可以看出三者功能上的异同点。它们的不同点也决定了三者的不同应用场合。M4相比较前两者主要的变化在于数字运算能力上的增强,增加了DSP运算指令、SIMD(Single Instruction Multiple Data,单指令多数据流)指令集、FPU(浮点运算单元,可选)。

 

从图中足以看出M4内核的强大,同时Cortex-M 系列处理器都是二进制向上兼容的,这使得软件重用以及从一个 Cortex-M 处理器无缝发展到另一个成为可能(图3):

下面就增强的三个功能进行说明:

1、DSP指令集

所谓集成DSP功能并不是说M4内核是一个M3+DSP的双核处理器(目前个人知道的这类处理器是TI的达芬奇系列,主要应用于语音、视频图像有关的数字多媒体领域)。而是只是增加了DSP功能的指令集(单周期的运算指令),能在一个周期内完成指令操作。在官方的CMSIS标准工程库中已经集成,可以直接使用(有关内容在以后文章中介绍)。

图表展示了处理器运行在相同的速度下Cortex - M3和Cortex - M4在数字信号处理能力方面的相对性能比较。

在下面的数字,Y轴代表执行给出的计算用的相对的周期数。 因此,循环数越小,性能越好。以Cortex - M3作为参考,Cortex - M4的性能计算,性能比大概为其周期计数的倒数。举例说明,PID功能,Cortex - M4的周期数是与Cortex - M3的约0.7倍,因此相对性能是1/0.7,即1.4倍。

Cortex - M系列16位循环计数功能

 

Cortex - M系列32位循环计数功能

 

这很清楚的表明,Cortex - M4在数字信号处理方面对比Cortex - M3的16位或32位操作有着很大的优势。

Cortex-M4执行的所有的DSP指令集都可以在一个周期完成,Cortex - M3需要多个指令和多个周期才能完成的等效功能。即使是PID算法——通用DSP运算中最耗费资源的工作,Cortex - M4也能提供了一个1.4倍的性能得改善 。另一个例子,MP3解码在Cortex-M3需要20-25Mhz,而在Cortex-M4只需要10-12MHz。

2.  32位乘法累加(MAC) 

32位乘法累加(MAC)包括新的指令集和针对Cortex - M4硬件执行单元的优化它是能够在单周期内完成一个 32 × 32 + 64 - > 64 的操作 或 两个16 × 16 的操作。如下表列出了这个单元的计算能力。

 

 

3 .SIMD 

(Single Instruction Multiple Data,单指令多数据流)能够复制多个操作数,并把它们打包在大型寄存器的一组指令集,例:3DNow!、SSE。以同步方式,在同一时间内执行同一条指令。

SIMD在性能上的优势:

以加法指令为例,单指令单数据(SISD)的CPU对加法指令译码后,执行部件先访问内存,取得第一个操作数;之后再一次访问内存,取得第二个操作数;随后才能进行求和运算。而在SIMD型的CPU中,指令译码后几个执行部件同时访问内存,一次性获得所有操作数进行运算。这个特点使SIMD特别适合于多媒体应用等数据密集型运算。

如:AMD公司引以为豪的3D NOW! 技术实质就是SIMD,这使K6-2、雷鸟、毒龙处理器在音频解码、视频回放、3D游戏等应用中显示出优异的性能。

4.FPU

FPU是Cortex - M4浮点运算的可选单元。因此它是一个专用于浮点任务的单元。这个单元通过硬件提升性能,能处理单精度浮点运算,并与IEEE 754标准 兼容。这完成了ARMv7 - M架构单精度变量的浮点扩展。FPU扩展了寄存器的程序模型与包含32个单精度寄存器的寄存器文件。这些可以被看作是:

·16个64位双字寄存器,D0 - D15

 ·32个32位单字寄存器,S0 - S31 该FPU提供了三种模式运作,以适应各种应用

 ·全兼容模式(在全兼容模式,FPU处理所有的操作都遵循IEEE754的硬件标准)

 ·Flush-to-zero 冲洗到零模式(设置FZ位浮点状态和控制寄存器FPSCR [24]到flush-to-zero 模式。在此模式下,FPU 在运算中将所有不正常的输入操作数的算术CDP操作当做0.除了当从零操作数的结果是合适的情况。VABS,VNEG,VMOV 不会被当做算术CDP的运算,而且不受flush-to-zero 模式影响。结果是微小的,就像在IEEE 754 标准的描述的那样,在目标精度增加的幅度小于四舍五入后最低正常值,被零取代。IDC的标志位,FPSCR [7],表示当输入Flush时变化。UFC标志位,FPSCR [3],表示当Flush结束时变化)

 ·默认的NaN模式(DN位的设置,FPSCR [25],会进入NaN的默认模式。在这种模式下,如对任何算术数据处理操作的结果,涉及一个输入NaN,或产生一个NaN结果,会返回默认的NaN。仅当VABS,VNEG,VMOV运算时,分数位增加保持。所有其他的CDP运算会忽略所有输入NaN的小数位的信息)。具体指令请自行查看手册。

Cortex-M功能模块差异

  由于CM1主要是用在FPGA产品中,故下面对比忽略CM1。我们知道CM处理器是向下兼容的,故CM功能模块是随着版本的升级而逐步增加的,我们逐步从最低版本开始对比。

2.1 CM0 vs CM0+

 

  先来聊聊CM0与CM0+,从最基准的CM0模块看起:

 

ARMv6-M CPU内核:ARM公司于2007年推出的内核。冯·诺依曼体系结构,3级流水线,支持大部分Thumb和小部分Thumb-2指令集,所有指令一共57条。此外还内嵌32-bit返回结果的硬件乘法器。 NVIC嵌套向量中断控制器:用于CPU在正常Run模式下中断管理。最大支持32个外部中断,外部中断可设4级抢占优先级(2bit)。 WIC唤醒中断控制器:用于CPU在低功耗Sleep模式下中断管理。 AHB-Lite总线:一条32bit AMBA-3标准的高性能system总线负责所有Flash、SRAM中指令和数据存取。 调试模块:0-4个硬件断点Breakpoint,0-2个数据监测点Watchpoint。 DAP调试接口:通过DAP模块支持JTAG和SWD接口。

 

 

  那么CM0+到底改进了什么?

ARMv6-M CPU内核:流水线改为2级(很多8bit MCU都是2级流水线,主要用于降低功耗) NVIC嵌套向量中断控制器:增加了VTOR即中断重定向功能。

  那么CM0+到底增加了什么?

MPU存储器保护单元:提供硬件方式管理和保护内存,控制访问权限,最大可将内存分为8*8个region。内存越权访问,将返回MemManage Fault。 MTB片上跟踪单元:用户体验更好的的跟踪调试,优化的异常捕获机制,可以更快地定位bug。 Fast I/O:可单周期访问的快速I/O口,更易于Bit-banging(比如GPIO模拟SPI、IIC协议)。 2.2 CM0+ vs CM3

 

  前面比较完了CM0与CM0+,再来看看CM3比CM0+增强在了哪里:

  那么CM3到底改进了什么?

ARMv7-M CPU内核:ARM公司于2004年推出的内核。哈佛体系结构,3级流水线+分支预测,支持全部的Thumb和Thumb-2指令集。内嵌32-bit硬件乘法器可返回64-bit运算结果,且新增32-bit硬件除法器。 NVIC嵌套向量中断控制器:最大支持240个外部中断,中断优先级可分组(抢占优先级、响应优先级),8bit优先级设置(最大128级抢占优先级(对应最小2级响应优先级),最大256级响应优先级(对应无抢占优先级))。 3x AHB-Lite总线:除了原system总线负责SRAM存取外,还新增两条ICode、DCode总线分别完成Flash上指令和数据存取。 调试模块:0-8个硬件断点Breakpoint,0-4个数据监测点Watchpoint。 ITM/ETM跟踪单元:ITM更好地支持printf风格debug,ETM提供实时指令和数据跟踪。

  那么CM3到底增加了什么?

  额,CM3相比CM0+并没有增加什么独有模块,反倒是少了Fast I/O Port,实际上Fast I/O Port是CM家族里CM0+所独有的模块。

2.3 CM3 vs CM4

 

 

  前面比较完了CM0+与CM3,再来看看CM4比CM3增强在了哪里:

  那么CM4到底改进了什么?

ARMv7E-M CPU内核:增加了DSP相关指令支持。

  那么CM4到底增加了什么?

DSP数字信号处理单元:新增支持单周期16/32-bit MAC、dual 16-bit MAC, 8/16-bit SIMD算法的数字信号处理单元。 FPU浮点运算单元:新增单精度(float型)兼容IEEE-754标准的浮点运算单元(VFPv4-SP)。 2.4 CM4 vs CM7

 

  前面比较完了CM3与CM4,再来看看CM7比CM4增强在了哪里:

  那么CM7到底改进了什么?

ARMv7E-M CPU内核:6级流水线+分支预测。 2x AHB-Lite总线:精简为2条AHB总线,其中AHB-P外设接口完成原来system总线功能, AHB-S从属接口负责外部总线控制器(如DMA)功能以及与TCM接口功能。 MPU存储器保护单元:最大可将内存分为16*8个region。 FPU浮点运算单元:新增双精度(double型)兼容IEEE-754标准的浮点运算单元(VFPv5)。

 

  那么CM7到底增加了什么?

I/D-Cache缓存区:即是我们通常理解的L1 Cache,每个Cache大小为4-64KB。 I/D-TCM紧密耦合存储器:紧密的与处理器内核相耦合的RAM,提供与Cache相当的性能,但比Cache更具确定性,memory最大均为16MB。 ECC特性:对L1 Cache提供错误校正和恢复功能,提高系统的可靠性。 AXI-M总线:基于AMBA 4的64bit AXI总线,用于支持挂在系统上的L2 memory。 最近在关注Cortex-M处理器,针对目前进入大众视野的M0、M3、M4做了如下简单对比,内容来自ARM等官网,这里仅仅是整理了下,看起来更直观点,呵呵。   Cortex-M 系列针对成本和功耗敏感的 MCU 和终端应用(如智能测量、人机接口设备、汽车和工业控制系统、大型家用电器、消费性产品和医疗器械)的混合信号设备进行过优化。. 一、比较Cortex-M 处理器 Cortex-M 系列处理器都是二进制向上兼容的,这使得软件重用以及从一个 Cortex-M 处理器无缝发展到另一个成为可能。 M Cortex-M 技术 CMSIS ARM Cortex 微控制器软件接口标准 (CMSIS)是 Cortex-M 处理器系列的与供应商无关的硬件抽象层。 使用 CMSIS,可以为接口外设、实时操作系统和中间件实现一致且简单的软件接口,从而简化软件的重用、缩短新微控制器开发人员的学习过程,并缩短新产品的上市时间。 深入:嵌套矢量中断控制器 (NVIC) NVIC 是 Cortex-M 处理器不可或缺的部分,它为处理器提供了卓越的中断处理能力。 Cortex-M 处理器使用一个矢量表,其中包含要为特定中断处理程序执行的函数的地址。接受中断时,处理器会从该矢量表中提取地址。 为了减少门数并增强系统灵活性,Cortex-M 处理器使用一个基于堆栈的异常模型。出现异常时,系统会将关键通用寄存器推送到堆栈上。完成入栈和指令提取后,将执行中断服务例程或故障处理程序,然后自动还原寄存器以使中断的程序恢复正常执行。使用此方法,便无需编写汇编器包装器了(而这是对基于 C 语言的传统中断服务例程执行堆栈操作所必需的),从而使得应用程序的开发变得非常容易。NVIC支持中断嵌套(入栈),从而允许通过运用较高的优先级来较早地为某个中断提供服务。 在硬件中完成对中断的响应 Cortex-M 系列处理器的中断响应是从发出中断信号到执行中断服务例程的周期数。它包括:        检测中断       背对背或迟到中断的最佳处理(参见下文)       提取矢量地址       将易损坏的寄存器入栈       跳转到中断处理程序 这些任务在硬件中执行,并且包含在为 Cortex-M 处理器报出的中断响应周期时间中。在其他许多体系结构中,这些任务必须在软件的中断处理程序中执行,从而引起延迟并使得过程十分复杂。   NVIC 中的尾链 在背对背中断的情况下,传统系统会重复完整的状态保存和还原周期两次,从而导致更高的延迟。Cortex-M处理器通过在 NVIC 硬件中实现尾链技术简化了活动中断和挂起的中断之间的转换。处理器状态会在比软件实现时间更少的周期内自动保存在中断条目上并在中断退出时还原,从而显著提升低 MHz 系统的性能。   NVIC 对迟到的较高优先级中断的响应 如果在为上一个中断执行堆栈推送期间较高优先级的中断迟到,NVIC 会立即提取新的矢量地址来为挂起的中断提供服务,如上所示。Cortex-M NVIC 对这些可能性提供具有确定性的响应并支持迟到和抢占。   NVIC 进行的堆栈弹出抢占 同样,如果异常到达,NVIC 将放弃堆栈弹出并立即为新的中断提供服务,如上所示。通过抢占并切换到第二个中断而不完成状态还原和保存,NVIC 以具有确定性的方式实现了缩短延迟。

 再来说说ARM7,ARM9系列,

ARM9

ARM9系列处理器是英国ARM公司设计的主流嵌入式处理器,主要包括ARM9TDMI和ARM9E-S等系列。

基本概述 ARM9采用哈佛体系结构,指令和数据分属不同的总线,可以并行处理。在流水线上,ARM7是三级流水线,ARM9是五级流水线。由于结构不同,ARM7的执行效率低于ARM9。平时所说的ARM7、ARM9实际上指的是ARM7TDMI、ARM9TDMI软核,这种处理器软核并不带有MMU和cache,不能够运行诸如linux这样的嵌入式操作系统。而ARM公司对这种架构进行了扩展,所以有了ARM710T、ARM720T、ARM920T、ARM922T等带有MMU和cache的处理器内核。

 

主要特性编辑 融合了ARM920T™ ARM® Thumb® 处理器 – 工作于180 MHz时性能高达200 MIPS,存储器管理单元 – 16-K 字节的数据缓存,16-K字节的指令缓存,写缓冲器 – 含有调试信道的内部仿真器 – 中等规模的嵌入式宏单元结构( 仅针对256 BGA 封装) · 低功耗:VDDCORE电流为30.4 mA 待机模式电流为3.1 mA · 附加的嵌入式存储器 – SRAM为16K ;ROM为128K · 外部总线接口(EBI) – 支持SDRAM,静态存储器, Burst Flash,无缝连接的CompactFlash®, SmartMedia™及NAND Flash · 提高性能而使用的系统外设: – 增强的时钟发生器与电源管理控制器 – 两个有双PLL的片上振荡器 – 低速的时钟操作模式与软件功耗优化能力 – 四个可编程的外部时钟信号 – 包括周期性中断、看门狗及第二计数器的系统定时器 – 有报警中断的实时时钟 – 调试单元、两线UART并支持调试信道 – 有8 个优先级的高级中断控制器,独立的可屏蔽中断源,伪中断保护 – 7个外部中断源及1 个快速中断源 – 有122个可编程I/O口线的四个32 位PIO控制器,各线均有输入变化中断及开漏能力 – 20通道的外设数据控制器(DMA) · 10/100 Base-T 型以太网卡接口 – 独立的媒体接口(MII)或简化的独立媒体接口(RMII) – 对于接收与发送有集成的28 字节FIFO及专用的DMA 通道 · USB 2.0 全速(12 M比特/秒) 主机双端口 – 双片上收发器(208引脚PQFP封装中仅为一个) – 集成的FIFO及专用的DMA 通道 · USB 2.0 全速(12 M比特/秒) 器件端口 – 片上收发器, 2-K字节可配置的集成FIFO · 多媒体卡接口(MCI) – 自动协议控制及快速自动数据传输 – 与MMC及SD存储器卡兼容,支持两个SD存储器 · 3个同步串行控制器(SSC) – 每个接收器与发送器有独立的时钟及帧同步信号 – 支持I2S模拟接口,时分复用 – 32比特的高速数据流传输能力 · 4个通用同步/异步接收/发送器(USART) – 支持ISO7816 T0/T1 智能卡 – 硬软件握手 – 支持RS485 及高达115 Kbps的IrDA 总线 – USART1为全调制解调控制线 · 主机/从机串行外设接口(SPI) – 8~ 16 位可编程数据长度,可连接4个外设 · 两个 3 通道16 位定时/计数器(TC) – 3个外部时钟输入,每条通道有2 个多功能I/O引脚 – 双PWM 产生器,捕获/波形模式,上加/下减计数能力 · 两线接口(TWI) – 主机模式支持,所有两线Atmel EEPROM 支持 · 所有数字引脚的IEEE 1149.1 JTAG边界扫描 · 电源供应 – VDDCORE,VDDOSC及VDDPLL电压为:1.65V ~1.95V – VDDIOP (外设I/O) 及VDDIOM (存储器I/O)电压为:1.65V~ 3.6V 体系特点 结构特点 以ARM9E-S为例介绍ARM9处理器的主要结构及其特点。ARM9E-S的结构如图4所示。其主要特点如下: ⑴32bit定点RISC处理器,改进型ARM/Thumb代码交织,增强性乘法器设计。支持实时(real-time)调试; ⑵片内指令和数据SRAM,而且指令和数据的存储器容量可调; ⑶片内指令和数据高速缓冲器(cache)容量从4K字节到1M字节; ⑷设置保护单元(protection unit),非常适合嵌入式应用中对存储器进行分段和保护; ⑸采用AMBA AHB总线接口,为外设提供统一的地址和数据总线; ⑹支持外部协处理器,指令和数据总线有简单的握手信令支持; ⑺支持标准基本逻辑单元扫描测试方法学,而且支持BIST(built-in-self-test); ⑻支持嵌入式跟踪宏单元,支持实时跟踪指令和数据。 ARM920T运行模式 ARM920T支持7种运行模式,分别为: (1)用户模式(usr), ARM处理器正常的程序执行状态; (2)快速中断模式 (fiq), 用于高速数据传输或通道处理; (3)外部中断模式(irq), 用于通用的中断处理; (4)管理模式(svc), 操作系统使用的保护模式; (5)数据访问终止模式(abt), 当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护; (6)系统模式(sys), 运行具有特权的操作系统任务; (7)未定义指令中止模式(und) 当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。 ARM微处理器的运行模式可以通过软件改变,也可以通过外部中断或异常处理改变。大多数的应用程序运行在用户模式下,当处理器运行在用户模式下时,某些被保护的系统资源是不能被访问的。除用户模式以外,其余的6种模式称为特权模式;其中除去用户模式和系统模式以外的5种又称为异常模式,常用于处理中断或异常,以及访问受保护的系统资源等情况。 ARM920T的工作状态 从编程的角度看,ARM920T微处理器的工作状态一般有两种: (1)ARM状态,此时处理器执行32位的、字对齐的ARM指令; (2)Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令。 ARM指令集和Thumb指令集均有切换处理器状态的指令,在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且,处理器的工作状态的转变并不影响处理器的工作模式和相应寄存器中的内容。但ARM微处理器在开始执行代码时,应该处于ARM 状态。 当操作数寄存器的状态位(位0)为1时,可以采用执行BX指令的方法,使微处理器从 ARM状态切换到Thumb状态。此外,当处理器处于Thumb状态时发生异常(如IRQ、FIQ、Undef、Abort、SWI等),当异常处理返回时,自动切换回Thumb状态。当操作数寄存器的状态位为0时,执行BX指令可以使微处理器从Thumb状态切换到ARM状态。此外,在处理器进行异常处理时,将PC指针放入异常模式链接寄存器中,并从异常向量地址开始执行程序,也可以使处理器切换到ARM状态。 ARM920T体系结构的存储器格式 ARM920T体系结构将存储器看做是从零地址开始的字节的线性组合。从0字节到3字节放置第1个存储的字数据,从第4个字节到第7个字节放置第2个存储的字数据,依次排列。作为32位的微处理器,ARM92OT体系结构所支持的最大寻址空间为4GB。 ARM92OT体系结构可以用两种方法存储字数据,分别称为大端格式和小端格式。大端格式中字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中 以大端格式存储数据 以小端格式存储数据 指令 ⒈loads 指令与n stores指令 指令周期数的改进最明显的是loads指令和stores指令。从ARM7到ARM9这两条指令的执行时间减少了30%。指令周期的减少是由于ARM7和ARM9两种处理器内的两个基本的微处理结构不同所造成的。 ⑴ARM9有独立的指令和数据存储器接口,允许处理器同时进行取指和读写数据。这叫作改进型哈佛结构。而ARM7只有数据存储器接口,它同时用来取指令和数据访问。 ⑵5级流水线引入了独立的存储器和写回流水线,分别用来访问存储器和将结果写回寄存器。 以上两点实现了一个周期完成loads指令和stores指令。 ⒉互锁(interlocks)技术 当指令需要的数据因为以前的指令没有执行完而没有准备好就会产生管道互锁。当管道互锁发生时,硬件会停止这个指令的执行,直到数据准备好为止。虽然这种技术会增加代码执行时间,但是为初期的设计者提供了巨大的方便。编译器以及汇编程序员可以通过重新设计代码的顺序或者其他方法来减少管道互锁的数量。 ⒊分枝指令 ARM9和ARM7的分枝指令周期是相同的。而且ARM9TDMI和ARM9E-S并没有对分枝指令进行预测处理。 处理能力 新一代的ARM9处理器,通过全新的设计,采用了更多的晶体管,能够达到两倍以上于ARM7处理器的处理能力。这种处理能力的提高是通过增加时钟频率和减少指令执行周期实现的。 (一) 时钟频率的提高: ARM7处理器采用3级流水线,而ARM9采用5级流水线。增加的流水线设计提高了时钟频率和并行处理能力。5级流水线能够将每一个指令处理分配到5个时钟周期内,在每一个时钟周期内同时有5个指令在执行。在同样的加工工艺下,ARM9TDMI处理器的时钟频率是ARM7TDMI的1.8~2.2倍。 (二) 指令周期的改进: 指令周期的改进对于处理器性能的提高有很大的帮助。性能提高的幅度依赖于代码执行时指令的重叠,这实际上是程序本身的问题。对于采用最高级的语言,一般来说,性能的提高在30%左右。 Cortex-A 系列处理器 Cortex-A 系列处理器是一系列处理器,支持ARM32或64位指令集,向后完全兼容早期的ARM处理器,包括从1995年发布的ARM7TDMI处理器到2002年发布的ARMll处理器系列。         简介 32位RISCCPU开发领域中不断取得突破,其设计的微处理器结构已经从v3发展到现在的v7。Cortex系列处理器是基于ARMv7架构的,分为Cortex-M、Cortex-R和Cortex-A三类。由于应用领域的不同,基于v7架构的Cortex处理器系列所采用的技术也不相同。基于v7A的称为“Cortex-A系列。高性能的Cortex-A15、可伸缩的Cortex-A9、经过市场验证的Cortex-A8处理器以及高效的Cortex-A7和Cortex-A5处理器均共享同一体系结构,因此具有完整的应用兼容性,支持传统的ARM、Thumb指令集和新增的高性能紧凑型Thumb-2指令集。 Cortex-A15和Cortex-A7都支持ARMv7A体系结构的扩展,从而为大型物理地址访问和硬件虚拟化以及启用big.LITTLE处理的AMBA4ACE一致性提供支持。   技术特点 ARMv7包括3个关键要素:NEON单指令多数据(SIMD)单元、ARMtrustZone安全扩展、以及thumb2指令集,通过16位和32位混合长度指令以减小代码长度。   高性能 Cortex-A 设备可为其目标应用领域提供各种可伸缩的能效性能点。一些说明示例如下: Cortex-A15 ,可为新一代移动基础结构应用和要求苛刻的无线基础结构应用提供性能最高的解决方案 Cortex-A7,可采用独立、多核配置实现,提供 800 MHz - 1.2 GHz 的典型频率,也可以与 Cortex-A15 结合用于 big.LITTLE 处理 Cortex-A9 实现,可提供 800 MHz - 2 GHz 的标准频率,每个内核可提供 5000 DMIPS 的性能 Cortex-A8 单核解决方案,可提供经济有效的高性能,在 600 MHz - 1 GHz 的频率下,提供的性能超过 2000 DMIPS Cortex-A5 低成本实现,在 400- 800 MHz 的频率下,提供的性能超过 1200 DMIPS。   多核技术 Cortex-A5、[1] Cortex-A7、Cortex-A9 和 Cortex-A15 处理器都支持 ARM 的第二代多核技术 单核到四核实现,支持面向性能的应用领域 支持对称和非对称的操作系统实现 通过加速器一致性端口 (ACP) 在导出到系统的整个处理器中保持一致性 Cortex-A7 和 Cortex-A15 将多核一致性扩展至 AMBA4 ACE 的 1~4 核群集以上(AMBA 一致性扩展)   高级扩展 除了具有与上一代经典 ARM 和 Thumb® 体系结构的二进制兼容性外,Cortex-A 类处理器还通过以下技术扩展提供了更多优势 Thumb-2,提供最佳代码大小和性能 TrustZone 安全扩展,提供可信计算 Jazelle 技术,提高执行环境(如 Java、.Net、MSIL、Python 和 Perl)速度。   产品应用 ARM公司的Cortex-A系列处理器适用于具有高计算要求、运行丰富操作系统以及提供交互媒体和图形体验的应用领域。从最新技术的移动Internet必备设备(如手机和超便携的上网本或智能本)到汽车信息娱乐系统和下一代数字电视系统。也可以用于其他移动便携式设备,还可以用于数字电视、机顶盒、企业网络、打印机和服务器解决方案。这一系列的处理器具有高效低耗等特点,比较适合配置于各种移动平台。 虽然Cortex-A处理器正朝着提供完全的Internet体验的方向发展,但其应用也很广泛,包括: 产品类型 应用 计算 上网本、智能本、输入板、电子书阅读器、瘦客户端 手机 智能手机、特色手机 数字家电 机顶盒、数字电视、蓝光播放器、游戏控制台 汽车 信息娱乐、导航 企业 激光打印机、路由器、无线基站、VOIP 电话和设备 无线基础结构 Web 2.0、无线基站、交换机、服务器   Cortex-A5 处理器 ARM Cortex™-A5 处理器是能效最高、成本最低的处理器,能够向最广泛的设备提供 Internet 访问:从入门级智能手机、低成本手机和智能移动终端到普遍采用的嵌入式、消费类和工业设备。 Cortex-A5 处理器可为现有 ARM926EJ-S™ 和 ARM1176JZ-S™ 处理器设计提供很有价值的迁移途径。它可以获得比 ARM1176JZ-S 更好的性能,比 ARM926EJ-S 更好的功效和能效以及 100% 的 Cortex-A 兼容性。 这些处理器向特别注重功耗和成本的应用程序提供高端功能,其中包括: 多重处理功能,可以获得可伸缩、高能效性能 用于媒体和信号处理的可选浮点或 NEON™单元 与 Cortex-A8、Cortex-A9 和经典 ARM 处理器的完全应用兼容性 高性能内存系统,包括高速缓存和内存管理单元   Cortex-A7 处理器 ARM Cortex™-A7 MPCore™ 处理器是 ARM 迄今为止开发的最有效的应用处理器,它显著扩展了 ARM 在未来入门级智能手机、平板电脑以及其他高级移动设备方面的低功耗领先地位。 Cortex-A7 处理器的体系结构和功能集与 Cortex-A15 处理器完全相同,不同这处在于,Cortex-A7 处理器的微体系结构侧重于提供最佳能效,因此这两种处理器可在 big.LITTLE配置中协同工作,软件可以在高能效 Cortex-A7 处理器上运行 也可以在需要时在高性能 Cortex-A15 处理器上运行 无需重新编译,[2]  从而提供高性能与超低功耗的终极组合。 作为独立处理器,单个 Cortex-A7 处理器的能源效率是 ARM Cortex-A8 处理器(支持如今的许多最流行智能手机)的 5 倍,性能提升 50%,而尺寸仅为后者的五分之一。 Cortex-A7 可以使 2013-2014 年期间低于 100 美元价格点的入门级智能手机与 2010 年 500 美元的高端智能手机相媲美。这些入门级智能手机在发展中世界将重新定义连接和 Internet 使用。 该处理器与其他 Cortex-A 系列处理器完全兼容并整合了高性能 Cortex-A15 处理器的所有功能,包括虚拟化、大物理地址扩展 (LPAE) NEON 高级 SIMD 和 AMBA 4 ACE 一致性。 最佳的功效和占用空间,可作为独立的应用处理器 性能高于 2011 年主流智能手机 CPU 性能提升高达 20% 而功耗降低 60%AMBA 4 ACE 一致性接口支持大小 CPU 群集之间 20us 以下的上下文迁移   Cortex-A8 处理器 ARMCortex-A8处理器是一款适用于复杂操作系统及用户应用的应用处理器,其结构如图所示。支持智能能源管理(IEM,IntelligentEnergyManger)技术的ARMArtisan库以及先进的泄漏控制技术,使得Cortex-A8处理器实现了非凡的速度和功耗效率在65nm上艺下,ARMcortex-A8处理器的功耗不到300mW,能够提供高性能和低功耗它第一次为低费用、高容量的产品带来了台式机级别的性能

 

A8处理器结构 Cortex-A8处理器是第一款基于下一代ARMv7架构的应用处理器,使用了能够带来更高性能、更低功耗和更高代码密度的Thumb-2技术它首次采用了强大的NEON信号处理扩展集,为H.264和MP3等媒体编解码提供加速 Cortex-A8的解决方案还包括Jazelle-RCTJava加速技术,对实时(JIT)和动态调整编译(DAC)提供最优化,同时减少内存占用空间高达3倍该处理器配置了先进的超标量体系结构流水线,能够同时执行多条指令,并且提供超过2.0DMIPS/MHz的性能处理器集成了一个可调尺寸的二级高速缓冲存储器,能够同高速的16KB或者32KB一级高速缓冲存储器一起工作,从而达到最快的读取速度和最大的吞吐量新处理器还配置了用于安全交易和数字版权管理的TrustZone技术,以及实现低功耗管理的IEM功能 Cortex-A8处理器使用了先进的分支预测技术,并且具有专用的NEON整型和浮点型流水线进行媒体和信号处理在使用小于4mm2的硅片及低功耗的65nm工艺的情况下,Cortex-A8处理器的运行频率将高于600MHz(不包括NEON追踪技术和二级高速缓冲存储器)在高性能的90nm和65nm工艺下,Cortex-A8处理器运行频率最高可达1GHz,能够满足高性能消费产品设计的需要。   Cortex-A9处理器 ARM Cortex™-A9 处理器提供了史无前例的高性能和高能效,从而使其成为需要在低功耗或散热受限的成本敏感型设备中提供高性能的设计的理想解决方案。 它既可用作单核处理器,也可用作可配置的多核处理器,同时可提供可合成或硬宏实现。该处理器适用于各种应用领域,从而能够对多个市场进行稳定的软件投资。 与高性能计算平台消耗的功率相比,ARM Cortex-A9 处理器可提供功率更低的卓越功能,其中包括: 无与伦比的性能,2GHz 标准操作可提供 TSMC 40G 硬宏实现 以低功耗为目标的单核实现,面向成本敏感型设备 利用高级 MPCore 技术,最多可扩展为 4 个一致的内核 可选 NEON™ 媒体和/或浮点处理引擎 Cortex-A15 处理器 ARM Cortex™-A15 MPCore™ 处理器是性能高且可授予许可的处理器。它提供前所未有的处理功能,与低功耗特性相结合,在各种市场上成就了卓越的产品,包括智能手机、平板电脑、移动计算、高端数字家电、服务器和无线基础结构。Cortex-A15 MPCore 处理器提供了性能、功能和能效的独特组合,进一步加强了 ARM 在这些高价值和高容量应用细分市场中的领导地位。 Cortex-A15 MPCore 处理器是 Cortex-A 系列处理器的最新成员,确保在应用方面与所有其他获得高度赞誉的 Cortex-A 处理器完全兼容。这样,就可以立即访问已得到认可的开发平台和软件体系,包括 Android™、Adobe® Flash® Player、Java Platform Standard Edition (Java SE)、JavaFX、Linux、Microsoft Windows Embedded、Symbian 和 Ubuntu 以及 700 多个 ARM Connected Community™ 成员,这些成员提供应用软件、硬件和软件开发工具、中间件以及 SoC 设计服务。 Cortex-A15 MPCore 处理器具有无序超标量管道,带有紧密耦合的低延迟 2 级高速缓存,该高速缓存的大小最高可达 4MB。浮点和 NEON™ 媒体性能方面的其他改进使设备能够为消费者提供下一代用户体验,并为 Web 基础结构应用提供高性能计算。 预计 Cortex-A15 MPCore 处理器的移动配置所能提供的性能是当前的高级智能手机性能的五倍还多。在高级基础结构应用中,Cortex-A15 的运行速度最高可达 2.5GHz,这将支持在不断降低功耗、散热和成本预算方面实现高度可伸缩的解决方案。   Cortex-A57 cortex-a57是ARM针对2013年、2014年和2015年设计起点的CPU产品系列的旗舰级CPU,它采用armv8-a架构,提供64位功能,而且通过Aarch32执行状态,保持与ARMv7架构的完全后向兼容性。在高于4GB的内存广泛使用之前,64位并不是移动系统真正必需的,即便到那时也可以使用扩展物理寻址技术来解决,但尽早推出64位,可以实现更长、更顺畅的软件迁移,让高性能应用程序能够充分利用更大虚拟地址范围来运行内容创建应用程序,例如视频编辑、照片编辑和增强现实。新架构可以运行64位操作系统,并在操作系统上无缝混合运行32位和64位应用程序。ARMv8架构可以实现状态之间的轻松转换。 除了ARMv8的架构优势之外,Cortex-A57还提高了单个时钟周期性能,比高性能的Cortex-A15CPU高出了20%至40%。它还改进了二级高速缓存的的设计以及内存系统的其他组件,极大的提高了能效。Cortex-A57将为移动系统提供前所未有的高能效性能水平,而借助big.LITTLE,SoC能以很低的平均功耗做到这一点。   Cortex-A72处理器 Cortex-A72是ARM性能最出色、最先进的处理器。于2015年年初正式发布的Cortex-A72是基于ARMv8-A架构、并构建于Cortex-A57处理器在移动和企业设备领域成功的基础之上。在相同的移动设备电池寿命限制下,Cortex-A72能相较基于Cortex-A15的设备提供3.5倍的性能表现,展现优异的整体功耗效率。 Cortex-A72的强化性能和功耗水平重新定义了2016年高端设备为消费者带来的丰富连接和情境感知(context-aware)的体验,这些高端设备涵盖高阶的智能手机、中型平板电脑、大型平板电脑、翻盖式笔记本、一直到外形规格可变化的移动设备。未来的企业基站和服务器芯片也能受惠于Cortex-A72的性能,并在其优异的能效基础上,在有限的功耗范围内增加内核数量,提升工作负载量。 Cortex-A72可在芯片上单独实现,也可以搭配Cortex-A53处理器与ARMCoreLinkTMCCI高速缓存一致性互连(CacheCoherentInterconnect)构成ARMbig.LITTLETM配置,进一步提升能效。 Cortex-A72是目前基于ARMv8-A架构处理器中性能最高的处理器。它再次展现了ARM在处理器技术的领先地位,在提升新的性能标准之余,同时大幅降低功耗,可广泛地扩展应用于移动与企业设备。 智能手机是目前大众主要的计算平台,提供使用者随时随地创造、强化以及使用内容的功能。拟真且复杂的图像与视频捕捉、主机级游戏般的性能、用来进行文档与办公应用流畅处理的生产力套件等,这些需求促使Cortex-A72如此高端性能的处理器面市,执行这些服务的设备被要求在更轻薄、更时尚的外形设计之下,必须全天候处理日益增长的CPU和GPU工作负载,这使得制造商不得不将精力用在寻找高能效的处理器内核。在智能手机、平板电脑、甚至是大尺寸的移动设备,Cortex-A72能通过出色的能效与内存系统,提功绝佳的用户体验。将Cortex-A72与Cortex-A53处理器以ARMbig.LITTLE™(大小核)处理器进行配置,可以扩展整体的性能与效率表现。    


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有