System for processing vertices from a graphics request stream

Computer graphics processing and selective visual display system – Computer graphic processing system

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C345S519000, C345S522000

Reexamination Certificate

active

06188410

ABSTRACT:

FIELD OF THE INVENTION
The invention generally relates to computer systems and, more particularly, the invention relates to processing graphics request data for display on a computer display device.
BACKGROUND OF THE INVENTION
Three dimensional graphics request data commonly is processed in a computer system as a plurality of polygons having vertices. Each of the vertices have associated attribute data (e.g., color, transparency, depth, etc . . .) that is utilized to rasterize pixels on a computer display device. The well known OPENGL™ application program interface (available from Silicon Graphics Inc. of Mountain View, Calif.) is a commonly used three dimensional graphics library that may be used for processing three dimensional graphics request data in this manner.
Many computer systems utilizing the OPENGL™ graphics library process vertex data sequentially and, for various reasons noted below, postpone processing of subsequent vertices until a previous vertex is completely processed. For example, a second vertex typically is not processed until an immediately preceding first vertex is completely processed. Among other reasons, this postponement ensures that the received second vertex data is properly assembled and thus, ready for processing. Premature processing of a successive vertex (e.g., processing the second vertex prior to completion of the first vertex) may cause an error condition if such successive vertex is not completely and properly assembled.
It is not uncommon, however, for a successive vertex to be completely assembled prior to completion of processing of a previous vertex. In systems with many processing resources, postponing processing of a completely assembled vertex thus unnecessarily lengthens the time required to process a graphics request stream.
SUMMARY OF THE INVENTION
In accordance with one aspect of the invention, an apparatus for processing a graphics request stream begins processing subsequent vertex data while processing previous vertex data. To that end, the apparatus preferably includes a vertex assembler having an input for receiving graphics requests, and a processor (coupled to the vertex assembler) for processing received graphics requests. The processor provides a headstart signal to the vertex assembler to indicate that the processor is processing a new graphics request. Upon receipt of the headstart signal, the vertex assembler causes the processor to restart processing of the new graphics request if the new request is determined to have not been properly assembled.
In accordance with another aspect of the invention, the apparatus for processing a graphics request stream provides the headstart signal to the vertex assembler to indicate that the processor is processing a new graphics request while it is processing a previous graphics request. After receipt of the headstart signal and completion of processing of the previous graphics request, the vertex assembler causes the processor to restart processing of the new graphics request if the new request is determined to have not been properly assembled.
In preferred embodiments, after receipt of the headstart signal and completion of processing the previous graphics request, the vertex assembler causes the processor to continue processing the new graphics request without restarting if the new request is determined to have been properly assembled.
In accordance with yet another aspect of the invention, an apparatus for processing a graphics request stream having first vertex data followed by second vertex data includes a vertex assembler having an input for successively receiving the first vertex data and the second vertex data, and a processor (coupled to the vertex assembler) for processing the first vertex data and the second vertex data. The vertex assembler assembles the first vertex data prior to assembling the second vertex data. The processor begins processing the second vertex data after beginning but prior to completing the processing of the first vertex data. The vertex assembler directs a message to the processor (after completing processing of the first vertex data) indicating whether the processor must restart processing of the second vertex data.
In preferred embodiments, the message indicates whether the processor may continue processing the second vertex data without restarting. The vertex assembler may include a determiner for determining if the second vertex data was properly assembled when the processor began processing the second vertex data. The message thus may indicate that the processor must restart processing the second vertex data if it is determined that the second vertex data was not properly assembled when the processor began processing the second vertex data. In yet other embodiments of the invention, the apparatus may include a flag indicating that the processor has begun processing the second vertex data.
In still other embodiments of the invention, first vertex data and second data may be processed by processing the assembled first vertex data, and then beginning to process second vertex data prior to completing the processing of the first vertex data. The second vertex data preferably is processed in accordance with a preselected process having a start portion. It then may be determined, after completing the processing of the first vertex data, if the second vertex data was properly assembled when processing of the second vertex data began. If it is determined that the second vertex data was not properly assembled when processing of the second vertex data began, then the second vertex data is reprocessed from the start portion of the preselected process


REFERENCES:
patent: 4434437 (1984-02-01), Strolle et al.
patent: 4615013 (1986-09-01), Yan et al.
patent: 4646232 (1987-02-01), Chang et al.
patent: 4908780 (1990-03-01), Priem et al.
patent: 4918626 (1990-04-01), Watkins et al.
patent: 4991122 (1991-02-01), Sanders
patent: 5107415 (1992-04-01), Sato et al.
patent: 5123085 (1992-06-01), Wells et al.
patent: 5239654 (1993-08-01), Ing-Simmons et al.
patent: 5287438 (1994-02-01), Kelleher
patent: 5293480 (1994-03-01), Miller et al.
patent: 5313551 (1994-05-01), Labrousse et al.
patent: 5363475 (1994-11-01), Baker et al.
patent: 5371840 (1994-12-01), Fischer et al.
patent: 5394524 (1995-02-01), DiNicola et al.
patent: 5398328 (1995-03-01), Weber et al.
patent: 5408605 (1995-04-01), Deering
patent: 5446479 (1995-08-01), Thompson et al.
patent: 5485559 (1996-01-01), Sakaibara et al.
patent: 5511165 (1996-04-01), Brady et al.
patent: 5519823 (1996-05-01), Barkans
patent: 5544294 (1996-08-01), Cho et al.
patent: 5555359 (1996-09-01), Choi et al.
patent: 5557734 (1996-09-01), Wilson
patent: 5561749 (1996-10-01), Schroeder
patent: 5572713 (1996-11-01), Weber et al.
patent: 5631693 (1997-05-01), Wunderlich et al.
patent: 5664114 (1997-09-01), Krech et al.
patent: 5666520 (1997-09-01), Fujita et al.
patent: 5684939 (1997-11-01), Foran et al.
patent: 5701365 (1997-12-01), Harrington et al.
patent: 5706481 (1998-01-01), Hannah et al.
patent: 5721812 (1998-02-01), Mochizuki
patent: 5737455 (1998-04-01), Harrington et al.
patent: 5757375 (1998-05-01), Kawase
patent: 5757385 (1998-05-01), Narayanaswami et al.
patent: 5764237 (1998-06-01), Kaneko
patent: 5821950 (1998-10-01), Rentschler et al.
patent: 5841444 (1998-11-01), Mun et al.
patent: 5870567 (1999-02-01), Hausauer et al.
patent: 5883641 (1999-03-01), Krech et al.
patent: 5914711 (1999-06-01), Mangerson et al.
patent: 0 311 798 A2 (1989-04-01), None
patent: 0 397 180 A2 (1990-11-01), None
patent: 0 438 194 A2 (1991-07-01), None
patent: 0 448 286 A2 (1991-09-01), None
patent: 0 463 700 A2 (1992-01-01), None
patent: 0 566 229 A2 (1993-10-01), None
patent: 0 627 682 A1 (1994-12-01), None
patent: 0 631 252 A2 (1994-12-01), None
patent: 0 693 737 A2 (1996-01-01), None
patent: 0 734 008 A1 (1996-09-01), None
patent: 0 735 463 A2 (1996-10-01), None
patent: 0 810 553 A2 (1997-12-01), None
patent: 0 817 009 A2 (1998-01-01), None
patent: 0 825 550 A2 (1998-02-01), None
patent: 0 840 279 A2 (1998-05-01), None
patent: WO 86/076

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

System for processing vertices from a graphics request stream does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with System for processing vertices from a graphics request stream, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System for processing vertices from a graphics request stream will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2607396

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.