Efficient I-cache structure to support instructions crossing line boundaries
AssigneeHewlett-Packard Company
InventorGary L Vondran, Jr.
Life of this patent
Estimating the term…
Abstract
A cache structure, organized in terms of cache lines, for use with variable length bundles of instructions (syllables), comprising: a first cache bank that is organized in columns and rows; a second cache bank that is organized in columns and rows; logic for defining said cache line into a sequence of equal sized segments, and mapping alternate segments in said sequence of segments to the columns in said cache banks such that said first bank holds even segments and said second bank holds odd segments; logic for storing bundles across at most a first column in said first cache bank and a sequentially adjacent column in said second cache bank; and logic for accessing bundles stored in the first and second cache banks.
Claims23
A cache structure, organized in terms of cache lines, for use with variable length bundles of instructions (syllables), comprising:
- a first cache bank that is organized in columns and rows;
- a second cache bank that is organized in columns and rows;
- logic for defining said cache line into a sequence of equal sized segments, and mapping alternate segments in said sequence of segments to the columns in said cache banks such that said first bank holds even segments and said second bank holds odd segments;
- logic for storing bundles across at most a first column in said first cache bank and a sequentially adjacent column in said second cache bank;
- and
- logic for accessing bundles stored in said first and second cache banks.
A method for organizing a cache structure which, in turn, is organized in terms of cache lines, for use with variable length bundles of instructions (syllables), comprising:
- defining said cache line into a sequence of equal sized segments, and mapping alternate segments in said sequence of segments to columns in cache banks such that a first bank holds even segments and a second bank holds odd segments;
- storing bundles across at most a first column in said first cache bank and a sequentially adjacent column in said second cache bank;
- and
- accessing bundles stored in said first and second cache banks.
A program product, comprising:
- a computer usable medium having computer readable code embodied therein for organizing a cache structure which, in turn, is organized in terms of cache lines, for use with variable length bundles of instructions (syllables), comprising:
- first code for defining said cache line into a sequence of equal sized segments, and mapping alternate segments in said sequence of segments to columns in cache banks such that a first bank holds even segments and a second bank holds odd segments;
- second code for storing bundles across at most a first column in said first cache bank and a sequentially adjacent column in said second cache bank;
- and
- third code for accessing bundles stored in said first and second cache banks.
Dependencies are inferred from the claim text.