Method and apparatus for processing two graphics data streams in parallel
First Claim
1. Apparatus for concurrently processing first and second graphics data streams, comprising:
- first processing means for processing said first data stream to generate a processed first data stream, said first processing means having an output for providing said processed first data stream;
second processing means for processing said second data stream to generate a processed second data stream, said second processing means having an output for providing said processed second data stream;
third processing means for further processing said processed first and second data streams to generate a displayable image; and
means for alternatingly coupling the outputs of said first and second processing means to said third processing means so that said processed first data stream is sent to said third processing means without having to wait for completion of processing of said second data stream by said second processing means,wherein said first data stream comprises two-dimensional (2D) graphics Primitives while said second data stream comprises three-dimensional (3D) graphics primitives.
3 Assignments
0 Petitions
Accused Products
Abstract
In a graphics subsystem, a highly interactive two-dimensional (2D) data stream and a computationally intensive three-dimensional (3D) data stream are processed concurrently in such a manner that processing of the 2D data stream is not held up by processing of the 3D data stream. A 3D geometry subsystem having a parallel pipeline architecture is used to process the 3D data stream, while a 2D subsystem concurrently processed the 2D data stream in parallel with the 3D subsystem. A reordering device couples the processed 2D and 3D data streams to a common raster subsystem. The reordering device, which contains an internal buffer, reorders any order-dependent elements of the 3D data stream appearing at the output of the 3D geometry subsystem in an order different from the order in which they were supplied to the input end. The reordering device prioritizes the 2D data stream relative to the 3D data stream so that elements of the 2D data stream arriving from the 2D subsystem are passed to the raster subsystem almost immediately, without having to wait for elements of the 3D data stream.
-
Citations
16 Claims
-
1. Apparatus for concurrently processing first and second graphics data streams, comprising:
-
first processing means for processing said first data stream to generate a processed first data stream, said first processing means having an output for providing said processed first data stream; second processing means for processing said second data stream to generate a processed second data stream, said second processing means having an output for providing said processed second data stream; third processing means for further processing said processed first and second data streams to generate a displayable image; and means for alternatingly coupling the outputs of said first and second processing means to said third processing means so that said processed first data stream is sent to said third processing means without having to wait for completion of processing of said second data stream by said second processing means, wherein said first data stream comprises two-dimensional (2D) graphics Primitives while said second data stream comprises three-dimensional (3D) graphics primitives.
-
-
2. Apparatus for concurrently processing first and second graphics data streams, comprising:
-
first processing means for processing said first data stream to generate a processed first data stream, said first processing means having an output for providing said processed first data stream; second processing means for processing said second data stream to generate a processed second data stream, said second processing means having an output for providing said processed second data stream; third processing means for further processing said processed first and second data streams to generate a displayable image; and means for alternatingly coupling the outputs of said first and second processing means to said third processing means so that said processed first data stream is sent to said third processing means without having to wait for completion of processing of said second data stream by said second processing means, wherein said third processing means comprises rasterizing means for converting said processed first and second data streams to a pixel image.
-
-
3. Apparatus for concurrently processing first and second graphics data streams, comprising:
-
first processing means for processing said first data stream to generate a processed first data Stream, said first processing means having an output for providing said processed first data stream; second processing means for processing said second data stream to generate a processed second data stream, said second processing means having an output for providing said processed second data stream; third processing means for further processing said processed first and second data streams to generate a displayable image; means for alternatingly coupling the outputs of said first and second processing means to said third processing means so that said processed first data stream is sent to said third processing means without having to wait for completion of processing of said second data stream by said second processing means; means for supplying a composite data stream comprising said first and second data streams; and means for partitioning said composite data stream into said first and second data streams and for directing said first and second data streams to said first and second processing means.
-
-
4. Apparatus for concurrently processing first and second graphics data streams, comprising:
-
first processing means for processing said first data stream to generate a processed first data stream, said first processing means having an output for providing said processed first data stream; second processing means for processing said second data stream to generate a processed second data stream, said second processing means having an output for providing said processed second data stream; third processing means for further processing said processed first and second data streams to generate a displayable image; and means for alternatingly coupling the outputs of said first and second processing means to said third processing means so that said processed first data stream is sent to said third processing means without having to wait for completion of processing of said second data stream by said second processing means, wherein said processing means comprises a plurality of processing nodes for processing segments of said second data stream in parallel with one another, said apparatus comprising means for partitioning said second data stream into said segments and for distributing said segments to said processing nodes and wherein said coupling means recombines the segments processed by said processing nodes to form a single processed second data stream. - View Dependent Claims (5, 6)
-
-
7. Apparatus for concurrently processing first and second graphics data streams, comprising:
-
first processing means for processing said first data stream to generate a processed first data stream, said first processing means having an output for providing said processed first data stream; second processing means for processing said second data stream to generate a processed second data stream, said second processing means having an output for providing said processed second data stream; third processing means for further processing said processed first and second data streams to generate a displayable image; and means for alternatingly coupling the outputs of said first and second processing means to said third processing means so that said processed first data stream is sent to said third processing means without having to wait for completion of processing of said second data stream by said second processing means, wherein said processing means comprises a plurality of processing nodes for processing segments of said second data stream in parallel with one another, said apparatus comprising means for partitioning said second data stream into said segments and for distributing said segments to said processing nodes and wherein said partitioning means adds sequence numbers to said segments of said second data stream indicating a desired order of recombination, said coupling means recombining the segments processed by said processing nodes in the order indicated by said sequence numbers to form a single processed second data stream. - View Dependent Claims (8)
-
-
9. A method for concurrently processing first and second graphics data streams, comprising the steps of:
-
processing said first data stream to generate a processed first data stream; processing said second data stream to generate a processed second data stream; alternatingly coupling said processed first and second data streams to an output data stream so that said processed first data stream is coupled to Said output data stream without having to wait for completion of processing of said second data stream; and processing said output data stream to generate a displayable image, wherein said first data stream comprises two-dimensional (2D) graphics primitives while said second data stream comprises three-dimensional (3D) graphics primitives.
-
-
10. A method for concurrently processing first and second graphics data streams, comprising the steps of:
-
processing said first data stream to generate a processed first data stream; processing said second data stream to generate a processed second data stream; alternatingly coupling said processed first and second data streams to an output data stream so that said processed first data stream is coupled to said output data stream without having to wait for completion of processing of said second data stream; and processing said output data stream to generate a displayable image, wherein said output data stream is rasterized to convert said output data stream to a pixel image,
-
-
11. A method for concurrently processing first and second graphics data streams, comprising the steps of:
-
processing said first data stream to generate a processed first data stream; processing said second data stream to generate a processed second data stream; alternatingly coupling said processed first and second data streams to an output data stream so that said processed first data stream is coupled to said output data stream without having to wait for completion of processing of said second data stream; processing said output data stream to generate a displayable image;
.providing a composite data stream comprising said first and second data streams; and partitioning said composite data stream into said first and second data streams.
-
-
12. A method for concurrently processing first and second graphics data streams, comprising the steps of:
-
processing said first data stream to generate a processed first data stream; processing said second data stream to generate a processed second data stream; alternatingly coupling said processed first and second data streams to an output data stream so that said processed first data stream is coupled to said output data stream without having to wait for completion of processing of said second data stream; and processing said output data stream to generate a displayable image, wherein a plurality of processing nodes process segments of said second data stream in parallel with one another, said second data stream being partitioned into said segments that are distributed to said processing nodes and said segments processed by said processing nodes are recombined to form said output data stream. - View Dependent Claims (13, 14)
-
-
15. A method for concurrently processing first and second graphics data streams, comprising the steps of:
-
processing said first data stream to generate a processed first data stream; processing said second data stream to generate a processed second data stream; alternatingly coupling said processed first and second data streams to an output stream so that said processed first data stream is coupled to said output stream without having to wait for completion of processing of said second data stream; and processing said output data stream to generate a displayable image, wherein sequence numbers indicating a desired order of recombination are added to said segments of said second data stream, the segments processed by said processing nodes being recombined in the order indicated by said sequence numbers to form said output data stream. - View Dependent Claims (16)
-
Specification