← Back to Patent Explorer
US5796413A Expired / Lapsed US ⏱️ 0.0 years remaining

Graphics controller utilizing video memory to provide macro command capability and enhanched command buffering

Assignee: Hewlett Packard Development Co LP
•
Filing: 1995-12-06
•
Granted: 1998-08-18
•
Expires: 2015-12-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An apparatus and method are disclosed for buffering graphics commands in a video graphics system, and for implementing graphics macro commands. The invention makes use of off-screen portions of video memory to create a dynamic command FIFO for commands, and to store command sequences for later or repeated use ("macros"). A command FIFO controller is provided, along with an on-chip bus FIFO and an on-chip command buffer (which is also a FIFO). Several multiplexers are also provided, so as to enable the command FIFO controller to create several different paths for commands coming into the graphics controller. Incoming commands may be routed to the command execution circuitry in several different ways: through the bus FIFO and command buffer to the command execution circuitry, directly to the command execution circuitry by bypassing the bus FIFO and command buffer, or from the bus FIFO into video memory to be stored in a dynamic command FIFO and later retrieved and sent into the command buffer. The command FIFO controller is also provided with macro address generation logic for providing read pointers to macros stored in video memory, read and write address generation logic for accessing the dynamic command FIFO stored in video memory, status generation logic for use in controlling the dynamic command FIFO, and busy status logic for use in software synchronization

