揭开APU的神秘面纱:Zacate/Ontario APU处理器架构解析
技术讲坛
北京时间2011年1月7日,美国时间2011年1月6日,在著名赌城拉斯维加斯,一年一度为期4天的第44届美国国际消费电子展(CES)终于开幕了。作为世界最大的消费电子产品展,CES已然成为了科技产业发展的风向标。在这里,AMD终于正式推出了大家期盼已久的Fusion APU融合型处理器。此次AMD推出的是针对Brazos平台的Zacate/ Ontario APU两款产品,尽管AMD并没有为我们带来性能最强的Llano APU处理器,但即便如此,Zacate/ Ontario APU的出现还是宣告了AMD的融合时代正式来临……

CPU和GPU整合势在必行
APU的英文全称为“Accelerated Processing Unit”,意思是加速处理单元,这是AMD给Fusion融合理念处理器取的新名字,代表着它将中央处理器和图形处理器合二为一,可同时执行串行计算、并行计算,为大量应用提供加速。
从1993年开始,GPU的性能就以每年2.8倍的速度增长,这个数字大大超过了PC其他子系统的发展速度。同时GPU拥有自己的独立子存储系统——显存,它拥有比系统主内存高得多的带宽。具备如此强大的并行处理能力和极高的存储器带宽,GPU已经从原来“图形核心”的角色转变成一个“流处理器”,用于诸如科学运算、数据分析、线性代数、流体模拟等需要大量重复的数据集运算和密集的内存存取的应用程序,这样我们就能获得一些比CPU强悍得多的计算能力。相比之下,CPU本质上是一个标量计算模型,计算单元偏少,主要针对复杂控制和低延迟而非高带宽优化。正是因为这些优势,使得GPU比CPU更适用于流处理计算,因此如何将CPU和GPU整合早在2006年就已经成为业界探讨的一个目标。
针对这个技术发展趋势,AMD提出了Fusion的概念,这也是它在收购ATI之后作出的重大战略部署。只不过,Fusion的发展之路却远没有当初预测的那样平坦,反而被Intel捷足先登。Intel在2009年底率先推出集成GMA HD显卡的Core i3/i5处理器。在经历了多次跳票之后,Fusion APU终于在2011年初正式登场亮相。

Zacate/ Ontario APU技术亮点解析
APU才是真融合
AMD认为CPU+GPU的融合,最理想的应该是采用一个在芯片里融合GPU/CPU两种核心的CPU这种方式,而不是简单地把它们封装在一起。下面就让我们来详细了解一下首批发布的APU的核心架构。
Ontario/Zacate APU主要由x86架构CPU核心(采用“山猫Bobcat”架构,属于Bulldozer架构的简化版本)、DX11 SIMD引擎阵列、UVD高清视频引擎、PCI-E总线和DDR3-1066/800内存控制器等几个模块封装在一个核心内构成。在技术上,APU处理器整合GPU的原理,与目前的Crossfire互联方案非常类似——CPU与GPU事实上仍是独立的,通过内部总线进行通信,同时还分别拥有独立的缓存,处理器中的GPU和CPU会共享系统内存,从而实现GPU与CPU的数据交换,同时APU中的各个组件之间使用HyperTransport连接,使各个组件连接成一个整体。目前独立显卡在执行并行计算任务的时候数据吞吐量异常庞大,PCI-E总线已经力不从心。而在APU上,CPU、GPU两部分是通过一条只有几纳米的总线互联的,带宽和延迟完全不成问题,这才是APU真正闪耀的地方。
由于Ontario/Zacate APU所整合的GPU仅是入门的Radeon HD 6310/6250核心,只拥有80个流处理器,因此APU此种设计并不能对低端GPU性能带来倍量的提升。不过,GPU配备了UVD 3.0解码引擎,可以对H.264、VC-1、DivX、XviD等编码格式的高清影片进行硬件解码,这让超轻薄移动平台流畅播放各类全高清影片成为可能。此外,该显示核心也可搭配HDMI、DVI、DisplayPort等输出接口,并具备同时输出两条独立数字视频流的能力,因此用户可以方便地实现多屏显示。其实,此次APU为我们带来的最大意义是可以让未来笔记本电脑设计更为简单节能。

