CA2392370A1 - A transform, lighting and rasterization system embodied on a single semiconductor platform - Google Patents
A transform, lighting and rasterization system embodied on a single semiconductor platform Download PDFInfo
- Publication number
- CA2392370A1 CA2392370A1 CA002392370A CA2392370A CA2392370A1 CA 2392370 A1 CA2392370 A1 CA 2392370A1 CA 002392370 A CA002392370 A CA 002392370A CA 2392370 A CA2392370 A CA 2392370A CA 2392370 A1 CA2392370 A1 CA 2392370A1
- Authority
- CA
- Canada
- Prior art keywords
- coupled
- vertex data
- logic unit
- output
- input
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- 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/04—Texture mapping
-
- 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
-
- 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/503—Blending, e.g. for anti-aliasing
-
- 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/506—Illumination models
Abstract
A graphics pipeline system is provided for graphics processing. Such system includes a transform module (52) adapted for being coupled to a vertex attribute buffer (5) for receiving vertex data. The transform module (52) serves to transform the vertex data from object space to screen space. Coupled to the transform module is a lighting module (54) which is positioned on the single semiconductor platform for performing lighting operations on the vertex data received from the transform module. Also included is a rasterizer (56) coupled to the lighting module (54) and positioned on the single semiconductor platform for rendering the vertex data received from the lighting module (54).
Claims (26)
1. A graphics pipeline system for graphics processing, comprising:
(a) a transform module adapted for being coupled to a buffer to receive vertex data therefrom, the transform module being positioned on a single semiconductor platform for transforming the vertex data from object space to screen space;
(b) a lighting module coupled to the transform module and positioned on the same single semiconductor platform as the transform module for performing lighting operations on the vertex data received from the transform module; and (c) a rasterizer coupled to the lighting module and positioned on the same single semiconductor platform as the transform module and lighting module for rendering the vertex data received from the lighting module;
(d) wherein at least one of the transform module and the lighting module includes a sequencer for executing multiple threads of operation in parallel through a plurality of logic units thereof.
(a) a transform module adapted for being coupled to a buffer to receive vertex data therefrom, the transform module being positioned on a single semiconductor platform for transforming the vertex data from object space to screen space;
(b) a lighting module coupled to the transform module and positioned on the same single semiconductor platform as the transform module for performing lighting operations on the vertex data received from the transform module; and (c) a rasterizer coupled to the lighting module and positioned on the same single semiconductor platform as the transform module and lighting module for rendering the vertex data received from the lighting module;
(d) wherein at least one of the transform module and the lighting module includes a sequencer for executing multiple threads of operation in parallel through a plurality of logic units thereof.
2. The system as recited in claim 1, wherein the lighting module includes:
(a) a plurality of input buffers adapted for receiving the vertex data;
(b) a multiplication logic unit having a first input coupled to an output of one of the input buffers and a second input coupled to an output of one of the input buffers;
(c) an arithmetic logic unit having a first input coupled to an output of one of the input buffers and a second input coupled to an output of the multiplication logic unit;
(d) a first register unit having an input coupled to the output of the arithmetic logic unit and an output coupled to the first input of the arithmetic logic unit;
(e) a second register unit having an input coupled to the output of the arithmetic logic unit and an output coupled to the first input and the second input of the multiplication logic unit;
(f) a lighting logic unit having a first input coupled to the output of the arithmetic logic unit, a second input coupled to the output of one of the input buffers, and an output coupled to the first input of the multiplication logic unit; and (g) a memory coupled to at least one of the inputs of the multiplication logic unit and the output of the arithmetic logic unit.
(a) a plurality of input buffers adapted for receiving the vertex data;
(b) a multiplication logic unit having a first input coupled to an output of one of the input buffers and a second input coupled to an output of one of the input buffers;
(c) an arithmetic logic unit having a first input coupled to an output of one of the input buffers and a second input coupled to an output of the multiplication logic unit;
(d) a first register unit having an input coupled to the output of the arithmetic logic unit and an output coupled to the first input of the arithmetic logic unit;
(e) a second register unit having an input coupled to the output of the arithmetic logic unit and an output coupled to the first input and the second input of the multiplication logic unit;
(f) a lighting logic unit having a first input coupled to the output of the arithmetic logic unit, a second input coupled to the output of one of the input buffers, and an output coupled to the first input of the multiplication logic unit; and (g) a memory coupled to at least one of the inputs of the multiplication logic unit and the output of the arithmetic logic unit.
The system as recited in claim 2, wherein an output of one of the input buffers is coupled to an output of the lighting module via a delay.
4. The system as recited in claim 3, wherein the output of the arithmetic logic unit and an output of one of the input buffers are coupled to the output of the lighting module by way of a multiplexer.
The system as recited in claim 2, wherein the output of the multiplication logic unit has a feedback loop coupled to the second input thereof.
6. The system as recited in claim 2, wherein the second input of the lighting logic unit is coupled to an output of one of the input buffers via a delay.
7. The system as recited in claim 2, wherein the output of the lighting logic unit is coupled to the first input of the multiplication logic unit via a first-in first-out register unit.
8. The system as recited in claim 2, wherein the output of the lighting logic unit is coupled to the first input of the multiplication logic unit via a conversion module adapted for converting scalar vertex data to vector vertex data.
9. The system as recited in claim 1, wherein the transform module includes:
(a) an input buffer adapted for receiving vertex data;
(b) a multiplication logic unit having a first input coupled to an output of the input buffer;
(c) an arithmetic logic unit having a first input coupled to an output of the multiplication logic unit;
(d) a register unit having an input coupled to an output of the arithmetic logic unit;
(e) an inverse logic unit including an input coupled to the output of the arithmetic logic unit or the register unit for performing an inverse or an inverse square root operation;
(f) a conversion module coupled between an output of the inverse logic unit and a second input of the multiplication logic unit, the conversion module adapted to convert scalar vertex data to vector vertex data; and (g) a memory coupled to the multiplication logic unit and the arithmetic logic unit.
(a) an input buffer adapted for receiving vertex data;
(b) a multiplication logic unit having a first input coupled to an output of the input buffer;
(c) an arithmetic logic unit having a first input coupled to an output of the multiplication logic unit;
(d) a register unit having an input coupled to an output of the arithmetic logic unit;
(e) an inverse logic unit including an input coupled to the output of the arithmetic logic unit or the register unit for performing an inverse or an inverse square root operation;
(f) a conversion module coupled between an output of the inverse logic unit and a second input of the multiplication logic unit, the conversion module adapted to convert scalar vertex data to vector vertex data; and (g) a memory coupled to the multiplication logic unit and the arithmetic logic unit.
10. The system as recited in claim 9, wherein the memory is coupled to the second input of the multiplication logic unit.
11. The system as recited in claim 9, wherein the memory has a write terminal coupled to the output of the arithmetic logic unit.
12. The system as recited in claim 9, wherein the output of the multiplication logic unit has a feedback loop coupled to the first input thereof.
13. The system as recited in claim 9, wherein the output of the register unit is coupled to the first input of the multiplication logic unit.
14. The system as recited in claim 13, wherein the output of the register unit is coupled to the second input of the multiplication logic unit.
15. The system as recited in claim 9, wherein the output of the arithmetic logic unit has a feedback loop connected to the second input thereof.
16. The system as recited in claim 15, wherein the feedback loop has a delay coupled thereto.
17. The system as recited in claim 1, wherein the rasterizer operates in homogeneous clip space.
18. The system as recited in claim 1, wherein the rasterizer is adapted for receiving a primitive defined by a plurality of vertices each including a W-value; and identifying an area based on the W-values, wherein the area is representative of a portion of a display to be drawn corresponding to the primitive.
19. A graphics pipeline system for graphics processing, comprising:
(a) transform means adapted for being coupled to a buffer to receive vertex data therefrom, the transform means positioned on a single semiconductor platform for transforming the vertex data from object space to screen space;
(b) lighting means positioned on the same single semiconductor platform as the transform means for performing lighting operations on the vertex data received from the transform means; and (c) rasterizer means positioned on the same single semiconductor platform as the transform means and lighting means for rendering the vertex data received from the lighting means;
(d) wherein at least one of the transform means and the lighting means includes a sequencer means for executing multiple threads of operation in parallel through each of a plurality of logic units thereof.
(a) transform means adapted for being coupled to a buffer to receive vertex data therefrom, the transform means positioned on a single semiconductor platform for transforming the vertex data from object space to screen space;
(b) lighting means positioned on the same single semiconductor platform as the transform means for performing lighting operations on the vertex data received from the transform means; and (c) rasterizer means positioned on the same single semiconductor platform as the transform means and lighting means for rendering the vertex data received from the lighting means;
(d) wherein at least one of the transform means and the lighting means includes a sequencer means for executing multiple threads of operation in parallel through each of a plurality of logic units thereof.
20. A method for graphics processing, comprising:
(a) transforming vertex data from object space to screen space;
(b) lighting the vertex data;
(c) executing multiple threads of operation in parallel through a plurality of logic units while at least one of transforming and lighting the vertex data; and (d) rendering the vertex data, wherein the vertex data is transformed, lighted, and rendered on a single semiconductor platform.
(a) transforming vertex data from object space to screen space;
(b) lighting the vertex data;
(c) executing multiple threads of operation in parallel through a plurality of logic units while at least one of transforming and lighting the vertex data; and (d) rendering the vertex data, wherein the vertex data is transformed, lighted, and rendered on a single semiconductor platform.
21. The method as recited in claim 20, wherein prior to rendering, the graphics processing avoids a clipping operation by: receiving a primitive defined by a plurality of vertices each including a W-value;
and identifying an area based on the W-values, wherein the area is representative of a portion of a display to be drawn corresponding to the primitive.
and identifying an area based on the W-values, wherein the area is representative of a portion of a display to be drawn corresponding to the primitive.
22. A graphics pipeline system for graphics processing, comprising:
(a) a lighting module adapted for being coupled to a transform module to receive vertex data therefrom, the lighting module being positioned on a single semiconductor platform for performing lighting operations on the vertex data received from the transform module;
and (b) a rasterizer coupled to the lighting module and positioned on the same single semiconductor platform as the lighting module for rendering the vertex data received from the lighting module;
(c) wherein a clipping operation is avoided prior to rasterization by the rasterizer using W-values of the vertex data.
(a) a lighting module adapted for being coupled to a transform module to receive vertex data therefrom, the lighting module being positioned on a single semiconductor platform for performing lighting operations on the vertex data received from the transform module;
and (b) a rasterizer coupled to the lighting module and positioned on the same single semiconductor platform as the lighting module for rendering the vertex data received from the lighting module;
(c) wherein a clipping operation is avoided prior to rasterization by the rasterizer using W-values of the vertex data.
23. A method for graphics processing, comprising:
(a) lighting vertex data;
(b) avoiding a clipping operation using W-values of the vertex data; and (c) rendering the vertex data, wherein the vertex data is lighted and rendered on a single semiconductor platform.
(a) lighting vertex data;
(b) avoiding a clipping operation using W-values of the vertex data; and (c) rendering the vertex data, wherein the vertex data is lighted and rendered on a single semiconductor platform.
24. A graphics pipeline system for graphics processing, comprising:
(a) a transform module adapted for being coupled to a buffer to receive vertex data therefrom, the transform module being positioned on a single semiconductor platform for transforming the vertex data from object space to screen space; and (b) a rasterizer positioned on the same single semiconductor platform as the transform module for rendering the vertex data;
(c) wherein a clipping operation is avoided prior to rasterization by the rasterizer using W-values of the vertex data.
(a) a transform module adapted for being coupled to a buffer to receive vertex data therefrom, the transform module being positioned on a single semiconductor platform for transforming the vertex data from object space to screen space; and (b) a rasterizer positioned on the same single semiconductor platform as the transform module for rendering the vertex data;
(c) wherein a clipping operation is avoided prior to rasterization by the rasterizer using W-values of the vertex data.
25. A method for graphics processing, comprising:
(a) transforming vertex data from object space to screen space;
(b) avoiding a clipping operation using W-values of the vertex data; and (c) rendering the vertex data, wherein the vertex data is transformed and rendered on a single semiconductor platform.
(a) transforming vertex data from object space to screen space;
(b) avoiding a clipping operation using W-values of the vertex data; and (c) rendering the vertex data, wherein the vertex data is transformed and rendered on a single semiconductor platform.
26. The method as recited in claim 25, wherein prior to rendering, the graphics processing avoids the clipping operation by: receiving a primitive defined by a plurality of vertices each including a W-value;
and identifying an area based on the W-values, wherein the area is representative of a portion of a display to be drawn corresponding to the primitive.
and identifying an area based on the W-values, wherein the area is representative of a portion of a display to be drawn corresponding to the primitive.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/454,516 | 1999-12-06 | ||
US09/454,516 US6198488B1 (en) | 1999-12-06 | 1999-12-06 | Transform, lighting and rasterization system embodied on a single semiconductor platform |
PCT/US2000/033092 WO2001041073A1 (en) | 1999-12-06 | 2000-12-05 | A transform, lighting and rasterization system embodied on a single semiconductor platform |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2392370A1 true CA2392370A1 (en) | 2001-06-07 |
CA2392370C CA2392370C (en) | 2010-10-05 |
Family
ID=23804927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2392370A Expired - Fee Related CA2392370C (en) | 1999-12-06 | 2000-12-05 | A transform, lighting and rasterization system embodied on a single semiconductor platform |
Country Status (7)
Country | Link |
---|---|
US (9) | US6198488B1 (en) |
EP (1) | EP1238371B9 (en) |
JP (2) | JP4306995B2 (en) |
AT (1) | ATE512427T1 (en) |
AU (1) | AU2064501A (en) |
CA (1) | CA2392370C (en) |
WO (1) | WO2001041073A1 (en) |
Families Citing this family (147)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9098297B2 (en) * | 1997-05-08 | 2015-08-04 | Nvidia Corporation | Hardware accelerator for an object-oriented programming language |
US6646639B1 (en) | 1998-07-22 | 2003-11-11 | Nvidia Corporation | Modified method and apparatus for improved occlusion culling in graphics systems |
US6480205B1 (en) | 1998-07-22 | 2002-11-12 | Nvidia Corporation | Method and apparatus for occlusion culling in graphics systems |
US6417858B1 (en) * | 1998-12-23 | 2002-07-09 | Microsoft Corporation | Processor for geometry transformations and lighting calculations |
US6618048B1 (en) | 1999-10-28 | 2003-09-09 | Nintendo Co., Ltd. | 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components |
US6411301B1 (en) * | 1999-10-28 | 2002-06-25 | Nintendo Co., Ltd. | Graphics system interface |
US6452600B1 (en) | 1999-10-28 | 2002-09-17 | Nintendo Co., Ltd. | Graphics system interface |
US6417851B1 (en) * | 1999-12-06 | 2002-07-09 | Nvidia Corporation | Method and apparatus for lighting module in a graphics processor |
US7002577B2 (en) * | 1999-12-06 | 2006-02-21 | Nvidia Corporation | Clipping system and method for a single graphics semiconductor platform |
US6452595B1 (en) * | 1999-12-06 | 2002-09-17 | Nvidia Corporation | Integrated graphics processing unit with antialiasing |
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 |
US6650325B1 (en) * | 1999-12-06 | 2003-11-18 | Nvidia Corporation | Method, apparatus and article of manufacture for boustrophedonic rasterization |
US7209140B1 (en) | 1999-12-06 | 2007-04-24 | Nvidia Corporation | System, method and article of manufacture for a programmable vertex processing model with instruction set |
US6765575B1 (en) * | 1999-12-06 | 2004-07-20 | Nvidia Corporation | Clip-less rasterization using line equation-based traversal |
US6198488B1 (en) * | 1999-12-06 | 2001-03-06 | Nvidia | Transform, lighting and rasterization system embodied on a single semiconductor platform |
US6844880B1 (en) | 1999-12-06 | 2005-01-18 | Nvidia Corporation | System, method and computer program product for an improved programmable vertex processing model with instruction set |
US7159041B2 (en) * | 2000-03-07 | 2007-01-02 | Microsoft Corporation | Method and system for defining and controlling algorithmic elements in a graphics display system |
US6857061B1 (en) | 2000-04-07 | 2005-02-15 | Nintendo Co., Ltd. | Method and apparatus for obtaining a scalar value directly from a vector register |
US6859862B1 (en) | 2000-04-07 | 2005-02-22 | Nintendo Co., Ltd. | Method and apparatus for software management of on-chip cache |
US7061494B1 (en) * | 2000-04-20 | 2006-06-13 | International Business Machines Corporation | Method and apparatus for hardware optimization of graphics pipeline functions |
US6724394B1 (en) * | 2000-05-31 | 2004-04-20 | Nvidia Corporation | Programmable pixel shading architecture |
US6664963B1 (en) * | 2000-05-31 | 2003-12-16 | Nvidia Corporation | System, method and computer program product for programmable shading using pixel shaders |
US7119813B1 (en) | 2000-06-02 | 2006-10-10 | Nintendo Co., Ltd. | Variable bit field encoding |
US6593925B1 (en) * | 2000-06-22 | 2003-07-15 | Microsoft Corporation | Parameterized animation compression methods and arrangements |
US7134960B1 (en) * | 2000-08-23 | 2006-11-14 | Nintendo Co., Ltd. | External interfaces for a 3D graphics system |
US6606689B1 (en) | 2000-08-23 | 2003-08-12 | Nintendo Co., Ltd. | Method and apparatus for pre-caching data in audio memory |
US6980218B1 (en) | 2000-08-23 | 2005-12-27 | Nintendo Co., Ltd. | Method and apparatus for efficient generation of texture coordinate displacements for implementing emboss-style bump mapping in a graphics rendering system |
US6636214B1 (en) | 2000-08-23 | 2003-10-21 | Nintendo Co., Ltd. | Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode |
US7538772B1 (en) | 2000-08-23 | 2009-05-26 | Nintendo Co., Ltd. | Graphics processing system with enhanced memory controller |
US6937245B1 (en) | 2000-08-23 | 2005-08-30 | Nintendo Co., Ltd. | Graphics system with embedded frame buffer having reconfigurable pixel formats |
US6664962B1 (en) | 2000-08-23 | 2003-12-16 | Nintendo Co., Ltd. | Shadow mapping in a low cost graphics system |
US7196710B1 (en) * | 2000-08-23 | 2007-03-27 | Nintendo Co., Ltd. | Method and apparatus for buffering graphics data in a graphics system |
US6811489B1 (en) | 2000-08-23 | 2004-11-02 | Nintendo Co., Ltd. | Controller interface for a graphics system |
US6825851B1 (en) | 2000-08-23 | 2004-11-30 | Nintendo Co., Ltd. | Method and apparatus for environment-mapped bump-mapping in a graphics system |
US6999100B1 (en) | 2000-08-23 | 2006-02-14 | Nintendo Co., Ltd. | Method and apparatus for anti-aliasing in a graphics system |
US6707458B1 (en) | 2000-08-23 | 2004-03-16 | Nintendo Co., Ltd. | Method and apparatus for texture tiling in a graphics system |
US6639595B1 (en) * | 2000-08-23 | 2003-10-28 | Nintendo Co., Ltd. | Achromatic lighting in a graphics system and method |
US6580430B1 (en) | 2000-08-23 | 2003-06-17 | Nintendo Co., Ltd. | Method and apparatus for providing improved fog effects in a graphics system |
US6664958B1 (en) | 2000-08-23 | 2003-12-16 | Nintendo Co., Ltd. | Z-texturing |
US6609977B1 (en) | 2000-08-23 | 2003-08-26 | Nintendo Co., Ltd. | External interfaces for a 3D graphics system |
US6700586B1 (en) | 2000-08-23 | 2004-03-02 | Nintendo Co., Ltd. | Low cost graphics with stitching processing hardware support for skeletal animation |
US6704010B1 (en) * | 2000-09-05 | 2004-03-09 | Nvidia Corporation | System, method and article of manufacture for rendering triangular patches using hardware equipped for handling quadrilateral patches |
US6597356B1 (en) * | 2000-08-31 | 2003-07-22 | Nvidia Corporation | Integrated tessellator in a graphics processing unit |
US8692844B1 (en) | 2000-09-28 | 2014-04-08 | Nvidia Corporation | Method and system for efficient antialiased rendering |
US6697074B2 (en) * | 2000-11-28 | 2004-02-24 | Nintendo Co., Ltd. | Graphics system interface |
US7098921B2 (en) * | 2001-02-09 | 2006-08-29 | Activision Publishing, Inc. | Method, system and computer program product for efficiently utilizing limited resources in a graphics device |
US6828975B2 (en) * | 2001-03-01 | 2004-12-07 | Microsoft Corporation | Method and system for managing graphics objects in a graphics display system |
GB2376310B (en) * | 2001-03-14 | 2005-09-28 | Micron Technology Inc | Arithmetic pipeline |
US6894687B1 (en) * | 2001-06-08 | 2005-05-17 | Nvidia Corporation | System, method and computer program product for vertex attribute aliasing in a graphics pipeline |
US7006101B1 (en) | 2001-06-08 | 2006-02-28 | Nvidia Corporation | Graphics API with branching capabilities |
US7456838B1 (en) | 2001-06-08 | 2008-11-25 | Nvidia Corporation | System and method for converting a vertex program to a binary format capable of being executed by a hardware graphics pipeline |
US6947047B1 (en) | 2001-09-20 | 2005-09-20 | Nvidia Corporation | Method and system for programmable pipelined graphics processing with branching instructions |
US7154502B2 (en) * | 2002-03-19 | 2006-12-26 | 3D Labs, Inc. Ltd. | 3D graphics with optional memory write before texturing |
US7009605B2 (en) | 2002-03-20 | 2006-03-07 | Nvidia Corporation | System, method and computer program product for generating a shader program |
US6980209B1 (en) * | 2002-06-14 | 2005-12-27 | Nvidia Corporation | Method and system for scalable, dataflow-based, programmable processing of graphics data |
US6825843B2 (en) * | 2002-07-18 | 2004-11-30 | Nvidia Corporation | Method and apparatus for loop and branch instructions in a programmable graphics pipeline |
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 |
JP2004280157A (en) * | 2003-03-12 | 2004-10-07 | Toshiba Corp | Image processor |
JP3966832B2 (en) * | 2003-04-28 | 2007-08-29 | 株式会社東芝 | Drawing processing apparatus and drawing processing method |
US7218331B2 (en) * | 2003-05-13 | 2007-05-15 | Via Technologies, Inc. | Bounding box in 3D graphics |
US8775112B2 (en) | 2003-09-15 | 2014-07-08 | Nvidia Corporation | System and method for increasing die yield |
US8732644B1 (en) | 2003-09-15 | 2014-05-20 | Nvidia Corporation | Micro electro mechanical switch system and method for testing and configuring semiconductor functional circuits |
US8775997B2 (en) * | 2003-09-15 | 2014-07-08 | Nvidia Corporation | System and method for testing and configuring semiconductor functional circuits |
US20070291040A1 (en) * | 2005-01-25 | 2007-12-20 | Reuven Bakalash | Multi-mode parallel graphics rendering system supporting dynamic profiling of graphics-based applications and automatic control of parallel modes of operation |
US20090027383A1 (en) * | 2003-11-19 | 2009-01-29 | Lucid Information Technology, Ltd. | Computing system parallelizing the operation of multiple graphics processing pipelines (GPPLs) and supporting depth-less based image recomposition |
WO2006117683A2 (en) | 2005-01-25 | 2006-11-09 | Lucid Information Technology, Ltd. | Graphics processing and display system employing multiple graphics cores on a silicon chip of monolithic construction |
US20080088631A1 (en) * | 2003-11-19 | 2008-04-17 | Reuven Bakalash | Multi-mode parallel graphics rendering and display system supporting real-time detection of scene profile indices programmed within pre-profiled scenes of the graphics-based application |
US20080094403A1 (en) * | 2003-11-19 | 2008-04-24 | Reuven Bakalash | Computing system capable of parallelizing the operation graphics processing units (GPUs) supported on a CPU/GPU fusion-architecture chip and one or more external graphics cards, employing a software-implemented multi-mode parallel graphics rendering subsystem |
US8497865B2 (en) | 2006-12-31 | 2013-07-30 | Lucid Information Technology, Ltd. | Parallel graphics system employing multiple graphics processing pipelines with multiple graphics processing units (GPUS) and supporting an object division mode of parallel graphics processing using programmable pixel or vertex processing resources provided with the GPUS |
US7961194B2 (en) | 2003-11-19 | 2011-06-14 | Lucid Information Technology, Ltd. | Method of controlling in real time the switching of modes of parallel operation of a multi-mode parallel graphics processing subsystem embodied within a host computing system |
JP2007512613A (en) | 2003-11-19 | 2007-05-17 | ルシッド インフォメーション テクノロジー リミテッド | Method and system for multiple 3-D graphic pipelines on a PC bus |
US8085273B2 (en) | 2003-11-19 | 2011-12-27 | Lucid Information Technology, Ltd | Multi-mode parallel graphics rendering system employing real-time automatic scene profiling and mode control |
US7584475B1 (en) | 2003-11-20 | 2009-09-01 | Nvidia Corporation | Managing a video encoder to facilitate loading and executing another program |
US8711161B1 (en) | 2003-12-18 | 2014-04-29 | Nvidia Corporation | Functional component compensation reconfiguration system and method |
JP4064339B2 (en) * | 2003-12-19 | 2008-03-19 | 株式会社東芝 | Drawing processing apparatus, drawing processing method, and drawing processing program |
US8144156B1 (en) * | 2003-12-31 | 2012-03-27 | Zii Labs Inc. Ltd. | Sequencer with async SIMD array |
US8736620B2 (en) * | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Kill bit graphics processing system and method |
US8743142B1 (en) | 2004-05-14 | 2014-06-03 | Nvidia Corporation | Unified data fetch graphics processing system and method |
US20060007234A1 (en) * | 2004-05-14 | 2006-01-12 | Hutchins Edward A | Coincident graphics pixel scoreboard tracking system and method |
US8432394B1 (en) | 2004-05-14 | 2013-04-30 | Nvidia Corporation | Method and system for implementing clamped z value interpolation in a raster stage of a graphics pipeline |
US7079156B1 (en) * | 2004-05-14 | 2006-07-18 | Nvidia Corporation | Method and system for implementing multiple high precision and low precision interpolators for a graphics pipeline |
US8411105B1 (en) | 2004-05-14 | 2013-04-02 | Nvidia Corporation | Method and system for computing pixel parameters |
US8687010B1 (en) | 2004-05-14 | 2014-04-01 | Nvidia Corporation | Arbitrary size texture palettes for use in graphics systems |
US7106336B1 (en) * | 2004-05-14 | 2006-09-12 | Nvidia Corporation | Method and system for deferred evaluation of transforms in graphics processors |
US8736628B1 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Single thread graphics processing system and method |
US8711155B2 (en) * | 2004-05-14 | 2014-04-29 | Nvidia Corporation | Early kill removal graphics processing system and method |
US8416242B1 (en) | 2004-05-14 | 2013-04-09 | Nvidia Corporation | Method and system for interpolating level-of-detail in graphics processors |
US8860722B2 (en) * | 2004-05-14 | 2014-10-14 | Nvidia Corporation | Early Z scoreboard tracking system and method |
US8723231B1 (en) | 2004-09-15 | 2014-05-13 | Nvidia Corporation | Semiconductor die micro electro-mechanical switch management system and method |
US8711156B1 (en) | 2004-09-30 | 2014-04-29 | Nvidia Corporation | Method and system for remapping processing elements in a pipeline of a graphics processing unit |
US8190669B1 (en) | 2004-10-20 | 2012-05-29 | Nvidia Corporation | Multipurpose arithmetic functional unit |
JP4487188B2 (en) * | 2004-10-25 | 2010-06-23 | ソニー株式会社 | Information processing apparatus and method, program, and navigation apparatus |
US20090096798A1 (en) * | 2005-01-25 | 2009-04-16 | Reuven Bakalash | Graphics Processing and Display System Employing Multiple Graphics Cores on a Silicon Chip of Monolithic Construction |
US8427496B1 (en) | 2005-05-13 | 2013-04-23 | Nvidia Corporation | Method and system for implementing compression across a graphics bus interconnect |
US7483029B2 (en) * | 2005-12-15 | 2009-01-27 | Nvidia Corporation | GPU having raster components configured for using nested boustrophedonic patterns to traverse screen areas |
US8698811B1 (en) | 2005-12-15 | 2014-04-15 | Nvidia Corporation | Nested boustrophedonic patterns for rasterization |
US9117309B1 (en) | 2005-12-19 | 2015-08-25 | Nvidia Corporation | Method and system for rendering polygons with a bounding box in a graphics processor unit |
US8390645B1 (en) | 2005-12-19 | 2013-03-05 | Nvidia Corporation | Method and system for rendering connecting antialiased line segments |
US8037119B1 (en) | 2006-02-21 | 2011-10-11 | Nvidia Corporation | Multipurpose functional unit with single-precision and double-precision operations |
US8928676B2 (en) | 2006-06-23 | 2015-01-06 | Nvidia Corporation | Method for parallel fine rasterization in a raster stage of a graphics pipeline |
US8111260B2 (en) | 2006-06-28 | 2012-02-07 | Microsoft Corporation | Fast reconfiguration of graphics pipeline state |
US8954947B2 (en) * | 2006-06-29 | 2015-02-10 | Microsoft Corporation | Fast variable validation for state management of a graphics pipeline |
US20080122843A1 (en) * | 2006-07-20 | 2008-05-29 | Via Technologies, Inc. | Multi-thread vertex shader, graphics processing unit and flow control method |
US8134570B1 (en) * | 2006-09-18 | 2012-03-13 | Nvidia Corporation | System and method for graphics attribute packing for pixel shader usage |
US8237738B1 (en) | 2006-11-02 | 2012-08-07 | Nvidia Corporation | Smooth rasterization of polygonal graphics primitives |
US8427487B1 (en) | 2006-11-02 | 2013-04-23 | Nvidia Corporation | Multiple tile output using interface compression in a raster stage |
US8537168B1 (en) * | 2006-11-02 | 2013-09-17 | Nvidia Corporation | Method and system for deferred coverage mask generation in a raster stage |
US7663621B1 (en) * | 2006-11-03 | 2010-02-16 | Nvidia Corporation | Cylindrical wrapping using shader hardware |
US8482567B1 (en) | 2006-11-03 | 2013-07-09 | Nvidia Corporation | Line rasterization techniques |
BRPI0606106B1 (en) * | 2006-11-28 | 2018-02-14 | Fundação Oswaldo Cruz | Method for creating a perspective image, and using the method |
US8051123B1 (en) | 2006-12-15 | 2011-11-01 | Nvidia Corporation | Multipurpose functional unit with double-precision and filtering operations |
US7808512B1 (en) | 2006-12-19 | 2010-10-05 | Nvidia Corporation | Bounding region accumulation for graphics rendering |
US8207972B2 (en) | 2006-12-22 | 2012-06-26 | Qualcomm Incorporated | Quick pixel rendering processing |
US7940261B2 (en) * | 2007-01-10 | 2011-05-10 | Qualcomm Incorporated | Automatic load balancing of a 3D graphics pipeline |
US8253737B1 (en) * | 2007-05-17 | 2012-08-28 | Nvidia Corporation | System, method, and computer program product for generating a disparity map |
US8441497B1 (en) | 2007-08-07 | 2013-05-14 | Nvidia Corporation | Interpolation of vertex attributes in a graphics processor |
US9183607B1 (en) | 2007-08-15 | 2015-11-10 | Nvidia Corporation | Scoreboard cache coherence in a graphics pipeline |
US8495602B2 (en) * | 2007-09-28 | 2013-07-23 | Qualcomm Incorporated | Shader compile system and method |
US8724483B2 (en) | 2007-10-22 | 2014-05-13 | Nvidia Corporation | Loopback configuration for bi-directional interfaces |
US8106914B2 (en) * | 2007-12-07 | 2012-01-31 | Nvidia Corporation | Fused multiply-add functional unit |
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 |
US8248422B2 (en) * | 2008-01-18 | 2012-08-21 | International Business Machines Corporation | Efficient texture processing of pixel groups with SIMD execution unit |
US8681861B2 (en) | 2008-05-01 | 2014-03-25 | Nvidia Corporation | Multistandard hardware video encoder |
US8923385B2 (en) | 2008-05-01 | 2014-12-30 | Nvidia Corporation | Rewind-enabled hardware encoder |
DE102009006660A1 (en) * | 2009-01-29 | 2010-08-05 | Baumer Innotec Ag | Pipeline computing device for connecting contour elements from image data |
US8564616B1 (en) | 2009-07-17 | 2013-10-22 | Nvidia Corporation | Cull before vertex attribute fetch and vertex lighting |
US8542247B1 (en) | 2009-07-17 | 2013-09-24 | Nvidia Corporation | Cull before vertex attribute fetch and vertex lighting |
US20110063309A1 (en) | 2009-09-16 | 2011-03-17 | Nvidia Corporation | User interface for co-processing techniques on heterogeneous graphics processing units |
US8922555B2 (en) * | 2009-10-07 | 2014-12-30 | Nvidia Corporation | Pixel shader output map |
US8976195B1 (en) | 2009-10-14 | 2015-03-10 | Nvidia Corporation | Generating clip state for a batch of vertices |
US8384736B1 (en) * | 2009-10-14 | 2013-02-26 | Nvidia Corporation | Generating clip state for a batch of vertices |
JP5367552B2 (en) * | 2009-12-15 | 2013-12-11 | 株式会社東芝 | Image processing apparatus and image processing program |
US9530189B2 (en) | 2009-12-31 | 2016-12-27 | Nvidia Corporation | Alternate reduction ratios and threshold mechanisms for framebuffer compression |
US9331869B2 (en) | 2010-03-04 | 2016-05-03 | Nvidia Corporation | Input/output request packet handling techniques by a device specific kernel mode driver |
US9064343B2 (en) | 2010-08-24 | 2015-06-23 | Qualcomm Incorporated | Graphics processing using two-dimensional scissor regions |
US9171350B2 (en) | 2010-10-28 | 2015-10-27 | Nvidia Corporation | Adaptive resolution DGPU rendering to provide constant framerate with free IGPU scale up |
US9411595B2 (en) | 2012-05-31 | 2016-08-09 | Nvidia Corporation | Multi-threaded transactional memory coherence |
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 |
US9591309B2 (en) | 2012-12-31 | 2017-03-07 | Nvidia Corporation | Progressive lossy memory compression |
US9607407B2 (en) | 2012-12-31 | 2017-03-28 | Nvidia Corporation | Variable-width differential memory compression |
US9710894B2 (en) | 2013-06-04 | 2017-07-18 | Nvidia Corporation | System and method for enhanced multi-sample anti-aliasing |
US9569385B2 (en) | 2013-09-09 | 2017-02-14 | Nvidia Corporation | Memory transaction ordering |
US9832388B2 (en) | 2014-08-04 | 2017-11-28 | Nvidia Corporation | Deinterleaving interleaved high dynamic range image by using YUV interpolation |
US9589312B2 (en) * | 2014-12-19 | 2017-03-07 | Intel Corporation | Exploiting frame-to-frame coherence for optimizing color buffer clear performance in graphics processing units |
KR20200084380A (en) * | 2018-12-20 | 2020-07-13 | 전자부품연구원 | Smart Home Airconditioner Automatic control system based on Artificial Intelligence |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5450342A (en) | 1984-10-05 | 1995-09-12 | Hitachi, Ltd. | Memory device |
JPH07117945B2 (en) | 1987-07-23 | 1995-12-18 | 松下電器産業株式会社 | Synchronous communication method in parallel computer |
JPS6440679A (en) | 1987-07-31 | 1989-02-10 | Nippon Mektron Kk | Softener |
US5003497A (en) * | 1988-12-15 | 1991-03-26 | Sun Micosystems Inc | Method for three-dimensional clip checking for computer graphics |
US5025407A (en) | 1989-07-28 | 1991-06-18 | Texas Instruments Incorporated | Graphics floating point coprocessor having matrix capabilities |
JPH0792840B2 (en) | 1989-10-13 | 1995-10-09 | インターナショナル・ビジネス・マシーンズ・コーポレーシヨン | Image generation method and apparatus |
JP2770598B2 (en) * | 1990-06-13 | 1998-07-02 | 株式会社日立製作所 | Graphic display method and apparatus |
JPH05282464A (en) * | 1992-04-03 | 1993-10-29 | Fujitsu Ltd | Plotting method of three-dimensional computer graphics |
US6000027A (en) | 1992-08-25 | 1999-12-07 | Texas Instruments Incorporated | Method and apparatus for improved graphics/image processing using a processor and a memory |
US5459820A (en) | 1992-09-10 | 1995-10-17 | General Electric Company | Method for graphical display of three-dimensional vector fields |
JP3626514B2 (en) * | 1994-01-21 | 2005-03-09 | 株式会社ルネサステクノロジ | Image processing circuit |
US5694143A (en) | 1994-06-02 | 1997-12-02 | Accelerix Limited | Single chip frame buffer and graphics accelerator |
JPH08138060A (en) * | 1994-11-04 | 1996-05-31 | Hitachi Ltd | Display processor using parallel processor |
US5864342A (en) | 1995-08-04 | 1999-01-26 | Microsoft Corporation | Method and system for rendering graphical objects to image chunks |
US5886701A (en) * | 1995-08-04 | 1999-03-23 | Microsoft Corporation | Graphics rendering device and method for operating same |
US5801711A (en) | 1995-08-08 | 1998-09-01 | Hewlett Packard Company | Polyline and triangle strip data management techniques for enhancing performance of computer graphics system |
US5724561A (en) | 1995-11-03 | 1998-03-03 | 3Dfx Interactive, Incorporated | System and method for efficiently determining a fog blend value in processing graphical images |
US6331856B1 (en) * | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
US5963210A (en) * | 1996-03-29 | 1999-10-05 | Stellar Semiconductor, Inc. | Graphics processor, system and method for generating screen pixels in raster order utilizing a single interpolator |
US6104417A (en) | 1996-09-13 | 2000-08-15 | Silicon Graphics, Inc. | Unified memory computer architecture with dynamic graphics memory allocation |
JPH10161636A (en) * | 1996-11-29 | 1998-06-19 | Hitachi Ltd | Graphics display device |
DE19782200T1 (en) | 1996-12-19 | 1999-11-18 | Hyundai Electronics America | Full frame video editing machine |
US5880736A (en) * | 1997-02-28 | 1999-03-09 | Silicon Graphics, Inc. | Method system and computer program product for shading |
US5977997A (en) | 1997-03-06 | 1999-11-02 | Lsi Logic Corporation | Single chip computer having integrated MPEG and graphical processors |
US6175367B1 (en) * | 1997-04-23 | 2001-01-16 | Siligon Graphics, Inc. | Method and system for real time illumination of computer generated images |
US5956042A (en) | 1997-04-30 | 1999-09-21 | Hewlett-Packard Co. | Graphics accelerator with improved lighting processor |
US6137497A (en) * | 1997-05-30 | 2000-10-24 | Hewlett-Packard Company | Post transformation clipping in a geometry accelerator |
US5951672A (en) * | 1997-07-02 | 1999-09-14 | International Business Machines Corporation | Synchronization method for work distribution in a multiprocessor system |
US6057855A (en) | 1997-07-02 | 2000-05-02 | Hewlett-Packard Company | Method and apparatus for providing polygon pixel sub-sample information using incremental means |
US6014144A (en) * | 1998-02-03 | 2000-01-11 | Sun Microsystems, Inc. | Rapid computation of local eye vectors in a fixed point lighting unit |
WO1999052040A1 (en) | 1998-04-08 | 1999-10-14 | Stellar Technologies, Ltd. | Architecture for graphics processing |
US6144365A (en) | 1998-04-15 | 2000-11-07 | S3 Incorporated | System and method for performing blending using an over sampling buffer |
US6097395A (en) * | 1998-04-28 | 2000-08-01 | Hewlett Packard Company | Dynamic selection of lighting coordinates in a computer graphics system |
US6452595B1 (en) | 1999-12-06 | 2002-09-17 | Nvidia Corporation | Integrated graphics processing unit with antialiasing |
US6198488B1 (en) * | 1999-12-06 | 2001-03-06 | Nvidia | Transform, lighting and rasterization system embodied on a single semiconductor platform |
-
1999
- 1999-12-06 US US09/454,516 patent/US6198488B1/en not_active Expired - Lifetime
-
2000
- 2000-12-05 WO PCT/US2000/033092 patent/WO2001041073A1/en active Application Filing
- 2000-12-05 US US09/730,652 patent/US6342888B1/en not_active Expired - Lifetime
- 2000-12-05 AU AU20645/01A patent/AU2064501A/en not_active Abandoned
- 2000-12-05 JP JP2001542053A patent/JP4306995B2/en not_active Expired - Lifetime
- 2000-12-05 AT AT00983961T patent/ATE512427T1/en not_active IP Right Cessation
- 2000-12-05 EP EP00983961A patent/EP1238371B9/en not_active Expired - Lifetime
- 2000-12-05 CA CA2392370A patent/CA2392370C/en not_active Expired - Fee Related
-
2001
- 2001-01-31 US US09/775,086 patent/US7009607B2/en not_active Expired - Lifetime
- 2001-09-20 US US09/960,004 patent/US7034829B2/en not_active Expired - Lifetime
- 2001-09-20 US US09/961,228 patent/US6650331B2/en not_active Expired - Lifetime
- 2001-09-20 US US09/961,219 patent/US6577309B2/en not_active Expired - Lifetime
- 2001-09-20 US US09/957,746 patent/US6462737B2/en not_active Expired - Lifetime
-
2002
- 2002-06-28 US US10/187,226 patent/US7064763B2/en not_active Expired - Lifetime
-
2003
- 2003-03-31 US US10/404,776 patent/US6992667B2/en not_active Expired - Lifetime
-
2007
- 2007-03-15 JP JP2007067392A patent/JP4608510B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US20030189565A1 (en) | 2003-10-09 |
WO2001041073A1 (en) | 2001-06-07 |
ATE512427T1 (en) | 2011-06-15 |
US6992667B2 (en) | 2006-01-31 |
CA2392370C (en) | 2010-10-05 |
US6342888B1 (en) | 2002-01-29 |
JP4608510B2 (en) | 2011-01-12 |
US20030112245A1 (en) | 2003-06-19 |
EP1238371B1 (en) | 2011-06-08 |
JP4306995B2 (en) | 2009-08-05 |
EP1238371B9 (en) | 2012-03-07 |
US20020027553A1 (en) | 2002-03-07 |
US20020105519A1 (en) | 2002-08-08 |
US7064763B2 (en) | 2006-06-20 |
US20010005209A1 (en) | 2001-06-28 |
AU2064501A (en) | 2001-06-12 |
US6462737B2 (en) | 2002-10-08 |
JP2003515853A (en) | 2003-05-07 |
EP1238371A4 (en) | 2003-03-26 |
US7009607B2 (en) | 2006-03-07 |
US6198488B1 (en) | 2001-03-06 |
EP1238371A1 (en) | 2002-09-11 |
US6577309B2 (en) | 2003-06-10 |
US20030103050A1 (en) | 2003-06-05 |
US6650331B2 (en) | 2003-11-18 |
JP2007193835A (en) | 2007-08-02 |
US20020047846A1 (en) | 2002-04-25 |
US7034829B2 (en) | 2006-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2392370A1 (en) | A transform, lighting and rasterization system embodied on a single semiconductor platform | |
KR101134241B1 (en) | Fragment shader bypass in a graphics processing unit, and apparatus and method thereof | |
US6417858B1 (en) | Processor for geometry transformations and lighting calculations | |
US5874969A (en) | Three-dimensional graphics accelerator which implements multiple logical buses using common data lines for improved bus communication | |
EP1759380B1 (en) | Low power programmable processor | |
US5745125A (en) | Floating point processor for a three-dimensional graphics accelerator which includes floating point, lighting and set-up cores for improved performance | |
US7522171B1 (en) | On-the-fly reordering of 32-bit per component texture images in a multi-cycle data transfer | |
US5740409A (en) | Command processor for a three-dimensional graphics accelerator which includes geometry decompression capabilities | |
US6288723B1 (en) | Method and apparatus for converting data format to a graphics card | |
US6037947A (en) | Graphics accelerator with shift count generation for handling potential fixed-point numeric overflows | |
US6940512B2 (en) | Image processing apparatus and method of same | |
CN100504923C (en) | Grain engine for grain video signal processing, graph processor and method | |
US11763513B2 (en) | DGPU assist using DSP pre-processor system and method | |
JP3090605B2 (en) | Multiprocessor device | |
US6940525B2 (en) | Method and apparatus for performing a perspective projection in a graphics device of a computer graphics display system | |
US6813706B2 (en) | Data processing system and multiprocessor system | |
US6621495B1 (en) | Method and apparatus to handle immediate mode data streams in a data processing system | |
US20140176578A1 (en) | Input output connector for accessing graphics fixed function units in a software-defined pipeline and a method of operating a pipeline | |
US8633928B2 (en) | Reducing the bandwidth of sampler loads in shaders | |
US6003098A (en) | Graphic accelerator architecture using two graphics processing units for processing aspects of pre-rasterized graphics primitives and a control circuitry for relaying pass-through information | |
US7158132B1 (en) | Method and apparatus for processing primitive data for potential display on a display device | |
US7489315B1 (en) | Pixel stream assembly for raster operations | |
JP3102031B2 (en) | 3D color image generation system and method using simulated light source | |
US20080055307A1 (en) | Graphics rendering pipeline | |
US6822656B1 (en) | Sphere mode texture coordinate generator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |
Effective date: 20121205 |