Systems and methods for tag-based cache with dynamic index selection
AssigneeSamsung Electronics Co., Ltd.
InventorTarun Nakra
Life of this patent
Estimating the term…
Abstract
A system includes: cache memory; and a cache controller to: store a line of data in the cache memory according to an address of the line and a compression ratio of the line; and return a requested line of data based on a search in a first candidate set of the cache memory having a first index at a first index bit position of an address of the requested line, and in a second candidate set of the cache memory having a second index at a second index bit position of the address of the requested line. The first index bit position is different from the second index bit position.
Claims19
A system comprising:
- cache memory;
- and
- a cache controller configured to:
- store a line of data in the cache memory according to an address of the line and a compression ratio of the line;
- and
- return a requested line of data based on a search in a first candidate set of the cache memory having a first index at a first index bit position of an address of the requested line, and in a second candidate set of the cache memory having a second index at a second index bit position of the address of the requested line,
- wherein the first index bit position is different from the second index bit position.
A method for storing a line of data in a cache, comprising:
- determining, by a cache controller, a compression ratio of the line;
- selecting, by the cache controller, a set of a cache memory according to the compression ratio of the line, the set having an index at one of a first index bit position of an address of the line or a second index bit position of the address of the line;
- and
- storing, by the cache controller, the line in the set of the cache memory,
- wherein the first index bit position is different from the second index bit position, and
- wherein the second index bit position is shifted to one or more significant bits from the first index bit position.
A method for retrieving a line of data, comprising:
- receiving, by a cache controller, an address for a lookup;
- identifying, by the cache controller, a first candidate set of a cache memory having a first index at a first index bit position of the address;
- identifying, by the cache controller, a second candidate set of the cache memory having a second index at a second index bit position of the address different from the first index bit position;
- searching, by the cache controller, in the first candidate set for the line;
- searching, by the cache controller, in the second candidate set for the line;
- and
- returning, by the cache controller, the line based on the searching.
Dependencies are inferred from the claim text.