Semiconductor memory device including non-volatile memory, cache memory, and computer system

US9552256B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9552256-B2
Application numberUS-201514978538-A
CountryUS
Kind codeB2
Filing dateDec 22, 2015
Priority dateNov 27, 2012
Publication dateJan 24, 2017
Grant dateJan 24, 2017

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.

In one embodiment, the memory device includes a data storage region and an error correction (ECC) region. The data storage region configured to store a first number of data blocks. The ECC region is configured to store a second number of ECC blocks. Each of the second number of ECC blocks is configured to store ECC information. The second number of the ECC blocks is associated with the first number of data blocks, and the second number is less than the first number.

First claim

Opening claim text (preview).

We claim: 1. A method of reading data, comprising: receiving a request to read data from one of a first number of data blocks; scanning an ECC region containing a second number of ECC blocks for block identification information indicating whether any of the second number of ECC blocks correspond to the requested data block; and if one of the second number of ECC blocks is associated with the requested data block, determining from the block identification information which one of Hall the second number of ECC blocks is associated with the requested data block, the second number being less than the first number; simultaneously reading the requested data block and an ECC parity from the associated ECC block; and selectively performing error correction on the read data block using the requested data block and the ECC parity associated with the ECC block based on whether one of the ECC blocks is associated with the requested data block. 2. The method of claim 1 , wherein each of the ECC blocks is associated with one of the data blocks such that at least one of the data blocks does not have an associated ECC block. 3. The method of claim 1 , wherein the block information indicates which one of the second number of ECC blocks corresponds to the first number of data blocks. 4. The method of claim 1 , further comprising: storing the block identification information in different ones of a plurality of memory cell arrays. 5. A method of storing data, comprising: receiving a request to write received data to a selected one of a first number of data blocks; determining if an invalid error correction (ECC) block in a second number of ECC blocks exists in response to the request, the second number of ECC blocks being associated with the first number of data blocks; and if the invalid ECC block does not exist, removing errors from data in another of the first number of data blocks such that no errors in reading the another data block exist; invalidating the ECC block associated with the another data block; writing the received data in the selected data block; writing ECC data associated with the received data into the invalidated ECC block; and changing a state of the invalidated ECC block to valid. 6. The method of claim 5 , wherein the second number is less than the first number. 7. The method of claim 5 , wherein the changing stores validity information in association with the invalidated ECC block. 8. The method of claim 7 , wherein the timing information is a count value, and the storing timing information includes changing the count value associated with other valid ECC blocks. 9. The method of claim 8 , wherein the removing removes errors from one of the first number of data blocks associated with one of the ECC block having a highest count value. 10. The method of claim 7 , wherein the removing removes errors from a one of the first number of data blocks corresponding to an oldest ECC block as indicated by the timing information. 11. The method of claim 5 , wherein if the invalid ECC block does not exist, further comprising: storing block identification information in association with the valid ECC block, the block identification information indicating to which of the first number of data blocks the valid ECC block corresponds. 12. The method of claim 11 , wherein if the invalid ECC block does not exist, further comprising: storing timing information in association with the valid ECC block, the timing information indicating an age of an associated one of the ECC blocks relative to others of the ECC blocks. 13. The method of claim 5 , wherein the removing randomly selects the another data block. 14. The method of claim 5 , wherein if the invalid ECC block does exist, writing the received data to the selected data block; writing ECC data associated with the received data to an invalid one of the ECC blocks; determining if the written data includes errors; and invalidating the ECC block in which the ECC data was written if the determining determines that the written data does not include errors. 15. The method of claim 14 , wherein if the determining determines the written data does include errors, determining if the errors are not correctable by the ECC data; and correcting at least one of the errors in the written data if the errors are determined not to be correctable. 16. The method of claim 15 , further comprising: validating the ECC block if the errors are determined to be correctable. 17. A method of storing data, comprising: receiving a request to write received data to a selected one of a first number of data blocks; writing the received data to the selected data block; writing ECC data associated with the received data to one of a second number of ECC blocks; determining if the written data includes errors that are not correctable by the ECC data; if the written data includes errors that are correctable by the ECC data, completing the writing of the received data to the selected data block, and maintaining a respective ECC block of the second number of ECC blocks in a valid state; and if the written data includes errors that are not correctable by the ECC data, rewriting the received data and an ECC parity corresponding to the respective ECC block, performing a read-verify operation after the rewrite, and changing the valid state of the respective ECC block to an invalid state, if the read-verify operation indicates that the rewriting has corrected the errors in the written data. 18. The method of claim 17 , wherein the second number is less than the first number.

Assignees

Inventors

Classifications

  • Protection of memory contents; Detection of errors in memory contents · CPC title

  • in cache or content addressable memories · CPC title

  • Verifying circuits or methods · CPC title

  • in sector programmable memories, e.g. flash disk (G06F11/1072 takes precedence) · CPC title

  • Address circuits or decoders · 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 US9552256B2 cover?
In one embodiment, the memory device includes a data storage region and an error correction (ECC) region. The data storage region configured to store a first number of data blocks. The ECC region is configured to store a second number of ECC blocks. Each of the second number of ECC blocks is configured to store ECC information. The second number of the ECC blocks is associated with the first nu…
Who is the assignee on this patent?
Samsung Electronics Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F11/1064. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 24 2017 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).