于图形处理单元中提供共享属性计算电路的系统及方法

文档序号:6609301阅读:287来源:国知局
专利名称:于图形处理单元中提供共享属性计算电路的系统及方法
技术领域
本发明是有关于计算机处理,尤指于图形处理单元的像素描绘管线内提供分享属性计算电路的系统和方法。
背景技术
三维计算机绘图的技术通常是关于产生或描绘(render)三维对象的二维图像,然后将其显示或呈现在如阴极射线管(cathode ray tube,CRT)或液晶显示器(liquid crystal display,LCD)的显示设备或屏幕上,该对象可能为简单的几何像素(primitive),例如点、线段、三角形或多边形,一些更复杂的对象可通过一系列的连接平面多角形来表示,例如可通过一系列的连接平面三角形来表示该对象,因此最终可以一顶点或一组顶点描述所有的几何像素,而用于定义点的坐标(X,Y,Z)即可代表线段的终点或多边形的转折角。
当三维像素以二维投影的方式呈现在计算机屏幕或其它显示设备上时,为了产生用以显示的一组数据,该像素的顶点需经过一系列的运算或由图形描绘管线内的多个处理阶段进行处理,通常管线代表一系列串联的处理单元或阶段,其来自前一阶段的输出会做为后一阶段的输入,例如,当图形处理器要处理环境(context),则可能包含的阶段有每一顶点的运算、像素组合运算、像素运算,纹理(texture)组合运算以及网格化(rasterization)运算。
请参阅图1,其为已知常见像素描绘管线的方块图,该管线包括三角形设定(triangle setup)阶段10,用以产生绘图管线使用的三角几何网格化相关数据,于决定该三角形数据后,属性设定阶段12产生已知属性以及将于管线后阶决定的所需属性的内插变量表,像素位置阶段14则计算在三角形中的特定像素的位置相关属性,而纹理阶段16则处理三角形中的像素的纹理相关属性,该纹理阶段16可能利用多种的技术以决定纹理值,一旦决定了任一像素的纹理值,像素着色器(pixel shader)18会合并色彩组成、纹理值、雾状以及反射(spectral)色彩组成等所有的属性,以于绘图管线中生成该像素的效果颜色,该处理过的数据前进至写回(write-back)单元20,最后储存在画面缓冲区22中。
几个前面提及的管线阶段需要属性计算,尤其像是线性内插技术等等,因为它们需要参考彼此的值来计算属性,所以计算这些属性的操作是非常复杂的,本领域技术人员均知计算绘图管线中的每一个像素的最终色彩值的处理程序既复杂又耗时,一种加速处理的方法是以平行方式产生像素,不过条件是每一个平行产生的像素都要有自己的电路元件以计算其属性,此附加的电路元件虽改善效率,但却增加了复杂度、体积和费用,另一种加速计算的技术是群组处理具有共同属性特性的像素,不过,本方法易受显示图像的本身情况以及在同一三角形或其它像素内像素数据的关联性影响,导致不同的效能改善水准。
因此,此领域迄今仍有需要克服以上所述的此等缺陷和不足。

发明内容
本发明提供能于图形处理单元内提供共享属性计算电路的系统和方法,于一实施例中,本发明为一种系统,用以在拥有多个处理阶段的图形处理单元内计算像素属性,该系统包含计算方块,用以处理对应于多个像素的多项属性;多个先进先出缓冲区,每一个先进先出缓冲区均位于一个处理阶段和该计算方块之间;共享缓冲区,用以在属性处理期间储存该多项属性;以及处理优先逻辑元件,用以决定对应于该多项属性的多个优先级。
本发明亦提供能于图形处理单元内计算属性的系统,此系统大体上可包含三角形设定逻辑元件,用以于绘图管线内决定三角形数据;属性设定逻辑元件,用以决定对应于该三角形数据的多项属性;中央缓冲逻辑元件,于处理期间储存该多项属性;计算逻辑元件,用以计算从每一个处理阶段得到的属性;以及判断电路,用以建立该计算逻辑元件的优先级。
本发明亦提供能于图形处理单元内计算属性的方法,关于这点,此方法大体上可包括下列步骤选择多个像素,其中每一个像素拥有多项属性;将该多项属性分成多个群组,该多个群组对应于该图形处理单元中的多个阶段;指定对应于该多个群组的多个处理优先级;计算方块接收多项属性;以及根据该多个优先级计算该多项属性。
本发明的系统、方法、特征及优点可通过下列图式及详细说明而有更深入的了解,同时,于说明中所包含的其它系统、方法、特征及优点亦受如附申请专利范围的保护。


