Patents by Inventor Edward A. Hutchins

Edward A. Hutchins 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: 9035957
    Abstract: An efficient pipeline debug statistics system and method are described. In one embodiment, an efficient pipeline debug is utilized in a graphics processing pipeline of a handheld device. In one embodiment, a pipeline debug statistics system includes a plurality of pipeline stages with probe points, a central statistic component, and a debug control component. The plurality of pipeline stages with probe points perform pipeline operations. The central statistic block gathers information from the probe points. The debug control component directs the gathering of information from the probe points. In one exemplary implementation, debug control component can direct gathering of information at a variety of levels and abstraction.
    Type: Grant
    Filed: August 15, 2007
    Date of Patent: May 19, 2015
    Assignee: NVIDIA CORPORATION
    Inventors: Justin Michael Mahan, Christopher J. Mills, Edward A. Hutchins
  • Patent number: 9024957
    Abstract: A method for loading a shader program from system memory into GPU memory. The method includes accessing the shader program in system memory of a computer system. A DMA transfer of the shader program from system memory into GPU memory is performed such that the shader program is loaded into GPU memory in an address independent manner.
    Type: Grant
    Filed: August 15, 2007
    Date of Patent: May 5, 2015
    Assignee: Nvidia Corporation
    Inventors: Justin Michael Mahan, Edward A. Hutchins, Michael J. M. Toksvig
  • Patent number: 8988441
    Abstract: Briefly, in accordance with one or more embodiments, a reconfigurable 3D graphics processor includes a pipeline configuration manager, a rasterizer, and a memory coupled to the triangle rasterizer. The pipeline configuration manager is capable of configuring the graphics processor to operate in a direct rasterizing mode or a tiling mode to process a sequence of drawing commands received from a processing unit.
    Type: Grant
    Filed: February 9, 2012
    Date of Patent: March 24, 2015
    Inventor: Edward A. Hutchins
  • Patent number: 8860722
    Abstract: Early Z scoreboard tracking systems and methods in accordance with the present invention are described. Multiple pixels are received and a pixel depth raster operation is performed on the pixels. The pixel depth raster operation comprises discarding a pixel that is occluded. In one exemplary implementation, the depth raster operation is done at a faster rate than a color raster operation. Pixels that pass the depth raster operation are checked for screen coincidence. Pixels with screen coincidence are stalled and pixels without screen coincidence are forwarded to lower stages of the pipeline. The lower stages of the pipeline are programmable and pixel flight time can vary (e.g., can include multiple passes through the lower stages). Execution through the lower stages is directed by a program sequencer which also directs notification to the pixel flight tracking when a pixel is done processing.
    Type: Grant
    Filed: December 17, 2007
    Date of Patent: October 14, 2014
    Assignee: NVIDIA Corporation
    Inventors: Brian Cabral, Edward A. Hutchins, Christopher Donham
  • Patent number: 8856499
    Abstract: An apparatus is disclosed. The apparatus comprises an instruction mapping table, which includes a plurality of instruction counts and a plurality of instruction pointers each corresponding with one of the instruction counts. Each instruction pointer identifies a next instruction for execution. Further, each instruction count specifies a number of instructions to execute beginning with the next instruction. The apparatus also has a data operation unit adapted to receive a data group and adapted to execute on the received data group the number of instructions specified by a current instruction count of the instruction mapping table beginning with the next instruction identified by a current instruction pointer of the instruction mapping table before proceeding with another data group.
    Type: Grant
    Filed: August 15, 2007
    Date of Patent: October 7, 2014
    Assignee: Nvidia Corporation
    Inventors: Michael J. M. Toksvig, Justin M. Mahan, Edward A. Hutchins, Tyson J. Bergland, James T. Battle, Ashok Srinivasan
  • Patent number: 8775777
    Abstract: Sourcing immediate values from a very long instruction word includes determining if a VLIW sub-instruction expansion condition exists. If the sub-instruction expansion condition exists, operation of a portion of a first arithmetic logic unit component is minimized. In addition, a part of a second arithmetic logic unit component is expanded by utilizing a block of a very long instruction word, which is normally utilized by the first arithmetic logic unit component, for the second arithmetic logic unit component if the sub-instruction expansion condition exists.
    Type: Grant
    Filed: August 15, 2007
    Date of Patent: July 8, 2014
    Assignee: NVIDIA Corporation
    Inventors: Tyson J. Bergland, Craig M. Okruhlica, Michael J. M. Toksvig, Justin M. Mahan, Edward A. Hutchins
  • Patent number: 8749576
    Abstract: A rasterizer stage configured to implement multiple interpolators for graphics pipeline. The rasterizer stage includes a plurality of simultaneously operable low precision interpolators for computing a first set of pixel parameters for pixels of a geometric primitive and a plurality of simultaneously operable high precision interpolators for computing a second set of pixel parameters for pixels of the geometric primitive. The rasterizer stage also includes an output mechanism coupled to the interpolators for routing computed pixel parameters into a memory array. Parameters may be programmably assigned to the interpolators and the results thereof may be programmably assigned to portions of a pixel packet.
    Type: Grant
    Filed: July 6, 2006
    Date of Patent: June 10, 2014
    Assignee: Nvidia Corporation
    Inventors: Edward A. Hutchins, Brian K. Angell
  • Patent number: 8743142
    Abstract: A present invention pixel processing system and method permit complicated three dimensional images to be rendered with shallow graphics pipelines including reduced gate counts and facilitates power conservation by utilizing a single unified data fetch stage (e.g., unified data fetch module) that retrieves a variety of different pixel surface attribute values (e.g., depth, color, and/or texture values) in a single stage. Different types of pixel surface attribute data (e.g., depth, color, texture) associated with multiple graphics processing functions (e.g., color blending, texture mapping, etc.) are retrieved in the single unified data fetch graphics pipeline stage. The pixel surface attribute values may be placed in corresponding variable fields of a pixel packet row. The pixel packet rows including the pixel surface attribute values are forwarded to downstream graphics pipeline stages (e.g., an arithmetic logic pipestage).
    Type: Grant
    Filed: May 14, 2004
    Date of Patent: June 3, 2014
    Assignee: Nvidia Corporation
    Inventors: Edward A. Hutchins, Brian K. Angell
  • Patent number: 8736624
    Abstract: Detailed herein are approaches to enabling conditional execution of instructions in a graphics pipeline. In one embodiment, a method of conditional execution controller operation is detailed. The method involves configuring the conditional execution controller to evaluate conditional test. A pixel data packet is received into the conditional execution controller, and evaluated, with reference to the conditional test. A conditional execution flag, associated with the pixel data packet, is set, to indicate whether a conditional operation should be performed on the pixel data packet.
    Type: Grant
    Filed: August 15, 2007
    Date of Patent: May 27, 2014
    Assignee: NVIDIA Corporation
    Inventors: Justin Michael Mahan, Edward A. Hutchins
  • Patent number: 8736628
    Abstract: A present invention pixel processing system and method permit complicated three dimensional images to be rendered with shallow graphics pipelines including reduced gate counts and facilitates power conservation by utilizing a single unified data fetch stage (e.g., unified data fetch module) that retrieves a variety of different pixel surface attribute values for different attribute types (e.g., depth, color, and/or texture values) in a single stage. Different types of pixel surface attribute data (e.g., depth, color, texture) associated with multiple graphics processing functions (e.g., color blending, texture mapping, etc.) are retrieved in the single unified data fetch graphics pipeline stage. The pixel packet rows including the pixel surface attribute values are forwarded to other graphics pipeline stages for single thread processing (e.g. to a universal arithmetic logic unit capable of performing multiple graphics functions on the pixel surface attribute values).
    Type: Grant
    Filed: May 14, 2004
    Date of Patent: May 27, 2014
    Assignee: Nvidia Corporation
    Inventors: Edward A. Hutchins, Brian K. Angell
  • Patent number: 8736620
    Abstract: A present invention pixel processing system and method permit complicated three dimensional images to be rendered with shallow graphics pipelines including reduced gate counts and also facilitates power conservation. Pixel packet information includes pixel surface attribute values are retrieved in a single unified data fetch stage. At a data fetch pipestage a determination may be made if the pixel packet information contributes to an image display presentation (e.g., a depth comparison of Z values is performed determine if the pixel is occluded). A pixel packet status indicator (e.g., a kill bit) is set in the sideband portion of a pixel packet and the pixel packet is forwarded for processing in accordance with the pixel packet status indicator.
    Type: Grant
    Filed: May 14, 2004
    Date of Patent: May 27, 2014
    Assignee: Nvidia Corporation
    Inventors: Edward A. Hutchins, Brian K. Angell
  • Patent number: 8711155
    Abstract: A pixel processing system and method which permits rendering of complicated three dimensional images using a shallow graphics pipeline including reduced gate counts and low power operation. Pixel packet information includes pixel surface attribute values retrieved in a single unified data fetch stage. A determination is made if the pixel packet information contributes to an image display presentation (e.g., a depth comparison of Z values may be performed). The pixel packet information processing is handled in accordance with results of the determining. The pixel surface attribute values and pixel packet information are removed from further processing if the pixel surface attribute values are occluded. In one exemplary implementation, the pixel packet includes a plurality of rows and the handling is coordinated for the plurality of rows.
    Type: Grant
    Filed: May 14, 2004
    Date of Patent: April 29, 2014
    Assignee: Nvidia Corporation
    Inventors: Edward A. Hutchins, Brian K. Angell
  • Patent number: 8698819
    Abstract: Embodiments for programming a graphics pipeline, and modules within the graphics pipeline, are detailed herein. One embodiment described a method of implementing software assisted shader merging for a graphics pipeline. The method involves accessing a first shader program in memory, and generating a first shader instruction from that program. This first instruction is loaded into an instruction table at a first location, indicated by an offset register. A second shader program in memory is then accessed, and used to generate a second shader instruction. The second shader instruction is loaded into the instruction table at a second location indicated by the offset register.
    Type: Grant
    Filed: August 15, 2007
    Date of Patent: April 15, 2014
    Assignee: NVIDIA Corporation
    Inventors: Justin Michael Mahan, Edward A. Hutchins
  • Patent number: 8659601
    Abstract: A method for loading and executing an indeterminate length shader program. The method includes accessing a first portion of a shader program in graphics memory of a GPU and loading instructions from the first portion into a plurality of stages of the GPU to configure the GPU for program execution. A group of pixels is then processed in accordance with the instructions from the first portion. A second portion of the shader program is accessed in graphics memory of the GPU and instructions from the second portion are loaded into the plurality of stages of the GPU to configure the GPU for program execution. The group of pixels are then processed in accordance with the instructions from the second portion.
    Type: Grant
    Filed: August 15, 2007
    Date of Patent: February 25, 2014
    Assignee: NVIDIA Corporation
    Inventors: Justin Michael Mahan, Edward A. Hutchins, Ewa M. Kubalska, James T. Battle
  • Patent number: 8599208
    Abstract: An arithmetic logic stage in a graphics processor unit includes arithmetic logic units (ALUs) and global registers. The registers contain global values for a group of pixels. Global values may be read from any of the registers, regardless of which of the pixels is being operated on by the ALUs. However, when writing results of the ALU operations, only some of the global registers are candidates to be written to, depending on the pixel number. Accordingly, overwriting of data is prevented.
    Type: Grant
    Filed: August 15, 2007
    Date of Patent: December 3, 2013
    Assignee: Nvidia Corporation
    Inventors: Tyson J. Bergland, Craig M. Okruhlica, Edward A. Hutchins, Michael J. M. Toksvig, Justin M. Mahan
  • Patent number: 8594441
    Abstract: Image-based data, such as a block of texel data, is accessed. The data includes sets of color component values. A luminance value is computed for each set of color components values, generating a range of luminance values. A first set and a second set of color component values that correspond to the minimum and maximum luminance values are selected from the sets of color component values. A third set of color component values can be mapped to an index that identifies how the color component values of the third set can be decoded using the color component values of the first and second sets. The index value is selected by determining where the luminance value for the third set lies in the range of luminance values.
    Type: Grant
    Filed: September 12, 2006
    Date of Patent: November 26, 2013
    Assignee: Nvidia Corporation
    Inventors: Gary C. King, Edward A. Hutchins, Michael J. M. Toksvig
  • Patent number: 8564598
    Abstract: In a graphics pipeline of a graphics processor, a method for a unified primitive description for rasterization. The method includes receiving a group of primitives from a graphics application, wherein the group includes different types of primitives and the types of primitives include line primitives, point primitives and triangle primitives. For each of the types of primitives, the method includes generating a corresponding parallelogram, wherein the parallelogram has four sides disposed along an x-axis and a y-axis, and computing an inside y-axis mid point and an outside y-axis mid point based on the four sides. The parallelogram is controlled to represent to each of the primitive types respectively by adjusting a location of the inside y-axis mid point or the outside y-axis mid point.
    Type: Grant
    Filed: December 10, 2007
    Date of Patent: October 22, 2013
    Assignee: Nvidia Corporation
    Inventors: Edward A. Hutchins, William T. Warner, Jr., Christopher D. S. Donham
  • Patent number: 8547395
    Abstract: A computer-implemented graphics system has a mode of operation in which primitive coverage information is generated by a rasterizer for real sample locations and virtual sample locations for use in anti-aliasing. An individual pixel includes a single real sample location and at least one virtual sample location. If the coverage information cannot be changed by a pixel shader, then the rasterizer can write the coverage information to a framebuffer. If, however, the coverage information can be changed by the shader, then the rasterizer sends the coverage information to the shader.
    Type: Grant
    Filed: December 20, 2006
    Date of Patent: October 1, 2013
    Assignee: NVIDIA Corporation
    Inventors: Edward A. Hutchins, Christopher D. S. Donham, Gary C. King, Michael J. M. Toksvig
  • Patent number: 8441497
    Abstract: Vertex data can be accessed for a graphics primitive. The vertex data includes homogeneous coordinates for each vertex of the primitive. The homogeneous coordinates can be used to determine perspective-correct barycentric coordinates that are normalized by the area of the primitive. The normalized perspective-correct barycentric coordinates can be used to determine an interpolated value of an attribute for the pixel. These operations can be performed using adders and multipliers implemented in hardware.
    Type: Grant
    Filed: August 7, 2007
    Date of Patent: May 14, 2013
    Assignee: Nvidia Corporation
    Inventors: Edward A. Hutchins, Michael J. M. Toksvig
  • Patent number: 8432394
    Abstract: A method of computing z parameters for pixels of a geometric primitive. The method includes the step of accessing the geometric primitive comprising a plurality of vertices, wherein each vertex comprises a plurality of associated parameters including a depth parameter, z. During rasterization of the geometric primitive, respective z values are interpolated for each pixel of the geometric primitive. Each z value is represented within a predefined numerical range which substantially corresponds to a depth range between a near plane and a far plane related to pixel rendering. During the interpolating, the z values are allowed to exceed the predefined numerical range and roll over within the predefined numerical range. A multi-bit indicator is used to indicate when a z value for a pixel is outside of the depth range.
    Type: Grant
    Filed: May 14, 2004
    Date of Patent: April 30, 2013
    Assignee: Nvidia Corporation
    Inventor: Edward A. Hutchins