PS3架构详解(cell,XDR,RSX)
一名中学生0837
编辑于 2022年08月01日 14:46
收录于文集
共4篇

Cell处理器,于2000-2005年索尼、东芝和IBM三家联合研发,IBM与索尼曾宣称,Cell处理器的运算能力将达到史无前例的1TeraFLOPS,(TeraFLOPS为每秒执行的浮点指令个数, 是衡量计算机性能的一个重要单位.)其中tera代表一万亿,flo则是指一次浮点运算(floating point operation),这是描述计算性能的基本单位,而 ps 自然是每秒(per second)的意思。(以后可以专门做一期视频讲一下这些。)这是什么概念呢? 在当时,世界上最快的计算机是NEC的“地球模拟器”,它的运算能力为每秒36 TeraFLOPS。而关于ps3的性能,还曾经有过一个好玩的梗。2003年“PS之父”久多良木健在接受日本《PCWatch》专栏作家后藤弘茂访谈时说过的一段话,久多良木健的本意是说足够数量的Cell处理器串联在一起,就可以达到甚至超过“地球模拟器”(地球シミュレータ,NEC制的超级计算机,在当时是世界上最快的计算机之一)的性能。这段话整出了“PS3能模拟地球”的意思。一直流传至今(当然,ps3并没有达到这个性能,IBM原本想将4个cell集合成一个处理器,但后来发现功耗太大,成本太高,良品率太低)

cell

cell架构      

cell处理器的架构与现在常见的x86架构有明显的差异,最大的差别在于他们的核心与指令集。x86架构中,每一个核心都是可以相对独立运行的。而cell所搭载的架构(powerpc架构改进),主要是由PPE(power处理单元,Power Processing Element)与SPE(Synergistic Processing Elements)组成。SPE是一颗协处理器,每个SPE具备128bit SIMD 通用暂存器,256KB SRAM(静态随机存取存储器,大致起到一级缓存的作用,用于本地存储),一个SPU(向量处理器),一个MFC(内存流控制器)可同时执行两道指令(双发射)。PPE包含一颗64位powerpc架构的risc(精简指令集)3.2GHz核心,是PowerPC970的改进版。PPE直连总线,可以直接访问内存与缓存,而SPE则需要通过PPE才能访问内存。SPE也不支持许多cpu特性。所以SPE并不能看作传统计算机的核心,所以从传统角度讲,ps3是一台单核的游戏机。

小故事:依照索尼事先同IBM签订的协议,IBM有权将由Cell处理器项目衍生来的技术另作其他商业用途,而就在Cell处理器的研发工作进行到关键阶段时,微软就Xbox 360的处理器开发事宜而找上了IBM,于是IBM非常“大方”地将Cell的部分成果略加修改后用在了Xbox 360所搭载的Xenon处理器上,(猪队友)

指令集方面,cell基于powerpc架构,是一颗使用risc指令集(精简指令集)的"cpu&#​34;而我们熟知的x86架构则是属于CISC(Complex Instruction Set Computing)指令集(复杂指令集)的范畴。由于这又是一个大坑,这里我只能简单讲一下CISC与RISC的目的都是相同的,都是为了提升计算机的运行速度,但它们所走的路线却截然不同,cisc的路线可以这么理解,cpu做计算题(程序),这些题有一些很难,使用最基础的加减法可以计算,但是很慢,于是我们给它加入解题的公式与步骤,让它可以直接计算出结果,这样就能节约大量时间。而RISC则不同,当这些计算题都十分简单是,这些复杂的指令集反而会占用处理器更加大的空间,拖累计算速度,增加发热与功耗。所以则也是为什么现在台式机基本都是CISC架构,因为台式机不怕发热与功耗,但经常执行复杂程序。而手机则有功耗与发热的限制,大多执行简单程序,使用RISC架构。Ps3虽然是主机,但仍然有发热的限制,所以cell使用了RISC的架构。(仅供参考)

ps3

ps3为了保证良品率,8个spe屏蔽了一个。还有一个给系统提供音频等服务,实际游戏使用6个spe与ppe.但在后期索尼的系统优化上,又节约出一个spe使用在游戏上,这就是为什么ps3后期的游戏帧率更加稳定,画面更好。(买sony,战未来!)

因为SPE为RSX图形处理器承担了一部分工作,所以RSX图形处理器严格说并不是gpu,同理,cell也不完全是cpu

cell/be

EIB通用总线

Element Interconnect Bus(EIB)负责SPE,PPE核心,内存等外围设备之间的通讯

256MB XDR内存

这里的XDR可不是苹果的XDR显示屏,而是内存,XDR(eXtreme Data Rate)内存不同于常见的DDR内存,由Rambus公司研发,这是一家主要研发内存的小公司,他们曾研发出RDRAM内存,这种内存曾受到英特尔公司的大力支持,但由于价格昂贵没有得到大众认可。)时钟信号1.6GHz,运行频率3.2GHz,带宽25.6GB/s.这是一个惊人的带宽,同时期的 DDR2 667也只有5.3 GB/s的带宽。GDDR3运行在700mhz显存在延迟高得多的情况下,也只有22.4GB/s的带宽。如今的DDR4 3200mhz也只有25.6GB/s,也就是说,XDR内存相当于5根ddr2 667的内存同时运作。

在一个时钟周期内(一个上升沿和一个下降沿),XDR DRAM进行了4次时钟采样,在采样的每个上升沿和下降沿都传输了1bit的数据,因此在一个时钟周期内,XDR可以传输8bit的数据,DDR 只能在一个时钟周期进行2bit的数据传输,所以ddr的全称叫做(Double Data Rate SDRAM)这就是XDR 技术中最新的“8分频”技术,带来了强大的带宽。我猜测这与cell的特殊架构有关,spe担任了部分图形处理器的工作,spe,ppe,图形处理器之间需要高速的带宽来交流,如果用ddr内存那5gb每秒的带宽肯定不能满足交流的需求,gddr3的延迟又太大,只有XDR才能满足cell的需求。

XDR内存

RSX图形处理器

RSX是游戏主机中非常不常见的英伟达研发,

pydk老黄

基于NV47核心(这是一个“不存在的核心”,是由G70与G72修改而来,只有ps3的rsx才使用)基于2005年发布的7800GTX图形处理器,搭配128bit 256m gddr3显存运行在650mhz下,有3亿多个晶体管,支持OpenGL ES 1.1 + Nvidia Cg 24 个并行像素着色器,8 个平行顶点管线24 个纹理过滤单元 和 8 个顶点纹理寻址单元,理论像素填充率达到了每秒 4.0 千兆像素xbox one的显卡 有768shaders(流处理器) x 853MHz x 2 = 1,310,208 megaflops/1.31TF,ps4的显卡有1280 shaders(流处理器) x 800MHz x 2 =1,843,200 megaflops/1.84TF,而RSX图形处理器550mhz实际约为400.4GFLOPS,所以从这里还是可以看出ps3与ps4的差距还是很大的。

(然而就是因为老黄的gpu开发过慢,导致ps3的开发机最开始连显卡都没有:) 价格也十分高昂,是ps3成本突破天际的一个原因)

ps3

结语:我认为ps3是一台战未来的主机,但从现在来看,ps3对比前两代ps系列,明显是失败的,cell架构虽然新颖,性能强大,但开发难度大,加上集成了ps2的硬件,导致成本昂贵....太多因素了,但不管怎么来说,ps3都是一台先进的主机,但先进过度,即为退步。