山猫“Bobcat”架构看明白
当然,Ontario/Zacate APU的亮点不仅仅是这种先进的整合设计,比如采用的“山猫Bobcat”架构就是它的另一大看点。
每个Bobcat处理器模块均包含一个处理器单核心,AMD在单核心内部设置了一个整数调度器和一个整数执行单元,这个整数执行单元中包含I-管线、Ld-管线和St管线三个部分,各自负责不同种类任务。只不过,Bobcat的整数执行单元要比Bulldozer少,在Bulldozer内核中每两个核心组成一个单独的单元,支持集群多线程技术,每个核心模块可支持4线程,每个硬件线程独享两个整数运算单元。而Bobcat架构的核心模块采用单核设计,并不支持集群多线程技术,每个核心模块只拥有一个整数运算单元。不过,Bobcat保留了Bulldozer架构的基本规格,比如每个核心配备64KB一级缓存(和512KB二级缓存,完整支持ISA、SSE1/2/3、SSSE3指令集和虚拟化技术。
除了整数部分之外,Bobcat核心内部还设有双管线结构的浮点处理部分,这两条浮点管线被分别命名为“A管线”(加法管线)和“M管线”(乘法管线),分别负责浮点的加法运算和乘法运算。不过Bobcat架构最引人注目的地方还不是它这种执行单元架构设计,而是AMD在设计这款处理器内核架构时所采用的新技术——HLS(High-Level Synthesis,高层次综合设计)技术。利用HLS,设计者可以使用C++程序来设计处理器的行为模式,然后再将这些程序代码输入制造设备,便能制造出满足要求的处理器。HLS技术具备设计速度快、产品易于调整转换的优点。当然,这种技术设计有一个缺点:采用这种设计的处理器在运行频率方面不如手工设计的处理器,据AMD方面透露,使用HLS技术设计出来的Bobcat处理器在运行频率方面要比手工设计的产品低20%左右,也就是说如果不采用HLS技术,目前Zacate处理器的频率本应该突破2GHz的。

乱序执行指令执行显威力
虽然乱序执行指令架构设计理念并不是一种新的技术,但考虑到Ontario APU的竞争对手将是Intel的ATOM,而这个技术是ATOM所不具有的,因此在这里就和大家谈一下乱序执行指令执行到底有什么用。
乱序执行指令执行这一设计的目的是借助处理器乱序执行指令的方式来提高性能。这种结构有利有弊,好处是处理器的性能得到提升,而代价则是功耗的提高和核心尺寸的增加。因此,Intel针对上网本市场推出的ATOM处理
写在最后
毫无疑问,采用全新GPU+CPU融合方案的Zacate/Ontario APU上市,将给传统的上网本、平板电脑、笔记本及DIY市场注入新的活力。相较于Intel的方案,APU平台的优势在于其强大的GPU部分(相对于轻薄市场而言),这样规格的GPU将会满足较为苛刻的3D游戏应用,在使用Stream和Open CL进行计算时也可以发挥出巨大的威力,从而在高清编/解码等方面使用户获得更好的体验。
不过AMD想借助APU平台在移动平台上打败Intel仍有不小的难度。毕竟AMD在产品功耗控制、CPU内核性能方面仍与Intel有一定的差距,特别是Intel的轻薄平台也将很快过渡到性能更强、功耗更低的Sandy Bridge架构上。因此,APU前期只能努力争取在中低端移动平台市场立足,比如上网本市场以及平板电脑市场,如果Zacate/Ontario APU能保持较高性价比的话,那AMD依然会有不小的作为。