KR20090077538A - 반도체 메모리 장치 및 그것의 마모도 관리 방법 - Google Patents
반도체 메모리 장치 및 그것의 마모도 관리 방법 Download PDFInfo
- Publication number
- KR20090077538A KR20090077538A KR1020080003547A KR20080003547A KR20090077538A KR 20090077538 A KR20090077538 A KR 20090077538A KR 1020080003547 A KR1020080003547 A KR 1020080003547A KR 20080003547 A KR20080003547 A KR 20080003547A KR 20090077538 A KR20090077538 A KR 20090077538A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- wear
- erase
- wear management
- memory controller
- 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; 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/344—Arrangements for verifying correct erasure or for detecting overerased cells
-
- 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)
Abstract
Description
Memory block E/C | ref_cnt |
≤500 | 25 |
≤750 | 20 |
≤875 | 15 |
≤930 | 10 |
>900 | 5 |
Claims (16)
- 복수의 메모리 블록을 가지며, 상기 복수의 메모리 블록 중에서 적어도 하나에는 메모리 블록 각각의 소거 횟수들이 저장되는 불휘발성 메모리; 및상기 불휘발성 메모리의 마모도를 관리하기 위한 메모리 컨트롤러를 포함하되,상기 메모리 컨트롤러는 상기 소거 횟수들을 참조하여 상기 마모도 관리의 주기를 조절하는 반도체 메모리 장치.
- 제 1 항에 있어서,상기 메모리 컨트롤러는 상기 소거 횟수들의 증가에 따라 상기 마모도 관리의 주기를 감소시키는 반도체 메모리 장치.
- 제 1 항에 있어서,상기 메모리 컨트롤러는 상기 메모리 블록 사이의 상기 소거 횟수들을 평준화시키는 방법으로 상기 마모도 관리를 수행하는 반도체 메모리 장치.
- 제 3 항에 있어서,상기 메모리 컨트롤러는 가장 작은 소거 횟수를 가지는 상기 메모리 블록에 저장된 데이터와 가장 큰 소거 횟수를 가지는 상기 메모리 블록에 저장된 데이터를 교환하는 반도체 메모리 장치.
- 제 1 항에 있어서,상기 메모리 컨트롤러는 상기 소거 횟수들을 참조하여 기준 횟수를 결정하는 반도체 메모리 장치.
- 제 5 항에 있어서,상기 메모리 컨트롤러는 상기 소거 횟수들의 증가에 따라 상기 기준 횟수를 감소시키는 반도체 메모리 장치.
- 제 5 항에 있어서,상기 메모리 컨트롤러는 상기 기준 횟수와 병합 동작 횟수를 비교하고, 상기 비교 결과에 따라 마모도 관리를 수행하는 반도체 메모리 장치.
- 제 7 항에 있어서,상기 메모리 컨트롤러는 상기 병합 동작 횟수가 상기 기준 횟수에 도달된 경우 마모도 관리를 수행하는 반도체 메모리 장치.
- 제 7 항에 있어서,상기 메모리 컨트롤러는 병합 동작이 수행될 때마다 상기 병합 동작 횟수를 증가시키는 반도체 메모리 장치.
- 제 1 항에 있어서,상기 불휘발성 메모리는상기 복수의 메모리 블록을 포함하는 메모리 셀 어레이;복수의 비트 라인을 통해 상기 메모리 셀 어레이에 연결되고, 상기 비트 라인을 통해 상기 메모리 셀 어레이에 저장된 데이터를 감지하는 데이터 입출력 회로;복수의 워드 라인을 통해 상기 메모리 셀 어레이에 연결되고, 외부로부터의 어드레스에 응답하여 상기 복수의 메모리 블록 중 어느 하나를 선택하는 행 디코더; 및상기 메모리 컨트롤러로부터의 명령에 응답하여 상기 데이터 입출력 회로 및 상기 행 디코더 회로를 제어하는 제어 로직을 포함하는 반도체 메모리 장치.
- 제 10 항에 있어서,상기 제어 로직은 상기 메모리 컨트롤러로부터의 명령에 응답하여 상기 메모리 블록 사이의 상기 소거 횟수들을 평준화시키는 반도체 메모리 장치.
- 복수의 메모리 블록을 포함하는 반도체 메모리 장치의 마모도 관리 방법에 있어서;상기 복수의 메모리 블록 각각의 소거 횟수들을 검출하는 단계;상기 소거 횟수들을 참조하여 기준 횟수를 결정하는 단계;상기 기준 횟수와 병합 동작 횟수를 비교하는 단계; 및상기 비교 결과에 따라 마모도 관리를 수행하는 단계를 포함하는 방법.
- 제 12 항에 있어서,상기 마모도 관리의 주기는 상기 소거 횟수들의 증가에 따라 감소되는 방법.
- 제 12 항에 있어서,상기 메모리 블록들 사이의 병합 동작이 수행될 때마다 병합 동작 횟수를 증가시키는 단계를 더 포함하는 방법.
- 제 14 항에 있어서,상기 병합 동작 횟수가 기준 횟수에 도달된 경우 마모도 관리를 수행하되, 상기 기준 횟수는 상기 소거 횟수들의 증가에 따라 감소되는 방법.
- 제 12 항에 있어서,상기 소거 횟수들을 참조하여 기준 횟수를 결정하는 단계는상기 소거 횟수가 기준 값에 도달하였는지 여부를 검출하는 단계; 및상기 검출 결과에 따라 기준 횟수를 결정하는 단계를 포함하는 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080003547A KR101454817B1 (ko) | 2008-01-11 | 2008-01-11 | 반도체 메모리 장치 및 그것의 마모도 관리 방법 |
US12/351,076 US8209468B2 (en) | 2008-01-11 | 2009-01-09 | Semiconductor memory device and wear leveling method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080003547A KR101454817B1 (ko) | 2008-01-11 | 2008-01-11 | 반도체 메모리 장치 및 그것의 마모도 관리 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090077538A true KR20090077538A (ko) | 2009-07-15 |
KR101454817B1 KR101454817B1 (ko) | 2014-10-30 |
Family
ID=40851684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080003547A Expired - Fee Related KR101454817B1 (ko) | 2008-01-11 | 2008-01-11 | 반도체 메모리 장치 및 그것의 마모도 관리 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8209468B2 (ko) |
KR (1) | KR101454817B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013151919A1 (en) * | 2012-04-02 | 2013-10-10 | Spansion Llc | Adaptively progrmaming or erasing flash memory blocks |
US9372790B2 (en) | 2012-07-31 | 2016-06-21 | Samsung Electronics Co., Ltd. | Nonvolatile memory device having wear-leveling control and method of operating the same |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8122179B2 (en) * | 2007-12-14 | 2012-02-21 | Silicon Motion, Inc. | Memory apparatus and method of evenly using the blocks of a flash memory |
KR101437123B1 (ko) * | 2008-04-01 | 2014-09-02 | 삼성전자 주식회사 | 메모리 시스템 및 그것의 마모도 관리 방법 |
US8250293B2 (en) * | 2009-01-19 | 2012-08-21 | Qimonda Ag | Data exchange in resistance changing memory for improved endurance |
KR101586047B1 (ko) | 2009-03-25 | 2016-01-18 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 방법 |
US8713066B1 (en) | 2010-03-29 | 2014-04-29 | Western Digital Technologies, Inc. | Managing wear leveling and garbage collection operations in a solid-state memory using linked lists |
US8612804B1 (en) | 2010-09-30 | 2013-12-17 | Western Digital Technologies, Inc. | System and method for improving wear-leveling performance in solid-state memory |
US8898373B1 (en) | 2011-06-29 | 2014-11-25 | Western Digital Technologies, Inc. | System and method for improving wear-leveling performance in solid-state memory |
KR20130049330A (ko) * | 2011-11-04 | 2013-05-14 | 삼성전자주식회사 | 메모리 시스템 및 그것의 메모리 관리 기법 |
TWI454916B (zh) * | 2012-05-08 | 2014-10-01 | Phison Electronics Corp | 儲存單元管理方法、記憶體控制器與記憶體儲存裝置 |
US9116792B2 (en) * | 2012-05-18 | 2015-08-25 | Silicon Motion, Inc. | Data storage device and method for flash block management |
US20140181368A1 (en) * | 2012-12-26 | 2014-06-26 | Unisys Corporation | Equalizing wear on storage devices with write counters |
US10417123B1 (en) | 2013-05-16 | 2019-09-17 | Western Digital Technologies, Inc. | Systems and methods for improving garbage collection and wear leveling performance in data storage systems |
US9830087B2 (en) * | 2014-11-13 | 2017-11-28 | Micron Technology, Inc. | Memory wear leveling |
KR102333361B1 (ko) | 2015-11-23 | 2021-12-06 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR20170075835A (ko) | 2015-12-23 | 2017-07-04 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US9971685B2 (en) | 2016-04-01 | 2018-05-15 | Intel Corporation | Wear leveling based on a swapping operation between sets of physical block addresses of a non-volatile memory |
US20180285562A1 (en) * | 2017-03-31 | 2018-10-04 | Intel Corporation | Computing system with protection against memory wear out attacks |
US10922221B2 (en) | 2018-03-28 | 2021-02-16 | Micron Technology, Inc. | Memory management |
KR102741233B1 (ko) | 2019-10-11 | 2024-12-12 | 삼성전자주식회사 | 불휘발성 메모리 장치를 제어하도록 구성된 스토리지 컨트롤러의 동작 방법 |
US12099410B2 (en) * | 2022-12-01 | 2024-09-24 | Solid State Storage Technology Corporation | Statistics table of solid state storage device and using method thereof |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100297986B1 (ko) | 1998-03-13 | 2001-10-25 | 김영환 | 플래쉬 메모리 셀 어레이의 웨어 레벨링 시스템 및 웨어 레벨링 방법 |
US7610438B2 (en) * | 2000-01-06 | 2009-10-27 | Super Talent Electronics, Inc. | Flash-memory card for caching a hard disk drive with data-area toggling of pointers stored in a RAM lookup table |
US20030163633A1 (en) | 2002-02-27 | 2003-08-28 | Aasheim Jered Donald | System and method for achieving uniform wear levels in a flash memory device |
US7012835B2 (en) * | 2003-10-03 | 2006-03-14 | Sandisk Corporation | Flash memory data correction and scrub techniques |
US7089349B2 (en) * | 2003-10-28 | 2006-08-08 | Sandisk Corporation | Internal maintenance schedule request for non-volatile memory system |
US20060004951A1 (en) * | 2004-06-30 | 2006-01-05 | Rudelic John C | Method and apparatus to alter code in a memory |
US7441067B2 (en) * | 2004-11-15 | 2008-10-21 | Sandisk Corporation | Cyclic flash memory wear leveling |
US20060161724A1 (en) * | 2005-01-20 | 2006-07-20 | Bennett Alan D | Scheduling of housekeeping operations in flash memory systems |
JP4688584B2 (ja) | 2005-06-21 | 2011-05-25 | 株式会社日立製作所 | ストレージ装置 |
KR100624973B1 (ko) | 2005-06-29 | 2006-09-15 | 박상원 | 플래시 메모리의 효율적인 소거 횟수 평준화방법(k-평준화) |
US20070208904A1 (en) * | 2006-03-03 | 2007-09-06 | Wu-Han Hsieh | Wear leveling method and apparatus for nonvolatile memory |
US7869277B1 (en) * | 2007-04-25 | 2011-01-11 | Apple Inc. | Managing data writing to memories |
KR100857761B1 (ko) * | 2007-06-14 | 2008-09-10 | 삼성전자주식회사 | 웨어 레벨링을 수행하는 메모리 시스템 및 그것의 쓰기방법 |
US8122179B2 (en) * | 2007-12-14 | 2012-02-21 | Silicon Motion, Inc. | Memory apparatus and method of evenly using the blocks of a flash memory |
-
2008
- 2008-01-11 KR KR1020080003547A patent/KR101454817B1/ko not_active Expired - Fee Related
-
2009
- 2009-01-09 US US12/351,076 patent/US8209468B2/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013151919A1 (en) * | 2012-04-02 | 2013-10-10 | Spansion Llc | Adaptively progrmaming or erasing flash memory blocks |
US8724388B2 (en) | 2012-04-02 | 2014-05-13 | Spansion Llc | Adaptively programming or erasing flash memory blocks |
US9372790B2 (en) | 2012-07-31 | 2016-06-21 | Samsung Electronics Co., Ltd. | Nonvolatile memory device having wear-leveling control and method of operating the same |
Also Published As
Publication number | Publication date |
---|---|
KR101454817B1 (ko) | 2014-10-30 |
US20090182936A1 (en) | 2009-07-16 |
US8209468B2 (en) | 2012-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101454817B1 (ko) | 반도체 메모리 장치 및 그것의 마모도 관리 방법 | |
US8103820B2 (en) | Wear leveling method and controller using the same | |
US8046526B2 (en) | Wear leveling method and controller using the same | |
US8200904B2 (en) | System and method for clearing data from a cache | |
US7797481B2 (en) | Method and apparatus for flash memory wear-leveling using logical groups | |
KR101464338B1 (ko) | 불휘발성 메모리 장치를 이용한 데이터 저장장치, 메모리시스템, 그리고 컴퓨터 시스템 | |
CN103425595B (zh) | 数据储存装置和闪存的区块管理方法 | |
US8108589B2 (en) | Wear leveling method and controller using the same | |
JP5031849B2 (ja) | フラッシュメモリのブロック管理方法 | |
US8250286B2 (en) | Block management method, and storage system and controller using the same | |
US7649794B2 (en) | Wear leveling method and controller using the same | |
US8335887B2 (en) | Solid state storage systems and methods for flexibly controlling wear leveling | |
US20110145485A1 (en) | Method for managing address mapping table and a memory device using the method | |
JP2011221996A (ja) | 不揮発性メモリコントローラ及び不揮発性記憶装置 | |
US8037236B2 (en) | Flash memory writing method and storage system and controller using the same | |
CN104794063A (zh) | 一种具备电阻式存储器的固态储存装置的控制方法 | |
JP2010182268A (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP5612508B2 (ja) | 不揮発性メモリコントローラ及び不揮発性記憶装置 | |
JP5494086B2 (ja) | 不揮発性記憶装置および不揮発性メモリコントローラ | |
JP2013068993A (ja) | メモリコントローラ | |
JP4558054B2 (ja) | メモリシステム | |
KR20100055201A (ko) | 플래시 메모리장치, 및 데이터 기록방법 | |
TWI453747B (zh) | 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器 | |
JP7693482B2 (ja) | メモリシステム | |
US12254183B2 (en) | Storage device including non-volatile memory device and operating method of storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20080111 |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20130107 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20080111 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: 20131226 Patent event code: PE09021S01D |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20140430 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: 20140707 |
|
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20141020 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20141021 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20171010 Start annual number: 4 End annual number: 4 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |