Claims
- 1. Apparatus for use in a computer system for eliminating the need for pipeline flushing by interrupting data flow between rendering circuitry and a frame buffer, said computer system comprising a graphics subsystem having a frame buffer and a pipeline wherein said frame buffer and said rendering circuitry are connected to said pipeline, said apparatus comprising:
- a marker register, connected in said pipeline between said rendering circuitry and said frame buffer, for keeping track of the multiple contexts which traverse the pipeline by keeping track of markers passing through said pipeline; and
- a host, connected to said pipeline, for generating graphics primitives; for generating contexts; for generating markers, said graphics primitives, contexts and markers being provided to said pipeline, wherein a marker is provided between each context; for interrogating said marker register; and for interrupting data flowing through said pipeline to said frame buffer in response to the tracking of multiple contexts by the interrogation of said marker register by said host.
- 2. The system recited in claim 1 wherein the computer system further comprises a pipeline bypass connecting said host to said frame buffer and a stopmarker register interfaced with the pipeline bypass for storing a predetermined value, the value being used for determining which of the multiple contexts are in the pipeline.
- 3. The system recited in claim 2 wherein the the marker register stores a marker value between each context switch and the host interrupts data flow when the stopmarker value equals the marker value.
- 4. The system recited in claim 2 wherein the stopmarker register is initiated through the pipeline bypass between the host and the frame buffer.
- 5. The system recited in claim 1 wherein the marker register is automatically updated by a marker sent down the pipeline between the host and the frame buffer.
- 6. A system for eliminating the need for flushing a graphics pipeline, wherein multiple contexts traverse said pipeline, comprising:
- a frame buffer;
- a host processor for providing graphics commands for controlling rendering of data in said frame buffer and for providing markers;
- a graphics pipeline interfaced with the host processor for processing data from the host processor and communicating the data to said frame buffer;
- a marker register interfaced with the graphics pipeline for keeping track of said multiple contexts which traverse the pipeline; and
- pipeline bypass means bypassing the graphics pipeline, for providing direct access of data to the frame buffer and for reducing the amount of data passed from the host processor to the frame buffer through the graphics pipeline.
- 7. The system recited in claim 6 wherein the marker register means comprises a plurality of marker registers.
- 8. The system recited in claim 6 wherein the system further comprises a stopmarker register means interfaced with the pipeline bypass means for storing a predetermined value, the value being used for determining which of the multiple contexts are in the pipeline.
- 9. The system recited in claim 8 which the marker register means is automatically updated by a marker sent down the pipeline means between the host processor means and the frame buffer.
- 10. The system recited in claim 8 wherein the stopmarker register means is initiated through the pipeline bypass means between the host processor means and the frame buffer.
- 11. A method of tracking data commands in a computer graphics system having a pipeline and a frame buffer in order to eliminate pipeline flushing, said method comprising the steps of:
- generating data commands and providing said data commands to said pipeline;
- generating markers, wherein each of said markers has a marker value, and providing said markers to said pipeline so that a marker is provided between each of said data commands, wherein said markers traverse said pipeline;
- establishing a stop marker value;
- monitoring said pipeline at a predetermined pint in said pipeline by noting said marker values as said markers traverse said pipeline;
- by determining whether a marker having a value equal to said stop marker value has passed said predetermined point by interrogating said noted marker values; and
- interrupting data flowing through said pipeline to said frame buffer in response to the interrogation of said noted marker values.
- 12. The method recited in claim 11 and for monitoring data commands further comprising the steps of:
- positioning a marker register in said pipeline at said predetermined point;
- recording in said marker register the value of markers passing said marker register;
- checking the marker register at said predetermined point; and
- halting data commands into the frame buffer when, the value stored in said marker register equals said stop marker value.
- 13. The method recited in claim 12 wherein the step of generating markers comprises the step of:
- incrementing the marker value by a preselected amount at the time each marker is generated.
- 14. The method recited in claim 13 wherein the pipeline system is used in a graphics window system.
- 15. The method recited in claim 14 wherein said stop marker value is stored in a stopmarker register.
- 16. The method recited in claim 15 wherein the data commands are graphics contexts.
Parent Case Info
This is a continuation of application Ser. No. 387,510, filed Jul. 28, 1989.
US Referenced Citations (3)
Number |
Name |
Date |
Kind |
4847755 |
Morrison et al. |
Jul 1989 |
|
4903218 |
Longo et al. |
Feb 1990 |
|
4970636 |
Snodgrass et al. |
Nov 1990 |
|
Continuations (1)
|
Number |
Date |
Country |
Parent |
387510 |
Jul 1989 |
|