Patents by Inventor Franklin C. Crow

Franklin C. Crow 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).

  • Publication number: 20110090220
    Abstract: One embodiment of the present invention sets forth a technique for rendering graphics primitives in parallel while maintaining the API primitive ordering. Multiple, independent geometry units perform geometry processing concurrently on different graphics primitives. A primitive distribution scheme delivers primitives concurrently to multiple rasterizers at rates of multiple primitives per clock while maintaining the primitive ordering for each pixel. The multiple, independent rasterizer units perform rasterization concurrently on one or more graphics primitives, enabling the rendering of multiple primitives per system clock.
    Type: Application
    Filed: October 15, 2009
    Publication date: April 21, 2011
    Inventors: Steven E. Molnar, Emmett M. Kilgariff, Johnny S. Rhoades, Timothy John Purcell, Sean J. Treichler, Ziyad S. Hakura, Franklin C. Crow, James C. Bowman
  • Patent number: 7843468
    Abstract: In a raster stage of a graphics pipeline, a method for accelerated start tile rasterization. The method includes defining a window for clipping a generated image and receiving a graphics primitive for rasterization in a raster stage of a graphics processor. A binary search related to the window is performed to determine a start tile having at least a partial coverage of the graphics primitive, wherein the start tile comprises a plurality of pixels. Based upon the start tile, the raster stage rasterizes the graphics primitive by generating a plurality of adjacent tiles having at least a partial coverage of the graphics primitive.
    Type: Grant
    Filed: July 26, 2006
    Date of Patent: November 30, 2010
    Assignee: Nvidia Corporation
    Inventors: Franklin C. Crow, Jeffrey R. Sewall
  • Patent number: 7804499
    Abstract: The current invention involves new systems and methods for providing variable rasterization performance suited to the size and shape of the primitives being rendered. Portions of pixel tiles that are fully covered by a graphics primitive are encoded and processed by the system as rectangles, rather than expanding to explicit samples. This accelerates the rendering of large primitives without increasing the computation resources used for rasterization. In some embodiments, these fully-covered regions can be rendered compressed without ever expanding into samples.
    Type: Grant
    Filed: August 28, 2006
    Date of Patent: September 28, 2010
    Assignee: NVIDIA Corporation
    Inventors: Steven E. Molnar, Franklin C. Crow, Blaise A. Vignon
  • Patent number: 7791617
    Abstract: A method for rendering adjacent polygons. The method includes determining when a first polygon and a second polygon have an abutting edge. If an abutting edge exists, a majority status is assigned to a pixel on the abutting edge. A first color of the first polygon or a second color of the second polygon is then allocated to the pixel in accordance with the majority status.
    Type: Grant
    Filed: December 19, 2005
    Date of Patent: September 7, 2010
    Assignee: Nvidia Corporation
    Inventors: Franklin C. Crow, John S. Montrym
  • Publication number: 20100007672
    Abstract: The present invention provides a raster module. The rater module comprises a coarse raster for rasterizing input data; and a fine raster receiving data from the coarse raster, wherein the fine raster comprises a buffer for buffering data from the coarse raster. The present invention provides a small raster unit while maintaining the performance without lost in other functions, and therefore achieves cost reduction in chip manufacturing.
    Type: Application
    Filed: February 10, 2009
    Publication date: January 14, 2010
    Inventors: Xiang Li, Yan Zhou, Rongquan You, Franklin C. Crow
  • Patent number: 7554546
    Abstract: Stippled lines are drawn by evaluating a distance function for a set of points within the area of a stippled line. The distance function gives a distance value proportional to the distance from a point to the end of the stippled line. Using the point's distance value, a pattern index value defines a correspondence between a point and at least one stipple pattern bit. The value of pattern bits are applied to the points on the stippled line, masking the points such that only a portion of the set of points are displayed or determining intensity values according to the position of the points within the stipple pattern. A distance function may be an edge equation associated with the line end or a segment of a polyline. The distance function can be evaluated for the set of points in any order, allowing portions of a stippled line to be drawn in parallel.
    Type: Grant
    Filed: April 13, 2007
    Date of Patent: June 30, 2009
    Assignee: NVIDIA Corporation
    Inventors: Franklin C. Crow, Douglas A. Voorhies, John M. Danskin
  • Publication number: 20090153573
    Abstract: Techniques for handling an interrupt in the rasterizer, in accordance with embodiment of the present technology, start with rasterizing one or more primitives of a first context. If an interrupt is received, the tile count of tiles of a current primitive that have been coarse rasterized is saved in a backing store. After storing the tile count, the one or more primitives of a second context are rasterized. After the second context is served, the coarse rasterization of the current primitive of the previous context is rerun without output until the tile corresponding to the stored tile count is coarse rasterized. Thereafter, rasterization of the current primitive of the first context from the next tile beyond the stored tile count is continued until rasterization is completed or another interrupt is received and the above described process is repeated.
    Type: Application
    Filed: December 17, 2007
    Publication date: June 18, 2009
    Inventors: Franklin C. Crow, Jeffrey R. Sewall
  • Publication number: 20090153571
    Abstract: Techniques for handling an interrupt in the rasterizer, in accordance with embodiment of the present technology, start with rasterizing one or more primitives of a first context. If an interrupt is received, state information of the rasterizer is saved in a backing store after coarse rasterizing a given tile. After storing the raster state information, the one or more primitives of a second context are rasterized. After the second context is served, the raster state information of the first context is restored and rasterization of the one or more primitives of the first context is restarted.
    Type: Application
    Filed: December 17, 2007
    Publication date: June 18, 2009
    Inventors: Franklin C. Crow, Jeffrey R. Sewall
  • Publication number: 20090122083
    Abstract: The edge evaluation technique, in accordance with one embodiment of the present technology, includes determining a number of edges of a given primitive to be evaluated. The technique also includes sequencing evaluation of a first edge by a first edge evaluation circuit and a second edge by a second edge evaluation circuit during a first clock cycle. The technique further includes sequencing evaluation of a third edge by the first edge evaluation circuit and a fourth edge by the second edge evaluation circuit during a second clock cycle if three or more edges are to be evaluated.
    Type: Application
    Filed: December 17, 2007
    Publication date: May 14, 2009
    Inventors: Blaise Vignon, Franklin C. Crow
  • Patent number: 7483029
    Abstract: In one embodiment, the present invention is implemented as a GPU configured for traversing pixels of an area. The GPU includes a set-up unit for generating polygon descriptions and a rasterizer unit coupled to the set-up unit for rasterizing the polygon descriptions. The rasterizer unit is configured to traverse a plurality of pixels of an image using a first boustrophedonic pattern along a predominant axis, and during the traversal using the first boustrophedonic pattern, traverse a plurality of pixels of the image using a second boustrophedonic pattern, wherein the second boustrophedonic pattern is nested within the first boustrophedonic pattern.
    Type: Grant
    Filed: December 15, 2005
    Date of Patent: January 27, 2009
    Assignee: NVIDIA Corporation
    Inventors: Franklin C. Crow, Jeffrey R. Sewall
  • Publication number: 20080024522
    Abstract: In a raster stage of a graphics pipeline, a method for accelerated start tile rasterization. The method includes defining a window for clipping a generated image and receiving a graphics primitive for rasterization in a raster stage of a graphics processor. A binary search related to the window is performed to determine a start tile having at least a partial coverage of the graphics primitive, wherein the start tile comprises a plurality of pixels. Based upon the start tile, the raster stage rasterizes the graphics primitive by generating a plurality of adjacent tiles having at least a partial coverage of the graphics primitive.
    Type: Application
    Filed: July 26, 2006
    Publication date: January 31, 2008
    Inventors: Franklin C. Crow, Jeffrey R. Sewall
  • Publication number: 20080024497
    Abstract: In a raster stage of a graphics processor, a method for tile based precision rasterization. The method includes receiving a graphics primitive for rasterization in a raster stage of a graphics processor and rasterizing the graphics primitive at a first level precision to generate a plurality of tiles of pixels. The tiles are then rasterized at a second level precision to generate covered pixels. The covered pixels are then output for rendering operations in a subsequent stage of the graphics processor.
    Type: Application
    Filed: July 26, 2006
    Publication date: January 31, 2008
    Inventors: Franklin C. Crow, Blaise A. Vignon
  • Publication number: 20070296726
    Abstract: In a raster stage of a graphics pipeline, a method for rasterizing non-rectangular tile groups. The method includes receiving a graphics primitive for rasterization in a raster stage of a graphics processor. The graphics primitive is rasterized at a first level by generating a non-rectangular footprint comprising a set of pixels related to the graphics primitive. The graphics primitive is then rasterized at a second level by accessing the set of pixels and determining covered pixels out of the set of pixels. The raster stage subsequently outputs the covered pixels for rendering operations in a subsequent stage of the graphics processor.
    Type: Application
    Filed: June 23, 2006
    Publication date: December 27, 2007
    Inventors: Justin S. Legakis, Franklin C. Crow, John S. Montrym, Douglas A. Voorhies
  • Publication number: 20070296725
    Abstract: In a raster stage of a graphics processor, a method for parallel fine rasterization. The method includes receiving a graphics primitive for rasterization in a raster stage of a graphics processor. The graphics primitive is rasterized at a first level to generate a plurality of tiles of pixels. The titles are subsequently rasterized at a second level by allocating the tiles to an array of parallel second-level rasterization units to generate covered pixels. The covered pixels are then output for rendering operations in a subsequent stage of the graphics processor.
    Type: Application
    Filed: June 23, 2006
    Publication date: December 27, 2007
    Inventors: Walter R. Steiner, Franklin C. Crow, Craig M. Wittenbrink, Roger L. Allen, Douglas A. Voorhies
  • Patent number: 7221368
    Abstract: Stippled lines are drawn by evaluating a distance function for a set of points within the area of a stippled line. The distance function gives a distance value proportional to the distance from a point to the end of the stippled line. Using the point's distance value, a pattern index value defines a correspondence between a point and at least one stipple pattern bit. The value of pattern bits are applied to the points on the stippled line, masking the points such that only a portion of the set of points are displayed or determining intensity values according to the position of the points within the stipple pattern. A distance function may be an edge equation associated with the line end or a segment of a polyline. The distance function can be evaluated for the set of points in any order, allowing portions of a stippled line to be drawn in parallel.
    Type: Grant
    Filed: December 18, 2003
    Date of Patent: May 22, 2007
    Assignee: NVIDIA Corporation
    Inventors: Franklin C. Crow, Douglas A. Voorhies, John M. Danskin
  • Patent number: 7081902
    Abstract: A graphics processor performed gamma correction of the coverage values of pixels. In one embodiment, a gamma correction factor is written into a run-time loadable lookup table of the graphics processor. The gamma corrected coverage values may be used in an anti-aliasing process to form smoothed primitives.
    Type: Grant
    Filed: September 24, 2003
    Date of Patent: July 25, 2006
    Assignee: NVIDIA Corporation
    Inventors: Franklin C. Crow, John S. Montrym, Matthew J. Craighead