在介绍本文的主角——高通Snapdragon S4 MSM8960之前,先让我们来回顾一下现有的智能手机/平板电脑ARM架构SoC方案,这些处理器全部基于40nm等级的工艺,由GlobalFoundries、三星、台积电或联电生产。明年各大厂商的制造工艺均将进化为28nm,带来性能以及续航能力的提升。在完全进化至28nm工艺之前市面上主流的SoC方案可以说是五花八门:
2011/2012年常见SoC方案比较
|
|||||
SoC名称
|
制造工艺
|
处理器
|
图形核心
|
内存总线
|
发布日期
|
苹果A5
|
45nm
|
2*Cortex-A9@1GHz
|
PowerVR SGX 543MP2
|
2*32bit LPDDR2
|
已经发布
|
NVIDIA Tegra 2
|
40nm
|
2*Cortex-A9(不含NEON)@1GHz
|
GeForce ULP
|
1*32bit LPDDR2
|
已经发布
|
NVIDIA Kal-El
|
40nm
|
4*Cortex-A9@约1.3GHz
|
GeForce++
|
1*32bit LPDDR2
|
2011年第四季度
|
三星Exynos 4210
|
45nm
|
2*Cortex-A9@1.2GHz
|
ARM Mali-400 MP4
|
2*32bit LPDDR2
|
已经发布
|
三星Exynos 4212
|
32nm
|
2*Cortex-A9@1.5GHz
|
ARM Mali-400 MP4
|
2*32bit LPDDR2
|
2012年
|
TI OMAP 4430
|
45nm
|
2*Cortex-A9@1.2GHz
|
PowerVR SGX 540
|
2*32bit LPDDR2
|
已经发布
|
TI OMAP 4460
|
45nm
|
2*Cortex-A9@1.5GHz
|
PowerVR SGX 540
|
2*32bit LPDDR2
|
2011年第四季度-2012年上半年
|
TI OMAP 4470
|
45nm
|
2*Cortex-A9@1.8GHz
|
PowerVR SGX 544
|
2*32bit LPDDR2
|
2012年上半年
|
TI OMAP 5
|
28nm
|
2*Cortex-A15@2GHz
|
PowerVR SGX 544MPx
|
2*32bit LPDDR2
|
2012年下半年
|
高通MSM8x60
|
45nm
|
2*Scorpion@1.5GHz
|
Adreno 220
|
2*32bit LPDDR2
|
已经发布
|
高通MSM8960
|
28nm
|
2*Krait@1.5GHz
|
Adreno 225
|
2*32bit LPDDR2
|
2012年上半年
|
Krait架构
Krait处理器是高通第二代Snapdragon的心脏,也是所有Snapdragon S4 SoC的核心,它在Scorpion的基础上作出了不少改进。
在架构的前端方面,Krait显然要更“宽”,一个时钟周期可以执行三次fetch与decode操作。每个Decoder都相当于ARM11的single issue能力模块,对比前代Scorpion的2-wide,能力也提高了50%。
后端执行单元方面则是简单的扩张,从Scorpion的三个增加到了七个,可以并行执行4条指令。而在指令执行阶段,Krait终于进入了Cortex-A9阶段,可实现完全乱序执行。
核心架构比较
|
|||||
|
ARM11
|
ARM Cortex-A8
|
ARM Cortex-A9
|
高通Scorpion
|
高通Krait
|
Decode能力
|
Single-issue
|
2-wide
|
2-wide
|
2-wide
|
3-wide
|
流水线长度
|
8级
|
13级
|
8级
|
10级
|
11级
|
乱序执行
|
否
|
否
|
是
|
部分
|
是
|
FPU
|
VFP11(流水线化)
|
VFPv3(非流水线化)
|
可选VFPv3-D16(流水线化)
|
VFPv3(流水线化)
|
VFPv3(流水线化)
|
NEON视频解码模块
|
无
|
有(64bit)
|
可选MPE(64bit)
|
有(128bit)
|
有(128bit)
|
制造工艺
|
90nm
|
65nm/45nm
|
40nm
|
45nm
|
28nm
|
典型时钟频率
|
412MHz
|
600MHz/1GHz
|
1.2GHz
|
1GHz
|
1.5GHz
|
流水线方面,Krait的整数流水线由Scorpion的10级略微提高至11级,对比Cortex-A15的15级流水线,高通的设计含有更多的定制化逻辑模块,同样使得处理器的频率容易提升。
此外,Krait对比Scorpion,还支持在A15中才加入的新虚拟化指令集和40bit内存寻址。双核型号的二级缓存也从512KB升至1MB。一个恰当的类比例子是,ARM Cortex-A8时代的设计就像当年的P54C Pentium,而Krait的完全乱序支持就像P6 Pentium Pro,整体设计则是把SoC带入了Pentium II的时代。
在后端完全乱序执行引擎的加持下,Krait架构的预期性能将高于Intel 45nm Atom。2012年面世的部分智能手机可能将拥有超过采用Banias核心Pentium M处理器的初代“迅驰”笔记本的性能。
性能期望
通常ARM核心性能是用老旧的DMIPS(Dhrystone Millions of Instructions per Second)来衡量,这个老旧的整数性能测试基本与多数读者同龄但在桌面市场早已被弃之不用。但对于架构相同点颇多的各ARM系核心还是有一些意义的:
ARM单核DMIPS/每MHz性能比较
|
|||||
|
ARM11
|
ARM Cortex-A8
|
ARM Cortex-A9
|
高通Scorpion
|
高通Krait
|
DMIPS/MHz
|
1.25
|
2.0
|
2.5
|
2.1
|
3.3
|
Krait的DMIPS/MHz性能为3.3,比同频的Cortex A9快上约30%。预计Krait在发布时将拥有超过目前市面上A9架构CPU约20-25%的性能。依高通推出的频率版本不同,新的智能手机领先市场上A9架构CPU机种的性能达30-50%也不奇怪。目前ARM还没有公布Cortex-A15的性能数据,业界传言在3.5 DMIPS/MHz左右。(译者按:从设计角度来看,高通两代核心的定位差不多是这样,Scorpion在A8与A9之间,Krait在A9与A15之间)
新的VeNum视频解码单元
在ARM架构SoC中,所有NEON指令都由专用单元去处理。Krait也不例外,高通将这代NEON专用模块命名为VeNum,吞吐容量比之前的Scorpion提高约50%,可同时处理3个NEON指令。
高通处理器的NEON数据位宽均为128bit,以上也是为什么采用高通SoC的智能设备解码视频流能力强的原因。