IP Library › Granted Patent US 8,634,243
Granted Patent B2
US 8,634,243 · App. 13/084,147 · Granted Jan 21, 2014

Data writing method and data storage device

Inventor: Cheng-Wei Lin (Guishan Township, Taoyuan County, TW)
Assignee: Silicon Motion, Inc.
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,634,243
App. No.
13/084,147
Granted
Jan 21, 2014
Kind
B2
Abstract

The invention provides a data writing method for a flash memory. First, a target block for storing write data is selected from a plurality of blocks of the flash memory. A target pair page is then selected from a plurality of pair pages of the target block according to a pair page record table, wherein the pair page comprises a strong page and a weak page. The flash memory is then directed to write a data page of the write data to the strong page of the target pair page. The flash memory is then also directed to write first predetermined data to the weak page of the target pair page, wherein the weak page storing the first predetermined data extends the data duration of the strong page of the target pair page. Selecting of the target pair page, writing of the data page, and writing of the first predetermined data are repeated until all of the write data are written to the target block.

Claims (35)

1. A data writing method for a flash memory, comprising:

selecting a target block for storing write data from a plurality of blocks of the flash memory;

selecting a target pair page from a plurality of pair pages of the target block according to a pair page record table, wherein the pair page comprises a strong page and a weak page;

directing the flash memory to write a data page of the write data to the strong page of the target pair page; and

directing the flash memory to write first predetermined data to the weak page of the target pair page, wherein the weak page storing the first predetermined data extends the data duration of the strong page of the target pair page; and

repeating selection of the target pair page, writing of the data page, and writing of the first predetermined data until all of the write data are written to the target block.

2. The data writing method as claimed in claim 1 , wherein the flash memory is a multi-layer cell (MLC) flash memory, and the first predetermined data is a data page filled with merely data bits 1 .

3. The data writing method as claimed in claim 1 , wherein the flash memory is a triple-layer cell (TLC) flash memory, the target pair page further comprises a very weak page in addition to the strong page and the weak page, and the data writing method further comprises:

directing the flash memory to write second predetermined data to the very weak page of the target pair page, wherein the very weak page storing the second predetermined data extends the data duration of the strong page of the target pair page,

wherein the repeating step further comprises repeating writing of the second predetermined data.

4. The data writing method as claimed in claim 3 , wherein the first predetermined data is a data page filled with merely data bits 1 , and the second predetermined data is a data page filled with merely data bits 0 .

5. The data writing method as claimed in claim 3 , wherein the first predetermined data is a data page filled with merely data bits 1 , and the second predetermined data is a data page filled with merely data bits 1 .

6. The data writing method as claimed in claim 2 , wherein writing of the data page comprises sending a first portion code 0x82 of a Joint Page Programming Command, a code 0x13, and the address of the strong page to the flash memory, writing of the first predetermined data comprises sending a second portion code 0x83 of the Joint Page Programming Command, the code 0x13, and the address of the weak page to the flash memory, and writing of the second predetermined data comprises sending a third portion code 0x84 of the Joint Page Programming Command, the code 0x13, and the address of the very weak page to the flash memory.

7. A data writing method for a flash memory, comprising:

selecting a target block for storing write data from a plurality of blocks of the flash memory;

selecting a target page from a plurality of pages of the target block;

determining whether the target page is a strong page according to a pair page record table;

when the target page is the strong page, directing the flash memory to write a data page of the write data to the target page;

when the target page is not the strong page, directing the flash memory to write a predetermined data to the target page, wherein the weak page storing the predetermined data extends the data duration of the strong page of the target pair page;

repeating selection of the target page, determining of whether the target page is the strong page, and writing of the data page or writing of the predetermined data until all of the write data are written to the target block.

8. The data writing method as claimed in claim 7 , wherein the flash memory is a multi-layer cell (MLC) flash memory, and the predetermined data is a data page filled with merely data bits 1 .

9. The data writing method as claimed in claim 1 , wherein the flash memory is a triple-layer cell (TLC) flash memory, and writing of the predetermined data further comprises:

determining whether the target page is a weak page or a very weak page;

when the target page is the weak page, directing the flash memory to write first predetermined data to the target page; and

when the target page is the very weak page, directing the flash memory to write second predetermined data to the target page.

10. The data writing method as claimed in claim 9 , wherein the first predetermined data is a data page filled with merely data bits 1 , and the second predetermined data is a data page filled with merely data bits 0 .

11. The data writing method as claimed in claim 9 , wherein the first predetermined data is a data page filled with merely data bits 1 , and the second predetermined data is a data page filled with merely data bits 1 .

12. A data storage device, comprising:

a flash memory, comprising a plurality of blocks, wherein each of the blocks comprises a plurality of pair pages, and each of the pair pages comprises a strong page and a weak page; and

a controller, coupled to the flash memory, selecting a target block from a plurality of blocks of the flash memory, writing user data or system data to the strong pages of the target block, and writing first predetermined data to the weak pages of the target block,

wherein the weak pages storing the first predetermined data extends the data duration of the corresponding strong pages.

13. The data storage device as claimed in claim 12 , wherein the flash memory is a multi-layer cell (MLC) flash memory, and the first predetermined data is a data page filled with merely data bits 1 .

14. The data storage device as claimed in claim 12 , wherein the flash memory is a triple-layer cell (TLC) flash memory, each of the pair pages further comprises a very weak page in addition to the strong page and the weak page, and the controller writes second predetermined data to the very weak pages of the target block, wherein the very weak pages storing the second predetermined data extends the data duration of the corresponding strong pages.

15. The data storage device as claimed in claim 14 , wherein the first predetermined data is a data page filled with merely data bits 1 , and the second predetermined data is a data page filled with merely data bits 0 .

16. The data storage device as claimed in claim 14 , wherein the first predetermined data is a data page filled with merely data bits 1 , and the second predetermined data is a data page filled with merely data bits 1 .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2011
From: LIN, CHENG-WEI
To: SILICON MOTION, INC.
Reel/Frame 026105/0846 →
Priority Claims (1)
TW 99114905 A · May 11, 2010 · national
Continuity (1)
Related Publication 20110280074A1 · Nov 17, 2011