INLINE IMAGE ROTATION
First Claim
1. An apparatus comprising:
- a fetch unit; and
a memory coupled to the fetch unit;
wherein the fetch unit is configured to generate a plurality of read operations to read pixels from a source image stored in the memory, wherein the plurality of read operations are generated in an order that is based on a rotation being performed on the source image.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and apparatus for performing an inline rotation of an image. The apparatus includes a rotation unit for reading pixels from a source image in an order based on a specified rotation to be performed. The source image is partitioned into multiple tiles, the tiles are processed based on where they will be located within the rotated image, and each tile is stored in a tile buffer. The target pixel addresses within a tile buffer are calculated and stored in a lookup table, and when the pixels are retrieved from the source image by the rotation unit, the lookup table is read to determine where to write the pixels within a corresponding tile buffer.
-
Citations
23 Claims
-
1. An apparatus comprising:
-
a fetch unit; and a memory coupled to the fetch unit; wherein the fetch unit is configured to generate a plurality of read operations to read pixels from a source image stored in the memory, wherein the plurality of read operations are generated in an order that is based on a rotation being performed on the source image. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A rotation unit configured to:
-
receive configuration bits indicating a selected rotation to be performed on a source image; issue read requests for the source image, wherein the read requests are issued in an order based on the selected rotation; for each read request, calculate target positions of corresponding pixels in a rotated image, wherein the rotated image is the source image after the selected rotation has been performed; store the calculated target positions in a table; receive the pixels from the source image; and retrieve the calculated target positions and store the received pixels at the calculated target positions within a tile buffer. - View Dependent Claims (13, 14, 15)
-
-
16. A method comprising:
-
issuing fetch requests for pixels from a source image, wherein an order in which the fetch requests are issued is based on a specified rotation; calculating target locations for the pixels, wherein the target locations are calculated based on the specified rotation, and wherein the target locations correspond to locations within a rotated version of the source image; and receiving and storing the pixels in a tile buffer at the calculated target locations. - View Dependent Claims (17, 18, 19)
-
-
20. A method comprising:
-
partitioning a source image into a plurality of tiles, wherein the partitioning is based on a specified rotation; reading pixels from a first tile of the source image; storing the pixels from the first tile in target locations within a tile buffer, wherein the target locations are calculated based on the specified rotation; responsive to detecting the tile buffer has been read by a subsequent stage in a graphics pipeline; reading pixels from a second tile of the source image; and storing the pixels from the second tile in the tile buffer. - View Dependent Claims (21, 22, 23)
-
Specification