Graphics display system with line buffer control scheme
AssigneeBroadcom Corporation
InventorsAlexander G. MacInnis, Chengfuh Jeffrey Tang, Xiaodong Xie, James T. Patterson, Greg A. Kranawetter
Life of this patent
Estimating the term…
Abstract
A graphics integrated circuit chip is used in a set-top box for controlling a television display. The graphics chip processes analog video input, digital video input, a graphics input and an audio input simultaneously. The chip includes a display engine that processes graphics images organized as windows. The system includes plurality of line buffers for receiving the graphics contents. The graphics contents are composited into each of the plurality of line buffers by blending the graphics contents with the existing contents of the line buffer until all of the graphics surfaces for the line have been composited.
Claims29
A method of blending a plurality of graphics images, each graphics image having at least one line of graphics contents, the method comprising the steps of:
- initializing one of a plurality of line buffers, all the line buffers together not being capable of completely storing at least one of the graphics images, by loading said one line buffer with data that represents transparent black;
- obtaining control of said one line buffer through clock synchronization with a memory clock for a compositing operation;
- compositing a corresponding line of graphics contents from each of the graphics images into said one line buffer by blending the graphics contents with an existing content of said one line buffer by applying alpha values to both the graphics contents and the existing content, starting with the corresponding line of graphics contents from the first graphics image to be blended and until all of the corresponding lines of graphics contents have been composited to generate a corresponding line of blended graphics contents;
- switching clock from the memory clock to a display clock by synchronizing said one line buffer with the display clock;
- providing the blended graphics contents of said one line buffer to a graphics filter to be used for spatial filtering to generate a filtered graphics image;
- and
- releasing said one line buffer from the graphics filter when its blended graphics contents are no longer used to generate the filtered graphics image,
- wherein the graphics surfaces can have multiple different sizes and have arbitrary spatial relationships with one another.
A graphics display system for compositing a plurality of graphics images, each graphics image having at least one line of graphics contents, the system comprising:
- a display engine for receiving raw graphics data, for converting the raw graphics data into the graphics images comprising lines of graphics contents having a common format, and for compositing the graphics images to generate a blended graphics image;
- a plurality of line buffers for receiving the graphics contents, all the line buffers together not being capable of completely storing at least one of the graphics images, wherein the line buffers are initially loaded with data that represents transparent black;
- a line buffer controller for clock switching the line buffers between a memory clock domain, in which the line buffers are synchronized with a memory clock and contents of the line buffers are composited, and a display clock domain, in which the line buffers are synchronized with a display clock and the contents of the line buffers are displayed, wherein some of the line buffers can be in the memory clock domain while, concurrently, other line buffers are in the display clock domain,
- wherein a corresponding line of graphics contents from each of the graphics images is composited in the memory clock domain into one of the plurality of line buffers by blending the graphics contents with an existing content of said one line buffer until all graphics images for that line have been composited,
- wherein the graphics images can have multiple different sizes and have arbitrary spatial relationships with one another, and
- wherein the corresponding line of graphics contents from each of the graphics images is blended into said one line buffer by applying alpha values to both the graphics contents of the graphics images and the existing content, starting with the corresponding line of graphics contents from the first graphics image to be blended and until all of the corresponding lines of graphics contents have been composited to generate a corresponding line of blended graphics contents.
A method of blending a plurality of graphics images, each graphics image comprising a plurality of lines of graphics contents, the method comprising:
- a) synchronizing a plurality of line buffers to a memory clock, wherein the memory clock has a faster clock rate than a display clock, so as to enable blending of lines of graphics contents from more than one graphics image during a single horizontal display line interval;
- b) initializing the line buffers by loading the line buffers with data that represents transparent black,
- c) compositing the line of graphics contents of each graphics image that corresponds to a current display line by blending the graphics contents with an existing content of a line buffer until the line of graphics contents in each of the graphics image has been composited in the line buffer;
- d) switching a clock of the line buffer from the memory clock to the display clock;
- e) providing the line buffer to a graphics filter;
- f) repeating c) through e) until sufficient number of line. buffers for filtering are provided to the graphics filter;
- g) filtering the contents of the line buffers provided to the graphics filter to generate a filtered graphics image;
- h) releasing one or more line buffers that are no longer needed for filtering from the graphics filter;
- i) clock switching the released line buffers from the display clock to the memory clock;
- and
- j) repeating c) through i) until an end of a current field is reached.
A graphics display system comprising:
- a display engine for receiving raw graphics data representing a plurality of graphics images, converting the raw graphics data into the graphics images having a common format, and blending the graphics images to generate a blended graphics image;
- a plurality of line buffers for use by the display engine to blend the graphics images line by line to generate the blended graphics image, wherein the line buffers are initially loaded with transparent black, and wherein each of the graphics images, including a first graphics image to be blended into the line buffer, is blended with an existing content of the line buffer using alpha values until all graphics surfaces for that line have been composited;
- a line buffer controller for switching the line buffers between a memory clock domain, in which lines of the graphics images are blended to generate a blended graphics image, and a display clock domain, in which the blended graphics image is displayed;
- and
- a graphics filter for receiving the lines of the blended graphics image, and filtering the lines to generate a filtered graphics image, wherein the graphics filter releases the line buffers whose contents are no longer needed for filtering, so that these line buffers can be initialized again for blending of other graphics display lines.
Dependencies are inferred from the claim text.