Accessing encoded blocks of data in memory
AssigneeArm Limited
InventorsQuinn Carter, Lars Oskar Flordal, Jakob Axel Fries
Life of this patent
Estimating the term…
Abstract
A method of storing encoded blocks of data in memory comprises generating headers for the encoded blocks of data. The headers are stored in memory according to a tiled layout based on tiles of plural adjacent blocks of data elements of the array of data elements. Respective sets of the encoded blocks of data are also stored in respective distinct regions of memory locations that have been allocated to those sets. The method provides an efficient way to access headers and corresponding encoded blocks of data in memory.
Claims15
A method of storing an encoded block of data in memory, the method comprising:
- encoding a block of data elements of an array of data elements to generate an encoded block of data that represents the block of data elements;
- generating a header for the encoded block of data, wherein the header indicates a location in memory for storing the encoded block of data;
- writing out the header for the encoded block of data to memory, wherein the header for the encoded block of data is stored in memory according to a tiled layout, the tiled layout being formed of tiles of plural adjacent blocks of data elements of the array of data elements;
- and
- writing out the encoded block of data to memory, wherein the encoded block of data is stored in memory at the location indicated in the header for the encoded block of data.
A data processing apparatus for storing an encoded block of data in memory, the apparatus comprising:
- encoding circuitry configured to:
- encode a block of data elements of an array of data elements to generate an encoded block of data that represents the block of data elements;
- and
- generate a header for the encoded block of data, wherein the header indicates a location in memory for storing the encoded block of data;
- and
- write control circuitry configured to:
- write out the header for the encoded block of data to memory, wherein the header for the encoded block of data is stored in memory according to a tiled layout, the tiled layout being formed of tiles of plural adjacent blocks of data elements of the array of data elements;
- and
- write out the encoded block of data to memory, wherein the encoded block of data is stored in memory at the location indicated in the header for the encoded block of data.
A non-transitory computer readable storage medium storing computer software code which, when executing on a processor of a data processing apparatus performs a method of storing an encoded block of data in memory, the method comprising:
- encoding a block of data elements of an array of data elements to generate an encoded block of data that represents the block of data elements;
- generating a header for the encoded block of data, wherein the header indicates a location in memory for storing the encoded block of data;
- writing out the header for the encoded block of data to memory, wherein the header for the encoded block of data is stored in memory according to a tiled layout, the tiled layout being formed of tiles of plural adjacent blocks of data elements of the array of data elements;
- and
- writing out the encoded block of data to memory, wherein the encoded block of data is stored in memory at the location indicated in the header for the encoded block of data.
Dependencies are inferred from the claim text.