KR100608602B1 - 플래시 메모리, 이를 위한 사상 제어 장치 및 방법 - Google Patents
플래시 메모리, 이를 위한 사상 제어 장치 및 방법 Download PDFInfo
- Publication number
- KR100608602B1 KR100608602B1 KR1020030089817A KR20030089817A KR100608602B1 KR 100608602 B1 KR100608602 B1 KR 100608602B1 KR 1020030089817 A KR1020030089817 A KR 1020030089817A KR 20030089817 A KR20030089817 A KR 20030089817A KR 100608602 B1 KR100608602 B1 KR 100608602B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- state
- data
- sector
- flash memory
- 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
-
- 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
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)
- Memory System (AREA)
Abstract
Description
Claims (27)
- 소정의 섹터로 이루어지는 블록 단위로 영역이 구분되고; 상기 블록의 상태를 나타내고 논리 연산이 수행될 섹터를 결정하기 위해 사용되는 블록 상태 정보를 포함하며;상기 블록 상태는, 상기 블록에 데이터가 기록되어 있지 않는 제 1 상태, 상기 제 1 상태에서 소정의 데이터를 섹터 오프셋을 일치시켜 기록한 제 2 상태, 상기 제 1 상태에서 소정의 데이터를 섹터 오프셋을 일치시키지 않고 기록한 제 3 상태, 및 상기 제 3 상태에서 유효한 데이터가 새로운 블록으로 옮겨져 이전 블록에 기록된 데이터가 유효하지 않는 제 5 상태를 포함하는 것을 특징으로 하는 플래시 메모리.
- 삭제
- 제 1항에 있어서,상기 블록 상태는, 상기 블록 전체에 상기 제 2 상태의 데이터가 기록된 제 4 상태를 더 포함하고,상기 제 5 상태는, 상기 제 4 상태에서 유효한 데이터가 새로운 블록으로 옮겨져 이전 블록에 기록된 데이터가 유효하지 않는 상태인 것을 특징으로 하는 플래시 메모리.
- 제 3항에 있어서,상기 상태 전이 알고리즘은상기 제 4 상태에서 새로 요구되는 기록 연산을 수행하기 위해 상기 제 1 상태의 블록을 더 할당하는 교체 합병 연산을 수행하는 것을 특징으로 하는 플래시 메모리.
- 제 1항에 있어서,상기 상태 전이 알고리즘은상기 제 3 상태에서 해당 블록의 모든 섹터가 사용중이면 새로 요구되는 기록 연산을 수행하기 위해 상기 제 1 상태의 블록을 더 할당하고, 기존 블록에 기록된 데이터 가운데 유효한 데이터만을 검출하여 상기 할당된 블록에 기록하는 스마트 합병 연산을 수행하는 것을 특징으로 하는 플래시 메모리.
- 제 5항에 있어서,상기 스마트 합병 연산은상기 유효한 데이터가 기록되면 상기 할당된 블록의 블록 상태 정보를 상기 제 1 상태에서 상기 제 2 상태로 전이하고, 기존 블록의 블록 상태 정보를 상기 제 3 상태에서 상기 제 5 상태로 전이시키는 것을 특징으로 하는 플래시 메모리.
- 제 1항 또는 제 3항에 있어서,상기 제 5 상태는 삭제 연산을 통해 상기 제 1 상태로 전이되는 것을 특징으로 하는 플래시 메모리.
- 제 1항에 있어서,상기 블록 상태 정보는상기 플래시 메모리에 대한 정보를 기록하는 메타헤더 블록에 기록되거나 상기 각 블록에 기록되는 것을 특징으로 하는 플래시 메모리.
- 소정의 섹터로 이루어지는 블록을 단위로 영역이 구분되며, 상기 블록의 상태를 나타내는 블록 상태 정보를 포함하는 플래시 메모리; 및상기 플래시 메모리에 대한 소정의 논리 연산이 요구되면 상기 블록 상태 정보를 통해 상기 논리 연산이 수행될 섹터를 결정하고 소정의 상태 전이 알고리즘을에 따라 상기 블록 상태 정보를 갱신하는 프로세서를 포함하며;상기 블록 상태는, 상기 블록에 데이터가 기록되어 있지 않는 제 1 상태, 상기 제 1 상태에서 소정의 데이터를 섹터 오프셋을 일치시켜 기록한 제 2 상태, 상기 제 1 상태에서 소정의 데이터를 섹터 오프셋을 일치시키지 않고 기록한 제 3 상태, 및 상기 제 3 상태에서 유효한 데이터가 새로운 블록으로 옮겨져 이전 블록에 기록된 데이터가 유효하지 않는 제 5 상태를 포함하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 장치.
- 제 9 항에 있어서,상기 블록 상태 정보는상기 플래시 메모리에 대한 정보를 기록하는 메타헤더 블록에 기록되거나, 상기 각각의 블록에 기록되는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 장치.
- 제 9항에 있어서,상기 프로세서는상기 논리 연산에 따라 상기 결정되는 섹터에 소정의 데이터를 기록하거나 상기 섹터로부터 데이터를 판독하며, 상기 갱신되는 블록 상태 정보에 따라 삭제 연산을 통해 유효하지 않은 블록의 데이터를 삭제하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 장치.
- 제 9항에 있어서,상기 블록 상태는, 상기 블록 전체에 상기 제 2상태의 데이터가 기록된 제 4 상태를 더 포함하고,상기 제 5 상태는, 상기 제 4 상태에서 유효한 데이터가 새로운 블록으로 옮겨져 이전 블록에 기록된 데이터가 유효하지 않는 상태인 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 장치.
- 제 12항에 있어서,상기 상태 전이 알고리즘은상기 제 4 상태에서 새로 요구되는 기록 연산을 수행하기 위해 상기 제 1 상태의 블록을 더 할당하는 교체 합병 연산을 수행하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 장치.
- 제 9항에 있어서,상기 상태 전이 알고리즘은상기 제 3 상태에서 해당 블록의 모든 섹터가 사용중이면 새로 요구되는 기록 연산을 수행하기 위해 상기 제 1 상태의 블록을 더 할당하고, 기존 블록에 기록된 데이터 가운데 유효한 데이터만을 검출하여 상기 할당된 블록에 기록하는 스마트 합병 연산을 수행하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 장치.
- 제 14항에 있어서,상기 스마트 합병 연산은상기 유효한 데이터가 기록되면 상기 할당된 블록의 블록 상태 정보를 상기 제 1 상태에서 상기 제 2 상태로 전이하고, 기존 블록의 블록 상태 정보를 상기 제 3 상태에서 상기 제 5 상태로 전이시키는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 장치.
- 제 9항 또는 제 12항에 있어서,상기 제 5 상태는 삭제 연산을 통해 상기 제 1 상태로 전이되는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 장치.
- 플래시 메모리의 특정 논리 섹터에 대해 소정의 논리 연산이 요구되면 매핑 테이블을 참조하여 상기 논리 섹터에 해당되는 물리 블록을 검색하는 단계;상기 물리 블록의 블록 상태 정보를 통해 상기 논리 연산이 수행될 섹터를 결정하는 단계;상기 논리 연산에 따라 변경되는 상기 물리 블록의 블록 상태 정보를 소정의 상태 전이 알고리즘을 통해 결정하는 단계; 및상기 결정된 블록 상태 정보에 따라 상기 물리 블록의 블록 상태 정보를 갱신하는 단계를 포함하며;상기 블록 상태는, 상기 블록에 데이터가 기록되어 있지 않는 제 1 상태, 상기 제 1 상태에서 소정의 데이터를 섹터 오프셋을 일치시켜 기록한 제 2 상태, 상기 제 1 상태에서 소정의 데이터를 섹터 오프셋을 일치시키지 않고 기록한 제 3 상태, 및 상기 제 3 상태에서 유효한 데이터가 새로운 블록으로 옮겨져 이전 블록에 기록된 데이터가 유효하지 않는 제 5 상태를 포함하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
- 제 17항에 있어서,상기 논리 섹터에 해당되는 물리 블록을 검색하는 단계는상기 논리 섹터를 통해 논리 블록을 산출하는 단계; 및상기 산출된 논리 블록에 해당되는 물리 블록을 상기 매핑 테이블을 통해 검색하는 단계를 포함하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
- 제 17항에 있어서,상기 논리 연산이 수행될 섹터를 결정하는 단계는상기 물리 블록의 블록 상태 정보에 따라 섹터 오프셋이 일치되는 섹터를 선택하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
- 제 17항에 있어서,상기 논리 연산이 수행될 섹터를 결정하는 단계는상기 물리 블록의 블록 상태 정보에 따라 섹터 오프셋이 일치되지 않는 섹터를 선택하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
- 삭제
- 제 17항에 있어서,상기 블록 상태는, 상기 블록 전체에 상기 제 2 상태의 데이터가 기록된 제 4 상태를 더 포함하고,상기 제 5 상태는, 상기 제 4 상태에서 유효한 데이터가 새로운 블록으로 옮겨져 이전 블록에 기록된 데이터가 유효하지 않는 상태인 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
- 제 22항에 있어서,상기 상태 전이 알고리즘은상기 제 4 상태에서 새로 요구되는 기록 연산을 수행하기 위해 상기 제 1 상태의 블록을 더 할당하는 교체 합병 연산을 수행하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
- 제 17항에 있어서,상기 상태 전이 알고리즘은상기 제 3 상태에서 해당 블록의 모든 섹터가 사용중이면 새로 요구되는 기록 연산을 수행하기 위해 상기 제 1 상태의 블록을 더 할당하고, 기존 블록에 기록된 데이터 가운데 유효한 데이터만을 검출하여 상기 할당된 블록에 기록하는 스마트 합병 연산을 수행하는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
- 제 24항에 있어서,상기 스마트 합병 연산은상기 유효한 데이터가 기록되면 상기 할당된 블록의 블록 상태 정보를 상기 제 1 상태에서 상기 제 2 상태로 전이하고, 기존 블록의 블록 상태 정보를 상기 제 3 상태에서 상기 제 5 상태로 전이시키는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
- 제 17항 또는 제 22항에 있어서,상기 제 5 상태는 삭제 연산을 통해 상기 제 1 상태로 전이되는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
- 제 17항에 있어서,상기 블록 상태 정보는상기 플래시 메모리에 대한 정보를 기록하는 메타헤더 블록에 기록되거나 상기 각 블록에 기록되는 것을 특징으로 하는 플래시 메모리를 위한 사상 제어 방법.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030089817A KR100608602B1 (ko) | 2003-12-10 | 2003-12-10 | 플래시 메모리, 이를 위한 사상 제어 장치 및 방법 |
JP2004106982A JP3827682B2 (ja) | 2003-12-10 | 2004-03-31 | フラッシュメモリ、そのためのマッピング制御装置及び方法 |
US10/893,344 US7287117B2 (en) | 2003-12-10 | 2004-07-19 | Flash memory and mapping control apparatus and method for flash memory |
EP04257479A EP1542129A3 (en) | 2003-12-10 | 2004-12-01 | Flash memory and mapping control apparatus and method for flash memory |
CNB2004100984083A CN1306414C (zh) | 2003-12-10 | 2004-12-10 | 闪速存储器和闪速存储器的映射控制设备和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030089817A KR100608602B1 (ko) | 2003-12-10 | 2003-12-10 | 플래시 메모리, 이를 위한 사상 제어 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050056761A KR20050056761A (ko) | 2005-06-16 |
KR100608602B1 true KR100608602B1 (ko) | 2006-08-03 |
Family
ID=34511209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030089817A KR100608602B1 (ko) | 2003-12-10 | 2003-12-10 | 플래시 메모리, 이를 위한 사상 제어 장치 및 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7287117B2 (ko) |
EP (1) | EP1542129A3 (ko) |
JP (1) | JP3827682B2 (ko) |
KR (1) | KR100608602B1 (ko) |
CN (1) | CN1306414C (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100950281B1 (ko) | 2008-02-28 | 2010-03-31 | 아주대학교산학협력단 | 플래시 메모리 시스템 및 플래시 메모리의 데이터 연산방법 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8607016B2 (en) * | 2004-07-21 | 2013-12-10 | Sandisk Technologies Inc. | FAT analysis for optimized sequential cluster management |
US7395384B2 (en) * | 2004-07-21 | 2008-07-01 | Sandisk Corproation | Method and apparatus for maintaining data on non-volatile memory systems |
KR100703727B1 (ko) * | 2005-01-12 | 2007-04-05 | 삼성전자주식회사 | 비휘발성 메모리, 이를 위한 사상 제어 장치 및 방법 |
KR100684942B1 (ko) * | 2005-02-07 | 2007-02-20 | 삼성전자주식회사 | 복수의 사상 기법들을 채용한 적응형 플래시 메모리 제어장치 및 그것을 포함한 플래시 메모리 시스템 |
US8819088B2 (en) * | 2005-07-14 | 2014-08-26 | International Business Machines Corporation | Implementing storage management functions using a data store system |
KR100801072B1 (ko) * | 2005-09-30 | 2008-02-11 | 삼성전자주식회사 | 플래시 메모리, 이를 위한 맵핑 장치 및 방법 |
KR100843133B1 (ko) * | 2006-09-20 | 2008-07-02 | 삼성전자주식회사 | 플래시 메모리에서 매핑 정보 재구성을 위한 장치 및 방법 |
KR100849221B1 (ko) | 2006-10-19 | 2008-07-31 | 삼성전자주식회사 | 비휘발성 메모리의 관리 방법 및 비휘발성 메모리 기반의장치 |
KR100843135B1 (ko) * | 2006-11-20 | 2008-07-02 | 삼성전자주식회사 | 비휘발성 메모리 관리 방법 및 장치 |
KR100794312B1 (ko) * | 2006-12-27 | 2008-01-11 | 삼성전자주식회사 | 명령어 자동 처리 유니트를 포함한 메모리 컨트롤러 및그를 포함한 메모리 시스템 |
KR101447188B1 (ko) * | 2007-07-31 | 2014-10-08 | 삼성전자주식회사 | 플래시 메모리에 최적화된 입출력 제어 방법 및 장치 |
JP4535117B2 (ja) | 2007-11-06 | 2010-09-01 | ソニー株式会社 | メモリ装置、メモリ管理方法、およびプログラム |
TWI370969B (en) | 2008-07-09 | 2012-08-21 | Phison Electronics Corp | Data accessing method, and storage system and controller using the same |
CN101567849B (zh) * | 2009-04-30 | 2011-09-21 | 炬才微电子(深圳)有限公司 | 一种数据缓存方法和装置 |
CN102279815A (zh) * | 2010-06-13 | 2011-12-14 | 宇瞻科技股份有限公司 | 以快闪存储器为基础的存储装置及其数据写入方法 |
CN102541777B (zh) * | 2010-12-13 | 2015-08-19 | 深圳市硅格半导体有限公司 | 基于DMA映射的Flash数据传输控制方法及装置 |
KR102034626B1 (ko) * | 2013-06-26 | 2019-10-21 | 삼성전자 주식회사 | 메모리 동작을 제어하는 방법 및 장치 |
KR102402783B1 (ko) * | 2015-05-11 | 2022-05-27 | 삼성전자 주식회사 | 전자 장치 및 이의 페이지 병합 방법 |
CN106325764B (zh) * | 2015-07-08 | 2021-02-26 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
KR20170012629A (ko) * | 2015-07-21 | 2017-02-03 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR20180001681A (ko) * | 2016-06-27 | 2018-01-05 | 에스케이하이닉스 주식회사 | 메모리 시스템, 이의 어드레스 맵핑 방법 및 억세스 방법 |
KR20200066882A (ko) * | 2018-12-03 | 2020-06-11 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5404485A (en) * | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
US5838614A (en) * | 1995-07-31 | 1998-11-17 | Lexar Microsystems, Inc. | Identification and verification of a sector within a block of mass storage flash memory |
JP3604466B2 (ja) * | 1995-09-13 | 2004-12-22 | 株式会社ルネサステクノロジ | フラッシュディスクカード |
US6014724A (en) * | 1995-10-27 | 2000-01-11 | Scm Microsystems (U.S.) Inc. | Flash translation layer block indication map revision system and method |
US5745418A (en) | 1996-11-25 | 1998-04-28 | Macronix International Co., Ltd. | Flash memory mass storage system |
US5937425A (en) | 1997-10-16 | 1999-08-10 | M-Systems Flash Disk Pioneers Ltd. | Flash file system optimized for page-mode flash technologies |
KR100577380B1 (ko) | 1999-09-29 | 2006-05-09 | 삼성전자주식회사 | 플래시 메모리와 그 제어 방법 |
KR100644602B1 (ko) * | 2000-10-11 | 2006-11-10 | 삼성전자주식회사 | 플래시메모리를 위한 재사상 제어방법 및 그에 따른플래시 메모리의 구조 |
US7617352B2 (en) | 2000-12-27 | 2009-11-10 | Tdk Corporation | Memory controller, flash memory system having memory controller and method for controlling flash memory device |
CN1362708A (zh) * | 2001-01-02 | 2002-08-07 | 吴秀林 | 一种闪存芯片的读写方法 |
US6763424B2 (en) * | 2001-01-19 | 2004-07-13 | Sandisk Corporation | Partial block data programming and reading operations in a non-volatile memory |
KR100389867B1 (ko) | 2001-06-04 | 2003-07-04 | 삼성전자주식회사 | 플래시 메모리 관리방법 |
US6948026B2 (en) * | 2001-08-24 | 2005-09-20 | Micron Technology, Inc. | Erase block management |
JP3818130B2 (ja) | 2001-11-14 | 2006-09-06 | 日本電信電話株式会社 | データ管理方法及び装置及びデータ管理プログラム及びデータ管理プログラムを格納した記憶媒体 |
-
2003
- 2003-12-10 KR KR1020030089817A patent/KR100608602B1/ko active IP Right Grant
-
2004
- 2004-03-31 JP JP2004106982A patent/JP3827682B2/ja not_active Expired - Fee Related
- 2004-07-19 US US10/893,344 patent/US7287117B2/en active Active
- 2004-12-01 EP EP04257479A patent/EP1542129A3/en not_active Withdrawn
- 2004-12-10 CN CNB2004100984083A patent/CN1306414C/zh active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100950281B1 (ko) | 2008-02-28 | 2010-03-31 | 아주대학교산학협력단 | 플래시 메모리 시스템 및 플래시 메모리의 데이터 연산방법 |
Also Published As
Publication number | Publication date |
---|---|
JP3827682B2 (ja) | 2006-09-27 |
US7287117B2 (en) | 2007-10-23 |
KR20050056761A (ko) | 2005-06-16 |
CN1306414C (zh) | 2007-03-21 |
JP2005174279A (ja) | 2005-06-30 |
CN1627271A (zh) | 2005-06-15 |
EP1542129A2 (en) | 2005-06-15 |
EP1542129A3 (en) | 2008-08-13 |
US20050132127A1 (en) | 2005-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100608602B1 (ko) | 플래시 메모리, 이를 위한 사상 제어 장치 및 방법 | |
US7702844B2 (en) | Address mapping method and mapping information managing method for flash memory, and flash memory using the same | |
EP0852765B1 (en) | Memory management | |
US7814265B2 (en) | Single sector write operation in flash memory | |
US8180955B2 (en) | Computing systems and methods for managing flash memory device | |
US7191306B2 (en) | Flash memory, and flash memory access method and apparatus | |
US9037832B2 (en) | Method for managing a memory apparatus, and associated memory apparatus thereof | |
US7734862B2 (en) | Block management for mass storage | |
KR20010029171A (ko) | 플래시 메모리와 그 제어 방법 | |
US20070005929A1 (en) | Method, system, and article of manufacture for sector mapping in a flash device | |
KR100638638B1 (ko) | 플래시 메모리의 제어 방법 | |
KR100703727B1 (ko) | 비휘발성 메모리, 이를 위한 사상 제어 장치 및 방법 | |
KR100780963B1 (ko) | 메모리 카드 및 메모리 카드의 구동 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130701 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140630 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20150630 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20160630 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20170630 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20180629 Year of fee payment: 13 |