Claims
- 1. A computer workstation window system of the type employing a host, a frame buffer, and a pipeline graphics processor where the host is operatively coupled to the pipeline graphics processor and the pipeline graphics processor is operatively coupled to the frame buffer, comprising:
- a pipeline bypass where the pipeline bypass is operatively coupled to the host; and
- address manipulator means interfaced with the pipeline bypass and the frame buffer for transforming graphics rendered on windows according to window relative addresses to graphics rendered on the frame buffer according to frame buffer relative addresses based on window offset addresses.
- 2. The system recited in claim 1 wherein the address manipulator means comprises:
- a table of offsets, written to by the host through the pipeline bypass, comprising at least one set of offsets used in rendering window relative addresses; and
- a window identification means, written by the host through the graphics pipeline, for determining which window offsets in the table of offsets to reference for the transforming of the graphics rendered according to window relative address; and
- a scan converter means, which communicates with the table of offsets and which receives the graphics data, for performing window relative conversion and communicating the results to the frame buffer.
- 3. The system recited in claim 2 wherein the address manipulator is also interfaced with the pipeline graphics processor.
- 4. The system recited in claim 3 further comprising a scan converter interposed on the graphics pipeline processor between the host and the frame buffer.
- 5. The system recited in claim 4 wherein the frame buffer comprises a video random access memory.
- 6. The system recited in claim 5 further comprising pixel memory means interposed on the graphics pipeline processor between the scan converter and the video random access memory for storing pixel data output from the scan converter.
- 7. The system recited in claim 6 wherein the pixel memory means is a cache buffer.
- 8. The system recited in claim 7 wherein the address manipulator means is interposed on the pipeline bypass between the host and the video random access memory.
- 9. The system recited in claim 8 wherein the address manipulator means is further interfaced with the pixel cache buffer.
- 10. A system for rendering primitives, initially rendered in window relative addresses, to a graphics frame buffer comprising:
- host processor means for providing graphics commands to render primitives in window relative addresses;
- scan converter means interfaced with the host processor means for rendering the graphics primitives through a graphics pipeline on the graphics frame buffer according to window relative addresses;
- pipeline bypass means interfaced with the host processor means for bussing window offset addresses from the host, the window offset addresses specifying the window's position on the frame buffer; and
- table means interfaced with the pipeline bypass means for receiving and storing the window offset addresses and applying the window offset addresses to the window relative addresses, thereby rendering the graphics primitives to the frame buffer according to frame buffer relative addresses determined according to the window offset addresses.
- 11. The system recited in claim 10 wherein the frame buffer is a video random access memory.
- 12. The system recited in claim 11 further comprising memory means interposed on the graphics pipeline between the scan converter means and the video random access memory for storing graphics data rendered on the window.
- 13. The system recited in claim 12 wherein the graphics data corresponds to pixel activation data.
- 14. The system recited in claim 13 wherein the memory means is a pixel cache buffer.
- 15. The system recited in claim 14 wherein the table means is interposed on the pipeline bypass between the host processor means and the video random access memory.
- 16. The system recited in claim 15 wherein the table means is further interfaced with the pixel cache buffer.
- 17. The system recited in claim 16 wherein the scan converter means is a raster scan converter.
- 18. A method of rendering graphics primitives to a frame buffer, the method comprising the steps of:
- rendering the graphics primitives through a graphics pipeline according to window relative addressing;
- determining window offset addresses corresponding to frame buffer relative addresses any time during the rendering;
- transmitting window offset addresses to an address manipulator any time during the rendering;
- applying the window offset addresses to the window relative addresses to obtain frame buffer relative addresses for the window containing the graphics primitives after the determining and transmitting of the window offset addresses; and
- transmitting the graphics primitives to the frame buffer according to the frame buffer relative addresses.
- 19. The method recited in claim 18 wherein the step of rendering the graphics primitives to a graphics window according to window relative addresses comprises scanning the graphics primitives to determine pixels to be activated on a graphics screen.
- 20. The method recited in claim 19 further comprising storing the pixel activation data in a pixel cache buffer.
- 21. The method recited in claim 20 wherein the frame buffer is a video random access memory.
- 22. The method recited in claim 21 wherein the scanning step is a raster scanning step.
- 23. A computer window system of the type employing a host, a frame buffer, a pipeline, a pipeline bypass, and an address manipulator where the host is operatively coupled to the pipeline and pipeline bypass, the pipeline is operatively coupled to the frame buffer, the pipeline bypass is operatively coupled to the address manipulator, and the address manipulator is operatively coupled to the frame buffer, the system comprising:
- source register means for storing a source reference address of a block of primitives to be moved;
- destination register means for storing a destination reference address of the block of primitives;
- dimension register means for storing data indicative of the block's size;
- source specifier means for storing data indicative of whether the source reference address of the block is a window relative address or a screen relative address;
- destination specifier means for storing data indicative of whether the destination reference address of the block is a window relative address or a screen relative address; and
- table means interfaced with the pipeline bypass for receiving and storing window offset addresses and applying the window offset addresses to the window relative addresses, thereby rendering the graphics primitives to the frame buffer according to frame buffer relative addresses determined according to the window offset addresses.
- 24. The system recited in claim 22 wherein the host outputs commands to the address manipulator to instruct the address manipulator to move the block from the block's source address to the block's destination address.
- 25. The system recited in claim 24 wherein the reference address of the block corresponds to the origin address of the block.
- 26. The system recited in claim 25 wherein the source register means, destination register means, dimension register means and source specifier means are interposed on the pipeline bypass between the host and the frame buffer.
- 27. The system recited in claim 26 wherein the source register means, destination register means, dimension register means and source specifier means are interposed on the pipeline between the host and the frame buffer.
- 28. The system recited in claim 27 wherein the frame buffer is a video random access memory.
Parent Case Info
This is a division of application Ser. No. 900,535, filed Jun. 18, 1992, now U.S. Pat. No. 5,224,210, which in turn is a continuation of Ser. No. 387,510, filed Jul. 28, 1989, now abandoned.
US Referenced Citations (8)
Number |
Name |
Date |
Kind |
4847755 |
Morrison et al. |
Jul 1989 |
|
4903218 |
Longo et al. |
Feb 1990 |
|
4958302 |
Fredrickson et al. |
Sep 1990 |
|
4970636 |
Snodgrass et al. |
Nov 1990 |
|
5077678 |
Guttag et al. |
Dec 1991 |
|
5146592 |
Pfeiffer et al. |
Sep 1992 |
|
5155822 |
Doyle et al. |
Oct 1992 |
|
5185599 |
Doornink et al. |
Feb 1993 |
|
Non-Patent Literature Citations (4)
Entry |
K. Akeley, "High-Performance Polygon Rendering", Computer Graphics, pp. 239-246 (Aug. 1988). |
Voorhies et al., "Virtual Graphics", Computer Graphics, vol. 22, No. 4, pp. 247-253 (Aug. 1988). |
IEEE Computer Graphics, vol. 23, No. 3, Jul. 1989 "Hardware Acceleration for Window Systems" by Rhoden et al. |
The Visual Computer, International Journal of Computer Graphics, vol. 3 #3, 1987, "Real Time Virtual Window Management for Bit Mapped Raster Graphics" by Sener et al, pp. 162-169. |
Divisions (1)
|
Number |
Date |
Country |
Parent |
900535 |
Jun 1992 |
|
Continuations (1)
|
Number |
Date |
Country |
Parent |
387510 |
Jul 1989 |
|