IP Library Granted Patent US 8,239,643
Granted Patent B2
US 8,239,643 · App. 13/244,178 · Granted Aug 7, 2012

Non-volatile memory and method with control data management

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,239,643
App. No.
13/244,178
Granted
Aug 7, 2012
Kind
B2
Abstract

In a nonvolatile memory with block management system, critical data such as control data for the block management system is maintained in duplicates. Various methods are described for robustly writing and reading two copies of critical data in multi-state memory. In another aspect of the invention, a preemptive garbage collection on memory block containing control data avoids an undesirable situation where a large number of such memory blocks need be garbage collected at the same time.

Claims (28)

1. In a nonvolatile memory organized into blocks, each block partitioned into memory units that are erasable together, a method of storing and updating data, comprising:

(a) maintaining different types of data;

(b) assigning a ranking to said different types of data;

(c) storing updates of said different types of data among a plurality of blocks so that each block is storing data of the same type;

(d) in response to a block having less than a predetermined number of empty memory units and having data type of highest rank among said plurality of blocks, relocating current updates of data of said block to another block; and

(e) repeating (c) to (d) unless interrupted; and

wherein a first data type is ranked higher than a second data type when the data of the first type is updated less frequently than that of the second type.

2. The method as in claim 1 , wherein a first data type is ranked higher than a second data type when an update of the data of the first type is caused by a cascade effect of the update data of the second type filling a block.

3. The method as in claim 1 , wherein said predetermined number of empty memory units is between one and six.

4. The method as in claim 1 , wherein said nonvolatile memory has floating gate memory cells.

5. The method as in claim 1 , wherein said nonvolatile memory is flash EEPROM.

6. The method as in claim 1 , wherein said nonvolatile memory is NROM.

7. The method as in claim 1 , wherein said nonvolatile memory is in a memory card.

8. The method as in claim 1 , wherein said nonvolatile memory has memory cells that each stores one bit of data.

9. The method as in claim 1 , wherein said nonvolatile memory has memory cells that each stores more than one bit of data.

10. A nonvolatile memory, comprising:

a memory array organized into blocks, each block partitioned into memory units that are erasable together;

a plurality of blocks each for storing updates of a type of data, each type of data having a rank among a plurality thereof; and

a controller for relocating current updates in a block to another block in response to said block having less than a predetermined number of emit memory units and having data type of highest rank among said plurality of blocks;

wherein a first data type is ranked higher than a second data type when the data of the first type is updated less frequently than that of the second type.

11. The nonvolatile memory as in claim 10 , wherein a first data type is ranked higher than a second data type when an update of the data of the first type is caused by a cascade effect of the update data of the second type filling a block.

12. The nonvolatile memory as in claim 10 , wherein said predetermined number of empty memory units is between one and six.

13. The nonvolatile memory as in claim 10 , wherein said nonvolatile memory has floating gate memory cells.

14. The nonvolatile memory as in claim 10 , wherein said nonvolatile memory is flash EEPROM.

15. The nonvolatile memory as in claim 10 , wherein said nonvolatile memory is NROM.

16. The nonvolatile memory as in as in claim 10 , wherein said nonvolatile memory is in a memory card.

17. The nonvolatile memory as in as in claim 10 , wherein said nonvolatile memory has memory cells that each stores one bit of data.

18. The nonvolatile memory as in claim 10 , wherein said nonvolatile memory has memory cells that each stores more than one bit of data.

Assignments (2)
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038807/0850 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2012
From: SANDISK CORPORATION
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 027876/0701 →