PS3专用图形处理器RSX专业技术分析报告

2006-02-24 12:41  来源:PConline  作者:次世代VIVA!  责任编辑:chenxiaocong

   导读:一:RSX图形芯片就是Geforce 7800 GTX翻版?   Sony电脑娱乐(SCEI)与Nvidia公司合作开发下一代PlayStation 3游戏机,搭载了Nvidia公司开发的代号为“RSX(Reality Synthesizer现实合成器)”的图形芯片,这个图形芯片可以看作是Nvidia GeForce GPU 7800 GTX(G70)的兄弟版本。   Nvidia的首席工程师
关键词:PS3
 

一:RSX图形芯片就是Geforce 7800 GTX翻版?

  Sony电脑娱乐(SCEI)与Nvidia公司合作开发下一代PlayStation 3游戏机,搭载了Nvidia公司开发的代号为“RSX(Reality Synthesizer现实合成器)”的图形芯片,这个图形芯片可以看作是Nvidia GeForce GPU 7800 GTX(G70)的兄弟版本。

  Nvidia的首席工程师David B. Kirk称,关于两款GPU芯片的“Shader架构”,RSX和G70并没有什么差别,两者的差别集中在生产工艺,系统总线,记忆体频宽等方面。如G70采用TSMC的110nm工艺制造,采用PCI-E x16接口,搭载256Bit带宽的GDDR3记忆体,而RSX则采用SONY/Toshiba的90nm 工艺,FlexIO前端总线架构搭配128bit记忆体宽度。

  为什么说G70和RSX在Shader架构上没有区别呢,原因有几个,最主要的根据来自与Nvidia在E3大展上公开发表的RSX规格说明,证实RSX每个周期能够运行136 shader运算。Xbox 360所使用的GPU来自于ATI所开发的R500,根据微软透露的资料显示,R500每个周期可执行96个Shader操作(运行频率500MHz),也就是每秒可执行480亿个Shader指令,这一数值要高过Nvidia的RSX。“每秒执行的Shader操作”这种叫法来源于ATI;而Nvidia则称之为“每秒执行的指令数”,这是因为Nvidia同时计算了一次Shader操作中所导致的复述操作,所以Nvidia在关于RSX Shader结构的规格计算方法和ATI的截然不同,这在E3大展上面也曾成为议论点。

  按照Nvidia的计算方法,RSX的“每周期136个Shader操作指令”的参数实际上与G70相同(因为G70的架构为8VS/24PS,而G70的每个VS流水线等价于2个指令/周期,PS流水线等价于8指令/周期),故RSX和G70均为每周期136个Shader操作。换句话说,如果观察周期指令运算能力的话,你会发现G70和RSX的Shader架构几乎完全相同,因为RSX也是具备8VS和24PS流水线,这一点和G70完全相同。

  事实上,公开表示G70和RSX拥有相同的架构的著名业界人士透露,由于Nvidia直到去年的夏天才和Sony电脑娱乐(SCEI)最终确定合作事宜,Nvidia 实际上根本没有足够的时间来为PS3着身定制一款专门的图形芯片。

  目前我们可以假定,RSX实际上和G70是基本相同的同一架构的图形芯片,甚至连晶体管的个数都差不多(此前传RSX是包括3亿只晶体管,而G70为3.02亿)由于G70的PCI-E x16架构对于带宽的要求比RSX的FlexIO前端总线高的多,因此G70的显存带宽是RSX的两倍不难理解。


RSX的结构图表


二:RSX的Shader运算能力比G70增长28%?

  G70的Shader架构,其实是以GeForce 6800(NV40)为基础,不过对Pixel Shader的并行运算( parallelism )进行了加强;例如,NV40在Pixel Shder内部拥有2个引导操作单元,不过其中的1个单元不能执行1个周期内芯片演算的数据量总和,而G70则能做到这一点,而我们现在猜测RSX同G70一样。

  虽然G70和RSX的Shader架构几乎完全相同,但是两者的性能还是有差距的,原因在于运行频率的高低,根据Nvidia的官方数据,G70的默认频率为430MHz,而RSX为550MHz,频率方面的差距在28%,那么两者的Shader运算性能差距能够达到理论上的28%吗?

  根据Nvidia公布的G70资料显示,Vertex Shader引擎具备4路 VLIW单元和1个梯状单元,可以并行处理5个数据;故计算得知一个周期内包括10个浮点指令操作,而G70的Vertex Shader引擎数目是8条,因此,最近计算得到的G70浮点运算能力为:

  (4路+1梯形) X 2FP(浮点操作 MADD) = 10FP/周期;10个FP(浮点操作)×8Shader×430MHz=34.4GFlops

  而G70的Pixel Shader引擎中,具备2个梯形操作单元以及4路×2 SIMD单元,此外还拥有可以处理处理算数指令(mini ALU)的FP16规格化处理单元(共7路),因此,G70的Pixel Shader引擎浮点效能如下:

  ((4路 x 2 单元 + 2梯形单元) x 2 FP) + 7 规格化处理器单元 = 27 FP操作/周期:27 FP x 24 Shader x 430MHz = 278.6GFLOPS

  有了这样的计算公式,我们可以很轻松地计算出频率为550MHz的RSX的Vertex Shader和Pixel Shader引擎的浮点运算能力:

  Vertex Shader

  10 FP x 8 Shader x 550MHz = 44GFLOPS

  Pixel Shader

  27 FP x 24 Shader x 550MHz = 356.4GFLOPS

  总共为44GFLOPS + 356.4GFLOPS = 400.4GFLOPS

  而 Xbox 360 GPU(R500)的Shader浮点运算能力为240GFLOPS,虽然数值上仅为RSX的60%,但是由于R500和RSX在开发架构上有不小的区别,RSX是分离的VS/PS设计,Xbox 360 GPU是一体化的设计,故R500的实际性能并不能仅从数字上来判断。

