KR20200064499A - 메모리 시스템 및 메모리 시스템의 동작방법 - Google Patents
메모리 시스템 및 메모리 시스템의 동작방법 Download PDFInfo
- Publication number
- KR20200064499A KR20200064499A KR1020180150684A KR20180150684A KR20200064499A KR 20200064499 A KR20200064499 A KR 20200064499A KR 1020180150684 A KR1020180150684 A KR 1020180150684A KR 20180150684 A KR20180150684 A KR 20180150684A KR 20200064499 A KR20200064499 A KR 20200064499A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- memory
- level
- garbage collection
- blocks
- 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
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- 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/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- 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/0653—Monitoring storage devices or systems
-
- 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/0656—Data buffering arrangements
-
- 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
-
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- 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/7205—Cleaning, compaction, garbage collection, erase control
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)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
도 2는 본 발명의 실시 예에 따른 메모리 시스템에서 메모리 장치의 일 예를 개략적으로 도시한 도면.
도 3은 본 발명의 실시 예에 따른 메모리 시스템에서 메모리 장치에 데이터 처리 동작의 일 예를 개략적으로 설명하기 위한 도면.
도 4는 본 발명의 실시예에 따른 메모리 시스템에서 사용되는 슈퍼 메모리블록의 개념을 설명하기 위해 도시한 도면.
도 5는 도 1의 프로세서를 좀 더 상세하게 보여주는 블록도
도6a 및 도 6b는 본 발명의 실시예에 따른 블록레벨관리자의 동작을 설명하기 위한 도면.
도 7 내지 도 10은 본 발명의 실시예에 따른 메모리 시스템의 동작 방법을 설명하기 위한 도면.
도 11 내지 도 19는 본 발명의 실시 예에 따른 메모리 시스템을 포함하는 데이터 처리 시스템의 다른 일 예들을 개략적으로 도시한 도면.
Claims (20)
- 복수의 메모리 블록을 포함하는 메모리 장치; 및
상기 메모리 장치를 제어하는 컨트롤러를 포함하며,
상기 컨트롤러는,
상기 메모리 장치에 라이트 순서에 기초하여, 상기 메모리 블록마다 레벨을 결정하며, 상기 레벨에 따라 콜드블록을 관리하는 블록레벨관리자; 및
프리블록 개수(Free Block Count, FBC)와 제1임계값(TH1) 비교에 따라 가비지콜렉션긴급레벨을 결정하며, 결정된 가비지콜렉션긴급레벨에 따라 상기 콜드블록에 대한 가비지콜렉션 수행 여부를 관리하는 가비지콜렉션관리자
를 포함하는 메모리 시스템.
- 제1항에 있어서,
상기 블록레벨관리자는,
상기 메모리 장치에 라이트 순서에 기초하여 메모리 블록마다 시퀀스번호를 할당하며, 상기 시퀀스번호에 따라 메모리 블록을 배열하는 블록배열부;
상기 시퀀스번호를 할당받은 메모리블록에 복수의 레벨 중 하나를 설정하는 블록레벨결정부; 및
상기 시퀀스번호 및 레벨이 결정된 메모리 블록에 대한 정보를 블록레벨리스트에 저장하는 저장부
를 포함하는 메모리 시스템.
- 제2항에 있어서,
상기 블록배열부는,
상기 메모리 장치에 라이트 순서에 따라 시퀀스번호를 증가시켜 메모리 블록마다 시퀀스번호를 할당하는 메모리 시스템.
- 제2항에 있어서,
상기 복수의 레벨은,
제1레벨 내지 제N레벨구간을 포함할 수 있으며, 제1레벨구간으로 갈수록 콜드블록으로써, 업데이트된 이력이 오래된 복수의 메모리 블록들이 라이트 순서대로 배열되는 구간이며, 제N구간은 핫 블록으로 최신에 업데이트된 복수의 메모리 블록이 라이트 순서대로 배열되는 구간을 나타내는 메모리 시스템.
- 제4항에 있어서,
상기 제1레벨 내지 제N레벨구간은,
상기 각 레벨구간마다 상기 메모리 장치에 업데이트 기간을 설정하여 분류된 구간이거나, 상기 각 레벨구간마다 소정의 메모리 블록개수를 설정하여 분류된 구간인 메모리 시스템.
- 제1항에 있어서,
상기 가비지콜렉션관리자는,
프리블록 개수(Free Block Count, FBC)와 제1임계값(TH1)을 비교하여 가비지콜렉션레벨을 판별하는 가비지콜렉션레벨판단부;
판별결과, 상기 프리블록개수가 상기 제1임계값 이상인 경우, 상기 가비지콜렉션레벨을 로우레벨(Low Level)로 판별하여 제1가비지 콜렉션을 수행하는 제1가비지콜렉션부; 및
판별결과, 상기 프리블록개수가 상기 제1임계값 미만인 경우, 상기 가비지콜렉션레벨을 하이레벨로 판별하여 제2가비지콜렉션을 수행하는 제2가비지콜렉션부
를 포함하는 메모리 시스템.
- 제6항에 있어서,
상기 제1가비지콜렉션부는,
상기 가비지콜렉션긴급레벨이 로우레벨로 판별되는 경우, 상기 블록레벨리스트에서 콜드블록-제1레벨에 포함된 복수의 메모리 블록-을 선택하는 콜드블록선택부;
상기 선택된 콜드블록을 대상으로 하나 이상의 희생블록을 선택하는 제1희생블록선택부; 및
상기 제1희생블록선택부를 통해 선택된 희생블록에 포함된 유효페이지를 프리블록의 빈페이지 복사한 후, 희생블록을 소거처리하여 프리블록으로 설정하는 제1가비지콜렉션수행부
를 포함하는 메모리 시스템.
- 제7항에 있어서.
상기 제1희생블록선택부는,
상기 콜드블록 중에서 유효페이지가 제2임계값 이상인 콜드블록을 희생블록으로 선택하거나, 상기 콜드블록 중에서 유효페이지가 제2임계값 이하인 콜드블록을 희생블록으로 선택하는 메모리 시스템.
- 제6항에 있어서,
상기 제2가비지콜렉션부는,
상기 가비지콜렉션긴급레벨이 하이레벨로 판별되는 경우, 상기 복수의 메모리 블록을 대상으로 하나 이상의 희생블록을 선택하는 제2희생블록선택부; 및
제2희생블록선택부를 통해 선택된 희생블록에 포함된 유효페이지를 프리블록의 빈페이지 복사한 후, 희생블록을 소거처리하여 프리블록으로 설정하는 제2가비지콜렉션수행부
를 포함하는 메모리 시스템.
- 제9항에 있어서,
제2희생블록선택부는,
복수의 메모리 블록 중에서 유효페이지가 제3임계값 이하인 하나 이상의 메모리 블록을 희생블록으로 선택하는 메모리 시스템.
- 복수의 메모리 블록을 포함하는 메모리 장치 및 상기 메모리 장치를 제어하는 컨트롤러를 포함하는 메모리 시스템 동작 방법에 있어서,
상기 메모리 장치에 라이트 순서에 기초하여, 상기 메모리 블록마다 레벨을 결정하며, 상기 레벨에 따라 콜드블록을 관리하는 단계; 및
프리블록 개수(Free Block Count, FBC)와 제1임계값(TH1) 비교에 따라 가비지콜렉션긴급레벨을 결정하며, 결정된 가비지콜렉션긴급레벨에 따라 상기 콜드블록에 대한 가비지콜렉션 수행 여부를 관리하는 단계
를 포함하는 메모리 시스템 동작 방법.
- 제11항에 있어서,
상기 메모리 장치에 라이트 순서에 기초하여, 상기 메모리 블록마다 레벨을 결정하며, 상기 레벨에 따라 콜드블록을 관리하는 단계는,
상기 메모리 장치에 라이트 순서에 기초하여 메모리 블록마다 시퀀스번호를 할당하는 단계;
상기 시퀀스번호에 따라 메모리 블록을 배열하는 단계;
상기 시퀀스번호를 할당받은 메모리블록에 복수의 레벨 중 하나를 설정하는 단계; 및
상기 시퀀스번호 및 레벨이 결정된 메모리 블록에 대한 정보를 블록레벨리스트에 저장하는 단계
를 포함하는 메모리 시스템 동작 방법.
- 제12항에 있어서,
상기 메모리 장치에 라이트 순서에 기초하여 메모리 블록마다 시퀀스번호를 할당하는 단계는,
상기 메모리 장치에 업데이트 순서에 따라 시퀀스번호를 증가시켜 메모리 블록마다 시퀀스번호를 할당하는 메모리 시스템 동작 방법.
- 제12항에 있어서,
상기 복수의 레벨은,
제1레벨 내지 제N레벨구간을 포함할 수 있으며, 제1레벨구간으로 갈수록 콜드블록으로써, 업데이트된 이력이 오래된 복수의 메모리 블록들이 라이트 순서대로 배열되는 구간이며, 제N구간은 핫 블록으로 최신에 업데이트된 복수의 메모리 블록이 라이트 순서대로 배열되는 구간을 나타내는 메모리 시스템 동작 방법.
- 제14항에 있어서,
상기 제1레벨 내지 제N레벨구간은,
상기 각 레벨구간마다 상기 메모리 장치에 업데이트 기간을 설정하여 분류된 구간이거나, 상기 각 레벨구간마다 소정의 메모리 블록개수를 설정하여 분류된 구간인 메모리 시스템 동작 방법.
- 제11항에 있어서,
상기 가비지콜렉션긴급레벨에 따라 상기 콜드블록에 대한 가비지콜렉션 수행 여부를 관리하는 단계는,
프리블록 개수(Free Block Count, FBC)와 제1임계값(TH1)을 비교하여 가비지콜렉션레벨을 판별하는 단계;
판별결과, 상기 프리블록개수가 상기 제1임계값 이상인 경우, 상기 가비지콜렉션레벨을 로우레벨(Low Level)로 판별하여 제1가비지 콜렉션을 수행하는 단계; 및
판별결과, 상기 프리블록개수가 상기 제1임계값 미만인 경우, 상기 가비지콜렉션레벨을 하이레벨로 판별하여 제2가비지콜렉션을 수행하는 단계
를 포함하는 메모리 시스템 동작 방법.
- 제16항에 있어서,
상기 제1가비지 콜렉션을 수행하는 단계는,
상기 가비지콜렉션긴급레벨이 로우레벨로 판별되는 경우, 상기 블록레벨리스트에서 콜드블록-제1레벨에 포함된 복수의 메모리 블록-을 선택하는 단계;
상기 선택된 콜드블록을 대상으로 하나 이상의 희생블록을 선택하는 단계; 및
상기 제1희생블록선택부를 통해 선택된 희생블록에 포함된 유효페이지를 프리블록의 빈페이지 복사한 후, 희생블록을 소거처리하여 프리블록으로 설정하는 단계
를 포함하는 메모리 시스템 동작 방법.
- 제17항에 있어서.
상기 선택된 콜드블록을 대상으로 하나 이상의 희생블록을 선택하는 단계는,
상기 콜드블록 중에서 유효페이지가 제2임계값 이상인 콜드블록을 희생블록으로 선택하거나, 상기 콜드블록 중에서 유효페이지가 제2임계값 이하인 콜드블록을 희생블록으로 선택하는 메모리 시스템 동작 방법.
- 제16항에 있어서,
상기 제2가비지콜렉션을 수행하는 단계는,
상기 가비지콜렉션긴급레벨이 하이레벨로 판별되는 경우, 상기 복수의 메모리 블록을 대상으로 하나 이상의 희생블록을 선택하는 단계; 및
제2희생블록선택부를 통해 선택된 희생블록에 포함된 유효페이지를 프리블록의 빈페이지 복사한 후, 희생블록을 소거처리하여 프리블록으로 설정하는 단계
를 포함하는 메모리 시스템 동작 방법.
- 제19항에 있어서,
상기 희생블록을 선택하는 단계,
상기 복수의 메모리 블록 중에서 유효페이지가 제3임계값 이하인 하나 이상의 메모리 블록을 희생블록으로 선택하는 메모리 시스템 동작 방법.
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020180150684A KR102763921B1 (ko) | 2018-11-29 | 2018-11-29 | 메모리 시스템 및 메모리 시스템의 동작방법 |
| US16/575,642 US11086537B2 (en) | 2018-11-29 | 2019-09-19 | Method and system to perform urgency level garbage collection based on write history of memory blocks |
| CN201910988848.2A CN111240586B (zh) | 2018-11-29 | 2019-10-17 | 存储器系统及其操作方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020180150684A KR102763921B1 (ko) | 2018-11-29 | 2018-11-29 | 메모리 시스템 및 메모리 시스템의 동작방법 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20200064499A true KR20200064499A (ko) | 2020-06-08 |
| KR102763921B1 KR102763921B1 (ko) | 2025-02-07 |
Family
ID=70850062
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020180150684A Active KR102763921B1 (ko) | 2018-11-29 | 2018-11-29 | 메모리 시스템 및 메모리 시스템의 동작방법 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US11086537B2 (ko) |
| KR (1) | KR102763921B1 (ko) |
| CN (1) | CN111240586B (ko) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US12541298B2 (en) | 2022-10-28 | 2026-02-03 | SK Hynix Inc. | Storage device controlling garbage collection or wear leveling on the basis of timestamp, and method thereof |
Families Citing this family (63)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11893265B2 (en) * | 2017-05-02 | 2024-02-06 | Google Llc | Garbage collection for data storage |
| US12260109B2 (en) | 2017-06-06 | 2025-03-25 | Google Llc | Optimizing data storage with access windows |
| EP3866016B1 (en) * | 2018-11-20 | 2025-01-08 | Huawei Technologies Co., Ltd. | Method and apparatus for deleting index entry in memory |
| KR102833854B1 (ko) * | 2019-01-07 | 2025-07-14 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 |
| US11113270B2 (en) | 2019-01-24 | 2021-09-07 | EMC IP Holding Company LLC | Storing a non-ordered associative array of pairs using an append-only storage medium |
| EP3993273B1 (en) * | 2019-07-22 | 2025-11-26 | Huawei Technologies Co., Ltd. | Method and apparatus for data compression in storage system, device, and readable storage medium |
| US11599546B2 (en) | 2020-05-01 | 2023-03-07 | EMC IP Holding Company LLC | Stream browser for data streams |
| US11604759B2 (en) | 2020-05-01 | 2023-03-14 | EMC IP Holding Company LLC | Retention management for data streams |
| US11599420B2 (en) | 2020-07-30 | 2023-03-07 | EMC IP Holding Company LLC | Ordered event stream event retention |
| US11567665B2 (en) * | 2020-08-31 | 2023-01-31 | Micron Technology, Inc. | Data dispersion-based memory management |
| US11513871B2 (en) | 2020-09-30 | 2022-11-29 | EMC IP Holding Company LLC | Employing triggered retention in an ordered event stream storage system |
| US11755555B2 (en) | 2020-10-06 | 2023-09-12 | EMC IP Holding Company LLC | Storing an ordered associative array of pairs using an append-only storage medium |
| US11599293B2 (en) | 2020-10-14 | 2023-03-07 | EMC IP Holding Company LLC | Consistent data stream replication and reconstruction in a streaming data storage platform |
| KR20220060385A (ko) * | 2020-11-04 | 2022-05-11 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
| KR20220086934A (ko) * | 2020-12-17 | 2022-06-24 | 에스케이하이닉스 주식회사 | 비휘발성 메모리 시스템의 저널링 제어 장치 및 방법 |
| US11816065B2 (en) | 2021-01-11 | 2023-11-14 | EMC IP Holding Company LLC | Event level retention management for data streams |
| US12099513B2 (en) | 2021-01-19 | 2024-09-24 | EMC IP Holding Company LLC | Ordered event stream event annulment in an ordered event stream storage system |
| US11404133B1 (en) * | 2021-03-09 | 2022-08-02 | Micron Technology, Inc. | Valid translation unit count-based memory management |
| US12099742B2 (en) * | 2021-03-15 | 2024-09-24 | Pure Storage, Inc. | Utilizing programming page size granularity to optimize data segment storage in a storage system |
| US11775197B2 (en) * | 2021-03-25 | 2023-10-03 | Kyocera Document Solutions Inc. | Single command for reading then clearing dynamic random access memory |
| US11740828B2 (en) * | 2021-04-06 | 2023-08-29 | EMC IP Holding Company LLC | Data expiration for stream storages |
| US12001881B2 (en) | 2021-04-12 | 2024-06-04 | EMC IP Holding Company LLC | Event prioritization for an ordered event stream |
| US11954537B2 (en) | 2021-04-22 | 2024-04-09 | EMC IP Holding Company LLC | Information-unit based scaling of an ordered event stream |
| US11681460B2 (en) | 2021-06-03 | 2023-06-20 | EMC IP Holding Company LLC | Scaling of an ordered event stream based on a writer group characteristic |
| US11543993B1 (en) * | 2021-06-17 | 2023-01-03 | Western Digital Technologies, Inc. | Fast garbage collection in zoned namespaces SSDs |
| KR20220169812A (ko) * | 2021-06-21 | 2022-12-28 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
| US11735282B2 (en) | 2021-07-22 | 2023-08-22 | EMC IP Holding Company LLC | Test data verification for an ordered event stream storage system |
| US11733893B2 (en) * | 2021-07-28 | 2023-08-22 | International Business Machines Corporation | Management of flash storage media |
| US11907564B2 (en) * | 2021-08-03 | 2024-02-20 | Yadro International Ltd. | Method of and system for initiating garbage collection requests |
| CN113918091B (zh) * | 2021-09-13 | 2022-06-07 | 北京得瑞领新科技有限公司 | Nand闪存中物理块的控制方法、装置及ssd设备 |
| US11922047B2 (en) * | 2021-09-16 | 2024-03-05 | EMC IP Holding Company LLC | Using RPO as an optimization target for DataDomain garbage collection |
| JP2023044330A (ja) * | 2021-09-17 | 2023-03-30 | キオクシア株式会社 | メモリシステムおよび制御方法 |
| US11847334B2 (en) * | 2021-09-23 | 2023-12-19 | EMC IP Holding Company LLC | Method or apparatus to integrate physical file verification and garbage collection (GC) by tracking special segments |
| US11971850B2 (en) | 2021-10-15 | 2024-04-30 | EMC IP Holding Company LLC | Demoted data retention via a tiered ordered event stream data storage system |
| US12001349B2 (en) | 2021-10-26 | 2024-06-04 | Samsung Electronics Co., Ltd. | Storage device including regions of different densities and operation method thereof |
| CN114327254A (zh) * | 2021-11-16 | 2022-04-12 | 三星(中国)半导体有限公司 | 存储数据的方法和装置 |
| US12124727B2 (en) * | 2021-12-17 | 2024-10-22 | Samsung Electronics Co., Ltd. | Automatic deletion in a persistent storage device |
| WO2023125507A1 (zh) * | 2021-12-29 | 2023-07-06 | 华为技术有限公司 | 生成块组的方法、装置和设备 |
| US12019899B2 (en) * | 2022-03-03 | 2024-06-25 | Western Digital Technologies, Inc. | Data relocation with protection for open relocation destination blocks |
| US11886735B2 (en) * | 2022-03-22 | 2024-01-30 | Micron Technology, Inc. | Data movement based on address table activity |
| US11941297B2 (en) | 2022-04-11 | 2024-03-26 | Netapp, Inc. | Garbage collection and bin synchronization for distributed storage architecture |
| US11934656B2 (en) * | 2022-04-11 | 2024-03-19 | Netapp, Inc. | Garbage collection and bin synchronization for distributed storage architecture |
| US11947452B2 (en) * | 2022-06-01 | 2024-04-02 | Micron Technology, Inc. | Controlling variation of valid data counts in garbage collection source blocks |
| US12461683B2 (en) | 2022-07-06 | 2025-11-04 | Samsung Electronics Co., Ltd. | Systems, methods, and devices for reclaim unit formation and selection in a storage device |
| US20240012579A1 (en) * | 2022-07-06 | 2024-01-11 | Samsung Electronics Co., Ltd. | Systems, methods, and apparatus for data placement in a storage device |
| US12045461B2 (en) * | 2022-07-28 | 2024-07-23 | Micron Technology, Inc. | Temporal metric driven media management scheme |
| KR20240030819A (ko) * | 2022-08-31 | 2024-03-07 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 컨트롤러의 동작 방법 |
| CN115620789A (zh) * | 2022-09-29 | 2023-01-17 | 武汉新芯集成电路制造有限公司 | 存储芯片 |
| US12242751B2 (en) * | 2023-03-03 | 2025-03-04 | SanDisk Technologies, Inc. | Data storage device and method for host-assisted efficient handling of multiple versions of data |
| KR20240138839A (ko) * | 2023-03-13 | 2024-09-20 | 삼성전자주식회사 | 메모리 장치, 메모리 장치의 동작방법 및 메모리 시스템 |
| TWI859965B (zh) * | 2023-07-11 | 2024-10-21 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 |
| US12498873B2 (en) * | 2023-07-18 | 2025-12-16 | Sk Hynix Nand Product Solutions Corp. | System and methods for DRAM-less garbage collection with improved performance |
| US20250053346A1 (en) * | 2023-08-07 | 2025-02-13 | Dell Products L.P. | Efficient ingest tier references via virtual addresses |
| US12487924B2 (en) | 2024-01-02 | 2025-12-02 | Oracle International Corporation | Concurrent lazy reference counting in an old garbage collection generation |
| US12468457B2 (en) * | 2024-01-24 | 2025-11-11 | Dell Products L.P. | Data maintenance and deletion with trustworthy energy awareness |
| CN117891408A (zh) * | 2024-01-26 | 2024-04-16 | 三星(中国)半导体有限公司 | 用于存储设备的数据去重的方法和存储设备 |
| CN120429244A (zh) * | 2024-02-02 | 2025-08-05 | 慧荣科技股份有限公司 | 闪存装置中的垃圾回收方法及计算机可读存储介质及装置 |
| US12306750B1 (en) * | 2024-02-22 | 2025-05-20 | Oracle International Corporation | Selecting garbage collection processes |
| US12399820B1 (en) | 2024-02-22 | 2025-08-26 | Oracle International Corporation | Selecting garbage collection processes |
| CN120848781A (zh) * | 2024-04-25 | 2025-10-28 | 戴尔产品有限公司 | 用于存储系统的垃圾回收的方法、设备和计算机程序产品 |
| US12461675B1 (en) * | 2024-06-24 | 2025-11-04 | Hewlett Packard Enterprise Development Lp | Comparison of a fingerprint generated for a realigned data page that begins at a non-zero value portion to a plurality of fingerprints of a deduplication storage system |
| US12613801B2 (en) * | 2024-07-10 | 2026-04-28 | Dell Products L.P. | Incremental reference counting validation based on a copy-on-write indexing structure |
| US12561239B1 (en) | 2025-01-15 | 2026-02-24 | Oracle International Corporation | Techniques for concurrent multi-generation garbage collection |
Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2012158521A1 (en) * | 2011-05-17 | 2012-11-22 | Sandisk Technologies Inc. | Non-volatile memory and method having block management with hot/cold data sorting |
| KR20130076429A (ko) * | 2011-12-28 | 2013-07-08 | 삼성전자주식회사 | 메모리 장치의 저장 영역 관리 방법 및 이를 이용한 저장 장치 |
| US20140032817A1 (en) * | 2012-07-27 | 2014-01-30 | International Business Machines Corporation | Valid page threshold based garbage collection for solid state drive |
| US20140215129A1 (en) * | 2013-01-28 | 2014-07-31 | Radian Memory Systems, LLC | Cooperative flash memory control |
| US20150347296A1 (en) * | 2014-05-30 | 2015-12-03 | Sandisk Enterprise Ip Llc | Prioritizing Garbage Collection and Block Allocation Based on I/O History for Logical Address Regions |
| KR20160008365A (ko) * | 2014-07-14 | 2016-01-22 | 삼성전자주식회사 | 저장 매체, 메모리 시스템 및 메모리 시스템에서의 저장 영역 관리 방법 |
| US20160139812A1 (en) * | 2014-11-14 | 2016-05-19 | Sk Hynix Memory Solutions Inc. | Hot-cold data separation method in flash translation layer |
| KR20180045089A (ko) * | 2016-10-24 | 2018-05-04 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이를 이용한 웨어-레벨링 방법 |
| US20190227925A1 (en) * | 2018-01-23 | 2019-07-25 | Goke Us Research Laboratory | Garbage Collection Method for a Data Storage Apparatus |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9582193B2 (en) | 2014-09-02 | 2017-02-28 | Sandisk Technologies Llc | Triggering a process to reduce declared capacity of a storage device in a multi-storage-device storage system |
| KR101539895B1 (ko) | 2014-09-30 | 2015-07-27 | 홍익대학교 산학협력단 | 오버 프로비저닝 스페이스 사이즈를 결정하는 컴퓨팅 방법 및 장치 |
| US10318414B2 (en) * | 2014-10-29 | 2019-06-11 | SK Hynix Inc. | Memory system and memory management method thereof |
| US10339048B2 (en) * | 2014-12-23 | 2019-07-02 | International Business Machines Corporation | Endurance enhancement scheme using memory re-evaluation |
| US10296452B2 (en) * | 2015-05-11 | 2019-05-21 | SK Hynix Inc. | Data separation by delaying hot block garbage collection |
| KR20160143259A (ko) * | 2015-06-05 | 2016-12-14 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그의 동작방법 |
| KR102509540B1 (ko) | 2015-06-30 | 2023-03-14 | 삼성전자주식회사 | 저장 장치 및 그것의 가비지 컬렉션 방법 |
| KR102653401B1 (ko) * | 2016-07-18 | 2024-04-03 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그의 동작방법 |
| US11188456B2 (en) * | 2017-03-21 | 2021-11-30 | Western Digital Technologies Inc. | Storage system and method for predictive block allocation for efficient garbage collection |
-
2018
- 2018-11-29 KR KR1020180150684A patent/KR102763921B1/ko active Active
-
2019
- 2019-09-19 US US16/575,642 patent/US11086537B2/en active Active
- 2019-10-17 CN CN201910988848.2A patent/CN111240586B/zh active Active
Patent Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2012158521A1 (en) * | 2011-05-17 | 2012-11-22 | Sandisk Technologies Inc. | Non-volatile memory and method having block management with hot/cold data sorting |
| KR20130076429A (ko) * | 2011-12-28 | 2013-07-08 | 삼성전자주식회사 | 메모리 장치의 저장 영역 관리 방법 및 이를 이용한 저장 장치 |
| US20140032817A1 (en) * | 2012-07-27 | 2014-01-30 | International Business Machines Corporation | Valid page threshold based garbage collection for solid state drive |
| US20140215129A1 (en) * | 2013-01-28 | 2014-07-31 | Radian Memory Systems, LLC | Cooperative flash memory control |
| US20150347296A1 (en) * | 2014-05-30 | 2015-12-03 | Sandisk Enterprise Ip Llc | Prioritizing Garbage Collection and Block Allocation Based on I/O History for Logical Address Regions |
| KR20160008365A (ko) * | 2014-07-14 | 2016-01-22 | 삼성전자주식회사 | 저장 매체, 메모리 시스템 및 메모리 시스템에서의 저장 영역 관리 방법 |
| US20160139812A1 (en) * | 2014-11-14 | 2016-05-19 | Sk Hynix Memory Solutions Inc. | Hot-cold data separation method in flash translation layer |
| KR20180045089A (ko) * | 2016-10-24 | 2018-05-04 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이를 이용한 웨어-레벨링 방법 |
| US20190227925A1 (en) * | 2018-01-23 | 2019-07-25 | Goke Us Research Laboratory | Garbage Collection Method for a Data Storage Apparatus |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US12541298B2 (en) | 2022-10-28 | 2026-02-03 | SK Hynix Inc. | Storage device controlling garbage collection or wear leveling on the basis of timestamp, and method thereof |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111240586B (zh) | 2023-09-12 |
| KR102763921B1 (ko) | 2025-02-07 |
| US20200174668A1 (en) | 2020-06-04 |
| CN111240586A (zh) | 2020-06-05 |
| US11086537B2 (en) | 2021-08-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102763921B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
| KR102685015B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
| KR102727958B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
| KR102559549B1 (ko) | 메모리 시스템에서의 블록 상태를 관리하는 방법 및 장치 | |
| KR102711044B1 (ko) | 메모리 시스템에서의 유효 데이터 체크 방법 및 장치 | |
| US11921630B2 (en) | Memory system and operating method thereof | |
| KR102692901B1 (ko) | 메모리 시스템에서의 비휘발성 메모리 블록 내 데이터를 삭제하는 방법 및 장치 | |
| KR20200022179A (ko) | 데이터 처리 시스템 및 데이터 처리 시스템의 동작 방법 | |
| KR102649131B1 (ko) | 메모리 시스템 내 대용량 데이터 저장이 가능한 블록에서의 유효 데이터 체크 방법 및 장치 | |
| KR20190106228A (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
| US10901891B2 (en) | Controller and operation method thereof | |
| KR102571629B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
| KR20200016074A (ko) | 데이터 처리 시스템 및 그의 동작 방법 | |
| KR102807343B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
| KR20190040614A (ko) | 메모리 시스템 및 그의 동작방법 | |
| KR102708925B1 (ko) | 메모리 시스템에서의 유효 데이터 체크 방법 및 장치 | |
| KR102415875B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
| KR20200011832A (ko) | 메모리 시스템에서의 데이터 처리 방법 및 장치 | |
| KR20200029235A (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
| KR102646252B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
| KR102234725B1 (ko) | 컨트롤러 및 메모리 시스템 및 메모리 시스템의 동작 방법 | |
| KR20200016076A (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
| CN111352858B (zh) | 存储器系统及其操作方法 | |
| KR20190102790A (ko) | 컨트롤러 및 그 동작 방법과, 이를 포함하는 메모리 시스템 | |
| KR102422032B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20181129 |
|
| PG1501 | Laying open of application | ||
| A201 | Request for examination | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20211124 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20181129 Comment text: Patent Application |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20240529 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: 20250122 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20250203 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20250204 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration |