Systems and methods for addressing a cache with split-indexes
First Claim
Patent Images
1. A method for storing elements from a main memory into a cache, the method comprising:
- associating respective ones of a plurality of cache lines of a cache memory with different ones of a plurality of indexes;
defining a first set of bits of a first address associated with a first memory location of the main memory as a first index portion and defining a second set of bits of the first address as a second index portion;
generating, with the cache, a first combined index by concatenating the first index portion and the second index portion; and
storing data from at least the first memory location to a first cache line of the plurality of cache lines based on the first combined index.
2 Assignments
0 Petitions
Accused Products
Abstract
Cache memory mapping techniques are presented. A cache may contain an index configuration register. The register may configure the locations of an upper index portion and a lower index portion of a memory address. The portions may be combined to create a combined index. The configurable split-index addressing structure may be used, among other applications, to reduce the rate of cache conflicts occurring between multiple processors decoding the video frame in parallel.
-
Citations
25 Claims
-
1. A method for storing elements from a main memory into a cache, the method comprising:
-
associating respective ones of a plurality of cache lines of a cache memory with different ones of a plurality of indexes; defining a first set of bits of a first address associated with a first memory location of the main memory as a first index portion and defining a second set of bits of the first address as a second index portion; generating, with the cache, a first combined index by concatenating the first index portion and the second index portion; and storing data from at least the first memory location to a first cache line of the plurality of cache lines based on the first combined index. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A cache for storing data elements from a main memory, the cache comprising:
-
a plurality of cache lines referenced by different ones of a plurality of indexes; an index configuration register to define a first set of bits of a first address associated with a first memory location of the main memory as a first index portion and to define a second set of bits of the first address as a second index portion; an index generation module to receive the first index portion and the second index portion as defined by the index configuration register, and to generate a first combined index by concatenating the first index portion and the second index portion; and a memory address mapping module to map at least the first memory location to a first cache line of the plurality of cache lines based on the first combined index. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory computer readable storage medium comprising computer executable instructions that, when executed by a computer system, cause the computer system to at least:
-
associate respective ones of a plurality of cache lines of a cache with different ones of a plurality of indexes; define a first set of bits of a first address associated with a first memory location of a main memory as a first index portion and define a second set of bits of the first address as a second index portion; generate a the first combined index by concatenating the first index portion and the second index portion; and store data from at least the first memory location to a first cache line of the plurality of cache lines based on the first combined index. - View Dependent Claims (21, 22, 23, 24, 25)
-
Specification