Coprocessor (e.g., Graphic Accelerator) Patents (Class 345/503)
  • Patent number: 7079146
    Abstract: An image producing device includes two or more vector processors for conducting geometry processing for expressing the respective images in parallel to produce graphic element lists, a graphic processor for conducting graphic processing on the basis of the graphic element lists, and an arbitrator. The graphic processor includes two buffers for storing graphic contexts corresponding to the graphic element lists together with identification information on the graphic contexts, and a unit for reading a specific graphic context from the buffers upon inputting the graphic element lists from the arbitrator to conduct the graphic processing. Each of the vector processors produces the graphic element lists having, as their contents, the identification information of the graphic context specified by the geometry processing assigned to each of the vector processors.
    Type: Grant
    Filed: March 1, 2001
    Date of Patent: July 18, 2006
    Assignee: Sony Computer Entertainment Inc.
    Inventors: Masayoshi Tanaka, Teiji Yutaka, Masakazu Suzuoki
  • Patent number: 7057620
    Abstract: A method and apparatus for graphics rendered in a mobile device includes a command queue capable of receiving a plurality of rendering commands, a generate_event command and a wait_until command. The wait_until command corresponds to the completion of a specific operation indicated by the generate_event command. The method and apparatus further includes a direct memory access device operably coupled to the command queue, wherein the DMA device is capable of receiving a memory access command in response to the generate_event command. A memory device is capable of storing rendering information, wherein the memory device is accessible in response to the generate_event command. Furthermore, the method and apparatus includes the command queue capable of queuing the rendering commands in response to the wait_until command until the completion of the operation indicated by the generate_event command.
    Type: Grant
    Filed: August 25, 2003
    Date of Patent: June 6, 2006
    Assignee: ATI Technologies Inc.
    Inventors: Milivoje Aleksic, Adrian Hartog
  • Patent number: 7053900
    Abstract: A personal computer system includes a core logic unit, a graphics accelerator, a first tile converter, a local memory, a second tile converter and a system memory. The core logic unit outputs first image data in a linear mode. The graphics accelerator is in communication with the core logic unit for processing the first image data into second image data in a linear mode. The first tile converter is in communication with the graphics accelerator for converting the second image data into third image data in a tile mode. The local memory is in communication with the first tile converter for storing therein the third image data. The second tile converter is in communication with the core logic unit for converting the first image data into fourth image data in a tile mode. The system memory is accessible by the core logic unit, and includes a graphics accelerating memory in communication with the second tile converter for storing therein the fourth image data.
    Type: Grant
    Filed: August 25, 2003
    Date of Patent: May 30, 2006
    Assignee: Via Technologies, Inc.
    Inventor: Eric Chuang
  • Patent number: 7053901
    Abstract: Embodiments of the invention accelerate at least one special purpose processor, such as a GPU, or a driver managing a special purpose processor, by using at least one co-processor. Advantageously, embodiments of the invention are fault-tolerant in that the at least one GPU or other special purpose processor is able to execute all computations, although perhaps at a lower level of performance, if the at least one co-processor is rendered inoperable. The co-processor may also be used selectively, based on performance considerations.
    Type: Grant
    Filed: December 11, 2003
    Date of Patent: May 30, 2006
    Assignee: NVIDIA Corporation
    Inventors: Jen-Hsun Huang, Michael Brian Cox, Ziyad S. Hakura, John S. Montrym, Brad W. Simeral, Brian Keith Langendorf, Blanton Scott Kephart, Franck R. Diard
  • Patent number: 7042459
    Abstract: A computer system that includes a first video controller, a second video controller, and a switching device is provided. The switching device is configured to receive a first signal from the first video controller and a second signal from the second video controller. The switching device is configured to provide the first signal or the second signal to a first display device.
    Type: Grant
    Filed: January 23, 2001
    Date of Patent: May 9, 2006
    Assignee: Dell Products L.P.
    Inventor: William Frederick Sauber
  • Patent number: 7038687
    Abstract: An application processor and coprocessor communicate data, including command and control data, over a separate high-speed datapath. The data may be formatted into a pixel-stream format suitable for sending over the datapath. The application processor may utilize a graphics interface to send pixel-stream formatted data to a graphics interface of the coprocessor over the high-speed datapath rather than over a system bus. The coprocessor may reformat the formatted data to control and drive a graphics display.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: May 2, 2006
    Assignee: Intel Corporation
    Inventors: Lawrence A. Booth, Jr., Joel Rosenzweig, Jeremy Burr
  • Patent number: 7038692
    Abstract: A method for caching data defining vertices of a polygon to be displayed by an input/output display device including the steps of providing an index by a vertex for which data is to be cached, storing data defining attributes of a polygon at a vertex in a cache under the index provided, issuing a command signifying a polygon to be manipulated by indicating indices of the vertices of the polygon for which data is cached.
    Type: Grant
    Filed: October 25, 2000
    Date of Patent: May 2, 2006
    Assignee: NVIDIA Corporation
    Inventors: Curtis Priem, David Kirk
  • Patent number: 7038690
    Abstract: Disclosed are methods and systems for interfaces between video applications and display screens that allow applications to intelligently use display resources of their host device without tying themselves too closely to operational particulars of that host. A graphics arbiter provides display environment information to the video applications and accesses the applications' output to efficiently present that output to the display screen, possibly transforming the output or allowing another application to transform it in the process. The graphics arbiter tells applications the estimated time when the next frame will be displayed on the screen. Applications tailor their output to the estimated display time, thus improving output quality while decreasing resource waste by avoiding the production of “extra” frames. The graphics arbiter tells an application when its output is fully or partially occluded so that the application need not expend resources to draw portions of frames that are not visible.
    Type: Grant
    Filed: February 12, 2002
    Date of Patent: May 2, 2006
    Assignee: Microsoft Corporation
    Inventors: Nicholas P. Wilt, Colin D. McCartney
  • Patent number: 7034839
    Abstract: When a user pushes a scroll-direction key, an ECU obtains, from a memory, a division map corresponding to a division located in a direction designated by the scroll-direction key. The ECU then outputs the division map to a display controller. The display controller compresses the division map to store in a VRAM. At scrolling a displayed image, the display controller expands the compressed division map. It then outputs, to an image signal generator, only a necessary portion of the expanded division map. Thereby, the displayed image can be scrolled at high speed and easily recognizable for the user.
    Type: Grant
    Filed: May 14, 2003
    Date of Patent: April 25, 2006
    Assignee: Denso Corporation
    Inventor: Yoji Morishita
  • Patent number: 7035991
    Abstract: A surface computer includes an address generator for generating an address for adjusting surface region data concerning at least a storage region and a concurrent computer, provided at a subsequent stage of the address generator, having a plurality of unit computers.
    Type: Grant
    Filed: October 2, 2003
    Date of Patent: April 25, 2006
    Assignee: Sony Computer Entertainment Inc.
    Inventor: Akio Ohba
  • Patent number: 7023442
    Abstract: A video routing system including a plurality of video routers VR(0), VR(1), . . . , VR(NR?1) coupled in a linear series. Each video router in the linear series may successively operate on a digital video stream. Each video router provides a synchronous clock along with its output video stream so a link interface buffer in the next video router can capture values from the output video stream in response to the synchronous clock. A common clock signal is distributed to each of the video routers. Each video router buffers the common clock signal to generate an output clock. The output clock is used as a read clock to read data out of the corresponding link interface buffer. The output clock is also used to generate the synchronous clock that is transmitted downstream.
    Type: Grant
    Filed: July 12, 2002
    Date of Patent: April 4, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Nathaniel David Naegle
  • Patent number: 7023431
    Abstract: An API is provided to feed multiple data objects, wherever originated or located at the time of operation, to a 3D graphics chip simultaneously or in parallel. Multiple containers may be fed to a 3D graphics chip memory at the same time. In the case where data is being transmitted to a graphics chip memory, wherein the data includes the same spatial position of pixel(s), but only the orientation or color is changing, the data may be loaded into two separate containers, with a header description understood by the graphics chip and implemented by the graphics API, whereby a single copy of the position data can be loaded into one container, and the changing color or orientation data may be loaded into a second container. Thus, when received by the graphics chip, the data is loaded correctly into register space and processed according to the header description.
    Type: Grant
    Filed: March 1, 2001
    Date of Patent: April 4, 2006
    Assignee: Microsoft Corporation
    Inventors: Charles N. Boyd, Michael A. Toelle
  • Patent number: 6999087
    Abstract: A graphics system may include a frame buffer and a hardware accelerator. The frame buffer may include a sample buffer and a double-buffered display area. The hardware accelerator may be coupled to the frame buffer, and configured (a) to receive primitives, (b) to generate samples for the primitives based on a dynamically adjustable sample density value, (c) to write the samples into the sample buffer, (d) to read the samples from the sample buffer, (e) to filter the samples to generate pixels, (f) to store the pixels in a back buffer of the double-buffered display area. A host computer may be configured (e.g., by means of stored program instructions) to dynamically update programmable registers of the graphics system to reallocate the sample buffer in the frame buffer in response to user input specifying a change in one or more window size parameters.
    Type: Grant
    Filed: March 6, 2003
    Date of Patent: February 14, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Michael G. Lavelle, Justin Michael Mahan
  • Patent number: 6989837
    Abstract: A system and method for processing YCbCr video data stored in a paged memory with reduced page breaks. A method is disclosed for retrieving YCbCr planar video data in 4:2:0 format from paged memory. A page of the paged memory containing Y data is accessed; Y data corresponding to M pixels of video data is then retrieved, where M is a value greater than or equal to two. The retrieved Y data is then stored in a shift register. Similar steps are taken to access, retrieve and store Cb and Cr data. Within the shift register, the Y, Cb, and Cr data is stored as sets of planar video data. The Y, Cb, and Cr data is retrieved from the shift register as a series of pixel data for generating pixels on a video display unit.
    Type: Grant
    Filed: December 16, 2002
    Date of Patent: January 24, 2006
    Assignee: S3 Graphics Co., Ltd.
    Inventors: Jin-Ming (James) Gu, Harish Aepala, Viswanathan Krishnamurthi
  • Patent number: 6975322
    Abstract: A graphics system includes a hardware accelerator and a frame buffer. The frame buffer includes a sample storage area and a double-buffered display pixel area. The hardware accelerator is operable to (a) render a stream of primitives into samples, (b) store the samples into the sample storage area of the frame buffer, (c) read the samples from the sample storage area, (d) filter the samples to generate pixels, and (e) store the pixels into a first buffer of the display pixel area of the frame buffer. Furthermore, the hardware accelerator is operable to perform (a), (b), (c), (d) and (e) one or more times on one or more corresponding streams of primitives to complete a frame of an animation before passing control of the first buffer to a video output processor.
    Type: Grant
    Filed: March 6, 2003
    Date of Patent: December 13, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Michael G. Lavelle
  • Patent number: 6963342
    Abstract: A system and method for assigning operations to multiple pipelines in a graphics system is disclosed. The graphics system may include an arbitration unit coupled to a plurality of calculation pipelines. The arbitration unit is operable to provide graphics operations to selected ones of the calculation pipelines. Each of the calculation pipelines is operable to perform a graphics operation. Each of the calculation pipelines may include digital logic and/or a processing element for performing the graphics operations. An operation may be assigned to a pipeline if the pipeline is performing a low latency operation. A low latency operation may comprise an operation that is performed by one of the calculation pipelines in less time than a pre-determined number of clock cycles.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: November 8, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Mark E. Pascual, Michael G. Lavelle, Nandini Ramani, Patrick Shehane
  • Patent number: 6954206
    Abstract: In order to reduce degradation of the processing performance of the data processor due to use of a part of the main memory as a display frame buffer, when an access request to the memory 200 is generated from the CPU 310, the memory controller 400 holds it once, requests the display controller 560 to stop the access to the memory 200 which is in execution, when data to the access executed already is transferred from the memory 200, holds it, and transfers the access request from the CPU bus 310 which is held by the memory 200. When the access from the CPU bus 310 ends, the memory controller 400 restarts the access stopped in the display controller 560 and passes the held data to the display controller 560.
    Type: Grant
    Filed: September 25, 2003
    Date of Patent: October 11, 2005
    Assignee: Hitachi, Ltd.
    Inventors: Tetsuya Shimomura, Shigeru Matsuo, Koyo Katsura, Tatsuki Inuzuka, Yasuhiro Nakatsuka
  • Patent number: 6952215
    Abstract: A computer-implemented method and system for performing graphics rendering on demand on a graphics subsystem, with only nominal host system operations being required. An application program requiring graphics to be rendered is coded to bound a sequence of calls to basic rendering functions, defining a desired image to be rendered, between begin-program and end-program identifiers. When the application program is executed on a host operating system, a begin-program identifier invokes a function in a graphics device driver in the host system. The function captures the calls to the rendering functions within the application program in a memory as hardware instructions to the graphics subsystem. When the function encounters an end-program identifier, it registers the captured hardware instructions with the host system as an executable program.
    Type: Grant
    Filed: March 31, 1999
    Date of Patent: October 4, 2005
    Assignee: International Business Machines Corporation
    Inventors: Robert J. Devins, Paul M. Schanely
  • Patent number: 6947050
    Abstract: An architecture for storing, addressing and retrieving graphics data from one of multiple memory controllers. In a first embodiment of the invention, one of the memory controllers having an accelerated graphics port (AGP) includes a set of registers defining a range of addresses handled by the memory controller that are preferably to be used for all AGP transactions. The AGP uses a graphics address remapping table (GART) for mapping memory. The GART includes page table entries having translation information to remap virtual addresses falling within the GART range to their corresponding physical addresses. In a second embodiment of the invention, a plurality of the memory controllers have an AGP, wherein each of the plurality of the memory controllers supplies a set of registers defining a range of addresses that is preferably used for AGP transactions.
    Type: Grant
    Filed: May 4, 2004
    Date of Patent: September 20, 2005
    Assignee: Micron Technology Inc.
    Inventor: Joseph Jeddeloh
  • Patent number: 6947047
    Abstract: A programmable, pipelined graphics processor (e.g., a vertex processor) having at least two processing pipelines, a graphics processing system including such a processor, and a pipelined graphics data processing method allowing parallel processing and also handling branching instructions and preventing conflicts among pipelines. Preferably, each pipeline processes data in accordance with a program including by executing branch instructions, and the processor is operable in any one of a parallel processing mode in which at least two data values to be processed in parallel in accordance with the same program are launched simultaneously into multiple pipelines, and a serialized mode in which only one pipeline at a time receives input data values to be processed in accordance with the program (and operation of each other pipeline is frozen).
    Type: Grant
    Filed: June 10, 2002
    Date of Patent: September 20, 2005
    Assignee: NVIDIA Corporation
    Inventors: Simon Moy, John Erik Lindholm
  • Patent number: 6943796
    Abstract: A system and method are disclosed to allow the tiling of sample jitter patterns to be independent of the tiling of clustered graphics accelerators. Each accelerator uses an x,y “bias” offset to shift the origin of the jitter pattern within the sample space region addressed by the accelerator. In this way, multiple accelerators may be programmed so that their jitter patterns integrate into one global pattern without discontinuities at the region boundaries.
    Type: Grant
    Filed: July 22, 2003
    Date of Patent: September 13, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Nathaniel David Naegle
  • Patent number: 6940511
    Abstract: A pixel is textured by storing a first texel reference value, a second texel reference value, and texel mapping values where each texel mapping value represents a k-tuple of (ternary) references to the first texel reference value, the second texel reference value and a third texel reference value to thereby represent a block of texels. A pixel value for the pixel is generated from the stored texel values and the pixel is displayed responsive to the generated pixel value. In some embodiments, respective pluralities of texel reference values and texel mapping values that map thereto are stored for respective ones of a plurality of overlapping blocks of texels. In further embodiments, a first mipmap value for a pixel is bilinearly interpolated from the retrieved texel values for the set of nearest neighbor texels. A second mipmap value for the pixel is generated by averaging the retrieved texel values for the set of nearest neighbor texels.
    Type: Grant
    Filed: December 20, 2002
    Date of Patent: September 6, 2005
    Assignee: Telefonaktiebolaget L M Ericsson (Publ)
    Inventors: Tomas Akenine-Möller, Jacob Ström
  • Patent number: 6940516
    Abstract: An improved raster engine adapted to render video data from a frame buffer to one of a plurality of disparate displays is disclosed which comprises apparatus for detecting one or more video underflow conditions. The raster engine includes a first in first out (FIFO) memory, which obtains video data from a frame buffer and provides video data to a video pipeline, along with input and output counters associated with the FIFO memory. A control logic system is associated with the FIFO memory and adapted to provide an underflow indication according to the input and output counter values. A method for detecting video underflow in a video controller raster engine is also disclosed.
    Type: Grant
    Filed: April 18, 2001
    Date of Patent: September 6, 2005
    Assignee: Rockwell Automation Technologies, Inc.
    Inventor: Gary Dan Dotson
  • Patent number: 6933945
    Abstract: A non-blocking cache for texture mapping is implemented by separating Cache Tags from Cache Data. Multiple requests for data may be processed in parallel without strict ordering or synchronization. Separating Cache Tags and Cache Data results in a texture memory cache design that preempts stalling which would otherwise occur in case of cache-misses. Multiple Cache Tags with corresponding respective system memory controllers and Data Cache units allow for simultaneous processing of multiple requests without strict ordering. In preferred embodiments the texture memory cache may also be configured to predict cache misses and merge with burst reads from memory, and may equally be configured to minimize memory read-requests necessary during multitexturing, thus maximizing bandwidth.
    Type: Grant
    Filed: March 31, 2003
    Date of Patent: August 23, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Brian D. Emberling
  • Patent number: 6927775
    Abstract: A sample filtering system and method for concurrently filtering sample data for two or more sequential pixels (in a scan-line) are disclosed. The system may include a sample cache, a control register, a read cache controller, and a sample-to-pixel calculation unit. The read cache controller reads a first set of S samples from the sample cache, and outputs a second set of S samples to the sample-to-pixel calculation unit. The second set of samples may have one or more subsets of samples, with each subset of samples selected to cover the filter region for one of the sequential pixels. The sample-to-pixel calculation unit may process each subset separately and concurrently.
    Type: Grant
    Filed: March 3, 2003
    Date of Patent: August 9, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Michael W. Schimpf, Yan Yan Tang
  • Patent number: 6924807
    Abstract: An apparatus for processing image data to produce an image for covering an image area of a display includes a plurality of graphics processors, each graphics processor being operable to render the image data into frame image data and to store the frame image data in a respective local frame buffer; a control processor operable to provide instructions to the plurality of graphics processors; and at least one merge unit operable to synchronously receive the frame image data from the respective local frame buffers and to synchronously produce combined frame image data based thereon.
    Type: Grant
    Filed: March 23, 2001
    Date of Patent: August 2, 2005
    Assignee: Sony Computer Entertainment Inc.
    Inventors: Hitoshi Ebihara, Kazumi Sato, Masakazu Mokuno, Hideki Hara
  • Patent number: 6924799
    Abstract: A method of assembling a composite image comprising generating three-dimensional data defining a non-stereo image, assigning a first screen portion to a first rendering node, assigning a second screen portion to a second rendering node, rendering, by the first rendering node, a left image portion from the three-dimensional data, rendering, by the second rendering node, a right image portion from the three-dimensional data, and sequentially assembling the left image portion and the right image portion into the composite image is provided.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: August 2, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Kevin T. Lefebvre, Howard D. Stroyan, Samuel C. Sands
  • Patent number: 6924808
    Abstract: A circuit for outputting area pattern bits from an area pattern array. The circuit includes a first stage, second stage and third stage. The first stage is configured to output N adjacent scan lines from a 2N×2N area pattern array based on a first address. N is a positive integer. The second stage is configured to receive the N adjacent scanlines and to select an N×N block from the N adjacent scanlines based on a second address. The third stage is configured to (a) select an (N/2)×N region of bits from the N×N block and load bits of the (N/2)×N region into a set of pixel tag outputs in a first mode, and (b) select an N×(N/2) region of bits from the N×N block and load bits of the N×(N/2) region into the set of pixel tag outputs in a second mode.
    Type: Grant
    Filed: March 12, 2003
    Date of Patent: August 2, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Steven M. Kurihara, Charles F. Patton
  • Patent number: 6922194
    Abstract: An embodiment of a graphics device that maintains load balance on a graphics bus when an upgrade graphics device is installed is disclosed. The embodiment includes load balancing buffers for the strobe compliment signals AD_STB0#, AD_STB1#, and SB_STB# on a 2X mode AGP graphics device. The load balancing buffers couple the 2X mode AGP graphics device to the strobe compliment signals AD_STB0#, AD_STB1#, and SB_STB#, but the load balancing buffers are not connected to any internal circuits within the 2X mode AGP graphics device. The load balancing buffers provide equal capacitive loading between the strobe signals AD_STB0 , AD_STB1 , and SB_STB and their compliment signals AD_STB0#, AD_STB1#, and SB_STB# when an upgrade 4X mode AGP graphics device is installed.
    Type: Grant
    Filed: August 13, 2001
    Date of Patent: July 26, 2005
    Assignee: Intel Corporation
    Inventor: Patrick Louis-Rene Riffault
  • Patent number: 6919895
    Abstract: A method and apparatus which includes a graphics accelerator, circuitry responsive to pixel texture coordinates to select texels and generate therefrom a texture value for any pixel the color of which is to be modified by a texture, a cache to hold texels for use by the circuitry to generate texture value for any pixel, a stage for buffering the acquisition of texel data, and control circuitry for controlling the acquisition of texture data, storing the texture data in the cache, and furnishing the texture data for blending with pixel data.
    Type: Grant
    Filed: March 22, 1999
    Date of Patent: July 19, 2005
    Assignee: NVIDIA Corporation
    Inventors: Gopal Solanki, Kioumars Kevin Dawallu
  • Patent number: 6917365
    Abstract: A processor executes image processing under control of a clock facility, such that a sequence of C effective clock cycles will effect a processing operation of a predetermined amount of image information. In particular, the processor has programming means for implementing programmable stall clock cycles interspersed between the effective clock cycles for implementing a programmable slowdown factor S, such that a modified number of C*S overall clock cycles will effect processing of the predetermined amount of digital signal information.
    Type: Grant
    Filed: July 29, 2002
    Date of Patent: July 12, 2005
    Assignee: Koninklijke Philips Electronics N.V.
    Inventors: Abraham Karel Riemens, Nathan Woods
  • Patent number: 6914607
    Abstract: A data buffering apparatus comprises a plurality of sessions and buffer logic. The plurality of session are respectively associated with session identifiers. Each of the sessions is configured to identify entries in a queue having the session's associated identifier and to pull, from the queue, the identified entries. Each of the sessions is further configured to retrieve data from the buffers pointed to by the identified entries that have the session's associated identifier. The buffer logic is configured to store a set of data to one of a plurality of buffers. The buffer logic is further configured to store, in the queue, for each expected retrieval of the set of data from the one buffer by the sessions, an entry that points to the one buffer and has a different session identifier associated with a different one of the sessions.
    Type: Grant
    Filed: February 8, 2003
    Date of Patent: July 5, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Jeffrey Joel Walls, Michael T. Hamilton
  • Patent number: 6911984
    Abstract: Tile data for drawing and desktop buffers in a desktop compositor system is managed using “copy-on-write” semantics, in which tile data stored in a memory location is not transferred to another location until the tile data for one of the buffers is modified. For each tile in drawing buffers and desktop buffers, an association is maintained with a location in a tile memory, and the number of buffer tiles associated with each location is tracked. To copy a tile from one buffer to another, the tile association for the tile in the destination buffer is modified. New data for a tile of a buffer is written to the tile memory location associated with the buffer after ensuring that the tile memory location is not associated with any other tiles of any of the buffers. As a result, memory bandwidth can be considerably reduced.
    Type: Grant
    Filed: March 12, 2003
    Date of Patent: June 28, 2005
    Assignee: NVIDIA Corporation
    Inventors: Paolo E. Sabella, Nicholas P. Wilt
  • Patent number: 6911983
    Abstract: Tile buffers in a graphics processing system are managed use “copy-on-write” semantics, in which tile data stored in a memory location is not transferred to another location until the tile data for one of the buffers is modified. Two memory spaces store tile data, and two logical buffers are used to access the memory spaces. For each tile, a tile association is maintained, indicating which of the two memory spaces is associated with each of the two logical buffers. To copy a tile of the first logical buffer to the second logical buffer, the tile association for the tile being copied is modified. Data for a tile is written to the memory space associated with a target logical buffer after ensuring that the tile association for the tile associates the target logical buffer with a different one of the two memory spaces from the other logical buffer.
    Type: Grant
    Filed: March 12, 2003
    Date of Patent: June 28, 2005
    Assignee: NVIDIA Corporation
    Inventors: Paolo E. Sabella, Nicholas P. Witt
  • Patent number: 6909434
    Abstract: A method for updating an integrated display frame buffer of a display module in a mobile electronic device, comprising a local frame buffer and a processor, comprising the steps of transferring display information to said local frame buffer, updating said display frame buffer by transferring said display information from said local frame buffer to said display frame buffer, and displaying said display information on said display module. Furthermore, the invention comprises the additional steps of detecting changes of said display information stored in said local frame buffer, and updating said display frame buffer when a change of said display information in said local frame buffer is detected.
    Type: Grant
    Filed: May 30, 2002
    Date of Patent: June 21, 2005
    Assignee: Nokia Corporation
    Inventors: Janne Takala, Mikka Merilahti, Juha Heikkilā, Jouni Hietamäki, Jussi Kujanp{overscore (aa)}
  • Patent number: 6895458
    Abstract: A system for managing the control of a bi-directional data bus between a master unit and a slave unit. The master couples to the slave through a request opcode bus, a reply opcode bus and the data bus. If the master is in a bus driving state (with respect to the data bus) and receives a read request, the master relinquishes bus control and sends a read request through the request opcode bus. The slave unit assumes bus control and sends the requested data through the data bus. If the master is in a bus sensing state and receives a write request, the master sends a last read opcode to the slave via the request opcode bus, and waits for the slave to return a special token through the reply opcode bus. Upon receiving the special token the master unit assumes bus control and performs the write transaction.
    Type: Grant
    Filed: March 4, 2002
    Date of Patent: May 17, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Ewa M. Kubalska, Lisa Grenier, Yan Yan Tang, Elena M. Ing
  • Patent number: 6894695
    Abstract: For use in a system capable of creating and displaying vector computer graphics, there is disclosed an apparatus and method for acceleration of 2D vector graphics using both a general purpose computer and conventional 3D graphics hardware. In one advantageous embodiment, the apparatus and method of the present invention comprises a central processing unit (CPU) that is capable of analyzing 2D vector graphic content to create a span stream and a fill palette for each graphics layer of a visual image. The CPU sends the span streams and the fill palettes to a 3D graphics hardware device. Each span stream contains all the information necessary for the 3D graphics hardware device to correctly locate all of the shape boundaries in a graphics layer. Each fill palette contains all the information necessary for the 3D graphics hardware device to correctly fill all of the shape boundaries in each graphics layer.
    Type: Grant
    Filed: April 27, 2001
    Date of Patent: May 17, 2005
    Assignee: National Semiconductor Corporation
    Inventor: James vanWelzen
  • Patent number: 6894691
    Abstract: A system and method for managing power consumption of an information handling system dynamically switches between high and low clock speed data transfers with double data rate (DDR) memory. The selection of a high clock speed dynamically switches the DDR memory to connect to a parallel termination for more rapid data transfers with increased power consumption. The selection of a low clock speed dynamically switches the DDR memory to disconnect the parallel termination for slower data transfers with reduced power consumption. In one embodiment, portable computer graphics DDR memory reduces power consumption by selecting low clock speed transfers without parallel termination when operating on internal power. The portable computer graphics DDR memory provides improved display resolution by selecting high clock speed transfers with parallel termination when operating on external power or when displaying information from high resolution applications.
    Type: Grant
    Filed: May 1, 2002
    Date of Patent: May 17, 2005
    Assignee: Dell Products L.P.
    Inventor: Randall E. Juenger
  • Patent number: 6885384
    Abstract: A system and method are disclosed for reproducing a pre-selected larger 2-D sample location pattern from a smaller one by means of X,Y address permutation. This method, for example, allows hardware to effectively reproduce a pre-selected set of sample locations for an array of 128×128 sample bins from a smaller set of pre-selected sample locations for an array of 2×2 sample bins. A permutation logic unit may use a first portion of an address for a sample bin B to identify a corresponding 2-D transformation, apply the inverse of the transformation to a second portion of the sample bin address to identify the corresponding bin of the 2×2 array of sample bins, and apply the transformation to the sample locations stored in the corresponding bin to reproduce the sample locations pre-selected for sample bin B.
    Type: Grant
    Filed: March 12, 2003
    Date of Patent: April 26, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Michael F. Deering, Nathaniel David Naegle, Ranjit S. Oberoi
  • Patent number: 6873331
    Abstract: The present invention is broadly directed to a system of components defining a plurality of nodes and a random access memory (RAM) connected to each node. The system comprises at least one producer functional unit configured to perform a predetermined processing function resulting in the creation of at least one producer message, a communication mechanism configured to manage and control communication of messages with other nodes, at least one pointer that is configurable to point to a storage location within the RAM, and a message logic configured to interpret content of the at least one producer message, the message logic further configured to associate the producer message with a subset of the at least one pointers based upon the content of the at least one producer message, the message logic further configured to store the at least one producer message within the RAM at the locations indicated by the associated subset of at least one pointer.
    Type: Grant
    Filed: March 29, 2002
    Date of Patent: March 29, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Darel N. Emmot, Byron A. Alcorn
  • Patent number: 6873330
    Abstract: In one embodiment, a computer system includes a first component configured to output data on a bus in response to a request for data from a second component. The data output by the first component may include both the requested data and unrequested data, and the unrequested data may have an unpredictable value. A controller coupled to the bus may be configured to replace the unrequested data with data that has a predictable value. A signature analysis register included in the second component is configured to capture the requested data and the predictable data output by the controller. Thus, the signature captured in the second component may be predictable, despite the unpredictable data output by the first component.
    Type: Grant
    Filed: March 4, 2002
    Date of Patent: March 29, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Wayne Eric Burk, David Gibbs, David Kehlet
  • Patent number: 6867779
    Abstract: An image is rendered by dividing the image into chunks, rendering the chunks in one of at least two devices, and determining which of the devices renders each one of at least some of the chunks based on at least one device's progress in the rendering of other chunks.
    Type: Grant
    Filed: December 22, 1999
    Date of Patent: March 15, 2005
    Assignee: Intel Corporation
    Inventors: Peter L. Doyle, Aditya Sreenivas
  • Patent number: 6864892
    Abstract: A system and method for preserving the order of data items through a divergence-and-reconvergence of two or more paths in a hardware device. A host processor may write a first token to a first path in the hardware device. A convergence unit in the hardware device may receive and store the first token in a synchronization register. The host processor may poll the synchronization register to determine when the first token arrives in the synchronization register. In response to determining that the first token has arrived in the synchronization register, the host processor may safely write a sequence of one or more data items to a second path in the hardware device.
    Type: Grant
    Filed: March 8, 2002
    Date of Patent: March 8, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Michael G. Lavelle, Brian D. Emberling, David C. Kehlet, Thomas W. Bowman
  • Patent number: 6864893
    Abstract: A method and apparatus for generating depth values in a programmable graphics system. Depth values are calculated under control of a pixel program using a variety of sources as inputs to programmable computation units (PCUs) in the programmable graphics systems. The PCUs are used to compute traditional interpolated depth values and modified depth values. Th PCUs are also used to compute arbitrary depth values which, unlike traditional interpolated depth values and modified depth values, are not dependent on the coordinates of the geometry primitive with which the arbitrary depth values are associated. Several sources are available as inputs to the PCUs. Clipping with optional clamping is performed using either interpolated depth values or calculated depth values, where calculated depth values are arbitrary depth values or modified depth values. Final depth values, used for depth testing, are selected from interpolated depth values and arbitrary depth values after clipping is performed.
    Type: Grant
    Filed: November 22, 2002
    Date of Patent: March 8, 2005
    Assignee: NVIDIA Corporation
    Inventor: Harold Robert Feldman Zatz
  • Patent number: 6865652
    Abstract: A plurality of command segments comprising one command are received into an integrated circuit in a plurality of phases, each command segment being received in a different phase. The command segments are pushed into a command queue. Control logic checks for a cancellation indication for the command being received. If a cancellation indication is received, the control logic for the command queue performs an undo-push operation to remove the command segments stored in the command queue associated with the cancelled command.
    Type: Grant
    Filed: June 2, 2000
    Date of Patent: March 8, 2005
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Jennifer Pencis, Chandrakant Pandya, Sanjiv K. Lakhanpal, Mark D. Nicol
  • Patent number: 6853381
    Abstract: In accordance with the present invention, a write behind controller receives control information from a display device controller in order to determine a current location available in a frame buffer for receiving information. Write accesses of the frame buffer by a rendering engine are prohibited if the access is to an area below a currently available location of the frame buffer. Generally, the rendering engine will be stalled when the requested address location has not yet displayed its data. Subsequently, the write access to the frame buffer is allowed when location has been rastered.
    Type: Grant
    Filed: September 16, 1999
    Date of Patent: February 8, 2005
    Assignee: ATI International SRL
    Inventors: Gordon Grigor, Indra Laksono, James Doyle, Kin Man William Yee, David L. J. Glen
  • Patent number: 6850240
    Abstract: An apparatus for scalable image processing includes a display, multiple graphics functional units and a mode selector. Each of the graphics functional units has a configuration of a predetermined type to control the display. The mode selector determines which combination of graphics functional units controls the display. A method for scalable image processing includes monitoring at least one parameter, determining whether to switch from one graphics functional unit configuration to a new graphics functional unit configuration based upon one or more of the parameters, and switching to the new graphics functional unit configuration.
    Type: Grant
    Filed: March 28, 2003
    Date of Patent: February 1, 2005
    Assignee: Intel Corporation
    Inventor: Morris E. Jones, Jr.
  • Patent number: 6847369
    Abstract: A data queue optimized for receiving loosely packed graphics data and suitable for use in a computer graphics system is described. The data queue operates on first-in-first-out principals, and has a variable width input and output. The variable width on the input side facilitates the reception and storage of loosely packed data. The variable width output allows for the single-cycle output of multi-word data. Packing of the data occurs on the write-side of the FIFO structure.
    Type: Grant
    Filed: January 30, 2002
    Date of Patent: January 25, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Michael G. Lavelle, Ewa M. Kubalska, Anthony S. Ramirez, Huang Pan
  • Patent number: 6842177
    Abstract: A boundary macroblock of a video object is padded without significant synchronization overhead between a host processor and an existing coprocessor. The host processor determines horizontal and vertical graphics primitives as a function of shape data stored in a host memory. The shape data determine whether a dot, a line, or a rectangle primitive should be used to pad transparent pixels in the macroblock. The host processor communicates the primitives to a coprocessor, which renders the primitives in an interleaved pipeline fashion to pad transparent pixels of the macroblock based on texture data stored in video memory. The flow of primitives is in one direction from the host processor to the graphics coprocessor, and the texture data is not transferred back and forth between the host processor and coprocessor. This technique is especially useful for enabling acceleration of MPEG-4 video decoding utilizing existing coprocessors capable of accelerating MPEG-1/2 video decoding.
    Type: Grant
    Filed: December 14, 2001
    Date of Patent: January 11, 2005
    Assignee: University of Washington
    Inventors: Rohit Garg, Chris Yoochang Chung, Coskun Mermer, Donglok Kim, Yongmin Kim
  • Publication number: 20040263521
    Abstract: An application processor and coprocessor communicate data, including command and control data, over a separate high-speed datapath. The data may be formatted into a pixel-stream format suitable for sending over the datapath. The application processor may utilize a graphics interface to send pixel-stream formatted data to a graphics interface of the coprocessor over the high-speed datapath rather than over a system bus. The coprocessor may reformat the formatted data to control and drive a graphics display.
    Type: Application
    Filed: June 30, 2003
    Publication date: December 30, 2004
    Inventors: Lawrence A. Booth, Joel Rosenzweig, Jeremy Burr