——三倍R520的像素着色器算术计算能力
在RADEON X1900中,除了保持RADEON X1800系列的高效动态分支等特点外,还把每条像素流水线的像素着色器单元数量提升至原来的三倍,显著提高像素着色器的算术指令性能。

ATI RADEON X1000系列的像素流水线采用了灵活性很高的架构,Pixel Shader(像素着色器单元)、Texture Mapping Unit(纹理拾取单元)、ROP(光栅操作处理器)允许以不同比例配置,这样的设计好处是可以比较容易以较低的成本提高某方面的性能或者说更灵活地增减绑定的单元,例如R520采用1:1的Pixel Shader:TMU绑定方式,而RV560和现在的RADEON X1900则采用了3:1的比率配置。
如果从像素流水线的角度来看的话,R580的流水线结构非常类似于4倍的RV530:
RV530采用3:1的Pixel Shader:TMU比率,一共12个Pixel Shader。 R580采用3:1的Pixel Shader:TMU比率,一共48个Pixel Shader。 |
RADEON X1900的Pixel Shader单元结构和之前的RADEON X1000是基本一样的,拥有两个算术逻辑单元和一个分支执行单元。

RADEON X1000系列的Pixel Shader结构
其中ALU1只能执行加法(ADD)计算,ALU2能执行包括加法、乘法(MUL)、乘加(MADD)各类运算,两个ALU最高可以执行两条指令(3D+1D):
- 算术逻辑单元 1
- 1 Vec3 ADD + Input Modifier
- 1 Scalar ADD + Input Modifier
- 算术逻辑单元 2
- 1 Vec3 ADD/MULL/MADD
- 1 Scalar ADD/MULL/MADD
- 分支执行单元
R580在Vertex Shader和R520是一样的,都是16个具备shader model 3.0支持的4D+1D式设计。由于缺乏Vertex Texture Fetch(VTF)单元,尽管ATI会在驱动中提供Vertex Texture格式的开关以通过微软的WHQL认证,但是遇到使用了VTF的游戏(例如太平洋战机、The Chronicles of Narnia等),就无法表现全部的特效。
对此,ATI认为VTF在目前的分离式架构上采用VTF效能并不理想,但是这并不意味着ATI抗拒VTF,例如在Xbox 360中的Xenos GPU就采用了16个VTF单元,而Xenos是一体化着色器架构。如果开发人员希望在RADEON X1000上实现VTF的效果,ATI建议使用Render to Vertex Buffer(渲染至顶点缓存,R2VB)的方式实现。其实不管是R2VB还是VTF,未来的方向还是会以某种Superbuffer(超级缓存)方式来做的,所以大家目前的实现方式虽然各有优势但是并非最理想的。