US5936616A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and system for accessing and displaying a compressed display image in a computer system
Assignee: Microsoft Technology Licensing LLC
•
Filing: 1996-08-07
•
Granted: 1999-08-10
•
Expires: 2016-08-07
Abstract
Abstract A display controller, implemented in software or hardware, maintains the primary display image visible on a computer monitor in compressed subregions or chunks. The controller emulates a conventional frame buffer by making the compressed image appear as if it has a linear address space. Most of the image is compressed and the remainder is selectively decompressed and cached to satisfy read and write requests. To display the image, the controller decompresses the display image's constituent subregions and buffers the decompressed data so that it can be scanned out to a display monitor.
Inventors
- 👤 John G. Torborg, Jr.
- 👤 James E. Veres
- 👤 Om Kumar Sharma
- 👤 George Easton Scott, III
- 👤 William Chambers Powell, III
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-07 02:32
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0875; G09; G09G; G09G5/00; G09G5/36; G09G5/39; G09G2340/00; G09G2340/02; G09G2360/00; G09G2360/12; G09G2360/121
Claims Analysis
Total Claims: 23
Claim 1
Independent Claim
171 words
A compressed display image controller comprising: a compressed memory for storing compressed subregions of a display image; a cache for storing decompressed subregions of the display image; a compressor in communication with the cache for compressing the decompressed subregions of the display image stored in the cache; a decompressor in communication with the compressed memory for decompressing a compressed subregion of the display image, and in communication with the cache for placing the decompressed subregion in the cache; and a virtual frame buffer controller in communication with the cache for receiving an access request for a pixel in the display image, for determining whether the pixel is in the cache, and if not, for issuing a request to the decompressor to decompress a compressed subregion including the pixel; and a compositor in communication with the compressed memory for decompressing the compressed subregions of the display image and for buffering at least a portion of the decompressed display image as the decompressed display image is being read to refresh a display monitor.
Claim 2
Dependent Claim
171 words
A compressed display image controller comprising: a compressed memory for storing compressed subregions of a display image; a cache for storing decompressed subregions of the display image; a compressor in communication with the cache for compressing the decompressed subregions of the display image stored in the cache; a decompressor in communication with the compressed memory for decompressing a compressed subregion of the display image, and in communication with the cache for placing the decompressed subregion in the cache; and a virtual frame buffer controller in communication with the cache for receiving an access request for a pixel in the display image, for determining whether the pixel is in the cache, and if not, for issuing a request to the decompressor to decompress a compressed subregion including the pixel; and a compositor in communication with the compressed memory for decompressing the compressed subregions of the display image and for buffering at least a portion of the decompressed display image as the decompressed display image is being read to refresh a display monitor.
Claim 3
Dependent Claim
28 words
The controller of claim 1 wherein the virtual frame buffer controller presents a linear address space to allow random access to each pixel in the compressed display image.
Claim 4
Dependent Claim
18 words
The controller of claim 2 wherein the compressed desktop display image is comprised of variable sized compressed subregions.
Claim 5
Dependent Claim
20 words
The controller of claim 3 wherein the decompressor decompresses the variable sized compressed subregions using a lossless form of decompression.
Claim 6
Dependent Claim
20 words
The controller of claim 3 wherein the decompressor decompresses the variable sized compressed subregions using a lossy form of decompression.
Claim 7
Dependent Claim
23 words
The controller of claim 1 wherein the virtual frame buffer controller includes virtual frame buffer logic in communication with a digital signal processor.
Claim 8
Dependent Claim
29 words
The controller of claim 1 wherein the virtual frame buffer controller comprises a series of software instructions executing on a computer in communication with the cache and compressed memory.
Claim 9
Dependent Claim
14 words
The controller of claim 1 wherein the compressed subregions comprise variable sized compressed subregions.
Claim 10
Independent Claim
95 words
A method for accessing a compressed display image comprising: receiving an access request to access a pixel at a pixel location in a linear addressed frame buffer; storing a decompressed portion of the linear addressed frame buffer in a cache; storing a compressed portion of the linear addressed frame buffer in compressed memory; in response to the access request, determining whether the pixel is in the cache; fetching a compressed subregion having the pixel when the pixel is not in the cache; decompressing the compressed subregion; and allowing the access of the pixel to occur.
Claim 11
Independent Claim
95 words
A method for accessing a compressed display image comprising: receiving an access request to access a pixel at a pixel location in a linear addressed frame buffer; storing a decompressed portion of the linear addressed frame buffer in a cache; storing a compressed portion of the linear addressed frame buffer in compressed memory; in response to the access request, determining whether the pixel is in the cache; fetching a compressed subregion having the pixel when the pixel is not in the cache; decompressing the compressed subregion; and allowing the access of the pixel to occur.
Claim 12
Dependent Claim
19 words
The method of claim 9 including repetitively rejecting the access request until the compressed subregion is fetched and decompressed.
Claim 13
Dependent Claim
45 words
The method of claim 9 wherein the access request is a write request; and further including: writing a new pixel into the cache; and after writing the new pixel to the cache, decompressing the compressed region, and merging the new pixel into the decompressed subregion.
Claim 14
Dependent Claim
55 words
The method of claim 11 wherein the merging step comprises merging the new pixel in the cache with a decompressed subregion of the frame buffer including the pixel location; and compressing the decompressed subregion including the merged pixel from the merging step; decompressing the compressed subregion including the merged pixel; and displaying the merged pixel.
Claim 15
Dependent Claim
26 words
The method of claim 11 wherein the merging step comprises merging the new pixel in the cache with a decompressed pixel; and displaying the merged pixel.
Claim 16
Dependent Claim
28 words
The method of claim 9 wherein the access request is a read request, and wherein the read request is allowed only after the pixel is in the cache.
Claim 17
Independent Claim
94 words
A method for emulating a linear addressed frame buffer comprising: storing variable sized, compressed subregions of a display image; storing a decompressed portion of the display image in a cache; receiving a request to access a pixel in the display image in a linear address format; and determining whether the requested pixel is in the decompressed portion, and if so, directing the request to a location of the pixel in the cache, and if not, rejecting the request, and decompressing a compressed subregion including the pixel and placing the decompressed subregion in the cache.
Claim 18
Independent Claim
94 words
A method for emulating a linear addressed frame buffer comprising: storing variable sized, compressed subregions of a display image; storing a decompressed portion of the display image in a cache; receiving a request to access a pixel in the display image in a linear address format; and determining whether the requested pixel is in the decompressed portion, and if so, directing the request to a location of the pixel in the cache, and if not, rejecting the request, and decompressing a compressed subregion including the pixel and placing the decompressed subregion in the cache.
Claim 19
Dependent Claim
65 words
The method of claim 15 wherein the request to access the pixel is a write request; and further including: writing a new pixel to the cache; associating the new pixel with an overwrite flag; repeating the writing and associating steps; decompressing a compressed subregion including pixel locations corresponding to the new pixels in the cache; and selectively overwriting the new pixels into the decompressed subregion.
Claim 20
Dependent Claim
30 words
The method of claim 15 further including: decompressing the compressed subregions; and converting the decompressed subregions into control signals used to make the display image visible on a display monitor.
Claim 21
Dependent Claim
19 words
The method of claim 15 wherein the variable sized compressed subregions are compressed using a lossless form of compression.
Claim 22
Dependent Claim
19 words
The method of claim 15 wherein the variable sized compressed subregions are compressed using a lossy form of compression.
Claim 23
Dependent Claim
24 words
The method of claim 18 wherein the lossless form of compression includes compressing blocks of the display image using Huffman and run length coding.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2002-08-09 | 2003-02-08 | 2003-08-10 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2006-08-09 | 2007-02-08 | 2007-08-10 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2010-08-09 | 2011-02-08 | 2011-08-10 | $7700.00 | Window Closed / Lapsed |