KR100857761B1 - 웨어 레벨링을 수행하는 메모리 시스템 및 그것의 쓰기방법 - Google Patents
웨어 레벨링을 수행하는 메모리 시스템 및 그것의 쓰기방법 Download PDFInfo
- Publication number
- KR100857761B1 KR100857761B1 KR1020070058417A KR20070058417A KR100857761B1 KR 100857761 B1 KR100857761 B1 KR 100857761B1 KR 1020070058417 A KR1020070058417 A KR 1020070058417A KR 20070058417 A KR20070058417 A KR 20070058417A KR 100857761 B1 KR100857761 B1 KR 100857761B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- memory
- group
- flash memory
- count value
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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
- G06F2212/1036—Life time enhancement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/7211—Wear leveling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
Description
Claims (27)
- 플래시 메모리를 포함하는 메모리 시스템의 쓰기 방법에 있어서:입력된 논리 어드레스에 대응하는 메모리 블럭 그룹을 선택하는 단계;상기 선택된 메모리 블럭 그룹의 맵핑 정보를 상기 플래시 메모리로부터 읽고 상기 읽혀진 맵핑 정보에 따라 상기 논리 어드레스를 물리 어드레스로 변환하는 단계;상기 물리 어드레스에 대응하는 로그 블럭에 데이터를 쓰는 단계;머지 카운트 값이 웨어 레벨링 조건을 만족하는 지의 여부를 판별하는 단계; 및상기 판별 결과에 따라 가장 작은 그룹 카운트 값을 갖는 메모리 블럭 그룹의 소거 카운트 정보를 읽고 상기 읽혀진 소거 카운트 정보에 따라 웨어 레벨링 동작을 수행하는 단계를 포함하되,상기 로그 블럭에 데이터를 쓰는 단계는, 상기 논리 어드레스에 대응하는 로그 블럭이 존재하는 지 판별하는 단계를 포함하고, 상기 판별결과 로그 블럭이 존재하면 상기 로그 블럭에 상기 데이터가 쓰여지는 메모리 시스템의 쓰기 방법.
- 제 1 항에 있어서,상기 웨어 레벨링 동작 동안, 가장 작은 그룹 카운트 값을 갖는 메모리 블럭 그룹에 속하는 메모리 블럭들 중 가장 작은 소거 카운트 값을 갖는 메모리 블럭은 프리 블럭과 교환되도록 맵핑 정보가 변경되는 메모리 시스템의 쓰기 방법.
- 제 1 항에 있어서,상기 메모리 시스템은 쓰기 동작시 상기 선택된 메모리 블럭 그룹의 맵핑 정보 및 상기 가장 작은 그룹 카운트를 갖는 메모리 블럭 그룹의 소거 카운트 정보를 상기 플래시 메모리로부터 읽어와 임시로 저장하는 에스램을 포함하는 메모리 시스템의 쓰기 방법.
- 제 1 항에 있어서,상기 메모리 시스템은 상기 논리 어드레스로부터 논리 블럭 번호를 계산하고, 상기 계산된 논리 블럭 번호로부터 상기 메모리 블럭 그룹이 선택되도록 하는 그룹 선택 알고리즘을 저장하는 롬을 포함하는 메모리 시스템의 쓰기 방법.
- 제 4 항에 있어서,상기 롬은 상기 웨어 레벨링 동작을 수행하기 위한 웨어 레벨링 알고리즘을 포함하는 메모리 시스템의 쓰기 방법.
- 삭제
- 제 1 항에 있어서,상기 로그 블럭에 데이터를 쓰는 단계는,상기 논리 어드레스에 대응하는 로그 블럭이 존재하지 않으면 이용가능한 프리 블럭이 존재하는 지 판별하는 단계를 더 포함하고, 상기 판별결과 이용가능한 프리 블럭이 존재하면 상기 이용가능한 프리 블럭에 상기 데이터가 쓰여지는 메모리 시스템의 쓰기 방법.
- 제 7 항에 있어서,상기 로그 블럭에 데이터를 쓰는 단계는,이용가능한 프리 블럭이 존재하지 않으면, 머지 동작을 수행하여 새로운 프리 블럭을 생성하는 단계를 더 포함하고, 상기 새로운 프리 블럭에 상기 데이터가 쓰여지는 메모리 시스템의 쓰기 방법.
- 제 8 항에 있어서,상기 메모리 시스템은 상기 머지 동작이 수행될 때마다 상기 머지 카운트 값을 증가시키는 메모리 시스템의 쓰기 방법.
- 제 9 항에 있어서,상기 머지 카운트 값은 상기 플래시 메모리에 저장되며, 쓰기 동작시 상기 플래시 메모리로부터 읽어오는 메모리 시스템의 쓰기 방법.
- 제 1 항에 있어서,쓰기 동작시 상기 플래시 메모리로부터 메모리 블럭 그룹들 각각의 그룹 카운트 값들을 저장하고 있는 그룹 카운트 정보를 읽어오며, 상기 논리 어드레스에 따라 선택된 메모리 블럭 그룹의 그룹 카운트 값이 증가되는 메모리 시스템의 쓰기 방법.
- 제 11 항에 있어서,메모리 블럭 그룹들의 각각의 그룹 카운트 값들은 상기 플래시 메모리에 저장되며, 쓰기 동작시 상기 플래시 메모리로부터 읽어오는 메모리 시스템의 쓰기 방법.
- 제 4 항에 있어서,상기 플래시 메모리는 복수의 데이터 블럭들을 갖고,상기 데이터 블럭들은 상기 논리 블럭 번호에 따라 N(2이상의 자연수)의 메모리 블럭 그룹으로 상기 그룹 선택 알고리즘에 의해서 분할되는 메모리 시스템의 쓰기 방법.
- 제 13 항에 있어서,상기 그룹 선택 알고리즘에 의해서 상기 논리 블럭 번호가 상기 N으로 나눠 지고, 그 나머지 값에 따라 메모리 블럭 그룹이 선택되는 메모리 시스템의 쓰기 방법.
- 플래시 메모리를 포함하는 메모리 시스템의 쓰기 방법에 있어서:입력된 논리 어드레스에 대응하는 메모리 블럭 그룹을 선택하는 단계;상기 선택된 메모리 블럭 그룹의 맵핑 정보를 상기 플래시 메모리로부터 읽고 상기 읽혀진 맵핑 정보에 따라 상기 논리 어드레스를 물리 어드레스로 변환하는 단계;상기 물리 어드레스에 대응하는 로그 블럭이 존재하지 않을 때, 제 1 소거 카운트 값과 제 2 소거 카운트 값의 차가 웨어 레벨링 조건을 만족하는 지의 여부를 판별하는 단계;상기 판별 결과에 따라 가장 작은 그룹 카운트 값을 갖는 메모리 블럭 그룹의 소거 카운트 정보를 상기 플래시 메모리로부터 읽고 상기 읽혀진 소거 카운트 정보에 따라 웨어 레벨링 동작을 수행하는 단계; 및상기 웨어 레벨링 동작의 결과로서 생성된 프리 블럭에 상기 입력된 논리 어드레스의 데이터를 쓰는 단계를 포함하며,상기 제 1 소거 카운트 값은 가장 작은 그룹 카운트 값을 갖는 메모리 블럭 그룹에 속하는 메모리 블럭들 중 가장 작은 소거 카운트 값이고, 상기 제 2 소거 카운트 값은 프리 블럭들 중 가장 작은 소거 카운트 값인 메모리 시스템의 쓰기 방법.
- 제 15 항에 있어서,상기 메모리 시스템은 쓰기 동작시 상기 선택된 메모리 블럭 그룹의 맵핑 정보 및 상기 가장 작은 그룹 카운트를 갖는 메모리 블럭 그룹의 소거 카운트 정보를 상기 플래시 메모리로부터 읽어와 임시로 저장하는 에스램을 포함하는 메모리 시스템의 쓰기 방법.
- 제 15 항에 있어서,상기 메모리 시스템은 상기 논리 어드레스로부터 논리 블럭 번호를 계산하고, 상기 계산된 논리 블럭 번호로부터 상기 메모리 블럭 그룹이 선택되도록 하는 그룹 선택 알고리즘을 저장하는 롬을 포함하는 메모리 시스템의 쓰기 방법.
- 제 17 항에 있어서,상기 롬은 상기 웨어 레벨링 동작을 수행하기 위한 웨어 레벨링 알고리즘을 포함하는 메모리 시스템의 쓰기 방법.
- 제 15 항에 있어서,상기 물리 어드레스에 대응하는 로그 블럭이 존재하면 상기 로그 블럭에 상기 데이터가 쓰여지는 메모리 시스템의 쓰기 방법.
- 제 15 항에 있어서,상기 물리 어드레스에 대응하는 로그 블럭이 존재하지 않으면 이용가능한 프리 블럭이 존재하는 지 판별되고, 상기 판별결과 이용가능한 프리 블럭이 존재하면 상기 웨어 레벨링 조건이 만족하는지 판별되는 메모리 시스템의 쓰기 방법.
- 제 20 항에 있어서,이용가능한 프리 블럭이 존재하지 않으면 머지 동작이 수행되어 새로운 프리 블럭이 생성되고, 상기 웨어 레벨링 조건이 만족하는 지 판별되는 메모리 시스템의 쓰기 방법.
- 제 15 항에 있어서,상기 메모리 시스템은 상기 논리 어드레스에 따라 선택된 메모리 블럭 그룹의 그룹 카운트 값을 증가시키는 메모리 시스템의 쓰기 방법.
- 제 22 항에 있어서,메모리 블럭 그룹들의 각각의 그룹 카운트 값들은 상기 플래시 메모리에 저장되며, 쓰기 동작시 상기 플래시 메모리로부터 읽어오는 메모리 시스템의 쓰기 방법.
- 제 17 항에 있어서,상기 플래시 메모리는 복수의 데이터 블럭들을 갖고,상기 데이터 블럭들은 상기 논리 블럭 번호에 따라 N(2이상의 자연수)의 메모리 블럭 그룹으로 상기 그룹 선택 알고리즘에 의해서 분할되는 메모리 시스템의 쓰기 방법.
- 제 24 항에 있어서,상기 그룹 선택 알고리즘에 의해서 상기 논리 블럭 번호가 상기 N으로 나눠지고, 그 나머지 값에 따라 메모리 블럭 그룹이 선택되는 메모리 시스템의 쓰기 방법.
- 낸드 플래시 메모리; 및상기 낸드 플래시 메모리를 제어하는 메모리 제어기를 포함하되,상기 메모리 제어기는 청구항 1에 기재된 쓰기 방법으로 구동되는 메모리 시스템.
- 낸드 플래시 메모리; 및상기 낸드 플래시 메모리를 제어하는 메모리 제어기를 포함하되,상기 메모리 제어기는 청구항 15에 기재된 쓰기 방법으로 구동되는 메모리 시스템.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070058417A KR100857761B1 (ko) | 2007-06-14 | 2007-06-14 | 웨어 레벨링을 수행하는 메모리 시스템 및 그것의 쓰기방법 |
US11/771,531 US7797481B2 (en) | 2007-06-14 | 2007-06-29 | Method and apparatus for flash memory wear-leveling using logical groups |
TW97122204A TWI474324B (zh) | 2007-06-14 | 2008-06-13 | 平均讀寫記憶元件的方法及記憶體系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070058417A KR100857761B1 (ko) | 2007-06-14 | 2007-06-14 | 웨어 레벨링을 수행하는 메모리 시스템 및 그것의 쓰기방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100857761B1 true KR100857761B1 (ko) | 2008-09-10 |
Family
ID=40022860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070058417A KR100857761B1 (ko) | 2007-06-14 | 2007-06-14 | 웨어 레벨링을 수행하는 메모리 시스템 및 그것의 쓰기방법 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7797481B2 (ko) |
KR (1) | KR100857761B1 (ko) |
TW (1) | TWI474324B (ko) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100974215B1 (ko) | 2008-10-02 | 2010-08-06 | 주식회사 하이닉스반도체 | 반도체 스토리지 시스템 및 그 제어 방법 |
KR101097438B1 (ko) | 2009-10-29 | 2011-12-23 | 주식회사 하이닉스반도체 | 웨어 레벨링을 유동적으로 제어하는 반도체 스토리지 시스템 및 그 제어 방법 |
KR101180406B1 (ko) | 2011-01-28 | 2012-09-10 | 에스케이하이닉스 주식회사 | 비휘발성 메모리 시스템 및 블럭 관리 방법 |
KR20120121739A (ko) * | 2011-04-27 | 2012-11-06 | 삼성전자주식회사 | 저장 매체에 라이트 된 데이터 머지 방법, 저장 매체에 대한 라이트 동작 제어 방법, 이를 적용한 저장 장치, 컴퓨터 시스템 및 저장 매체 |
KR20190106271A (ko) * | 2018-03-08 | 2019-09-18 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
Families Citing this family (115)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100504814C (zh) * | 2007-01-17 | 2009-06-24 | 忆正存储技术(深圳)有限公司 | 闪存的区块管理方法 |
TWI366828B (en) * | 2007-09-27 | 2012-06-21 | Phison Electronics Corp | Wear leveling method and controller using the same |
TWI373772B (en) * | 2007-10-04 | 2012-10-01 | Phison Electronics Corp | Wear leveling method and controller using the same |
TWI358068B (en) * | 2007-10-19 | 2012-02-11 | Phison Electronics Corp | Writing method for non-volatile memory and control |
US7948802B2 (en) * | 2007-12-04 | 2011-05-24 | Micron Technology, Inc. | Sensing memory cells |
KR101454817B1 (ko) * | 2008-01-11 | 2014-10-30 | 삼성전자주식회사 | 반도체 메모리 장치 및 그것의 마모도 관리 방법 |
US8352671B2 (en) | 2008-02-05 | 2013-01-08 | Spansion Llc | Partial allocate paging mechanism using a controller and a buffer |
US8275945B2 (en) | 2008-02-05 | 2012-09-25 | Spansion Llc | Mitigation of flash memory latency and bandwidth limitations via a write activity log and buffer |
US8332572B2 (en) * | 2008-02-05 | 2012-12-11 | Spansion Llc | Wear leveling mechanism using a DRAM buffer |
JP5010505B2 (ja) * | 2008-03-01 | 2012-08-29 | 株式会社東芝 | メモリシステム |
US20090254729A1 (en) * | 2008-04-07 | 2009-10-08 | Skymedi Corporation | Method of wear leveling for a non-volatile memory |
US8275928B2 (en) * | 2008-05-15 | 2012-09-25 | Silicon Motion, Inc. | Memory module and method for performing wear-leveling of memory module using remapping, link, and spare area tables |
US8843691B2 (en) * | 2008-06-25 | 2014-09-23 | Stec, Inc. | Prioritized erasure of data blocks in a flash storage device |
US8140739B2 (en) * | 2008-08-08 | 2012-03-20 | Imation Corp. | Flash memory based storage devices utilizing magnetoresistive random access memory (MRAM) to store files having logical block addresses stored in a write frequency file buffer table |
JP2010055247A (ja) * | 2008-08-27 | 2010-03-11 | Hitachi Ltd | ストレージシステム及び構成管理方法 |
US8386697B2 (en) * | 2008-09-09 | 2013-02-26 | Phison Electronics Corp. | Memory managing method for non-volatile memory and controller using the same |
US8447913B2 (en) * | 2008-09-16 | 2013-05-21 | International Business Machines Corporation | Method to monitor read/write status of flash memory devices |
TWI364661B (en) * | 2008-09-25 | 2012-05-21 | Silicon Motion Inc | Access methods for a flash memory and memory devices |
US8001318B1 (en) * | 2008-10-28 | 2011-08-16 | Netapp, Inc. | Wear leveling for low-wear areas of low-latency random read memory |
US8327040B2 (en) | 2009-01-26 | 2012-12-04 | Micron Technology, Inc. | Host controller |
KR20100091544A (ko) * | 2009-02-10 | 2010-08-19 | 삼성전자주식회사 | 메모리 시스템 및 그 마모도 관리 방법 |
TWI409819B (zh) * | 2009-03-03 | 2013-09-21 | Silicon Motion Inc | 平均地使用一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器 |
KR101038991B1 (ko) * | 2009-03-10 | 2011-06-03 | 주식회사 하이닉스반도체 | 메모리 영역의 균등한 사용을 위한 반도체 스토리지 시스템및 그 제어 방법 |
KR101586047B1 (ko) * | 2009-03-25 | 2016-01-18 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 방법 |
US8176295B2 (en) | 2009-04-20 | 2012-05-08 | Imation Corp. | Logical-to-physical address translation for a removable data storage device |
US8065469B2 (en) * | 2009-04-20 | 2011-11-22 | Imation Corp. | Static wear leveling |
US8051241B2 (en) | 2009-05-07 | 2011-11-01 | Seagate Technology Llc | Wear leveling technique for storage devices |
US20100318719A1 (en) * | 2009-06-12 | 2010-12-16 | Micron Technology, Inc. | Methods, memory controllers and devices for wear leveling a memory |
TWI405208B (zh) * | 2009-08-06 | 2013-08-11 | Novatek Microelectronics Corp | 快閃記憶體及其存取方法 |
US8463983B2 (en) * | 2009-09-15 | 2013-06-11 | International Business Machines Corporation | Container marker scheme for reducing write amplification in solid state devices |
US8341372B2 (en) * | 2010-04-29 | 2012-12-25 | Freescale Semiconductor, Inc. | Emulated electrically erasable (EEE) memory and method of operation |
TWI457941B (zh) * | 2010-06-25 | 2014-10-21 | Macronix Int Co Ltd | 區塊為基礎快閃記憶體之位元組存取的方法與裝置 |
KR101131560B1 (ko) * | 2010-07-15 | 2012-04-04 | 주식회사 하이닉스반도체 | 웨어 레벨링을 수행하는 비휘발성 메모리 장치 및 그의 제어 방법 |
US8612804B1 (en) * | 2010-09-30 | 2013-12-17 | Western Digital Technologies, Inc. | System and method for improving wear-leveling performance in solid-state memory |
US20120203993A1 (en) * | 2011-02-08 | 2012-08-09 | SMART Storage Systems, Inc. | Memory system with tiered queuing and method of operation thereof |
US8909851B2 (en) | 2011-02-08 | 2014-12-09 | SMART Storage Systems, Inc. | Storage control system with change logging mechanism and method of operation thereof |
US8935466B2 (en) | 2011-03-28 | 2015-01-13 | SMART Storage Systems, Inc. | Data storage system with non-volatile memory and method of operation thereof |
US8862902B2 (en) * | 2011-04-29 | 2014-10-14 | Seagate Technology Llc | Cascaded data encryption dependent on attributes of physical memory |
US9396106B2 (en) * | 2011-05-12 | 2016-07-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Advanced management of a non-volatile memory |
KR20120136197A (ko) * | 2011-06-08 | 2012-12-18 | 삼성전자주식회사 | 비휘발성 메모리에 대한 웨어 레벨링 방법 |
US8898373B1 (en) | 2011-06-29 | 2014-11-25 | Western Digital Technologies, Inc. | System and method for improving wear-leveling performance in solid-state memory |
US20130019057A1 (en) * | 2011-07-15 | 2013-01-17 | Violin Memory, Inc. | Flash disk array and controller |
US8868869B2 (en) | 2011-08-08 | 2014-10-21 | International Business Machines Corporation | Enhanced copy-on-write operation for solid state drives |
US9098399B2 (en) | 2011-08-31 | 2015-08-04 | SMART Storage Systems, Inc. | Electronic system with storage management mechanism and method of operation thereof |
US9063844B2 (en) | 2011-09-02 | 2015-06-23 | SMART Storage Systems, Inc. | Non-volatile memory management system with time measure mechanism and method of operation thereof |
US9021319B2 (en) | 2011-09-02 | 2015-04-28 | SMART Storage Systems, Inc. | Non-volatile memory management system with load leveling and method of operation thereof |
US9021231B2 (en) | 2011-09-02 | 2015-04-28 | SMART Storage Systems, Inc. | Storage control system with write amplification control mechanism and method of operation thereof |
US9417803B2 (en) * | 2011-09-20 | 2016-08-16 | Apple Inc. | Adaptive mapping of logical addresses to memory devices in solid state drives |
US20140189284A1 (en) * | 2011-12-23 | 2014-07-03 | Nevin Hyuseinova | Sub-block based wear leveling |
WO2013095644A1 (en) | 2011-12-23 | 2013-06-27 | Intel Corporation | Page miss handler including wear leveling logic |
US9176862B2 (en) | 2011-12-29 | 2015-11-03 | Sandisk Technologies Inc. | SLC-MLC wear balancing |
US9239781B2 (en) * | 2012-02-07 | 2016-01-19 | SMART Storage Systems, Inc. | Storage control system with erase block mechanism and method of operation thereof |
US9298252B2 (en) | 2012-04-17 | 2016-03-29 | SMART Storage Systems, Inc. | Storage control system with power down mechanism and method of operation thereof |
CN103377143B (zh) * | 2012-04-27 | 2016-12-21 | 群联电子股份有限公司 | 存储器管理方法、存储器控制器与存储器存储装置 |
US9116792B2 (en) * | 2012-05-18 | 2015-08-25 | Silicon Motion, Inc. | Data storage device and method for flash block management |
US8949689B2 (en) | 2012-06-11 | 2015-02-03 | SMART Storage Systems, Inc. | Storage control system with data management mechanism and method of operation thereof |
US9754648B2 (en) | 2012-10-26 | 2017-09-05 | Micron Technology, Inc. | Apparatuses and methods for memory operations having variable latencies |
US9671962B2 (en) | 2012-11-30 | 2017-06-06 | Sandisk Technologies Llc | Storage control system with data management mechanism of parity and method of operation thereof |
US9123445B2 (en) | 2013-01-22 | 2015-09-01 | SMART Storage Systems, Inc. | Storage control system with data management mechanism and method of operation thereof |
US9395924B2 (en) * | 2013-01-22 | 2016-07-19 | Seagate Technology Llc | Management of and region selection for writes to non-volatile memory |
US9292451B2 (en) | 2013-02-19 | 2016-03-22 | Qualcomm Incorporated | Methods and apparatus for intra-set wear-leveling for memories with limited write endurance |
US9329928B2 (en) | 2013-02-20 | 2016-05-03 | Sandisk Enterprise IP LLC. | Bandwidth optimization in a non-volatile memory system |
US9214965B2 (en) | 2013-02-20 | 2015-12-15 | Sandisk Enterprise Ip Llc | Method and system for improving data integrity in non-volatile storage |
US9348743B2 (en) | 2013-02-21 | 2016-05-24 | Qualcomm Incorporated | Inter-set wear-leveling for caches with limited write endurance |
US9183137B2 (en) | 2013-02-27 | 2015-11-10 | SMART Storage Systems, Inc. | Storage control system with data management mechanism and method of operation thereof |
US9470720B2 (en) | 2013-03-08 | 2016-10-18 | Sandisk Technologies Llc | Test system with localized heating and method of manufacture thereof |
US9117533B2 (en) | 2013-03-13 | 2015-08-25 | Sandisk Technologies Inc. | Tracking erase operations to regions of non-volatile memory |
US9043780B2 (en) | 2013-03-27 | 2015-05-26 | SMART Storage Systems, Inc. | Electronic system with system modification control mechanism and method of operation thereof |
US9170941B2 (en) | 2013-04-05 | 2015-10-27 | Sandisk Enterprises IP LLC | Data hardening in a storage system |
US10049037B2 (en) | 2013-04-05 | 2018-08-14 | Sandisk Enterprise Ip Llc | Data management in a storage system |
US9543025B2 (en) | 2013-04-11 | 2017-01-10 | Sandisk Technologies Llc | Storage control system with power-off time estimation mechanism and method of operation thereof |
US10546648B2 (en) | 2013-04-12 | 2020-01-28 | Sandisk Technologies Llc | Storage control system with data management mechanism and method of operation thereof |
GB2514354A (en) * | 2013-05-20 | 2014-11-26 | Ibm | Managing storage devices having a lifetime of a finite number of operations |
US9313874B2 (en) | 2013-06-19 | 2016-04-12 | SMART Storage Systems, Inc. | Electronic system with heat extraction and method of manufacture thereof |
US9898056B2 (en) | 2013-06-19 | 2018-02-20 | Sandisk Technologies Llc | Electronic assembly with thermal channel and method of manufacture thereof |
US9244519B1 (en) | 2013-06-25 | 2016-01-26 | Smart Storage Systems. Inc. | Storage system with data transfer rate adjustment for power throttling |
US9367353B1 (en) | 2013-06-25 | 2016-06-14 | Sandisk Technologies Inc. | Storage control system with power throttling mechanism and method of operation thereof |
US9146850B2 (en) | 2013-08-01 | 2015-09-29 | SMART Storage Systems, Inc. | Data storage system with dynamic read threshold mechanism and method of operation thereof |
US9361222B2 (en) | 2013-08-07 | 2016-06-07 | SMART Storage Systems, Inc. | Electronic system with storage drive life estimation mechanism and method of operation thereof |
US9431113B2 (en) | 2013-08-07 | 2016-08-30 | Sandisk Technologies Llc | Data storage system with dynamic erase block grouping mechanism and method of operation thereof |
US9448946B2 (en) | 2013-08-07 | 2016-09-20 | Sandisk Technologies Llc | Data storage system with stale data mechanism and method of operation thereof |
JP6213040B2 (ja) * | 2013-08-19 | 2017-10-18 | 富士通株式会社 | 半導体記憶装置および半導体記憶装置の制御方法 |
US9336129B2 (en) | 2013-10-02 | 2016-05-10 | Sandisk Technologies Inc. | System and method for bank logical data remapping |
US9152555B2 (en) | 2013-11-15 | 2015-10-06 | Sandisk Enterprise IP LLC. | Data management with modular erase in a data storage system |
TWI548991B (zh) * | 2014-02-14 | 2016-09-11 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
JP5858081B2 (ja) * | 2014-03-27 | 2016-02-10 | Tdk株式会社 | メモリコントローラ、メモリシステム及びメモリ制御方法 |
US10365835B2 (en) * | 2014-05-28 | 2019-07-30 | Micron Technology, Inc. | Apparatuses and methods for performing write count threshold wear leveling operations |
US9626289B2 (en) * | 2014-08-28 | 2017-04-18 | Sandisk Technologies Llc | Metalblock relinking to physical blocks of semiconductor memory in adaptive wear leveling based on health |
US9830087B2 (en) * | 2014-11-13 | 2017-11-28 | Micron Technology, Inc. | Memory wear leveling |
US10055267B2 (en) * | 2015-03-04 | 2018-08-21 | Sandisk Technologies Llc | Block management scheme to handle cluster failures in non-volatile memory |
KR102258126B1 (ko) | 2015-03-19 | 2021-05-28 | 삼성전자주식회사 | 메모리 컨트롤러의 작동 방법, 이를 포함하는 데이터 저장 장치, 및 이를 포함하는 데이터 처리 시스템 |
KR20170075359A (ko) * | 2015-12-23 | 2017-07-03 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 콘트롤러의 동작 방법 |
US10031845B2 (en) * | 2016-04-01 | 2018-07-24 | Intel Corporation | Method and apparatus for processing sequential writes to a block group of physical blocks in a memory device |
US10019198B2 (en) | 2016-04-01 | 2018-07-10 | Intel Corporation | Method and apparatus for processing sequential writes to portions of an addressable unit |
US9842059B2 (en) * | 2016-04-14 | 2017-12-12 | Western Digital Technologies, Inc. | Wear leveling in storage devices |
CN107301015B (zh) * | 2016-04-15 | 2022-05-13 | 恩智浦美国有限公司 | 用于减少存储器设备上的压力的系统和方法 |
US10579471B2 (en) * | 2017-03-02 | 2020-03-03 | Toshiba Memory Corporation | Storage device and error correction method for storage device |
KR20180123385A (ko) * | 2017-05-08 | 2018-11-16 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이를 이용한 웨어-레벨링 방법 |
TWI658471B (zh) * | 2017-05-16 | 2019-05-01 | 華邦電子股份有限公司 | 快閃記憶體儲存裝置及其操作方法 |
KR102340287B1 (ko) * | 2017-09-20 | 2021-12-20 | 삼성전자주식회사 | 멀티캐스트 통신 프로토콜에 따라 호스트와 통신하는 저장 장치 및 호스트의 통신 방법 |
JP7020989B2 (ja) | 2018-04-23 | 2022-02-16 | 株式会社メガチップス | 不揮発性記憶装置、メモリ制御装置、及びメモリ制御方法 |
US10884889B2 (en) | 2018-06-22 | 2021-01-05 | Seagate Technology Llc | Allocating part of a raid stripe to repair a second raid stripe |
US11537307B2 (en) * | 2018-08-23 | 2022-12-27 | Micron Technology, Inc. | Hybrid wear leveling for in-place data replacement media |
US10761739B2 (en) | 2018-08-23 | 2020-09-01 | Micron Technology, Inc. | Multi-level wear leveling for non-volatile memory |
KR102721255B1 (ko) | 2019-04-05 | 2024-10-24 | 삼성전자주식회사 | 데이터를 스왑하기 위한 메모리 장치 및 메모리 장치의 동작 방법 |
KR20210039872A (ko) | 2019-10-02 | 2021-04-12 | 삼성전자주식회사 | 프리 블록의 할당을 관리하는 호스트 시스템, 이를 포함하는 데이터 처리 시스템 및 호스트 시스템의 동작방법 |
US11442631B2 (en) * | 2019-12-26 | 2022-09-13 | Micron Technology, Inc. | Memory operations with consideration for wear leveling |
CN111625187B (zh) * | 2020-05-15 | 2023-09-29 | 合肥康芯威存储技术有限公司 | 一种存储器及其控制方法与存储系统 |
US11328778B2 (en) * | 2020-07-09 | 2022-05-10 | Stmicroelectronics S.R.L. | Methods and devices for wear leveling |
TWI775143B (zh) | 2020-09-09 | 2022-08-21 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 |
KR20230048747A (ko) * | 2021-10-05 | 2023-04-12 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
CN114077523A (zh) * | 2021-11-12 | 2022-02-22 | 山东云海国创云计算装备产业创新中心有限公司 | 一种硬盘寿命分析方法、系统、存储介质及设备 |
CN114281242B (zh) * | 2021-11-15 | 2024-05-10 | 北京智芯微电子科技有限公司 | 存储器负载均衡的方法、装置和设备 |
JP2024039302A (ja) * | 2022-09-09 | 2024-03-22 | キオクシア株式会社 | メモリシステムおよびブロック管理方法 |
KR20250029014A (ko) * | 2023-08-18 | 2025-03-04 | 양쯔 메모리 테크놀로지스 씨오., 엘티디. | 메모리 시스템 및 그것을 동작시키는 방법, 및 컴퓨터 판독 가능 저장 매체 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990074703A (ko) * | 1998-03-13 | 1999-10-05 | 김영환 | 플래쉬 메모리의 웨어 레벨링 시스템 및 웨어 레벨링 방법 |
KR19990075161A (ko) * | 1998-03-18 | 1999-10-15 | 김영환 | 플래시 메모리 어레이 액세스 방법 및 장치 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0618535B1 (en) * | 1989-04-13 | 1999-08-25 | SanDisk Corporation | EEPROM card with defective cell substitution and cache memory |
US6230233B1 (en) | 1991-09-13 | 2001-05-08 | Sandisk Corporation | Wear leveling techniques for flash EEPROM systems |
KR100577380B1 (ko) | 1999-09-29 | 2006-05-09 | 삼성전자주식회사 | 플래시 메모리와 그 제어 방법 |
KR100644602B1 (ko) | 2000-10-11 | 2006-11-10 | 삼성전자주식회사 | 플래시메모리를 위한 재사상 제어방법 및 그에 따른플래시 메모리의 구조 |
KR100389867B1 (ko) | 2001-06-04 | 2003-07-04 | 삼성전자주식회사 | 플래시 메모리 관리방법 |
US6973531B1 (en) * | 2002-10-28 | 2005-12-06 | Sandisk Corporation | Tracking the most frequently erased blocks in non-volatile memory systems |
US7035967B2 (en) * | 2002-10-28 | 2006-04-25 | Sandisk Corporation | Maintaining an average erase count in a non-volatile storage system |
US6985992B1 (en) | 2002-10-28 | 2006-01-10 | Sandisk Corporation | Wear-leveling in non-volatile storage systems |
JP4518951B2 (ja) * | 2002-10-28 | 2010-08-04 | サンディスク コーポレイション | 不揮発性記憶システムにおける自動損耗均等化 |
US8041878B2 (en) * | 2003-03-19 | 2011-10-18 | Samsung Electronics Co., Ltd. | Flash file system |
US7032087B1 (en) * | 2003-10-28 | 2006-04-18 | Sandisk Corporation | Erase count differential table within a non-volatile memory system |
-
2007
- 2007-06-14 KR KR1020070058417A patent/KR100857761B1/ko active IP Right Grant
- 2007-06-29 US US11/771,531 patent/US7797481B2/en active Active
-
2008
- 2008-06-13 TW TW97122204A patent/TWI474324B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990074703A (ko) * | 1998-03-13 | 1999-10-05 | 김영환 | 플래쉬 메모리의 웨어 레벨링 시스템 및 웨어 레벨링 방법 |
KR19990075161A (ko) * | 1998-03-18 | 1999-10-15 | 김영환 | 플래시 메모리 어레이 액세스 방법 및 장치 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100974215B1 (ko) | 2008-10-02 | 2010-08-06 | 주식회사 하이닉스반도체 | 반도체 스토리지 시스템 및 그 제어 방법 |
KR101097438B1 (ko) | 2009-10-29 | 2011-12-23 | 주식회사 하이닉스반도체 | 웨어 레벨링을 유동적으로 제어하는 반도체 스토리지 시스템 및 그 제어 방법 |
US8335887B2 (en) | 2009-10-29 | 2012-12-18 | Hynix Semiconductor Inc. | Solid state storage systems and methods for flexibly controlling wear leveling |
KR101180406B1 (ko) | 2011-01-28 | 2012-09-10 | 에스케이하이닉스 주식회사 | 비휘발성 메모리 시스템 및 블럭 관리 방법 |
US8996786B2 (en) | 2011-01-28 | 2015-03-31 | SK Hynix Inc. | Nonvolatile memory system and block management method |
KR20120121739A (ko) * | 2011-04-27 | 2012-11-06 | 삼성전자주식회사 | 저장 매체에 라이트 된 데이터 머지 방법, 저장 매체에 대한 라이트 동작 제어 방법, 이를 적용한 저장 장치, 컴퓨터 시스템 및 저장 매체 |
KR101954995B1 (ko) * | 2011-04-27 | 2019-05-31 | 시게이트 테크놀로지 엘엘씨 | 저장 매체에 라이트 된 데이터 머지 방법, 저장 매체에 대한 라이트 동작 제어 방법, 이를 적용한 저장 장치, 컴퓨터 시스템 및 저장 매체 |
KR20190106271A (ko) * | 2018-03-08 | 2019-09-18 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
Also Published As
Publication number | Publication date |
---|---|
TWI474324B (zh) | 2015-02-21 |
US7797481B2 (en) | 2010-09-14 |
TW200903500A (en) | 2009-01-16 |
US20080313505A1 (en) | 2008-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100857761B1 (ko) | 웨어 레벨링을 수행하는 메모리 시스템 및 그것의 쓰기방법 | |
US10545863B2 (en) | Memory system and method for controlling nonvolatile memory | |
US8631192B2 (en) | Memory system and block merge method | |
US11436136B2 (en) | Memory system including non-volatile buffer and control method thereof | |
KR100885181B1 (ko) | 그룹 맵핑 동작을 수행하는 메모리 시스템 및 그것의어드레스 맵핑 방법 | |
KR100526190B1 (ko) | 플래시 메모리의 재사상 방법 | |
US8417872B2 (en) | Write and merge methods in memory card systems for reducing the number of page copies | |
US7890550B2 (en) | Flash memory system and garbage collection method thereof | |
US7788441B2 (en) | Method for initializing and operating flash memory file system and computer-readable medium storing related program | |
JP5674999B2 (ja) | Slc/mlc混成メモリのブロック管理構成 | |
US20120254574A1 (en) | Multi-layer memory system | |
US20100082917A1 (en) | Solid state storage system and method of controlling solid state storage system using a multi-plane method and an interleaving method | |
US9892034B2 (en) | Semiconductor device and operating method thereof | |
KR20090131146A (ko) | 불휘발성 메모리 시스템 및 그것의 데이터 관리 방법 | |
US11269534B2 (en) | Data storage device and non-volatile memory control method | |
KR101119866B1 (ko) | 파티션별로 플랙시블한 크기의 로그블록을 포함하는 플래시 메모리 및 이를 이용한 메모리 시스템 | |
KR20110070656A (ko) | 플래시 메모리의 데이터 처리 방법 및 장치 | |
JP4434171B2 (ja) | メモリコントローラ及びフラッシュメモリシステム | |
TWI808011B (zh) | 資料處理方法及對應之資料儲存裝置 | |
US20240103732A1 (en) | Data processing method for improving continuity of data corresponding to continuous logical addresses as well as avoiding excessively consuming service life of memory blocks and the associated data storage device | |
US12067286B2 (en) | Data processing method for efficiently processing data stored in the memory device by splitting data flow and the associated data storage device | |
JP6260395B2 (ja) | メモリコントローラ、メモリシステム及びメモリ制御方法 | |
CN111949560B (zh) | 一种数据写入方法、装置及存储设备 | |
US12175086B2 (en) | Data processing method for efficiently processing data stored in the memory device by splitting data flow and the associated data storage device | |
US20240069775A1 (en) | Compaction of a Logical-to-Physical Table for Zoned Namespace Nonvolatile Memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20070614 |
|
PA0201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20080229 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: 20080828 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20080903 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20080904 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20110830 Start annual number: 4 End annual number: 4 |
|
FPAY | Annual fee payment |
Payment date: 20120831 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20120831 Start annual number: 5 End annual number: 5 |
|
FPAY | Annual fee payment |
Payment date: 20130902 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20130902 Start annual number: 6 End annual number: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140901 Year of fee payment: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20140901 Start annual number: 7 End annual number: 7 |
|
FPAY | Annual fee payment |
Payment date: 20150831 Year of fee payment: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20150831 Start annual number: 8 End annual number: 8 |
|
FPAY | Annual fee payment |
Payment date: 20180831 Year of fee payment: 11 |
|
PR1001 | Payment of annual fee |
Payment date: 20180831 Start annual number: 11 End annual number: 11 |
|
FPAY | Annual fee payment |
Payment date: 20190830 Year of fee payment: 12 |
|
PR1001 | Payment of annual fee |
Payment date: 20190830 Start annual number: 12 End annual number: 12 |
|
PR1001 | Payment of annual fee |
Payment date: 20200831 Start annual number: 13 End annual number: 13 |
|
PR1001 | Payment of annual fee |
Payment date: 20210825 Start annual number: 14 End annual number: 14 |
|
PR1001 | Payment of annual fee |
Payment date: 20220824 Start annual number: 15 End annual number: 15 |
|
PR1001 | Payment of annual fee |
Payment date: 20240823 Start annual number: 17 End annual number: 17 |