← Back to Patent Explorer
US6833834B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Frame buffer organization and reordering

Assignee: Oracle America Inc
•
Filing: 2001-12-12
•
Granted: 2004-12-21
•
Expires: 2021-12-12
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A graphics system includes a frame buffer, a write address generator, and a pixel buffer. A burst of pixels received from the frame buffer may not be in display order. In one embodiment, a write address generator calculates a write address for each pixel in the burst of pixels output from the frame buffer. The write address corresponds to a relative display order within the burst for each respective pixel. Each pixel in the burst is stored to its write address in the pixel buffer. This way, the pixels in the burst are stored in display order within the pixel buffer.

Inventors

  • 👤 Michael A. Wasserman
  • 👤 Michael G. Lavelle
  • 👤 David C. Kehlet
  • 👤 Yan Yan Tang
  • 👤 Ewa M. Kubalska

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 21:21
CPC Classifications
G; G09; G09G; G09G3/00; G09G3/006; G06; G06F; G06F3/00; G06F3/14; G06F3/1423; G06F3/1431; G09G5/00; G09G5/18; G09G5/36; G09G5/363; G09G5/39; G09G5/395; G09G2360/00; G09G2360/12; G09G2360/123; G09G5/001

Claims Analysis

Total Claims: 50
Claim 1
Independent Claim 96 words
A graphics system comprising: a frame buffer configured to output pixels, wherein the pixels output by the frame buffer are output in a first order different from display order; a write address generator configured to calculate a write address for each pixel output by the frame buffer, wherein each write address corresponds to a relative display order of a respective pixel; and a pixel buffer coupled to receive the pixels output from the frame buffer in the first order and configured to store the received pixels at the write addresses calculated by the write address generator.
Claim 2
Dependent Claim 96 words
A graphics system comprising: a frame buffer configured to output pixels, wherein the pixels output by the frame buffer are output in a first order different from display order; a write address generator configured to calculate a write address for each pixel output by the frame buffer, wherein each write address corresponds to a relative display order of a respective pixel; and a pixel buffer coupled to receive the pixels output from the frame buffer in the first order and configured to store the received pixels at the write addresses calculated by the write address generator.
Claim 3
Dependent Claim 19 words
The graphics system of claim 1 , wherein the frame buffer is configured to output the pixels in bursts.
Claim 4
Dependent Claim 26 words
The graphics system of claim 2 , wherein each write address corresponds to the relative display order of a respective pixel within a burst of pixels.
Claim 5
Dependent Claim 34 words
The graphics system of claim 2 , wherein the pixel buffer comprises a plurality of partitions, wherein each partition is configured to store at least one burst of pixels for a respective display channel.
Claim 6
Dependent Claim 20 words
The graphics system of claim 4 , wherein the pixel buffer is configured to store the pixels as pixel pairs.
Claim 7
Dependent Claim 44 words
The graphics system of claim 4 , wherein the write address generator comprises a base address generator, wherein the base address generator is configured to generate a same base address for all of the pixels output in a first burst from the frame buffer.
Claim 8
Dependent Claim 44 words
The graphics system of claim 6 , wherein the write address generator comprises an offset generator configured to generate an offset for each pixel that corresponds to each pixel's relative display order with respect to each of the other pixels in the first burst.
Claim 9
Dependent Claim 27 words
The graphics system of claim 7 , wherein the write address generator is configured to concatenate the base address and the offset to produce the write address.
Claim 10
Dependent Claim 38 words
The graphics system of claim 2 , wherein the pixel buffer comprises a plurality of blocks, wherein a first portion of the blocks are each configured to store a portion of the pixels received in a first burst.
Claim 11
Dependent Claim 31 words
The graphics system of claim 9 , wherein a first display channel's allocated blocks of pixels are intermingled with a second display channel's allocated blocks of pixels within the pixel buffer.
Claim 12
Dependent Claim 36 words
The graphics system of claim 9 , wherein the write address generator is configured to track which blocks in the pixel buffer are allocated and to track which display channel each allocated block stores pixels for.
Claim 13
Dependent Claim 35 words
The graphics system of claim 9 , wherein the write address generator is further configured to track a relative display order of each of the blocks that are storing pixels for a first display channel.
Claim 14
Dependent Claim 63 words
The graphics system of claim 9 , wherein the write address generator comprises a base address generator configured to generate a first base address of a first block for a first portion of the pixels output in the first burst and to generate a second base address of a second block for a second portion of the pixels output in the first burst.
Claim 15
Dependent Claim 42 words
The graphics system of claim 13 , further comprising an offset generator configured to generate an offset for each pixel in the first portion of the pixels that corresponds to each pixel's relative display order within the first portion of the pixels.
Claim 16
Dependent Claim 18 words
The graphics system of claim 1 , wherein the frame buffer comprises one or more 3D-RAM memory devices.
Claim 17
Dependent Claim 15 words
The graphics system of claim 1 , wherein the frame buffer comprises multiple memory banks.
Claim 18
Dependent Claim 14 words
The graphics system of claim 16 , wherein the multiple memory banks are interleaved.
Claim 19
Dependent Claim 36 words
The graphics system of claim 1 , wherein the pixels output by the frame buffer are output in the first order, different from the display order, because the frame buffer is configured for improved rendering efficiency.
Claim 20
Dependent Claim 138 words
A graphics system comprising: a frame buffer configured to output pixels, wherein the pixels output by the frame buffer are not output in display order; a pixel buffer coupled to store the pixels output by the frame buffer in an order that the pixels are output from the frame buffer; and a read address generator configured to calculate a read address for each pixel stored in the pixel buffer, wherein each read address corresponds to a relative display order of a respective pixel, and wherein successively generated read addresses access pixels in the pixel buffer in display order; wherein the frame buffer is configured to output the pixels in bursts; wherein the pixel buffer comprises a plurality of partitions; and wherein each partition is configured to store at least one burst of pixels for a respective display channel.
Claim 21
Dependent Claim 138 words
A graphics system comprising: a frame buffer configured to output pixels, wherein the pixels output by the frame buffer are not output in display order; a pixel buffer coupled to store the pixels output by the frame buffer in an order that the pixels are output from the frame buffer; and a read address generator configured to calculate a read address for each pixel stored in the pixel buffer, wherein each read address corresponds to a relative display order of a respective pixel, and wherein successively generated read addresses access pixels in the pixel buffer in display order; wherein the frame buffer is configured to output the pixels in bursts; wherein the pixel buffer comprises a plurality of partitions; and wherein each partition is configured to store at least one burst of pixels for a respective display channel.
Claim 22
Dependent Claim 20 words
The graphics system of claim 19 , wherein the pixel buffer is configured to store the pixels as pixel pairs.
Claim 23
Dependent Claim 44 words
The graphics system of claim 19 , wherein the read address generator comprises a base address generator, wherein the base address generator is configured to generate a same base address for all of the pixels output in a first burst from the frame buffer.
Claim 24
Dependent Claim 33 words
The graphics system of claim 21 , wherein the read address generator comprises an offset generator configured to generate an offset that corresponds to each pixel's relative display order within the first burst.
Claim 25
Dependent Claim 27 words
The graphics system of claim 22 , wherein the read address generator is configured to concatenate the base address and the offset to produce the read address.
Claim 26
Independent Claim 164 words
A method of reordering pixels received from a frame buffer, comprising: receiving a plurality of pixels from the frame buffer, wherein the pixels are received in an order other than display order; storing the pixels in a pixel buffer in the order they are received; generating a read address for each pixel stored in the pixel buffer, wherein each read address corresponds to a relative display order of a respective pixel; and reading the pixels out of the pixel buffer using successively generated read addresses generated by said generating, wherein successively generated read addresses address pixels in display order; wherein said receiving comprises receiving a burst of pixels; wherein the relative display order comprises the relative display order within the burst; wherein the pixel buffer comprises a plurality of partitions, wherein each partition is configured to store pixels for a respective display channel, and wherein said storing comprises storing at least one burst of pixels for a first display channel in a first partition.
Claim 27
Independent Claim 164 words
A method of reordering pixels received from a frame buffer, comprising: receiving a plurality of pixels from the frame buffer, wherein the pixels are received in an order other than display order; storing the pixels in a pixel buffer in the order they are received; generating a read address for each pixel stored in the pixel buffer, wherein each read address corresponds to a relative display order of a respective pixel; and reading the pixels out of the pixel buffer using successively generated read addresses generated by said generating, wherein successively generated read addresses address pixels in display order; wherein said receiving comprises receiving a burst of pixels; wherein the relative display order comprises the relative display order within the burst; wherein the pixel buffer comprises a plurality of partitions, wherein each partition is configured to store pixels for a respective display channel, and wherein said storing comprises storing at least one burst of pixels for a first display channel in a first partition.
Claim 28
Dependent Claim 14 words
The method of claim 24 , further comprising storing the pixels as pixel pairs.
Claim 29
Dependent Claim 35 words
The method of claim 24 , wherein said generating comprises generating a base address, wherein a same base address is generated for all of the pixels output in a first burst from the frame buffer.
Claim 30
Dependent Claim 35 words
The method of claim 26 , wherein said generating comprises generating an offset for each pixel in the first burst, wherein each pixel's offset corresponds to that pixel's relative display order within the first burst.
Claim 31
Dependent Claim 22 words
The method of claim 27 , wherein said generating comprises concatenating the base address and the offset to produce the read address.
Claim 32
Independent Claim 75 words
A method of reordering pixels received from a frame buffer, comprising: receiving a plurality of pixels from the frame buffer, wherein the pixels are received in an order other than display order; generating a write address for each pixel received from the frame buffer, wherein each write address corresponds to a relative display order of a respective pixel; and storing the pixels in the pixel buffer using successively generated write addresses generated by said generating.
Claim 33
Independent Claim 75 words
A method of reordering pixels received from a frame buffer, comprising: receiving a plurality of pixels from the frame buffer, wherein the pixels are received in an order other than display order; generating a write address for each pixel received from the frame buffer, wherein each write address corresponds to a relative display order of a respective pixel; and storing the pixels in the pixel buffer using successively generated write addresses generated by said generating.
Claim 34
Dependent Claim 19 words
The method of claim 29 , wherein said receiving comprises receiving a burst of pixels from the frame buffer.
Claim 35
Dependent Claim 21 words
The method of claim 30 , wherein each write address corresponds to the relative display order within the burst of pixels.
Claim 36
Dependent Claim 29 words
The method of claim 30 , wherein said storing comprises storing at least one burst of pixels for a respective display channel within a partition in the pixel buffer.
Claim 37
Dependent Claim 14 words
The method of claim 32 , further comprising storing the pixels as pixel pairs.
Claim 38
Dependent Claim 35 words
The method of claim 32 , wherein said generating comprises generating a base address, wherein a same base address is generated for all of the pixels output in a first burst from the frame buffer.
Claim 39
Dependent Claim 33 words
The method of claim 34 , wherein said generating comprises generating an offset that corresponds to each pixel's relative display order with respect to each of the other pixels in the first burst.
Claim 40
Dependent Claim 22 words
The method of claim 35 , wherein said generating comprises concatenating the base address and the offset to produce the write address.
Claim 41
Dependent Claim 35 words
The method of claim 30 , wherein said generating comprises generating write addresses for the pixels so that the pixels in a first burst are stored in at least one block in the pixel buffer.
Claim 42
Dependent Claim 28 words
The method of claim 37 , wherein a first display channel's blocks of pixels are intermingled with a second display channel's blocks of pixels within the pixel buffer.
Claim 43
Dependent Claim 28 words
The method of claim 37 , further comprising tracking which blocks in the pixel buffer are allocated and tracking which display channel each allocated block stores pixels for.
Claim 44
Dependent Claim 27 words
The method of claim 37 , further comprising tracking a relative display order of each of the blocks that are storing pixels for a first display channel.
Claim 45
Dependent Claim 49 words
The method of claim 37 , wherein said generating further comprises generating a first base address for a first block and generating an offset for each pixel within a first portion of the first burst, wherein the offset corresponds to each pixel's relative display order within the first burst.
Claim 46
Dependent Claim 31 words
The method of claim 41 , wherein said generating further comprises concatenating the first base address and the offset to generate the write address for each pixel in the first portion.
Claim 47
Dependent Claim 17 words
The method of claim 29 , wherein the frame buffer comprises one or more 3D-RAM memory devices.
Claim 48
Dependent Claim 14 words
The method of claim 29 , wherein the frame buffer comprises multiple memory banks.
Claim 49
Dependent Claim 13 words
The method of claim 44 , wherein the multiple memory banks are interleaved.
Claim 50
Dependent Claim 21 words
The method of claim 45 , wherein the multiple memory banks are interleaved for improved write efficiency into the frame buffer.

References Cited (Backward Citations)

US5544306A Cited
US5796412A Cited
US6310657B1 Cited
US5945997A Cited
US6323868B1 Cited
US6496192B1 Cited
US20030016302A1 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2007-12-21 2008-06-21 2008-12-21 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2011-12-21 2012-06-21 2012-12-21 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2015-12-21 2016-06-21 2016-12-21 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag