Patents by Inventor Emmett M. Kilgariff

Emmett M. Kilgariff has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7916149
    Abstract: A method of organizing memory for storage of texture data, in accordance with one embodiment of the invention, includes accessing a size of a mipmap level of a texture map. A block dimension may be determined based on the size of the mipmap level. A memory space (e.g., computer-readable medium) may be logically divided into a plurality of whole number of blocks of variable dimension. The dimension of the blocks is measured in units of gobs and each gob is of a fixed dimension of bytes. A mipmap level of a texture map may be stored in the memory space. A texel coordinate of said mipmap level may be converted into a byte address of the memory space by determining a gob address of a gob in which the texel coordinate resides and determining a byte address within the particular gob.
    Type: Grant
    Filed: January 4, 2005
    Date of Patent: March 29, 2011
    Assignee: NVIDIA Corporation
    Inventors: Walter E. Donovan, Emmett M. Kilgariff, Karim M. Abdalla, Joel J. McCormack
  • Patent number: 7916151
    Abstract: Circuits, methods, and apparatus that provide for partial texture load instructions. Instead of one instruction that may take several shader passes to complete, several instructions are issued, where each instruction is an instruction to retrieve a part or portion of a texture. While each instruction is performed, the other shader circuits can perform other instructions, thus increasing the utilization of the shader circuits when large textures are read from memory. Since several shader passes may be required to read a texture, if a particular instruction needs the texture, one exemplary embodiment reorders instructions such that other instructions are performed before the particular instruction that needs the texture.
    Type: Grant
    Filed: October 22, 2009
    Date of Patent: March 29, 2011
    Assignee: NVIDIA Corporation
    Inventors: Emmett M. Kilgariff, Rui M. Bastos
  • Patent number: 7884831
    Abstract: Circuits, methods, and apparatus that provide texture caches and related circuits that store and retrieve texels in a fast and efficient manner. One such texture circuit provides an increased number of bilerps for each pixel in a group of pixels, particularly when trilinear or aniso filtering is needed. For trilinear filtering, texels in a first and second level of detail are retrieved for a number of pixels during a clock cycle. When aniso filtering is performed, multiple bilerps can be retrieved for each of a number of pixels during one clock cycle.
    Type: Grant
    Filed: January 19, 2010
    Date of Patent: February 8, 2011
    Assignee: NVIDIA Corporation
    Inventors: Alexander L. Minkin, Joel J. McCormack, Paul S. Heckbert, Michael J. M. Toksvig, Luke Y. Chang, Karim Abdalla, Bo Hong, John W. Berendsen, Walter Donavan, Emmett M. Kilgariff
  • Patent number: 7852340
    Abstract: A scalable shader architecture is disclosed. In accord with that architecture, a shader includes multiple shader pipelines, each of which can perform processing operations on rasterized pixel data. Shader pipelines can be functionally removed as required, thus preventing a defective shader pipeline from causing a chip rejection. The shader includes a shader distributor that processes rasterized pixel data and then selectively distributes the processed rasterized pixel data to the various shader pipelines, beneficially in a manner that balances workloads. A shader collector formats the outputs of the various shader pipelines into proper order to form shaded pixel data. A shader instruction processor (scheduler) programs the individual shader pipelines to perform their intended tasks.
    Type: Grant
    Filed: December 14, 2007
    Date of Patent: December 14, 2010
    Assignee: NVIDIA Corporation
    Inventors: Rui M. Bastos, Karim M. Abdalla, Christian Rouet, Michael J.M. Toksvig, Johnny S Rhoades, Roger L. Allen, John Douglas Tynefield, Jr., Emmett M. Kilgariff, Gary M. Tarolli, Brian Cabral, Craig Michael Wittenbrink, Sean J. Treichler
  • Patent number: 7825936
    Abstract: A method and system for optimizing graphics program execution by allowing the sharing of shader resources is disclosed. The method includes accessing a graphics program using a shader pipeline. If a texture projective instruction is included in the graphics program, a determination is made as to whether a texture projective parameter q indicates a non-projective texture. If the texture projective parameter indicates a non-projective texture, the texture projective instruction is demoted and a resulting demoted texture instruction is executed using a plurality of interpolators of the shader pipeline, which requires fewer shader resources.
    Type: Grant
    Filed: November 19, 2004
    Date of Patent: November 2, 2010
    Assignee: NVIDIA Corporation
    Inventors: Rui M. Bastos, Jakob Nebeker, Emmett M. Kilgariff
  • Patent number: 7821520
    Abstract: A new, useful, and non-obvious shader processor architecture having a shader register file that acts both as an internal storage register file for temporarily storing data within the shader processor and as a First-In First-Out (FIFO) buffer for a subsequent module. Some embodiments include automatic, programmable hardware conversion between numeric formats, for example, between floating point data and fixed point data.
    Type: Grant
    Filed: December 10, 2004
    Date of Patent: October 26, 2010
    Assignee: NVIDIA Corporation
    Inventors: Rui M. Bastos, Karim M. Abdalla, Sean J. Treichler, Emmett M. Kilgariff
  • Publication number: 20100118043
    Abstract: Circuits, methods, and apparatus that provide texture caches and related circuits that store and retrieve texels in a fast and efficient manner. One such texture circuit provides an increased number of bilerps for each pixel in a group of pixels, particularly when trilinear or aniso filtering is needed. For trilinear filtering, texels in a first and second level of detail are retrieved for a number of pixels during a clock cycle. When aniso filtering is performed, multiple bilerps can be retrieved for each of a number of pixels during one clock cycle.
    Type: Application
    Filed: January 19, 2010
    Publication date: May 13, 2010
    Applicant: NVIDIA Corporation
    Inventors: Alexander L. Minkin, Joel J. McCormack, Paul S. Heckbert, Michael J.M. Toksvig, Luke Y. Chang, Karim Abdalla, Bo Hong, John W. Berendsen, Walter Donavan, Emmett M. Kilgariff
  • Publication number: 20100079454
    Abstract: A system and method for performing tessellation in a single pass through a graphics processor divides the processing resources within the graphics processor into sets for performing different tessellation operations. Vertex data and tessellation parameters are routed directly from one processing resource to another instead of being stored in memory. Therefore, a surface patch description is provided to the graphics processor and tessellation is completed in a single uninterrupted pass through the graphics processor without storing intermediate data in memory.
    Type: Application
    Filed: September 29, 2008
    Publication date: April 1, 2010
    Inventors: Justin S. Legakis, Emmett M. Kilgariff, Henry Packard Moreton
  • Patent number: 7649538
    Abstract: Circuits, methods, and apparatus that provide texture caches and related circuits that store and retrieve texels in a fast and efficient manner. One such texture circuit provides an increased number of bilerps for each pixel in a group of pixels, particularly when trilinear or aniso filtering is needed. For trilinear filtering, texels in a first and second level of detail are retrieved for a number of pixels during a clock cycle. When aniso filtering is performed, multiple bilerps can be retrieved for each of a number of pixels during one clock cycle.
    Type: Grant
    Filed: November 3, 2006
    Date of Patent: January 19, 2010
    Assignee: NVIDIA Corporation
    Inventors: Alexander L. Minkin, Joel J. McCormack, Paul S. Heckbert, Michael J. M. Toksvig, Luke Y. Chang, Karim Abdalla, Bo Hong, John W. Berendsen, Walter Donovan, Emmett M. Kilgariff
  • Patent number: 7646389
    Abstract: Methods and systems for texture mapping in a computer-implemented graphics pipeline are described. A sample group is identified as including a divergent pixel. A determination is made whether an operand of an instruction executing on the divergent pixel satisfies a condition. A scheme for determining a level of detail for the texture mapping is selected depending on whether or not the condition is satisfied.
    Type: Grant
    Filed: May 18, 2005
    Date of Patent: January 12, 2010
    Assignee: NVIDIA Corporation
    Inventors: Christian Rouet, Emmett M. Kilgariff, Rui M. Bastos, Wei-Chao Chen
  • Patent number: 7624255
    Abstract: A system and method controls the scheduling of program instructions included in a shader program for execution by a processing pipeline. One or more fence instructions may be inserted into the shader program. Each fence instruction specifies a constraint that is applied to control the scheduling of another program instruction in the shader program. Controlling the scheduling of program instructions for execution by the processing pipeline may result in a more efficient use of computing resources and improved performance.
    Type: Grant
    Filed: March 9, 2005
    Date of Patent: November 24, 2009
    Assignee: NVIDIA Corporation
    Inventors: Christian Rouet, Rui M. Bastos, Emmett M. Kilgariff
  • Patent number: 7623132
    Abstract: A method and apparatus of operating a shader having multiple texture or shader processing stations. That method includes feeding the output of a texture or shader processing station directly into the input of another texture or shader processing station. Further, only a subset of the processing stations has access to a shader register file.
    Type: Grant
    Filed: December 20, 2004
    Date of Patent: November 24, 2009
    Assignee: NVIDIA Corporation
    Inventors: Rui M. Bastos, Christian Rouet, Emmett M. Kilgariff
  • Patent number: 7609272
    Abstract: Circuits, methods, and apparatus that provide for partial texture load instructions. Instead of one instruction that may take several shader passes to complete, several instructions are issued, where each instruction is an instruction to retrieve a part or portion of a texture. While each instruction is performed, the other shader circuits can perform other instructions, thus increasing the utilization of the shader circuits when large textures are read from memory. Since several shader passes may be required to read a texture, if a particular instruction needs the texture, one exemplary embodiment reorders instructions such that other instructions are performed before the particular instruction that needs the texture.
    Type: Grant
    Filed: December 13, 2004
    Date of Patent: October 27, 2009
    Assignee: NVIDIA Corporation
    Inventors: Emmett M. Kilgariff, Rui M. Bastos
  • Patent number: 7508398
    Abstract: A system and method for providing antialiased memory access includes receiving a request to access a memory address. The memory address is examined to determine if the memory address is within a virtual frame buffer. If the memory address is within a virtual frame buffer then the memory address is transformed into one or more physical addresses within a frame buffer that is utilized for antialiasing. The frame buffer may be a single memory space containing subpixel information corresponding to pixels of the virtual frame buffer. Subpixels located at the physical addresses within the frame buffer are then accessed. The disclosed invention provides for direct access by a software application.
    Type: Grant
    Filed: August 22, 2003
    Date of Patent: March 24, 2009
    Assignee: NVIDIA Corporation
    Inventors: John S. Montrym, Brian D. Hutsell, Steven E. Molnar, Gary M. Tarolli, Christopher T. Cheng, Emmett M. Kilgariff, Abraham B. de Waal
  • Patent number: 7486290
    Abstract: A graphical shader and a method of distributing graphical data to shader pipelines in a graphical shader are disclosed. In accordance with the method, a shader pipeline input delay is set. Further, a group of the graphical data is distributed to a shader pipeline of the graphical shader to be processed. The method includes waiting for the shader pipeline input delay to elapse. After the shader pipeline input delay has elapsed, another group of the graphical data is distributed to another shader pipeline of the graphical shader to be processed. In another embodiment, a graphical shader includes a plurality of shader pipelines for processing graphical data. Further, the graphical shader includes a shader distributor for distributing a group of the graphical data to one of the shader pipelines and for distributing another group of the graphical data to another one of the shader pipelines after a shader pipeline input delay has elapsed.
    Type: Grant
    Filed: June 10, 2005
    Date of Patent: February 3, 2009
    Assignee: NVIDIA Corporation
    Inventors: Emmett M. Kilgariff, Rui M. Bastos, Wei-Chao Chen, Douglas J. Hahn
  • Publication number: 20080143730
    Abstract: Apparatuses and methods are presented for a hierarchical processor. The processor comprises, at a first level of hierarchy, a plurality of similarly structured first level components, wherein each of the plurality of similarly structured first level components includes at least one combined function module capable of performing multiple classes of graphics operations, each of the multiple classes of graphics operations being associated with a different stage of graphics processing.
    Type: Application
    Filed: November 1, 2007
    Publication date: June 19, 2008
    Applicant: NVIDIA Corporation
    Inventors: John Erik Lindholm, John S. Montrym, Emmett M. Kilgariff, Simon S. Moy, Sean Jeffrey Treichler, Brett W. Coon, David Kirk, John Danskin
  • Patent number: 7385607
    Abstract: A scalable shader architecture is disclosed. In accord with that architecture, a shader includes multiple shader pipelines, each of which can perform processing operations on rasterized pixel data. Shader pipelines can be functionally removed as required, thus preventing a defective shader pipeline from causing a chip rejection. The shader includes a shader distributor that processes rasterized pixel data and then selectively distributes the processed rasterized pixel data to the various shader pipelines, beneficially in a manner that balances workloads. A shader collector formats the outputs of the various shader pipelines into proper order to form shaded pixel data. A shader instruction processor (scheduler) programs the individual shader pipelines to perform their intended tasks.
    Type: Grant
    Filed: September 10, 2004
    Date of Patent: June 10, 2008
    Assignee: NVIDIA Corporation
    Inventors: Rui M. Bastos, Karim M. Abdalla, Christian Rouet, Michael J. M. Toksvig, Johnny S. Rhoades, Roger L. Allen, John Douglas Tynefield, Jr., Emmett M. Kilgariff, Gary M. Tarolli, Brian Cabral, Craig Michael Wittenbrink, Sean J. Treichler
  • Patent number: 7324113
    Abstract: A method of optimizing perspective correction computations to be executed in a programmable fragment shader, identifying a sequence of program instructions; determining whether the sequence of program instructions can be optimized based on the status of the bit; sourcing one or more interpolated texture map coordinates to thereby disable the perspective correction computation comprising division by (1/w); and enabling the optimized execution of one of a plurality of perspective computation functions by a sought operation in a shader unit without division of the interpolated texture maps coordinates by (1/w). The optimized function includes able mapping, projective mapping, normalization, or scaling invariant operations.
    Type: Grant
    Filed: March 9, 2005
    Date of Patent: January 29, 2008
    Assignee: NVIDIA Corporation
    Inventors: Christian Rouet, Rui M. Bastos, Emmett M. Kilgariff
  • Patent number: 7218291
    Abstract: A fragment processor includes a fragment shader distributor, a fragment shader collector, and a plurality of fragment shader pipelines. Each fragment shader pipeline executes a fragment shader program on a segment of fragments. The plurality of fragment shader pipelines operate in parallel, executing the same or different fragment shader programs. The fragment shader distributor receives a stream of fragments from a rasterization unit and dispatches a portion of the stream of fragments to a selected fragment shader pipeline until the capacity of the selected fragment shader pipeline is reached. The fragment shader distributor then selects another fragment shader pipeline. The capacity of each of the fragment shader pipelines is limited by several different resources. As the fragment shader distributor dispatches fragments, it tracks the remaining available resources of the selected fragment shader pipeline.
    Type: Grant
    Filed: September 13, 2004
    Date of Patent: May 15, 2007
    Assignee: NVIDIA Corporation
    Inventors: Karim M. Abdalla, Emmett M. Kilgariff, Rui M. Bastos
  • Patent number: 7023437
    Abstract: A system and method are provided for accelerating graphics processing utilizing multiple-pass rendering. Initially, geometry operations are performed on graphics data, and the graphics data is stored in memory. During a first rendering pass, various operations take place. For example, the graphics data is read from the memory, and the graphics data is rasterized. Moreover, first z-culling operations are performed utilizing the graphics data. Such first z-culling operations maintain a first occlusion image. During a second rendering pass, the graphics data is read from memory. Still yet, the graphics data is rasterized and second z-culling operations are performed utilizing the graphics data and the first occlusion image. Moreover, visibility operations are performed utilizing the graphics data and a second occlusion image. Raster-processor operations are also performed utilizing the graphics data, during the second rendering pass.
    Type: Grant
    Filed: August 27, 2002
    Date of Patent: April 4, 2006
    Assignee: NVIDIA Corporation
    Inventors: Douglas A. Voorhies, Edward C. Greene, Emmett M. Kilgariff, Svetoslav Tzvetkov