IP Library Granted Patent US 6,874,070
Granted Patent B2
US 6,874,070 · App. 10/080,440 · Granted Mar 29, 2005

System and method for memory interleaving using cell map with entry grouping for higher-way interleaving

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,874,070
App. No.
10/080,440
Granted
Mar 29, 2005
Kind
B2
Abstract

A method of accessing a plurality of memories in an interleaved manner using a contiguous logical address space includes providing at least one map table. The at least one map table includes a plurality of entries. Each entry includes a plurality of entry items. Each entry item identifies one of the memories. A first logical address is received. The first logical address includes a plurality of address bits. The plurality of address bits includes a first set of address bits corresponding to a first set of entries in the at least one map table. A first entry in the first set of entries is identified based on the first set and a second set of the address bits. A first entry item in the first entry is identified based on a third set of the address bits. The memory identified by the first entry item is accessed.

Claims (51)

1. A method of accessing a plurality of memories in an interleaved manner using a contiguous logical address space, the method comprising:

providing at least one map table, the at least one map table including a plurality of entries, each entry including a plurality of entry items, each entry item identifying one of the memories;

receiving a first logical address, the first logical address including a plurality of address bits, the plurality of address bits including a first set of address bits corresponding to a first set of entries in the at least one map table, wherein each entry in the first set includes entry items that are different than entry items of other entries in the first set;

identifying a first entry in the first set of entries based on the first set and a second set of the address bits;

identifying a first entry item in the first entry based on a third set of the address bits; and

accessing the memory identified by the first entry item.

2. The method of claim 1 , wherein the first, second, and third sets of address bits are non-overlapping.

3. The method of claim 1 , wherein the first, second, and third sets of address bits are each separated from one another by a plurality of other bits.

4. The method of claim 1 , wherein the first set of address bits include more significant bits than the second set of address bits, and wherein the second set of address bits include more significant bits than the third set of address bits.

5. The method of claim 1 , and further comprising:

storing a plurality of memory offset values in the at least one map table;

identifying one of the memory offset values based on the first logical address; and

wherein the memory identified by the first entry item is accessed at a memory location based at least in part on the identified memory offset value.

6. The method of claim 1 , wherein the first logical address is a processor address.

7. The method of claim 1 , wherein the at least one map table is organized into a plurality of rows and a plurality of columns, and wherein each row corresponds to one of the plurality of entries and each column within a row corresponds to one of the plurality of entry items.

8. The method of claim 1 , and further comprising:

providing a multi-bit mask value;

providing a plurality of multi-bit match values;

extracting the first set of address bits from the first logical address using the multi-bit mask value; and

comparing the extracted first set of address bits to the plurality of multi-bit match values to identify a match.

9. The method of claim 1 , and further comprising:

providing at least one multi-bit mask value;

providing a plurality of multi-bit match values;

extracting the second set of address bits from the first logical address using the at least one multi-bit mask value;

comparing the extracted second set of address bits to the plurality of multi-bit match values; and

wherein the first entry in the first set of entries is identified based at least in part on the comparison of the extracted second set of address bits to the plurality of multi-bit match values.

10. The method of claim 1 , and further comprising:

providing a plurality of multi-bit mask values;

providing a plurality of multi-bit match values;

selecting one of the plurality of multi-bit mark values based on a desired interleave entry size;

extracting the second set of address bits from the first logical address using the selected multi-bit mask value;

comparing the extracted second set of address bits to the plurality of multi-bit match values; and

wherein the first entry in the fist set of entries is identified based at least in part on the comparison of the extracted second set of address bits to the plurality of multi-bit match values.

11. The method of claim 1 , wherein the memories each include at least one memory segment, the memory segments organized into groups, the memory segments in each group baying a uniform size, and wherein each entry in the at least one map table corresponds to one of the groups of memory segments.

12. The method of claim 1 , wherein the memories are distributed across a plurality of cells, with each cell including at least one processor, a cell controller, and an input/output device.

13. A system for providing interleaved access to a plurality of memories, the system comprising:

at least one map table including a plurality of entries, each entry including a plurality of entry items, each entry item identifying one of the memories;

a controller for receiving a first logical address, the first logical address including a plurality of address bits, the plurality of address bits including a first set of address bits corresponding to a first set of entries in the at least one map table, wherein all of the entries in the first set includes first set includes a plurality of entries items that are different than entry items of other entries in the first set; and

wherein the controller is configured to identify a first entry in the first set of entries based on the first set and a second set of the address bits, and identify a first entry item in the first entry based on a third set of the address bits.

14. The system of claim 13 , wherein the controller is configured to access the memory identified by the first entry item.

15. A method of accessing a plurality of memories in an interleaved manner using a contiguous logical address space, the method comprising:

providing at least one map table, the at least one map table including a plurality of entries, each entry including a plurality of entry items, each entry item identifying one of the memories;

receiving a first logical address, the first logical address including a plurality of address bits, the plurality of address bits including a first set of address bits corresponding to a first set of entries in the at least one map table, wherein all of the entries in the first set includes a plurality of entries items that are different than entry items of other entries in the first set;

identifying a first entry in the first set of entries based on the first set and a second set of the address bits;

identifying a first entry item in the first entry based on a third set of the address bits; and

accessing the memory identified by the first entry item.

16. A system for providing interleaved access to a plurality of memories, the system comprising:

at least one map table including a plurality of entries, each entry including a plurality of entry items, each entry item identifying one of the memories;

a controller for receiving a first logical address, the first logical address including a plurality of address bits, the plurality of address bits including a first set of address bits corresponding to a first set of entries in the at least one map table, wherein each entry in the first set includes entry items that are different than entry items of other entries in the first set; and

wherein the controller is configured to identify a first entry in the first set of entries based on the first set and a second set of the address bits, and identify a first entry item in the first entry based on a third set of the address bits.

17. The system of claim 16 , wherein the controller is configured to access the memory identified by the first entry item.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2021
From: OT PATENT ESCROW, LLC
To: VALTRUS INNOVATIONS LIMITED
Reel/Frame 055403/0001 →
PATENT ASSIGNMENT, SECURITY INTEREST, AND LIEN AGREEMENT Recorded Jan 26, 2021
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP; HEWLETT PACKARD ENTERPRISE COMPANY
To: OT PATENT ESCROW, LLC
Reel/Frame 055269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →