CN1947156A - 使用统一着色器的图形处理结构 - Google Patents
使用统一着色器的图形处理结构 Download PDFInfo
- Publication number
- CN1947156A CN1947156A CNA2004800405708A CN200480040570A CN1947156A CN 1947156 A CN1947156 A CN 1947156A CN A2004800405708 A CNA2004800405708 A CN A2004800405708A CN 200480040570 A CN200480040570 A CN 200480040570A CN 1947156 A CN1947156 A CN 1947156A
- Authority
- CN
- China
- Prior art keywords
- tinter
- pixel
- data
- vertex
- process unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/80—Shading
Abstract
公开了一种使用单个着色器的图形处理结构。所述结构包括用于响应于控制信号选择多个输入中的一个的电路;以及着色器,其与判优器耦合,用于处理所述多个输入中所选择的一个,所述着色器包括执行顶点操作和像素操作的部件,并且其中所述着色器基于所述多个输入中所选择的一个执行所述顶点操作和像素操作中的一个。所述着色器包括寄存器模块,用于存储多个被选择的输入;序列器,其保存顶点操纵和像素操纵指令;以及处理器,其能够响应于保存在所述序列器中的指令对所选择的输入进行浮点算术和逻辑操作。
Description
技术领域
本发明通常涉及一种图形处理器,并且尤其涉及一种使用单个着色器的图形处理器结构。
背景技术
在计算机图形应用中,通过对多个被称为图元的简单对象的采样、互连和渲染而形成复杂形状和结构。这种图元可以是三角形或者其它适当的多边形。这些图元又由单独像素的互连形成。然后将颜色和纹理应用于单独像素,所述单独像素包括基于它们在图元中的位置的形状和相对于所产生的形状的图元方位;从而产生被渲染到相应的显示器以便以后观看的对象。
通常图形处理器执行图元的互连以及将颜色和纹理应用于所产生的形状。传统图形处理器包括一系列着色器,其指定如何以及以什么相应的属性在屏幕或者适当的显示装置上绘制最终图像。如图1所示,传统着色器10可表示为接收多个输入数据位的处理模块12,例如所述输入数据位可以为诸如对象空间(x,y,z)中的对象形状数据(14);诸如颜色(16)的对象的材料特性;纹理信息(18);亮度信息(20)和视角信息(22),并且提供有以应用于(x′,y′,z′)的纹理和其它外观特性表示对象的输出数据(28)。
例如,如图2A-2B所示,所述着色器接收表示立方体30(图2A)的顶点坐标数据作为输入并且提供表示例如立方体30′(图2B)的透视修正图的数据作为输出。例如,可以通过将适当的转换矩阵应用到表示初始立方体30的数据而提供所述修正图。更具体地,顶点着色器提供图2B中所示的表示,所述顶点着色器接收表示在立方体30中的顶点VX、VY和VZ的数据作为输入,并且提供包括相应的立方体30′的任何外观属性的角度定位顶点VX′、VY′和VZ′。
除了上述顶点着色器外,当产生用于显示的对象时,还使用称为像素着色器的在像素级上操作的着色处理模块。通常,所述像素着色器提供与所渲染的对象的各个像素相关的颜色值。传统上,顶点着色器和像素着色器是被配置来只执行单个转换或操作的独立的元件。因此,为了执行输入的位置和纹理转换,需要使用至少两个着色操作和至少两个着色器。为了产生对象,传统图形处理器需要使用顶点着色器和像素着色器。因为需要两种类型的着色器,所以已知的图形处理器在尺寸上相对比较大,其大多数有效面积被顶点和像素着色器占据。
除了与传统图形处理器相关的有效面积损失外,还有相应的与其相关的性能损失。在传统图形处理器中,顶点着色器和像素着色器顺次地流水线式地并置,顶点着色器放置在前并且在像素着色器能够对单独像素数据进行操作之前对顶点数据进行操作。
因此,需要使用空间高效的和计算有效的着色器的改进的图形处理器。
发明内容
简言之,本发明设计了一种使用统一着色器的图形处理器,所述统一着色器能够以节省空间和计算高效的方式执行顶点操作和像素操作。在示例性实施例中,根据本发明的图形处理器包括:判优器电路,用于响应于控制信号选择多个输入中的一个用于处理;以及着色器,与判优器电路耦合,用于处理多个输入中的所选择的一个,所述着色器包括用于执行顶点操作和像素操作的部件,其中所述着色器基于多个输入中的所选择的一个执行顶点操作或像素操作中的一个。
所述着色器包括:通用寄存器模块,用于存储至少多个所选择的输入;序列器,用于存储执行顶点和像素操纵操作所用的逻辑和算术指令;以及处理器,能够根据保存在所述序列器中的指令对所选择的输入进行浮点算术和逻辑操作。本发明的着色器被称为“统一”着色器是因为它被配置来执行顶点和像素操作。通过使用本发明的统一着色器,相关的图形处理器比传统图形处理器更加空间有效,因为统一着色器比传统多着色器处理器结构占据更少的有效面积。
此外,根据本发明,所述统一着色器更加计算有效,因为它允许着色器基于工作量被灵活地分配给像素或顶点。
附图说明
结合以下附图,通过查看本发明的以下详细描述,可以更好地理解本发明及其相关优点和特征,在附图中,相同的数字代表相同的元件,其中:
图1为传统着色器的示意性方框图;
图2A-2B为由图1所示的着色器执行的操作的图形表示;
图3为传统图形处理器结构的示意性方框图;
图4A为根据本发明的图形处理器结构的示意性方框图;
图4B为根据本发明的替换实施例的图形处理器的可选输入组件的示意性方框图;以及
图5为在图4A中所示的图形处理器中使用的统一着色器的分解示意性方框图。
具体实施方式
图3描绘了结合有传统流水线结构的图形处理器。如图所示,图形处理器40包括顶点取得模块42,其通过线41接收来自片外存储器55的与待渲染的图元相关的顶点信息。然后通过线43将所取得的顶点数据传输到顶点高速缓存44以存储。一旦请求,就通过线45将保存在顶点高速缓存44中的顶点数据传输至顶点着色器46。如上所述,被顶点着色器46请求并传输至顶点着色器46的信息的实例包括对象形状、材料特性(例如颜色)、纹理信息以及视角。通常,顶点着色器46为可编程机制,该可编程机制将转换位置矩阵应用到输入的位置信息(从顶点高速缓存44获得),从而提供表示待渲染的对象的透视修正图像及其纹理或颜色坐标的数据。
在执行转换操作后,通过线47向顶点储存器48提供表示转换后的顶点的数据。然后顶点储存器48通过线49将其中包括的修改后的顶点信息传输至图元组合模块50。图元组合模块50将输入的顶点信息组合或者转换为多个待随后处理的图元。将输入的顶点信息组合为图元的适当的方法在本领域中公知并且在此将不再详细讨论。然后将所组合的图元传输至光栅化引擎52,光栅化引擎52通过称为步进(walking)的处理将先前组合的图元转换为像素数据。然后通过线53将产生的像素数据传输至像素着色器54。
像素着色器54产生将被应用于给定像素的颜色和额外外观属性,并且将外观属性应用到各个像素。此外,像素着色器54能够从由来自光栅化引擎52的像素数据索引的纹理地图57中取得纹理数据,而这是通过在线55上将这样的信息传输到纹理地图。然后通过线57′将所请求的纹理数据从纹理地图57传输回来,并且在通过线58被路由至像素着色器前存储在纹理高速缓存56中。一旦接收到纹理数据,像素着色器54对接收到的纹理数据进行指定的逻辑或算术操作以生成像素颜色或其它感兴趣的外观属性。然后将所生成的像素外观属性与通过线53由光栅化引擎提供的基色相结合,从而向感兴趣的位置处对应的像素提供像素颜色。然后将线59上的像素外观属性传输至后光栅处理模块(未显示)。
如上所述,传统图形处理器40需要使用两个独立的着色器:顶点着色器46和像素着色器54。与这样的结构相关的缺陷是图形处理器的总覆盖区相对大,因为两个着色器占据大量的有效面积。与传统图形处理器结构相关的另一缺陷是其计算效率较差。
现在参考图4A,在一个示例性实施例中,本发明的图形处理器60包括多路器66,所述多路器66具有在第一个输入处提供的顶点(例如索引)数据,以及在第二个输入处提供的来自光栅化引擎74的内插像素参数(例如位置)数据和属性数据。通过线63将由判优器64产生的控制信号传输至多路器66。判优器64确定将多路器66的两个输入中的哪个传输至统一着色器62用于进一步处理。判优器64使用的判优方案如下:如果在统一着色器62中有足够的资源可用,则通过线65将多路器66的第一个输入处的顶点数据传输至统一着色器62以对该顶点数据进行操作;否则,将第二个输入处的内插像素参数数据传递至统一着色器62用于进一步处理。
简要参考图5,现在描述统一着色器62。如图所示,统一着色器62包括通用寄存器模块92,多个源寄存器:包括源寄存器A 93、源寄存器B 95和源寄存器C 97,处理器(例如CPU)96和序列器99。通用寄存器模块92包括六十四个寄存器,或者可用的输入,用于储存通过线65从多路器66传输的信息或者任何其它要在统一着色器中保存的信息。通过线109将通用寄存器模块92中的数据传输至多个源寄存器。
处理器96可以包括专用硬件块或者可以配置成通用计算设备(即,个人计算机)的部分。在一个示例性实施例中,处理器96用于执行32位浮点算术操作和对相应操作数的一系列逻辑操作。如图所示,所述处理器被逻辑上分成两个部分。例如,部分96被配置来执行统一着色器的32位浮点算术操作。第二个部分96A被配置来执行统一着色器的定标器(scaler)操作(例如对数、指数、反平方根)。
序列器99包括常量模块91和指令储存器98。常量模块91例如包括用于连接顶点操纵操作的几个转换矩阵。指令储存器98包括由处理器96执行的必要指令,用于对通用寄存器模块92中保存的由源寄存器93-95提供的数据执行分别的算术和逻辑操作。指令储存器98还包括存储器取得指令,当执行所述存储器取得指令时,所述存储器取得指令使统一着色器62从存储器82(图4A)取得纹理以及其它类型的数据。在操作中,序列器99确定将要执行的下一指令(来自指令储存器98)是算术或逻辑指令还是存储器(例如纹理取得)指令。如果下一指令是存储器指令或者请求,则序列器99发送请求至取得模块(未显示),该取得模块从存储器82(图4A)检索所需信息。下面将详细描述通过顶点纹理高速缓存68(图4A)将所检索的信息传输至序列器99。
如果待执行的下一指令是算术或逻辑指令,则序列器99将适当的操作数从通用寄存器模块92转移至适当的源寄存器(93,95,97)用于执行,并且通过线101向处理器96发送适当的信号来指示将对源寄存器中的几个操作数进行什么操作或者什么系列操作。此时,处理器96对源寄存器中的操作数执行指令并且通过线85提供结果。线85上的信息可以被传输回通用寄存器模块92用于存储,或者被传输至图形处理器60后面的组件。
如上所述,指令储存器98保存顶点操纵指令和像素操纵指令。因此,本发明的统一着色器99能够执行顶点和像素操作以及执行存储器取得操作。同样地,本发明的统一着色器62能够基于从多路器传递来的信息对图形控制器中的数据执行顶点着色和像素着色操作。通过用来执行存储器取得,本发明的统一着色器能够执行传统顶点着色器不能执行的额外处理;同时执行像素操作。
通过能够非常快速地在保存于指令储存器98中的这种程序或指令之间自由地切换,统一着色器62能够以各种完成程度同时执行顶点操纵操作和像素操纵操作。在应用中,将待处理的顶点数据从多路器66传输至通用寄存器模块92。然后指令储存器98通过线101将相应的控制信号传递到处理器96以执行这种顶点操作。然而,如果通用寄存器模块92没有足够可用的空间以存储进入的顶点数据的话,则由于不满足判优器64的判优方案而不传输这种信息。通过这种方式,基于保存在指令储存器98中的指令,继续处理器96将要执行或者正在执行的任何像素计算操作,直到可获得足够的通用寄存器模块92中的寄存器。因此,通过共享统一着色器62中的资源,则由于不存在与处理器96相关的停机时间而增强了对图像数据的处理。
回头参考图4A,图形处理器60还包括高速缓存模块70,高速缓存模块70包括参数高速缓存70A和位置高速缓存70B,其通过线85接收统一着色器62的基于像素的输出并且将各自的像素参数和位置信息储存在相应的高速缓存中。然后通过线71将高速缓存模块70中的像素信息传输至图元组合模块72。图元组合模块72负责将从高速缓存模块70传输到其中的信息组合为一系列三角形或者其它适当的图元用于进一步处理。然后通过线73将所组合的图元传输至光栅化引擎模块74,在该光栅化引擎模块74处通过步进处理或任何其它适当的像素生成处理将所传输的图元转换为单独像素数据。从光栅化引擎模块74产生的像素数据为通过线75传输至多路器66的第二个输入的内插像素参数数据。
在通过多路器66将顶点数据传输至统一着色器62的情况下,将处理器96产生的结果顶点数据传输至渲染后端模块76,所述渲染后端模块76将产生的顶点数据转换成几种适于以后在显示装置84上显示的格式中的至少一种。例如,如果将被染色的玻璃外观效应应用到图像,则由渲染后端76将与这种外观效应对应的信息与适当的位置数据相关联。经由存储控制器78将来自渲染后端76的信息传输到存储器82和显示控制器线80。然后通过线83将这种适当地格式化后的信息传输以在显示装置84上表现。
现在参照图4B,其中显示了顶点模块61,其用于在根据本发明的替换实施例的多路器66的第一个输入处提供顶点信息。顶点模块61包括顶点取得模块61A,其负责当请求时从存储器82检索顶点信息,并且将所述顶点信息传输至顶点高速缓存61B。存储在顶点高速缓存61B中的信息包括耦合至多路器66的第一个输入的顶点信息。
如上所述,本发明的图形处理器60包括统一着色器62,其能够基于储存在指令储存器98中的指令执行顶点操纵操作和像素操纵操作。通过这种方法,由于不再需要单独的顶点着色器和像素着色器,所以本发明的图形处理器60比传统图形处理器占据更小的有效面积。此外,统一着色器62能够在执行顶点操纵操作和像素操纵操作之间转换,由于一种类型的数据操作不依赖于另一种类型的数据操作,所以提高了图形处理效率。因此,克服了由于传统图形处理器中的依赖性操作而产生的性能损失。
本发明的上述详细描述和其中描述的实例用于说明和描述的目的。因此希望本发明包括在这里公开和要求的基本原理范围之内的所有修改、变形和等价物。
Claims (20)
1、一种图形处理器(60),包括:
判优器电路(64),用于响应于控制信号选择多个输入中的一个;以及
着色器(62),与所述判优器电路(64)耦合,用于处理所述多个输入中所选择的一个,所述着色器(62)包括执行顶点操作和像素操作的部件,并且基于所述多个输入中所选择的一个执行所述顶点操作或者像素操作中的一个,其中所述着色器(62)提供外观属性。
2、根据权利要求1所述的图形处理器,还包括顶点储存模块(70),用于保存顶点信息。
3、根据权利要求2所述的图形处理器,其中所述顶点储存模块(70)还包括参数高速缓存(70A),用于为相应的顶点保存外观属性数据;以及位置高速缓存(70B),用于为相应的顶点保存位置数据。
4、根据以上权利要求中任一项所述的图形处理器,其中所述外观属性是颜色、光照、纹理、标准和位置数据中的至少一种。
5、根据权利要求4所述的图形处理器,其中所述外观属性为颜色,并且当所述多个输入中所选择的一个为像素数据时将所述颜色与相应的像素相关联。
6、根据权利要求4或权利要求5所述的图形处理器,其中所述外观属性为位置,并且当所述多个输入中所选择的一个为顶点数据时将所述位置属性与相应的顶点相关联。
7、根据以上权利要求中任一项所述的图形处理器,其中所述外观值为深度。
8、根据以上权利要求中任一项所述的图形处理器,包括选择电路,所述选择电路包括多路器(66),其与所述判优器(64)耦合,其中所述判优器(64)提供控制信号以控制所述多路器选择所需输入(66)。
9、根据以上权利要求中任一项所述的图形处理器,其中所述着色器(62)提供顶点位置数据并且还包括图元组合模块(72),其与所述着色器(62)耦合,用于响应于所述顶点位置数据而产生图元。
10、根据权利要求9所述的图形处理器,还包括光栅引擎(74),其与所述图元组合模块(72)耦合,用于响应于组合后的顶点数据产生像素参数数据。
11、根据以上权利要求中任一项所述的图形处理器,其中所述着色器(62)响应于所述多个输入中所选择的一个产生像素颜色信息。
12、根据以上权利要求中任一项所述的图形处理器,其中所述着色器(62)包括寄存器模块,用于保存所述多个输入中所选择的一个;计算元件,用于对保存在所述寄存器模块中的所述数据执行算术和逻辑操作;以及序列器,用于保存由所述计算元件执行的指令。
13、根据以上权利要求中任一项所述的图形处理器,其中所述着色器(62)还包括用于访问存储器(82)的电路。
14、一种统一着色器,包括:
通用寄存器模块(92),用于保存数据;
处理器单元(96);以及
序列器(99),其与所述通用寄存器模块(92)和所述处理器单元(96)耦合,所述序列器(99)保存指令,所述指令用于使所述处理器单元(96)对保存在所述通用寄存器模块(92)中的所选择的数据执行顶点计算和像素计算操作。
15、根据权利要求14所述的着色器,其中所述序列器(99)还包括用于从存储器取得数据的电路。
16、根据权利要求14或权利要求15所述的着色器,还包括选择电路,用于响应于控制信号向所述通用寄存器模块(92)提供信息。
17、根据权利要求16所述的着色器,其中所述选择电路为多路器(66)并且由判优器(64)提供所述控制信号。
18、根据权利要求14至17中任一项所述的着色器,其中所述处理器单元(96)响应于所述多个输入中所选择的一个执行产生像素颜色的指令。
19、根据权利要求14至18中任一项所述的着色器,其中当所述像素计算仍在进行时,所述处理器单元(96)执行顶点计算。
20、根据权利要求14至19中任一项所述的着色器,其中所述处理器单元(96)响应于所述多个输入中所选择的一个产生顶点位置和外观数据。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/718,318 | 2003-11-20 | ||
US10/718,318 US6897871B1 (en) | 2003-11-20 | 2003-11-20 | Graphics processing architecture employing a unified shader |
PCT/IB2004/003821 WO2005050570A1 (en) | 2003-11-20 | 2004-11-19 | A graphics processing architecture employing a unified shader |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110085042.6A Division CN102176241B (zh) | 2003-11-20 | 2004-11-19 | 使用统一着色器的图形处理结构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1947156A true CN1947156A (zh) | 2007-04-11 |
CN1947156B CN1947156B (zh) | 2013-07-10 |
Family
ID=34591071
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800405708A Active CN1947156B (zh) | 2003-11-20 | 2004-11-19 | 使用统一着色器的图形处理结构 |
CN201110085042.6A Active CN102176241B (zh) | 2003-11-20 | 2004-11-19 | 使用统一着色器的图形处理结构 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110085042.6A Active CN102176241B (zh) | 2003-11-20 | 2004-11-19 | 使用统一着色器的图形处理结构 |
Country Status (8)
Country | Link |
---|---|
US (13) | US6897871B1 (zh) |
EP (8) | EP2876606B1 (zh) |
CN (2) | CN1947156B (zh) |
AU (2) | AU2004292018B2 (zh) |
CA (1) | CA2585860C (zh) |
HK (1) | HK1099111A1 (zh) |
WO (1) | WO2005050570A1 (zh) |
ZA (2) | ZA200605069B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425175B (zh) * | 2007-12-06 | 2012-03-21 | 威盛电子股份有限公司 | 着色器处理系统与方法 |
CN101441761B (zh) * | 2007-08-15 | 2012-09-19 | 辉达公司 | 图形处理器单元管线中的条件执行位 |
CN103974062A (zh) * | 2013-06-24 | 2014-08-06 | 福州瑞芯微电子有限公司 | 图像显示装置、图像显示系统和图像显示方法 |
CN106204408A (zh) * | 2014-12-23 | 2016-12-07 | 联发科技股份有限公司 | 绘图处理电路及其前置深度信息处理方法 |
Families Citing this family (112)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6922557B2 (en) * | 2000-10-18 | 2005-07-26 | Psion Teklogix Inc. | Wireless communication system |
US6895520B1 (en) | 2001-03-02 | 2005-05-17 | Advanced Micro Devices, Inc. | Performance and power optimization via block oriented performance measurement and control |
US7336275B2 (en) * | 2002-09-06 | 2008-02-26 | Ati Technologies Inc. | Pseudo random number generator and method |
US20040046765A1 (en) * | 2002-09-06 | 2004-03-11 | Laurent Lefebvre | Gradient noise engine with shared memory |
US7061495B1 (en) * | 2002-11-18 | 2006-06-13 | Ati Technologies, Inc. | Method and apparatus for rasterizer interpolation |
US7796133B1 (en) | 2002-11-18 | 2010-09-14 | Ati Technologies Ulc | Unified shader |
US7633506B1 (en) * | 2002-11-27 | 2009-12-15 | Ati Technologies Ulc | Parallel pipeline graphics system |
US8933945B2 (en) * | 2002-11-27 | 2015-01-13 | Ati Technologies Ulc | Dividing work among multiple graphics pipelines using a super-tiling technique |
US7787142B2 (en) * | 2003-05-09 | 2010-08-31 | Ppg Industries Ohio, Inc. | Method and system for designing the color of a coating composition on an article |
US7239322B2 (en) | 2003-09-29 | 2007-07-03 | Ati Technologies Inc | Multi-thread graphic processing system |
US9659339B2 (en) | 2003-10-29 | 2017-05-23 | Nvidia Corporation | Programmable graphics processor for multithreaded execution of programs |
US8860737B2 (en) | 2003-10-29 | 2014-10-14 | Nvidia Corporation | Programmable graphics processor for multithreaded execution of programs |
US6897871B1 (en) | 2003-11-20 | 2005-05-24 | Ati Technologies Inc. | Graphics processing architecture employing a unified shader |
US7310722B2 (en) | 2003-12-18 | 2007-12-18 | Nvidia Corporation | Across-thread out of order instruction dispatch in a multithreaded graphics processor |
US8643659B1 (en) | 2003-12-31 | 2014-02-04 | 3Dlabs Inc., Ltd. | Shader with global and instruction caches |
US7978205B1 (en) | 2004-05-03 | 2011-07-12 | Microsoft Corporation | Systems and methods for providing an enhanced graphics pipeline |
US7570267B2 (en) | 2004-05-03 | 2009-08-04 | Microsoft Corporation | Systems and methods for providing an enhanced graphics pipeline |
US8743142B1 (en) | 2004-05-14 | 2014-06-03 | Nvidia Corporation | Unified data fetch graphics processing system and method |
US8427490B1 (en) | 2004-05-14 | 2013-04-23 | Nvidia Corporation | Validating a graphics pipeline using pre-determined schedules |
US8687010B1 (en) | 2004-05-14 | 2014-04-01 | Nvidia Corporation | Arbitrary size texture palettes for use in graphics systems |
US8736620B2 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Kill bit graphics processing system and method |
US8736628B1 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Single thread graphics processing system and method |
US8860722B2 (en) | 2004-05-14 | 2014-10-14 | Nvidia Corporation | Early Z scoreboard tracking system and method |
US8044951B1 (en) * | 2004-07-02 | 2011-10-25 | Nvidia Corporation | Integer-based functionality in a graphics shading language |
US7339590B1 (en) * | 2004-09-02 | 2008-03-04 | Nvidia Corporation | Vertex processing unit supporting vertex texture mapping |
US8624906B2 (en) | 2004-09-29 | 2014-01-07 | Nvidia Corporation | Method and system for non stalling pipeline instruction fetching from memory |
US20060082593A1 (en) * | 2004-10-19 | 2006-04-20 | Microsoft Corporation | Method for hardware accelerated anti-aliasing in 3D |
US7385609B1 (en) * | 2004-11-02 | 2008-06-10 | Nvidia Corporation | Apparatus, system, and method for increased processing flexibility of a graphic pipeline |
US7439979B1 (en) * | 2004-11-10 | 2008-10-21 | Nvidia Corporation | Shader with cache memory |
US7542042B1 (en) * | 2004-11-10 | 2009-06-02 | Nvidia Corporation | Subpicture overlay using fragment shader |
US8738891B1 (en) | 2004-11-15 | 2014-05-27 | Nvidia Corporation | Methods and systems for command acceleration in a video processor via translation of scalar instructions into vector instructions |
JP4692956B2 (ja) * | 2004-11-22 | 2011-06-01 | 株式会社ソニー・コンピュータエンタテインメント | 描画処理装置および描画処理方法 |
US7623132B1 (en) * | 2004-12-20 | 2009-11-24 | Nvidia Corporation | Programmable shader having register forwarding for reduced register-file bandwidth consumption |
US20070070082A1 (en) * | 2005-09-27 | 2007-03-29 | Ati Technologies, Inc. | Sample-level screen-door transparency using programmable transparency sample masks |
US9092170B1 (en) | 2005-10-18 | 2015-07-28 | Nvidia Corporation | Method and system for implementing fragment operation processing across a graphics bus interconnect |
WO2007049610A1 (ja) * | 2005-10-25 | 2007-05-03 | Mitsubishi Electric Corporation | 画像処理装置 |
US7594095B1 (en) | 2005-11-29 | 2009-09-22 | Nvidia Corporation | Multithreaded SIMD parallel processor with launching of groups of threads |
US7447873B1 (en) * | 2005-11-29 | 2008-11-04 | Nvidia Corporation | Multithreaded SIMD parallel processor with loading of groups of threads |
US7404056B1 (en) | 2005-12-07 | 2008-07-22 | Nvidia Corporation | Virtual copying scheme for creating multiple versions of state information |
US7404059B1 (en) | 2005-12-07 | 2008-07-22 | Nvidia Corporation | Parallel copying scheme for creating multiple versions of state information |
US7593971B1 (en) | 2005-12-07 | 2009-09-22 | Nvidia Corporation | Configurable state table for managing multiple versions of state information |
US7788468B1 (en) | 2005-12-15 | 2010-08-31 | Nvidia Corporation | Synchronization of threads in a cooperative thread array |
US7861060B1 (en) | 2005-12-15 | 2010-12-28 | Nvidia Corporation | Parallel data processing systems and methods using cooperative thread arrays and thread identifier values to determine processing behavior |
US7584342B1 (en) | 2005-12-15 | 2009-09-01 | Nvidia Corporation | Parallel data processing systems and methods using cooperative thread arrays and SIMD instruction issue |
US8077174B2 (en) | 2005-12-16 | 2011-12-13 | Nvidia Corporation | Hierarchical processor array |
US7634637B1 (en) | 2005-12-16 | 2009-12-15 | Nvidia Corporation | Execution of parallel groups of threads with per-instruction serialization |
US8074224B1 (en) * | 2005-12-19 | 2011-12-06 | Nvidia Corporation | Managing state information for a multi-threaded processor |
US7865894B1 (en) | 2005-12-19 | 2011-01-04 | Nvidia Corporation | Distributing processing tasks within a processor |
US8081184B1 (en) * | 2006-05-05 | 2011-12-20 | Nvidia Corporation | Pixel shader program thread assembly |
US8154554B1 (en) * | 2006-07-28 | 2012-04-10 | Nvidia Corporation | Unified assembly instruction set for graphics processing |
US7928990B2 (en) * | 2006-09-27 | 2011-04-19 | Qualcomm Incorporated | Graphics processing unit with unified vertex cache and shader register file |
US8155316B1 (en) | 2006-10-19 | 2012-04-10 | NVIDIA Corporaton | Contract based memory management for isochronous streams |
US8212840B2 (en) * | 2006-10-23 | 2012-07-03 | Qualcomm Incorporated | 3-D clipping in a graphics processing unit |
US8087029B1 (en) | 2006-10-23 | 2011-12-27 | Nvidia Corporation | Thread-type-based load balancing in a multithreaded processor |
US20080094408A1 (en) * | 2006-10-24 | 2008-04-24 | Xiaoqin Yin | System and Method for Geometry Graphics Processing |
US8108625B1 (en) | 2006-10-30 | 2012-01-31 | Nvidia Corporation | Shared memory with parallel access and access conflict resolution mechanism |
US8176265B2 (en) | 2006-10-30 | 2012-05-08 | Nvidia Corporation | Shared single-access memory with management of multiple parallel requests |
US7680988B1 (en) | 2006-10-30 | 2010-03-16 | Nvidia Corporation | Single interconnect providing read and write access to a memory shared by concurrent threads |
US7937567B1 (en) * | 2006-11-01 | 2011-05-03 | Nvidia Corporation | Methods for scalably exploiting parallelism in a parallel processing system |
US8537168B1 (en) | 2006-11-02 | 2013-09-17 | Nvidia Corporation | Method and system for deferred coverage mask generation in a raster stage |
US8108659B1 (en) | 2006-11-03 | 2012-01-31 | Nvidia Corporation | Controlling access to memory resources shared among parallel synchronizable threads |
US8243069B1 (en) * | 2006-11-03 | 2012-08-14 | Nvidia Corporation | Late Z testing for multiple render targets |
US7649538B1 (en) * | 2006-11-03 | 2010-01-19 | Nvidia Corporation | Reconfigurable high performance texture pipeline with advanced filtering |
US7663621B1 (en) * | 2006-11-03 | 2010-02-16 | Nvidia Corporation | Cylindrical wrapping using shader hardware |
US7692659B1 (en) * | 2006-11-06 | 2010-04-06 | Nvidia Corporation | Color-compression using automatic reduction of multi-sampled pixels |
US8233004B1 (en) | 2006-11-06 | 2012-07-31 | Nvidia Corporation | Color-compression using automatic reduction of multi-sampled pixels |
US8438370B1 (en) | 2006-12-08 | 2013-05-07 | Nvidia Corporation | Processing of loops with internal data dependencies using a parallel processor |
US7999821B1 (en) | 2006-12-19 | 2011-08-16 | Nvidia Corporation | Reconfigurable dual texture pipeline with shared texture cache |
US8321849B2 (en) * | 2007-01-26 | 2012-11-27 | Nvidia Corporation | Virtual architecture and instruction set for parallel thread computing |
US8421794B2 (en) * | 2007-03-23 | 2013-04-16 | Qualcomm Incorporated | Processor with adaptive multi-shader |
US8907964B2 (en) * | 2007-04-10 | 2014-12-09 | Vivante Corporation | System and method for dynamically reconfiguring a vertex cache |
US20080252652A1 (en) * | 2007-04-13 | 2008-10-16 | Guofang Jiao | Programmable graphics processing element |
US8683126B2 (en) | 2007-07-30 | 2014-03-25 | Nvidia Corporation | Optimal use of buffer space by a storage controller which writes retrieved data directly to a memory |
US7624107B1 (en) | 2007-08-09 | 2009-11-24 | Nvidia Corporation | Radix sort algorithm for graphics processing units |
US7689541B1 (en) | 2007-08-09 | 2010-03-30 | Nvidia Corporation | Reordering data using a series of offsets |
US8094157B1 (en) * | 2007-08-09 | 2012-01-10 | Nvidia Corporation | Performing an occurence count of radices |
US8659601B1 (en) | 2007-08-15 | 2014-02-25 | Nvidia Corporation | Program sequencer for generating indeterminant length shader programs for a graphics processor |
US8411096B1 (en) * | 2007-08-15 | 2013-04-02 | Nvidia Corporation | Shader program instruction fetch |
US8599208B2 (en) * | 2007-08-15 | 2013-12-03 | Nvidia Corporation | Shared readable and writeable global values in a graphics processor unit pipeline |
US8736624B1 (en) | 2007-08-15 | 2014-05-27 | Nvidia Corporation | Conditional execution flag in graphics applications |
US8314803B2 (en) | 2007-08-15 | 2012-11-20 | Nvidia Corporation | Buffering deserialized pixel data in a graphics processor unit pipeline |
US8521800B1 (en) | 2007-08-15 | 2013-08-27 | Nvidia Corporation | Interconnected arithmetic logic units |
US9183607B1 (en) | 2007-08-15 | 2015-11-10 | Nvidia Corporation | Scoreboard cache coherence in a graphics pipeline |
US8775777B2 (en) * | 2007-08-15 | 2014-07-08 | Nvidia Corporation | Techniques for sourcing immediate values from a VLIW |
US8698819B1 (en) * | 2007-08-15 | 2014-04-15 | Nvidia Corporation | Software assisted shader merging |
US9024957B1 (en) | 2007-08-15 | 2015-05-05 | Nvidia Corporation | Address independent shader program loading |
US9064333B2 (en) | 2007-12-17 | 2015-06-23 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
US8780123B2 (en) | 2007-12-17 | 2014-07-15 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
US8923385B2 (en) | 2008-05-01 | 2014-12-30 | Nvidia Corporation | Rewind-enabled hardware encoder |
US8681861B2 (en) | 2008-05-01 | 2014-03-25 | Nvidia Corporation | Multistandard hardware video encoder |
US8502832B2 (en) * | 2008-05-30 | 2013-08-06 | Advanced Micro Devices, Inc. | Floating point texture filtering using unsigned linear interpolators and block normalizations |
US8195882B2 (en) * | 2008-05-30 | 2012-06-05 | Advanced Micro Devices, Inc. | Shader complex with distributed level one cache system and centralized level two cache |
US8489851B2 (en) | 2008-12-11 | 2013-07-16 | Nvidia Corporation | Processing of read requests in a memory controller using pre-fetch mechanism |
US8525924B2 (en) * | 2008-12-29 | 2013-09-03 | Red.Com, Inc. | Modular motion camera |
GB2486485B (en) | 2010-12-16 | 2012-12-19 | Imagination Tech Ltd | Method and apparatus for scheduling the issue of instructions in a microprocessor using multiple phases of execution |
US9727385B2 (en) | 2011-07-18 | 2017-08-08 | Apple Inc. | Graphical processing unit (GPU) implementing a plurality of virtual GPUs |
US8525846B1 (en) * | 2011-11-11 | 2013-09-03 | Google Inc. | Shader and material layers for rendering three-dimensional (3D) object data models |
US9411595B2 (en) | 2012-05-31 | 2016-08-09 | Nvidia Corporation | Multi-threaded transactional memory coherence |
US9424685B2 (en) | 2012-07-31 | 2016-08-23 | Imagination Technologies Limited | Unified rasterization and ray tracing rendering environments |
US9824009B2 (en) | 2012-12-21 | 2017-11-21 | Nvidia Corporation | Information coherency maintenance systems and methods |
US10102142B2 (en) | 2012-12-26 | 2018-10-16 | Nvidia Corporation | Virtual address based memory reordering |
US9317251B2 (en) | 2012-12-31 | 2016-04-19 | Nvidia Corporation | Efficient correction of normalizer shift amount errors in fused multiply add operations |
US10102603B2 (en) | 2013-06-10 | 2018-10-16 | Sony Interactive Entertainment Inc. | Scheme for compressing vertex shader output parameters |
US10176621B2 (en) | 2013-06-10 | 2019-01-08 | Sony Interactive Entertainment Inc. | Using compute shaders as front end for vertex shaders |
US10096079B2 (en) | 2013-06-10 | 2018-10-09 | Sony Interactive Entertainment Inc. | Fragment shaders perform vertex shader computations |
US10134102B2 (en) | 2013-06-10 | 2018-11-20 | Sony Interactive Entertainment Inc. | Graphics processing hardware for using compute shaders as front end for vertex shaders |
US9569385B2 (en) | 2013-09-09 | 2017-02-14 | Nvidia Corporation | Memory transaction ordering |
US9613392B2 (en) * | 2014-09-03 | 2017-04-04 | Mediatek Inc. | Method for performing graphics processing of a graphics system in an electronic device with aid of configurable hardware, and associated apparatus |
KR102399686B1 (ko) | 2015-07-28 | 2022-05-19 | 삼성전자주식회사 | 3d 렌더링 방법 및 장치 |
CN106776023B (zh) * | 2016-12-12 | 2021-08-03 | 中国航空工业集团公司西安航空计算技术研究所 | 一种自适应gpu统一染色阵列任务负载均衡方法 |
GB2567507B (en) * | 2018-04-05 | 2019-10-02 | Imagination Tech Ltd | Texture filtering with dynamic scheduling |
US11790479B2 (en) * | 2021-01-29 | 2023-10-17 | Arm Limited | Primitive assembly and vertex shading of vertex attributes in graphics processing systems |
Family Cites Families (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4985848A (en) | 1987-09-14 | 1991-01-15 | Visual Information Technologies, Inc. | High speed image processing system using separate data processor and address generator |
JP2770598B2 (ja) * | 1990-06-13 | 1998-07-02 | 株式会社日立製作所 | 図形表示方法およびその装置 |
JP3359393B2 (ja) | 1993-10-07 | 2002-12-24 | 富士通株式会社 | 図形データ並列処理表示装置 |
JPH07282272A (ja) | 1994-04-13 | 1995-10-27 | Hitachi Ltd | 描画処理システム |
US5793371A (en) * | 1995-08-04 | 1998-08-11 | Sun Microsystems, Inc. | Method and apparatus for geometric compression of three-dimensional graphics data |
US5808690A (en) | 1996-01-02 | 1998-09-15 | Integrated Device Technology, Inc. | Image generation system, methods and computer program products using distributed processing |
GB2311882B (en) | 1996-04-04 | 2000-08-09 | Videologic Ltd | A data processing management system |
CN1147785C (zh) | 1996-08-27 | 2004-04-28 | 松下电器产业株式会社 | 执行多个指令流的多程序流程同时处理器 |
US5815023A (en) * | 1997-03-20 | 1998-09-29 | Sun Microsystems, Inc. | Unbalanced multiplexer and arbiter combination |
US5818469A (en) | 1997-04-10 | 1998-10-06 | International Business Machines Corporation | Graphics interface processing methodology in symmetric multiprocessing or distributed network environments |
US6278645B1 (en) * | 1997-04-11 | 2001-08-21 | 3Dlabs Inc., Ltd. | High speed video frame buffer |
US6118452A (en) * | 1997-08-05 | 2000-09-12 | Hewlett-Packard Company | Fragment visibility pretest system and methodology for improved performance of a graphics system |
US6650327B1 (en) * | 1998-06-16 | 2003-11-18 | Silicon Graphics, Inc. | Display system having floating point rasterization and floating point framebuffering |
AU5688199A (en) | 1998-08-20 | 2000-03-14 | Raycer, Inc. | System, apparatus and method for spatially sorting image data in a three-dimensional graphics pipeline |
US6417858B1 (en) * | 1998-12-23 | 2002-07-09 | Microsoft Corporation | Processor for geometry transformations and lighting calculations |
JP5285828B2 (ja) | 1999-04-09 | 2013-09-11 | ラムバス・インコーポレーテッド | 並列データ処理装置 |
US6459429B1 (en) * | 1999-06-14 | 2002-10-01 | Sun Microsystems, Inc. | Segmenting compressed graphics data for parallel decompression and rendering |
CN1201268C (zh) * | 1999-06-30 | 2005-05-11 | 国际商业机器公司 | 实现运动模糊化的图像处理 |
US6384824B1 (en) | 1999-07-07 | 2002-05-07 | Microsoft Corporation | Method, system and computer program product for multi-pass bump-mapping into an environment map |
US6784882B1 (en) * | 1999-09-10 | 2004-08-31 | Sony Computer Entertainment Inc. | Methods and apparatus for rendering an image including portions seen through one or more objects of the image |
JP2001118082A (ja) * | 1999-10-15 | 2001-04-27 | Toshiba Corp | 描画演算処理装置 |
US6353439B1 (en) * | 1999-12-06 | 2002-03-05 | Nvidia Corporation | System, method and computer program product for a blending operation in a transform module of a computer graphics pipeline |
US6573900B1 (en) | 1999-12-06 | 2003-06-03 | Nvidia Corporation | Method, apparatus and article of manufacture for a sequencer in a transform/lighting module capable of processing multiple independent execution threads |
US6665765B1 (en) * | 2000-02-29 | 2003-12-16 | Hewlett-Packard Development Company, L.P. | Hot docking drive wedge and port replicator |
US6819325B2 (en) * | 2000-03-07 | 2004-11-16 | Microsoft Corporation | API communications for vertex and pixel shaders |
US6731289B1 (en) * | 2000-05-12 | 2004-05-04 | Microsoft Corporation | Extended range pixel display system and method |
US6724394B1 (en) | 2000-05-31 | 2004-04-20 | Nvidia Corporation | Programmable pixel shading architecture |
JP2002133438A (ja) * | 2000-10-19 | 2002-05-10 | Mitsubishi Electric Corp | 3次元グラフィックス描画装置、3次元グラフィックス描画方法および3次元ポリゴンデータを記録したコンピュータで読取可能な記録媒体 |
US6573893B1 (en) * | 2000-11-01 | 2003-06-03 | Hewlett-Packard Development Company, L.P. | Voxel transfer circuit for accelerated volume rendering of a graphics image |
US6697074B2 (en) * | 2000-11-28 | 2004-02-24 | Nintendo Co., Ltd. | Graphics system interface |
KR100803114B1 (ko) * | 2000-11-30 | 2008-02-14 | 엘지전자 주식회사 | 메모리 중재 방법 및 시스템 |
US6943800B2 (en) * | 2001-08-13 | 2005-09-13 | Ati Technologies, Inc. | Method and apparatus for updating state data |
US20030076320A1 (en) | 2001-10-18 | 2003-04-24 | David Collodi | Programmable per-pixel shader with lighting support |
US7376811B2 (en) | 2001-11-06 | 2008-05-20 | Netxen, Inc. | Method and apparatus for performing computations and operations on data using data steering |
JP2003181136A (ja) * | 2001-12-14 | 2003-07-02 | Sega Corp | 音声制御方法 |
US7187383B2 (en) * | 2002-03-01 | 2007-03-06 | 3D Labs Inc., Ltd | Yield enhancement of complex chips |
US7015909B1 (en) * | 2002-03-19 | 2006-03-21 | Aechelon Technology, Inc. | Efficient use of user-defined shaders to implement graphics operations |
US6980209B1 (en) | 2002-06-14 | 2005-12-27 | Nvidia Corporation | Method and system for scalable, dataflow-based, programmable processing of graphics data |
US6809732B2 (en) * | 2002-07-18 | 2004-10-26 | Nvidia Corporation | Method and apparatus for generation of programmable shader configuration information from state-based control information and program instructions |
US6864893B2 (en) | 2002-07-19 | 2005-03-08 | Nvidia Corporation | Method and apparatus for modifying depth values using pixel programs |
US7321369B2 (en) | 2002-08-30 | 2008-01-22 | Intel Corporation | Method and apparatus for synchronizing processing of multiple asynchronous client queues on a graphics controller device |
US6839062B2 (en) * | 2003-02-24 | 2005-01-04 | Microsoft Corporation | Usage semantics |
US7646817B2 (en) * | 2003-03-28 | 2010-01-12 | Microsoft Corporation | Accelerating video decoding using a graphics processing unit |
US7151543B1 (en) * | 2003-04-16 | 2006-12-19 | Nvidia Corporation | Vertex processor with multiple interfaces |
US7233335B2 (en) | 2003-04-21 | 2007-06-19 | Nividia Corporation | System and method for reserving and managing memory spaces in a memory resource |
US7079147B2 (en) * | 2003-05-14 | 2006-07-18 | Lsi Logic Corporation | System and method for cooperative operation of a processor and coprocessor |
US7015913B1 (en) | 2003-06-27 | 2006-03-21 | Nvidia Corporation | Method and apparatus for multithreaded processing of data in a programmable graphics processor |
US7038685B1 (en) * | 2003-06-30 | 2006-05-02 | Nvidia Corporation | Programmable graphics processor for multithreaded execution of programs |
DE602004017879D1 (de) * | 2003-08-28 | 2009-01-02 | Mips Tech Inc | Integrierter mechanismus zum suspendieren und endznem prozessor |
US7239322B2 (en) * | 2003-09-29 | 2007-07-03 | Ati Technologies Inc | Multi-thread graphic processing system |
US6897871B1 (en) | 2003-11-20 | 2005-05-24 | Ati Technologies Inc. | Graphics processing architecture employing a unified shader |
JP2005260592A (ja) * | 2004-03-11 | 2005-09-22 | Fujitsu Ltd | アンテナ装置、指向性制御方法及び通信装置 |
-
2003
- 2003-11-20 US US10/718,318 patent/US6897871B1/en not_active Expired - Lifetime
-
2004
- 2004-11-19 EP EP14188610.1A patent/EP2876606B1/en active Active
- 2004-11-19 CN CN2004800405708A patent/CN1947156B/zh active Active
- 2004-11-19 EP EP20100075687 patent/EP2299408B1/en active Active
- 2004-11-19 EP EP20100075686 patent/EP2296116B1/en active Active
- 2004-11-19 CA CA2585860A patent/CA2585860C/en active Active
- 2004-11-19 EP EP04798938A patent/EP1706847B1/en active Active
- 2004-11-19 EP EP20100075685 patent/EP2296115B1/en active Active
- 2004-11-19 WO PCT/IB2004/003821 patent/WO2005050570A1/en active Application Filing
- 2004-11-19 AU AU2004292018A patent/AU2004292018B2/en active Active
- 2004-11-19 EP EP20186674.6A patent/EP3748582B1/en active Active
- 2004-11-19 CN CN201110085042.6A patent/CN102176241B/zh active Active
- 2004-11-19 EP EP20100075688 patent/EP2309460B1/en active Active
- 2004-11-19 EP EP22169854.1A patent/EP4071722A1/en active Pending
-
2005
- 2005-04-29 US US11/117,863 patent/US7327369B2/en not_active Expired - Lifetime
-
2006
- 2006-11-19 ZA ZA200605069A patent/ZA200605069B/xx unknown
-
2007
- 2007-04-04 HK HK07103641.0A patent/HK1099111A1/xx unknown
- 2007-07-11 ZA ZA200705692A patent/ZA200705692B/xx unknown
- 2007-08-21 US US11/842,256 patent/US20070285427A1/en not_active Abandoned
-
2010
- 2010-06-01 US US12/791,597 patent/US20100231592A1/en not_active Abandoned
-
2011
- 2011-02-04 AU AU2011200479A patent/AU2011200479B2/en active Active
- 2011-05-17 US US13/109,738 patent/US8760454B2/en not_active Expired - Lifetime
-
2014
- 2014-06-23 US US14/312,014 patent/US20140300613A1/en not_active Abandoned
-
2015
- 2015-02-05 US US14/614,967 patent/US9582846B2/en not_active Expired - Lifetime
-
2016
- 2016-06-27 US US15/193,647 patent/US10489876B2/en not_active Expired - Lifetime
-
2019
- 2019-10-14 US US16/601,260 patent/US10796400B2/en not_active Expired - Lifetime
-
2020
- 2020-08-28 US US17/005,703 patent/US11023996B2/en not_active Expired - Lifetime
-
2021
- 2021-04-14 US US17/230,129 patent/US11328382B2/en not_active Expired - Lifetime
-
2022
- 2022-03-30 US US17/708,500 patent/US11605149B2/en not_active Expired - Lifetime
-
2023
- 2023-02-07 US US18/106,572 patent/US20230186423A1/en not_active Abandoned
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441761B (zh) * | 2007-08-15 | 2012-09-19 | 辉达公司 | 图形处理器单元管线中的条件执行位 |
TWI484441B (zh) * | 2007-08-15 | 2015-05-11 | Nvidia Corp | 算術邏輯單元管路階段、圖形處理器單元管線和在其中處理資料的方法 |
CN101425175B (zh) * | 2007-12-06 | 2012-03-21 | 威盛电子股份有限公司 | 着色器处理系统与方法 |
CN103974062A (zh) * | 2013-06-24 | 2014-08-06 | 福州瑞芯微电子有限公司 | 图像显示装置、图像显示系统和图像显示方法 |
CN106204408A (zh) * | 2014-12-23 | 2016-12-07 | 联发科技股份有限公司 | 绘图处理电路及其前置深度信息处理方法 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1947156B (zh) | 使用统一着色器的图形处理结构 | |
US6807620B1 (en) | Game system with graphics processor | |
CA2298337C (en) | Game system with graphics processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |