KR20130049330A - 메모리 시스템 및 그것의 메모리 관리 기법 - Google Patents

메모리 시스템 및 그것의 메모리 관리 기법 Download PDF

Info

Publication number
KR20130049330A
KR20130049330A KR1020110114280A KR20110114280A KR20130049330A KR 20130049330 A KR20130049330 A KR 20130049330A KR 1020110114280 A KR1020110114280 A KR 1020110114280A KR 20110114280 A KR20110114280 A KR 20110114280A KR 20130049330 A KR20130049330 A KR 20130049330A
Authority
KR
South Korea
Prior art keywords
memory
program
word lines
nonvolatile memory
memory device
Prior art date
Application number
KR1020110114280A
Other languages
English (en)
Inventor
주상현
윤상용
Original Assignee
삼성전자주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020110114280A priority Critical patent/KR20130049330A/ko
Priority to US13/553,845 priority patent/US9189384B2/en
Publication of KR20130049330A publication Critical patent/KR20130049330A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5607Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using magnetic storage elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • G11C11/5635Erasing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5678Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using amorphous/crystalline phase transition storage elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5685Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using storage elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0007Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0035Evaluating degradation, retention or wearout, e.g. by counting writing cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0097Erasing, e.g. resetting, circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5644Multilevel memory comprising counting devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Chemical & Material Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Materials Engineering (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

여기에는 불 휘발성 메모리 장치와; 그리고 상기 불 휘발성 메모리 장치를 제어하는 메모리 제어기를 포함하는 메모리 시스템의 메모리 관리 방법이 제공되며, 메모리 관리 방법은 상기 불 휘발성 메모리 장치의 메모리 블록의 프로그램-소거 회수가 기준 값에 도달하였는 지의 여부를 판별하고, 상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달하지 않은 것으로 판별되면, 제 1 메모리 관리 기법에 따라 상기 메모리 블록의 수명을 관리하고, 상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 제 1 메모리 관리 기법과 다른 제 2 메모리 관리 기법에 따라 상기 불 휘발성 메모리 장치의 수명을 관리하는 것을 포함한다.

Description

메모리 시스템 및 그것의 메모리 관리 기법{MEMORY SYSTEM AND MEMORY MANAGING TECHNIQUE THEREOF}
본 발명은 불 휘발성 메모리 장치를 포함하는 메모리 시스템에 관한 것이다.
반도체 메모리 장치에 저장된 데이터의 리프레시 없이 전기적으로 소거 및 프로그램 가능한 반도체 메모리 장치들에 대한 요구가 점차적으로 증가되고 있다. 또한, 메모리 장치의 저장 용량 및 집적도를 높이는 것이 주된 흐름이다. 저장된 데이터의 리프레시 없이 대용량 및 높은 집적도를 제공하는 불 휘발성 반도체 메모리 장치의 일예가 낸드 플래시 메모리 장치이다. 파워-오프시 조차 데이터를 그대로 유지하기 때문에, 그러한 플래시 메모리 장치는 전원이 갑자기 차단될 수 있는 전자 장치들 (예를 들면, 휴대용 단말기, 휴대용 컴퓨터, 등등)에 폭넓게 사용되고 있다.
내구성 저하 없이 데이터-보유 특성(data-retention characteristic) 및 프로그램/소거 사이클 수(the number of program/erase cycles)가 플로팅 게이트 구조를 갖는 불 휘발성 메모리 장치의 신뢰성과 가장 밀접하게 관련되어 있다. 저장된 전하(전자들)는 다양한 결함 메카니즘(failure mechanisms)을 통해 플로팅 게이트로부터 빠져 나가며, 그 결과 문턱 전압이 낮아진다. 이에 반해서, 제어 게이트가 특정 전압으로 유지된 상태에서 플로팅 게이트가 서서히 전자들을 얻을 때 전하 획득의 상반된 영향이 생기며, 그 결과 문턱 전압이 증가된다. 프로그램/소거 사이클들의 반복은 셀 트랜지스터의 산화막이 스트레스를 받게하며, 셀 트랜지스터의 터널 산화막 파괴와 같은 페일을 야기한다. 플래시 메모리 장치에 있어서, 프로그램/소거 내구성은 프로그램 및 소거 동작들 동안 터널 산화막에 전하가 트랩되기 때문에 주로 문제가 되고 있다. 전하 트랩은 메모리 장치의 문턱 전압 윈도우 또는 다음 사이클들의 프로그램/소거 시간에 영향을 줄 수 있다.
본 발명의 목적은 불 휘발성 메모리 장치의 수명을 연장할 수 있는 메모리 관리 기법을 제공하는 것이다.
본 발명의 일 특징은 불 휘발성 메모리 장치와; 그리고 상기 불 휘발성 메모리 장치를 제어하는 메모리 제어기를 포함하는 메모리 시스템의 메모리 관리 방법을 제공하는 것이다. 메모리 관리 방법은 상기 불 휘발성 메모리 장치의 메모리 블록의 프로그램-소거 회수가 기준 값에 도달하였는 지의 여부를 판별하고, 상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달하지 않은 것으로 판별되면, 제 1 메모리 관리 기법에 따라 상기 메모리 블록의 수명을 관리하고, 상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 제 1 메모리 관리 기법과 다른 제 2 메모리 관리 기법에 따라 상기 불 휘발성 메모리 장치의 수명을 관리하는 것을 포함한다.
예시적인 실시예에 있어서, 상기 제 1 메모리 관리 기법은 상기 불 휘발성 메모리 장치의 메모리 블록들의 수명이 블록 단위로 관리되는 기법이고, 상기 제 2 메모리 관리 기법은 상기 불 휘발성 메모리 장치의 메모리 블록들의 수명이 워드 라인 단위로 관리되는 기법이다.
예시적인 실시예에 있어서, 상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 메모리 블록의 양 가장 자리들에 각각 위치한 적어도 2개의 워드 라인들이 페이드 아웃된다.
예시적인 실시예에 있어서, 상기 메모리 블록의 프로그램-소거 회수가 상기 기준 값과 다른 제 2 기준 값에 도달하였는 지의 여부를 판별하는 것이 더 포함된다.
예시적인 실시예에 있어서, 상기 메모리 블록의 프로그램-소거 회수가 상기 제 2 기준 값에 도달한 것으로 판별될 때, 상기 페이드 아웃된 적어도 2개의 워드 라인들을 제외한 상기 메모리 블록의 나머지 워드 라인들 중 양 가장 자리들에 각각 위치한 적어도 2개의 워드 라인들이 페이드 아웃된다.
예시적인 실시예에 있어서, 상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 메모리 블록의 워드 라인들 중 홀수 워드 라인들이 페이드 아웃된다.
예시적인 실시예에 있어서, 상기 메모리 블록의 프로그램-소거 회수가 상기 기준 값과 다른 제 2 기준 값에 도달하였는 지의 여부를 판별하는 것이 더 포함된다.
예시적인 실시예에 있어서, 상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 메모리 블록의 워드 라인들 중 짝수 워드 라인들이 페이드 아웃되며, 상기 홀수 워드 라인들의 메모리 셀들이 데이터를 저장하는 데 사용된다.
예시적인 실시예에 있어서, 상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 메모리 블록의 양 가장 자리들에 각각 위치한 적어도 2개의 워드 라인들이 페이드 아웃되고, 상기 페이드 아웃된 적어도 2개의 워드 라인들은 상기 메모리 블록의 더미 워드 라인들로 대체된다.
예시적인 실시예에 있어서, 상기 불 휘발성 메모리 장치의 수명이 상기 제 1 메모리 관리 기법에 따라 관리될 때, 상기 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 상기 불 휘발성 메모리 장치로 전달되는 어드레스들은 연속적이다.
예시적인 실시예에 있어서, 상기 불 휘발성 메모리 장치의 수명이 상기 제 2 메모리 관리 기법에 따라 관리될 때, 상기 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 상기 불 휘발성 메모리 장치로 전달되는 어드레스들은 부분적으로 불연속적이다.
본 발명의 다른 특징은 복수의 불 휘발성 메모리 장치들을 포함하고, 데이터 정보를 저장하는 저장 매체와; 그리고 버퍼 메모리를 포함하고, 상기 복수의 불 휘발성 메모리 장치들을 제어하도록 구성된 메모리 제어기를 포함하는 메모리 시스템을 제공하는 것이다. 상기 메모리 제어기는 상기 각 불 휘발성 메모리 장치의 각 메모리 블록의 프로그램-소거 회수가 기준 값에 도달하였는 지의 여부에 따라 제 1 메모리 관리 기법 및 제 2 메모리 관리 기법 중 어느 하나에 따라 상기 각 불 휘발성 메모리 장치의 수명을 관리한다. 상기 각 불 휘발성 메모리 장치의 수명이 상기 제 2 메모리 관리 기법에 따라 관리될 때, 상기 각 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 상기 각 불 휘발성 메모리 장치로 전달되는 어드레스들은 부분적으로 불연속적이다.
예시적인 실시예에 있어서, 상기 각 불 휘발성 메모리 장치의 수명이 상기 제 1 메모리 관리 기법에 따라 관리될 때, 상기 각 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 상기 각 불 휘발성 메모리 장치로 전달되는 어드레스들은 연속적이다.
예시적인 실시예에 있어서, 상기 제 1 메모리 관리 기법은 상기 각 불 휘발성 메모리 장치의 메모리 블록들의 수명이 블록 단위로 관리되는 기법이고, 상기 제 2 메모리 관리 기법은 상기 각 불 휘발성 메모리 장치의 메모리 블록들의 수명이 워드 라인 단위로 관리되는 기법이다.
예시적인 실시예에 있어서, 상기 각 불 휘발성 메모리 장치의 각 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별될 때, 상기 메모리 제어기는 상기 각 메모리 블록의 양 가장 자리들에 각각 위치한 적어도 2개의 워드 라인들이 페이드 아웃되도록 또는 상기 각 메모리 블록의 워드 라인들 중 홀수 또는 짝수 워드 라인들이 페이드 아웃되도록 상기 각 불 휘발성 메모리 장치를 제어한다.
본 발명의 실시예들에 의하면, 메모리 블록의 수명이 보장된 수명에 도달할 때 메모리 블록의 수명을 블록 단위가 아니라 페이지 단위로 관리함으로써 불 휘발성 메모리 장치의 수명을 연장하는 것이 가능하다.
도 1은 본 발명의 실시예에 따른 메모리 시스템을 개략적으로 보여주는 블록도이다.
도 2는 도 1에 도시된 메모리 제어기를 개략적으로 보여주는 블록도이다.
도 3은 본 발명의 실시예에 따른 도 1에 도시된 불 휘발성 메모리 장치를 개략적으로 보여주는 블록도이다.
도 4는 본 발명의 일 실시예에 따른 메모리 제어기의 메모리 관리 방법을 개략적으로 설명하기 위한 도면이다.
도 5는 본 발명의 다른 실시예에 따른 메모리 제어기의 메모리 관리 방법을 개략적으로 설명하기 위한 도면이다.
도 6은 본 발명의 또 다른 실시예에 따른 메모리 제어기의 메모리 관리 방법을 개략적으로 설명하기 위한 도면이다.
도 7a는 멀티-레벨 메모리 장치에 적용되는 어드레스 스크램블 방식의 일예를 설명하기 위한 도면이다.
도 7b는 각 메모리 셀이 당 3-비트 데이터를 저장하고 3-스텝 프로그램 방식에 따라 프로그램 동작이 수행될 때 변화되는 문턱 전압 분포들을 보여주는 도면이다.
도 8은 본 발명의 실시예에 따른 데이터 저장 시스템을 개략적으로 보여주는 블록도이다.
도 9a 내지 도 9d는 본 발명의 예시적인 실시예에 따른 멀티-비트 메모리 장치의 제 1 및 제 2 메모리 영역들에 대한 다양한 조합들을 설명하기 위한 도면들이다.
도 10은 본 발명의 예시적인 실시예에 따른 컴퓨팅 시스템을 개략적으로 보여주는 블록도이다.
도 11은 본 발명의 예시적인 실시예에 따른 반도체 드라이브를 개략적으로 보여주는 블록도이다.
도 12는 도 11에 도시된 반도체 드라이브를 이용한 스토리지를 개략적으로 보여주는 블록도이다.
도 13은 도 11에 도시된 반도체 드라이브를 이용한 스트리지 서버를 개략적으로 보여주는 블록도이다.
도 14 내지 도 16은 본 발명의 예시적인 실시예들에 따른 데이터 저장 장치가 적용되는 시스템들을 개략적으로 보여주는 도면들이다.
도 17은 본 발명의 실시예에 따른 메모리 카드를 개략적으로 보여주는 블록도이다.
도 18은 본 발명의 실시예에 따른 디지털 스틸 카메라를 개략적으로 보여주는 블록도이다.
도 19는 도 18의 메모리 카드가 사용되는 다양한 시스템을 설명하는 예시적 도면이다.
본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 통해 설명될 것이다. 그러나 본 발명은 여기에서 설명되는 실시 예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 본 실시 예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.
도면들에 있어서, 본 발명의 실시 예들은 도시된 특정 형태로 제한되는 것이 아니며 명확성을 기하기 위하여 과장된 것이다. 또한 명세서 전체에 걸쳐서 동일한 참조번호로 표시된 부분들은 동일한 구성요소를 나타낸다.
본 명세서에서 ‘및/또는’이란 표현은 전후에 나열된 구성요소들 중 적어도 하나를 포함하는 의미로 사용된다. 또한, ‘연결되는/결합되는’이란 표현은 다른 구성요소와 직접적으로 연결되거나 다른 구성요소를 통해 간접적으로 연결되는 것을 포함하는 의미로 사용된다. 본 명세서에서 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 또한, 명세서에서 사용되는 ‘포함한다’ 또는 ‘포함하는’으로 언급된 구성요소, 단계, 동작 및 소자는 하나 이상의 다른 구성요소, 단계, 동작, 소자 및 장치의 존재 또는 추가를 의미한다.
도 1은 본 발명의 실시예에 따른 메모리 시스템을 개략적으로 보여주는 블록도이다.
도 1을 참조하면, 본 발명의 실시예에 따른 메모리 시스템은 불 휘발성 메모리 장치(1000)와 메모리 제어기(2000)를 포함한다. 불 휘발성 메모리 장치(1000)는 데이터 정보를 저장하는 일종의 저장 매체로서 사용된다. 저장 매체는 하나 또는 그 보다 많은 메모리 칩들로 구성될 수 있다. 불 휘발성 메모리 장치(1000)와 메모리 제어기(2000)는 하나 또는 그 보다 많은 채널들을 통해 통신한다. 불 휘발성 메모리 장치(1000)는, 예를 들면, 낸드 플래시 메모리 장치를 포함한다. 메모리 제어기(2000)는 외부 장치(예를 들면, 호스트)의 요청 또는 내부적인 요청(예를 들면, 머지, 가비지 콜렉션, 등과 같은 배경 동작들과 관련된 요청))에 따라 불 휘발성 메모리 장치(1000)를 제어하도록 구성된다.
실시예에 있어서, 불 휘발성 메모리 장치(1000)가 낸드 플래시 메모리 장치에 국한되지 않음은 잘 이해될 것이다. 예를 들면, 불 휘발성 메모리 장치(1000)는 노아 플래시 메모리 장치, 저항성 램(Resistive Random Access Memory: RRAM) 장치, 상변화 메모리(Phase-Change Memory: PRAM) 장치, 자기저항 메모리(Magnetoresistive Random Access Memory: MRAM) 장치, 강유전체 메모리(Ferroelectric Random Access Memory: FRAM) 장치, 스핀주입 자화반전 메모리(Spin Transfer Torque Random Access Memory: STT-RAM), 또는 그와 같은 것으로 구성될 수 있다. 또한, 본 발명의 불 휘발성 메모리 장치(1000)는 3차원 어레이 구조를 갖도록 구현될 수 있다. 3차원 어레이 구조를 갖는 불 휘발성 메모리 장치는 수직 낸드 플래시 메모리 장치라 불린다. 본 발명은 전하 저장층이 전도성 부유 게이트로 구성된 플래시 메모리 장치 뿐만 아니라, 전하 저장층이 절연막으로 구성된 차지 트랩형 플래시(Charge Trap Flash, "CTF"라 불림) 메모리 장치에도 모두 적용 가능하다.
DRAM 및 SRAM과 같은 휘발성 메모리 장치와 달리, 불 휘발성 메모리 장치(1000)는 데이터 덮어쓰기(data overwrite)를 지원하지 않는다. 그러한 이유로, 불 휘발성 메모리 장치(1000)는 데이터 정보로 동일한 저장 영역(예를 들면, 메모리 블록)을 갱신하기 위해서 소거 동작을 경험한다. 즉, 불 휘발성 메모리 장치(1000)는 프로그램 및 소거 동작들(이하, 프로그램-소거 회수라 칭함)을 경험한다. 불 휘발성 메모리 장치(1000)(또는, 불 휘발성 메모리 장치(1000)의 메모리 블록들)의 수명은 프로그램-소거 회수를 기준으로 보장된다. 일반적으로, 프로그램-소거 회수는 제조 과정 중에 행해지는 테스트 동작을 통해 결정된다. 메모리 블록의 프로그램-소거 회수가 보장되는 프로그램-소거 회수에 도달하면, 메모리 제어기(2000)는 그러한 메모리 블록을 사용 불가능한 블록(unusable block)으로 처리한다. 불 휘발성 메모리 장치(1000)의 내구성(endurance)이 블록 단위로 보장되기 때문에, 메모리 블록의 내구성은 가장 짧은 수명을 갖는 워드 라인(또는, 페이지)에 의해서 결정된다. 이는 비록 메모리 블록이 사용 불가능한 블록으로 처리되더라도, 사용 불가능한 블록으로 처리된 메모리 블록의 워드 라인들 중 일부는 사용 가능함을 의미한다. 따라서, 메모리 블록의 프로그램-소거 회수가 기준 프로그램-소거 회수에 도달하면, 메모리 제어기(2000)는 블록 단위가 아니라 워드 라인 단위(또는, 페이지 단위)로 불 휘발성 메모리 장치(1000)의 메모리 블록들의 내구성(또는, 수명)을 관리한다. 따라서, 워드 라인 단위로 수명을 관리함으로써 불 휘발성 메모리 장치의 축소(scale down)에 기인한 특성 열화에 의해서 짧아지는 불 휘발성 메모리 장치의 수명을 연장하는 것이 가능하다.
실시예에 있어서, 기준 프로그램-소거 회수는 보장되는 프로그램-소거 회수보다 작게 설정될 것이다.
도 2는 도 1에 도시된 메모리 제어기를 개략적으로 보여주는 블록도이다. 도 2를 참조하면, 메모리 제어기(2000)는 제 1 인터페이스로서 호스트 인터페이스(2100), 제 2 인터페이스로서 메모리 인터페이스(2200), CPU와 같은 처리 유니트(2300), 버퍼 메모리(2400), 그리고 에러 검출 및 정정 회로(2500)를 포함한다.
호스트 인터페이스(2100)는 외부(또는, 호스트)와 인터페이스하도록 구성된다. 메모리 인터페이스(2200)는 도 1에 도시된 불 휘발성 메모리 장치(1000)와 인터페이스하도록 구성된다. 처리 유니트(2300), 예를 들면, CPU는 메모리 제어기(2000)의 전반적인 동작을 제어하도록 구성된다. 예를 들면, 처리 유니트(2300)는 플래시 변환 계층(Flash Translation Layer: FTL)과 같은 펌웨어를 운용하도록 구성된다. 버퍼 메모리(2400)는 호스트 인터페이스(2100)를 통해 외부로 전달되는 데이터를 임시 저장하는 데 사용된다. 버퍼 메모리(2400)는 메모리 인터페이스(2200)를 통해 불 휘발성 메모리 장치(1000)로부터 전달되는 데이터를 임시 저장하는 데 사용된다. 에러 검출 및 정정 회로(2500)는 불 휘발성 메모리 장치(1000)에 저장될 데이터를 부호화하도록 그리고 불 휘발성 메모리 장치(4100)로부터 읽혀진 데이터를 복호화하도록 구성된다. 부호화는 패리티 정보를 생성하는 동작을 포함하며, 패리티 정보는 필드 단위로 생성될 수 있다. 한 페이지의 데이터는 하나 또는 그 보다 많은 필드들로 구성될 수 있다.
비록 도면에는 도시되지 않았지만, 메모리 제어기(2000)는 롬(ROM)을 더 포함할 수 있다. 롬은 플래시 변환 계층(Flash Translation Layer: FTL)과 같은 펌웨어를 저장하는 데 사용될 수 있다. 다른 예로서, 롬을 포함하지 않도록 메모리 제어기(2000)를 구성하는 것이 가능하다. 이러한 경우, 롬에 저장되는 펌웨어는 메모리 제어기(2000)에 의해서 제어되는 불 휘발성 메모리 장치(1000)에 저장되며, 파워-업시 불 휘발성 메모리 장치(1000)에서 메모리 제어기(2000)로 로드될 것이다.
특정 메모리 블록의 프로그램-소거 회수가 기준 프로그램-소거 회수(측정된/보장되는 프로그램-소거 회수보다 작음)에 도달한 경우, 본 발명의 실시예에 따른 메모리 제어기(2000)는 워드 라인 단위로 특정 메모리 블록의 수명을 관리한다. 즉, 특정 메모리 블록의 프로그램-소거 회수가 기준 프로그램-소거 회수(측정된/보장되는 프로그램-소거 회수보다 작음)에 도달할 때, 특정 메모리 블록의 모든 페이지들(또는, 워드 라인들)이 블록 단위로 즉, 사용 불가능 상태로 동시에 설정되는 것이 아니라, 워드 라인 단위로 사용 불가능한 상태로 설정된다. 여기서, 특정 메모리 블록의 워드 라인들(또는, 페이지들)을 사용 불가능한 상태로 설정하는 것은 페이드-아웃 기법을 통해 행해질 수 있다. 메모리 블록의 워드 라인들의 페이드-아웃(fade-out)은 다양한 방식들을 이용하여 행해질 수 있다. 예를 들면, 메모리 블록의 가장 자리에 위치한 워드 라인들부터 순차적으로 페이드-아웃이 행해질 수 있다. 또는, 메모리 블록의 홀수/짝수 워드 라인들이 페이드-아웃되고, 메모리 블록의 짝수/홀수 워드 라인들이 사용될 것이다. 추후, 특정 메모리 블록의 프로그램-소거 회수가 다른 기준 프로그램-소거 회수에 도달할 때, 메모리 블록의 짝수/홀수 워드 라인들이 페이드-아웃되고, 메모리 블록의 홀수/짝수 워드 라인들이 사용될 것이다. 또는, 메모리 블록이 더미 워드 라인들을 포함하는 경우, 메모리 블록의 가장 자리에 위치한 워드 라인들을 더미 워드 라인들로 교체함으로써 페이드-아웃이 행해질 수 있다. 또는, 상술한 페이드-아웃 방식들 중 적어도 2개의 조합에 따라 페이드-아웃이 행해질 수 있다. 상술한 페이드-아웃 기법들은 이후 상세히 설명될 것이다.
실시예에 있어서, 메모리 제어기(2000)는 메모리 블록의 수명을 블록 단위로 관리하는 제 1 메모리 관리 스킴과 메모리 블록의 수명을 워드 라인 단위로 관리하는 제 2 메모리 관리 스킴을 포함할 것이다. 제 1 및 제 2 메모리 관리 스킴들은 하드웨어, 소프트웨어, 또는 하드웨어 및 소프트웨어의 조합으로 구현될 수 있다.
실시예에 있어서, 불 휘발성 메모리 장치/메모리 블록의 수명이 워드 라인 단위로 관리되는 경우, 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 불 휘발성 메모리 장치로 전달되는 어드레스들은 부분적으로 불연속적일 것이다. 이는 메모리 블록의 워드 라인들 중 일부가 페이드-아웃되기 때문이다. 이에 반해서, 불 휘발성 메모리 장치/메모리 블록의 수명이 블록 단위로 관리되는 경우, 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 불 휘발성 메모리 장치로 전달되는 어드레스들은 연속적일 것이다.
실시예에 있어서, 호스트 인터페이스(2100)는 컴퓨터 버스 표준들, 스토리지 버스 표준들, iFCPPeripheral 버스 표준들, 등 중 하나 또는 그 보다 많은 것들의 조합으로 구성될 수 있다. 컴퓨터 버스 표준들(computer bus standards)은 S-100 bus, Mbus, Smbus, Q-Bus, ISA, Zorro II, Zorro III, CAMAC, FASTBUS, LPC, EISA, VME, VXI, NuBus, TURBOchannel, MCA, Sbus, VLB, PCI, PXI, HP GSC bus, CoreConnect, InfiniBand, UPA, PCI-X, AGP, PCIe, Intel QuickPath Interconnect, Hyper Transport, 등을 포함한다. 스토리지 버스 표준들(Storage bus standards)은 ST-506, ESDI, SMD, Parallel ATA, DMA, SSA, HIPPI, USB MSC, FireWire(1394), Serial ATA, eSATA, SCSI, Parallel SCSI, Serial Attached SCSI, Fibre Channel, iSCSI, SAS, RapidIO, FCIP, 등을 포함한다. iFCPPeripheral 버스 표준들(iFCPPeripheral bus standards)은 Apple Desktop Bus, HIL, MIDI, Multibus, RS-232, DMX512-A, EIA/RS-422, IEEE-1284, UNI/O, 1-Wire, I2C, SPI, EIA/RS-485, USB, Camera Link, External PCIe, Light Peak, Multidrop Bus, 등을 포함한다.
비록 도면에는 도시되지 않았지만, 메모리 제어기(2000)는 불 휘발성 메모리 장치(1000)에 저장될 데이터를 랜덤화하도록 그리고 불 휘발성 메모리 장치(1000)로부터 읽혀진 데이터를 디-랜덤화하도록 구성되는 랜덤화기/디-랜덤화기를 더 포함할 수 있다. 랜덤화기/디-랜덤화기의 예가 미국특허공개번호 제2010/0088574호에 "DATA STORAGE SYSTEM AND DEVICE WITH RANDOMIZER/DE-RANDOMIZER"라는 제목으로 게재되어 있으며, 이 출원의 레퍼런스로 포함된다.
도 3은 본 발명의 실시예에 따른 도 1에 도시된 불 휘발성 메모리 장치를 개략적으로 보여주는 블록도이다. 도 3을 참조하면, 불 휘발성 메모리 장치(1000)는 메모리 셀 어레이(1100), 어드레스 디코더(1200), 전압 발생기(1300), 제어 로직(1400), 페이지 버퍼 회로(1500), 그리고 입출력 인터페이스(1600)를 포함한다.
메모리 셀 어레이(1100)는 행들(예를 들면, 워드 라인들)과 열들(예를 들면, 비트 라인들)의 교차 영역들에 배열된 메모리 셀들을 포함할 것이다. 메모리 셀들 각각은 1-비트 데이터 또는 멀티-비트 데이터를 저장할 것이다. 어드레스 디코더(1200)는 제어 로직(1400)에 의해서 제어되며, 메모리 셀 어레이(1100)의 행들(예를 들면, 워드 라인들, 스트링 선택 라인(들), 접지 선택 라인(들), 공통 소오스 라인, 등)의 선택 및 구동을 행한다. 전압 발생기(1300)는 제어 로직(1400)에 의해서 제어되며, 각 동작에 필요한 전압들(예를 들면, 고전압, 프로그램 전압, 읽기 전압, 검증 전압, 소거 전압, 패스 전압, 벌크 전압, 등)을 발생한다. 전압 발생기(1300)에 의해서 전압들은 어드레스 디코더(1200)를 통해 메모리 셀 어레이(1100)에 제공된다. 제어 로직(1400)은 불 휘발성 메모리 장치(1000)의 전반적인 동작을 제어하도록 구성된다. 페이지 버퍼 회로(1500)는 제어 로직(1400)에 의해서 제어되며, 메모리 셀 어레이(1100)로부터 데이터를 읽도록 또는 프로그램 데이터에 따라 메모리 셀 어레이(1100)의 열들(예를 들면, 비트 라인들)을 구동하도록 구성된다. 페이지 버퍼 회로(1500)는 비트 라인들 또는 비트 라인 쌍들에 각각 대응하는 복수의 페이지 버퍼들로 구성될 것이다. 페이지 버퍼들 각각은 복수의 래치들을 포함한다. 입출력 인터페이스(1600)는 제어 로직(1400)에 의해서 제어되며, 외부(예를 들면, 도 1의 메모리 제어기)와 인터페이스하도록 구성된다.
도 4는 본 발명의 일 실시예에 따른 메모리 제어기의 메모리 관리 방법을 개략적으로 설명하기 위한 도면이다.
메모리 제어기(2000)의 메모리 관리 방법이 하나의 메모리 블록(BLKi)을 이용하여 설명될 것이다. 하지만, 본 발명의 실시예에 따른 메모리 관리 방법이 불 휘발성 메모리 장치(1000)에 포함되는 모든 메모리 블록들에도 동일하게 적용될 것이다. 일반적으로, 메모리 블록(BLKi)의 수명은 테스트 레벨에서 측정된 프로그램-소거 회수(또는, 보장되는 프로그램-소거 회수)를 기준으로 결정된다. 메모리 블록(BLKi)은 복수의 워드 라인들(예를 들면, 64개 또는 그 보다 많은 워드 라인들)을 포함할 것이다.
메모리 제어기(2000)는 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달하였는 지의 여부를 판별한다. 여기서, 기준 프로그램-소거 회수(R1_PEC)은 측정된 프로그램-소거 회수보다 작을 것이다. 실시예에 있어서, 기준 프로그램-소거 회수는 하나 또는 그 보다 많은 값들로 구성될 수 있다. 도 4에는 2개, 즉, 제 1 및 제 2 기준 프로그램-소거 회수 값들(R1_PEC, R2_PEC)이 적용된 예가 도시되어 있다. 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)는 메모리 제어기(2000)에 의해서 관리되는 테이블을 이용하여 기록될 것이다. 판별 동작은 메모리 제어기(2000)의 배경 동작일 것이다. 배경 동작은 메모리 시스템이 호스트 요청 없이 유휴 상태(idle state)에 있을 때 행해질 것이다. 만약 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달하지 않은 것으로 판별되면, 메모리 블록(BLKi)의 수명은 블록 단위로 관리될 것이다.
만약 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달한 것으로 판별되면, 메모리 제어기(2000)는 메모리 블록(BLKi)의 수명을 워드 라인 단위로 관리한다. 예를 들면, 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달한 경우, 도 4에 도시된 바와 같이, 메모리 블록(BLKi)의 가장 자리에 위치한 워드 라인들(예를 들면, WL0, WL63)이 페이드 아웃된다(fade out). 일반적으로, 가장 자리에 위치한 워드 라인들의 특성이 나머지 워드 라인들의 특성과 비교하여 볼 때 상대적으로 나쁘기 때문에, 메모리 블록(BLKi)의 수명은 가장 자리에 위치한 워드 라인들에 의해서 결정된다. 따라서, 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달할 때 가장 자리에 위치한 워드 라인들(예를 들면, WL0, WL63)을 페이드 아웃시킴으로써 나머지 워드 라인들을 사용하는 것이 가능하다.
메모리 블록(BLKi)의 가장 자리에 위치한 워드 라인들(예를 들면, WL0, WL63)이 페이드 아웃된 후, 메모리 제어기(2000)는 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 제 2 기준 프로그램-소거 회수(R2_PEC)에 도달하였는 지의 여부를 판별한다. 여기서, 제 1 기준 프로그램-소거 회수(R1_PEC)는 제 2 기준 프로그램-소거 회수(R2_PEC)보다 작다. 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 제 2 기준 프로그램-소거 회수(R2_PEC)에 도달한 경우, 도 4에 도시된 바와 같이, 페이드-아웃된 워드 라인들(WL0, WL63)을 제외한 메모리 블록(BLKi)의 나머지 워드 라인들(WL1~WL62) 중 가장 자리에 위치한 워드 라인들(예를 들면, WL1, WL62)이 페이드 아웃된다.
실시예에 있어서, 워드 라인들(WL1, WL62)이 페이드 아웃된 후, 메모리 시스템은 다른 기준 프로그램-소거 회수들을 이용하여 나머지 워드 라인들 역시 앞서 설명된 바와 같이 페이드-아웃되도록 구현될 수 있다.
실시예에 있어서, 메모리 블록(BLKi)의 양 에지들 각각으로부터 워드 라인들이 하나씩 페이드 아웃된다. 하지만, 본 발명이 여기에 개시된 것에 국한되지 않음은 잘 이해될 것이다. 예를 들면, 메모리 블록(BLKi)의 양 에지들 각각으로부터 워드 라인들이 2 또는 그 보다 많은 워드 라인들의 단위로 페이드 아웃될 수 있다.
실시예에 있어서, 메모리 제어기(2000)의 상술한 판별 동작은 메모리 시스템이 사용됨과 동시에 개시될 수 있다. 또는, 메모리 제어기(2000)의 상술한 판별 동작은 메모리 시스템의 사용 기간에 따라 선택적으로 개시될 수 있다. 하지만, 본 발명이 여기에 개시된 것에 국한되지 않음은 잘 이해될 것이다.
도 5는 본 발명의 다른 실시예에 따른 메모리 제어기의 메모리 관리 방법을 개략적으로 설명하기 위한 도면이다.
메모리 제어기(2000)는 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달하였는 지의 여부를 판별한다. 만약 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달하지 않은 것으로 판별되면, 메모리 블록(BLKi)의 수명은 블록 단위로 관리될 것이다.
만약 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달한 것으로 판별되면, 메모리 제어기(2000)는 메모리 블록(BLKi)의 수명을 워드 라인 단위로 관리한다. 예를 들면, 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달한 경우, 도 5에 도시된 바와 같이, 메모리 블록(BLKi)의 워드 라인들 중 짝수 워드 라인들(WL0, WL2, WL4, WL6, etc.)이 페이드 아웃된다. 이 경우, 홀수 워드 라인들(WL1, WL3, WL5, etc.)이 사용될 것이다.
메모리 블록(BLKi)의 워드 라인들 중 짝수 워드 라인들(WL0, WL2, WL4, WL6, etc.)이 페이드 아웃된 후, 메모리 제어기(2000)는 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 제 2 기준 프로그램-소거 회수(R2_PEC)에 도달하였는 지의 여부를 판별한다. 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 제 2 기준 프로그램-소거 회수(R2_PEC)에 도달한 경우, 도 5에 도시된 바와 같이, 메모리 블록(BLKi)의 워드 라인들 중 홀수 워드 라인들(WL1, WL3, WL5, etc.)이 페이드 아웃되는 반면에, 메모리 블록(BLKi)의 워드 라인들 중 짝수 워드 라인들(WL0, WL2, WL4, WL6, etc.)이 사용된다.
기준 프로그램-소거 회수에 따라 홀수/짝수 워드 라인들을 페이드-아웃시킴으로써 메모리 블록/불 휘발성 메모리 장치의 수명을 연장하는 것이 가능하다. 또한, 메모리 블록(BLKi)의 워드 라인들 중 짝수 워드 라인들(WL0, WL2, WL4, WL6, etc.) 또는 메모리 블록(BLKi)의 워드 라인들 중 홀수 워드 라인들(WL1, WL3, WL5, etc.)을 사용함으로써 워드 라인 커플링 노이즈를 제거하는 것이 가능하다.
도 6은 본 발명의 또 다른 실시예에 따른 메모리 제어기의 메모리 관리 방법을 개략적으로 설명하기 위한 도면이다.
메모리 블록(BLKi)은 양 에지들에 배열된 더미 워드 라인들(DWL0, DWL1) 및 더미 워드 라인들(DWL0, DWL1) 사이에 배열된 복수의 워드 라인들(예를 들면, WL0~WL63)을 포함한다. 더미 워드 라인들(DWL0, DWL1)에 연결된 메모리 셀들은 워드 라인들(WL0~WL63)에 연결된 메모리 셀들과 동일하게 형성되지만, 더미 워드 라인들(DWL0, DWL1)에 연결된 메모리 셀들에는 데이터 정보가 저장되지 않는다.
메모리 제어기(2000)는 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달하였는 지의 여부를 판별한다. 만약 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달하지 않은 것으로 판별되면, 메모리 블록(BLKi)의 수명은 블록 단위로 관리될 것이다.
만약 메모리 블록(BLKi)의 프로그램-소거 회수(C_PEC)가 기준 프로그램-소거 회수(R1_PEC)에 도달한 것으로 판별되면, 도 6에 도시된 바와 같이, 메모리 제어기(2000)는 메모리 블록(BLKi)의 가장 자리에 위치한 워드 라인들(WL0, WL63)을 페이드 아웃시키고 페이드 아웃된 워드 라인들(WL0, WL63) 대신에 더미 워드 라인들(DWL0, DWL1)을 사용한다. 즉, 더미 워드 라인들(DWL0, DWL1)에 연결된 메모리 셀들은 페이드 아웃된 워드 라인들(WL0, WL63)에 저장될 데이터를 저장하는 데 사용된다.
비록 도면에 도시되지 않았지만, 도 4에서 설명된 것과 동일한 방식으로 나머지 워드 라인들(WL1~WL62)이 수명에 따라 페이드 아웃될 수 있다.
본 발명의 실시예들에 따른 메모리 관리 기법들은 다양한 메모리 장치들에 적용될 수 있다. 이는 이하 상세히 설명될 것이다.
도 7a는 멀티-레벨 메모리 장치에 적용되는 어드레스 스크램블 방식의 일예를 설명하기 위한 도면이다.
각 메모리 셀에 저장되는 데이터 비트들의 수가 증가됨에 따라, 멀티-비트(또는, 멀티-레벨) 데이터를 저장하는 메모리 장치(이하, 멀티-레벨 메모리 장치라 칭함)의 신뢰성을 확보하는 것이 점차적으로 어려워지고 있다. 신뢰성을 떨어뜨리는 요인들 중 대표적인 하나는 인접 메모리 셀들 사이의 커플링으로 인한 문턱 전압들의 변화일 것이다. 예를 들면, 이전에 프로그램된 메모리 셀의 문턱 전압은 프로그램된 메모리 셀에 인접한 메모리 셀이 프로그램될 때 생기는 커플링으로 인해 변화될 수 있다.
하나의 메모리 셀에 3-비트 데이터가 저장된다는 가정 하에서 어드레스 스크램블 방식이 설명될 것이다. 도시의 편의상, 도 7a에는 단지 4개의 워드 라인들(WL0~WL3)이 도시되어 있다. 워드 라인들(WL0~WL3) 각각에는 복수의 메모리 셀들(MC)이 연결될 것이다. 먼저, 하위 2-비트 데이터가 첫 번째 워드 라인(WL0)에 연결된 메모리 셀들 각각에 저장되는 1-스텝 프로그램 동작이 수행될 것이다. 즉, 1-스텝 프로그램 동작 동안, 첫 번째 워드 라인(WL0)에 연결된 메모리 셀들에는 2-페이지 데이터가 저장될 것이다. 이는 도 7a에서 ①로 표기되어 있다. 그 다음에, 두 번째 워드 라인(WL1)에 연결된 메모리 셀들에 대해서 1-스텝 프로그램 동작이 수행될 것이다. 이는 도 7a에서 ②로 표기되어 있다. 두 번째 워드 라인(WL1)에 대한 1-스텝 프로그램 동작이 수행된 후, 두 번째 워드 라인(WL1)의 아래에 위치하고 하위 2-비트 데이터가 프로그램된 첫 번째 워드 라인(WL0)에 연결된 메모리 셀들에 상위 1-비트 데이터가 저장되는 거친 프로그램 동작(coarse program operation)(또는, 두번째 스텝 프로그램(2-step programming)이라 불림)이 수행될 것이다. 이는 도 7a에서 ③로 표기되어 있다. 첫 번째 워드 라인(WL0)에 연결된 메모리 셀들에 대해서 거친 프로그램 동작이 수행된 후, 세 번째 워드 라인(WL2)에 대한 1-스텝 프로그램 동작이 수행되고, 이는 도 7a에서 ④로 표기되어 있다. 세 번째 워드 라인(WL2)에 대한 1-스텝 프로그램 동작 이후, 하위 2-비트 데이터가 프로그램된 두 번째 워드 라인(WL1)에 연결된 메모리 셀들에 상위 1-비트 데이터가 저장되는 거친 프로그램 동작이 수행될 것이다. 이는 도 7a에서 ⑤로 표기되어 있다. 그 후, 첫 번째 워드 라인(WL0)에 대한 정교한 프로그램 동작(fine program operation)이 수행될 것이다. 이는 도 7a에서 ⑥로 표기되어 있다. 이후, 1-스텝, 거친, 그리고 정교한 프로그램 동작들이 앞서 설명된 프로그램 순서(도 7a 참조)에 따라 순차적으로 수행될 것이다. 도 7a에서 설명된 프로그램 순서에 따라 워드 라인들이 선택되는 방식을 어드레스 스크램블 방식이라 칭한다. 어드레스 스크램블 방식이 여기에 개시된 것에 국한되지 않음은 잘 이해될 것이다.
1-스텝 프로그램 동작과 거친 프로그램 동작이 완료되면, M-비트 데이터(M은 2 또는 그 보다 큰 정수)에 대응하는 문턱 전압 분포들(예를 들면, 2M개의 문턱 전압 분포들)이 모두 형성될 것이다. 비록 거친 프로그램 동작이 완료됨에 따라 모든 문턱 전압 분포들이 형성되더라도, 문턱 전압 분포들 사이의 마진은 문턱 전압 분포들을 명확하게 구분하기에 충분하지 않을 것이다. 문턱 전압 분포들을 명확하게 구분하기에 충분한 마진을 확보하기 위해서 정교한 프로그램 동작이 수행될 것이다. 정교한 프로그램 동작은 각 문턱 전압 분포의 폭을 좁히기 위해 행해지며, 거친 프로그램 동작에서 사용되는 문턱 전압 분포들의 검증 전압들보다 소정 전압만큼 각각 높은 검증 전압들을 사용하여 행해질 것이다. 이러한 프로그램 방식을 통해 인접한 메모리 셀들 사이의 커플링을 줄이는 것이 가능하다. 이러한 프로그램 방법/알고리즘은 재프로그램 방법/알고리즘(reprogram method/algorithm)이라 칭한다.
예시적인 실시예에 있어서, 3-비트 데이터를 위한 재프로그램 방법 즉, 1-스텝 프로그래밍, 거친 프로그래밍, 그리고 정교한 프로그래밍이 2-비트 데이터 및 4-비트 데이터의 재프로그램 방법에도 모두 적용됨은 잘 이해될 것이다.
이러한 재프로그램 방법에 의하면, 임의의 워드 라인에 대한 정교한 프로그램 동작이 종료될 때까지 임의의 워드 라인의 메모리 셀들에 저장된 데이터를 유지할 필요가 있다. 예를 들면, 1-스텝 프로그램 동작은 메모리 제어기에서 멀티-비트 메모리 장치에 제공되는 데이터에 의거하여 행해지고, 거친 프로그램 동작은 1-스텝 프로그램 동작을 통해 저장된 데이터와 메모리 제어기에서 제공되는 데이터에 의거하여 행해질 것이다. 정교한 프로그램 동작은 1-스텝 프로그램 동작과 거친 프로그램 동작을 통해 저장된 데이터에 의거하여 행해질 것이다. 하지만, 앞서 설명된 바와 같이, 1-스텝 프로그램 동작과 거친 프로그램 동작을 통해 저장된 데이터를 정확하게 읽는 것은 어렵다. 이는 정교한 프로그램 동작에 필요한 데이터는 메모리 제어기에서 멀티-비트 메모리 장치로 제공되어야 함을 의미한다. 그러한 까닭에, 임의의 워드 라인에 대한 정교한 프로그램 동작이 종료될 때까지 임의의 워드 라인의 메모리 셀들에 저장된 데이터가 메모리 제어기에 의해서 유지될 것이다. 이는 정교한 프로그램 동작에 필요한 데이터를 유지하기 위한 큰 용량의 버퍼 메모리가 메모리 제어기에 제공됨을 의미한다. 버퍼 메모리의 용량을 줄이기 위해서 이후 설명되는 온-칩 버퍼 프로그래밍(On-chip Buffered Programming: OBP) 기술이 메모리 시스템에 적용될 수 있다.
도 7b는 각 메모리 셀이 당 3-비트 데이터를 저장하고 3-스텝 프로그램 방식에 따라 프로그램 동작이 수행될 때 변화되는 문턱 전압 분포들을 보여주는 도면이다. 이하, 3-스텝 프로그램 방식에 따른 프로그램 방법이 참조 도면들에 의거하여 설명될 것이다.
먼저, 선택된 워드 라인(예를 들면, WL0, 도 7a 참조)의 메모리 셀들에는 2-페이지 데이터(즉, 제 1 및 제 2 페이지 데이터)가 동시에 저장될 것이다. 이때, 도 7b의 박스(31)에 도시된 바와 같이, 소거 상태(E)에 대응하는 문턱 전압 분포에 속한 메모리 셀들은 프로그램될 데이터에 따라 프로그램 상태들(Q1, Q2, Q3)에 각각 대응하는 문턱 전압 분포들에 속한 문턱 전압들을 갖도록 프로그램될 것이다.
앞서 설명된 바와 같이, 워드 라인(예를 들면, WL0)에 속한 1-스텝 프로그램된 메모리 셀들의 거친 프로그램 동작은 인접한 워드 라인(예를 들면, WL1)에 속한 메모리 셀들의 1-스텝 프로그램 동작 이후에 행해질 것이다. 이때, 도 7b의 박스(31)의 실선으로 표시된 같이, 워드 라인(예를 들면, WL0)에 속한 1-스텝 프로그램된 메모리 셀들의 산포들이 인접한 워드 라인(예를 들면, WL1)에 속한 메모리 셀들이 프로그램될 때 생기는 커플링으로 인해 넓어질 것이다.
그 다음에, 선택된 워드 라인(WL0)의 메모리 셀들에는 1-페이지 데이터가 저장될 것이다. 이때, 도 7b의 박스(32)에 도시된 바와 같이, 각 상태에 대응하는 문턱 전압 분포에 속한 메모리 셀들은 대응하는 문턱 전압 산포들에 속한 문턱 전압들을 갖도록 프로그램될 것이다. 예를 들면, 소거 상태(E)에 대응하는 문턱 전압 분포에 속한 메모리 셀들은 프로그램될 데이터에 따라 프로그램 상태(P1)에 대응하는 문턱 전압 분포에 속한 문턱 전압들을 갖도록 프로그램될 것이다. 프로그램 상태(Q1)에 대응하는 문턱 전압 분포에 속한 메모리 셀들은 프로그램될 데이터에 따라 프로그램 상태들(P2, P3)에 각각 대응하는 문턱 전압 분포들에 속한 문턱 전압들을 갖도록 프로그램될 것이다. 프로그램 상태(Q2)에 대응하는 문턱 전압 분포에 속한 메모리 셀들은 프로그램될 데이터에 따라 프로그램 상태들(P4, P5)에 각각 대응하는 문턱 전압 분포들에 속한 문턱 전압들을 갖도록 프로그램될 것이다. 프로그램 상태(Q3)에 대응하는 문턱 전압 분포에 속한 메모리 셀들은 프로그램될 데이터에 따라 프로그램 상태들(P6, P7)에 각각 대응하는 문턱 전압 분포들에 속한 문턱 전압들을 갖도록 프로그램될 것이다.
앞서 설명된 바와 같이, 워드 라인(예를 들면, WL0)에 속한 거친 프로그램된 메모리 셀들의 정교한 프로그램 동작은 인접한 워드 라인들(예를 들면, WL2, WL1)에 대한 1-스텝 프로그램 동작 및 거친 프로그램 동작 이후에 행해질 것이다. 이때, 도 7b의 박스(32)의 실선으로 도시된 바와 같이, 워드 라인(예를 들면, WL0)에 속한 거친 프로그램된 메모리 셀들의 산포들이 인접한 워드 라인들(예를 들면, WL2, WL1)에 속한 메모리 셀들이 프로그램될 때 생기는 커플링으로 인해 넓어질 것이다. 이러한 이유로, 거친 프로그램된 메모리 셀들로부터 데이터를 정확하게 읽는 것이 어렵다.
워드 라인(WL0)에 속한 메모리 셀들이 도 7b의 박스(33)에 도시된 바와 같은 최종 문턱 전압 분포들(P1)), 을 갖도록 프로그램될 것이다. 이러한 동작은 정교한 프로그램 동작이라 불린다. 앞서 설명된 바와 같이, 정교한 프로그램 동작은 이전에 프로그램된 데이터(예를 들면, 제 1 내지 제 3 페이지 데이터)를 필요로 하며, 이는 워드 라인(WL0)에 속한 메모리 셀들로부터 이전에 프로그램된 데이터를 정확하게 읽는 것이 어렵기 때문에 메모리 제어기로부터 제공되는 데이터(또는, 메모리 장치에 의해서 유지되는 데이터)에 의거하여 행해질 것이다. 도 7b의 박스(33)의 실선으로 도시된 바와 같이, 정교한 프로그램된 메모리 셀들 역시 인접한 워드 라인들에 속한 메모리 셀들의 산포들은 프로그램될 때 생기는 커플링으로 인해 넓어질 수 있다.
이후, 각 워드 라인에 대한 1-스텝 프로그램 동작, 거친 프로그램 동작, 그리고 정교한 프로그램 동작이 도 7a에서 설명된 프로그램 순서에 따라 행해지며, 이는 도 7b에서 설명된 것과 동일한 방식으로 행해질 것이다.
도 8은 본 발명의 실시예에 따른 데이터 저장 시스템을 개략적으로 보여주는 블록도이다.
도 8을 참조하면, 데이터 저장 시스템(3000)은 불 휘발성 메모리 장치로서 멀티-비트 메모리 장치(3100), 메모리 제어기(3200), 그리고 호스트(3300)를 포함할 것이다. 멀티-비트 메모리 장치(3100)는 하나 또는 그 보다 많은 메모리 칩들로 구성될 수 있다. 멀티-비트 메모리 장치(3100)와 메모리 제어기(3200)는, 메모리 시스템 또는 데이터 저장 장치로서, 메모리 카드, 반도체 디스크(Solid State Drive: SSD), 메모리 스틱, 또는 그와 같은 것을 구성할 것이다. 멀티-비트 메모리 장치(3100)는 복수의 메모리 블록들(섹터들/뱅크들)을 포함하며, 각 메모리 블록은 행들과 열들로 배열된 메모리 셀들을 포함할 것이다. 메모리 셀들 각각은 멀티-비트(또는, 멀티-레벨) 데이터를 저장할 것이다. 메모리 셀들은 2차원 어레이 구조를 갖도록 또는 3차원/수직 어레이 구조를 갖도록 배열될 것이다. 예시적인 3차원 어레이 구조가 미국특허 공개번호 제2008/0023747호에 "SEMICONDUCTOR MEMORY DEVICE WITH MEMORY CELLS ON MULTIPLE LAYERS"라는 제목으로 그리고 미국특허 공개번호 제2008/0084729호에 "SEMICONDUCTOR DEVICE WITH THREE-DIMENSIONAL ARRAY STRUCTURE"라는 제목으로 각각 게재되어 있으며, 이 출원의 레퍼런스로 포함될 것이다.
본 발명의 예시적인 실시예에 따른 멀티-비트 메모리 장치(3100)의 메모리 블록들은 제 1 메모리 영역(3101)과 제 2 메모리 영역(3102)으로 구분될 것이다. 여기서, 제 1 및 제 2 메모리 영역들(3101, 3102)의 구분이 물리적인 것이 아니라 논리적으로 행해짐은 잘 이해될 것이다. 제 1 및 제 2 메모리 영역들(3101, 3102)의 구분은 논리적으로 가변 가능하다. 제 1 메모리 영역(3101)에 속한 메모리 블록들은 제 2 메모리 영역(3102)에 속한 메모리 블록들과 다른 방식으로 프로그램될 것이다. 예를 들면, 제 1 메모리 영역(3101)에 속한 메모리 블록들은 단일-비트 프로그램 방식(이하, SLC 프로그램 방식이 칭함)에 따라 프로그램되고, 제 2 메모리 영역(3102)에 속한 메모리 블록들은 멀티-비트 프로그램 방식(이하, MLC 프로그램 방식이라 칭함)에 따라 프로그램될 것이다. 다시 말해서, 제 1 메모리 영역(3101)에 속한 메모리 셀들 각각은 1-비트 데이터를 저장하고, 제 2 메모리 영역(3102)에 속한 메모리 셀들 각각은 M-비트 데이터(M은 2 또는 그 보다 큰 정수)를 저장할 것이다. 결과적으로, 제 1 메모리 영역(3101)에 속한 메모리 셀들 각각은 제 2 메모리 영역(3102)에 속한 메모리 셀들 각각에 저장되는 M-비트 데이터보다 작은 수의 데이터 비트들을 저장할 것이다.
계속해서 도 8을 참조하면, 메모리 제어기(3200)는 호스트(3300)의 요청에 응답하여 멀티-비트 메모리 장치(3100)를 제어하도록 구성될 것이다. 메모리 제어기(3200)는 버퍼 메모리(3201)와 에러 검출 및 정정 회로(3202)를 포함할 것이다. 버퍼 메모리(3201)는 호스트(3300)로부터 전송된 데이터를 임시 저장하는 데 그리고 멀티-비트 메모리 장치(3100)로부터 읽혀진 데이터를 임시 저장하는 데 사용될 것이다. 에러 검출 및 정정 회로(3202)는 멀티-비트 메모리 장치(3100)에 저장될 데이터를 부호화하도록 그리고 멀티-비트 메모리 장치(3100)로부터 읽혀진 데이터를 복호화하도록 구성된다. 부호화는 패리티 정보를 생성하는 동작을 포함하며, 패리티 정보는 필드 단위로 생성될 수 있다. 한 페이지의 데이터는 하나 또는 그 보다 많은 필드들로 구성될 수 있다.
메모리 제어기(3200)는 정적 스케쥴링 방식(static scheduling manner)으로 메모리 장치(3100)의 프로그램 동작을 제어할 것이다. 예를 들면, 제 1 메모리 영역(3101)에 대한 최소 프로그램 단위의 데이터가 버퍼 메모리(3201)에 저장되면, 메모리 제어기(3200)는 최소 프로그램 단위의 데이터가 제 1 메모리 영역(3101)에 저장되도록 멀티-비트 메모리 장치(3100)를 제어할 것이다. 이는 버퍼 프로그램 동작이라 칭한다. 제 2 메모리 영역(3102)에 대한 최소 프로그램 단위의 데이터가 제 1 메모리 영역(3101)에 모이면, 메모리 제어기(3200)는 제 2 메모리 영역(3102)에 대한 최소 프로그램 단위의 데이터가 제 2 메모리 영역(3102)에 저장되도록 멀티-비트 메모리 장치(3100)를 제어할 것이다. 이는 메인 프로그램 동작이라 칭한다. 버퍼 프로그램 동작과 메인 프로그램 동작은 온-칩 버퍼 프로그래밍 동작을 구성한다.
도 4 내지 도 6을 참조하여 설명된 메모리 관리 기법들 중 어느 하나 또는 적어도 2개의 조합을 이용하여 제 1 메모리 영역 즉, SLC 영역의 수명을 관리함으로써 제 1 메모리 영역(또는, 버퍼 영역)의 수명을 연장하는 것이 가능하다. 제 1 메모리 영역의 수명을 연장함으로써 제 1 메모리 영역(또는, 버퍼 영역)의 크기를 최소화시키는 것이 가능하다. 이는 칩 사이즈가 감소됨을 의미한다. 또한, 도 4 내지 도 6을 참조하여 설명된 메모리 관리 기법들 중 어느 하나 또는 적어도 2개의 조합을 이용하여 제 2 메모리 영역을 관리하는 것이 가능하다.
예시적인 실시예에 있어서, 제 1 메모리 영역(3101)에 대한 최소 프로그램 단위와 제 2 메모리 영역(3102)에 대한 최소 프로그램 단위는 프로그램 방식, 셀 당 비트 수, 등에 따라 다양하게 결정될 것이다. 제 1 메모리 영역(3101)에 대한 최소 프로그램 단위는 제 2 메모리 영역(3102)에 대한 최소 프로그램 단위와 다르다.
예시적인 실시예에 있어서, 버퍼 프로그램 동작을 통해 제 1 메모리 영역(3101)에 데이터를 저장하고, 메인 프로그램 동작을 통해 제 2 메모리 영역(3102)에 데이터를 저장함으로써 메모리 제어기(3200)의 버퍼 메모리(3201)의 크기를 최소화시킬 수 있다. 다시 말해서, 버퍼 메모리(3201)에 정교한 프로그램 동작을 위한 데이터를 유지할 필요가 없다. 그러한 까닭에, 메모리 제어기(3200)의 버퍼 메모리(3201)의 크기를 최소화시킬 수 있다.
도 9a 내지 도 9d는 본 발명의 예시적인 실시예에 따른 멀티-비트 메모리 장치의 제 1 및 제 2 메모리 영역들에 대한 다양한 조합들을 설명하기 위한 도면들이다. 도면에서, "BP"는 제 1 메모리 영역(3101)에 대한 버퍼 프로그래밍을 나타내며, "MP"는 제 2 메모리 영역(3102)에 대한 메인 프로그래밍을 나타낸다.
앞서 설명된 바와 같이, 멀티-비트 메모리 장치(3100)는 제 1 메모리 영역(3101)과 제 2 메모리 영역(3102)을 포함할 것이다. 여기서, 제 1 메모리 영역(3101)과 제 2 메모리 영역(3102)는 멀티-비트 메모리 장치(3100)의 메모리 셀 어레이를 구성할 것이다. 비록 도면에는 도시되지 않았지만, 메모리 셀 어레이는 더 많은 영역들(예를 들면, 메타 영역, 예비 영역, 등)을 포함할 것이다. 메모리 셀 어레이의 메모리 영역들이 물리적으로 구분되는 것이 아니라 논리적으로 구분된다는 것은 잘 이해될 것이다. 이는 메모리 제어기(3200)의 어드레스 맵핑에 따라 영역들이 정의됨을 의미한다.
도 9a를 참조하면, 셀 당 3-비트 데이터를 저장하는 멀티-비트 메모리 장치의 경우, 제 1 메모리 영역(3101)은 1-비트 데이터를 각각 저장하는 메모리 셀들로 구성되고, 제 2 메모리 영역(3102)은 3-비트 데이터를 각각 저장하는 메모리 셀들로 구성될 수 있다. 이 경우, 버퍼 프로그래밍은 SLC 프로그램 방식에 따라 행해질 것이다. 메인 프로그래밍은 앞서 설명된 MLC 프로그램 방식에 따라 행해질 것이다.
도 9b를 참조하면, 셀 당 4-비트 데이터를 저장하는 멀티-비트 메모리 장치의 경우, 제 1 메모리 영역(3101)은 1-비트 데이터를 각각 저장하는 메모리 셀들로 구성되고, 제 2 메모리 영역(3102)은 4-비트 데이터를 각각 저장하는 메모리 셀들로 구성될 수 있다. 이 경우, 버퍼 프로그래밍은 SLC 프로그램 방식에 따라 행해질 것이다. 메인 프로그래밍은 앞서 설명된 MLC 프로그램 방식에 따라 행해질 것이다.
도 9c를 참조하면, 셀 당 3-비트 데이터를 저장하는 멀티-비트 메모리 장치의 경우, 제 1 메모리 영역(3101)은 2-비트 데이터를 각각 저장하는 메모리 셀들로 구성되고, 제 2 메모리 영역(3102)은 3-비트 데이터를 각각 저장하는 메모리 셀들로 구성될 수 있다. 이 경우, 버퍼 프로그래밍은 일반적인 또는 앞서 설명된 MLC 프로그램 방식에 따라 행해질 것이다. 메인 프로그래밍은 앞서 설명된 MLC 프로그램 방식(예를 들면, 재프로그램 방식)에 따라 행해질 것이다.
도 9d를 참조하면, 셀 당 4-비트 데이터를 저장하는 멀티-비트 메모리 장치의 경우, 제 1 메모리 영역(3101)은 2-비트 데이터를 각각 저장하는 메모리 셀들로 구성되고, 제 2 메모리 영역(3102)은 4-비트 데이터를 각각 저장하는 메모리 셀들로 구성될 수 있다. 이 경우, 버퍼 프로그래밍은 일반적인 또는 앞서 설명된 MLC 프로그램 방식에 따라 행해질 것이다. 메인 프로그래밍은 앞서 설명된 MLC 프로그램 방식(예를 들면, 재프로그램 방식)에 따라 행해질 것이다.
예시적인 실시예에 있어서, 도 9a 내지 도 9d에 도시된 제 1 및 제 2 메모리 영역들(3101, 3102)의 정의가 여기에 개시된 것에 국한되지 않음은 잘 이해될 것이다. 예를 들면, 데이터 저장 시스템에 포함되는 저장 매체가 복수의 멀티-비트 메모리 장치들로 구성되는 경우, 각 멀티-비트 메모리 장치에 제 1 및 제 2 메모리 영역들(3101, 3102)이 정의될 수 있다. 다른 예로서, 임의의 멀티-비트 메모리 장치에만 제 1 메모리 영역(101)이 정의될 수 있다. 또는, 임의의 멀티-비트 메모리 장치가 제 1 메모리 영역(3101)으로 정의될 수 있다.
도 10은 본 발명의 예시적인 실시예에 따른 컴퓨팅 시스템을 개략적으로 보여주는 블록도이다.
컴퓨팅 시스템은 마이크로프로세서(2101), 사용자 인터페이스(2201), 베이스밴드 칩셋(baseband chipset)과 같은 모뎀(2301), 메모리 제어기(2401), 그리고 저장 매체로서 불 휘발성 메모리 장치(2501)를 포함한다. 메모리 제어기(2401)와 불 휘발성 메모리 장치(2501)는 도 1에 도시된 것 실질적으로 동일하게 구성될 것이다. 즉, 메모리 제어기(2401)는 불 휘발성 메모리 장치(2501)의 메모리 블록의 프로그램-소거 회수가 기준 프로그램-소거 회수에 도달할 때 도 4, 도 5, 또는 도 6에서 설명된 메모리 관리 기법에 따라 불 휘발성 메모리 장치(2501)의 수명을 관리한다. 불 휘발성 메모리 장치(2501)에는 마이크로프로세서(2101)에 의해서 처리된/처리될 N-비트 데이터(N은 1 또는 그 보다 큰 정수)가 메모리 제어기(2401)를 통해 저장될 것이다. 컴퓨팅 시스템이 모바일 장치인 경우, 컴퓨팅 시스템의 동작 전압을 공급하기 위한 배터리(2601)가 추가적으로 제공될 것이다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템에는 응용 칩셋(application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 잘 이해될 것이다.
도 11은 본 발명의 예시적인 실시예에 따른 반도체 드라이브를 개략적으로 보여주는 블록도이다.
도 11을 참조하면, 반도체 드라이브(4000)(SSD)는 저장 매체(4100)와 제어기(4200)를 포함할 것이다. 저장 매체(4100)는 복수의 채널들을 통해 제어기(4200)와 연결될 것이다. 각 채널에는 복수의 불 휘발성 메모리들이 공통으로 연결될 것이다. 제어기(4200)는 도 1에 도시된 것과 실질적으로 동일하게 구성된다. 즉, 제어기(4200)는 각 불 휘발성 메모리 장치의 메모리 블록의 프로그램-소거 회수가 기준 프로그램-소거 회수에 도달할 때 도 4, 도 5, 또는 도 6에서 설명된 메모리 관리 기법에 따라 각 불 휘발성 메모리 장치의 수명을 관리한다.
도 12는 도 11에 도시된 반도체 드라이브를 이용한 스토리지를 개략적으로 보여주는 블록도이고, 도 13은 도 11에 도시된 반도체 드라이브를 이용한 스트리지 서버를 개략적으로 보여주는 블록도이다.
본 발명의 예시적인 실시예에 따른 반도체 드라이브(4000)는 스토리지를 구성하는 데 사용될 수 있다. 도 12에 도시된 바와 같이, 스토리지는 도 11에서 설명된 것과 실질적으로 동일하게 구성되는 복수의 반도체 드라이브들을 포함할 것이다. 본 발명의 예시적인 실시예에 따른 반도체 드라이브(4000)는 스토리지 서버를 구성하는 데 사용될 수 있다. 도 13에 도시된 바와 같이, 스토리지 서버는 도 11에서 설명된 것과 실질적으로 동일하게 구성되는 복수의 반도체 드라이브들(4000), 그리고 서버(4000A)를 포함할 것이다. 또한, 이 분야에 잘 알려진 RAID 제어기(4000B)가 스토리지 서버에 제공될 수 있음은 잘 이해될 것이다.
도 14 내지 도 16은 본 발명의 예시적인 실시예들에 따른 데이터 저장 장치가 적용되는 시스템들을 개략적으로 보여주는 도면들이다.
본 발명의 예시적인 실시예들에 따른 메모리 제어기 및 멀티-비트 메모리 장치들로 구성되는 데이터 저장 장치를 포함한 반도체 드라이브가 스토리지에 적용되는 경우, 도 14에 도시된 바와 같이, 시스템(6000)은 유선 그리고/또는 무선으로 호스트와 통신하는 스토리지(6100)를 포함할 것이다. 본 발명의 예시적인 실시예들에 따른 데이터 저장 장치를 포함한 반도체 드라이브가 스토리지 서버에 적용되는 경우, 도 15에 도시된 바와 같이, 시스템(7000)은 유선 그리고/또는 무선으로 호스트와 통신하는 스토리지 서버들(7100, 7200)을 포함할 것이다. 또한, 도 16에 도시된 바와 같이, 본 발명의 예시적인 실시예에 따른 데이터 저장 장치를 포함한 반도체 드라이브는 메일 서버(8100)에도 적용될 수 있다.
도 17은 본 발명의 실시예에 따른 메모리 카드(memory card)를 개략적으로 보여주는 블록도이다.
메모리 카드는 예를 들어, MMC 카드, SD카드, 멀티유즈(multiuse) 카드, 마이크로 SD카드, 메모리 스틱, 컴팩트 SD 카드, ID 카드, PCMCIA 카드, SSD카드, 칩카드(chipcard), 스마트카드(smartcard), USB카드 등일 수 있다.
도 17을 참조하면, 메모리 카드는 외부와의 인터페이스를 수행하는 인터페이스부(9221), 버퍼 메모리를 갖고 메모리 카드의 동작을 제어하는 제어기(9222), 하나 또는 그 보다 많은 불 휘발성 메모리 장치들(9207)을 포함할 것이다. 제어기(9222)는 프로세서로서, 불 휘발성 메모리 장치(9207)의 라이트 동작 및 리드 동작을 제어할 수 있다. 구체적으로, 컨트롤러(9222)는 데이터 버스(DATA)와 어드레스 버스(ADDRESS)를 통해서 불 휘발성 메모리 장치(9207) 및 인터페이스부(9221)와 커플링되어 있다. 제어기(9222)와 불 휘발성 메모리(9207)는 도 1에서 설명된 메모리 제어기와 불 휘발성 메모리 장치에 대응할 것이다. 제어기(9222)는 불 휘발성 메모리 장치(9207)의 메모리 블록의 프로그램-소거 회수가 기준 프로그램-소거 회수에 도달할 때 도 4, 도 5, 또는 도 6에서 설명된 메모리 관리 기법에 따라 불 휘발성 메모리 장치(2501)의 수명을 관리한다.
도 18은 본 발명의 실시예에 따른 디지털 스틸 카메라(digital still camera)를 개략적으로 보여주는 블록도이다.
도 18을 참조하면, 디지털 스틸 카메라는 바디(9301), 슬롯(9302), 렌즈(9303), 디스플레이부(9308), 셔터 버튼(9312), 스트로브(strobe)(9318) 등을 포함한다. 특히, 슬롯(9308)에는 메모리 카드(9331)가 삽입될 수 있고, 메모리 카드(9331)는 도 1에서 설명된 설명된 메모리 제어기 및 불 휘발성 메모리 장치를 포함할 것이다. 메모리 카드(9331) 내에 포함된 메모리 제어기는 불 휘발성 메모리 장치의 메모리 블록의 프로그램-소거 회수가 기준 프로그램-소거 회수에 도달할 때 도 4, 도 5, 또는 도 6에서 설명된 메모리 관리 기법에 따라 불 휘발성 메모리 장치(2501)의 수명을 관리한다.
메모리 카드(9331)가 접촉형(contact type)인 경우, 메모리 카드(9331)가 슬롯(9308)에 삽입될 때 메모리 카드(9331)와 회로 기판 상의 특정 전기 회로가 전기적으로 접촉하게 된다. 메모리 카드(9331)가 비접촉형(non-contact type)인 경우, 무선 신호를 통해서 메모리 카드(9331)가 액세스될 것이다.
도 19는 도 18의 메모리 카드가 사용되는 다양한 시스템을 설명하는 예시적 도면이다.
도 19를 참조하면, 메모리 카드(9331)는 비디오 카메라(VC), 텔레비전(TV), 오디오 장치(AD), 게임장치(GM), 전자 음악 장치(EMD), 휴대폰(HP), 컴퓨터(CP), PDA(Personal Digital Assistant), 보이스 레코더(voice recorder)(VR), PC 카드(PCC), 등에 사용될 수 있다.
본 발명의 예시적인 실시예에 있어서, 메모리 셀들은 가변 저항 메모리 셀로 구성될 수 있으며, 예시적인 가변 저항 메모리 셀 및 그것을 포함한 메모리 장치가 미국특허번호 제7529124호에 게재되어 있으며, 이 출원의 레퍼런스로 포함될 것이다.
본 발명의 다른 예시적인 실시예에 있어서, 메모리 셀들은 전하 저장층을 갖는 다양한 셀 구조들 중 하나를 이용하여 구현될 수 있다. 전하 저장층을 갖는 셀 구조는 전하 트랩층을 이용하는 전하 트랩 플래시 구조, 어레이들이 다층으로 적층되는 스택 플래시 구조, 소오스-드레인이 없는 플래시 구조, 핀-타입 플래시 구조, 등을 포함할 것이다.
전하 저장층으로서 전하 트랩 플래시 구조를 갖는 메모리 장치가 미국특허 제6858906호, 미국공개특허 제2004-0169238호, 그리고 미국공개특허 제2006-0180851호에 각각 게재되어 있으며, 이 출원의 레퍼런스로 포함될 것이다. 소오스/드레인이 없는 플래시 구조는 대한민국특허 제673020호에 게재되어 있으며, 이 출원의 레퍼런스로 포함될 것이다.
본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 제어기는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP), 등과 같은 패키지들을 이용하여 실장될 수 있다.
본 발명의 범위 또는 기술적 사상을 벗어나지 않고 본 발명의 구조가 다양하게 수정되거나 변경될 수 있음은 이 분야에 숙련된 자들에게 자명하다. 상술한 내용을 고려하여 볼 때, 만약 본 발명의 수정 및 변경이 아래의 청구항들 및 동등물의 범주 내에 속한다면, 본 발명이 이 발명의 변경 및 수정을 포함하는 것으로 여겨진다.
1000: 불 휘발성 메모리 장치
2000: 메모리 제어기

