System and method for frame buffer storage and retrieval in alternating orientations
First Claim
1. A method for processing image data for display, comprising:
- for each incoming image frame, successively alternating between storing rows of the incoming image frame as rows in a frame buffer and storing rows of the incoming image frame as columns in the frame buffer while successively alternating between displaying rows of the frame buffer as columns on a display and displaying columns of the frame buffer as columns on the display.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides a method and apparatus for storing image data for successive frames in a frame buffer. Specifically, the method and apparatus allow for a display-sized frame buffer to be utilized where a host system provides image data in a format different from that which the display requires to be written to it while retaining the beneficial aspects of concurrent read and write operations from and to the frame buffer. Using this method a buffer controller receives image data from a host system in a first format (e.g. row-by-row) and writes it to the frame buffer in the first format. When the buffer is completely filled with the first frame, it is read out in a second format (e.g. column-by-column) by the buffer controller and provided to a display driver that writes the data to the display. As the first frame is read out in the second format, the buffer controller receives image data for a second frame from the host system in the first format, but rotates it before writing it to the frame buffer such that it is written to the frame buffer in the second format. This rotation allows the buffer controller to write to the frame buffer and the display driver to read from the frame buffer concurrently, despite the different image data format requirements of the host system and display. When the second frame is completely written to the buffer in the second format, the buffer controller then reads the buffer in the first format, and writes it to the display. At this point the process repeats. Thus, the benefits of concurrent read and write are preserved.
-
Citations
19 Claims
-
1. A method for processing image data for display, comprising:
for each incoming image frame, successively alternating between storing rows of the incoming image frame as rows in a frame buffer and storing rows of the incoming image frame as columns in the frame buffer while successively alternating between displaying rows of the frame buffer as columns on a display and displaying columns of the frame buffer as columns on the display. - View Dependent Claims (2, 3, 4)
-
5. A method for processing image data for display, comprising:
-
(a) storing a first image frame in a frame buffer; (b) reading a first column of the frame buffer for display as a column; (c) rotating a first row of a second image frame and storing the rotated data in the first column of the frame buffer; (d) reading a second column of the frame buffer for display as a column; (e) rotating a second row of the second image frame and storing the rotated data in the second column of the frame buffer; (f) repeating steps (b) through (e) until the first image frame has been read from the frame buffer and the second image frame has been stored in the frame buffer; (g) reading a first row of the frame buffer and rotating it for display as a column; (h) storing a first row of a third image frame in the first row of the frame buffer; (i) reading a second row of the frame buffer and rotating it for display as a column; (j) storing a second row of a third image frame in the second row of the frame buffer; (k) repeating steps (g) through (j) until the second image frame has been read from the frame buffer and the third image frame has been stored in the frame buffer; and (l) repeating steps (b) through (k) continuously.
-
-
6. A method for processing image data for a display, comprising:
-
obtaining image data from a host system in a first format; successively alternating between storing the image data in a frame buffer in the first format and a second format; successively alternating between reading the image data from the frame buffer in the first format and the second format; and displaying the image data in the second format; wherein one of the first format and the second format is row-by-row, and wherein the other of the first format and the second format is column-by-column. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A display system comprising:
-
a display; a frame buffer, and logic circuitry configured to; obtaining image data from a host system in a first format; successively alternating between storing the image data in the frame buffer in the first format and a second format; successively alternating between reading the image data from the frame buffer in the first format and the second format; and provide the image data for display in the second format; wherein one of the first format and the second format is row-by-row, and wherein the other of the first format and the second format is column-by-column. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A display system comprising:
-
means for storing image data; means for obtaining image data from a host system in a first format; means for successively alternating between storing the image data in the storage means in the first format and a second format; means for successively alternating between reading the image data from a frame buffer in the first format and the second format; and means for displaying the image data in the second format; wherein one of the first format and the second format is row-by-row, and wherein the other of the first format and the second format is column-by-column. - View Dependent Claims (19)
-
Specification