Inventors

  • 👤 Ronald Anthony Shipp
  • 👤 Stuart Hecht
  • 👤 Patrick Allen Harkin

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 16:42
CPC Classifications
G; G09; G09G; G09G5/00; G09G5/36; G09G5/363; G09G5/39

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 310 words
For use in a computer graphics system comprising a bus interface; a video memory; a video memory controller circuitry having a memory controller address input for receiving addresses corresponding to locations within said video memory, a memory controller data input for receiving data to be written to said video memory, and a memory controller data output for outputting data read from said video memory; a decoder circuitry having a decoder input, a decoder address output and a decoder data output, said decoder address output and said decoder data output responsive to graphics commands presented to said decoder input; a first command path over which commands are transferrable from said bus interface to said decoder input; a first address path over which addresses are transferrable from said decoder address output to said memory controller address input; and a data path over which data are transferrable from said decoder data output to said memory controller data input; the improvement comprising circuitry for implementing a graphics command buffer using a portion of said video memory, said circuitry for implementing a graphics command buffer comprising: FIFO address generation circuitry for generating read and write addresses corresponding to locations within said video memory that will be used for implementing the graphics command buffer, said FIFO address generation circuitry having a FIFO address output; a second address path over which addresses are transferrable from said FIFO address output to said memory controller address input; a second command path over which commands are transferrable from said memory controller output to said decoder input; a node dividing said first command path into first and second portions, said first portion being between said bus interface and said node, and said second portion being between said node and said decoder input; and a third command path over which commands are transferrable from said node to said memory controller data input.
Claim 2
Dependent Claim 310 words
For use in a computer graphics system comprising a bus interface; a video memory; a video memory controller circuitry having a memory controller address input for receiving addresses corresponding to locations within said video memory, a memory controller data input for receiving data to be written to said video memory, and a memory controller data output for outputting data read from said video memory; a decoder circuitry having a decoder input, a decoder address output and a decoder data output, said decoder address output and said decoder data output responsive to graphics commands presented to said decoder input; a first command path over which commands are transferrable from said bus interface to said decoder input; a first address path over which addresses are transferrable from said decoder address output to said memory controller address input; and a data path over which data are transferrable from said decoder data output to said memory controller data input; the improvement comprising circuitry for implementing a graphics command buffer using a portion of said video memory, said circuitry for implementing a graphics command buffer comprising: FIFO address generation circuitry for generating read and write addresses corresponding to locations within said video memory that will be used for implementing the graphics command buffer, said FIFO address generation circuitry having a FIFO address output; a second address path over which addresses are transferrable from said FIFO address output to said memory controller address input; a second command path over which commands are transferrable from said memory controller output to said decoder input; a node dividing said first command path into first and second portions, said first portion being between said bus interface and said node, and said second portion being between said node and said decoder input; and a third command path over which commands are transferrable from said node to said memory controller data input.
Claim 3
Dependent Claim 61 words
Circuitry as recited in claim 1 for implementing a graphics command buffer, wherein said first and second address paths comprise address multiplexer circuitry having a first address multiplexer circuitry input coupled to said FIFO address output, a second address multiplexer circuitry input coupled to said decoder address output, and an address multiplexer circuitry output coupled to said memory controller address input.
Claim 4
Dependent Claim 66 words
Circuitry as recited in claim 1 for implementing a graphics command buffer, wherein said third command path and said data path comprise a decoder data multiplexer circuitry having a first decoder data multiplexer circuitry input coupled to said decoder data output, a second decoder data multiplexer circuitry input coupled to said node, and a decoder data multiplexer circuitry output coupled to said memory controller data input.
Claim 5
Dependent Claim 59 words
Circuitry as recited in claim 1 for implementing a graphics command buffer, wherein said first and second command paths comprise a command multiplexer circuitry having a first command multiplexer circuitry input coupled to said node, a second command multiplexer circuitry input coupled to said memory controller data output, and a command multiplexer circuitry output coupled to said decoder input.
Claim 6
Dependent Claim 66 words
Circuitry as recited in claim 2 for implementing a graphics command buffer, wherein said third command path and said data path comprise a decoder data multiplexer circuitry having a first decoder data multiplexer circuitry input coupled to said decoder data output, a second decoder data multiplexer circuitry input coupled to said node, and a decoder data multiplexer circuitry output coupled to said memory controller data input.
Claim 7
Dependent Claim 59 words
Circuitry as recited in claim 5 for implementing a graphics command buffer, wherein said first and second command paths comprise a command multiplexer circuitry having a first command multiplexer circuitry input coupled to said node, a second command multiplexer circuitry input coupled to said memory controller data output, and a command multiplexer circuitry output coupled to said decoder input.
Claim 8
Dependent Claim 26 words
Circuitry as recited in claim 1 for implementing a graphics command buffer, wherein said first portion of said first command path comprises a first FIFO buffer.
Claim 9
Dependent Claim 26 words
Circuitry as recited in claim 7 for implementing a graphics command buffer, wherein said second portion of said first command path comprises a second FIFO buffer.
Claim 10
Dependent Claim 26 words
Circuitry as recited in claim 1 for implementing a graphics command buffer, wherein said second portion of said first command path comprises a second FIFO buffer.
Claim 11
Independent Claim 109 words
A method of buffering a command in a computer graphics system operable with a bus and having a graphics controller and a video memory, said method comprising the steps of: receiving the command from the bus; determining whether the command should be executed immediately or whether the command could be buffered; if the command could be buffered: storing the command in the video memory; and retrieving the command from the video memory; if the command could not be buffered: placing a first and a second FIFO buffer into a bypass mode of operation; and routing the command through the first and second FIFO buffers, thereby immediately processing the command.
Claim 12
Independent Claim 109 words
A method of buffering a command in a computer graphics system operable with a bus and having a graphics controller and a video memory, said method comprising the steps of: receiving the command from the bus; determining whether the command should be executed immediately or whether the command could be buffered; if the command could be buffered: storing the command in the video memory; and retrieving the command from the video memory; if the command could not be buffered: placing a first and a second FIFO buffer into a bypass mode of operation; and routing the command through the first and second FIFO buffers, thereby immediately processing the command.
Claim 13
Dependent Claim 52 words
The method of claim 10, further comprising the step of: if the outcome of said determining step indicated that the command could be buffered, storing the command in said first FIFO buffer within the graphics controller after said determining step but before said step of storing the command in the video memory.
Claim 14
Dependent Claim 40 words
The method of claim 10, further comprising the step of: if the outcome of said determining step indicated that the command could be buffered, storing the command in said second FIFO buffer within the graphics controller after said retrieving step.
Claim 15
Dependent Claim 33 words
The method of claim 10, wherein said step of storing the command in the video memory comprises storing the command in a third FIFO buffer implemented using a portion of the video memory.
Claim 16
Dependent Claim 307 words
A computer graphics system comprising: a bus interface; a video memory communicating with said bus interface; a video memory controller circuitry having a memory controller address input for receiving addresses corresponding to locations within said video memory; a memory controller data input for receiving data to be written to said video memory; a memory controller data output for outputting data read from said video memory; decoder circuitry having a decoder input, a decoder address output and a decoder data output, said decoder address output and said decoder data output responsive to graphics commands presented to said decoder input; a first command path over which commands are transferrable from said bus interface to said decoder input; a first address path over which addresses are transferrable from said decoder address output to said memory controller address input; a data path over which data are transferrable from said decoder data output to said memory controller data input; and circuitry for implementing a graphics command buffer using a portion of said video memory, said circuitry for implementing a graphics command buffer comprising: FIFO address generation circuitry for generating read and write addresses corresponding to locations within said video memory that will be used for implementing the graphics command buffer, said FIFO address generation circuitry having a FIFO address output; a second address path over which addresses are transferrable from said FIFO address output to said memory controller address input; a second command path over which commands are transferrable from said memory controller output to said decoder input; a node dividing said first command path into first and second portions, said first portion being between said bus interface and said node, and said second portion being between said node and said decoder input; and a third command path over which commands are transferrable from said node to said memory controller data input.
Claim 17
Dependent Claim 307 words
A computer graphics system comprising: a bus interface; a video memory communicating with said bus interface; a video memory controller circuitry having a memory controller address input for receiving addresses corresponding to locations within said video memory; a memory controller data input for receiving data to be written to said video memory; a memory controller data output for outputting data read from said video memory; decoder circuitry having a decoder input, a decoder address output and a decoder data output, said decoder address output and said decoder data output responsive to graphics commands presented to said decoder input; a first command path over which commands are transferrable from said bus interface to said decoder input; a first address path over which addresses are transferrable from said decoder address output to said memory controller address input; a data path over which data are transferrable from said decoder data output to said memory controller data input; and circuitry for implementing a graphics command buffer using a portion of said video memory, said circuitry for implementing a graphics command buffer comprising: FIFO address generation circuitry for generating read and write addresses corresponding to locations within said video memory that will be used for implementing the graphics command buffer, said FIFO address generation circuitry having a FIFO address output; a second address path over which addresses are transferrable from said FIFO address output to said memory controller address input; a second command path over which commands are transferrable from said memory controller output to said decoder input; a node dividing said first command path into first and second portions, said first portion being between said bus interface and said node, and said second portion being between said node and said decoder input; and a third command path over which commands are transferrable from said node to said memory controller data input.
Claim 18
Dependent Claim 65 words
The computer graphics system of claim 14, wherein said first and second address paths of said circuitry for implementing a graphics command buffer comprise address multiplexer circuitry having a first address multiplexer circuitry input coupled to said FIFO address output, a second address multiplexer circuitry input coupled to said decoder address output, and an address multiplexer circuitry output coupled to said memory controller address input.
Claim 19
Dependent Claim 70 words
The computer graphics system of claim 15, wherein said third command path and said data path of said circuitry for implementing a graphics command buffer comprise a decoder data multiplexer circuitry having a first decoder data multiplexer circuitry input coupled to said decoder data output, a second decoder data multiplexer circuitry input coupled to said node, and a decoder data multiplexer circuitry output coupled to said memory controller data input.
Claim 20
Dependent Claim 63 words
The computer graphics system of claim 16, wherein said first and second command paths of said circuitry for implementing a graphics command buffer comprise a command multiplexer circuitry having a first command multiplexer circuitry input coupled to said node, a second command multiplexer circuitry input coupled to said memory controller data output, and a command multiplexer circuitry output coupled to said decoder input.
Claim 21
Dependent Claim 70 words
The computer graphics system of claim 14, wherein said third command path and said data path of said circuitry for implementing a graphics command buffer comprise a decoder data multiplexer circuitry having a first decoder data multiplexer circuitry input coupled to said decoder data output, a second decoder data multiplexer circuitry input coupled to said node, and a decoder data multiplexer circuitry output coupled to said memory controller data input.
Claim 22
Dependent Claim 63 words
The computer graphics system of claim 14, wherein said first and second command paths of said circuitry for implementing a graphics command buffer comprise a command multiplexer circuitry having a first command multiplexer circuitry input coupled to said node, a second command multiplexer circuitry input coupled to said memory controller data output, and a command multiplexer circuitry output coupled to said decoder input.
Claim 23
Dependent Claim 30 words
The computer graphics system of claim 14, wherein said first portion of said first command path of said circuitry for implementing a graphics command buffer comprises a first FIFO buffer.
Claim 24
Dependent Claim 30 words
The computer graphics system of claim 20, wherein said second portion of said first command path of said circuitry for implementing a graphics command buffer comprises a second FIFO buffer.
Claim 25
Dependent Claim 30 words
The computer graphics system of claim 14, wherein said second portion of said first command path of said circuitry for implementing a graphics command buffer comprises a second FIFO buffer.

References Cited (Backward Citations)

US5299309A Cited
US5381347A Cited
US5533175A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-08-17 2002-02-16 2002-08-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-08-17 2006-02-16 2006-08-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-08-17 2010-02-16 2010-08-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag