Storage device for processing corrupted metadata and method of operating the same

US10545830B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10545830-B2
Application numberUS-201715850915-A
CountryUS
Kind codeB2
Filing dateDec 21, 2017
Priority dateFeb 6, 2017
Publication dateJan 28, 2020
Grant dateJan 28, 2020

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.

A method of operating a storage device includes receiving a first logical address from a host, determining whether first metadata stored in a volatile memory of the storage device and associated with the first logical address is corrupted, processing the first metadata as an uncorrectable error when the first metadata is determined to be corrupted, providing an error message to the host indicating that an operation cannot be performed on data associated with the first logical address when the first metadata is processed as the uncorrectable error, after the providing of the error message, receiving a second logical address from the host, determining whether second metadata stored in the volatile memory and associated with the second logical address is corrupted, and performing an operation of accessing the non-volatile memory based on the second metadata, when the second metadata is not determined to be corrupted.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of operating a storage device including a non-volatile memory and a volatile memory, the method comprising: receiving a first logical address from a host; determining whether first metadata stored in the volatile memory and associated with the first logical address is corrupted; processing the first metadata as an uncorrectable error when the first metadata is determined to be corrupted; providing an error message to the host indicating that an operation cannot be performed on data associated with the first logical address when the first metadata is processed as the uncorrectable error; after the providing of the error message, receiving a second logical address from the host; determining whether second metadata stored in the volatile memory and associated with the second logical address is corrupted; and performing an operation of accessing the non-volatile memory based on the second metadata, when the second metadata is not determined to be corrupted. 2. The method of claim 1 , wherein the first metadata comprises mapping data indicating a first physical address corresponding to the first logical address; and the processing of the first metadata comprises processing the mapping data as the uncorrectable error, when the mapping data is unrecoverable. 3. The method of claim 2 , wherein the determining of whether the first metadata is corrupted comprises determining whether the mapping data is corrupted based on physical block information stored in the volatile memory. 4. The method of claim 2 , wherein the processing of the first metadata further comprises correcting the first physical address into a second physical address. 5. The method of claim 4 , wherein the second physical address corresponds to a signature indicating a physical address which does not exist in the non-volatile memory, and the providing of the error message comprises providing the error message to the host according to the signature without accessing the non-volatile memory. 6. The method of claim 4 , wherein the second physical address corresponds to a new physical address for storing data indicating the uncorrectable error in the non-volatile memory, and the processing of the first metadata further comprises writing the data to the second physical address. 7. The method of claim 1 , wherein the first metadata comprises trim data indicating data erased from the host; and the processing of the first metadata comprises processing mapping data corresponding to the trim data as the uncorrectable error, when the trim data is unrecoverable. 8. The method of claim 1 , wherein the volatile memory comprises an error checking and correction (ECC) module; and the processing of the first metadata comprises processing the first metadata as the uncorrectable error, when the first metadata cannot be corrected by the ECC module. 9. The method of claim 8 , wherein the first metadata comprises mapping data indicating a first physical address corresponding to the first logical address, and the processing of the first metadata comprises processing all mapping data, which is included in an ECC chunk having the mapping data, as the uncorrectable error. 10. The method of claim 9 , wherein the processing of all the mapping data comprises: resetting parity of the ECC chunk according to all the mapping data included in the ECC chunk; and changing physical addresses of all the mapping data included in the ECC chunk into corrected physical addresses. 11. The method of claim 8 , wherein the first metadata comprises mapping data indicating a first physical address corresponding to the first logical address and trim data indicating data erased from the host, and the processing of the first metadata comprises processing a plurality of mapping ECC chunks corresponding to the trim data as the uncorrectable error. 12. A method of operating a storage device including a non-volatile memory and a volatile memory, the method comprising: loading a directory stored in the non-volatile memory to the volatile memory when power is supplied to the storage device, wherein the directory includes a plurality of directory data indicating physical addresses respectively corresponding to a plurality of metadata; determining whether the plurality of directory data is corrupted in the directory loaded to the volatile memory; determining whether first directory data among the plurality of directory data determined to be corrupted is recoverable; processing first metadata corresponding to the first directory data as an uncorrectable error when the first directory data is corrupted and not recoverable; and loading second metadata corresponding to second directory data from the non-volatile memory to the volatile memory, wherein the second directory data is not corrupted among the plurality of directory data. 13. The method of claim 12 , further comprising: receiving a logical address from a host; providing an error message to the host indicating that an operation cannot be performed on data associated with the logical address, when the logical address corresponds to the first metadata; and performing the operation when the logical address corresponds to the second metadata. 14. The method of claim 12 , wherein the volatile memory comprises an error checking and correction (ECC) module, and the processing of the first metadata comprises processing the first directory data as the uncorrectable error, when the first directory data cannot be corrected by the ECC module. 15. The method of claim 14 , wherein the processing of the first directory data comprises: processing all directory data, which is included in an ECC chunk having the first directory data, as the uncorrectable error; and processing a plurality of metadata corresponding to all the directory data as the uncorrectable error. 16. The method of claim 12 , further comprising loading the plurality of metadata stored in the non-volatile memory to the volatile memory, wherein the plurality of metadata comprises at least one of mapping data indicating a physical address corresponding to a logical address, physical block information indicating information about pages of each physical block comprised in the non-volatile memory, or trim data indicating data erased from a host. 17. A storage device comprising: a non-volatile memory; and a controller comprising a volatile memory configured to store first metadata associated with a first logical address and second metadata associated with a second logical address, wherein, when the controller receives the first logical address from a host, the controller is configured to determine whether the first metadata is corrupted and process the first metadata as an uncorrectable error if the first metadata is corrupted, and then, when the controller receives the second logical address from the host, the controller is configured to determine whether the second metadata is corrupted and control an operation of accessing the non-volatile memory based on the second metadata if the second metadata is not corrupted. 18. The storage device of claim 17 , wherein the first and second metadata comprise at least one of mapping data indicating a physical address corresponding to a logical address, physical block information indicating information about pages of each physical block comprised in the non-volatile memory, or trim data indicating data erased from a host. 19. The storage device of claim 17 , wherein the volatile memory comprises an error checking and corre

Assignees

Inventors

Classifications

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 US10545830B2 cover?
A method of operating a storage device includes receiving a first logical address from a host, determining whether first metadata stored in a volatile memory of the storage device and associated with the first logical address is corrupted, processing the first metadata as an uncorrectable error when the first metadata is determined to be corrupted, providing an error message to the host indicat…
Who is the assignee on this patent?
Samsung Electronics Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F11/1435. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 28 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).