Multi-State Programming for Memory Devices

US2021104275A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2021104275-A1
Application numberUS-202017127290-A
CountryUS
Kind codeA1
Filing dateDec 18, 2020
Priority dateDec 14, 2018
Publication dateApr 8, 2021
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.

Storage device programming methods, systems and media are described. A method may include encoding data to generate an encoded set of data. A first programming operation may write the encoded set of data to a memory device. The method includes encoding, using a second encoding operation based on the data, to generate a second set of encoded data. The second set of encoded data is stored to a cache. A first decoding operation is performed, based on the second set of encoded data and the encoded set of data, to generate a decoded set of data. A second decoding operation is performed to generate a second decoded set of data. The second decoded set of data is encoded to generate a third set of encoded data. The method includes performing a second programming operation to write the third set of encoded data to the memory device.

First claim

Opening claim text (preview).

1 - 20 . (canceled) 21 . A method for programming a memory device, comprising: executing a first encoding operation to generate a first set of encoded data; performing a first programming operation to store the first set of encoded data into the memory device; executing, based on the first set of encoded data, a second encoding operation to generate a second set of encoded data; executing one or more decoding operations based on the first set of encoded data stored in the memory device and the second set of encoded data, to generate a set of decoded data; executing, based on the set of decoded data, an encoding operation to generate a third set of encoded data; and performing a second programming operation to store the third set of encoded data to the same memory device. 22 . The method of claim 21 , wherein an amount of the second set of encoded data is less than an amount of the first set of encoded data. 23 . The method of claim 21 , comprising: prior to executing the one or more decoding operations, storing the second set of encoded data to a memory. 24 . The method of claim 23 , wherein the memory is different from the memory device. 25 . The method of claim 21 , wherein executing the one or more decoding operations comprises: performing a first decoding operation, based on the first set of encoded data from the memory device and the second set of encoded data, to generate a first set of decoded data; and performing a second decoding operation, based on the first set of decoded data, to generate the set of decoded data. 26 . The method of claim 23 , wherein the second set of encoded data stored in the memory comprises additional parity bits for an error-correcting code, and the third set of encoded data comprises the same data as the first set of encoded data. 27 . The method of claim 21 , wherein the first programming operation comprises a foggy programming operation, and wherein the second programming operation comprises a fine programming operation. 28 . The method of claim 21 , wherein the one or more decoding operations comprise a foggy decoding operation and an error-correcting code decoding operation. 29 . The method of claim 21 , comprising: generating an additional page of data based on an XOR operation of a number of bits of data in each cell of the memory device. 30 . The method of claim 21 , wherein the first set of encoded data comprises four pages of data, and the second set of encoded data comprises one page of data, and the set of decoded data comprises four pages of data. 31 . The method of claim 21 , comprising: receiving host data from a host device, wherein executing the first encoding operation comprises generating, using an error-correcting code encoding scheme, the first set of encoded data based on the host data, and wherein executing the second encoding operation comprises providing the first set of encoded data to a foggy encoder for performing a foggy encoding operation to generate the second set of encoded data. 32 . A system, comprising: a memory device; and one or more controllers configured to cause: executing a first encoding operation to generate a first set of encoded data; performing a first programming operation to store the first set of encoded data into the memory device; executing, based on the first set of encoded data, a second encoding operation to generate a second set of encoded data; executing one or more decoding operations based on the first set of encoded data stored in the memory device and the second set of encoded data, to generate a set of decoded data; executing, based on the set of decoded data, an encoding operation to generate a third set of encoded data; and performing a second programming operation to store the third set of encoded data to the memory device. 33 . The system of claim 32 , wherein an amount of the second set of encoded data is less than an amount of the first set of encoded data. 34 . The system of claim 32 , wherein the one or more controllers are configured to cause: prior to executing the one or more decoding operations, storing the second set of encoded data to a memory. 35 . The system of claim 34 , wherein the memory is different from the memory device. 36 . The system of claim 32 , wherein executing the one or more decoding operations comprises: performing a first decoding operation, based on the first set of encoded data from the memory device and the second set of encoded data, to generate a first set of decoded data; and performing a second decoding operation, based on the first set of decoded data, to generate the set of decoded data. 37 . The system of claim 32 , wherein the one or more controllers are configured to cause: receiving host data from a host device, wherein executing the first encoding operation comprises generating, using an error-correcting code encoding scheme, the first set of encoded data based on the host data, and wherein executing the second encoding operation comprises providing the first set of encoded data to a foggy encoder for performing a foggy encoding operation to generate the second set of encoded data. 38 . An apparatus, comprising: means for executing a first encoding operation to generate a first set of encoded data; means for performing a first programming operation to store the first set of encoded data into a memory device; means for executing, based on the first set of encoded data, a second encoding operation to generate a second set of encoded data; means for executing one or more decoding operations based on the first set of encoded data stored in the memory device and the second set of encoded data, to generate a set of decoded data; means for executing, based on the set of decoded data, an encoding operation to generate a third set of encoded data; and means for performing a second programming operation to store the third set of encoded data to the memory device. 39 . The apparatus of claim 38 , wherein an amount of the second set of encoded data is less than an amount of the first set of encoded data. 40 . The apparatus of claim 39 , comprising: means for receiving host data from a host device, wherein the means for executing the first encoding operation comprises means for generating, using an error-correcting code encoding scheme, the first set of encoded data based on the host data, and wherein the means for executing the second encoding operation comprises means for executing a foggy encoding operation to generate the second set of encoded data.

Assignees

Inventors

Classifications

  • combined in a redundant decoder · CPC title

  • Sensing or reading circuits; Data output circuits · CPC title

  • Sensing or reading circuits; Data output circuits · CPC title

  • Programming or writing circuits; Data input circuits · CPC title

  • Concurrent multilevel programming and reading · 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 US2021104275A1 cover?
Storage device programming methods, systems and media are described. A method may include encoding data to generate an encoded set of data. A first programming operation may write the encoded set of data to a memory device. The method includes encoding, using a second encoding operation based on the data, to generate a second set of encoded data. The second set of encoded data is stored to a ca…
Who is the assignee on this patent?
Western Digital Tech Inc
What technology area does this patent fall under?
Primary CPC classification G11C11/5628. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Apr 08 2021 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).