Memory interleaving
First Claim
Patent Images
1. A method comprising:
- receiving an address corresponding to a memory having a non power of two number, X, of associated channels to the memory;
determining one or more of the channels to use in accessing the memory, the determining comprising applying a modulo-X based reduction to the address; and
indexing the address for a determined channel;
wherein the receiving comprises receiving a first address and a count, the method further comprising calculating a second address from the first address and the count, and the determining comprises applying the modulo-X based reduction to the first and second addresses to map the first and second addresses to the channels, wherein a single one of the channels is determined to be used in accessing the memory in response to receiving the first address if both the first and second addresses map to the single one of the channels.
2 Assignments
0 Petitions
Accused Products
Abstract
Memory interleaving includes providing a non-power of two number of channels in a computing system and interleaving memory access among the channels.
356 Citations
16 Claims
-
1. A method comprising:
-
receiving an address corresponding to a memory having a non power of two number, X, of associated channels to the memory; determining one or more of the channels to use in accessing the memory, the determining comprising applying a modulo-X based reduction to the address; and indexing the address for a determined channel; wherein the receiving comprises receiving a first address and a count, the method further comprising calculating a second address from the first address and the count, and the determining comprises applying the modulo-X based reduction to the first and second addresses to map the first and second addresses to the channels, wherein a single one of the channels is determined to be used in accessing the memory in response to receiving the first address if both the first and second addresses map to the single one of the channels. - View Dependent Claims (2)
-
-
3. A method comprising:
-
receiving an address corresponding to a memory having a non power of two number, X, of associated channels to the memory; determining one or more of the channels to use in accessing the memory, the determining comprising applying a modulo-X based reduction to the address; and indexing the address for a determined channel; wherein the indexing comprises; determining a longest string of consecutive bits having a value of one in the address; dropping the longest string from the address; justifying remaining bits in the address; and filling vacated bits in the address with ones to create a remapped address for the determined channel. - View Dependent Claims (4)
-
-
5. An apparatus comprising:
-
a non power of two number, X, of channels to a memory; and a control device configured to receive an address corresponding to the memory and determine one or more of the channels to use in accessing the memory by applying a modulo-X based reduction to the address; wherein the address comprises a first address, the control device configured to receive the first address and a count, calculate a second address from the first address and the count, and determine the one or more of the channels by applying the modulo-X based reduction to the first and second addresses to map the first and second addresses to the channels, wherein a single one of the channels is determined to be used in accessing the memory in response to receipt of the first address if both the first and second addresses map to the single one of the channels. - View Dependent Claims (6, 13, 14, 15, 16)
-
-
7. An apparatus comprising:
-
a non power of two number, X, of channels to a memory; and a control device configured to receive an address corresponding to the memory and determine one or more of the channels to use in accessing the memory by applying a modulo-X based reduction to the address, the control device configured to determine a longest string of consecutive bits having a value of one in the address, drop the longest string from the address, justify remaining bits in the address, and fill vacated bits in the address with ones to create a remapped address for the determined channel. - View Dependent Claims (8)
-
-
9. An apparatus comprising:
-
a non power of two number, X, of channels to a memory; and a control device configured to receive an address corresponding to the memory and determine one or more of the channels to use in accessing the memory by applying a modulo-X based reduction to the address; wherein the control device comprises X channel controllers, each of the channel controllers configured to receive the address corresponding to the memory and determine whether an associated channel is to be used in accessing the memory by applying the modulo-X based reduction to the address; and wherein the address comprises a first address, each of the channel controllers comprises a match detect mechanism and a count remapping mechanism, the match detect mechanism configured to receive the first address and a count, calculate a second address from the first address and the count, and determine whether the associated channel is to be used in accessing the memory by applying the modulo-X based reduction to the first and second addresses, and the count remapping mechanism configured to receive the first address and the count and to remap the count. - View Dependent Claims (10, 11, 12)
-
Specification