首先要明确一个概念,Cortex并不是一种架构,而是ARM的一个系列(Cortex-A系列),而我们通常意义的ARM7/ARM9/ARM11才是所谓的架构。同时需注意,Cortex-A5、Cortex-A8、Cortex-A9、Cortex-A15、Cortex-A7都是ARM7的架构。
那么他们的性能比较呢?
先来看一个ARM官网的参数比较图:
内核 | Cortex-A5 | Cortex-A5 MPCore | Cortex-A8 | Cortex-A9 | Cortex-A9 MPCore | Cortex-A9 硬核 | Cortex-A15 MPCore | Cortex-A7 MPCore |
---|---|---|---|---|---|---|---|---|
架构 | ARMv7 | ARMv7 + MP | ARMv7 | ARMv7 | ARMv7 + MP | ARMv7 + MP | ARMv7 +MP+LPAE | ARMv7+MP+LPAE |
中断 控制器 | GIC-390 | 已集成 - GIC | GIC-390 | GIC-390 | 已集成 - GIC | 已集成 - GIC | 已集成 - GIC | GIC-400 |
L2 cache 控制器 | L2C-310 | L2C-310 | 已集成 | L2C-310 | L2C-310 | L2C-310 | 已集成 | 已集成 |
预期 实现 | 300-800 MHz | 300-800 MHz | 600-1000 MHz | 600-1000 MHz | 600-1000 MHz | 800-2000 MHz | 1000-2500 MHz | 800-1500MHz |
DMIPS/MHz | 1.6 | 1.6(每个 CPU) | 2.0 | 2.5 | 2.5(每个 CPU) | 5.0(双核) | TBC | 1.9(每个 CPU) |
图中的Cortex-AX MPCore的内核说明支持多核的集成,我们尽量只讨论单核性能。
从图中我们可以看到,Cortex-AX架构中的所有型号都是ARM7架构。同时也可以明显看到Cortex-A5的性能是最差的,因为主频最低(最高才只有800MHz,而其他的型号最低主频也有600MHz),另外就是Cortex-A5的DMIPS/MHz只有1.6,而其他产品最低也在1.9(Cortex-A7)。所以可以说,Cortex-A5性能最差。
其次我们再来看Cortex-A15,这个型号只有MPCore版本的,也就是说没有单核版本的A15,那么我们只好用多核的A15与其他的单核对比。我们先来看一下ARM官方网站对于Cortex-A15的两句描述:
----“ARM Cortex-A15 MPCore 处理器是业界迄今为止性能最高且可授予许可的处理器”
----“预计 Cortex-A15 MPCore 处理器的移动配置所能提供的性能是当前的高端智能手机性能的五倍还多,是基于ARM 处理器的基础结构平台的总性能的10 倍还多,同时还具有 ARM 标志性的低功耗特性。”
有了以上两句话,毫无疑问,当前来讲,Cortex-A15是Cortex-A*系列中性能最高的。
接着再来说说Cortex-A8,我们先来对比Cortex-A8与Cortex-A9,在上面的性能比较图中可以看出,两者的主频是相同的,都在600-1000MHz之间,但是Cortex-A9的DMIPS/MHz(2.5)要比Cortex-A8的DMIPS/MHz(2)高。因此可以认为Cortex-A9>Cortex-A8。
我们再来对比Cortex-A8与Cortex-A7。在ARM官网中对Cortex-A7的介绍中找到以下描述:
“单个 Cortex-A7 处理器的能源效率是 ARM Cortex-A8 处理器(支持如今的许多最流行智能手机)的 5 倍,性能提升 50%,而尺寸仅为后者的五分之一”
也就是说,性能方面Cortex-A7>Cortex-A8。
好了,此时我们可以排除一个大致的性能比较图:
Cortex-A5<Cortex-A8<Cortex-A9/Cortex-A7<Cortex-A15
那么Cortex-A9与Cortex-A7对比呢?
因为Cortex-A7与Cortex-A15一样,没有单核版本的,那么我们就假设Cortex-A9和Cortex-A7都是多核心。
首先,主频方面:Cortex-A9是600-1000MHz,Cortex-A7是800-1500MHz,因为两者都有交集,虽然不能说谁的主频一定比另一个高,但是,我们可以简单的认为,Cortex-A7高了一点点,但是很不明显。
其次是DMIPS方面:Cortex-A9是2.5,Cortex-A7是1.9,很明星,Cortex-A9领先。
然后对比其他“软实力”:因为Cortex-A7发布要晚于Cortex-A9,同时Cortex-A7整合了高性能 Cortex-A15 处理器的所有功能,包括虚拟化、大物理地址扩展 (LPAE) NEON高级SIMD和AMBA 4 ACE一致性。
经过上面的3个方面对比,我个人认为,Cortex-A9与Cortex-A7的性能差距很小,但如果非要排个顺序的话,假设两者都是集成的自身双核(即A9双核与A7双核),那么A9的性能应该略高一点。Cortex-A9可以算是一员有实力的“老将”,而Cortex-A7可以认为是一位“新人”,但是却有很高的天赋和潜力。从发布时间上来推测,因为Cortex-A7发布时间要晚于Cortex-A15,Cortex-A7应该算是低端的A15,可以用来替代Cortex-A9的存在。
但是,Cortex-A7拥有一个巨大的杀手锏:因为Cortex-A7与A15的架构和功能集完全相同,因此Cortex-A7可以与A15协同工作。这个时候可以完成高性能与超低功耗的终极组合。有了这样的组合,秒杀Cortex-A9是在所难免的。
Core | Cortex-A5 | Cortex-A5 MPCore | Cortex-A8 | Cortex-A9 | Cortex-A9 MPCore | Cortex-A15 MPCore | Cortex-A7 MPCore | Cortex-A12 |
---|---|---|---|---|---|---|---|---|
Architecture | ARMv7 | ARMv7 + MP | ARMv7 | ARMv7 | ARMv7 + MP | ARMv7 +MP+LPAE | ARMv7+MP+LPAE | ARMv7 +MP+LPAE |
Interrupt Controller | GIC-390 | Integrated- GIC | GIC-390 | GIC-390 | Integrated- GIC | Integrated-GIC | GIC-400 | GIC-400 |
L2 Cache Controller | L2C-310 | L2C-310 | Integrated | L2C-310 | L2C-310 | Integrated | Integrated | Integrated |
Expected Implementation | 300-800 MHz | 300-800 MHz | 600-1000 MHz | 600-1000 MHz | 600-1000 MHz | 1000-2500 MHz | 800-1500MHz | 1000-2500 MHz |
DMIPS/MHz | 1.6 | 1.6 per CPU | 2.0 | 2.5 | 2.5 per CPU | TBC | 1.9 per CPU | TBC |
内核种类[编辑]
架构 | 处理器家族 |
---|---|
ARMv1 | ARM1 |
ARMv2 | ARM2、ARM3 |
ARMv3 | ARM6, ARM7 |
ARMv4 | StrongARM、ARM7TDMI、ARM9TDMI |
ARMv5 | ARM7EJ、ARM9E、ARM10E、XScale |
ARMv6 | ARM11、ARM Cortex-M |
ARMv7 | ARM Cortex-A、ARM Cortex-M、ARM Cortex-R |
ARMv8 | Cortex-A50[9] |