Claims (15)

  1. 불 휘발성 메모리 장치와; 그리고 상기 불 휘발성 메모리 장치를 제어하는 메모리 제어기를 포함하는 메모리 시스템의 메모리 관리 방법에 있어서:
    상기 불 휘발성 메모리 장치의 메모리 블록의 프로그램-소거 회수가 기준 값에 도달하였는 지의 여부를 판별하고,
    상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달하지 않은 것으로 판별되면, 제 1 메모리 관리 기법에 따라 상기 메모리 블록의 수명을 관리하고,
    상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 제 1 메모리 관리 기법과 다른 제 2 메모리 관리 기법에 따라 상기 불 휘발성 메모리 장치의 수명을 관리하는 것을 포함하는 것을 특징으로 하는 메모리 관리 방법.
  2. 제 1 항에 있어서,
    상기 제 1 메모리 관리 기법은 상기 불 휘발성 메모리 장치의 메모리 블록들의 수명이 블록 단위로 관리되는 기법이고, 상기 제 2 메모리 관리 기법은 상기 불 휘발성 메모리 장치의 메모리 블록들의 수명이 워드 라인 단위로 관리되는 기법인 것을 특징으로 하는 메모리 관리 방법.
  3. 제 2 항에 있어서,
    상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 메모리 블록의 양 가장 자리들에 각각 위치한 적어도 2개의 워드 라인들이 페이드 아웃되는 것을 특징으로 하는 메모리 관리 방법.
  4. 제 3 항에 있어서,
    상기 메모리 블록의 프로그램-소거 회수가 상기 기준 값과 다른 제 2 기준 값에 도달하였는 지의 여부를 판별하는 것을 더 포함하는 것을 특징으로 하는 메모리 관리 방법.
  5. 제 4 항에 있어서,
    상기 메모리 블록의 프로그램-소거 회수가 상기 제 2 기준 값에 도달한 것으로 판별될 때, 상기 페이드 아웃된 적어도 2개의 워드 라인들을 제외한 상기 메모리 블록의 나머지 워드 라인들 중 양 가장 자리들에 각각 위치한 적어도 2개의 워드 라인들이 페이드 아웃되는 것을 특징으로 하는 메모리 관리 방법.
  6. 제 3 항에 있어서,
    상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 메모리 블록의 워드 라인들 중 홀수 워드 라인들이 페이드 아웃되는 것을 특징으로 하는 메모리 관리 방법.
  7. 제 6 항에 있어서,
    상기 메모리 블록의 프로그램-소거 회수가 상기 기준 값과 다른 제 2 기준 값에 도달하였는 지의 여부를 판별하는 것을 더 포함하는 것을 특징으로 하는 메모리 관리 방법.
  8. 제 2 항에 있어서,
    상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 메모리 블록의 워드 라인들 중 짝수 워드 라인들이 페이드 아웃되며, 상기 홀수 워드 라인들의 메모리 셀들이 데이터를 저장하는 데 사용되는 것을 특징으로 하는 메모리 관리 방법.
  9. 제 3 항에 있어서,
    상기 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별되면, 상기 메모리 블록의 양 가장 자리들에 각각 위치한 적어도 2개의 워드 라인들이 페이드 아웃되고, 상기 페이드 아웃된 적어도 2개의 워드 라인들은 상기 메모리 블록의 더미 워드 라인들로 대체되는 것을 특징으로 하는 메모리 관리 방법.
  10. 제 2 항에 있어서,
    상기 불 휘발성 메모리 장치의 수명이 상기 제 2 메모리 관리 기법에 따라 관리될 때, 상기 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 상기 불 휘발성 메모리 장치로 전달되는 어드레스들은 부분적으로 불연속적인 것을 특징으로 하는 메모리 관리 방법.
  11. 제 2 항에 있어서,
    상기 불 휘발성 메모리 장치의 수명이 상기 제 1 메모리 관리 기법에 따라 관리될 때, 상기 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 상기 불 휘발성 메모리 장치로 전달되는 어드레스들은 연속적인 것을 특징으로 하는 메모리 관리 방법.
  12. 복수의 불 휘발성 메모리 장치들을 포함하고, 데이터 정보를 저장하는 저장 매체와; 그리고
    버퍼 메모리를 포함하고, 상기 복수의 불 휘발성 메모리 장치들을 제어하도록 구성된 메모리 제어기를 포함하며,
    상기 메모리 제어기는 상기 각 불 휘발성 메모리 장치의 각 메모리 블록의 프로그램-소거 회수가 기준 값에 도달하였는 지의 여부에 따라 제 1 메모리 관리 기법 및 제 2 메모리 관리 기법 중 어느 하나에 따라 상기 각 불 휘발성 메모리 장치의 수명을 관리하며,
    상기 각 불 휘발성 메모리 장치의 수명이 상기 제 2 메모리 관리 기법에 따라 관리될 때, 상기 각 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 상기 각 불 휘발성 메모리 장치로 전달되는 어드레스들은 부분적으로 불연속적인 메모리 시스템.
  13. 제 12 항에 있어서,
    상기 각 불 휘발성 메모리 장치의 수명이 상기 제 1 메모리 관리 기법에 따라 관리될 때, 상기 각 불 휘발성 메모리 장치의 적어도 2개의 메모리 블록들에 데이터가 순차적으로 저장되는 쓰기 동작시 상기 각 불 휘발성 메모리 장치로 전달되는 어드레스들은 연속적인 메모리 시스템.
  14. 제 12 항에 있어서,
    상기 제 1 메모리 관리 기법은 상기 각 불 휘발성 메모리 장치의 메모리 블록들의 수명이 블록 단위로 관리되는 기법이고, 상기 제 2 메모리 관리 기법은 상기 각 불 휘발성 메모리 장치의 메모리 블록들의 수명이 워드 라인 단위로 관리되는 기법인 메모리 시스템.
  15. 제 12 항에 있어서,
    상기 각 불 휘발성 메모리 장치의 각 메모리 블록의 프로그램-소거 회수가 기준 값에 도달한 것으로 판별될 때, 상기 메모리 제어기는 상기 각 메모리 블록의 양 가장 자리들에 각각 위치한 적어도 2개의 워드 라인들이 페이드 아웃되도록 또는 상기 각 메모리 블록의 워드 라인들 중 홀수 또는 짝수 워드 라인들이 페이드 아웃되도록 상기 각 불 휘발성 메모리 장치를 제어하는 메모리 시스템.
