◆流处理单元工作原理:
来到第二个重要部分,也就是shader处理部分,在R600这一代核心中,ATI集成了高达320个流处理单元,RV670亦然。当然,因为采用了DX10统一架构设计,这些单元可以处理包括顶点数据、shader像素渲染、几何单元处理等各种数据流。
我们从最小的一个流处理单元来说明整个问题,RV670的每个流处理单元都包含5路超标量体系结构着色处理器,单时钟周期可以最多处理5个标量乘加指令,其中一路着色处理器负责处理超越指令(比如Sin、Cos、Log、Exp等等)。我们看下图就可以明白,5个黄色的长方形就是5路着色处理器,“胖胖”的那个就是可以处理超越指令的着色处理器。另外,流处理单元可以达成32-bit浮点精度,支持整数和逐位操作,而下图中紫色的长方形“分支执行单元”则负责进行流控制和条件运算。
在这一代显卡上,ATI和其竞争对手似乎走到了同一个路线上,都采用了“超标量体系结构”的着色处理器,只不过ATI依然是SIMD单元的设计。
◆第二代环形总线技术介绍:
对ATI显卡技术架构比较熟悉的读者一定不会忘记,ATI在X1000系列显卡中引入了全新概念的环形总线(Ring bus Memory Controller)内存架构,RV670相比R520来说进一步改进了环形总线的架构,完全可以称为环形总线的第2代。首先,从R520内存总线的架构上,我们依然能看到从环形总线上到核心中央的数据交换,而在RV670上,ATI宣称所有的数据都将通过环形总线传输,完全经过“Ring Stop”数据中继站交换数据,而不再有环形总线与核心直接数据交换的设定。
『从左至右:传统内存架构、第1代环形总线、第2代环形总线的区别』
上面的简单示意图可以清晰的看到传统内存架构、第1代环形总线、第2代环形总线的区别。传统内存架构的缺点就是,因为目前数据的处理量越来越大,更大的显存容量和显存位宽都造成了设计的复杂度,传统设计一旦更换产品核心,就需要重新设计内存总线。此外这样的设计一旦需要更多的数据通道(新显卡的需要),复杂度会以幂数级增加。而环形总线则不尽然,设计成形后,可以更简单的设计到新产品中,而且增加带宽的复杂度很低。
环形总线架构可以在现有内存技术下达成更多内存带宽,在R600中,第2代环形总线的外部显存位宽接口已经提升到了512bit,其实就是指显卡的位宽到了512bit,而在RV670当中则缩减到了256bit,不过我们并不能通过ATI官方给出的架构图上看出与R600之间有什么区别。并且根据ATI官方给出的数据来看,虽然在RV670上缩减了一半的显存位宽,不过RV670性能表现上依然与R600不相上下,这一点也会在我们随后的测试中体现出来。