Memory performance evaluation using address mapping information
US-2024394164-A1 · Nov 28, 2024 · US
US2020409805A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2020409805-A1 |
| Application number | US-201916721260-A |
| Country | US |
| Kind code | A1 |
| Filing date | Dec 19, 2019 |
| Priority date | Jun 28, 2019 |
| Publication date | Dec 31, 2020 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A memory system may include: a nonvolatile memory device comprising a plurality of memory blocks, each block having a plurality of pages, each page having a plurality of memory cells, wherein the plurality of memory block includes an SLC (Single Level Cell) block and an MLC (Multi-Level Cell) block; and a controller suitable for programming input data transmitted from a host to both the SLC block and the MLC block in response to a first program command, and invalidating the input data programmed in the SLC block at a time point when the program operation for the MLC block is completed, when the memory system is powered on after an SPO (Sudden Power-Off) occurred while the program operation was performed on both the SLC block and the MLC block, the controller may perform a recovery operation to the MLC block based on valid data programmed in the SLC block.
Opening claim text (preview).
What is claimed is: 1 . A memory system comprising: a nonvolatile memory device comprising a plurality of memory blocks, each block having a plurality of pages, each page having a plurality of memory cells, wherein the plurality of memory block includes an SLC (Single Level Cell) block and an MLC (Multi-Level Cell) block; and a controller suitable for programming input data transmitted from a host to both the SLC block and the MLC block in response to a first program command, and invalidating the input data programmed in the SLC block at a time point when the program operation for the MLC block is completed, wherein when the memory system is powered on after an SPO (Sudden Power-Off) occurred while the program operation was performed on both the SLC block and the MLC block, the controller performs a recovery operation to the MLC block based on valid data programmed in the SLC block. 2 . The memory system of claim 1 , wherein the controller does not map a logical address received with the input data from the host to a physical address of a page where the input data is programmed in the SLC block, but maps the logical address to only a physical address of a page where the input data is programmed in the MLC block. 3 . The memory system of claim 2 , wherein when programming the input data to the SLC block, the controller further programs position information of the page, where the input data is programmed or scheduled to be programmed in the MLC block corresponding to the program operation, to a spare area of the page where the program operation is performed. 4 . The memory system of claim 3 , wherein when the memory system is powered on again after an SPO occurred while the program operation was performed on each of the SLC block and MLC block, the controller retrieves a programmed page or erased page from the MLC block corresponding to the program operation by referring to position information stored in a spare area of a valid page retrieved from the SLC block, performs a recovery checking operation of checking the state of the programmed page or erased page retrieved from the MLC block, and then selectively performs a recovery operation on the MLC block from the SLC block according to the performance result of the recovery checking operation. 5 . The memory system of claim 4 , wherein when a first programmed page corresponding to the program operation is retrieved from the MLC block by referring to position information stored in a spare area of a first valid page retrieved from the SLC block during the recovery checking operation, the controller checks whether data stored in the first programmed page can be normally read, and invalidates the first valid page without performing the recovery operation on the first programmed page, when the check result indicates that the data can be normally read. 6 . The memory system of claim 5 , wherein when the check result indicates that the data cannot be normally read, the controller performs a recovery operation on the first programmed page using the data stored in the first valid page, and invalidates the first valid page after completing the recovery operation. 7 . The memory system of claim 6 , wherein when a first erased page corresponding to the program operation is retrieved from the MLC block by referring to position information stored in a spare area of a second valid page retrieved from the SLC block during the recovery checking operation, the controller performs a recovery operation on the first erased page through data stored in the second valid page, and invalidates the second valid page after completing the recovery operation. 8 . The memory system of claim 7 , wherein the position information stored in the spare area of the page to which the input data is programmed when the controller programs the input data to the SLC block comprises the physical address of the page where the input data is programmed or scheduled to be programmed in the MLC block corresponding to the program operation or information corresponding to the order or time point that the input data is programmed or scheduled to be programmed in the MLC block corresponding to the program operation. 9 . The memory system of claim 1 , wherein the controller controls the memory device not to program input data received from the host to the SLC block, but to program the input data only to the MLC block, in response to a second program command. 10 . An operating method of a memory system which includes a plurality of memory blocks, each block including a plurality of pages, each page including a plurality of memory cells, wherein the plurality of memory block includes an SLC block and an MLC block, the operating method comprising: programming input data transmitted from a host to both the SLC block and the MLC block in response to a first program command; invalidating the input data programmed in the SLC block at a time point when the program operation for the MLC block is completed; and performing a recovery operation to the MLC block based on valid data of the SLC block, when the memory system is powered on after an SPO (Sudden Power-Off) occurs in the programming of the input data. 11 . The operating method of claim 10 , further comprising not mapping a logical address received with the input data from the host to a physical address of a page where the input data is programmed in the SLC block, but mapping the logical address to only a physical address of a page where the input data is programmed in the MLC block. 12 . The operating method of claim 11 , wherein the programming of the input data comprises: programming the input data to a normal area of a first page of the SLC block; and programming position information of the page, where the input data is programmed or scheduled to be programmed in the MLC block corresponding to the program operation, to a spare area of the first page. 13 . The operating method of claim 12 , wherein the performing of the recovery operation comprises: retrieving a programmed page or erased page from the MLC block corresponding to the program operation by referring to position information stored in a spare area of a valid page retrieved from the SLC block, and checking the state of the programmed page or erased page retrieved from the MLC block, when the memory system is powered on after an SPO occurs in the programming of the input data; and selectively performing a recovery operation on the MLC block from the SLC block according to the result of the checking of the state of the programmed page or erased page. 14 . The operating method of claim 13 , wherein the selectively performing of the recovery operation comprises: a first check step of checking whether data stored in a first programmed page corresponding to the program operation can be normally read, when the first programmed page is retrieved from the MLC block by referring to position information stored in a spare area of a first valid page retrieved from the SLC block in the checking of the state of the programmed page or erased page; and an invalidation step of invalidating the first valid page without performing a recovery operation on the first programmed page, when the result of the first check step indicates that the data can be normally read. 15 . The operating method of claim 14 , wherein the selectively performing of the recovery operation further comprises performing a recovery operation on the first programmed page using the data stored in the first valid page, and invalidating the first valid page after completing the recovery operation, when the result of the first check ste
using duplex memories, i.e. using dual copies · CPC title
Protection of memory contents; Detection of errors in memory contents · CPC title
Disturbance prevention or evaluation; Refreshing of disturbed memory data · CPC title
Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written · CPC title
Management of the data involved in backup or backup restore · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.