KR1020110114280A 2011-11-04 2011-11-04 메모리 시스템 및 그것의 메모리 관리 기법 KR20130049330A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110114280A KR20130049330A (ko) 2011-11-04 2011-11-04 메모리 시스템 및 그것의 메모리 관리 기법
US13/553,845 US9189384B2 (en) 2011-11-04 2012-07-20 Memory system and memory managing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110114280A KR20130049330A (ko) 2011-11-04 2011-11-04 메모리 시스템 및 그것의 메모리 관리 기법

Publications (1)

Publication Number Publication Date
KR20130049330A true KR20130049330A (ko) 2013-05-14

Family

ID=48224530

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110114280A KR20130049330A (ko) 2011-11-04 2011-11-04 메모리 시스템 및 그것의 메모리 관리 기법

Country Status (2)

Country Link
US (1) US9189384B2 (ko)
KR (1) KR20130049330A (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102272228B1 (ko) * 2014-05-13 2021-07-06 삼성전자주식회사 불휘발성 메모리 장치, 그것을 포함하는 저장 장치 및 그것의 동작 방법
TWI554884B (zh) * 2015-07-21 2016-10-21 群聯電子股份有限公司 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置
KR20200142219A (ko) 2019-06-12 2020-12-22 삼성전자주식회사 전자 장치 및 그의 저장 공간 이용 방법
US11017870B1 (en) * 2019-12-23 2021-05-25 Micron Technology, Inc. Select gate maintenance in a memory sub-system
KR20220072242A (ko) * 2020-11-25 2022-06-02 삼성전자주식회사 비휘발성 메모리 장치의 데이터 기입 방법 및 이를 수행하는 비휘발성 메모리 장치
KR20220138547A (ko) 2021-04-05 2022-10-13 삼성전자주식회사 메모리 장치

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2430522B (en) 2004-05-11 2008-02-13 Spansion Llc Semiconductor device and writing method
KR100763353B1 (ko) 2006-04-26 2007-10-04 삼성전자주식회사 인접하는 메모리셀과의 커플링 노이즈를 저감시키는불휘발성 반도체 메모리 장치
KR100822804B1 (ko) 2006-10-20 2008-04-17 삼성전자주식회사 커플링 영향을 차단할 수 있는 플래시 메모리 장치 및 그프로그램 방법
US7804718B2 (en) 2007-03-07 2010-09-28 Mosaid Technologies Incorporated Partial block erase architecture for flash memory
KR101454817B1 (ko) * 2008-01-11 2014-10-30 삼성전자주식회사 반도체 메모리 장치 및 그것의 마모도 관리 방법
TW201007451A (en) 2008-08-12 2010-02-16 Phison Electronics Corp Block management method for flash memory and storage system and controller using the same
TWI409819B (zh) * 2009-03-03 2013-09-21 Silicon Motion Inc 平均地使用一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器
TWI407441B (zh) * 2009-03-20 2013-09-01 Phison Electronics Corp 快閃記憶體寫入方法及使用此方法的儲存系統與控制器

Also Published As

Publication number Publication date
US20130117500A1 (en) 2013-05-09
US9189384B2 (en) 2015-11-17

Similar Documents

Publication Publication Date Title
US9672104B2 (en) Memory system and read reclaim method thereof
JP6072442B2 (ja) メモリシステム及びそれの動作方法
JP5660615B2 (ja) マルチビットメモリ装置を含んだデータ格納システム及びそれの動作方法
KR101832934B1 (ko) 비휘발성 메모리 장치, 그것을 포함하는 메모리 시스템, 그것의 블록 관리 방법, 프로그램 방법 및 소거 방법
US8665643B2 (en) Non-volatile memory device and read method thereof
KR102174293B1 (ko) 확률론적 데이터 구조에 기초한 메모리 내의 사전적인 교정 조치
US9183938B2 (en) Nonvolatile memory device and method of programming nonvolatile memory device
KR101938659B1 (ko) 불 휘발성 메모리 장치 및 그것을 포함한 메모리 시스템
KR102068342B1 (ko) 메모리 제어기 및 그것을 포함하는 메모리 시스템
US8621266B2 (en) Nonvolatile memory system and related method of performing erase refresh operation
KR101574033B1 (ko) 메모리 디바이스들 및 메모리 디바이스를 위한 구성 방법들
KR101923157B1 (ko) 메모리 시스템 및 그것의 프로그램 방법
KR20120076787A (ko) 비휘발성 메모리 장치의 프로그램 방법
KR20130066277A (ko) 메모리 시스템 및 그것의 동작 방법
US8817540B2 (en) Nonvolatile memory device and program method thereof
US9021338B2 (en) Memory system and data storage method
US9189384B2 (en) Memory system and memory managing method thereof
KR20120138895A (ko) 멀티-레벨 메모리 장치를 포함한 데이터 저장 시스템 및 그것의 동작 방법
KR101772577B1 (ko) 멀티-비트 메모리 장치를 포함한 데이터 저장 시스템 및 그것의 동작 방법
US20130223156A1 (en) Nonvolatile memory device and memory system including the same

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid