Data storage device and data writing method thereof

US2016170671A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016170671-A1
Application numberUS-201514945803-A
CountryUS
Kind codeA1
Filing dateNov 19, 2015
Priority dateDec 10, 2014
Publication dateJun 16, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The present invention provides a data storage device including a flash memory and a controller. The flash memory has a plurality of physical pages. The controller receives a write command arranged to write first data to a plurality of specific logic addresses, determines whether the specific logic addresses have been written into and have valid data in response to the write command, and overwrites at least one first physical page of at least one first logic address of the specific logic addresses that has previously been written into and has valid data.

First claim

Opening claim text (preview).

What is claimed is: 1 . A data storage device, comprising: a flash memory, having a plurality of physical pages; and a controller, receiving a write command arranged to write first data into a plurality of specific logic addresses, and determining whether the specific logic addresses have been written into and have valid data in response to the write command, wherein the controller overwrites at least one first physical page of at least one first logic address of the specific logic addresses that has previously been written into and has valid data, and the controller further selects a plurality of second physical pages from the flash memory according to the flash memory to write the first data into the second physical pages and maps the first logic address to the second physical pages after the first physical page is overwritten. 2 . The data storage device as claimed in claim 1 , wherein the controller produces at least one first sub write command having a first format to enable the flash memory first sub write command to overwrite the first physical page in response to the first sub write command, and the controller further produces a plurality of second sub write commands having a second format to enable the flash memory to write the first data into the second physical pages in response to the second sub write commands, wherein the first format and the second format are different. 3 . The data storage device as claimed in claim 2 , wherein the first format comprises a special-mode-switching instruction, a write instruction, a word-line address and a data sector, and the second format comprises a write instruction, a physical page address and a data sector. 4 . The data storage device as claimed in claim 1 , wherein the controller is arranged to overwrite the first physical page by a first write mode and overwrite the first data into the second physical pages by a second write mode, wherein the first write mode and the second write mode are different. 5 . The data storage device as claimed in claim 4 , wherein the flash memory operates in multi-level cell, the first write mode is a single-level-cell write mode, and the second write mode is a multi-level-cell write mode. 6 . The data storage device as claimed in claim 1 , wherein when all of the specific logic addresses have not been written into or do not have valid data, the controller selects a plurality of third physical pages from the flash memory according to the write command to write the first data into the third physical pages and maps the first logic address to the third physical pages. 7 . The data storage device as claimed in claim 6 , wherein the controller determines whether the specific logic addresses have been written into and have valid data by using a physical/logical mapping table, the physical/logical mapping table records relationships of the specific logic addresses and the second physical pages for mapping the first logic address to the second physical pages, and the physical/logical mapping table further records relationships of the specific logic addresses and the third physical pages for mapping the first logic address to the third physical pages. 8 . A data writing method, applied to a data storage device, wherein the data storage device comprises a flash memory, the flash memory has a plurality of physical pages, and the data writing method comprises: receiving a write command arranged to write first data into a plurality of a plurality of specific logic adresses; determining whether the specific logic addresses have been written into and have valid data in response to the write command; overwriting at least one first physical page of at least one first logic address of the specific logic addresses that has previously been written into and has valid data; and selecting a plurality of second physical pages from the flash memory according to the flash memory to write the first data into the second physical pages and mapping the first logic address to the second physical pages after the first physical page is overwritten. 9 . The data writing method as claimed in claim 8 , wherein the step of overwriting the first physical page further comprises producing at least one first sub write command having a first format to enable the flash memory first sub write command to overwrite the first physical page in response to the first sub write command, and the step of writing the first data into the second physical pages further comprises producing a plurality of second sub write commands having a second format to enable the flash memory to write the first data into the second physical pages in response to the second sub write commands, wherein the first format and the second format are different. 10 . The data writing method as claimed in claim 9 , wherein the first format comprises a special-mode-switching instruction, a write instruction, a word-line address and a data sector, and the second format comprises a write instruction, a physical page address and a data sector. 11 . The data writing method as claimed in claim 8 , wherein the step of overwriting the first physical page is arranged to overwrite the first physical page by a first write mode, and the step of writing the first data into the second physical pages is arranged to overwrite the first data into the second physical pages by a second write mode, wherein the first write mode and the second write mode are different. 12 . The data writing method as claimed in claim 11 , wherein the flash memory operates in multi-level cell, the first write mode is a single-level-cell write mode, and the second write mode is a multi-level-cell write mode. 13 . The data writing method as claimed in claim 8 , further comprising selecting a plurality of third physical pages from the flash memory according to the write command to write the first data into the third physical pages and mapping the first logic address to the third physical pages when all of the specific logic addresses have not been written into or do not have valid data. 14 . The data writing method as claimed in claim 13 , wherein the step of determining whether the specific logic addresses have been written into and have valid data further comprises determining whether the specific logic addresses have been written into and have valid data by using a physical/logical mapping table, the step of mapping the first logic address to the second physical pages further comprises recording relationships of the specific logic addresses and the second physical pages in the physical/logical mapping table for mapping the first logic address to the second physical pages, and the step of mapping the first logic address to the third physical pages further comprises recording relationships of the specific logic addresses and the third physical pages in the physical/logical mapping table for mapping the first logic address to the third physical pages. 15 . A data writing method, applied to a data storage device, wherein the data storage device comprises a flash memory, the flash memory comprises a plurality of physical pages, and the data writing method comprises: receiving a write command having first data and a first logic address; selecting a second physical page from the flash memory to write the first data into the second physical page and mapping the first logic address to the second physical page; and overwriting at least one first physical page of the first logic address when the first logic address has been written into and has valid data. 16 . The data writing method as claimed in claim 15 , wherein the ste

Assignees

Inventors

Classifications

  • Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title

  • G06F3/0619Primary

    in relation to data integrity, e.g. data losses, bit errors · CPC title

  • Logical to physical mapping or translation of blocks or pages · CPC title

  • Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

  • in relation to access · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016170671A1 cover?
The present invention provides a data storage device including a flash memory and a controller. The flash memory has a plurality of physical pages. The controller receives a write command arranged to write first data to a plurality of specific logic addresses, determines whether the specific logic addresses have been written into and have valid data in response to the write command, and overwri…
Who is the assignee on this patent?
Silicon Motion Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/0619. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jun 16 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).