IP Library Granted Patent US 9,104,547
Granted Patent B2
US 9,104,547 · App. 13/197,460 · Granted Aug 11, 2015

Wear leveling for a memory device

Inventor: Robert Baltar (Folsom, CA)
Assignee: Micron Technology, Inc.
G06F12/0246G06F2212/7211
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 9,104,547
App. No.
13/197,460
Granted
Aug 11, 2015
Kind
B2
Abstract

Memory devices and methods to facilitate wear leveling operations in a memory device. In one such method, particular blocks of memory cells are excluded from experiencing wear leveling operations performed on the memory device. In at least one method, a user selects blocks of memory to be excluded from wear leveling operations performed on the remainder of blocks of the memory device. Selected blocks of memory are excluded from wear leveling operations responsive to a command initiated by a user identifying, either directly or indirectly, the selected blocks to be excluded.

Claims (51)

1. A method of operating a memory device having an array of memory cells arranged in a plurality of blocks, the method comprising:

receiving a write command comprising information identifying a particular group of one or more blocks of the plurality of blocks to be excluded from wear leveling operations and having associated data to be stored to the particular group of one or more blocks;

storing the information identifying the particular group of one or more blocks to a non-volatile memory of the memory device as a portion of information identifying blocks to be excluded from wear leveling operations; and

performing one or more wear leveling operations only on a subset of the plurality of blocks responsive to the information identifying blocks to be excluded from wear leveling operations;

wherein the particular group of one or more blocks is not contained in the subset of the plurality of blocks.

2. The method of claim 1 , wherein receiving the write command further comprises receiving the write command from a host device coupled to the memory device and configured to communicate with the memory device.

3. The method of claim 1 , wherein performing the one or more wear leveling operations responsive to the information identifying blocks to be excluded from wear leveling operations further comprises performing the one or more wear leveling operations only on blocks of the plurality of blocks other than blocks comprising the particular group of one or more blocks.

4. The method of claim 1 , wherein identifying a particular group of one or more blocks comprises identifying a range of blocks of the plurality of blocks comprising the particular group of one or more blocks.

5. The method of claim 1 , wherein identifying a particular group of one or more blocks comprises identifying a start address and an ending address of blocks of the plurality of blocks comprising the particular group of one or more blocks.

6. The method of claim 1 , wherein identifying a particular group of one or more blocks comprises identifying a start address and a particular number indicative of a range of addresses following the start address.

7. The method of claim 1 , wherein the write command comprises a logical address and a flag having a value indicative that the logical address corresponds to a physical block address of a block of the plurality of blocks comprising the particular group of one or more blocks.

8. The method of claim 1 , wherein the write command comprises a logical address and a flag having a value indicative that the logical address is to be associated with a particular block of the plurality of blocks to be excluded from wear leveling operations.

9. A method of operating a memory device having an array of memory cells arranged in a plurality of blocks, the method comprising:

receiving a write command comprising information identifying a particular group of one or more blocks of the plurality of blocks to be excluded from wear leveling operations and having associated data to be stored to the particular group of one or more blocks;

storing the information identifying the particular group of one or more blocks to a non-volatile memory of the memory device as a portion of information identifying blocks to be excluded from wear leveling operations; and

performing one or more wear leveling operations on each block of the plurality of blocks other than the particular group of one or more blocks responsive to the information identifying blocks to be excluded from wear leveling operations.

10. The method of claim 9 , wherein performing one or more wear leveling operations further comprises performing one or more static wear leveling operations.

11. The method of claim 9 , wherein receiving the write command further comprises receiving a command generated external to the memory device.

12. The method of claim 11 , wherein identifying a particular group of one or more blocks of the plurality of blocks comprises identifying the blocks of the plurality of blocks comprising the particular group of one or more blocks.

13. The method of claim 9 , wherein the particular group of one or more blocks comprises a particular range of blocks of the plurality of blocks.

14. The method of claim 9 , wherein the plurality group of one or more blocks comprises a single memory partition.

15. The method of claim 9 , wherein each block of the plurality of blocks comprises an independently erasable block of memory cells.

16. The method of claim 9 , further comprising receiving the associated data to be stored in the one or more blocks of the particular group of one or more blocks, and storing the received data in the one or more blocks of the particular group of one or more blocks.

