Patents by Inventor James M. Van Dyke

James M. Van Dyke 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: 7340577
    Abstract: A method and system for efficiently executing reads after writes in a memory. The system includes a memory controller and a memory core interfacing with the memory controller. The memory operates with a read data latency and a similar write data latency, and the memory immediately processes a read in a read-after-write situation. The system further includes a control circuit for controlling the memory and detecting an address collision between the read and a previously issued write and, in response thereto, stalling the memory by delaying issuance of the read to the memory until after the previously issued write completes.
    Type: Grant
    Filed: May 29, 2002
    Date of Patent: March 4, 2008
    Assignee: NVIDIA Corporation
    Inventors: James M. Van Dyke, John S. Montrym
  • Publication number: 20070294470
    Abstract: A memory interface coupling a plurality of clients to a memory having memory banks provides independent arbitration of activate decisions and read/write decisions. In one implementation, precharge decisions are also independently arbitrated.
    Type: Application
    Filed: December 19, 2006
    Publication date: December 20, 2007
    Applicant: NVIDIA Corporation
    Inventors: JAMES M. VAN DYKE, Brian D. Hutsell
  • Patent number: 7286134
    Abstract: A tiled graphics memory permits z data and stencil data to be stored in different portions of a tile. The tile may be further divided into data sections, each of which may have a byte size corresponding to a memory access size.
    Type: Grant
    Filed: December 17, 2003
    Date of Patent: October 23, 2007
    Assignee: NVIDIA Corporation
    Inventors: James M. Van Dyke, John S. Montrym, Steven E. Molnar
  • Patent number: 7080194
    Abstract: A method and system for arbitrating among memory access commands from clients seeking access to a DRAM or other memory, and an arbiter for use in implementing such method or system. When arbitrating among competing commands that include at least one command of the same read/write type as the current command, the arbiter selects a command of the same read/write type as the current command. In a wait mode, when arbitrating among a set of the commands that includes no command of the same read/write type as the current command, the arbiter prevents each command in the set from reaching the memory. Preferably, after operating in the wait mode for a limited time, the arbiter enters another arbitration mode in which it can select a command of the opposite read/write type as the current command. Preferably, the arbiter is implemented to be operable in any of multiple operating modes. For example, it can have separately programmable wait times for “read to write” and “write to read” situations.
    Type: Grant
    Filed: September 16, 2004
    Date of Patent: July 18, 2006
    Assignee: NVIDIA Corporation
    Inventor: James M. Van Dyke
  • Patent number: 7068272
    Abstract: A system, method and article of manufacture are provided for early Z-value based culling prior to pixel rendering in a graphics pipeline. In initial stages of processing, Z-value culling is performed on at least one pixel. Thereafter, the pixel is conditionally rendered. Whether the pixel is rendered or not is conditioned on results of the Z-value culling. By culling, or removing, the pixels that do not meet certain criteria prior to rendering, much processing is avoided in the rendering portion of the graphics pipeline.
    Type: Grant
    Filed: May 31, 2000
    Date of Patent: June 27, 2006
    Assignee: NVIDIA Corporation
    Inventors: Douglas A. Voorhies, James M. Van Dyke, Jim E. Margeson, III
  • Patent number: 6999088
    Abstract: A graphics memory includes a plurality of memory partitions. A memory controller organizes tile data into subpackets that are assigned to subpartitions to improve memory transfer efficiency. Subpackets of different tiles may be further assigned to subpartitions in an interleaved fashion to improve memory operations such as fast clear and compression.
    Type: Grant
    Filed: December 23, 2003
    Date of Patent: February 14, 2006
    Assignee: NVIDIA Corporation
    Inventors: James M. Van Dyke, John S. Montrym
  • Patent number: 6961057
    Abstract: A computer graphics system provides for processing image data including Z data for use in displaying three-dimensional images on a display unit. The system includes: a depth buffer providing for temporary storage of Z data; and a graphics processing unit having a graphics engine for generating image data including Z data, and a memory interface unit communicatively coupled to the graphics engine and communicatively coupled to the depth buffer via a depth buffer interface. The graphics processing unit is operative to compress at least a portion of the generated Z data, to write the compressed portion of Z data to the depth buffer via the depth buffer interface in a compressed format, to read portions of compressed Z data from the depth buffer via the depth buffer interface, and to decompress the compressed Z data read from the buffer.
    Type: Grant
    Filed: October 12, 2000
    Date of Patent: November 1, 2005
    Assignee: NVIDIA Corporation
    Inventors: James M. Van Dyke, James E. Margeson, III
  • Patent number: 6957298
    Abstract: A memory controller system is provided including a plurality of memory controller subsystems each coupled between memory and one of a plurality of computer components. Each memory controller subsystem includes at least one queue for managing pages in the memory. In use, each memory controller subsystem is capable of being loaded from the associated computer component independent of the state of the memory. Since high bandwidth and low latency are conflicting requirements in high performance memory systems, the present invention separates references from various computer components into multiple command streams. Each stream thus can hide activate bank preparation commands within its own stream for maximum bandwidth. A page context switch technique may be employed that allows instantaneous switching from one look ahead stream to another to allow low latency and high bandwidth while preserving maximum bank state from the previous stream.
    Type: Grant
    Filed: September 8, 2003
    Date of Patent: October 18, 2005
    Assignee: NVIDIA Corporation
    Inventors: James M. Van Dyke, Nicholas J. Foskett, Brad Simeral, Sean Treichler
  • Patent number: 6894689
    Abstract: A system, method and computer program product are provided for avoiding reading z-values in a graphics pipeline. Initially, near z-values are stored which are each representative of a near z-value on an object in a region. Such region is defined by a tile and a coverage mask therein. Thereafter, the stored near z-values are compared with far z-values computed for other objects in the region. Such comparison indicates whether an object is visible in the region. Based on the comparison, z-values previously stored for image samples in the region are conditionally read from memory.
    Type: Grant
    Filed: September 8, 2003
    Date of Patent: May 17, 2005
    Assignee: NVIDIA Corporation
    Inventors: Edward C. Greene, Douglas A. Voorhies, Paolo Sabella, John M. Danskin, James M. Van Dyke
  • Patent number: 6853382
    Abstract: A memory system having a number of partitions each operative to independently service memory requests from a plurality of memory clients while maintaining the appearance to the memory client of a single partition memory subsystem. The memory request specifies a location in the memory system and a transfer size. A partition receives input from an arbiter circuit which, in turn, receives input from a number of client queues for the partition. The arbiter circuit selects a client queue based on a priority policy such as round robin or least recently used or a static or dynamic policy. A router receives a memory request, determines the one or more partitions needed to service the request and stores the request in the client queues for the servicing partitions.
    Type: Grant
    Filed: October 13, 2000
    Date of Patent: February 8, 2005
    Assignee: NVIDIA Corporation
    Inventors: James M. Van Dyke, John S. Montrym, Steven E. Molnar
  • Patent number: 6829689
    Abstract: A method and system for arbitrating among memory access commands from clients seeking access to a DRAM or other memory, and an arbiter for use in implementing such method or system. When arbitrating among competing commands that include at least one command of the same read/write type as the current command, the arbiter selects a command of the same read/write type as the current command. In a wait mode, when arbitrating among a set of the commands that includes no command of the same read/write type as the current command, the arbiter prevents each command in the set from reaching the memory. Preferably, after operating in the wait mode for a limited time, the arbiter enters another arbitration mode in which it can select a command of the opposite read/write type as the current command. Preferably, the arbiter is implemented to be operable in any of multiple operating modes. Preferably, the arbiter monitors for occurrence of potential page fault conditions.
    Type: Grant
    Filed: February 12, 2002
    Date of Patent: December 7, 2004
    Assignee: NVIDIA Corporation
    Inventor: James M. Van Dyke
  • Patent number: 6825847
    Abstract: A system and method are provided for the compression of pixel data for communicating the same with a frame buffer. Initially, a plurality of samples is received. It is first determined whether the samples are reducible, in that a single sample value can take the place of a plurality of sample values. If it is determined that the samples are capable of being reduced, the samples are reduced. Reduction is a first stage of compression. It is then determined whether the samples are capable of being compacted. The samples are then compacted if it is determined that the samples are capable of being compacted. Compaction is a second stage of compression. The samples are then communicated with a frame buffer, in compressed form, if possible, in uncompressed form if not. Subsequent reading of frame buffer data takes advantage of the smaller transfer size of compressed data. Compressed data is uncompacted and expanded as necessary for further processing or display.
    Type: Grant
    Filed: November 30, 2001
    Date of Patent: November 30, 2004
    Assignee: NVIDIA Corporation
    Inventors: Steven E. Molnar, Bengt-Olaf Schneider, John Montrym, James M. Van Dyke, Stephen D. Lew
  • Patent number: 6734861
    Abstract: A system, method and article of manufacture are afforded for providing an interlock module in a graphics pipeline. initially, first information is received indicative of a first set of pixels that overlap a primitive. Such first set of pixels are currently being processed in the graphics pipeline. Also received is second information indicative of a second set of pixels that overlap the primitive. The second set of pixels are ready for being inputted in the graphics pipeline for processing. Thereafter, the first information and the second information are evaluated, and the second set of pixels is conditionally processed based on the evaluation.
    Type: Grant
    Filed: October 16, 2000
    Date of Patent: May 11, 2004
    Assignee: nVidia Corporation
    Inventors: James M. Van Dyke, Douglas A. Voorhies, James E. Margeson, III, John Montrym
  • Patent number: 6647456
    Abstract: At memory controller system is provided including a plurality of memory controller subsystems each coupled between memory and one of a plurality of computer components. Each memory controller subsystem includes at least one queue for managing pages in the memory. In use, each memory controller subsystem is capable of being loaded from the associated computer component independent of the state of the memory. Since high bandwidth and low latency are conflicting requirements in high performance memory systems, the present invention separates references from various computer components into multiple command streams. Each stream thus can hide precharge and activate bank preparation commands within its own stream for maximum bandwidth.
    Type: Grant
    Filed: February 23, 2001
    Date of Patent: November 11, 2003
    Assignee: NVIDIA Corporation
    Inventors: James M. Van Dyke, Nicholas J. Foskett, Brad Simeral, Sean Treichler
  • Patent number: 6646639
    Abstract: A system, method and computer program product are provided for avoiding reading z-values in a graphics pipeline. Initially, near z-values are stored which are each representative of a near z-value on an object in a region. Such region is defined by a tile and a coverage mask therein. Thereafter, the stored near z-values are compared with far z-values computed for other objects in the region. Such comparison indicates whether an object is visible in the region. Based on the comparison, z-values previously stored for image samples in the region are conditionally read from memory.
    Type: Grant
    Filed: June 19, 2001
    Date of Patent: November 11, 2003
    Assignee: NVIDIA Corporation
    Inventors: Edward C. Greene, Douglas A. Voorhies, Paolo Sabella, John M. Danskin, James M. Van Dyke