ARM体系结构研究
4)
从Intel投入的精力和一些列的动作我们可以看出Intel向弥补自己在移动计算领域缺席的决心,但是从时间上来看,intel同ARM相比起步晚太多了,所以至今为止,除了上网本有采用Atom架构的处理器外其它移动计算设备很少有采用Atom处理器的(Nokia的MeeGo平台也许算是一个吧)。Intel的Atom在移动计算市场上的劣势还不仅仅存在于起步太晚上。
图2.7Atom采用的16段流水线
这不是Atom处理器流水线的全部。Atom处理器还含有两级预先译码部件(Predecoder)。因为传统的x86指令并不等长,而是16b~120b不等的,Predecoder部件的作用是划分指令边界,然后将其导入L1指令Cache。因此虽然Atom处理器L1指令Cache的大小为36KB,而实际可利用大小仅为32KB,剩余的4KB用来存放SOI(Start of Instruction),EOI(End of Instruction),等一些TAG信息。Atom处理器可以直接处理多数CISC指令,但是仍然有一些过于复杂的CISC指令被分解为若干个μops,再进入指令流水线。但是Atom处理器的流水线并非没有可取之处,这颗处理器可以直接执行ALU/Memory指令。这类指令首先被分解为ALU和Memory两个微操作,然后成对进入流水线,虽然Memory操作仍不能先于ALU操作执行完毕,也明显提高了这类指令的执行效率。为了弥补没有使用乱序执行的缺憾,Intel的设计人员采用了Intel一向很称道的HT(Hyper-Threading)技术,即超线程技术,这种技术能够显著提升系统的响应性。因为它的主要设计理念是,在一个物理CPU上实现了两个逻辑的CPU,这两个逻辑的CPU拥有自己独立的寄存器组还拥有独立的APIC(Advanced Programmable Interrupt Controller)等其它资源,但是它们共用一条流水线,在一条线程由于执行某种耗时操作而挂起的时候,另一个线程的代码可以使用这条流水线,同时它们可以同时跟踪自己的中断,而互不干扰。
Intel工程师们为了实现向前兼容,还不得不放弃很多最新的、优秀的芯片设计方法。从而使得Atom处理器有一种背负历史使命的厚重感,少了一些现代的轻盈与高效。但是我们也看到,Atom处理器最开始是跑上网本的,也正是由于其一直秉承的向前兼容理念使得上网本上可以安装xp或者linux系统,然而,在上网本上跑各种PC中的软件却让人愈发感觉Atom处理速度的不足。Intel拥有着这个星球上最顶尖的芯片工程师,但是他们的才智却被花在了解决x86那些乖张、荒谬的处理逻辑上。性能并不是Atom处理器的优势,并不出乎体系结构专家的意外,在许多Benchmark程序下,Atom处理器落后于Cortex A9处理器,如图2.8所示。而且Atom处理器的功耗与ARM处理器目前并没有可比之处。
图2.8 Atom与Cortex Benchmark性能测试对比
注释:
【1】System-on-Chip技术是一种高度集成化、固件化的系统集成技术,其核心是要把整个应用电子系统全部集成在一个芯片中,它通过在单一芯片中嵌入软件,实现多功能和高性能,以及对多种协议、多种硬件和不同应用的支持。
一、
二、
1.
2.
3.
4.
5.
6.
7.
8.
评论