IP Library Granted Patent US 8,255,613
Granted Patent B2
US 8,255,613 · App. 12/433,220 · Granted Aug 28, 2012

Wear-leveling and bad block management of limited lifetime memory devices

Assignee: International Business Machines Corporation
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 8,255,613
App. No.
12/433,220
Granted
Aug 28, 2012
Kind
B2
Abstract

Performing wear-leveling and bad block management of limited lifetime memory devices. A method for performing wear-leveling in a memory includes receiving logical memory addresses and applying a randomizing function to the logical memory addresses to generate intermediate addresses within a range of intermediate addresses. The intermediate addresses are mapped into physical addresses of a memory using an algebraic mapping. The physical addresses are within a range of physical addresses that include at least one more location than the range of intermediate addresses. The physical addresses are output for use in accessing the memory. The mapping between the intermediate addresses and the physical addresses is periodically shifted. In addition, contents of bad blocks are replaced with redundantly encoded redirection addresses.

Claims (22)

1. A method for performing wear-leveling in a memory system, the method comprising:

receiving logical memory addresses;

applying a randomizing function to the logical memory addresses to generate intermediate addresses within a range of intermediate addresses;

mapping the intermediate addresses into physical addresses of a memory using an algebraic mapping, the physical addresses within a range of physical addresses that include at least one more location than the range of intermediate addresses, wherein the physical addresses include a gap location address and a plurality of non-gap location addresses;

outputting the physical addresses; and

periodically shifting the mapping between the intermediate addresses and the physical addresses, wherein the shifting includes copying data from a non-gap location address comprising a first address into the gap location comprising a second address, and redefining the gap location address to be the first address.

2. The method of claim 1 wherein the randomizing function is a permutation of bits in the logical memory addresses.

3. The method of claim 2 wherein the permutation of bits is randomly selected during memory power-up time.

4. The method of claim 1 wherein the mapping is performed using a circular buffer.

5. The method of claim 1 wherein the logical memory addresses correspond to memory blocks specifying an origin of data and the method further comprises periodically shifting the origin of data.

6. A memory system comprising:

a memory including one or more limited lifetime memory devices; and

a wear-leveling module connected to a processor and to the memory, the wear-leveling module:

receiving logical memory addresses from the processor;

applying a randomizing function to the logical memory addresses to generate intermediate addresses within a range of intermediate addresses;

mapping the intermediate addresses into physical addresses of the memory using an algebraic mapping, the physical addresses including at least one more location than the range of intermediate addresses, wherein the physical addresses include a gap location address and a plurality of non-gap location addresses;

outputting the physical addresses; and

periodically shifting the mapping between the intermediate addresses and the physical addresses, wherein the shifting includes copying data from a non-gap location address comprising a first address into the gap location comprising a second address, and redefining the gap location address to be the first address.

7. The memory system of claim 6 wherein the memory is one of a phase change memory (PCM) and a flash memory.

8. The memory system of claim 6 wherein the randomizing function is a permutation of bits in the logical memory addresses.

9. The memory system of claim 6 wherein the mapping is performed using a circular buffer.

10. The memory system of claim 6 wherein the memory addresses correspond to memory blocks specifying an origin of data and the method further comprises periodically shifting the origin of the data.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded May 12, 2021
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: GLOBALFOUNDRIES U.S. INC.
Reel/Frame 056987/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 20, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: GLOBALFOUNDRIES INC.
Reel/Frame 054636/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2020
From: GLOBALFOUNDRIES INC.
To: GLOBALFOUNDRIES U.S. INC.
Reel/Frame 054633/0001 →
SECURITY AGREEMENT Recorded Nov 29, 2018
From: GLOBALFOUNDRIES INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 049490/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2015
From: GLOBALFOUNDRIES U.S. 2 LLC; GLOBALFOUNDRIES U.S. INC.
To: GLOBALFOUNDRIES INC.
Reel/Frame 036779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 3, 2015
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GLOBALFOUNDRIES U.S. 2 LLC
Reel/Frame 036550/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2009
From: ABALI, BULENT; KARIDIS, JOHN P.; LASTRAS-MONTANO, LUIS A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 022975/0113 →
Continuity (1)
Related Publication 20100281202A1 · Nov 4, 2010