IP Library Granted Patent US 8,055,837
Granted Patent B2
US 8,055,837 · App. 12/896,086 · Granted Nov 8, 2011

Data writing method for non-volatile memory and controller using the same

Assignee: Phison Electronics Corp.
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,055,837
App. No.
12/896,086
Granted
Nov 8, 2011
Kind
B2
Abstract

A data writing method for a non-volatile memory is provided, wherein the non-volatile memory includes a data area and a spare area. In the data writing method, a plurality of blocks in a substitution area of the non-volatile memory is respectively used for substituting a plurality of blocks in the data area, wherein data to be written into the blocks in the data area is written into the blocks in the substitution area, and the blocks in the substitution area are selected from the spare area of the non-volatile memory. A plurality of temporary blocks of the non-volatile memory is used as a temporary area of the blocks in the substitution area, wherein the temporary area is used for temporarily storing the data to be written into the blocks in the substitution area.

Claims (20)

1. A data writing method for a non-volatile memory, wherein the non-volatile memory is a MLC NAND flash memory, and each block in the non-volatile memory comprises upper pages and lower pages, the data writing method comprising:

using only the lower pages for writing data in a part of the blocks,

wherein the write speed of the lower pages is faster than the write speed of the upper pages,

wherein the part of the blocks is a plurality of temporary blocks, and the temporary blocks are used as a temporary area of a plurality of blocks in a substitution area.

2. The data writing method according to claim 1 further comprising using only the lower pages of each block for writing the data.

3. The data writing method according to claim 1 , wherein the data comprises at least one of a logical-physical mapping table, a cache file, a file allocation table (FAT), a firmware code, a defect block table (DBT) for recording defective blocks, a replace unit table (RUT) for managing defective block replacement, an info block for storing firmware parameters, and a variable table (VT) for storing variables.

4. The data writing method according to claim 1 further comprising establishing a page query table for recording the physical addresses of the lower pages.

5. The data writing method according to claim 1 further comprising establishing a logic conversion formula for calculating the physical addresses of the lower pages.

6. A controller, suitable for a storage device, wherein a non-volatile memory of the storage device is a MLC NAND flash memory, and each block in the non-volatile memory comprises upper pages and lower pages, the controller comprising:

a microprocessor unit, for controlling the operation of the controller;

a non-volatile memory interface, electrically connected to the microprocessor unit and used for accessing the non-volatile memory;

a buffer memory, electrically connected to the microprocessor unit and used for temporarily storing data; and

a memory management module, electrically connected to the microprocessor unit and used for managing the non-volatile memory,

wherein the memory management module only uses the lower pages for writing data in a part of the blocks,

wherein the write speed of the lower pages is faster than the write speed of the upper pages,

wherein the part of the blocks is a plurality of temporary blocks, and the temporary blocks are used as a temporary area of a plurality of blocks in a substitution area.

7. The controller according to claim 6 , wherein the memory management module uses only the lower pages in each block for writing the data.

8. The controller according to claim 6 , wherein the data comprises at least one of a logical-physical mapping table, a cache file, a FAT, a firmware code, a DBT for recording defective blocks, a RUT for managing defective block replacement, an info block for storing firmware parameters, and a VT for storing variables.

9. The controller according to claim 6 , wherein the memory management module establishes a page query table for recording the physical addresses of the lower pages.

10. The controller according to claim 6 , wherein the memory management module establishes a logic conversion formula for calculating the physical addresses of the lower pages.

Priority Claims (1)
TW 96139304 A · Oct 19, 2007 · national
Continuity (2)
Division 12025485 · Feb 4, 2008
Related Publication 20110022787A1 · Jan 27, 2011