KR20200028493A - 메모리 내 데이터 복원 작업의 수행 - Google Patents
메모리 내 데이터 복원 작업의 수행 Download PDFInfo
- Publication number
- KR20200028493A KR20200028493A KR1020207006441A KR20207006441A KR20200028493A KR 20200028493 A KR20200028493 A KR 20200028493A KR 1020207006441 A KR1020207006441 A KR 1020207006441A KR 20207006441 A KR20207006441 A KR 20207006441A KR 20200028493 A KR20200028493 A KR 20200028493A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- memory
- group
- mapping
- groups
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0292—User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3225—Monitoring of peripheral devices of memory devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
도 2는 본 개시내용의 실시형태에 따른, 메모리 디바이스의 형태인 장치의 블록도.
도 3은 본 개시내용의 실시형태에 따른, 적어도 하나의 메모리 시스템을 포함하는 전산 시스템의 형태인 장치의 블록도.
도 4a 및 도 4b는 본 개시내용의 실시형태에 따른, 데이터 복원 작업을 수행하도록 사용되는 표의 예를 예시하는 도면.
도 5는 본 개시내용의 실시형태에 따른, 데이터 복원 작업을 수행하도록 사용되는 표의 예를 예시하는 도면.
도 6은 본 개시내용의 실시형태에 따른, 메모리의 작동 시 사용되는 표의 예를 예시하는 도면.
도 7은 본 개시내용의 실시형태에 따른, 메모리를 작동시키기 위한 방법을 예시하는 도면.
도 8은 본 개시내용의 실시형태에 따른, 메모리를 작동시키기 위한 방법을 예시하는 도면.
도 9는 본 개시내용의 실시형태에 따른, 메모리를 작동시키기 위한 방법을 예시하는 도면.
Claims (20)
- 장치로서,
메모리; 및
제어기에 저장된 제1 표 및 제2 표를 사용하여 상기 메모리에 저장된 데이터에서 데이터 복원 작업을 수행하도록 구성된 상기 제어기를 포함하되,
상기 제1 표는 상기 메모리에 저장된 상기 데이터와 연관된 이전의 오류율의 이전의 평가에 기초하는 상기 메모리에 저장된 상기 데이터의 현재의 맵핑을 포함하고; 그리고
상기 제2 표는 상기 메모리에 저장된 상기 데이터와 연관된 현재의 오류율의 현재의 평가에 기초하는 상기 메모리에 저장된 상기 데이터의 새로운 맵핑을 포함하는, 장치. - 제1항에 있어서, 상기 제어기는 다음의 작업에 의해 상기 메모리에 저장된 상기 데이터에서 상기 데이터 복원 작업을 수행하도록 구성되는, 장치:
상기 제1 표에 포함된 상기 데이터의 상기 현재의 맵핑을 사용하여 상기 메모리에서 감지 작업을 수행하는 작업; 및
상기 제2 표에 포함된 상기 데이터의 상기 새로운 맵핑을 사용하여 상기 메모리에서 프로그램 작업을 수행하는 작업. - 제1항 또는 제2항에 있어서,
상기 제1 표에 포함된 상기 데이터의 상기 현재의 맵핑은 상기 메모리 내 제1 물리적 위치에 대한 상기 데이터의 맵핑을 포함하고; 그리고
상기 제2 표에 포함된 상기 데이터의 상기 새로운 맵핑은 상기 제1 물리적 위치와는 상이한 상기 메모리 내 제2 물리적 위치에 대한 상기 데이터의 맵핑을 포함하는, 장치. - 제3항에 있어서, 상기 제2 물리적 위치는 상기 제1 물리적 위치보다 해당 위치와 연관된 더 낮은 오류율을 갖는, 장치.
- 제3항에 있어서, 상기 제2 물리적 위치는 상기 메모리 내 스페어 위치인, 장치.
- 메모리를 작동시키기 위한 방법으로서,
다음의 작업에 의해 상기 메모리에 저장된 데이터에서 데이터 복원 작업을 수행하는 단계를 포함하되, 상기 작업은,
상기 데이터의 제1 맵핑을 사용하여 상기 메모리에 저장된 상기 데이터를 감지하는 작업으로서,
상기 제1 맵핑은 상기 데이터와 연관된 이전의 오류율의 이전의 평가에 기초하는 상기 메모리에 저장된 상기 데이터의 현재의 맵핑이고; 그리고
상기 제1 맵핑은 제1 표에 저장되는, 상기 감지하는 작업; 및
상기 데이터의 제2 맵핑을 사용하여 상기 메모리에 대해 감지된 데이터를 프로그래밍하는 작업으로서,
상기 제2 맵핑은 상기 데이터와 연관된 현재의 오류율의 현재의 평가에 기초하는 상기 메모리에 저장된 상기 데이터의 새로운 맵핑이고; 그리고
상기 제2 맵핑은 제2 표에 저장되는, 상기 프로그래밍하는 작업을 포함하는, 메모리를 작동시키기 위한 방법. - 제6항에 있어서, 상기 방법은, 상기 데이터가 감지되고 그리고 상기 데이터가 감지되는 상기 메모리 내 상기 물리적 위치보다 해당 위치와 연관된 더 낮은 오류율을 갖는 상기 메모리 내 물리적 위치와 상이한 상기 메모리 내 물리적 위치에 대해 상기 감지된 데이터를 프로그래밍하는 단계를 포함하는, 메모리를 작동시키기 위한 방법.
- 제6항에 있어서, 상기 메모리에 저장된 상기 데이터에서 상기 데이터 복원 작업을 수행하는 단계는,
상기 메모리에 저장된 상기 데이터와 연관된 위상 비트의 값에 기초하여 상기 메모리에 저장된 상기 데이터를 감지하기 위한 상기 제1 맵핑을 사용하도록 결정하는 것; 및
상기 위상 비트의 값에 기초하여 상기 메모리에 대해 상기 감지된 데이터를 프로그래밍하기 위한 상기 제2 맵핑을 사용하도록 결정하는 것을 포함하는, 메모리를 작동시키기 위한 방법. - 제6항 내지 제8항 중 어느 한 항에 있어서, 상기 방법은 상기 감지된 데이터를 사용하여 상기 메모리에 저장된 상기 데이터와 연관된 상기 현재의 오류율의 상기 현재의 평가를 수행하는 단계를 포함하는, 메모리를 작동시키기 위한 방법.
- 장치로서,
메모리; 및
제어기에 저장된 제1 표 및 제2 표를 사용하여 상기 메모리에 저장된 데이터의 복수의 군에서 데이터 복원 작업을 수행하도록 구성된 상기 제어기를 포함하되,
상기 제1 표는 각각의 각자의 군과 연관된 이전의 오류율의 이전의 평가에 기초하는 데이터의 군의 현재의 맵핑을 포함하고; 그리고
상기 제2 표는 각각의 각자의 군과 연관된 현재의 오류율의 현재의 평가에 기초하는 상기 데이터의 군의 새로운 맵핑을 포함하는, 장치. - 제10항에 있어서,
상기 제1 표 및 상기 제2 표 각각은 복수의 항목을 포함하고, 각각의 각자의 항목은 상기 데이터의 복수의 군 중 상이한 군에 대응하고; 그리고
각각의 각자의 항목은,
데이터의 각각의 군에 대한 논리 어드레스; 및
데이터의 각각의 군에 대한 물리적 어드레스를 포함하는, 장치. - 제10항에 있어서,
상기 제2 표는 제1 복수의 항목 및 제2 복수의 항목을 포함하고, 상기 제1 복수의 항목 및 상기 제2 복수의 항목 중 각각의 각자의 항목은 상기 데이터의 복수의 군 중 상이한 군에 대응하고;
상기 제1 복수의 항목 중 각각의 각자의 항목은,
데이터의 각각의 군에 대한 논리 어드레스; 및
데이터의 각각의 군이 상기 메모리 내 상이한 물리적 위치로 재지향되는지를 나타내는 값을 포함하고; 그리고
상기 제2 복수의 항목 중 각각의 각자의 항목은,
데이터의 각각의 군에 대한 논리 어드레스; 및
데이터의 각각의 군에 대한 물리적 어드레스를 포함하는, 장치. - 제10항 내지 제12항 중 어느 한 항에 있어서, 상기 제어기는 전력이 상기 데이터 복원 작업을 수행하는 동안 발생되는 전력 손실에 후속하여 복원될 때,
상기 제2 표에 포함된 상기 데이터의 군의 상기 새로운 맵핑을 사용하여 상기 데이터의 각각의 각자의 군을 순차적으로 감지하기 위한 순차적 감지 작업을 수행하고;
상기 데이터의 군 중 하나의 군을 감지하기 위한 감지 작업이 실패될 때, 상기 제1 표에 포함된 상기 데이터의 군의 상기 현재의 맵핑을 사용하여 상기 데이터의 군을 감지하기 위한 감지 작업을 수행하고; 그리고
상기 제1 표의 상기 현재의 맵핑을 사용하여 상기 데이터의 군을 감지하기 위한 상기 감지 작업이 성공적일 때 상기 데이터 복원 작업을 재개하도록 구성되는, 장치. - 메모리를 작동시키는 방법으로서,
메모리에 저장된 데이터의 복수의 군 중 각각의 각자의 군과 연관된 오류율을 결정하는 단계;
각각의 각자의 군과 연관된 결정된 오류율에 기초하여 상기 데이터의 군을 순위 매김하는 단계;
순위 매김에 기초하는 상기 데이터의 군의 맵핑을 포함하는 제1 표를 생성하는 단계;
상기 제1 표를 생성하는 것에 후속하여 데이터의 각각의 각자의 군과 연관된 상기 오류율을 결정하는 단계;
상기 제1 표를 생성하는 것에 후속하여 결정된 각각의 각자의 군과 연관된 상기 오류율에 기초하여 상기 데이터의 군을 재순위 매김하는 단계;
재순위 매김하는 것에 기초하는 상기 데이터의 군의 맵핑을 포함하는 제2 표를 생성하는 단계; 및
상기 데이터의 군에서 데이터 복원 작업을,
상기 제1 표의 상기 맵핑을 사용하여 데이터의 각각의 각자의 군을 감지하고; 그리고
상기 제2 표의 상기 맵핑을 사용하여 상기 메모리에 대해 감지된 데이터를 프로그래밍함으로써 수행하는 단계를 포함하는, 메모리를 작동시키는 방법. - 제14항에 있어서, 상기 제2 표를 생성하는 것은,
데이터의 군이 상기 재순위 매김 시 가장 높게 순위 매겨진 복수의 군 중에 있는지를 결정하는 것;
상기 재순위 매김 시 가장 높게 순위 매겨진 복수의 군 중에 있는 것으로 결정된 데이터의 각각의 각자의 군에 대해, 상기 데이터의 군이 또한 상기 순위 매김 시 가장 높게 순위 매겨진 복수의 군 중에 있는지를 결정하는 것;
또한 상기 재순위 매김 시 가장 높게 순위 매겨진 복수의 군 중에 없는 것으로 결정된 데이터의 각각의 각자의 군에 대해, 상기 제2 표에서, 데이터의 군이 상기 제1 표에 맵핑되는 상기 메모리 내 물리적 위치와 상이한 상기 메모리 내 물리적 위치에 데이터의 군을 맵핑하는 것; 및
또한 상기 순위 매김 시 가장 높게 순위 매겨진 복수의 군 중에 있는 것으로 결정된 데이터의 각각의 각자의 군에 대해, 상기 제2 표에서, 데이터의 군이 상기 제1 표에 맵핑되는 상기 메모리 내 물리적 위치와 동일한 상기 메모리 내 물리적 위치에 데이터의 군을 맵핑하는 것을 포함하는, 메모리를 작동시키는 방법. - 제15항에 있어서, 상기 제2 표를 생성하는 것은,
상기 재순위 매김 시 가장 높게 순위 매겨진 복수의 군 중에 없는 것으로 결정된 데이터의 각각의 각자의 군에 대해, 데이터의 군이 상기 순위 매김 시 가장 높게 순위 매겨진 복수의 군 중에 있다고 결정하는 것;
상기 순위 매김 시 가장 높게 순위 매겨진 복수의 군 중에 없는 것으로 결정된 데이터의 각각의 각자의 군에 대해, 상기 제2 표에서, 데이터의 군이 상기 제1 표에 맵핑되는 상기 메모리 내 물리적 위치와 동일한 상기 메모리 내 물리적 위치에 데이터의 군을 맵핑하는 것; 및
상기 순위 매김 시 가장 높게 순위 매겨진 복수의 군 중에 있는 것으로 결정된 데이터의 각각의 각자의 군에 대해, 상기 제2 표에서, 데이터의 군이 상기 제1 표에 맵핑되는 상기 메모리 내 물리적 위치와 상이한 상기 메모리 내 물리적 위치에 데이터의 군을 맵핑하는 것을 포함하는, 메모리를 작동시키는 방법. - 제14항에 있어서, 상기 방법은 상기 데이터 복원 작업의 성능을 개시시킬 때 상기 메모리와 연관된 글로벌 위상 비트의 값을 인버팅(inverting)하여, 상기 글로벌 위상 비트의 인버팅된 값이 상기 데이터의 군과 연관된 위상 비트의 값과 일치되지 않는 단계를 포함하는, 메모리를 작동시키는 방법.
- 제17항에 있어서, 상기 데이터의 군에서 상기 데이터 복원 작업을 수행하는 것은,
상기 데이터의 군과 연관된 상기 위상 비트의 상기 값에 기초하여 데이터의 각각의 각자의 군을 감지하도록 상기 제1 표의 상기 맵핑의 사용을 결정하는 것;
상기 메모리에 대해 감지된 데이터의 프로그래밍을 개시시킬 때 상기 데이터의 군과 연관된 상기 위상 비트의 상기 값을 인버팅하는 것; 및
상기 데이터의 군과 연관된 상기 위상 비트의 인버팅된 값에 기초하여 상기 메모리에 대해 상기 감지된 데이터를 프로그래밍하도록 상기 제2 표의 상기 맵핑의 사용을 결정하는 것을 포함하는, 메모리를 작동시키는 방법. - 제17항에 있어서, 상기 방법은,
상기 데이터 복원 작업을 수행하는 동안 전력 손실을 검출하는 단계;
상기 전력 손실을 검출할 때, 상기 데이터 복원 작업이 가장 최근에 수행되는 상기 데이터의 군에 대한 논리 어드레스 및 글로벌 위상 비트의 값을 저장하는 단계; 및
전력이 복원될 때,
상기 데이터 복원 작업이 상기 글로벌 위상 비트의 값으로 가장 최근에 수행되는 상기 데이터의 군에 대한 상기 논리 어드레스 이하인 논리 어드레스를 가진 상기 데이터의 군과 연관된 상기 위상 비트의 값을 설정하고;
상기 데이터 복원 작업이 상기 글로벌 위상 비트의 값으로 인버팅 값으로 가장 최근에 수행되는 상기 데이터의 군에 대한 상기 논리 어드레스 초과인 논리 어드레스를 가진 상기 데이터의 군과 연관된 상기 위상 비트의 값을 설정하고; 그리고
상기 데이터 복원 작업을 재개하는 단계를 포함하는, 메모리를 작동시키는 방법. - 제14항에 있어서, 상기 방법은,
상기 데이터 복원 작업을 수행하는 것에 후속하여 데이터의 각각의 각자의 군과 연관된 상기 오류율을 결정하는 단계;
상기 데이터 복원 작업을 수행하는 것에 후속하여 결정된 각각의 각자의 군과 연관된 상기 오류율에 기초하여 상기 데이터의 군의 추가의 재순위 매김을 수행하는 단계;
상기 추가의 재순위 매김에 기초하여 상기 제1 표에서 상기 데이터의 군의 상기 맵핑을 업데이트하는 단계; 및
추가의 데이터 복원 작업을 상기 데이터의 군에서,
상기 제2 표의 상기 맵핑을 사용하여 데이터의 각각의 각자의 군을 감지하고; 그리고
상기 제1 표의 업데이트된 맵핑을 사용하여 상기 메모리에 대해 감지된 데이터를 프로그래밍함으로써 수행하는 단계를 포함하는, 메모리를 작동시키는 방법.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US15/670,544 US10445195B2 (en) | 2017-08-07 | 2017-08-07 | Performing data restore operations in memory |
| US15/670,544 | 2017-08-07 | ||
| PCT/US2018/045343 WO2019032439A1 (en) | 2017-08-07 | 2018-08-06 | REALIZATION OF DATA RESTORATION OPERATIONS IN MEMORY |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20200028493A true KR20200028493A (ko) | 2020-03-16 |
| KR102407659B1 KR102407659B1 (ko) | 2022-06-10 |
Family
ID=65230525
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020207006441A Active KR102407659B1 (ko) | 2017-08-07 | 2018-08-06 | 메모리 내 데이터 복원 작업의 수행 |
Country Status (5)
| Country | Link |
|---|---|
| US (3) | US10445195B2 (ko) |
| EP (1) | EP3665579A4 (ko) |
| KR (1) | KR102407659B1 (ko) |
| CN (1) | CN110998544A (ko) |
| WO (1) | WO2019032439A1 (ko) |
Families Citing this family (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11055167B2 (en) | 2018-05-14 | 2021-07-06 | Micron Technology, Inc. | Channel-scope proximity disturb and defect remapping scheme for non-volatile memory |
| US10838831B2 (en) | 2018-05-14 | 2020-11-17 | Micron Technology, Inc. | Die-scope proximity disturb and defect remapping scheme for non-volatile memory |
| US11048597B2 (en) | 2018-05-14 | 2021-06-29 | Micron Technology, Inc. | Memory die remapping |
| US10810097B2 (en) | 2018-11-07 | 2020-10-20 | Micron Technology, Inc. | Client-assisted phase-based media scrubbing |
| US11068359B2 (en) * | 2019-06-26 | 2021-07-20 | EMC IP Holding Company LLC | Stream level uninterrupted restore operation using data probe |
| US10929311B2 (en) | 2019-06-26 | 2021-02-23 | EMC IP Holding Company LLC | Stream level uninterrupted backup operation using data probe |
| US11334458B2 (en) * | 2020-08-27 | 2022-05-17 | Micron Technology, Inc. | Completing memory repair operations interrupted by power loss |
| US12243606B2 (en) * | 2020-12-31 | 2025-03-04 | Ap Memory Technology Corporation | Semiconductor device, memory system and method of controlling semiconductor device thereof |
| US11740899B2 (en) * | 2021-08-31 | 2023-08-29 | Micron Technology, Inc. | In-memory associative processing system |
| US12561066B2 (en) * | 2022-07-25 | 2026-02-24 | Micron Technology, Inc. | Data storage during power state transition of a memory system |
| CN115470049B (zh) * | 2022-11-15 | 2023-02-28 | 浪潮电子信息产业股份有限公司 | 一种元数据修复方法、装置、电子设备及存储介质 |
| US20240312509A1 (en) * | 2023-03-14 | 2024-09-19 | SK Hynix Inc. | Buffer chip, semiconductor package including buffer chip and memory chip, and memory module |
| US12293085B2 (en) * | 2023-06-20 | 2025-05-06 | SanDisk Technologies, Inc. | Data storage device and method for improving asynchronous independent plane read (AIPR) utilization |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20100039181A (ko) * | 2008-10-07 | 2010-04-15 | 삼성전자주식회사 | 예비 영역을 가지는 반도체 메모리 장치 |
| US20160147623A1 (en) * | 2014-11-20 | 2016-05-26 | Samsung Electronics Co., Ltd. | Rank and page remapping logic in a volatile memory |
| US20170132125A1 (en) * | 2015-11-06 | 2017-05-11 | SK Hynix Inc. | Selective data recycling in non-volatile memory |
Family Cites Families (29)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050204187A1 (en) * | 2004-03-11 | 2005-09-15 | Lee Charles C. | System and method for managing blocks in flash memory |
| KR100457812B1 (ko) * | 2002-11-14 | 2004-11-18 | 삼성전자주식회사 | 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법 |
| US20080082736A1 (en) * | 2004-03-11 | 2008-04-03 | Chow David Q | Managing bad blocks in various flash memory cells for electronic data flash card |
| US8019925B1 (en) * | 2004-05-06 | 2011-09-13 | Seagate Technology Llc | Methods and structure for dynamically mapped mass storage device |
| US7916421B1 (en) | 2005-05-05 | 2011-03-29 | Seagate Technology Llc | Methods and structure for recovery of write fault errors in a dynamically mapped mass storage device |
| US8327066B2 (en) * | 2008-09-30 | 2012-12-04 | Samsung Electronics Co., Ltd. | Method of managing a solid state drive, associated systems and implementations |
| US8200922B2 (en) * | 2008-12-17 | 2012-06-12 | Netapp, Inc. | Storage system snapshot assisted by SSD technology |
| US20100332894A1 (en) | 2009-06-30 | 2010-12-30 | Stephen Bowers | Bit error threshold and remapping a memory device |
| US8589726B2 (en) * | 2011-09-01 | 2013-11-19 | Infinidat Ltd. | System and method for uncovering data errors |
| US20140075093A1 (en) * | 2012-09-12 | 2014-03-13 | Infineon Technologies Ag | Method and system for implicit or explicit online repair of memory |
| US9406403B2 (en) | 2013-06-25 | 2016-08-02 | Advanced Micro Devices, Inc. | Spare memory external to protected memory |
| US9354994B2 (en) * | 2014-02-18 | 2016-05-31 | International Business Machines Corporation | Preemptive relocation of failing data |
| WO2016003449A1 (en) * | 2014-07-01 | 2016-01-07 | Hewlett-Packard Development Company, L.P. | Memory controller |
| US9558069B2 (en) | 2014-08-07 | 2017-01-31 | Pure Storage, Inc. | Failure mapping in a storage array |
| KR102252378B1 (ko) * | 2014-10-29 | 2021-05-14 | 삼성전자주식회사 | 메모리 장치, 메모리 시스템, 상기 메모리 장치의 동작 방법 및 상기 메모리 시스템의 동작 방법 |
| US9983808B2 (en) | 2014-12-10 | 2018-05-29 | California Institute Of Technology | NAND flash reliability with rank modulation |
| KR20160070920A (ko) * | 2014-12-10 | 2016-06-21 | 에스케이하이닉스 주식회사 | 맵 테이블을 갖는 컨트롤러 및 반도체 메모리 장치를 포함하는 메모리 시스템 및 그것의 동작 방법 |
| US20160350010A1 (en) * | 2015-05-31 | 2016-12-01 | Vmware, Inc. | Providing block size compatibility with a storage filter |
| US9875053B2 (en) * | 2015-06-05 | 2018-01-23 | Western Digital Technologies, Inc. | Scheduling scheme(s) for a multi-die storage device |
| US20180189144A1 (en) * | 2015-06-16 | 2018-07-05 | Iucf-Hyu (Industry-University Cooperation Foundation Hanyang University) | Apparatus and method for memory storage to protect data-loss after power loss |
| US10552335B2 (en) * | 2015-09-25 | 2020-02-04 | Beijing Lenovo Software Ltd. | Method and electronic device for a mapping table in a solid-state memory |
| US9983963B2 (en) * | 2015-11-09 | 2018-05-29 | Alibaba Group Holding Limited | System and method for exploiting hard disk drive capacity reserve and extending operating life thereof |
| TWI551991B (zh) * | 2015-11-20 | 2016-10-01 | 群聯電子股份有限公司 | 記憶體管理方法與系統及其記憶體儲存裝置 |
| TWI591482B (zh) * | 2016-01-30 | 2017-07-11 | 群聯電子股份有限公司 | 資料保護方法、記憶體控制電路單元及記憶體儲存裝置 |
| US20170300422A1 (en) * | 2016-04-14 | 2017-10-19 | Micron Technology, Inc. | Memory device with direct read access |
| US10540102B2 (en) * | 2016-09-30 | 2020-01-21 | Amazon Technologies, Inc. | Physical media aware spacially coupled journaling and replay |
| KR102790818B1 (ko) * | 2016-11-24 | 2025-04-07 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
| US10359955B2 (en) * | 2017-02-23 | 2019-07-23 | Western Digital Technologies, Inc. | Data storage device configured to perform a non-blocking control update operation |
| KR102319189B1 (ko) * | 2017-06-21 | 2021-10-28 | 삼성전자주식회사 | 스토리지 장치, 이를 포함하는 스토리지 시스템 및 스토리지 장치의 동작 방법 |
-
2017
- 2017-08-07 US US15/670,544 patent/US10445195B2/en active Active
-
2018
- 2018-08-06 CN CN201880051229.4A patent/CN110998544A/zh not_active Withdrawn
- 2018-08-06 WO PCT/US2018/045343 patent/WO2019032439A1/en not_active Ceased
- 2018-08-06 KR KR1020207006441A patent/KR102407659B1/ko active Active
- 2018-08-06 EP EP18844941.7A patent/EP3665579A4/en not_active Withdrawn
-
2019
- 2019-05-28 US US16/423,574 patent/US11036593B2/en active Active
-
2021
- 2021-05-18 US US17/323,816 patent/US11599430B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20100039181A (ko) * | 2008-10-07 | 2010-04-15 | 삼성전자주식회사 | 예비 영역을 가지는 반도체 메모리 장치 |
| US20160147623A1 (en) * | 2014-11-20 | 2016-05-26 | Samsung Electronics Co., Ltd. | Rank and page remapping logic in a volatile memory |
| US20170132125A1 (en) * | 2015-11-06 | 2017-05-11 | SK Hynix Inc. | Selective data recycling in non-volatile memory |
Also Published As
| Publication number | Publication date |
|---|---|
| US20190278670A1 (en) | 2019-09-12 |
| CN110998544A (zh) | 2020-04-10 |
| EP3665579A1 (en) | 2020-06-17 |
| EP3665579A4 (en) | 2021-04-21 |
| US20210271573A1 (en) | 2021-09-02 |
| WO2019032439A1 (en) | 2019-02-14 |
| US10445195B2 (en) | 2019-10-15 |
| US20190042375A1 (en) | 2019-02-07 |
| US11599430B2 (en) | 2023-03-07 |
| KR102407659B1 (ko) | 2022-06-10 |
| US11036593B2 (en) | 2021-06-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102407659B1 (ko) | 메모리 내 데이터 복원 작업의 수행 | |
| CN114730598B (zh) | 利用分区命名空间简缩ssd中的逻辑到物理表指针 | |
| US10002042B2 (en) | Systems and methods of detecting errors during read operations and skipping word line portions | |
| US10475518B2 (en) | Memory system, memory system control method, and program | |
| US20160299812A1 (en) | Device-Specific Variable Error Correction | |
| US20180039535A1 (en) | Proactive corrective actions in memory based on a probabilistic data structure | |
| EP2483785A2 (en) | Stripe-based memory operation | |
| WO2015034901A1 (en) | Method and system for migrating data between flash memory devices | |
| US20160299844A1 (en) | Mapping Logical Groups of Data to Physical Locations In Memory | |
| US11928356B2 (en) | Source address memory managment | |
| US11715541B2 (en) | Workload adaptive scans for memory sub-systems | |
| US12468590B2 (en) | Adaptive wear leveling for endurance compensation | |
| US11048580B2 (en) | Data duplication in a non-volatile memory | |
| TWI660361B (zh) | 用於多維記憶體之選擇性錯誤率資訊 | |
| US20240419543A1 (en) | Proximity based parity data management | |
| CN113126899A (zh) | 完全多平面操作启用 | |
| US20200264953A1 (en) | Error correction in data storage devices | |
| US12164779B2 (en) | Deck based media management operations in memory devices | |
| US20260024594A1 (en) | Dynamic read disturb handling using selective scanning | |
| US20260064525A1 (en) | Host managed data recovery operations | |
| CN121002486A (zh) | 动态可配置低密度奇偶校验码 | |
| CN120199311A (zh) | 存储器维护操作 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0105 | International application |
Patent event date: 20200304 Patent event code: PA01051R01D Comment text: International Patent Application |
|
| PA0201 | Request for examination | ||
| PG1501 | Laying open of application | ||
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20211125 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20220427 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20220607 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20220608 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration |