




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、从GPU 诞生说起:AMD 统一渲染架构回顾及展望来源:驱动之家 作者:朝晖 编辑:朝晖 2011-06-28 17:40:18 8373 人阅读内容导航:第01页:导读:AMD统一渲染架构全回顾文章内容导航第1页 导读:AMD 统一渲染架构全回顾 第2页 溯本归源:GPU 的由来及渲染流程第3页 传统GPU 顶点单元和像素单元的出现第4页 传统GPU 管线的的概念和SIMD 架构第5页 SIMD 的弊端和统一渲染架构的出现 第6页 Xenos 与第一款统一渲染架构GPU第7页AMD 变革开端:超标量架构的R600第8页不变中的改变:全新制程工艺的RV670第9页规模扩充结构改进:逐步优化的R
2、V770第10页 变化有限规格翻倍:双核心的Cypress第11页 架构未变特性增强:稳中过渡的Barts第12页 革新VLIW 4架构:尝试改变的Cayman第13页颠覆以往传统:AMD 全新新架构露端倪 导读:AMD 统一渲染架构全回顾 数月之前,笔者曾写过风雨二十五载!蓦然回首看ATI 显卡发展之路一文,文章就AMD (ATI 的显卡发展之路进行了详细回顾,对历代比较有代表性的显卡以及重大事件着墨较多。撰文之时,Radeon HD 5000风华正茂,Radeon HD 6000还在孕育当中。时光飞梭,如今Radeon HD 6000已部署完毕,具有颠覆意义的APU 也横空出世,传统GPU
3、 与CPU 的概念将逐步走向融合。借此之机,笔者希望通过此文对AMD 以往统一渲染GPU 架构的发展历程进行回顾,以此窥探AMD 未来GPU 架构将会朝着何种方向发展。 内容导航溯本归源:GPU的由来及渲染流程为什么要有GPU?说实话,这个问题有些难回答,不过我们依然从过往的一些回忆中引出GPU的概念。虽然民用显卡可以追溯到上世纪的80年代,但当时的并没有GPU的概念,而所谓的显卡更多的被成为显示适配器(Display Adapter,仅能用于简单的文字和图形输出,在处理3D图像和特效是主要还是依赖CPU。 史上首款GPUGeForce 256真正的GPU,也就是Graphic Process
4、ing Unit(图形处理器的概念,最早是由NVIDIA在1999年发布GeForce 256图形处理芯片时首先提出的,核心技术有硬体T&L、立方环境材质贴图和顶点混合、纹理压缩和凹凸映射贴图、双重纹理四像素256位渲染引擎等等。GPU的出现使得显卡减少了对CPU的依赖,尤其是在3D图形处理时取代了部分原本CPU的工作,而这一切都要归功于GPU引入的硬件T&L( Transform & lighting,坐标转换和光源功能。本质上来说,3D图形的渲染是由复杂的坐标转换和光源运算组成的,当显卡还没有T&L功能时,坐标处理和光源运算都是由CPU来处理的,也就是所谓的
5、软件T&L。不过由于CPU的任务繁多,除了T&L之外,还要做内存管理、输入响应等非3D图形处理工作,因此在实际运算的时候性能会大打折扣,常常出现显卡等待CPU数据的情况,其运算速度远跟不上复杂3D游戏的要求。 硬件T&L而GPU从硬件上支持T&L以后, CPU就得以从繁重的运算中解脱出来。首先,3D模型可以用更多的多边形来描绘,这样就拥有了更加细腻的效果。其次,CPU不必再计算大量的光照数据,直接通过显卡就能获得更好的效能。虽然后来的GPU取消了T&L,采用全新的Shader Model来完成3D建模和光影效果,但就当时来说,硬体T&L技术是GP
6、U的标志。限于篇幅,关于T&L更多的细节这里就不再一一赘述。下面要说一下GPU的工作原理,虽然这和今天的主题看起来离得有些远,不过考虑到能够对下面章节更好的阐述,我认为还是很有必要的。简单的说,GPU的主要功能就是完成对3D 图形的处理即生成渲染。一般来说,GPU的图形处理流水线可分为以下五个阶段: 传统GPU渲染流程1、顶点处理:这个阶段GPU读取描述3D图形外观的顶点数据并根据顶点数据确定3D图形的形状及位置关系,建立起3D图形的骨架。在支持DX8以后的GPU中,这些工作由硬件实现的Vertex Shader(顶定点着色器完成。2、光栅化计算:显示器实际显示的图像是由像素组成的,我
7、们需要将上面生成的图形上的点和线通过一定的算法转换到相应的像素点。把一个矢量图形转换为一系列像素点的过程就称为光栅化。例如,一条数学表示的斜线段,最终被转化成阶梯状的连续像素点。3、纹理帖图:顶点单元生成的多边形只构成了3D物体的轮廓,而纹理映射(texture mapping工作完成对多边形表面的帖图,通俗的说,就是将多边形的表面贴上相应的图片,从而生成“真实”的图形。TMU(Texture mapping unit即是用来完成此项工作。4、像素处理:这阶段(在对每个像素进行光栅化处理期间GPU完成对像素的计算和处理,从而确定每个像素的最终属性。在支持DX8以后的GPU中,这些工作由硬件实现
8、的Pixe l Shader(像素着色器完成。5、最终输出:由ROP(光栅化引擎最终完成像素的输出,1帧渲染完毕后,被送到显存帧缓冲区。所以通俗一点来讲,GPU的工作就是完成3D图形的生成,将图像映射到相应的像素点上,并且对每个像素进行计算确定最终颜色,最后完成输出。 内容导航传统GPU顶点单元和像素单元的出现上文我们提到了GPU的由来以及渲染过程,以及象征着初期GPU标识的T&L。GPU通过硬件T&L,实现大量的坐标和光影转换。随着更加复杂多变的图形效果的出现,顶点和像素运算的需求量大幅提升,此时的GPU架构也遇到了一些麻烦的问题。游戏画面的提高对GPU有了更高的要求,图形处
9、理生成多边形的过程中需要加上许多附加运算,比如顶点上的纹理信息、散光和映射光源下的颜色表现等等,有了这些就可以实现更多的图形效果。当然,与此同时带来的就是对GPU顶点和像素的计算能力极具考验。通过对GPU图形流水线的分析,工程师们发现与传统的硬件T&L相比,另一种方案具有更高的效率和灵活性,这就是Shader(渲染器/着色器的出现。2001年微软发布的DirectX 8带出了Shader Model(渲染单元模式,Shader也由此诞生。 DX8显卡体系结构及渲染流水线本质上来说,Shader是一段能够针对3D图像进行操作并被GPU所执行的图形渲染指令集。通过这些指令集,开发人员就能获
10、得大部分想要的3D图形效果。在一个3D场景中,一般包含多个Shader,这些Shader中有的负责对3D对象顶点进行处理,有的负责对3D对象的像素进行处理。所以最早版本的Shader Model 1.0中,根据操作对象的不同分别V ertex Shader(顶点着色器/顶点单元,VS和Pixel Shader(像素着色器/像素单元,PS。相比T&L实现的固定的坐标和光影转换,VS和PS拥有更大的灵活性,使得GPU在硬件上实现了顶点和像素的可编程(虽然当时的可编程特性与现在相比很是孱弱,反映在图形特效上就是出现了动态的光影效果,游戏玩家们第一次见到了更加逼真波光粼粼的水面;而对于开发者来
11、说,游戏的开发难度也大大降低了。从历史意义上来讲,Shader Model的出现对G PU来说是一场空前的革命,日后也成为DirectX API的一个重要部分。每逢DirectX版本升级,Shader Model的技术特性都会随之增强和扩充。具体来说,VS的主要作用就是构建3D图形的骨架,也就是顶点。本质上,任何3D图形在计算机中只有两种存在形式,构建骨架的顶点以及连接顶点之间的直线。比如,我们划一个圆,计算机会把它当做多边形来处理;如果精度较低,可能是5边形和或6边形;如果精度较高,则会是500边形或600边形,也就是几百个顶点和几百个直线。而PS的作用就更好理解了,主要负责VS之后的处理,
12、比如图形表面的纹理以及像素值、颜色等等,使其达到预期的的效果。不过PS中根据各工种的不同细化分为像素渲染单元(Pi xel Shader Unit,PSU、纹理贴图单元(Texture Map Unit,TMU以及光栅化单元(Raster Operations Pipe,ROP;A卡中叫做Render Back End,RBE。PSU主要负责像素的处理工作,比如我们在游戏中见到的场景、光影效果等;TMU主要负责纹理处理工作,比如树木、石头的纹理以及水面反射等等;而ROP/RBE负责像素的最终输出工作,执行像素的读/写操作、Z-Buffer检查、色彩混合及抗锯齿等。 内容导航传统GPU管线的的概
13、念和SIMD架构以上诸多单元协同工作,就形成了渲染管线(Shader Pipeline的概念。渲染管线也习惯上被成为渲染流水线,从某种程度上来讲,我们可以把它看做工厂里面常见的生产流水线,工厂里的生产流水线是为了提高产品的生产能力和效率,而渲染管线则是提高显卡的工作能力和效率。当然,同样按照工种,还可分为顶点渲染管线(Vertex Shader Pipeline,主要就是指顶点单元和像素渲染管线(Pixel Shder Pipeline,包括PSU、TMU和ROP/RBE,而我们常说的渲染管线就是指像素渲染管线。在传统GPU实时渲染的时候,一条管线显然是远远不够的,于是多条管线并行处理的结构诞
14、生了。一般在同等芯片的对比情况下,管线数量越多性能越高;同样管线数量的情况下,新核心的性能要高于于老核心的产品。不过另外一个问题又出现了,传统意义上的像素流水线各个部分单元比例相当,但随着3D图形技术的发展,管线各部分负载的压力开始不均衡起来。最简单的例子就是,VS很快完成顶点处理的任务,然后发现PS部分还忙得不可开交。由于运算量太大,PS既不能接收VS的新数据,又不能给后面的ROP/RBE输出信号,就造成数据的延迟出现。所以PS成为了管线中的瓶颈;这种情况下,使用更多的PS单元来加强像素和纹理处理工作就成为显卡着重改进的地方。而PS的数量也成了衡量显卡性能的标准之一(针对早期GPU来说。 V
15、S和PS都是四元组结构经过上面的介绍,我们知道VS和PS是传统GPU中的两项重要指标,那么VS和PS在架构又有何异同呢?在计算机图形处理中,最常见的像素数据都是由R、G、B(红、绿、蓝三种颜色构成的,加上它们共有的信息说明(Alpha,用来表示颜色的透明度,加起来总共是四个通道;而顶点数据一般是由X、Y、Z、W四个坐标构成,这样也是四个通道。所以从架构上来看,VS和PS既有相同又有不同之处。相同之处在于,二者处理的都是四元组数据,不同之处在于VS需要比较高的计算精度,而PS计算精度较低。事实上,在3D图形进行渲染的过程中,VS和PS的主要工作就是进行X、Y、Z、W四个坐标运算和计算除R、G、B
16、、A得出像素颜色。为了一次性处理1个完整的几何转换或像素渲染,GPU的VS和PS从最初就被设计成为同时具备4次运算能力的算数逻辑运算器(ALU。而数据的基本单元是Scalar(标量,就是指一个单独的变量,所以GPU的ALU 进行一次这种变量操作,被称做1D标量。 SIMD架构示意与标量对应的是Vector(矢量,一个矢量由N个标量标量组成。所以传统GPU的ALU在一个时钟周期可以同时执行4次标量的并行运算被称做4D Vector(矢量操作。虽然GPU的ALU指令发射端只有一个,但却可以同时运算4个通道的数据,这就是单指令多数据流(Single Instruction Multiple Data
17、,SIMD架构。 内容导航SIMD的弊端和统一渲染架构的出现承接上文,由于先天性设计的优势,SIMD能够有效提高GPU的矢量处理性能,尤其是在顶点和像素都是4D矢量的时候,只需要一个指令端口就能在单周期内完成预运算,可以做到1 00%效率运行不浪费运算单元。虽然早期SIMD执行效率很高,因为很多情况都是4D矢量的运算操作。但随着3D技术的不断发展,图形API和Shader指令中的标量运算也开始不断增多,1D/2D/3D混合指令频率出现,这时SIMD架构的弊端就显现出来了。当执行1D标量指令运算的时候,SIMD的效率就会下降到原来的1/4,也就是说在一个运算周期内3/ 4的运算单元都被浪费了。
18、混合型SIMD架构的出现遇到问题的时候,当时的ATI和NVIDIA都在寻求改进。进入DX9时代之后,混合型SIMD设计得到采用,不再使用单纯的4D矢量架构,允许矢量和标量指令可以并行运算(也就是Co-issue技术。比如当时的ATI的R300就采用了3D矢量+1D标量架构,而NVDIA的NV40之后也采用了2D矢量+2D标量和3D矢量+1D标量两种运算模式。虽然Co-i suue技术一定程度上解决了SIMD架构标量指令执行率低的问题,但遇到需要分支预测运算的情况,依然无法发挥ALU的最大运算能力。除了SIMD架构的弊端之外,VS和PS构成的所谓“分离式”渲染架构也遭遇了麻烦。在全新一代图形AP
19、I DirectX 10的到来之前,顶点渲染和像素渲染各自独立进行,而且一旦当架构确定下来,VS和PS的比例就会固定。微软认为这种分离渲染架构不够灵活,不同的GPU,其VS和PS的比例不一样,大大限制了开发人员自由发挥的空间。另外,不同的应用程序和游戏对像素渲染和顶点渲染的需求不一样,导致GPU的运算资源得不到充分利用。 分离式渲染架构:VS和PS负载不均 统一渲染架构:VS和PS负载均衡举例来说,许多大型3D游戏中的独立渲染场景中,遇到高负载几何工作的时候,VS处理压力增大大,而PS单元工作较少很多时候都被闲置;反之,遇到高负载像素工作的时候,PS 处理压力增大,而VS又处于闲置状态。加上传
20、统的PS和VS以前都是各自为战,彼此不相干涉,PS也帮不上VS任何忙,也就造成了GPU执行效率的降低。传统的管线架构已经跟不上时代了,而这也就促使了DirectX 10中统一渲染架构(Unified Shader Architecture的出现。 分离式架构和统一架构的差异所谓统一渲染架构,就是将传统的VS、PS以及DirectX 10新引入的GS进行统一分装。与传统GPU架构不同,此时的GPU不再分配单独的渲染管线,所有的运算单元都可以处理任何一种Shader运算(不论顶点操作、像素操作还是几何操作,而这种运算单元就是经常提到的统一渲染单元(Unified Shader,US。它的出现避免了
21、传统GPU架构中P S和VS资源分配不合理的现象,也使得GPU的利用率更高。US的概念一直沿用至今,一般来说US的数量越多,GPU的3D渲染执行能力就越强,所以US的数量也就成了判断显卡性能的一个主要标准。 内容导航Xenos与第一款统一渲染架构GPU不过对于很多GPU爱好者来说,第一次接触统一渲染架构的概念并非来自桌面显卡,而是当时还没被收购的ATI于2005年与微软合作发布的XBOX 360游戏主机采用的Xenos 图形处理器。Xenos采用了统一渲染架构,顶点、像素等操作都在US上执行,架构上区别于ATI以往任何一款GPU,是ATI第一代统一渲染架构,对日后的R600等也有较大影响。关于
22、的详细架构,这里限于篇幅就不再过多介绍,感兴趣的读者可以自行查阅。 Xenos的逻辑架构示意图那么第一款统一渲染架构的桌面GPU呢?虽然理论上这款GPU非ATI莫属,毕竟已经有了Xenos的设计经验。不过由于2006年7月份被AMD收购,ATI主要忙收购之后的事宜,研发精力大打折扣,反倒被没有统一渲染架构设计经验的NVIDIA在同年7月份抢先发布G80核心的GeForce 8800 GTX显卡,掀开了桌面统一渲染GPU架构的序幕。G80是NV DIA显卡历史上一款极具划时代意义的GPU,革命性的架构影响了日后的数代显卡。(虽然G80与AMD毫不相干,但通过G80的和下文R600的对比,我们能够
23、发现A/N两家在面对统一架构时做出的不同选择。 G80的流处理器结构G80架构上的改变可谓相当激进,在实现统一渲染单元(Unified Shader,US的过程中,将传统GPU架构中VS和PS中的4D矢量 ALU重新设计为功能更全的1D标量ALU,每一个ALU都有自己的专属指令发射器,所有运算全部转化为1D标量运算,可在一个周期内完成乘加操作。这种1D标量的ALU被NVIDIA称为流处理器(Stream Processors, SP。 G80核心架构图G80采用的1D标量式的流处理器架构称为多指令多数据流架构(MIMD,完全区别于传统GPU的SIMD架构。MIMD走的是彻底的标量化路线,这种实
24、现的最大好处是灵活、效率更高,不论是1D、2D、3D、4D指令,G80都通过编译器将其拆成1D指令交给不同的SP来处理。 每个TPC的详细结构这样也带来了一些问题,传统GPU中一个周期完成的4D矢量操作,在这种标量SP中需4个周期才能完成,或者说1个4D操作需要4个SP并行处理完成,那么执行效率是否会受到很大影响呢?不过NVIDIA异步架构将核心频率和流处理器频率分离,流处理频率进行了大幅提升,达到两倍于核心频率的水平,同时大幅增加流处理器数量的方法很好的解决了这一问题。除了流处理器,G80的纹理单元也被重新设计,将传统纹理单元(TMU的功能拆分为两种单元:纹理寻址单元(Texture Add
25、ress Unit和纹理过滤单元(TexTure Filtering Uni t,它们以跟核心频率相同的频率运作,以1:2的比例组成了新的纹理渲染阵列(Tex Array。所以规格方面,G80核心拥有128个流处理器、64个纹理单元和24个光栅单元,由8个TPC(Thread Processing Cluster,线程处理器集群组成,每个TPC中拥有两组SM(S treaming Multiprocesser,流式多处理器,每组SM拥有16个流处理器和8个纹理单元。每一个TPC都拥有独立的8个纹理过滤单元(Texture Filtering Unit,TFU、4个纹理寻址单元(Texture
26、Address Unit,TAU以及L1缓存。虽然MIMD架构看起来无懈可击额,不过和任何事物一样,GPU架构也不可做到完美。虽然1D标量ALU的设计执行效率很高,但也有相应的代价。理论上4个1D标量ALU和1个4D矢量ALU的运算能力是相当的,但是前者需要4个指令发射端和4个控制单元,而后者只需要1个,如此以来MIMD架构设计的复杂度和所占用的晶体管数都要远高于SIMD 架构。 内容导航AMD变革开端:超标量架构的R600直到G80架构出现半年之后的2007年5月15日,AMD(此时已不叫ATI才正式发布了基于统一渲染架构R600的Radeon HD 2900 XT(以及其它低端型号的HD
27、2000系列。发布的数月之前AMD就表示R600将会比Xenos快不止一个档次。但是面对对手G80呢?相比G80激进地架构变革,R600显得相对保守一些,因为它的身上还能看到传统GPU采用SIMD架构的影子,不过其中的改变还是相对传统的GPU架构已经算是脱胎换骨了。不同于G80的全标量设计,R600是将原有的4D矢量ALU扩展设计为5D ALU,准确一点应该叫作5个1D ALU,因为每个ALU可以执行任意的1D+1D+1D+1D+1D或1D+ 4D或2D+3D指令运算,(而以往的GPU往往只能是1D+3D或2D+2D,Co-isuue(矢量和标量并行执行技术在这里更加灵活多变,所以这种架构也叫
28、做5D Supersca lar超标量架构。 R600采用的5D Superscalar超标量架构AMD称这些5D ALU为统一流处理器单元(Stream Processing Units,SPU,区别于SP,每一个SPU中都有5个ALU(也就解释了为何A卡和N卡中的流处理器数目差距如此大,其中4个ALU可以进行MADD(Multiply-Add,乘加操作,而另外一个(也可叫做SFU,特殊函数运算单元可以执行函数运算、浮点运算以及运算Multiply运算(不能进行ADD运算。由于每个流处理器单元每个周期只能执行一条指令(这也是传统SIMD架构的弊端,但是每个每个流处理器中却拥有5个ALU,如果
29、遇到类似1D标量类似的短指令,执行效率只有1/5,其余4个ALU都将闲置。 R600核心架构图为了尽可能的提高效率,AMD引入了VLIW5体系(Very Long Instruction Word,超长指令集的设计,可以将多个短指令合并为一组长的指令交给流处理器单元去执行,比如5条1D指令或者1条3D指令和两条1D指令可以合并为一组5D VLIW指令。这部分的操作由流处理器单元中的Branch Execution Unit(分歧执行单元来执行。分之执行单元就是指令发射和控制器,它获得指令包后将会安排至它管辖下5个ALU,进行流控制和条件运算。General Purpose Registers(
30、通用寄存器存储输入数据、临时数值和输出数据,并不存放具体的指令。整体规格方面,R600设计了320个流处理器(64个流处理器单元X5,分为四个SIMD阵列,每个SIMD阵列分为两组,每组包含40个流处理器(16个流处理器单元X5。纹理单元为4组,每组包括4个纹理过滤单元和8个纹理寻址单元以及20个纹理采样单元,共计16个纹理过滤单元和32个纹理寻址单元以及80个纹理采样单元。 R600中引入的Tessellation是现在曲面细分的雏形在R600架构中还有两项技术值得一提,第一个则是Hardware Tessellation,也就是目前DX11中火热的硬件曲面细分技术,AMD在HD 2000显
31、卡中引入了这一技术,不过当时的硬件环境远不成熟,Hardware Tessellation不具有实用性,只在HD 2000显卡上昙花一现,到了HD 3000系列就去掉了。 R600中的环形总线技术另外一个则是1024-bit环形总线技术,R600本身就拥有512bit显存位宽,已经是当时位宽最大的,G80最大位宽也不过384-bit。AMD在此基础上又引入了Ring bus环形总线,可以等效1024-bit位宽,如果使用高速的GDDR4显存,那么显存带宽可以轻易突破130GB/s,普通的GDDR3显存带宽也有100GB/s以上的带宽。可惜的是当时的生产工艺还是8 0nm,512-bit的显存位
32、宽要占据相当大的晶体管规模,AMD的环形总线技术也没有普及开来,到HD 3000系列上甚至精简为256-bit,但是搭配高速GDDR3显存来弥补。总得来说,得益于SIMD架构,R600可以用少于G80的晶体管堆积出远远大于后者的ALU规模,但是在指令执行效率方面,R600相比G80并没有什么优势。因为非常依赖于将短指令重新打包组合成长指令的算法,对编译器要求比较高,而G80则不存在这样的问题。虽然ALU规模、显存带宽等一系列数据都要领先,但执行效能的劣势还是让R600输给了G80,这一点也深刻地反映到当时的实际测试中。作为AMD第一款桌面统一渲染架构GPU的R600虽然在新特性上亮点不少,但绝
33、对性能面对G80没有任何优势,再加上发布时间上的落后,相关产品在市场上的反映很是惨淡,也宣告了AMD统一渲染架构在桌面GPU的第一次试水以落寞而告终。 内容导航不变中的改变:全新制程工艺的RV670 RV670采用了全新的55nm,核心规模减小,功耗更低在功能上,RV670增加了DX10.1和PCI-E 2.0支持,增加了RV 670缺失的UVD解码引擎,可完整支持主流高清编码的硬解,新一代RV670显卡还支持三路/四路交火以提高游戏性能,并在功耗上有过人表现。 RV670相比R600核心架构没有改变核心架构设计上,RV670与R600并没有明显区别,依然是320个流处理器,分为4组SIMD阵
34、列,每个阵列对应一组纹理单元。每5个ALU和一个分支预测单元组成一个流处理器单元,继续着5D的超标量结构。总体来说,RV670相比R600主要有以下几点改进:制造工艺由80nm升级至55nm;PCI-E控制器升级支持2.0版本,带宽倍增;高清解码引擎由原来的Shader解码升级为UVD 引擎,支持H.264和VC-1的完全硬解码;显存控制器由512bit降至256bit,这是控制成本的需要,而且以R600和RV670的运算能力其实不需要太高的显存位宽;支持PowerPl ay节能技术,待机功耗很低;API升级至DX10.1;所以说,RV670架构本质上没有改变,更像是R600架构的工艺改进版。
35、虽然此时NVIDIA的G92相比G80同样改进不多,但RV670依然没有讨到什么便宜。R600承担了太多不成熟的技术和工艺导致性能和架构都没什么优势,但AMD从RV670身上AMD发现了另外一条路:如果顶级性能上不能超越对手,那么就要在同价位上比对手做的好。要实现这一点,需要AMD在制程工艺、设计思路以及市场策略上作出相应的改变,这也就出现了后来AMD“田忌赛马”的策略。 内容导航规模扩充结构改进:逐步优化的RV770虽然改进版的RV670依然没能给AMD带来任何生机,但接下来的RV770却是AMD的扬眉之作。2008年6月份,AMD发布了基于RV770架构的第二代DX10.1显卡,显卡的流处
36、理器单元从上代的320个暴增到800个,AMD的5D超标量架构容易增加流处理器单元的优势渐渐显现出来。RV770的SIMD阵列由RV670的4组增加到10组,纹理单元也相应地增加到10组,整体规格是上一代架构的2.5倍,流处理器单元达到了800个,纹理单元则提高到了40个,光栅单元(ROP为16个,SP单元的急剧增加也大幅提升了RV770的性能,至少可以抗衡G92没有问题,面对“怪兽”GT200也多了一分底气。 RV770核心架构图对比前面的RV670,RV770在架构上主要有以下几点不同:SIMD阵列排列方向横置,纹理单元紧靠流处理器单元。因为RV670架构在纹理性能上不尽如人意,AMD在R
37、V770上改进了纹理单元的设计,虽然每个纹理单元的规格没有变化,但是效率更高,一个简单的例子就是开发者去掉用以保证纹理单元独立性的TMU Pool设计。 RV770的纹理单元改进设计在纹理单元与显存控制器之间设有一级缓存,RV770核心相比RV670,L1 TC容量翻倍,再加上数量同比增加2.5倍,因此RV770的总L1容量达到了RV670/R600的五倍之多。另外,RV770还放弃了使用多年的环形总线,估计是因为高频率下数据存取命中率的问题,回归了交叉总线设计,有效提高了显存利用率,并节约了显存带宽。 RV770的ROP单元此外,RV770的光栅单元数量保持在RV670的16个,但抗锯齿性能
38、有了大幅提升,ROP单元Depth stencil ops(景深模板的每秒操作数双倍于后者,在执行2MSAA/4MSAA 运算时每周期可填充16像素,8AA时每周期可填充8像素,都达到了RV670的两倍。此外AMD之前引入过名为CFAA(Custom Filter Anti-Aliasing的新算法,在使用CFAA 的时候AMD的显卡还可以利用流处理器进行抗锯齿运算,800个流处理器最高可以达到24x CFAA。 内容导航变化有限规格翻倍:双核心的Cypress在RV770成功翻身之后,AMD终于有了充足的精力和条件着手开发下一代GPU了。2009年9月23日AMD抢先发布了收款DX11图形G
39、PUCypress(此时AMD已经不再用输在命名GPU架构,轰动一时。同样是受益于5D超标量架构出色的可扩展性和40nm新工艺,Cypress在规模方面又有了惊人的提升,其中流处理器数量达到了疯狂的16 00个。 Cypress核心架构图从架构来看设计方面来看,Cypress就像是两颗RV770封装在一起,流处理器部分可以看做是“双核心”设计,各项规格也都是RV770的两倍,比如1600个流处理器、80个纹理单元和32和ROP光栅单元等等。那么为什么要采用这种双核心设计呢?AMD给出的解释是,当流处理器扩充至1600个这样的恐怖规模时,不仅芯片设计制造的难度非常高,而且相应的缓存和控制模块难以
40、管理协调如此众多的流处理器,一分为二的做法效率将会更高。当然,Cypress也并非简单的双核版RV770。 Cypress架构前端这种非常像是CPU中的双核设计,两颗核心各自相对独立,独享L1、共享L2和内存控制器等其他总线模块,核心之间则通过专用的数据共享及请求总线通信。为了配合这两颗核心中众多流处理器的工作,装配引擎内部设计有双倍的Rasterizer(光栅器和Hierarchial-Z(多级Z缓冲模块,这也是与RV770最大的不同。在流处理器部分,RV870相对于RV770改进有限,只是加入了DX11新增的位操作类指令,并优化了Sum of Absolute Differences(SA
41、D,误差绝对值求和算法,指令执行速度提升12倍,此项指令可以在OpenCL底层执行。SAD算法应用最多的就是H.264/AVC编码的移动向量估算部分(约占整个AVC编码总时间的80%,如此一来使用RV870做视频编码类通用计算时,性能会大幅提升。 Cypress流处理器单元另外,流处理器部分还加入了双精度浮点运算支持,每个流处理器单元(包括5个流处理器可以执行4条32-bit FP MAD运算,2条64-bit FP MUL or ADD运算,1条64-bit FP MAD运算,4条24-bit Int MUL or ADD运算,特殊功能区每周期可以执行一条32-bit FP MAD运算,均比
42、RV770有了大幅提高。Cypress的SIMD阵列的纹理单元也有多项改进,支持读取压缩后的AA颜色缓冲数据以减少带宽占用,此外纹理的差值运算转移到流处理器中而不再由纹理单元负责。Cypress的双线过滤纹理运算能力达到了每秒680亿次,实际性能中一大明显改变就是可实现各向无角度纹理过滤。为了迎合DX11,Cypress还重拾了R600中的曲面细分单元,并加以优化和改进,使之可以更高效率的细分出更多的多边形和曲面。还增加了Eyefinity Display Contorllers,可以实现六屏输出,这也是Cypress的一个亮点。不过总得来说,Cypress相对RV770在架构方面改进有限,主
43、要是新增了DX11新特性,另外利用40nm和新一代GDDR5显存在功耗控制方面做的非常完美,加上抢先发布性能均衡,受到了很好的市场反响, 内容导航架构未变特性增强:稳中过渡的Barts即便从本质上来说Cypress架构不算太多改进不多,但抢先发布、众多新特性的出现、更方面均衡的表现还是受到了很多消费者的青睐,对手的Fermi架构的改变虽然彻底,但迟到许久发布而且功耗温度控制很不完善。一路领先的AMD在进入DX11时代节奏就明显快半拍,更多的研发时间也让人不禁对下一代“北方群岛”充满了期待。但让人遗憾的是,虽然所谓的代号的Barts核心架构在发布之前就有各种各样的传闻,但是受到各方面限制,特别是
44、台积电代工工艺的落后,Radeon HD 6800系列所属的“北方群岛”家族并没有在核心架构方面进行大规模的重新设计,而是基本沿用了R600以来的VLIW5式SIMD流处理器结构,并在诸多细节上做了优化和增强,AMD称之为“第二代DX1 1设计”。 Barts核心架构图对比前面的Cypress核心架构,Barts 的改变可谓“微乎其微”,最明显的就是Ultra-Threaded Dispatch Processor(超线程派遣分配单元不再是Cypress当中的一组,而是为每个核心模块均配备了一组。也就是说,原本在Cypress当中的一个超线程派遣分配单元负责的1600个流处理器改为了现在的两个
45、超线程派遣分配单元分别负责560个(每核心560个流处理器,两个核心共1120个流处理器,从而保证流处理器单元能够尽可能的达到最高的利用率。虽然相关产品型更高,但Barts相比Cypress规格却进行了削减,Barts拥有14个SIMD引擎,每个引擎还是80个流处理器,总共1120个,纹理单元56个,ROP光栅单元32个。从由于各项规格性能上来讲要弱于Cypress。当然这跟架构毫无关系,而是AMD的市场策略所致。按照AMD的说法,Radeon HD 6000系列架构重点有五大方面的进步:1、更强的单位面积性能,比上代提升最多35%;2、第二代DX11设计,更快的曲面细分和几何吞吐;3、新的和
46、改进的画质功能,包括抗锯齿和各向异性过滤;4、增强的多媒体加速,包括、UVD3硬件解码引擎、AMD APP并行异构计算技术、蓝光3D立体技术;5、下一代显示技术,包括Eyefinity+多屏输出、HDMI 1.4a规范、DisplayPort 1.2规范。虽然架构方面的调整微乎其微,但Barts还是对内核设计做了重新配置,单精度浮点性能最高能够突破2TFlops(每秒2万亿次计算大关,每秒钟能够处理的像素也能超过240亿,同时曲面细分单元进行了特别增强(第七代,光栅器(Rasterizer也配备了两个,Hub部分有PCI-E 2.1总线控制器、UVD3硬件解码引擎、CrossFireX管理引擎、Eyefinity显示控制器等,显存控制器则依然是四个64-bit,总位宽256-bit,继续搭配高速GDDR5显存颗粒。总的来说,Barts算是AMD显卡发展道路上的稳中过渡。 内容导航革新VLIW 4架构:尝试改变的CaymanBarts的出现算是AMD产品路线的一个策略,我们不能说AMD保守,但从长远发展方面来看,如此做法未必是长久之计。到了Radeon HD 6000的高端型号:Ra
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贷款期房购房合同协议
- 订钢材交定金合同协议
- 订工作餐协议合同协议
- 贷款车辆转押合同协议
- 诉讼代理委托合同协议
- 2025幼儿园数学游戏化学习试题及答案
- 陕西省咸阳市礼泉县2024-2025学年高二下学期期中地理试题(原卷版+解析版)
- 2025年大学物理基础复习试题及答案
- 2025年大学化学重要考题对策及复习技巧试题及答案
- 2025年劳动力市场管理员资格考试试卷及答案
- 2025年吉林省民航机场集团长白山机场公司招聘笔试参考题库附带答案详解
- 小学生涯课件
- 目光礼仪培训
- 西藏拉萨中学2024-2025学年高三第二学期英语试题4月月考试卷含解析
- 设备验收方案
- 汉语方言与地方文化认同的关系研究论文
- 2024年全国统一高考英语试卷(新课标Ⅰ卷)含答案
- 读书分享读书交流会《你当像鸟飞往你的山》课件
- 链路聚合的配置
- 起重工技能考试题库
- 国家开放大学《理工英语1》边学边练参考答案
评论
0/150
提交评论