17. The method of claim 9 , wherein receiving the write command further comprises receiving the write command generated by a host coupled to the memory device.

18. The method of claim 17 , wherein the write command comprises a logical address and a flag having a flag value, where the flag value is indicative of whether the associated data should be stored in blocks of the plurality of blocks that are excluded from wear leveling operations.

19. The method of claim 17 , further comprising performing a write operation on one or more blocks of the particular group of one or more blocks responsive to the write command.

20. The method of claim 17 , further comprising performing the one or more wear leveling operations independent of direction from the host.

21. The method of claim 9 , wherein performing a wear leveling operation further comprises performing a wear leveling operation by copying data from a first block of the plurality of blocks to a second block of the plurality of blocks.

22. The method of claim 21 , wherein the first block and the second block comprise blocks other than blocks of the particular group of one or more blocks.

23. The method of claim 21 , further comprising performing an erase operation on the first block after copying data from the first block to the second block.

24. A method of wear leveling an array of memory cells arranged in a plurality of blocks, the method comprising:

receiving a write command comprising information indicating one or more blocks of the plurality of blocks to exclude from wear leveling operations and having associated data to be stored to the one or more excluded blocks; and

storing the information indicating one or more blocks of the plurality of blocks to exclude from wear leveling operations to the array of memory cells as a portion of information identifying blocks to be excluded from wear leveling operations; and

performing one or more wear leveling operations only on blocks of the plurality of blocks other than the one or more excluded blocks responsive to the information identifying blocks to be excluded from wear leveling operations.

25. The method of claim 24 , wherein performing one or more wear leveling operations further comprises performing one or more static wear leveling operations.

26. The method of claim 24 , wherein receiving the write command further comprises receiving a command generated external to the memory device.

27. The method of claim 24 , wherein the plurality of blocks comprises a single memory partition.

28. The method of claim 24 , wherein each block of the plurality of blocks comprises an independently erasable block of memory cells.

29. The method of claim 24 , further comprising receiving the associated data, and storing the received data in the one or more blocks of the plurality of blocks to exclude from the wear leveling operations.

30. A memory device, comprising:

an array of memory cells arranged in a plurality of blocks;

an interface configured to receive a write command comprising information identifying a particular group of blocks of the plurality of blocks and having associated data to be stored to the particular group of blocks, the write command having a flag that indicates to the memory device if the data associated with the write command is to be excluded from wear leveling operations; and

control circuitry, wherein the control circuitry is configured store the information identifying the particular group of one or more blocks to a non-volatile memory of the memory device as a portion of information identifying blocks to be excluded from wear leveling operations if the flag indicates that the data associated with the write command is to be excluded from wear leveling operations, and wherein the control circuitry is further configured to perform one or more wear leveling operations only on a subset of the plurality of blocks other than blocks of the particular group of blocks responsive to the information identifying blocks to be excluded from wear leveling operations.

31. The memory device of claim 30 , wherein the control circuitry is further configured to perform the one or more wear leveling operations independent of one or more commands received at the interface.

32. The memory device of claim 30 , wherein the array of memory cells comprises a single partition of memory cells.

33. The memory device of claim 30 , wherein the control circuitry is further configured to independently erase each block of the plurality of blocks.

34. The memory device of claim 30 , wherein the array of memory cells comprises a NAND configured array of flash memory cells.

35. The memory device of claim 30 , wherein the array of memory cells comprises a NOR configured array of flash memory cells.

36. The memory device of claim 30 , wherein the array of memory cells are configured as MLC and/or SLC memory cells.

37. The memory device of claim 30 , wherein the memory cells of the array comprise one of phase-change memory cells, nitride read-only memory cells, or ferroelectric field-effect transistor memory cells.

38. The memory device of claim 30 , wherein a wear leveling operation comprises an operation to copy data stored in a first block of the plurality of blocks to a second block of the plurality of blocks without changing a value of the copied data, where the first block and the second block each comprise blocks of the plurality of blocks other than blocks of the particular group of blocks.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2012
From: BALTAR, ROBERT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 028970/0822 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2011
From: BALTAR, ROBERT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 026696/0256 →
Continuity (1)
Related Publication 20130036253A1 · Feb 7, 2013