2005年10月初,ATI推出了代号为R520的Radeon X1800系列产品,作为ATI的第一个高端Shader Model 3.0产品,R520拥有90nm制造工艺、6xxMHz的高频率、HDR+FSAA等诸多特点,就技术而言,Radeon X1800的确是非常令人艳羡的产品。,不过由于在对技术的追求上过于激进,导致这款本来应该在05年4月发布,和G70同台竞技的产品足足晚了半年才上市,在目前这个GPU半年就更新一次的年代里,Radeon X1800的延期发布给ATI带来了不小的市场和舆论压力。
在代号R520的Radeon X1800发布还不到4个月,ATI又发布了基于改良架构,代号R580的Radeon X1900系列产品。ATI在农历2006中国狗年的春节前夕,拿出了目前地球上最快的显卡产品。
抛开产品不说,ATI的举动很容易让人想起3年前,nVIDIA在处理NV30问题上的做法。风水轮流转,历史总是喜欢开玩笑,只不过这次被开玩笑的对象换了位置。但不管怎么样,X1900的“抢先”发布,让X1800的过渡产品的色彩愈发浓烈。
从上图可以看出,R580的Vertex Shader和R420的Vertex Shader结构非常类似,采用的是128位向量ALU+32位标量ALU搭配的方式,每个周期各Vertex Shader能完成两条Vertex Shader指令,8个Vertex Shader每个周期一共能完成两个顶点的转换操作。
不过新的R5xx体系由于引入了Shader Model 3.0,Vertex Shader也因此支持VS 3.0,包括像分支、循环、子程序等动态流控制指令都获得了支持,每条Vertex Shader程序长度可以长达1024条指令,加上动态流控制后程序的长度就可以看作是几乎没有限制的。
和GeForce 7不同的是,R5xx的这个Vertex Shader缺少了Vertex Texture Fetch(顶点纹理拾取)单元。Vertex Texture Fetch单元是实现对Displacement Mapping硬件加速的前提,那么R5xx的Vertex Shader是否真的缺少Vertex Texture Fetch而需要CPU来执行Vertex Texture Fetch呢,这个问题我们将在下面讲到。
我们再来看R580的VS结构,从上图可以看出R580和R520之间的最大区别,R520只集成了4个Quad Pixel Shader Core,因此Pixel Shader的数量只有4x4共16个Pixel Shader单元,而R580的Quad Pixel Shader Core的数目达到了12个,因此集成的Pixel Shader单元达到了令人恐怖的4x12共48个。至于为什么ATI要如此“疯狂”的增加像素单元的数目,下面会讲到。
R580图形芯片拥有16条传统的像素管线(Pixel Pipeline),但是却拥有48个像素渲染单元和16个纹理单元,在晶体管数量只增加20%的情况下,渲染能力在理论上能增加了200%,像素渲染单元跟纹理单元的比例是3:1。实际上ATI已经在中端的RadeonX1600上应用这种设计思想,形象点来说,一片RadeonX1900等于是由四个RadeonX1600组合而成的。
那么我们怎么理解ATI玩的这个数字游戏呢?我们通常说X1800XT和7800GTX有多少条管线时,严谨的说法应该是16×1和24×1,因为他们的每条管线都拥有1个处理单元,所以像素渲染管线和像素处理单元是完全等同的。然而到了R580就不同了,虽然R580的规格依然是传统的16条像素渲染管线,但每条管线却拥有3个像素渲染单元,也就是相当于48条管线的规格!这也是“像素渲染单元”与通常所说的“像素渲染管线”之间的区别。
- 第1页:聪明消费之 显卡架构差异分析
- 第2页:Geforce 7800/7900 Series VS Radeon X1800/1900 Series
- 第3页:.nVIDIA Geforce 7800GTX/7900GTX架构分析
- 第4页:ATI Radeon X1800 XT/X1900 XTX架构分析
- 第5页:典型架构差异