这里所揭露实施例的各方观点可参考下列图式以获得更深入的了解,图式中的元件并未限定其尺寸比例,仅用于清楚说明本发明的原则,各图中相似的标号代表相对应的部分。
图1为已知计算机绘图系统中的绘图管线内某些元件的功能流程图。
图2A和图2B说明根据笛卡儿和重心的技术计算图形处理单元内产生的三角形内像素。
图3为于图形处理单元内计算属性的一系统实施例的方块图。
图4为于图形处理单元内计算属性的另一系统实施例的方块图。
图5为于图形处理单元内计算属性的数据流实施例的方块图。
图6为于平行处理设计中的计算方块实施例的方块图。
图7为拥有判断逻辑元件的计算方块实施例的方块图。
图8为判断逻辑元件实施例的方块图。
图9为方块图,说明于图形处理单元中,属性计算系统配合共享缓冲区的具体实施例。
图10为于图形处理单元中计算属性的方法实施例的流程图。
本发明图式中所包含的各元件列式如下三角形设定阶段10 属性设定阶段12像素位置阶段 14 纹理阶段16、164、278像素着色器18 写回单元20画面缓冲区22 三角形100顶点 102 区域104像素 106 坐标108分区 110 系统120、140三角形设定逻辑元件 122三角形属性设定逻辑元件123中央缓冲逻辑元件 124计算逻辑元件 126 判断逻辑元件128、212
计算方块142、210 先进先出缓冲区144共享缓冲区 146、282 处理优先级逻辑元件148计算方块160、190 位置阶段162、276着色器输入阶段166、280已处理数据的先进先出缓冲区 168、170、172原始数据的先进先出缓冲区 174、176、178着色器180、283 原始数据 189计算电路191~198已处理数据 199位置阶段已处理数据的先进先出缓冲区 214纹理阶段已处理数据的先进先出缓冲区 216着色器输入数据的先进先出缓冲区 218位置阶段原始数据的先进先出缓冲区 220纹理阶段原始数据的先进先出缓冲区 222着色器输入阶段原始数据的先进先出缓冲区 224三角形设定单元270 属性设定单元 272存储器 274 共享计算电路 28具体实施方式
本发明的各观念可通过下列图式以获得更进一步的了解,本发明将配合图式进行说明,但是不限于所述实施例,相反地,还包含了所有的替代、修改、等效对象,均不脱如附申请专利范围的精神与范畴。
将参阅图2A和图2B,其分别说明如何根据笛卡儿(Cartesian)和重心(Barycentric)技术来计算图形处理单元(graphics processing unit,GPU)内产生的三角形内像素,三个顶点102的位置定义一个三角形100,并形成区域104,通过位置坐标和一个或多个附加属性可定义每一个顶点102。附加属性可为纹理、色彩或其它属性,在该三角形100内,坐标108定义了像素106的特定位置。利用笛卡儿设定方式计算该像素106的属性值,需要用到顶点的X和Y轴位置坐标以及顶点的属性值,以决定该像素106的属性值,用以决定该像素属性值的一般方程式为P(x,y)=Px·x+Py·y+Pc其中Px、Py和Pc为针对该属性的三角形设定参数,而x和y为像素106的坐标值108。
图2B的重心设定方式用到由像素106和两个顶点102所定义的分区110,例如P1、P2和该像素106三个点可以定义分区A0,同样地,通过点P0、P2和该像素106可以定义分区A1。为了决定属性比重,对应顶点P0属性值的分区应为分区A0,当一像素位置远离一特定顶点时,对应该顶点的分区便会缩小,计算该像素属性的式子为P(x,y)=A0A(x,y)·P0+A1A(x,y)·P1+A2A(x,y)·P2]]>其中P0、P1和P2为顶点属性值,A0、A1和A2为该三角形内坐标为(x,y)的像素所分割的三个分区的面积,A则是P0、P1和P2所定义的三角形的总面积。依此方式,每一顶点属性值会乘上该分区的对应比例,分区比例又称为重心坐标α、β、γ。这里提到的笛卡儿设定和重心设定方式并非决定像素属性的必要技术,吾人可以单独地或非单独地利用此类技术实行本发明的系统和方法,亦可利用其它数值方法系统以执行该计算。
请参阅图3,其为于图形处理单元内计算属性的一系统实施例的方块图,该系统120包含三角形设定逻辑元件122,当需要于计算机绘图环境中描绘景象时,即可以该三角形设定逻辑元件122决定所需三角形的三角形坐标数据。该系统120亦包含三角形属性设定逻辑元件123,用以决定由该三角形设定逻辑元件122所定义的三角形内的每一个像素的属性。该系统120还包含中央缓冲逻辑元件124,当三角形像素的属性设定数据于绘图管线的多重处理阶段中前进时,可储存该属性设定数据,关于这一点,中央缓冲逻辑元件124可以利用地址指针,使得当特定的三角形像素处理程序通过该绘图管线的多重阶段时,不需要移动该实际属性数据,因为传递指针的效能成本比移动该实际属性数据要小得多,所以与图形处理单元属性处理有关的程序便能藉此显著改善效能和存储器利用率。
该系统120还包含计算逻辑元件126,用以计算在绘图管线内各处理阶段所需要的像素属性,该计算逻辑元件126可以包含在计算方块或计算电路之中,而且在本发明的系统和方法中,绘图管线内的多重处理阶段可以共享此计算逻辑元件126,当绘图管线内的多重处理阶段产生多个计算要求,判断逻辑元件128可建立该计算逻辑元件126于计算各请求的优先级,建立该计算逻辑元件126的优先级,该判断逻辑元件128可让该绘图管线的多重处理阶段以更有效的方式使用该计算逻辑元件126,依此方式,该绘图管线内的每一处理阶段便可共享该计算逻辑元件126。该系统120可进一步包含先进先出(first in first out,FIFO)缓冲逻辑元件,用以储存每一处理阶段和该计算逻辑元件126之间所传递的属性。
请参阅图4,其为于图形处理单元内计算属性的另一系统实施例的方块图,该系统140包含计算方块142,用以处理在该绘图管线的多重阶段内正处理像素的多项属性,该计算方块142可以计算位于三角形中的一像素的属性,其中三角形顶点的属性值已知,虽然这里的实施例是以三角形为像素进行说明,但是亦可使用像是线段、点和其它多边形等形式的像素,亦符合申请专利范围的范畴及精神,该共享计算方块142可包含多个计算电路以支持平行像素处理。该系统140亦包含先进先出缓冲区144,用以缓冲该绘图管线内的多重处理阶段所接收和输出的数据。
该系统140亦包含共享缓冲区146,可用以储存该绘图管线内的任一处理阶段正处理像素的对应三角形属性设定数据,利用指针和指针型态可让位于共享缓冲区146内的三角形属性设定数据形同于绘图管线内的不同处理阶段中移动,其中指针具有缓冲区地址,而指针型态可以告知储存在缓冲区的属性的型态,通过将指针传递到绘图管线的不同处理阶段,就不需要移动在共享缓冲区146内的三角形属性设定数据。该系统140亦包含处理优先级逻辑元件148,用以决定在该绘图管线的多重处理阶段中处理或计算属性的优先级,依此方式,处理优先级逻辑元件148决定处理顺序,计算方块142便依照此更具效率的顺序提供计算逻辑给该绘图管线的每一个处理阶段,该处理优先级逻辑元件148可以利用该属性型态及/或其它管线元件状态等信息,以决定将给来自多重处理阶段的哪个计算请求有最高的优先权,在某些实施例中,通过驱动程序可编程该处理优先级逻辑元件148,以增加其弹性及结构性。
请参阅图5,其为于图形处理单元内计算属性的数据流实施例的方块图,其中有三个主要的阶段请求使用计算电路,这些阶段包含位置阶段162、纹理阶段164以及可要求像素内插的着色器(shader)输入阶段166,但是本发明并不受限于这些阶段。图形处理单元包含的位置阶段162用以处理位置属性,以决定像是像素位置和可见性等信息,在此阶段处理的属性可为像素X值、像素Y值、像素Z值、像素W值以及模板值。该图形处理单元亦可包含纹理阶段164,用以处理决定该像素贴图(texture mapping)的属性。计算对应于位置阶段162和纹理阶段164的属性的时间点不同,针对给定的像素,通常会先计算其位置阶段162的属性,然后再计算纹理阶段162的属性。
该图形处理单元亦包含着色器输入阶段166,其用以计算如扩散和反射色彩、正常表面和雾状或其它属性,这些属性将被传递至像素着色器180,与贴图色彩数据一起进行更复杂的处理。每一个处理阶段162、164、166均有机会要求计算方块160计算属性,而每一个处理阶段均有一个对应的输出用先进先出缓冲区174、176、178,用以储存来自各处理阶段的原始数据,等候该计算方块160准备好对该数据执行计算,计算方块160与每一个阶段162、164、166间各配置一个对应的先进先出缓冲区174、176、178。举例来说,原始数据可以是空白像素数据及其对应指针,对应指针会指出相关的三角形属性设定值在共享缓冲区146中的位置,该数据一般从位置阶段162顺流移动到纹理阶段164、着色器输入阶段166,并通过该计算方块160到着色器180,该计算方块160计算完位置数据后,将该处理过的属性数据传送到已处理数据的先进先出缓冲区168,储存该处理过的数据,等待该位置阶段162能够接收这些处理过的数据并传递到后续的处理阶段,如纹理阶段164。在某些例子中,该处理过的位置阶段数据将不会被送到纹理阶段164,因为计算结果指出该结果已不再有效,例如,假设深度测试判定该像素不可见,则数据将不具意义,而在其它例子中,该处理位置阶段数据是会从位置阶段162进行到纹理阶段164的。
该纹理阶段164将原始数据传送到原始数据的先进先出缓冲区176,以供计算方块160进行后续的处理,对应的已处理数据会送到已处理数据的先进先出缓冲区170储存,等待纹理阶段164准备好接受这些已处理数据,某些已处理数据将传递到着色器输入阶段166。来自着色器输入阶段166的原始数据会储存在原始数据的先进先出缓冲区178,等待计算方块160准备好计算这些原始数据。计算方块160完成着色器输入阶段数据的计算后,将处理过的着色器属性传送到已处理数据的先进先出缓冲区172储存,等待该着色器180准备好进行后续的处理,该着色器180可以通过各别的数据路径或跟着管线的各阶段,从计算方块160接收任何或所有与位置阶段162、纹理阶段164、着色器输入阶段166对应的已处理数据。
简单说明图6,其是说明运用在平行处理设计中的计算方块实施例的方块图,计算方块190从该绘图管线的多重处理阶段接收对应各种属性的原始数据189,该计算方块190可包含多个计算电路191~198,以同时针对多个像素平行地执行属性计算,例如,可将八个像素分成两组各有四个像素的独立群组,以进行并行计算,当计算电路191~198完成该计算时,已处理的属性数据199将被传送到绘图管线内与特定处理阶段对应的先进先出缓冲区。
请参阅图7,其为拥有判断逻辑元件的计算方块实施例的方块图,该计算方块210用以决定位于图形处理单元所描绘像素内的像素的属性值,计算方块210接收从绘图管线内的多重处理阶段所发出的计算请求,然后利用判断逻辑元件212建立各计算请求的处理优先级,该判断逻辑元件212可以从对应于该绘图管线中的多重阶段的多个先进先出缓冲区接收利用度数据,例如,在该绘图管线中,位置阶段可包含已处理数据的先进先出缓冲区214以及原始数据的先进先出缓冲区220,因应位置阶段对计算方块210发出的计算请求,该位置阶段原始数据的先进先出缓冲区220储存有关的空白像素数据和指出属性设定值在共享缓冲区中位置的指针,若计算方块210完成计算,像素属性数据则储存于该位置阶段已处理数据的先进先出缓冲区214;同样地,该纹理阶段亦有对应的已处理数据的先进先出缓冲区216和原始数据的先进先出缓冲区222。判断逻辑元件212亦接收对应于该着色器输入阶段原始数据的先进先出缓冲区224的利用度数据,其中该着色器输入阶段原始数据的先进先出缓冲区224用以储存将从着色器输入阶段进入该计算方块210的数据,当原始数据处理完毕,已计算的属性将传送到着色器输入数据的先进先出缓冲区218,以供着色器(未绘出)进行后续的使用。当判断逻辑元件212接收到与各先进先出缓冲器利用程度有关的数据后,便能够根据目前使用项目(entry)的数目来决定各计算请求的处理优先级,例如,当位置阶段原始数据的先进先出缓冲区220超过预先决定的利用度门坎时,则指定该位置阶段的计算请求有一个较高的优先级,在此范例中,指定该位置阶段计算请求有一个较高的优先级可以减少该管线在此阶段延迟(stall)的风险;相反地,如果位置阶段已处理数据的先进先出缓冲区214超出该预先决定的利用度门坎时,则判断逻辑元件212会指定后方的位置阶段计算请求有一个较低的优先级。因此,该判断逻辑元件212在接收管线中对应于各处理阶段的先进先出缓冲区的利用度数据后,便会建立各计算请求的优先级,以减少造成绘图管线中任何阶段延迟的风险。
现请参阅图8,其为判断逻辑元件实施的流程图,在步骤240中,该判断逻辑元件接收从绘图管线内的处理阶段所发出的计算请求;在步骤242中,调查与各处理阶段对应的先进先出缓冲区,以获悉它们的利用程度;然后在步骤244中,该判断逻辑元件判断是否有任何已处理数据的先进先出缓冲区的利用程度低于特定的门坎;如果确实有存在已处理数据的先进先出缓冲区的利用程度低于特定的门坎,则可能其对应的处理阶段在等待已计算属性数据时发生延迟,此时,于步骤246中,便指定对应于该阶段的计算请求有较高的处理优先级;如果所有已处理数据的先进先出缓冲区的利用程度均高于预先决定的门坎,于步骤250中,则沿用先前建立的处理顺序;在步骤252中,当该判断逻辑判定原始数据的先进先出缓冲区的利用程度高于特定门坎时,进行至步骤254,指定对应于该阶段的计算请求有较高的处理优先级;如果没有原始数据的先进先出缓冲区的利用程度高于该特定门坎时,该判断逻辑元件前进至步骤250,沿用先前建立的处理顺序。当从该绘图管线的处理阶段接收到新的计算请求时,该判断逻辑元件会持续运作,如果该判断逻辑元件无法指定计算请求的处理优先级,便可以利用预设的处理顺序,例如循环方式(rounder robin),根据每一处理阶段的预定顺序来处理计算请求。
现请参考图9,其是方块图,说明于图形处理单元中,属性计算系统配合共享缓冲区的具体实施例,该系统包含三角形设定单元270,用以建立坐标数据,来定义描绘程序中需要用到的三角形。
于另一种实施例中,可以将三角形属性设定数据储存在共享缓冲区282中,对应于该已储存的三角形属性设定数据的指针将会随着原始三角形数据通过该多重管线阶段,当其中之一的管线阶段接收到指针时,会将该指针送到共享计算电路284,该电路便会从共享缓冲区282存取该三角形属性设定数据,依此方法,共享缓冲区282可与存储器274分开使用。
在某些具体实施例中,三角形设定数据会储存在存储器274并传送到属性设定单元272,以计算三角形的属性设定数据,当绘图管线处理到这个三角形时,指出该三角形属性设定数据位置的指针便会被传送到共享缓冲区282进行储存。有时,一个像素可能有32项或更多的属性,其中每一项属性还包括4个或多个特定组成,将这些三角形属性设定数据传送到存储器274,而对应于这些属性设定数据的指针则被传送到共享缓冲区282,同时,共享缓冲区282中亦储存有各指针的指针型态,其中该指针型态指出此特定三角形属于哪一属性群组,因为该属性计算程序在进入该像素着色器283之前,还需要经过相当多的处理步骤,因此使用共享缓冲区管理大量的对应数据,以储存设定结果与有关特定属性组成的指针。三角形设定单元270和属性设定单元272可以配置(allocate)部分的缓冲区,然后当对应数据已处理完毕,接下来的处理阶段就可以恢复此部分的缓冲区,举例来说,假如位置阶段276判定在此三角形内的像素已不再可见,便可删除共享缓冲区内对应于该三角形的属性设定数据。
该管线包含如位置阶段276、纹理阶段278、着色器输入阶段280等多重处理阶段以及共享缓冲区282,当该管线处理不同的像素属性时,相关的数据便会从一个阶段进行到另一个阶段,举例来说,在位置阶段276的属性利用从共享缓冲区282得到的指针和指针型态,将适当的属性设定值传送到共享计算电路284进行属性计算,当共享计算电路284针对这些属性的计算结束,已处理的数据便会传回到该位置阶段276,在某些情况下,如果这些属性不需要进一步的处理,则位置阶段便会删除共享缓冲区282中的对应指针数据,另一种情况则是如果后续的阶段像是纹理阶段278可以利用该属性,则纹理阶段278同样会去存取该共享缓冲区282内对应该属性设定值的指针和指针型态等信息,并传送原始数据到该共享计算电路284进行计算。注意,共享计算电路284因应着色器输入阶段280的请求而计算获得的属性将会传送到着色器283,处理阶段276、278、280传送到该共享计算电路284的属性数据则包含对应于共享缓冲区282的指针和指针型态,该共享计算电路284利用该指针以存取储存在存储器274内的实际属性设定数据值,并利用该指针型态以存取各属性型态的处理优先级。举例说明,一般来说,位置群组的属性优先于纹理群组的属性,同样地,纹理群组的属性通常优先于着色器群组的属性,依此方式,在绘图管线内仅传递指针和指针型态,如此可避免传送与许多待处理三角形属性相关的大量数据。
现请参考图10的流程图,其是说明于图形处理单元中用以计算属性的方法实施例,该方法于开始的步骤310中先在三角形内选择多个像素,其中每一个像素均有多项属性,举个例子,每一个像素可能有32项或更多的属性,而每一项属性可能包含4个或更多的组成,一般而言,所选择的像素会位于相同的像素或是三角形中。于步骤320中,将属性分组,不同的群组对应绘图管线内的不同处理阶段,举例说明,一位置群组包含决定像素位置和可见性的属性,如像素X值、像素Y值、像素Z值、像素W值以及模板值等,但不限于这些值;同样地,该纹理群组包括决定像素贴图色彩的属性;色彩群组则包括那些直接传送到像素着色器进行复杂色彩操作的属性,其中包括色彩扩散、雾状和正常表面功能等操作,但不限于所列操作。
于步骤330中,指定每一属性群组的处理优先级,例如,不同群组中的属性会因效能的理由而于不同的时间点进行计算,尤其是当所有像素均要求执行像素着色器操作,举个例子,处理优先级一般为位置群组属性优先于纹理群组属性,而纹理群组属性又优先于色彩群组属性。于步骤340中,计算方块从绘图管线中的多重处理阶段接收属性。于步骤350中,根据于步骤330中指定的处理优先级计算各属性。如上述有关图7和图8的讨论,可利用额外的判断逻辑元件进一步精算处理优先级,以增加管线的处理效率和效能。
本发明实施例可以硬件、软件、固件或其组合等方式实施,于某些实施例中,可利用储存在存储器中的软件或固件,由适当的指令执行系统来执行,如果是以硬件的方式呈现,则可利用下列已知技术或其组合,例如具有逻辑门而可对数据信号进行逻辑功能的离散逻辑电路、具有适当组合逻辑门的特殊应用集成电路(application specific integrated circuit,ASIC)、可编程栅极阵列(programmable gate array,PGA)、场式可编程栅极阵列(fieldprogrammable gate array,FPGA)等等元件。
任何的程序说明或流程步骤代表某些模块、程序段、或是部分程序代码,其中可包含一个或数个可执行的指令,以进行特定的逻辑功能或程序步骤,另有其它实施方式可执行本发明功能,例如所说明与讨论的顺序并非固定不变,本领域技术人员可稍加变化,或是可让某些步骤同时进行,甚至反向执行,只要能符合本发明的功能性即可,均属本发明的范畴。
应强调的是,以上所述的具体例及非限定实施例仅为可能的施行范例,仅用以清楚说明本揭露的原理,即便对上述具体例及非限定实施例施以变化和修饰,然皆不脱此中所述的精神和范围,所有此等修饰及变化应涵括于本发明的范围内,受如附权利要求范围保护。
权利要求
1.一种于图形处理单元中计算属性的方法,其包括步骤选择多个像素,其中每一像素具有多项属性;将对应于该多个像素的该多项属性分成多个群组,该多个群组对应于该图形处理单元中的多个阶段;指定每一群组的处理优先级;计算方块接收该多项属性;以及比较一群组与其它群组的处理优先级,以决定顺序,依据该顺序计算该多项属性。
2.根据权利要求1所述的方法,还包括将该多项属性储存于共享缓冲区中。
3.根据权利要求2所述的方法,还包括于该计算方块内移动该多项属性通过该多个阶段。
4.根据权利要求3所述的方法,其中使该多项属性移动的步骤包括利用多个指针地址,指出储存于该共享缓冲区中的该多项属性。
5.根据权利要求1所述的方法,其中分成群组的步骤包括定义位置群组,其包括决定像素位置的属性;定义色彩群组,其包括用于执行着色器操作的属性;以及定义纹理群组,其包括决定像素纹理数据的属性。
6.根据权利要求5所述的方法,其中该位置群组包括的属性有像素X位置、像素Y位置、像素Z位置、像素W位置或像素模板值。
7.根据权利要求1所述的方法,其中计算的步骤包括判断从该多个阶段所发出的多个计算请求。
8.根据权利要求7所述的方法,其中该判断步骤包括判断对应于多个先进先出缓冲区的多个利用程度,其中每一先进先出缓冲区是位于一阶段与该计算方块之间。
9.根据权利要求1所述的方法,其中指定位置群组内的属性具有第一处理优先级,指定纹理群组内的属性具有第二处理优先级,以及指定色彩群组内的属性具有第三处理优先级。
10.根据权利要求1所述的方法,其中是于该计算方块内平行处理该计算步骤。
11.一种用于图形处理单元中计算属性的系统,该图形处理单元具有多个处理阶段,该系统包含计算方块,用以处理对应于多个像素的多项属性,其中每一像素包括部分的该多项属性;多个先进先出缓冲区,每一先进先出缓冲区是位于一处理阶段与该计算方块之间;共享缓冲区,用以于属性处理期间内储存该多项属性;以及处理优先级逻辑元件,用以决定对应于该多项属性的多个优先级。
12.根据权利要求11所述的系统,其中该多项属性包括属性设定数据。
13.根据权利要求11所述的系统,其中该多项属性是分成对应于该多个处理阶段的多个群组。
14.根据权利要求13所述的系统,其中该多个群组包括位置群组,其包括决定像素位置的属性;纹理群组,其包括决定像素纹理数据的属性;以及色彩群组,其包括于像素着色器内执行色彩操作的属性。
15.根据权利要求14所述的系统,其中该处理优先级逻辑元件指定该位置群组内的属性比该纹理群组具有较高的优先级以及指定该纹理群组内的属性比该色彩群组具有较高的优先级。
16.根据权利要求11所述的系统,其中该计算方块包含判断逻辑元件,用以决定该多个处理阶段所产生的多个计算请求的处理顺序。
17.根据权利要求11所述的系统,其中该计算方块包含多个计算电路,用以执行并行计算。
18.根据权利要求11所述的系统,其中该共享缓冲区还包含多个地址指针,用以使该属性通过该多个处理阶段。
19.一种用于图形处理单元中计算属性的系统,该系统包含三角形设定逻辑元件,用以决定绘图管线中的三角形数据;属性设定逻辑元件,用以决定对应于该三角形数据的多项属性;中央缓冲逻辑元件,用以在处理期间内储存该多项属性;计算逻辑元件,用以计算每一处理阶段所送出的属性;以及判断逻辑元件,用以建立该计算逻辑元件的处理优先级。
20.根据权利要求19所述的系统,还包含分组装置,用以将该多项属性分成对应于该多个处理阶段的多个群组。
21.根据权利要求19所述的系统,还包含先进先出缓冲逻辑元件,用以储存于每一处理阶段与该计算逻辑元件间传递的属性。
22.根据权利要求21所述的系统,其中该判断逻辑元件利用该先进先出缓冲逻辑元件以建立该计算逻辑的多个优先级,以及该多个优先级决定优先执行哪一个计算请求。
全文摘要
本发明有关于在图形处理单元中提供共享属性计算电路的系统和方法,其一为用于图形处理单元中计算属性的系统,该图形处理单元具有多个处理阶段,该系统可包含计算方块,用以处理对应于多个像素的多项属性,亦包含多个先进先出缓冲区,每一先进先出缓冲区是位于处理阶段与该计算方块之间,还可包含共享缓冲区,用以于属性处理期间内储存该多项属性或指针,还可包含处理优先级逻辑元件,用以决定对应于该多项属性的多个优先级。
文档编号G06T1/00GK101051382SQ200710106499
公开日2007年10月10日 申请日期2007年6月1日 优先权日2006年8月24日
发明者廖群峰, 约翰·柏拉勒斯 申请人:威盛电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1