RSX图形核心的浮点运算能力



三:FlexIO的带宽决定了如何使用GPU

  可以这么说,G70和RSX最大的不同在于其总线技术(Host bus),G70支援PCI-Express x16总线技术,而RSX则使用Rambus的FlexIO(Redwood红木)总线技术。

  我们知道,总线的并行结构与高频率、布线难度素来就是矛盾:并行总线存在严重的信号干扰,无法稳定工作在较高的频率下、传输性能极为有限,且总线宽度越大、工作频率越高,对布线工作要求就越苛刻,这就造成并行总线的性能很难有继续提升的空间。为此,计算机内的高速总线无一例外均转向串行体系,如PCI Express、HyperTransport、Serial ATA、IEEE1394a/b、USB 2.0等等—但RAMBUS公司提出的FlexIO总线技术却是一个例外,它以并行模式工作,工作频率高达6.4GHz,且布线工作相当容易,完全克服了并行总线的“先天弊病”。

  众所周知PCI-Express x16的带宽为4GB/S,如果双向传输则可达到8GB/S;但是FlexIO总线中Cell-RSX的传输速度最高可以达到20GB/S以上,RSX-Cell的传输速度可以达到15GB/S以上,是PCI-E x16的5倍以上。较高的总线带宽,有利于CPU和GPU的协同工作和数据分配;而对于总线带宽相对较小的PC来说,GPU与CPU的沟通则显得不太方便。对于这点,我们会进行进一步的细节说明。

  使用的FlexIO的总线另外一个优势在于,即使装备Cell 96bit带宽其侧面仅占据13.1平方mm,RSX的侧面因为带宽的变大而变得狭窄,并且有可能比13.1平方mm还要更小。

  顺便提及的是,具备并行接口的FlexIO总线很容易组成8bit运算单元,标准传输率为6.4Gbps。但是SONY公布的PS3的资料中,20GB/S的Cell-RSX和15GB/S RSX-Cell的传输速率并不吻合。传输速率下降为5Gbps,符合下32bit和上24bit的计算,因为这个原因,FlexIO的传输速率有可能会掉到5Gbps。目前,PS3的Cell处理器以及XDR DRAM记忆体的运行频率已经确定了,随着CPU频率的下降,XDR DRAM的传输速率也会下降。但是,FlexIO被看成是异步模式下工作的。

RSX Shader 浮点性能图示

 


四:RSX和G70记忆体接口架构对比


  G70和RSX的另一个差别在于显存记忆体的带宽,为PC所设计的G70采用了256bit带宽的GDDR3记忆体,而RSX采用了128bit带宽的GDDR3记忆体,不过显存的容量相同均为256MB。

  目前RSX的记忆体控制器的架构图仍然只是处在猜测阶段;根据NV40/G70的架构,显存记忆体控制器分为4个分块,每个分块均连接到DRAM控制器,带宽均为64bit。同时有每个分块同时连接4个ROP(像素结果输出处理器)像素单元,此外分块之间也相互连接,因此总共具备16个ROP。这些ROP像素单元以每条2×2像素流水线为单位分为4组,在需要的情况下,这些ROP单元能实现alpha混合和附加的Z/Stencil功能,这让它可以每个时钟频率处理32个Z/Stencil运算,还完全支持Multiple Render Targets(多重着色目标)和加速的阴影着色能力。

  我们假定RSX和G70采用同样的设计,每个记忆体分块连接有4个ROP像素单元,而每个记忆体分块都连接到DRAM记忆体,并且被分配到32bit带宽;如果我们假设有8个ROP像素单元的话,那么就表明连接到DRAM控制器的部分拥有64bit带宽。

  最后要提到的是,此前Nvidia透露的资料显示PlayStation3游戏机,具备256MB XDR DRAM@3.2GHz的系统内存,以及256MB GDDR3@700MHz的显存。

五:RSX和G70的制造工艺对比

  前面也曾提到,RSX和G70采用了不同的制造工艺进行生产,G70采用了和NV4x相同的TSMC 0.11微米制造工艺,制造工艺相当成熟,内部集成3.02亿个晶体管,这是迄今为止显示芯片晶体管集成数目的世界纪录;而RSX采用Sony/Toshibia的0.09微米制造,内部集成了3.0亿晶体管。在显示核心面积上,0.11微米制程的G70面积为300平方mm,而90nm工艺的RSC面积仅为G70的70%左右,在200~250平方mm之间;而PS3的上一代PS2的显示核心采用0.25微米制程,面积为279平方mm。而随着芯片制造的进步,未来65nm和45nm制造工艺的芯片表面积降可以控制在100平方mm以内。

转载by

热门排行榜
专题汇总热门推荐热门视频