Methods and systems for multimedia data processing
Abstract
In certain embodiments, methods and systems for multimedia data processing are provided. In an embodiment, a method for processing multimedia data includes defining one or more pixel block regions in a first cache so as to cache a plurality of reference pixel blocks corresponding to reference data. A reference pixel block from among the plurality of reference pixel blocks is assigned to a pixel block region from among the one or more pixel block regions based on a predetermined criterion. The reference pixel block is associated with a tag based on the pixel block region so as to facilitate a search of the reference data in order to process a plurality of pixel blocks associated with a multimedia frame of the multimedia data.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method, comprising:
defining one or more pixel block regions in a first cache so as to cache a plurality of reference pixel blocks corresponding to reference data; assigning a reference pixel block from among the plurality of reference pixel blocks to a pixel block region from among the one or more pixel block regions based on a predetermined criterion; and associating the reference pixel block with a tag based on the pixel block region so as to facilitate a search of the reference data in order to process a plurality of pixel blocks associated with a multimedia frame.
2 . The method of claim 1 , wherein the pixel block region is defined through at least one of span information indicative of dimensions along a length direction and a width direction of the pixel block region, a base address, a reference index indicative of a reference frame associated with the pixel block region, and a cache bank identification tag indicative of a cache bank associated with the pixel block region.
3 . The method of claim 1 , wherein the search comprises:
determining a first reference region corresponding to the plurality of pixel blocks in a first block partition from among a plurality of block partitions in the multimedia frame; identifying one or more pixel block regions from among the one or more pixel block regions that are likely to include the first reference region by comparing tag information associated with the first reference region with span information associated with the one or more pixel block regions; and determining a presence of one or more reference pixel blocks associated with the first reference region in the identified one or more pixel block regions.
4 . The method of claim 3 , wherein determining the presence of the one or more reference pixel blocks comprises:
determining a possible offset of the first reference region within the identified one or more pixel block regions based on the span information and a location of the first reference region within a reference frame associated with the reference data; and determining a presence of the first reference region at the determined possible offset in the identified one or more pixel block regions by checking a plurality of availability tags associated with the one or more reference pixel blocks at the determined possible offset.
5 . The method of claim 3 , further comprising:
determining a presence of the one or more reference pixel blocks in a second cache if the first reference region is determined to be absent in the identified one or more pixel block regions; and fetching the one or more reference pixel blocks associated with the first reference region from one of:
the second cache if the first reference region is determined to be present in the second cache; and
a memory if the first reference region is determined to be absent in the second cache.
6 . The method of claim 5 , further comprising:
caching the fetched one or more reference pixel blocks in the first cache in order to process the plurality of pixel blocks associated with the multimedia frame.
7 . The method of claim 6 , further comprising:
caching the fetched one or more reference pixel blocks in the second cache upon the one or more reference pixel blocks being read from the first cache in order to process the subsequent pixel blocks associated with the multimedia frame
8 . The method of claim 7 , wherein caching the fetched one or more reference pixel blocks in the second cache comprises:
determining an availability of a space within the second cache for caching the fetched one or more reference pixel blocks; and performing one of:
caching the fetched one or more reference pixel blocks in the second cache if the space is determined to be available within the second cache; and
deleting one or more previously cached reference pixel blocks in the second cache if the space is determined to be unavailable within the second cache, wherein an origin of the second cache is shifted by a predetermined margin for caching the fetched one or more reference pixel blocks on deleting the one or more previously cached reference pixel blocks.
9 . The method of claim 5 , wherein a minimum granularity for fetching a reference pixel block from among the one or more reference pixel blocks associated with the first reference region from the memory is matched with a minimum granularity of caching in a pre-fetch buffer associated with the memory.
10 . The method of claim 9 , wherein the fetching of the one or more reference pixel blocks associated with the first reference region from the memory comprises:
determining one or more additional reference pixel blocks to be fetched along with the one or more reference pixel blocks associated with the first reference region, wherein the one or more additional reference pixel blocks and the first reference region are adjacent to one another within the reference frame and together form a rectangular region within the reference frame.
11 . The method of claim 10 , wherein the one or more additional reference pixel blocks and the first reference region correspond to a block partition from among a plurality of block partitions within the reference frame.
12 . The method of claim 10 , wherein the one or more additional reference pixel blocks and the first reference region correspond to adjacent block partitions within the reference frame.
13 . The method of claim 10 , wherein the fetching of the one or more reference pixel blocks associated with the first reference region from the memory further comprises:
generating a memory fetch command so as to fetch the one or more additional reference pixel blocks and the one or more reference pixel blocks associated with the first reference region from the memory; and fetching the one or more additional reference pixel blocks and the one or more reference pixel blocks associated with the first reference region from the memory based on the generated memory fetch command.
14 . A system, comprising:
a memory configured to store one or more reference frames corresponding to reference data; a cache unit communicatively associated with the memory and comprising a first cache and a second cache; and a processing unit communicatively associated with the memory and the cache unit, the processing unit configured to:
define one or more pixel block regions in the first cache so as to cache a plurality of reference pixel blocks corresponding to the reference data;
assign a reference pixel block from among the plurality of reference pixel blocks to a pixel block region from among the one or more pixel block regions based on a predetermined criterion; and
associate the reference pixel block with a tag based on the pixel block region so as to facilitate a search of the reference data in order to process a plurality of pixel blocks associated with a multimedia frame.
15 . The system of claim 14 , wherein the processing unit is further configured to:
determine a first reference region corresponding to the plurality of pixel blocks in a first block partition from among a plurality of block partitions in the multimedia frame; identify one or more pixel block regions from among the one or more pixel block regions that are likely to include the first reference region by comparing tag information associated with the first reference region with span information associated with the one or more pixel block regions; and determine a presence of one or more reference pixel blocks associated with the first reference region in the identified one or more pixel block regions.
16 . The system of claim 15 , wherein the processing unit is further configured to:
determine a presence of the one or more reference pixel blocks in the second cache if the first reference region is determined to be absent in the identified one or more pixel block regions; and fetch the one or more reference pixel blocks associated with the first reference region from one of:
the second cache if the first reference region is determined to be present in the second cache; and
the memory if the first reference region is determined to be absent in the second cache.
17 . The system of claim 16 , wherein the fetching of the one or more reference pixel blocks associated with the first reference region from the memory comprises:
determining one or more additional reference pixel blocks to be fetched along with the one or more reference pixel blocks associated with the first reference region, wherein the determined one or more reference pixel blocks and the first reference region correspond to one of a block partition and an adjacent block partition from among a plurality of block partitions within the reference frame.
18 . A computer-readable medium storing a set of instructions that when executed cause a computer to perform a method, the method comprising:
defining one or more pixel block regions in a first cache so as to cache a plurality of reference pixel blocks corresponding to reference data; assigning a reference pixel block from among the plurality of reference pixel blocks to a pixel block region from among the one or more pixel block regions based on a predetermined criterion; and associating the reference pixel block with a tag based on the pixel block region so as to facilitate a search of the reference data in order to process a plurality of pixel blocks associated with a multimedia frame.
19 . The computer-readable medium of claim 18 , wherein the search of the reference data comprises:
determining a first reference region corresponding to the plurality of pixel blocks in a first block partition from among a plurality of block partitions in the multimedia frame; identifying one or more pixel block regions from among the one or more pixel block regions that are likely to include the first reference region by comparing tag information associated with the first reference region with span information associated with the one or more pixel block regions; and determining a presence of one or more reference pixel blocks associated with the first reference region in the identified one or more pixel block regions.
20 . The computer-readable medium of claim 19 , further comprising:
determining a presence of the one or more reference pixel blocks in a second cache if the first reference region is determined to be absent in the identified one or more pixel block regions; and fetching the one or more reference pixel blocks associated with the first reference region from one of:
the second cache if the first reference region is determined to be present in the second cache; and
a memory if the first reference region is determined to be absent in the second cache.Join the waitlist — get patent alerts
Track US2014071146A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.