KR20070031594A - 프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법 - Google Patents

프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법 Download PDF

Info

Publication number
KR20070031594A
KR20070031594A KR1020050086201A KR20050086201A KR20070031594A KR 20070031594 A KR20070031594 A KR 20070031594A KR 1020050086201 A KR1020050086201 A KR 1020050086201A KR 20050086201 A KR20050086201 A KR 20050086201A KR 20070031594 A KR20070031594 A KR 20070031594A
Authority
KR
South Korea
Prior art keywords
voltage
word line
level cells
program
selected word
Prior art date
Application number
KR1020050086201A
Other languages
English (en)
Other versions
KR100705220B1 (ko
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 KR1020050086201A priority Critical patent/KR100705220B1/ko
Priority to US11/275,279 priority patent/US7539057B2/en
Publication of KR20070031594A publication Critical patent/KR20070031594A/ko
Application granted granted Critical
Publication of KR100705220B1 publication Critical patent/KR100705220B1/ko
Priority to US12/425,025 priority patent/US7990771B2/en
Priority to US12/424,984 priority patent/US7978532B2/en

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/10Programming or data input circuits
    • G11C16/12Programming voltage switching circuits
    • 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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching 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
    • 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
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • 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/26Sensing or reading circuits; Data output circuits
    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure of nonvolatile memory cells
    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • 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/562Multilevel memory programming aspects
    • G11C2211/5621Multilevel programming verification
    • 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/5642Multilevel memory with buffers, latches, registers at input or output

Abstract

본 발명은 프로그램 속도를 증가시키기 위한 멀티 레벨 셀을 가지는 플래시 메모리 장치의 소거 및 프로그램 방법에 관한 것으로, 본 발명에 따른 소거 방법은 멀티 레벨 셀들의 문턱 전압들이 분포되는 전압 범위가 감소하도록 프리 프로그램하므로, 멀티 레벨 셀들의 소거시 패일(fail) 발생 비율을 감소시킬 수 있고, 멀티 레벨 셀들의 문턱 전압 분포를 개선시켜, 추후에 실행될 프로그램 동작에서 전체 프로그램 시간이 감소될 수 있다.
프리 프로그램, 문턱 전압, 전압 범위, 프로그램 사이클, 스텝 전압

Description

프로그램 속도를 증가시키기 위한 플래시 메모리 장치의 소거 및 프로그램 방법{Erasing and Programming methods of a flash memory device for increasing program speed of the flash memory device}
도 1은 종래의 멀티 레벨 셀을 가지는 플래시 메모리 장치의 소거 과정에 따른 멀티 레벨 셀들의 문턱 전압의 변화를 나타내는 도면이다.
도 2a는 종래의 멀티 레벨 셀을 가지는 플래시 메모리 장치의 프로그램 과정시 워드 라인에 공급되는 전압의 변화를 나타내는 도면이다.
도 2b는 도 2a에 도시된 검증 전압들과 멀티 레벨 셀들의 문턱 전압의 관계를 나타내는 도면이다.
도 3은 본 발명의 일실시예에 따른 소거 과정 및 프로그램 과정을 설명하기 위한 페이지 버퍼 및 메모리 셀 블록을 도시한 도면이다.
도 4는 본 발명의 일실시예에 따른 소거 과정을 나타내는 흐름도이다.
도 5는 도 4에 도시된 처리 과정(401)의 상세한 흐름도이다.
도 6은 도 5에 도시된 처리 과정(420)의 일례를 나타내는 상세한 흐름도이다.
도 7은 도 6에 도시된 처리 과정(421)의 상세한 흐름도이다.
도 8은 도 5에 도시된 처리 과정(420)의 다른 일례를 나타내는 상세한 흐름 도이다.
도 9 및 도 10은 본 발명의 일실시예에 따른 소거 과정에 따라 변화되는 멀티 레벨 셀들의 문턱 전압 분포를 나타내는 그래프들을 도시한 도면이다.
도 11은 도 4에 도시된 처리 과정(403)의 상세한 흐름도이다.
도 12는 본 발명의 다른 실시예에 따른 소거 과정을 나타내는 흐름도이다.
도 13은 도 12에 도시된 처리 과정(501)의 상세한 흐름도이다.
도 14는 도 13에 도시된 처리 과정(520)의 상세한 흐름도이다.
도 15는 도 12에 도시된 처리 과정(503)의 상세한 흐름도이다.
도 16은 본 발명의 다른 실시예에 따른 소거 과정에 따라 변화되는 멀티 레벨 셀들의 문턱 전압 분포를 나타내는 그래프들을 도시한 도면이다.
도 17은 본 발명의 제1 실시예에 따른 프로그램 과정을 나타내는 흐름도이다.
도 18은 도 17에 도시된 처리 과정(603)의 상세한 흐름도이다.
도 19는 도 17에 도시된 처리 과정(606)의 상세한 흐름도이다.
도 20은 도 19에 도시된 처리 과정(620)의 상세한 흐름도이다.
도 21은 도 19에 도시된 처리 과정(630)의 상세한 흐름도이다.
도 22는 도 19에 도시된 처리 과정(640)의 상세한 흐름도이다.
도 23은 본 발명의 제1 실시예에 따른 프로그램 과정에서 워드 라인에 공급되는 전압의 변화를 나타내는 도면이다.
도 24는 본 발명의 제2 실시예에 따른 프로그램 과정을 나타내는 흐름도이 다.
도 25는 본 발명의 제2 실시예에 따른 프로그램 과정에서 워드 라인에 공급되는 전압의 변화를 나타내는 도면이다.
도 26은 도 23 및 도 25에 도시된 검증 전압들과 멀티 레벨 셀들의 문턱 전압의 관계를 나타내는 도면이다.
도 27은 본 발명의 제3 실시예에 따른 프로그램 과정을 나타내는 흐름도이다.
도 28은 본 발명의 제3 실시예에 따른 프로그램 과정에서 워드 라인에 공급되는 전압의 변화를 나타내는 도면이다.
도 29는 본 발명의 제4 실시예에 따른 프로그램 과정을 나타내는 흐름도이다.
도 30은 본 발명의 제4 실시예에 따른 프로그램 과정에서 워드 라인에 공급되는 전압의 변화를 나타내는 도면이다.
도 31은 도 28 및 도 30에 도시된 검증 전압들과 멀티 레벨 셀들의 문턱 전압의 관계를 나타내는 도면이다.
도 32는 본 발명의 제5 실시예에 따른 프로그램 과정을 나타내는 흐름도이다.
도 33은 도 31에 도시된 처리 과정(820)의 상세한 흐름도이다.
도 34는 도 31에 도시된 처리 과정(830)의 상세한 흐름도이다.
도 35는 도 31에 도시된 처리 과정(840)의 상세한 흐름도이다.
도 36은 본 발명의 제5 실시예에 따른 프로그램 과정에서 워드 라인에 공급되는 전압의 변화를 나타내는 도면이다.
〈도면의 주요 부분에 대한 부호의 설명〉
100 : 메모리 셀 블록 PB∼PBK : 페이지 버퍼
210 : 비트 라인 선택 회로 220 : 상위 비트 레지스터
230 : 하위 비트 레지스터 240 : 데이터 입력 회로
250 : 제1 검증 회로 260 : 제2 검증 회로
270 : 데이터 전송 회로 280 : 데이터 출력 회로
290 : 프리차지 회로
본 발명은 플래시 메모리 장치에 관한 것으로서, 특히, 플래시 메모리 장치의 소거 방법 및 프로그램 방법에 관한 것이다.
일반적으로, 플래시 메모리 장치의 메모리 셀은 저장되는 데이터의 비트 수에 따라 싱글 레벨 셀(Single Level Cell : SLC)과 멀티 레벨 셀(Multi Level Cell : MLC)로 구분될 수 있다. 싱글 레벨 셀은 "1" 또는 "0"의 로직 값을 가지는 1비트의 데이터가 저장될 수 있고, 멀티 레벨 셀은 "11", "10", "01", "00" 중 어느 하나의 로직 값을 가지는 2비트의 데이터가 저장될 수 있다. 따라서 멀티 레벨 셀을 포함하는 플래시 메모리 장치는 대용량의 데이터 저장 공간을 필요로 하는 고집적 반도체 장치에서 주로 사용되고 있다. 멀티 레벨 셀들을 포함하는 플래시 메모리 장치의 소거 동작은 통상적으로 하나의 메모리 셀 블록 단위로 실행되며, 프리 프로그램(preprogram) 과정, 소거(erase) 과정, 및 포스트 프로그램(post program) 과정이 순차적으로 실행됨으로써 이루어진다. 도 1을 참고하여 멀티 레벨 셀들을 포함하는 플래시 메모리 장치의 소거 동작 과정을 간략하게 설명하면 다음과 같다. 도 1은 종래의 멀티 레벨 셀을 가지는 플래시 메모리 장치의 소거 과정에 따른 멀티 레벨 셀들의 문턱 전압의 변화를 나타내는 도면이다. 먼저, 도 1에서, (a)의 그래프들(G11∼G14)과 같이 분포된 문턱 전압을 가지는 멀티 레벨 셀들의 소거 동작 과정을 설명한다. 상기 그래프(G11)는 데이터 "11"이, 상기 그래프(G12)는 데이터 "10"이, 상기 그래프(G13)는 데이터 "00"이, 상기 그래프(G14)는 데이터 "01"이 각각 저장된 멀티 레벨 셀들의 문턱 전압 분포를 나타낸다. 상기 그래프들(G11∼G14)은 전압들(V1 및 V2)로 정의되는 전압 범위(W1) 내에 존재한다(즉, 멀티 레벨 셀들의 문턱 전압들이 상기 전압 범위(W1) 내에 분포된다).
상기 그래프들(G11∼G14)로 표시된 것과 같이 분포된 문턱 전압들을 가지는 상기 멀티 레벨 셀들이 프리 프로그램되면, 상기 멀티 레벨 셀들의 문턱 전압은 (b)의 그래프들(G21∼G24)로 표시된 것과 같이 전압들(V3 및 V4)로 정의되는 전압 범위(W2) 내에 분포하게 된다. 상기 멀티 레벨 셀들의 프리 프로그램 과정은 페이지 버퍼에 의해 실행되지 않고, 센싱 노드를 그라운드 전압으로 직접 디스차지하는 회로에 의해 메모리 셀 블록 단위로 실행된다. 여기에서, 상기 전압 범위(W2)의 폭은 상기 전압 범위(W1)의 폭보다 더 작다. 그 이유는, 문턱 전압이 높은 멀티 레벨 셀들(즉, 그래프(G14)와 같이 분포된 멀티 레벨 셀들)보다 문턱 전압이 낮은 멀티 레벨 셀들(즉, 그래프(G11)와 같이 분포된 멀티 레벨 셀들)이 더 많이 프로그램되어, 상기 그래프들(G21∼G24)과 같이, 상기 멀티 레벨 셀들의 문턱 전압들간의 차가 작아지기 때문이다.
이 후, 그래프들(G21∼G24)로 표시된 것과 같이 분포된 문턱 전압들을 가지는 상기 멀티 레벨 셀들이 소거되면, 상기 멀티 레벨 셀들의 문턱 전압은 (c)의 그래프들(G31∼G34)로 표시된 것과 같이 전압들(V5 및 V6)로 정의되는 전압 범위(W3) 내에 분포하게 된다. 다음으로, 상기 멀티 레벨 셀들이 지나치게 소거되는(over erase) 것을 방지하게 위해, 상기 멀티 레벨 셀들이 포스트 프로그램되면, 상기 멀티 레벨 셀들의 문턱 전압은 (d)의 그래프들(G41∼G44)로 표시된 것과 같이 전압들(V7 및 V8)로 정의되는 전압 범위(W4) 내에 분포하게 된다. 여기에서, 상기 멀티 레벨 셀들의 문턱 전압들은 상기 전압(V8)보다 작아야 한다. 따라서 상기 전압(V8)은 상기 포스트 프로그램 과정 이후에 실시되는 검증(verify) 과정에서 워드 라인에 공급되는 검증 전압으로 설정된다. 하지만, 상술한 종래의 플래시 메모리 장치의 소거 과정에서는, 상기 멀티 레벨 셀들의 문턱 전압들이 분포되는 전압 범위들(W2∼W4)이 비교적 넓기 때문에, 상기 소거 과정 이후, 상기 전압(V8)과 같거나, 또는 더 큰 문턱 전압을 가지는 멀티 레벨 셀들이 존재할 수 있다. 결국, 종래의 플래시 메모리 장치의 소거 방법에 따르면 멀티 레벨 셀들의 문턱 전압들이 비교적 넓게 분포되기 때문에, 멀티 레벨 셀들의 소거 과정에서 패일(fail)이 발생하는 비율이 증가하는 문제점이 있다. 또한, 종래의 플래시 메모리 장치의 소거 방법에 따 르면, 멀티 레벨 셀들이 비교적 넓게 분포된 문턱 전압들을 갖기 때문에(즉, 양호한 문턱 분포를 갖지 않기 때문에), 추후에 실행되는 프로그램 과정에서 전체 프로그램 시간이 증가되는 문제점이 있다.
한편, 도 2를 참고하여 멀티 레벨 셀들을 포함하는 플래시 메모리 장치의 프로그램 동작 과정을 간략하게 설명하면 다음과 같다. 도 2는 종래의 멀티 레벨 셀을 가지는 플래시 메모리 장치의 프로그램 과정시 워드 라인에 공급되는 전압의 변화를 나타내는 도면이다. 도 2에서는 ISPP(incremental step pulse programming) 방식을 이용한 플래시 메모리 장치의 프로그램 과정이 진행됨에 따라 변화되는 워드 라인의 전압이 도시되어 있다. 도 2a에서 참조되는 것과 같이, 워드 라인의 전압은 프로그램 전압(Vpgm1)을 시작 전압으로 하여, 프로그램 사이클(cycle) 수가 증가될 때마다 스텝 전압(Vs) 만큼씩 증가한다. 좀 더 상세하게는, 프로그램 구간(PGM1)에서, 워드 라인에는 시간(P1) 동안 프로그램 전압(Vpgm1∼VpgmJ 중 하나)(J는 정수)이 공급되고, 시간(F1) 동안 검증 전압(Vver1)이 공급된다. 상기 검증 전압(Vver1)은 도 2b에서 참조되는 것과 같이, 데이터 "10"이 저장된 멀티 레벨 셀의 문턱 전압보다 작다. 또, 프로그램 구간(PGM2)에서, 상기 워드 라인에는 시간(P2) 동안 프로그램 전압(Vpgm(J+1)∼VpgmK 중 하나)(K는 정수)이 공급되고, 시간(R2) 동안 검증 전압(Vver2)이 공급된다. 상기 검증 전압(Vver2)은 도 2b에서 참조되는 것과 같이, 데이터 "00"이 저장된 멀티 레벨 셀의 문턱 전압보다 작다. 다음으로 프로그램 구간(PGM3)에서, 상기 워드 라인에는 시간(P3) 동안 프로그램 전압(Vpgm(K+1)∼VpgmL 중 하나)(L은 정수)이 공급되고, 시간(R3) 동안 검증 전압 (Vver3)이 공급된다. 상기 검증 전압(Vver3)은 도 2b에서 참조되는 것과 같이, 데이터 "01"이 저장된 멀티 레벨 셀의 문턱 전압보다 작다. 여기에서, 상기 프로그램 전압들(Vpgm1∼VpgmL)의 관계는 아래의 수학식으로 표현될 수 있다.
Figure 112005051671650-PAT00001
상기 [수학식 1]에서 참조되는 것과 같이, 종래의 ISPP 방식에 따른 프로그램 과정에서는 상기 검증 전압(Vver1∼Vver3 중 하나)보다 작은 문턱 전압을 가지는 멀티 레벨 셀들을 프로그램하기 위해, 상기 워드 라인에 반복적으로 상기 스텝 전압(Vs)만큼 점차 증가하는 프로그램 전압(또는 프로그램 펄스(pulse))이 공급된다. 결국, 프로그램되는 속도가 느린 셀들(즉, 슬로우(slow) 셀들)이 많을수록 프로그램 전압이 워드 라인에 공급되는 횟수(즉, 프로그램 사이클 수)가 증가한다. 이처럼 프로그램 사이클 수가 증가하면 전체 프로그램 시간이 증가하게 되는 문제 점이 있다. 이러한 문제점은 싱글 레벨 셀들을 포함하는 플래시 메모리 장치에서도 동일하게 존재하는 것이다.
따라서, 본 발명이 이루고자 하는 기술적 과제는, 멀티 레벨 셀들의 문턱 전압들이 분포되는 전압 범위가 감소하도록 프리 프로그램함으로써, 멀티 레벨 셀들의 소거시 패일(fail) 발생 비율을 감소시키고, 멀티 레벨 셀들의 문턱 전압 분포를 개선시켜, 추후에 실행될 프로그램 동작에서 전체 프로그램 시간이 감소될 수 있도록 하는 플래시 메모리 장치의 소거 방법을 제공하는 데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는, 프로그램 속도가 느린 멀티 레벨 셀들 또는 싱글 레벨 셀들만을 미리 선별하여 프로그램한 후, ISPP 방식의 프로그램 과정을 실행함으로써, 전체 프로그램 시간을 줄일 수 있는 플래시 메모리 장치의 프로그램 방법을 제공하는 데 있다.
본 발명이 이루고자 하는 또 다른 기술적 과제는, ISPP 방식의 프로그램 과정에서 멀티 레벨 셀들의 문턱 전압들이 설정된 검증 전압으로 되기 전과 이후의 스텝 전압(즉, 프로그램 전압의 증가 폭)을 다르게 설정함으로써, 전체 프로그램 시간을 줄일 수 있는 플래시 메모리 장치의 프로그램 방법을 제공하는 데 있다.
상기한 기술적 과제를 달성하기 위한 본 발명에 따른 플래시 메모리 장치의 소거 방법은, 워드 라인들과 비트 라인들을 공유하는 복수의 멀티 레벨 셀들을 포함하는 플래시 메모리 장치의 소거 방법에 있어서, 복수의 멀티 레벨 셀들의 문턱 전압들이 분포되는 범위가 감소하도록 복수의 멀티 레벨 셀들 중 일부를 프리 프로그램하는 단계; 복수의 멀티 레벨 셀들을 소거하는 단계; 및 복수의 멀티 레벨 셀들이 정상적으로 소거되었는지의 여부를 검증하는 단계를 포함하는 것을 특징으로 한다.
상기한 다른 기술적 과제를 달성하기 위한 본 발명의 일면에 따른 플래시 메모리 장치의 프로그램 방법은, 워드 라인들과 비트 라인들을 공유하는 복수의 메모리 셀들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서, 워드 라인들 중 하나를 선택하는 단계; 선택된 워드 라인에 시작 프로그램 전압을 공급하여, 복수의 메모리 셀들 중 선택된 워드 라인에 연결된 메모리 셀들을 프로그램하는 단계; 선택된 워드 라인에 연결된 메모리 셀들 중에서, 설정된 전압보다 작은 문턱 전압들을 각각 가지는 메모리 셀들을 선택하는 단계; 선택된 워드 라인에 예비 프로그램 전압을 공급하여 선택된 메모리 셀들을 프로그램하는 단계; 선택된 메모리 셀들이 프로그램될 때, 선택된 메모리 셀들을 제외한 나머지 메모리 셀들을 프로그램 금지시키는 단계; 및 시작 프로그램 전압으로부터 스텝 전압 비율로 점차 증가되는 프로그램 전압을 선택된 워드 라인에 공급하면서, 선택된 워드 라인에 연결된 메모리 셀들을 추가로 프로그램하는 단계를포함하는 것을 특징으로 한다.
상기한 다른 기술적 과제를 달성하기 위한 본 발명의 다른 일면에 따른 플래시 메모리 장치의 프로그램 방법은, 워드 라인들과 비트 라인들을 공유하는 복수의 메모리 셀들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서, 워드 라인들 중 하나를 선택하는 단계; 제1 내지 제P(P는 정수) 프로그램 사이클들 각각에 대해, 선택된 워드 라인에 스텝 전압 비율로 점차 증가되는 시작 프로그램 전압을 공급하여, 선택된 워드 라인에 연결된 메모리 셀들을 프로그램하는 단계; 선택된 워드 라인에 연결된 메모리 셀들 중에서, 설정된 전압보다 작은 문턱 전압들을 각각 가지는 메모리 셀들을 선택하는 단계; 선택된 워드 라인에 예비 프로그램 전압을 공급하여 선택된 메모리 셀들을 프로그램하는 단계; 선택된 메모리 셀들이 프로그램될 때, 선택된 메모리 셀들을 제외한 나머지 메모리 셀들을 프로그램 금지시키는 단계; 및 메모리 셀들의 프로그램 단계에서 최종적으로 증가된 시작 프로그램 전압으로부터 스텝 전압 비율로 점차 증가되는 프로그램 전압을 선택된 워드 라인에 공급하면서, 선택된 워드 라인에 연결된 메모리 셀들을 추가로 프로그램하는 단계를 포함하는 것을 특징으로 한다.
상기한 또 다른 기술적 과제를 달성하기 위한 본 발명에 따른 플래시 메모리 장치의 프로그램 방법은, 워드 라인들과 비트 라인들을 공유하는 복수의 멀티 레벨 셀들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서, 워드 라인들 중 하나를 선택하는 단계; 선택된 워드 라인에 시작 프로그램 전압으로부터 제1 스텝 전압 비율로 점차 증가되는 제1 프로그램 전압을 공급하여, 선택된 워드 라인에 연결된 멀티 레벨 셀들을 제1 프로그램하는 단계; 및 제1 프로그램 단계에서 최종적으로 증가된 제1 프로그램 전압으로부터 제2 스텝 전압 비율로 점차 증가되는 제2 프로그램 전압을 선택된 워드 라인에 공급하여, 선택된 워드 라인에 연결된 멀티 레벨 셀들을 제2 프로그램하는 단계를 포함하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명하기로 한 다. 그러나, 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예는 본 발명의 개시가 완전하도록하며 통상의 지식을 가진자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.
도 3은 본 발명의 일실시예에 따른 소거 과정 및 프로그램 과정을 설명하기 위한 페이지 버퍼 및 메모리 셀 블록을 도시한 도면이다. 도 3을 참고하면, 메모리 셀 블록(100)은 메모리 셀들(즉, 멀티 레벨 셀들, 또는 싱글 레벨 셀들)(Me11∼MeJK, Mo11∼MoJK)(J, K는 정수), 드레인 선택 트랜지스터들(DST), 및 소스 선택 트랜지스터들(SST)을 포함한다. 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK)의 게이트들은 워드 라인들(WL1∼WLJ)에 각각 연결된다. 상기 멀티 레벨 셀들(Me11∼Me1K, Mo11∼Mo1K)은 상기 드레인 선택 트랜지스터들(DST)에 각각 연결되고, 상기 멀티 레벨 셀들(MeJ1∼MeJK, MoJ1∼MoJK)은 상기 소스 선택 트랜지스터들(SST)에 각각 연결된다. 상기 드레인 선택 트랜지스터들(DST)은 상기 비트 라인들(BLe1∼BLoK)에 각각 하나씩 연결된다. 상기 소스 선택 트랜지스터들(SST)은 공통(common) 소스 라인(CSL)에 연결된다.
페이지 버퍼 회로들(PB1∼PBK)(K는 정수) 각각은 상기 비트 라인들(BLe1∼BLoK) 중 한 쌍에 연결된다. 예를 들어, 상기 페이지 버퍼 회로(PB1)는 상기 비트 라인들(BLe1, BLo1)에 연결된다. 상기 페이지 버퍼 회로들(PB1∼PBK)의 구성 및 구체적인 동작은 서로 유사하므로, 상기 페이지 버퍼 회로(PB1)를 중심으로 설명하기로 한다. 상기 페이지 버퍼 회로(PB1)는 비트 라인 선택 회로(210), 상위 비트 레 지스터(220), 하위 비트 레지스터(230), 데이터 입력 회로(240), 제1 검증 회로(250), 제2 검증 회로(260), 데이터 전송 회로(270), 데이터 출력 회로(280), 및 프리차지 회로(290)를 포함한다. 상기 비트 라인 선택 회로(210)는 비트 라인 선택 신호들(BSLe, BSLo)과 디스차지 신호들(DISCHe, DISCHo)에 응답하여, 상기 비트 라인들(BLe1, BLo1) 중 하나를 선택하고, 그 선택된 비트 라인(BLe1 또는 BLo1)을 센싱 노드(SO)에 연결한다. 상기 비트 라인 선택 회로(210)는 NMOS 트랜지스터들(211∼214)을 포함한다. 상기 상위 비트 레지스터(220)는 센싱 회로(221), 래치 회로(222), 및 래치 리셋 회로(223)를 포함한다. 상기 센싱 회로(221)는 NMOS 트랜지스터들(224, 225)을 포함하고, 독출 제어 신호(MREAD)에 응답하여, 상기 센싱 노드(SO)의 전압을 센싱하고, 노드(Q1)에 상위 센싱 데이터(SAb)를 발생한다. 상기 래치 회로(222)는 래치(226)와 인버터(227)를 포함한다. 상기 래치(226)는 상기 노드(Q1)에 발생된 상기 상위 센싱 데이터(SAb)를 래치하고 반전된 상위 센싱 데이터(SA)를 노드(Q2)에 출력한다. 또, 상기 래치(226)는 입력 데이터(D1B 또는 D2)를 래치하고 반전된 입력 데이터(D1 또는 D2B)을 상기 노드(Q2 또는 Q1)에 출력한다. 상기 인버터(227)는 상기 노드(Q1)를 통하여 상기 래치(226)로부터 수신되는 상위 센싱 데이터(SAb) 또는 상기 입력 데이터(D1B 또는 D2B)를 반전시켜 출력한다. 상기 래치 리셋 회로(223)는 리셋 제어 신호(MRST)에 응답하여, 상기 래치 회로(222)를 초기화시킨다.
상기 하위 비트 레지스터(230)는 센싱 회로(231)와 래치 회로(232)를 포함한다. 상기 센싱 회로(231)는 NMOS 트랜지스터들(233∼235)을 포함하고, 독출 제어 신호(LREAD1 또는 LREAD2)에 응답하여, 상기 센싱 노드(SO)의 전압을 센싱하고, 하위 센싱 데이터(SL1 또는 SL2b)를 노드(Q4 또는 Q3)에 발생한다. 상기 래치 회로(232)는 래치(236)와 인버터(237)를 포함한다. 상기 래치(236)는 상기 하위 센싱 데이터(SL1 또는 SL2b)를 래치하고, 상기 노드(Q3 또는 Q4)에 반전된 하위 센싱 데이터(SL1b 또는 SL2)를 출력한다. 상기 인버터(237)는 상기 노드(Q3)를 통하여 상기 래치(226)로부터 상기 반전된 하위 센싱 데이터(SL1b) 또는 상기 하위 센싱 데이터(SL2b)를 수신하고, 그 수신된 데이터(SL1b 또는 SL2b)를 반전시켜 출력한다.
상기 데이터 입력 회로(240)는 NMOS 트랜지스터들(241, 242)을 포함하고, 데이터 입력 신호들(DI1, nDI1)에 응답하여, 데이터 입출력 노드(Y1)를 통하여 수신되는 상기 입력 데이터(D1b 또는 D2)를 상기 노드(Q1 또는 Q2)를 통하여 상기 상위 비트 레지스터(220)의 상기 래치(226)에 출력한다.
상기 제1 검증 회로(250)는 상기 노드(Q2)에 연결되고, 상기 래치(226)로부터 수신되는 상기 반전된 상위 센싱 데이터(SA), 상기 반전된 입력 데이터(D1), 및 상기 입력 데이터(D2) 중 하나에 응답하여 검증 데이터(MVD1)를 데이터 검증 라인(MVL1)에 출력한다. 바람직하게, 상기 제1 검증 회로(250)는 PMOS 트랜지스터로서 구현될 수 있다. 이 경우, 상기 수신된 데이터(SA, D1, D2 중 하나)가 로직 '0' 일 때, 상기 PMOS 트랜지스터(250)가 상기 데이터 검증 라인(MVL1)에 내부 전압(VCC)을 공급함으로써, 상기 검증 데이터(MVD1)를 로직 '1'로 출력한다. 반대로, 상기 수신된 데이터(SM, D1, D2 중 하나)가 로직 '1' 일 때, 상기 PMOS 트랜지스터(250)가 상기 데이터 검증 라인(MVL1)에 상기 내부 전압(VCC)을 공급하지 않는다. 따라 서, 상기 검증 데이터(MVD1)가 로직 '0'으로 된다. 초기에, 상기 데이터 검증 라인(MVL1)은 그라운드 전압 레벨로 설정된다.
상기 제2 검증 회로(260)는 상기 노드(Q4)에 연결되고, 상기 래치(236)로부터 수신되는 상기 반전된 하위 센싱 데이터(SL2) 또는 하위 센싱 데이터(SL1)에 응답하여 검증 데이터(LVD1)를 데이터 검증 라인(LVL1)에 출력한다. 바람직하게, 상기 제2 검증 회로(260)는 PMOS 트랜지스터로서 실행될 수 있다. 이 경우, 로직 '0'의 상기 하위 센싱 데이터(SL1)가 수신될 때, 상기 PMOS 트랜지스터(260)가 상기 데이터 검증 라인(LVL1)에 상기 내부 전압(VCC)을 공급함으로써, 상기 검증 데이터(LVD1)를 로직 '1'로 출력한다. 반대로, 로직 '1'의 상기 반전된 하위 센싱 데이터(SL2)가 수신될 때, 상기 PMOS 트랜지스터(260)가 상기 데이터 검증 라인(LVL1)에 상기 내부 전압(VCC)을 공급하지 않는다. 따라서, 상기 검증 데이터(LVD1)가 로직 '0'으로 된다. 초기에, 상기 데이터 검증 라인(LVL1)은 그라운드 전압 레벨로 설정된다.
상기 데이터 전송 회로(270)는 NMOS 트랜지스터들(271, 272)을 포함한다. 상기 NMOS 트랜지스터(271)는 전송 제어 신호(MPGM)에 응답하여 상기 상위 비트 레지스터(220)의 인버터(227)로부터 수신되는 상기 반전된 입력 데이터(D1) 또는 상기 입력 데이터(D2)를 상기 센싱 노드(SO)에 출력한다. 상기 NMOS 트랜지스터(272)는 전송 제어 신호(SPGM)에 응답하여, 상기 하위 비트 레지스터(230)의 인버터(237)로부터 수신되는 상기 반전된 하위 센싱 데이터(SL2)를 상기 센싱 노드(SO)에 출력한다.
상기 데이터 출력 회로(280)는 NMOS 트랜지스터들(281, 282)을 포함한다. 상기 NMOS 트랜지스터(281)는 데이터 출력 신호(MBDO)에 응답하여, 상기 반전된 상위 센싱 데이터(SA)를 상기 데이터 입출력 노드(Y1)에 출력한다. 상기 NMOS 트랜지스터(282)는 데이터 출력 신호(SBDO)에 응답하여, 상기 반전된 하위 센싱 데이터(SL2)를 상기 데이터 입출력 노드(Y1)에 출력한다. 상기 프리차지 회로(290)는 프리차지 제어 신호(PRECHb)에 응답하여, 상기 센싱 노드(SO)를 내부 전압(VCC)으로 프리차지한다.
다음으로, 도 4 내지 도 11을 참고하여, 본 발명의 일실시예에 따른 소거 과정을 상세히 설명한다. 도 4는 본 발명의 일실시예에 따른 소거 과정을 나타내는 흐름도(400)이다. 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK)의 문턱 전압들이 분포되는 범위가 감소하도록, 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK) 중 일부가 프리 프로그램(preprogram) 된다(401). 이 후, 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK)이 소거된다(402). 상기 소거 과정(402)은 본 기술 분야에서 통상의 지식을 가진 자라면 잘 이해할 수 있으므로, 그 상세한 설명은 생략하기로 한다. 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK)이 정상적으로 소거되었는지의 여부가 검증된다(403).
도 5는 도 4에 도시된 처리 과정(401)의 상세한 흐름도이다. 도 5를 참고하면, 먼저, 상기 워드 라인들(WL1∼WLJ) 중 하나(예를 들어, WL1)가 선택된다(410). 그 후, 선택된 워드 라인(WL1)에 프로그램 전압(미도시)이 공급되고, 상기 페이지 버퍼들(PB1∼PBK)에 의해 상기 비트 라인들(BLe1∼BLeK, BLo1∼BLoK) 중 일부에 프 로그램을 위한 데이터가 입력되고, 나머지들에 프로그램 금지를 위한 데이터가 입력된다. 그 결과, 상기 선택된 워드 라인(WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중 일부가 프로그램된다(420). 상기 단계(420)를 도 6 내지 도 10을 참고하여 좀 더 상세히 설명하면 다음과 같다. 먼저, 도 9의 (a) 및 (b)의 그래프들(T1∼T4)에서 참조되는 것과 같이, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)의 문턱 전압들은 제1 내지 제4 전압 범위들(R1∼R4)에 각각 포함된다. 여기에서, 상기 제1 전압 범위(R1)(즉, "11" 데이터가 저장된 멀티 레벨 셀들의 문턱 전압 범위)의 최대 전압(VM1)은 상기 제2 전압 범위(R2)(즉, "10" 데이터가 저장된 멀티 레벨 셀들의 문턱 전압 범위)의 최소 전압(VL2)보다 작다. 상기 제2 전압 범위(R2)의 최대 전압(VM2)는 상기 제3 전압 범위(R3)(즉, "00" 데이터가 저장된 멀티 레벨 셀들의 문턱 전압 범위)의 최소 전압(VL3)보다 작다. 또, 상기 제3 전압 범위(R3)의 최대 전압(VM3)은 상기 제4 전압 범위(R4)(즉, "01" 데이터가 저장된 멀티 레벨 셀들의 문턱 전압 범위)의 최소 전압(VL4)보다 작다. 한편, 상기 단계(420)에서, 상기 제1 전압 범위(R1)에 포함된 문턱 전압들을 가지는 멀티 레벨 셀들만이 선택적으로 프로그램될 수 있다. 좀 더 상세하게는, 도 9의 (a)에서 점선 화살표로 표시된 것과 같이, 그 문턱 전압들이 상기 제1 전압 범위(R1)에서 상기 제2 전압 범위(R2)로 이동되도록, 상기 멀티 레벨 셀들이 프로그램될 수 있다(즉, 멀티 레벨 셀에 하위 비트 데이터를 프로그램). 택일적으로, 도 9의 (b)에서 점선 화살표로 표시된 것과 같이, 그 문턱 전압들이 상기 제1 전압 범위(R1)에서 상기 제4 전압 범위(R4)로 이동되도록 상기 멀티 레벨 셀들이 프로그램될 수 있다(즉, 멀티 레벨 셀에 상위 비트 데이터를 프로그램). 도 6을 참고하면, 상기 선택된 워드 라인(WL1)에 연결된 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 상기 제1 전압 범위(R1)에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들이 선택된다(421a). 상기 단계(421a)를 도 7을 참고하여 좀 더 상세히 설명하면 다음과 같다. 먼저, 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)가 독출 제어 신호(LREAD1)에 응답하여 센싱 노드(SO)의 전압(예를 들어, VCC)을 센싱하고, 그 센싱 결과에 따른 하위 센싱 데이터(SL1)를 저장함으로써, 초기화된다. 이 후, 상기 선택된 워드 라인(WL1)에 검증 전압(PV1, 도 9참고)이 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(461). 상기 페이지 버퍼들(PB1∼PBK)은 상기 독출된 데이터들에 기초하여 검증 데이터들(LVD1∼LVDK)을 각각 발생한다(462). 이를 좀 더 상세히 설명하면, 먼저, 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)는 독출 제어 신호(LREAD2)에 응답하여, 상기 독출된 데이터들 각각에 의해 결정되는 상기 센싱 노드(SO)의 전압을 센싱하고, 그 센싱 결과에 따른 하위 센싱 데이터(SL2b)를 저장한다. 예를 들어, 상기 독출된 데이터가 로직 '1'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 검증 전압(PV1)보다 높을 때), 상기 하위 비트 레지스터(230)는 로직 '0'의 상기 하위 센싱 데이터(SL2b)(즉, 로직 '1'의 반전된 하위 센싱 데이터(SL2))를 저장한다. 반대로, 상기 독출된 데이터가 로직 '0'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 검증 전압(PV1)보다 낮을 때), 상기 하위 비트 레지스터(230)는 로직 '0'의 상기 하위 센싱 데이터(SL1)의 저장 상태(즉, 초기 화된 상태)를 유지한다. 상기 하위 비트 레지스터(230)에 저장된 로직 '0'의 상기 하위 센싱 데이터(SL1)는 추후에 실행될 프로그램 단계(422a)에서 프로그램 데이터로서 사용된다.
상기 페이지 버퍼들(PB1∼PBK) 각각의 제2 검증 회로(260)는 상기 하위 비트 레지스터(230)로부터 수신되는 상기 하위 센싱 데이터(SL1) 또는 반전된 하위 센싱 데이터(SL2)에 응답하여, 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다(462). 예를 들어, 상기 하위 센싱 데이터(SL1)에 응답하여, 상기 제2 검증 회로(260)가 로직 '1'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생하고, 상기 반전된 하위 센싱 데이터(SL2)에 응답하여, 상기 제2 검증 회로(260)가 로직 '0'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다.
이 후, 데이터 비교 회로(미도시)에 의해, 상기 검증 데이터들(LVD1∼LVDK) 각각이 로직 '1'인지의 여부가 판단된다(463). 로직 '1'인 검증 데이터들(예를 들어, LVD1∼LVD6)에 대응하는 멀티 레벨 셀들(예를 들어, Me11∼Me16 또는 Mo11∼Mo16)은 그 문턱 전압들이 상기 제1 전압 범위(R1)내에 포함되는 것으로 판정된다(464). 또, 로직 '1'이 아닌 검증 데이터들(예를 들어, LVD7∼LVDK)에 대응하는 멀티 레벨 셀들(예를 들어, Me17∼Me1K 또는 Mo17∼Mo1K)은 그 문턱 전압들이 상기 제1 전압 범위(R1)내에 포함되지 않는 것으로 판정된다(465). 결과적으로, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 상기 제1 전압 범위(R1)내에 포함되는 문턱 전압들을 각각 가지는 상기 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 필터링될 수 있다.
다시 도 6을 참고하면, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)의 문턱 전압들이 상기 제1 전압 범위(R1)에서 상기 제2 전압 범위(R2)로, 또는 상기 제1 전압 범위(R1)에서 상기 제4 전압 범위(R4)로 이동하도록, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 프로그램된다(422a). 이때, 상기 워드 라인(WL1)에는 프로그램 전압이 공급되고, 상기 페이지 버퍼들(PB1∼PB6) 각각은 전송 제어 신호(SPGM)에 응답하여, 상기 단계(462)에서 상기 하위 비트 레지스터(230)에 저장된 로직 '0'의 상기 하위 센싱 데이터(SL1)를 프로그램 데이터로서 센싱 노드(SO)를 통하여, 상기 비트 라인들(BLe11∼BLe16 또는 BLo11∼BLo16)에 각각 출력한다. 여기에서, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)의 문턱 전압들이 상기 제1 전압 범위(R1)에서 상기 제2 전압 범위(R2)로 이동되도록 프로그램하는데 걸리는 시간보다 상기 제1 전압 범위(R1)에서 상기 제4 전압 범위(R4)로 이동되도록 프로그램하는데 걸리는 시간이 더 길게 설정될 수 있다. 한편, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 프로그램될 때, 선택되지 않은 멀티 레벨 셀들(Me17∼Me1K 또는 Mo17∼Mo1K)이 프로그램 금지된다(423a). 좀 더 상세하게는, 상기 페이지 버퍼들(PB7∼PBK) 각각이 상기 전송 제어 신호(SPGM)에 응답하여, 상기 단계(462)에서 상기 하위 비트 레지스터(230)에 저장된 로직 '1'의 상기 반전된 하위 센싱 데이터(SL2)를 프로그램 금지 데이터로서 상기 센싱 노드(SO)를 통하여, 상기 비트 라인들(BLe17∼BLe1K 또는 BLo17∼BLo1K)에 각각 출력한다.
다시 도 5를 참고하면, 상기 멀티 레벨 셀들 중 일부(즉, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 프로그램되었는지의 여부가 판단된다(430). 도 5에서 상세하게 도시되지 않았지만, 상기 단계(430)를 좀 더 상세히 설명하면 다음과 같다. 상기 단계(430)는 도 7을 참고하여 설명한 상기 단계(421a)와 몇 가지 차이점들을 제외하고 유사하다. 상기 단계들(430, 421a)의 차이점들은 상기 단계(430)에서 검증 전압들(PV1, PV3) 중 하나가 선택적으로 상기 워드 라인(WL1)에 공급되는 것과, 검증 데이터들(LVD1∼LVD6 또는 MVD1∼MVD6)이 모두 로직 '0'일 때, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 모두 프로그램된 것으로 판단하는 것이다. 예를 들어, 상기 단계(420)에서, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)의 문턱 전압들이 상기 제1 전압 범위(R1)에서 상기 제2 전압 범위(R2)로 이동되도록 프로그램된 경우, 상기 단계(430)에서는 상기 검증 전압(PV1)이 상기 워드 라인(WL1)에 공급된다. 또, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)의 문턱 전압들이 상기 제1 전압 범위(R1)에서 상기 제4 전압 범위(R4)로 이동되도록 프로그램된 경우, 상기 단계(430)에서는 상기 검증 전압(PV3)이 상기 워드 라인(WL1)에 공급된다. 이 후, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 프로그램될 때까지 상기 단계들(420, 430)이 반복된다. 또, 상기 선택된 워드 라인이 마지막 워드 라인인지의 여부가 판단되고(440), 상기 선택된 워드 라인이 마지막 워드 라인으로 될 때까지, 상기 단계들(410∼440)이 반복적으로 실행된다. 이처럼 상기 프리 프로그램 과정(401)에서 전체 워드 라인들에 연결된 멀티 레벨 셀들이 프리 프로그램되는 이유는, 플래시 메모리 장치의 소거 동작이 메모리 셀 블록 단위로 이루어지기 때문이 다. 따라서, 상기 단계(401)에 의해, 도 9의 (c)에서 참조되는 것과 같이, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)의 문턱 전압들이 제2 내지 제4 전압 범위들(R2∼R4)에 각각 포함된다. 결국, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프리 프로그램되기 이전의 그 문턱 전압들의 전체 분포 범위(WD1)(도 9의 (a) 및 (b)참고)보다 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프리 프로그램된 이후의 그 문턱 전압들의 전체 분포 범위(WD2)(도 9의 (c)참고)가 더 좁아질 수 있다. 이처럼 상기 멀티 레벨 셀들의 문턱 전압들의 전체 분포 범위가 좁아질 경우, (d)의 그래프들(T2∼T4)로 표시된 것과 같이, 상기 소거 과정(402) 이 후, 멀티 레벨 셀들의 문턱 전압들이 소거 검증 전압(VE)보다 작은 전압 범위내에 존재하게 되므로, 상기 소거 과정(402)에서 패일(fail)이 발생하는 비율이 감소될 수 있다. 또한, 상기 멀티 레벨 셀들의 문턱 전압들의 전체 분포 범위가 좁아질 경우, 추후에 실행되는 프로그램 과정에서 전체 프로그램 시간이 단축될 수 있다.
택일적으로, 도 10의 (a)에 도시된 그래프들(T11∼T14)에서 참조되는 것과 같이, 상기 단계(420)에서, 멀티 레벨 셀들의 문턱 전압들이 상기 제1 전압 범위(R1)에서 상기 제2 전압 범위(R2)로 이동되도록, 상기 멀티 레벨 셀들이 1차 프로그램(즉, 멀티 레벨 셀에 하위 비트 데이터를 프로그램)된 후, 다시 상기 제2 전압 범위(R2)에서 상기 제3 전압 범위(R3)로 이동되도록, 상기 멀티 레벨 셀들이 2차 프로그램(즉, 멀티 레벨 셀에 상위 비트 데이터를 프로그램)될 수 있다. 이를 도 8을 참고하여 좀 더 상세히 설명하면 다음과 같다. 먼저, 선택된 워드 라인(예를 들어, WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 상기 제1 전압 범위(R1)내에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들(예를 들어, Me11∼Me16 또는 Mo11∼Mo16)이 선택된다(421b). 그 후, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)의 문턱 전압들이 상기 제1 전압 범위(R1)에서 상기 제2 전압 범위(R2)로 이동하도록, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 프로그램된다(422b). 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 프로그램될 때, 선택되지 않은 멀티 레벨 셀들(Me17∼Me1K 또는 Mo17∼Mo1K)이 프로그램 금지된다(423b). 상기 단계들(421b∼423b)은 도 6을 참고하여 설명한 상기 단계들(421a∼423a)과 실질적으로 동일하므로, 그 상세한 설명이 생략된다.
이 후, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 상기 제2 전압 범위(R2)내에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들(예를 들어, Me11∼Me19 또는 Mo11∼Mo19)이 추가로 선택된다(424b). 상기 단계(424b)는 몇 가지 차이점을 제외하고, 도 7을 참고하여 설명한 상기 단계(421a)와 유사하다. 상기 단계들(421a, 424b)의 차이점은 상기 단계(424b)에서 검증 전압(PV2, 도 10참고)이 상기 워드 라인(WL1)에 공급되는 것이다. 상기 단계들(421a, 424b)의 다른 차이점은 상기 단계(424b)에서 로직 '1'인 검증 데이터들(예를 들어, LVD1∼LVD9)에 대응하는(즉, 그 문턱 전압들이 상기 제2 전압 범위(R2)내에 포함되는) 멀티 레벨 셀들(Me11∼Me19 또는 Mo11∼Mo19)이 필터링되는 것이다. 추가로 선택된 상기 멀티 레벨 셀들(Me11∼Me19 또는 Mo11∼Mo19)의 문턱 전압들이 상기 제2 전압 범위(R2)에서 상기 제3 전압 범위(R3)로 이동하도록, 상기 추가로 선택된 멀티 레벨 셀 들(Me11∼Me19 또는 Mo11∼Mo19)이 프로그램된다(425b). 상기 추가로 선택된 멀티 레벨 셀들(Me11∼Me19 또는 Mo11∼Mo19)이 프로그램될 때, 선택되지 않은 멀티 레벨 셀들(Me110∼Me1K 또는 Mo110∼Mo1K)이 프로그램 금지된다(426b). 상기 단계들(425b, 426b)에서의 상기 페이지 버퍼들(PB1∼PBK)의 동작은 상기 단계들(422a, 423a)에서의 상기 페이지 버퍼들(PB1∼PBK)의 동작과 유사하다.
상술한 것과 같이, 상기 단계(420)에 의해, 도 10의 (b)에서 참조되는 것과 같이, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)의 문턱 전압들이 제3 및 제4 전압 범위들(R3, R4)에 각각 포함된다. 결국, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프리 프로그램되기 이전의 그 문턱 전압들의 전체 분포 범위(WD1)(도 10의 (a)참고)보다 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프리 프로그램된 이후의 그 문턱 전압들의 전체 분포 범위(WD3)(도 10의 (b)참고)가 더 좁아질 수 있다.
도 11은 도 4에 도시된 처리 과정(403)의 상세한 흐름도이다. 도 11을 참고하면, 페이지 버퍼들(PB1∼PBK) 각각의 상위 비트 레지스터(220)와 하위 비트 레지스터(230)가 독출 제어 신호(MREAD)와 독출 제어 신호(LREAD2)에 응답하여 각각 초기화된다(471). 그 결과, 래치 회로(222)가 노드(Q2)에 로직 '1'의 상위 센싱 데이터(SA)를 출력하고, 래치 회로(232)가 노드(Q4)에 로직 '1'의 하위 센싱 데이터(SL2)를 출력한다. 상기 단계(471)에서 상기 페이지 버퍼들(PB1∼PBK)의 구체적인 동작은 본 기술 분야에서 통상의 지식을 가진자라면 잘 이해할 수 있으므로, 이에 대한 상세한 설명은 생략하기로 한다.
그 후, 상기 선택된 워드 라인(WL1)에 상기 소거 검증 전압(VE)이 공급됨에 따라, 상기 선택된 워드 라인(WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(472). 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)는 독출 제어 신호(LREAD1)에 응답하여, 상기 독출된 데이터들 각각에 의해 결정되는 상기 센싱 노드(SO)의 전압을 센싱하고, 그 센싱 결과에 따른 하위 센싱 데이터(SL1)를 저장한다(473). 예를 들어, 상기 독출된 데이터가 로직 '1'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 소거 검증 전압(VE)보다 높을 때), 상기 하위 비트 레지스터(230)는 로직 '0'의 상기 하위 센싱 데이터(SL1)를 저장한다. 반대로, 상기 독출된 데이터가 로직 '0'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 소거 검증 전압(VE)보다 낮을 때), 상기 하위 비트 레지스터(230)는 로직 '1'의 반전된 하위 센싱 데이터(SL2)의 저장 상태(즉, 초기화된 상태)를 유지한다.
상기 선택된 워드 라인(WL1)에 연결된 멀티 레벨 셀들((Me11∼Me1K 또는 Mo11∼Mo1K) 중 리페어(repair) 된 멀티 레벨 셀들(즉, 불량 셀들)(예를 들어, Me11∼Me12 또는 Mo11∼Mo12)에 연결된 페이지 버퍼들(PB1, PB2) 각각의 데이터 전송 회로(270)는 전송 제어 신호(MPGM)에 응답하여, 상위 비트 레지스터(220)에 저장된 초기 데이터(SA)를 하위 비트 레지스터(230)에 전달한다(474). 상기 하위 비트 레지스터(230)는 독출 제어 신호(LREAD2)에 응답하여 상기 초기 데이터(SA)에 의해 결정되는 센싱 노드(SO)의 전압을 센싱한다. 상기 단계(474)가 실행되는 이유는, 상기 불량 셀들(Me11∼Me12 또는 Mo11∼Mo12)은 이미 리페어 메모리 셀들에 의 해 리페어된 상태이므로, 상기 불량 셀들(Me11∼Me12 또는 Mo11∼Mo12)이 상기 단계(402)에서 소거되지 않더라도, 상기 불량 셀들(Me11∼Me12 또는 Mo11∼Mo12)에 대한 검증 결과는 무조건 패스(pass)인 것으로 판정되도록 하기 위함이다.
상기 페이지 버퍼들(PB1∼PBK) 각각의 제2 검증 회로(260)는 상기 하위 비트 레지스터(230)에 저장된 상기 하위 센싱 데이터(SL1), 또는 상기 초기 데이터(SA)에 기초하여 발생된, 반전된 하위 센싱 데이터(SL2)에 응답하여, 검증 데이터(LVD1)를 발생한다(475). 예를 들어, 상기 하위 센싱 데이터(SL1)에 응답하여, 상기 제2 검증 회로(260)가 로직 '1'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생하고, 상기 반전된 하위 센싱 데이터(SL2)에 응답하여, 상기 제2 검증 회로(260)가 로직 '0'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다.
이 후, 데이터 비교 회로(미도시)에 의해 상기 페이지 버퍼들(PB1∼PBK)로부터 출력되는 검증 데이터들(LVD1∼LVDK) 중 적어도 하나가 로직 '1'인지의 여부가 판단된다(476). 상기 검증 데이터들(LVD1∼LVDK) 중 적어도 하나가 로직 '1'일 때, 상기 멀티 레벨 셀들((Me11∼Me1K 또는 Mo11∼Mo1K)의 소거가 패일(fail)된 것으로 판정된다(478). 또, 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'일 때, 상기 멀티 레벨 셀들((Me11∼Me1K 또는 Mo11∼Mo1K)의 소거가 패스된 것으로 판정된다(477).
도 12는 본 발명의 다른 실시예에 따른 소거 과정을 나타내는 흐름도(500)이다. 먼저, 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK)의 문턱 전압들이 분포되는 범위가 감소하도록, 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK) 중 일부가 프리 프로그램 된다(501). 이 후, 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK)이 소거된다(502). 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK) 과(over) 소거된 멀티 레벨 셀들의 문턱 전압들이 설정된 전압 범위내에 포함되도록, 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK)이 포스트(post) 프로그램된다(503). 상기 멀티 레벨 셀들(Me11∼MeJK, Mo11∼MoJK)이 정상적으로 소거되었는지의 여부가 검증된다(504). 상기 처리 과정(500)은 한 가지 차이점을 제외하고, 도 4 내지 도 11을 참고하여 설명한 처리 과정(400)과 실질적으로 동일하다. 상기 처리 과정들(500, 400)의 차이점은 상기 처리 과정(500)에서 상기 소거 과정(502)과 상기 검증 과정(504) 사이에 상기 포스트 프로그램 과정(503)이 더 포함되는 것이다. 따라서 본 실시예에서는 상기 포스트 프로그램 과정(503)을 중심으로 설명하기로 한다.
도 13은 도 12에 도시된 처리 과정(501)의 상세한 흐름도이다. 도 13을 참고하면, 먼저, 상기 워드 라인들(WL1∼WLJ) 중 하나(예를 들어, WL1)가 선택된다(510). 그 후, 선택된 워드 라인(WL1)에 프로그램 전압이 공급되고, 상기 페이지 버퍼들(PB1∼PBK)에 의해 상기 비트 라인들(BLe1∼BLeK, BLo1∼BLoK) 중 일부에 프로그램을 위한 데이터가 입력되고, 나머지들에 프로그램 금지를 위한 데이터가 입력된다. 그 결과, 상기 선택된 워드 라인(WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중 일부가 프로그램된다(520). 상기 멀티 레벨 셀들 중 일부가 프로그램되었는지의 여부가 판단된다(530). 이 후, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중 일부가 프로그램될 때까지 상기 단계들(520, 530)이 반복된다. 또, 상기 선택된 워드 라인이 마지막 워드 라인인지의 여부가 판단되고 (540), 상기 선택된 워드 라인이 마지막 워드 라인으로 될 때까지, 상기 단계들(510∼540)이 반복적으로 실행된다. 상기 처리 과정(501)은 도 5를 참고하여 설명한 상기 단계(401)와 유사하므로, 상기 단계들(510∼540) 각각에 대한 상세한 설명은 생략하기로 한다.
도 14는 도 13에 도시된 처리 과정(520)의 상세한 흐름도이다. 도 14를 참고하면, 먼저, 선택된 워드 라인(예를 들어, WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 제1 전압 범위(R1, 도 16의 (a)참고) 내에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들(예를 들어, Me11∼Me16 또는 Mo11∼Mo16)이 선택된다(521). 그 후, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)의 문턱 전압들이 상기 제1 전압 범위(R1)에서 제4 전압 범위(R4, 도 16의 (a)참고)로 이동하도록, 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 프로그램된다(522). 상기 선택된 멀티 레벨 셀들(Me11∼Me16 또는 Mo11∼Mo16)이 프로그램될 때, 선택되지 않은 멀티 레벨 셀들(Me17∼Me1K 또는 Mo17∼Mo1K)이 프로그램 금지된다(523). 상기 단계들(521∼523)은 도 6을 참고하여 설명한 상기 단계들(421a∼423a)과 실질적으로 동일하므로, 그 상세한 설명이 생략된다.
이 후, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 제2 전압 범위(R2)내에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들(예를 들어, Me17∼Me112 또는 Mo17∼Mo112)이 추가로 선택된다(524). 추가로 선택된 상기 멀티 레벨 셀들(Me17∼Me112 또는 Mo17∼Mo112)의 문턱 전압들이 상기 제2 전압 범위(R2)에서 제3 전압 범위(R3, 도 16의 (a)참고)로 이동하도록, 상기 추가로 선택된 멀티 레벨 셀들(Me17∼Me112 또는 Mo17∼Mo112)이 프로그램된다(525). 상기 추가로 선택된 멀티 레벨 셀들(Me17∼Me112 또는 Mo17∼Mo112)이 프로그램될 때, 선택되지 않은 멀티 레벨 셀들(Me113∼Me1K 또는 Mo113∼Mo1K)이 프로그램 금지된다(526). 상기 단계들(524∼526)은 도 8을 참고하여 설명한 상기 단계들(424b∼426b)과 실질적으로 동일하므로, 그 상세한 설명이 생략된다.
상술한 것과 같이, 상기 단계(520)에 의해, 도 16의 (b)에서 참조되는 것과 같이, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)의 문턱 전압들이 제3 및 제4 전압 범위들(R3, R4)에 각각 포함된다. 결국, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프리 프로그램되기 이전의 그 문턱 전압들의 전체 분포 범위(WD1)(도 16의 (a)참고)보다 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프리 프로그램된 이후의 그 문턱 전압들의 전체 분포 범위(WD3)(도 16의 (b)참고)가 더 좁아질 수 있다.
도 15는 도 12에 도시된 처리 과정(503)의 상세한 흐름도이다. 도 15를 참고하면, 상기 워드 라인들(WL1∼WLJ) 중 하나(예를 들어, WL1)가 선택된다(561). 상기 선택된 워드 라인(WL1)에 프로그램 전압(미도시)이 공급됨에 따라, 상기 선택된 워드 라인(WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프로그램된다(562). 이 후, 상기 페이지 버퍼들(PB1∼PBK) 각각의 상위 비트 레지스터(220)와 하위 비트 레지스터(230)가 독출 제어 신호(MREAD)와 독출 제어 신호(LREAD2)에 응답하여 각각 초기화된다(563). 그 결과, 래치 회로(222)가 노드(Q2)에 로직 '1'의 상위 센싱 데이터(SA)를 출력하고, 래치 회로(232)가 노드(Q4)에 로직 '1'의 하 위 센싱 데이터(SL2)를 출력한다.
그 후, 상기 선택된 워드 라인(WL1)에 소거 검증 전압(VE)보다 작은 소거 검증 전압(VF, 도 16의 (d)참고)(예를 들어, 0V)이 공급됨에 따라, 상기 선택된 워드 라인(WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(564). 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)는 독출 제어 신호(LREAD1)에 응답하여, 상기 독출된 데이터들 각각에 의해 결정되는 상기 센싱 노드(SO)의 전압을 센싱하고, 그 센싱 결과에 따른 하위 센싱 데이터(SL1)를 저장한다(565). 예를 들어, 상기 독출된 데이터가 로직 '1'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 소거 검증 전압(VF)보다 높을 때), 상기 하위 비트 레지스터(230)는 로직 '0'의 상기 하위 센싱 데이터(SL1)를 저장한다. 반대로, 상기 독출된 데이터가 로직 '0'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 소거 검증 전압(VF)보다 낮을 때), 상기 하위 비트 레지스터(230)는 로직 '1'의 반전된 하위 센싱 데이터(SL2)의 저장 상태(즉, 초기화된 상태)를 유지한다.
상기 선택된 워드 라인(WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중 리페어(repair) 된 멀티 레벨 셀들(즉, 불량 셀들)(예를 들어, Me11∼Me12 또는 Mo11∼Mo12)에 연결된 페이지 버퍼들(PB1, PB2) 각각의 데이터 전송 회로(270)는 전송 제어 신호(MPGM)에 응답하여, 상위 비트 레지스터(220)에 저장된 초기 데이터(SA)를 하위 비트 레지스터(230)에 전달한다(566). 상기 하위 비트 레지스터(230)는 독출 제어 신호(LREAD2)에 응답하여 상기 초기 데이터(SA)에 의해 결정되는 센싱 노드(SO)의 전압을 센싱한다. 상기 페이지 버퍼들(PB1∼PBK) 각각의 제2 검증 회로(260)는 상기 하위 비트 레지스터(230)에 저장된 상기 하위 센싱 데이터(SL1), 또는 상기 초기 데이터(SA)에 기초하여 발생된, 반전된 하위 센싱 데이터(SL2)에 응답하여, 검증 데이터(LVD1)를 발생한다(567). 예를 들어, 상기 하위 센싱 데이터(SL1)에 응답하여, 상기 제2 검증 회로(260)가 로직 '1'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생하고, 상기 반전된 하위 센싱 데이터(SL2)에 응답하여, 상기 제2 검증 회로(260)가 로직 '0'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다.
이 후, 데이터 비교 회로(미도시)에 의해 상기 페이지 버퍼들(PB1∼PBK)로부터 출력되는 검증 데이터들(LVD1∼LVDK) 중 적어도 하나가 로직 '1'인지의 여부가 판단된다(568). 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'일 때, 상기 워드 라인(WL1)에 공급되는 상기 프로그램 전압이 스텝 전압(미도시)만큼 증가되고(569), 상기 단계들(562∼569)이 반복적으로 실행된다. 또, 상기 검증 데이터들(LVD1∼LVDK) 중 적어도 하나가 로직 '1'일 때, 선택된 워드 라인이 마지막 워드 라인인지의 여부가 판단된다(570). 선택된 워드 라인이 마지막 워드 라인으로 될 때까지, 상기 단계들(561∼570)이 반복적으로 실행된다. 상기 단계(568)에서, 상기 검증 데이터들(LVD1∼LVDK) 중 적어도 하나가 로직 '1'인 경우, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)의 포스트 프로그램이 완료된 것으로 판단된다.
다음으로, 도 17 내지 도 31을 참고하여, 본 발명에 따른 프로그램 과정을 상세히 설명한다.
도 17은 본 발명의 제1 실시예에 따른 프로그램 과정을 나타내는 흐름도로서,멀티 레벨 셀들의 프로그램과 관련된다. 먼저, 상기 워드 라인들(WL1∼WLJ) 중 하나(예를 들어, WL1)가 선택된다(601). 상기 선택된 워드 라인(WL1)에 시작 프로그램 전압(VPA, 도 23참고)이 공급됨에 따라, 상기 선택된 워드 라인(WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프로그램된다(602). 이 후, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 설정된 전압보다 작은 문턱 전압들을 각각 가지는 멀티 레벨 셀들(예를 들어, Me11∼Me15 또는 Mo11∼Mo15)이 선택된다(603). 상기 단계(603)를 도 18을 참고하여, 좀 더 상세히 설명하면 다음과 같다. 먼저, 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)가 독출 제어 신호(LREAD1)에 응답하여 센싱 노드(SO)의 전압(예를 들어, VCC)을 센싱하고, 그 센싱 결과에 따라 로직 '0'의 하위 센싱 데이터(SL1)를 저장함으로써 초기화된다. 이 후, 상기 선택된 워드 라인(WL1)에 검증 전압(PV0 또는 PVN, 도 23참고)이 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(611). 여기에서, 상기 검증 전압(PV0)은 검증 전압(PV1, 도 26 참고)보다 작게 설정될 수 있고, 상기 검증 전압(PVN)은 네가티브(negative) 전압으로 설정될 수 있다. 상기 설정된 전압은 상기 검증 전압(PV0 또는 PVN)보다 더 크거나 또는 동일할 수 있다.
상기 페이지 버퍼들(PB1∼PBK)은 상기 독출된 데이터들에 기초하여 검증 데이터들(LVD1∼LVDK)을 각각 발생한다(612). 이를 좀 더 상세히 설명하면, 먼저, 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)는 독출 제어 신호 (LREAD2)에 응답하여, 상기 독출된 데이터들 각각에 의해 결정되는 상기 센싱 노드(SO)의 전압을 센싱하고, 그 센싱 결과에 따른 하위 센싱 데이터(SL2b)를 저장한다. 예를 들어, 상기 독출된 데이터가 로직 '1'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 검증 전압(PV0 또는 PVN)보다 높을 때), 상기 하위 비트 레지스터(230)는 로직 '0'의 상기 하위 센싱 데이터(SL2b)(즉, 로직 '1'의 반전된 하위 센싱 데이터(SL2))를 저장한다. 반대로, 상기 독출된 데이터가 로직 '0'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 검증 전압(PV0 또는 PVN)보다 낮을 때), 상기 하위 비트 레지스터(230)는 로직 '0'의 상기 하위 센싱 데이터(SL1)의 저장 상태(즉, 초기화된 상태)를 유지한다. 상기 하위 비트 레지스터(230)에 저장된 로직 '0'의 상기 하위 센싱 데이터(SL1)는 추후에 실행될 프로그램 단계(604)에서 프로그램 데이터로서 사용된다.
상기 페이지 버퍼들(PB1∼PBK) 각각의 제2 검증 회로(260)는 상기 하위 비트 레지스터(230)로부터 수신되는 상기 하위 센싱 데이터(SL1) 또는 반전된 하위 센싱 데이터(SL2)에 응답하여, 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다. 예를 들어, 상기 하위 센싱 데이터(SL1)에 응답하여, 상기 제2 검증 회로(260)가 로직 '1'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생하고, 상기 반전된 하위 센싱 데이터(SL2)에 응답하여, 상기 제2 검증 회로(260)가 로직 '0'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다.
이 후, 데이터 비교 회로(미도시)에 의해, 상기 검증 데이터들(LVD1∼LVDK) 각각이 로직 '1'인지의 여부가 판단된다(613). 로직 '1'인 검증 데이터들(예를 들 어, LVD1∼LVD5)에 대응하는 멀티 레벨 셀들(예를 들어, Me11∼Me15 또는 Mo11∼Mo15)은 그 문턱 전압들이 상기 설정된 전압보다 작은 것으로 판정된다(614). 또, 로직 '1'이 아닌 검증 데이터들(예를 들어, LVD6∼LVDK)에 대응하는 멀티 레벨 셀들(예를 들어, Me16∼Me1K 또는 Mo16∼Mo1K)은 그 문턱 전압들이 상기 설정된 전압보다 큰 것으로 판정된다(615). 결과적으로, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 상기 설정된 전압보다 작은 문턱 전압들을 각각 가지는 상기 멀티 레벨 셀들(Me11∼Me15 또는 Mo11∼Mo15)이 필터링될 수 있다.
다시 도 17을 참고하면, 상기 선택된 워드 라인(WL1)에 상기 시작 프로그램 전압(VPA)보다 큰 예비 프로그램 전압(VPE)이 공급됨에 따라, 상기 선택된 멀티 레벨 셀들(Me11∼Me15 또는 Mo11∼Mo15)이 프로그램된다(604). 바람직하게, 상기 예비 프로그램 전압(VPE)은 상기 시작 프로그램 전압(VPA)보다 크고, 최대 프로그램 전압(VPT, 도 23참고)보다 작거나 또는 동일하게 설정될 수 있다. 상기 단계(604)에서, 상기 페이지 버퍼들(PB1∼PB6) 각각은 전송 제어 신호(SPGM)에 응답하여, 상기 단계(612)에서 상기 하위 비트 레지스터(230)에 저장된 로직 '0'의 상기 하위 센싱 데이터(SL1)를 프로그램 데이터로서 센싱 노드(SO)를 통하여, 상기 비트 라인들(BLe11∼BLe15 또는 BLo11∼BLo15)에 각각 출력한다. 한편, 상기 선택된 멀티 레벨 셀들(Me11∼Me15 또는 Mo11∼Mo15)이 프로그램될 때, 선택되지 않은 멀티 레벨 셀들(Me16∼Me1K 또는 Mo16∼Mo1K)이 프로그램 금지된다(605). 좀 더 상세하게는, 상기 페이지 버퍼들(PB6∼PBK) 각각이 상기 전송 제어 신호(SPGM)에 응답하여, 상기 단계(612)에서 상기 하위 비트 레지스터(230)에 저장된 로직 '1'의 상기 반전된 하위 센싱 데이터(SL2)를 프로그램 금지 데이터로서 상기 센싱 노드(SO)를 통하여, 상기 비트 라인들(BLe17∼BLe1K 또는 BLo17∼BLo1K)에 각각 출력한다. 그 후, 상기 시작 프로그램 전압(VPA)으로부터 스텝 전압(VS) 비율로 점차 증가되는 프로그램 전압들(VP1∼VPT)이 순차적으로 상기 선택된 워드 라인(WL1)에 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 추가로 프로그램된다(606).
도 19는 도 17에 도시된 처리 과정(606)의 상세한 흐름도이다. 도 19를 참고하면, 상기 시작 프로그램 전압(VPA)으로부터 상기 스텝 전압(VS) 비율로 점차 증가되는 제1 프로그램 전압들(VP1∼VPR)(R은 정수)이 순차적으로 상기 선택된 워드 라인(WL1)에 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 제1 프로그램된다(620). 또, 상기 단계(620)에서 최종적으로 증가된 상기 제1 프로그램 전압(VPR)으로부터 상기 스텝 전압(VS) 비율로 점차 증가되는 제2 프로그램 전압들(VP(R+1)∼VPS)(S는 정수)이 상기 워드 라인(WL1)에 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 제2 프로그램된다(630). 또, 상기 단계(630)에서 최종적으로 증가된 상기 제2 프로그램 전압(VPS)으로부터 상기 스텝 전압(VS) 비율로 점차 증가되는 제3 프로그램 전압들(VP(S+1)∼VPT)(T는 정수)이 상기 워드 라인(WL1)에 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 제3 프로그램된다(640).
도 20은 도 19에 도시된 처리 과정(620)의 상세한 흐름도이다. 도 20을 참고하면, 먼저, 상기 선택된 워드 라인(WL1)에 상기 제1 프로그램 전압(VP1)이 공급된다(621). 도 20에 도시되지 않았지만, 상기 단계(621)에 앞서서, 상기 페이지 버퍼 들(PB1∼PBK) 각각의 하위 비트 레지스터(230)는 독출 제어 신호(LREAD1)에 응답하여 초기화된 상태(즉, 로직 '0'의 하위 센싱 데이터(SL1)가 저장된 상태)이다. 또, 상기 페이지 버퍼들(PB1∼PBK) 각각의 상위 비트 레지스터(220)에는 입력 데이터(D1b 또는 D2)가 저장된다. 이 후, 전송 제어 신호(MPGM)에 응답하여, 상기 페이지 버퍼들(PB1∼PBK) 각각의 데이터 전송 회로(270)가 상기 상위 비트 레지스터(220)에 저장된 상기 입력 데이터(D1b 또는 D2)를 상기 하위 비트 레지스터(230)에 전달한다. 상기 하위 비트 레지스터(230)는 독출 제어 신호(LREAD2)에 응답하여 상기 입력 데이터(D1b 또는 D2)에 의해 결정되는 센싱 노드(SO)의 전압을 센싱한다. 예를 들어, 상기 입력 데이터(D1b 또는 D2)가 로직 '1'일 때, 상기 하위 비트 레지스터(230)는 노드(Q3)에서 발생되는 상기 로직 '0'의 하위 센싱 데이터(SL2b)를 저장한다. 반대로, 상기 입력 데이터(D1b 또는 D2)가 로직 '0'일 때, 상기 하위 비트 레지스터(230)는 초기화된 상태(즉, 로직 '0'의 하위 센싱 데이터(SL1)가 저장된 상태)로 유지된다. 따라서 상기 워드 라인(WL1)에 상기 제1 프로그램 전압(VP1)이 공급될 때, 상기 페이지 버퍼들(PB1∼PBK) 각각의 상기 데이터 전송 회로(270)는 전송 제어 신호(SPGM)에 응답하여, 상기 하위 비트 레지스터(230)에 저장된 로직 '0'의 상기 하위 센싱 데이터(SL1)(또는, 상기 로직 '1'의 반전된 하위 센싱 데이터(SL2b))를 프로그램 데이터로서 센싱 노드(SO)를 통하여, 상기 비트 라인들(BLe11∼BLe1K 또는 BLo11∼BLo1K)에 각각 출력한다. 그 결과, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프로그램된다.
그 후, 상기 워드 라인(WL1)에 검증 전압(PV1, 도 26 및 도 23 참고)이 공급 됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(622). 상기 페이지 버퍼들(PB1∼PBK)은 상기 독출된 데이터들에 기초하여 검증 데이터들(LVD1∼LVDK)을 각각 발생한다(623). 상기 단계(623)에서 상기 페이지 버퍼들(PB1∼PBK)의 동작은 앞서 설명한 상기 단계(612)에서의 상기 페이지 버퍼들(PB1∼PBK)의 동작과 실질적으로 동일하므로, 이에 대한 상세한 설명은 생략된다. 데이터 비교 회로에 의해, 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'인지의 여부가 판단된다(624). 상기 단계(624)에서 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'이 아닌 경우, 상기 제1 프로그램 전압(VP1)이 스텝 전압(VS)만큼 증가된다(625). 이 후, 상기 단계(625)에서 증가된 제1 프로그램 전압(VP2)이 상기 워드 라인(WL1)에 공급되고, 상기 단계들(621∼625)이 반복적으로 실행된다. 또, 상기 단계(624)에서 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'인 경우, 상기 제1 프로그램 과정(620)이 종료되고, 제2 프로그램 과정(630)이 진행된다.
도 21은 도 19에 도시된 처리 과정(630)의 상세한 흐름도이다. 먼저, 상기 단계(620)에서 최종적으로 증가된 상기 제1 프로그램 전압(VPR)보다 상기 스텝 전압(VS)만큼 더 큰 제2 프로그램 전압(VP(R+1))이 상기 선택된 워드 라인(WL1)에 공급된다(631). 도 21에 도시되지 않았지만, 상기 단계(631)에 앞서서, 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)는 독출 제어 신호(LREAD1)에 응답하여 초기화된 상태(즉, 로직 '0'의 하위 센싱 데이터(SL1)가 저장된 상태)이다. 또, 상기 페이지 버퍼들(PB1∼PBK) 각각의 상위 비트 레지스터(220)에는 입력 데이 터(D1b 또는 D2)가 저장된다. 이 후, 상기 전송 제어 신호(MPGM)에 응답하여, 상기 페이지 버퍼들(PB1∼PBK) 각각의 데이터 전송 회로(270)가 상기 상위 비트 레지스터(220)에 저장된 상기 입력 데이터(D1b 또는 D2)를 프로그램 데이터로서 센싱 노드(SO)를 통하여, 상기 비트 라인들(BLe11∼BLe1K 또는 BLo11∼BLo1K)에 각각 출력한다. 그 결과, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프로그램된다.
그 후, 상기 워드 라인(WL1)에 상기 검증 전압(PV1)보다 더 큰 검증 전압(PV2, 도 26 및 도 23 참고)이 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(632). 상기 페이지 버퍼들(PB1∼PBK)은 상기 독출된 데이터들에 기초하여 검증 데이터들(MVD1∼MVDK)을 각각 발생한다(633). 이를 좀 더 상세히 설명하면, 상기 페이지 버퍼들(PB1∼PBK) 각각의 상위 비트 레지스터(220)는 독출 제어 신호(MREAD)에 응답하여, 상기 독출된 데이터들 각각에 의해 결정되는 상기 센싱 노드(SO)의 전압을 센싱하고, 그 센싱 결과에 따른 상위 센싱 데이터(SAb)를 저장한다. 예를 들어, 상기 독출된 데이터가 로직 '1'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 검증 전압(PV2)보다 높을 때), 상기 상위 비트 레지스터(220)는 로직 '0'의 상기 상위 센싱 데이터(SAb)(즉, 로직 '1'의 반전된 상위 센싱 데이터(SA))를 저장한다. 반대로, 상기 독출된 데이터가 로직 '0'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 검증 전압(PV2)보다 낮을 때), 상기 상위 비트 레지스터(220)는 상기 입력 데이터(D1b 또는 D2)의 저장 상태를 유지한다.
상기 페이지 버퍼들(PB1∼PBK) 각각의 제1 검증 회로(250)는 상기 상위 비트 레지스터(220)로부터 수신되는 상기 상위 센싱 데이터(SA) 또는 상기 입력 데이터(D1b 또는 D2)에 응답하여, 검증 데이터(MVD1∼MVDK 중 하나)를 발생한다. 예를 들어, 상기 상위 센싱 데이터(SA)에 응답하여, 상기 제1 검증 회로(250)가 로직 '0'의 상기 검증 데이터(MVD1∼MVDK 중 하나)를 발생하고, 상기 입력 데이터(D1b 또는 D2)에 응답하여, 상기 제1 검증 회로(250)가 로직 '0' 또는 로직 '1'의 상기 검증 데이터(MVD1∼MVDK 중 하나)를 발생한다. 데이터 비교 회로에 의해, 상기 검증 데이터들(MVD1∼MVDK)이 모두 로직 '0'인지의 여부가 판단된다(634). 상기 단계(634)에서 상기 검증 데이터들(MVD1∼MVDK)이 모두 로직 '0'이 아닌 경우, 상기 제2 프로그램 전압(VP(R+1))이 상기 스텝 전압(VS)만큼 증가된다(635). 이 후, 상기 단계(635)에서 증가된 제2 프로그램 전압(VP(R+2))이 상기 워드 라인(WL1)에 공급되고, 상기 단계들(631∼635)이 반복적으로 실행된다. 또, 상기 단계(634)에서 상기 검증 데이터들(MVD1∼MVDK)이 모두 로직 '0'인 경우, 상기 제2 프로그램 과정(630)이 종료되고, 제3 프로그램 과정(640)이 진행된다.
도 22는 도 19에 도시된 처리 과정(640)의 상세한 흐름도이다. 먼저, 상기 단계(630)에서 최종적으로 증가된 상기 제2 프로그램 전압(VPS)보다 상기 스텝 전압(VS)만큼 더 큰 제3 프로그램 전압(VP(S+1))이 상기 선택된 워드 라인(WL1)에 공급된다(641). 도 22에 도시되지 않았지만, 상기 단계(641)에 앞서서, 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)는 독출 제어 신호(LREAD1)에 응답하여 초기화된다. 또, 상기 페이지 버퍼들(PB1∼PBK) 각각의 상위 비트 레지스터 (220)에는 입력 데이터(D1b 또는 D2)가 저장된다. 이 후, 상기 검증 전압(PV1)과 동일한 독출 전압이 상기 워드 라인(WL1)에 공급될 때, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터(즉, 하위 비트 데이터)가 독출된다. 이때, 독출 제어 신호(LREAD2)에 응답하여, 상기 하위 비트 레지스터(230)가 상기 하위 비트 데이터를 센싱하고, 그 센싱 결과에 따른 하위 센싱 데이터(SL2b)를 저장한다. 또, 상기 페이지 버퍼들(PB1∼PBK) 각각의 데이터 전송 회로(270)는 상기 전송 제어 신호(MPGM)에 응답하여, 상기 상위 비트 레지스터(220)에 저장된 상기 입력 데이터(D1b 또는 D2)를 상기 하위 비트 레지스터(230)에 전달한다. 상기 하위 비트 레지스터(230)는 상기 독출 제어 신호(LREAD2)에 응답하여, 상기 입력 데이터(D1b 또는 D2)에 의해 결정되는 상기 센싱 노드(SO)의 전압을 센싱하고, 그 센싱 결과에 따라 하위 센싱 데이터(SL2b)를 저장한다.
이 후, 상기 페이지 버퍼들(PB1∼PBK) 각각의 데이터 전송 회로(270)가 상기 상위 비트 레지스터(220)에 저장된 상기 입력 데이터(D1b 또는 D2)를 프로그램 데이터로서 센싱 노드(SO)를 통하여, 상기 비트 라인들(BLe11∼BLe1K 또는 BLo11∼BLo1K)에 각각 출력한다. 그 결과, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프로그램된다.
상기 워드 라인(WL1)에 상기 검증 전압(PV2)보다 큰 검증 전압(PV3, 도 26 및 도 23 참고)이 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(642). 상기 페이지 버퍼들(PB1∼PBK)은 상기 독출된 데이터들에 기초하여 검증 데이터들(LVD1∼LVDK)을 각각 발생한다 (643). 이를 좀 더 상세히 설명하면, 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(220)는 독출 제어 신호(LREAD2)에 응답하여, 상기 독출된 데이터들 각각에 의해 결정되는 상기 센싱 노드(SO)의 전압을 센싱하고, 그 센싱 결과에 따른 하위 센싱 데이터(SL2b)를 저장한다. 예를 들어, 상기 독출된 데이터가 로직 '1'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 검증 전압(PV3)보다 높을 때), 상기 하위 비트 레지스터(230)는 로직 '0'의 상기 하위 센싱 데이터(SL2b)를 저장한다. 반대로, 상기 독출된 데이터가 로직 '0'일 때(즉, 대응하는 멀티 레벨 셀의 문턱 전압이 상기 검증 전압(PV3)보다 낮을 때), 상기 하위 비트 레지스터(230)는 상기 단계(641)에 앞서서 상기 입력 데이터(D1b 또는 D2) 또는 상기 하위 비트 데이터에 기초하여 저장한 하위 센싱 데이터(SL1 또는 SL2)를 유지한다.
상기 페이지 버퍼들(PB1∼PBK) 각각의 제2 검증 회로(260)는 상기 하위 비트 레지스터(230)로부터 수신되는 상기 하위 센싱 데이터(SL1 또는 SL2)에 응답하여, 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다. 예를 들어, 상기 하위 센싱 데이터(SL1)에 응답하여, 상기 제2 검증 회로(260)가 로직 '1'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생하고, 상기 하위 센싱 데이터(SL2)에 응답하여, 상기 제2 검증 회로(260)가 로직 '0'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다. 데이터 비교 회로에 의해, 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'인지의 여부가 판단된다(644). 상기 단계(644)에서 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'이 아닌 경우, 상기 제3 프로그램 전압(VP(S+1))이 상기 스텝 전압(VS)만큼 증가된다(645). 이 후, 상기 단계(645)에서 증가된 제3 프로그램 전압 (VP(S+2))이 상기 워드 라인(WL1)에 공급되고, 상기 단계들(641∼645)이 반복적으로 실행된다. 또, 상기 단계(644)에서 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'인 경우, 상기 제3 프로그램 과정(640)이 종료된다.
도 24는 본 발명의 제2 실시예에 따른 프로그램 과정을 나타내는 흐름도 로서, 멀티 레벨 셀들의 프로그램과 관련된다. 먼저, 상기 워드 라인들(WL1∼WLJ) 중 하나(예를 들어, WL1)가 선택된다(701). 상기 선택된 워드 라인(WL1)에 시작 프로그램 전압(VA1, 도 25 참고)이 공급됨에 따라, 상기 워드 라인(WL1)에 연결된 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프로그램된다(702). 상기 단계(702)에서 상기 페이지 버퍼들(PB1∼PBK)의 동작은 도 20을 참고하여 설명한 상기 단계(620)에서 상기 페이지 버퍼들(PB1∼PBK)의 동작과 유사하므로, 이에 대한 상세한 설명은 생략된다. 이 후, 현재 실행되는 프로그램 사이클 수가 P회 인지의 여부가 판단된다(703). 상기 단계(703)에서 현재 실행되는 프로그램 사이클 수가 P회가 아닐 경우, 상기 시작 프로그램 전압(VA1)이 스텝 전압(VS)만큼 증가된다(704). 그 결과 상기 워드 라인(WL1)에는 상기 시작 프로그램 전압(VA1)으로부터 스텝 전압(VS)만큼 증가된 시작 프로그램 전압(VA2)이 공급된다. 이 후, 상기 프로그램 사이클 수가 P회로 될 때까지, 상기 단계들(701∼704)이 반복적으로 실행된다. 이 후, 상기 프로그램 사이클 수가 P회로 될 때, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 설정된 전압보다 작은 문턱 전압들을 각각 가지는 멀티 레벨 셀들(예를 들어, Me11∼Me15 또는 Mo11∼Mo15)이 선택된다(705). 상기 선택된 워드 라인(WL1)에 예비 프로그램 전압(VPE)이 공급됨에 따라, 상기 선택된 멀티 레벨 셀들 (Me11∼Me15 또는 Mo11∼Mo15)이 프로그램된다(706). 바람직하게, 상기 예비 프로그램 전압(VPE)은 시작 프로그램 전압(VAP, 도 25 참고)보다 크고, 최대 프로그램 전압(VNT, 도 25 참고) 보다 작거나 또는 동일하게 설정될 수 있다. 한편, 상기 선택된 멀티 레벨 셀들(Me11∼Me15 또는 Mo11∼Mo15)이 프로그램될 때, 선택되지 않은 멀티 레벨 셀들(Me16∼Me1K 또는 Mo16∼Mo1K)이 프로그램 금지된다(707). 그 후, 상기 시작 프로그램 전압(VAP)으로부터 스텝 전압(VS) 비율로 점차 증가되는 프로그램 전압들(VN1∼VNT)이 순차적으로 상기 선택된 워드 라인(WL1)에 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 추가로 프로그램된다(708). 상기 단계들(705∼708)은 도 17을 참고하여 설명한 상기 단계들(603∼606)과 유사하므로, 그 상세한 설명은 생략하기로 한다.
상술한 것과 같이, 본 발명에 따른 프로그램 과정에서는 설정된 전압보다 작은 문턱 전압을 가지는 멀티 레벨 셀들(즉, 프로그램 속도가 느린 멀티 레벨 셀들)만을 선택하고, 워드 라인에 이전에 공급된 프로그램 전압보다 더 큰 예비 프로그램 전압을 공급하여 선택된 멀티 레벨 셀들을 미리 프로그램하므로, 전체 프로그램 시간이 단축될 수 있다.
도 27은 본 발명의 제3 실시예에 따른 프로그램 과정을 나타내는 흐름도 로서, 싱글 레벨 셀들의 프로그램과 관련된다. 먼저, 상기 워드 라인들(WL1∼WLJ) 중 하나(예를 들어, WL1)가 선택된다(601'). 상기 선택된 워드 라인(WL1)에 시작 프로그램 전압(VSA, 도 28참고)이 공급됨에 따라, 상기 선택된 워드 라인(WL1)에 연결된 싱글 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프로그램된다(602'). 이 후, 상 기 싱글 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 설정된 전압보다 작은 문턱 전압들을 각각 가지는 싱글 레벨 셀들(예를 들어, Me11∼Me15 또는 Mo11∼Mo15)이 선택된다(603'). 상기 단계(603')의 구체적인 단계들이 도시되지 않았지만, 상기 단계(603')는 도 18을 참고하여, 상술한 것과 유사하게 실행될 수 있다.
먼저, 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)가 독출 제어 신호(LREAD1)에 응답하여 센싱 노드(SO)의 전압(예를 들어, VCC)을 센싱하고, 그 센싱 결과에 따라 로직 '0'의 하위 센싱 데이터(SL1)를 저장함으로써 초기화된다. 이 후, 상기 선택된 워드 라인(WL1)에 검증 전압(PV0 또는 PVN, 도 31참고)이 공급됨에 따라, 상기 싱글 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다. 여기에서, 상기 검증 전압(PV0)은 검증 전압(PV1, 도 31 참고)보다 작게 설정될 수 있고, 상기 검증 전압(PVN)은 네가티브 전압으로 설정될 수 있다. 상기 설정된 전압은 상기 검증 전압(PV0 또는 PVN)보다 더 크거나 또는 동일할 수 있다.
상기 페이지 버퍼들(PB1∼PBK)은 상기 독출된 데이터들에 기초하여 검증 데이터들(LVD1∼LVDK)을 각각 발생한다. 이를 좀 더 상세히 설명하면, 먼저, 상기 페이지 버퍼들(PB1∼PBK) 각각의 하위 비트 레지스터(230)는 독출 제어 신호(LREAD2)에 응답하여, 상기 독출된 데이터들 각각에 의해 결정되는 상기 센싱 노드(SO)의 전압을 센싱하고, 그 센싱 결과에 따른 하위 센싱 데이터(SL2b)를 저장한다. 예를 들어, 상기 독출된 데이터가 로직 '1'일 때(즉, 대응하는 싱글 레벨 셀의 문턱 전압이 상기 검증 전압(PV0 또는 PVN)보다 높을 때), 상기 하위 비트 레지스터(230) 는 로직 '0'의 상기 하위 센싱 데이터(SL2b)(즉, 로직 '1'의 반전된 하위 센싱 데이터(SL2))를 저장한다. 반대로, 상기 독출된 데이터가 로직 '0'일 때(즉, 대응하는 싱글 레벨 셀의 문턱 전압이 상기 검증 전압(PV0 또는 PVN)보다 낮을 때), 상기 하위 비트 레지스터(230)는 로직 '0'의 상기 하위 센싱 데이터(SL1)의 저장 상태(즉, 초기화된 상태)를 유지한다. 상기 하위 비트 레지스터(230)에 저장된 로직 '0'의 상기 하위 센싱 데이터(SL1)는 추후에 실행될 프로그램 단계(604')에서 프로그램 데이터로서 사용된다.
상기 페이지 버퍼들(PB1∼PBK) 각각의 제2 검증 회로(260)는 상기 하위 비트 레지스터(230)로부터 수신되는 상기 하위 센싱 데이터(SL1) 또는 반전된 하위 센싱 데이터(SL2)에 응답하여, 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다. 예를 들어, 상기 하위 센싱 데이터(SL1)에 응답하여, 상기 제2 검증 회로(260)가 로직 '1'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생하고, 상기 반전된 하위 센싱 데이터(SL2)에 응답하여, 상기 제2 검증 회로(260)가 로직 '0'의 상기 검증 데이터(LVD1∼LVDK 중 하나)를 발생한다.
이 후, 데이터 비교 회로(미도시)에 의해, 상기 검증 데이터들(LVD1∼LVDK) 각각이 로직 '1'인지의 여부가 판단된다. 로직 '1'인 검증 데이터들(예를 들어, LVD1∼LVD5)에 대응하는 싱글 레벨 셀들(예를 들어, Me11∼Me15 또는 Mo11∼Mo15)은 그 문턱 전압들이 상기 설정된 전압보다 작은 것으로 판정된다. 또, 로직 '1'이 아닌 검증 데이터들(예를 들어, LVD6∼LVDK)에 대응하는 싱글 레벨 셀들(예를 들어, Me16∼Me1K 또는 Mo16∼Mo1K)은 그 문턱 전압들이 상기 설정된 전압보다 큰 것 으로 판정된다. 결과적으로, 상기 단계(603')에 의하여, 상기 싱글 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 상기 설정된 전압보다 작은 문턱 전압들을 각각 가지는 상기 싱글 레벨 셀들(Me11∼Me15 또는 Mo11∼Mo15)이 필터링된다.
상기 선택된 워드 라인(WL1)에 상기 시작 프로그램 전압(VSA)보다 큰 예비 프로그램 전압(VPE)이 공급됨에 따라, 상기 선택된 싱글 레벨 셀들(Me11∼Me15 또는 Mo11∼Mo15)이 프로그램된다(604'). 바람직하게, 상기 예비 프로그램 전압(VPE)은 상기 시작 프로그램 전압(VSA)보다 크고, 최대 프로그램 전압(VSLF, 도 28참고)보다 작거나 또는 동일하게 설정될 수 있다. 한편, 상기 선택된 싱글 레벨 셀들(Me11∼Me15 또는 Mo11∼Mo15)이 프로그램될 때, 선택되지 않은 싱글 레벨 셀들(Me16∼Me1K 또는 Mo16∼Mo1K)이 프로그램 금지된다(605'). 그 후, 상기 시작 프로그램 전압(VSA)으로부터 스텝 전압(VS) 비율로 점차 증가되는 프로그램 전압들(VSL1∼VSLF)(F는 정수)이 순차적으로 상기 선택된 워드 라인(WL1)에 공급됨에 따라, 상기 싱글 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 추가로 프로그램된다(606').
도 29는 본 발명의 제4 실시예에 따른 프로그램 과정을 나타내는 흐름도 로서, 싱글 레벨 셀들의 프로그램과 관련된다. 먼저, 상기 워드 라인들(WL1∼WLJ) 중 하나(예를 들어, WL1)가 선택된다(701'). 상기 선택된 워드 라인(WL1)에 시작 프로그램 전압(VSA1, 도 30 참고)이 공급됨에 따라, 상기 워드 라인(WL1)에 연결된 싱글 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 프로그램된다(702'). 이 후, 현재 실행되는 프로그램 사이클 수가 P회 인지의 여부가 판단된다(703'). 상기 단계(703') 에서 현재 실행되는 프로그램 사이클 수가 P회가 아닐 경우, 상기 시작 프로그램 전압(VSA1)이 스텝 전압(VS)만큼 증가된다(704'). 그 결과 상기 워드 라인(WL1)에는 상기 시작 프로그램 전압(VSA1)으로부터 스텝 전압(VS)만큼 증가된 시작 프로그램 전압(VSA2)이 공급된다. 이 후, 상기 프로그램 사이클 수가 P회로 될 때까지, 상기 단계들(701'∼704')이 반복적으로 실행된다. 이 후, 상기 프로그램 사이클 수가 P회로 될 때, 상기 싱글 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K) 중에서, 설정된 전압보다 작은 문턱 전압들을 각각 가지는 싱글 레벨 셀들(예를 들어, Me11∼Me15 또는 Mo11∼Mo15)이 선택된다(705'). 상기 선택된 워드 라인(WL1)에 예비 프로그램 전압(VPE)이 공급됨에 따라, 상기 선택된 싱글 레벨 셀들(Me11∼Me15 또는 Mo11∼Mo15)이 프로그램된다(706'). 바람직하게, 상기 예비 프로그램 전압(VPE)은 시작 프로그램 전압(VSAP, 도 30 참고)보다 크고, 최대 프로그램 전압(VBH, 도 30 참고)(H는 정수) 보다 작거나 또는 동일하게 설정될 수 있다. 한편, 상기 선택된 싱글 레벨 셀들(Me11∼Me15 또는 Mo11∼Mo15)이 프로그램될 때, 선택되지 않은 싱글 레벨 셀들(Me16∼Me1K 또는 Mo16∼Mo1K)이 프로그램 금지된다(707'). 그 후, 상기 시작 프로그램 전압(VSAP)으로부터 스텝 전압(VS) 비율로 점차 증가되는 프로그램 전압들(VB1∼VBH)이 순차적으로 상기 선택된 워드 라인(WL1)에 공급됨에 따라, 상기 싱글 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 추가로 프로그램된다(708'). 상기 단계들(705'∼708')은 도 27을 참고하여 설명한 상기 단계들(603'∼606')과 유사하므로, 그 상세한 설명은 생략하기로 한다.
상술한 것과 같이, 본 발명에 따른 프로그램 과정에서는 설정된 전압보다 작 은 문턱 전압을 가지는 멀티 레벨 셀들(즉, 프로그램 속도가 느린 멀티 레벨 셀들)만을 선택하고, 워드 라인에 이전에 공급된 프로그램 전압보다 더 큰 예비 프로그램 전압을 공급하여 선택된 멀티 레벨 셀들을 미리 프로그램하므로, 전체 프로그램 시간이 단축될 수 있다.
도 32는 본 발명의 또 다른 실시예에 따른 프로그램 과정을 나타내는 흐름도이다. 상기 워드 라인들(WL1∼WLJ) 중 하나(예를 들어, WL1)가 선택된다(810). 상기 선택된 워드 라인(WL1)에 시작 프로그램 전압(VG1)으로부터 제1 스텝 전압(Vs1, 도 36 참고)(예를 들어, 0.2V) 비율로 점차 증가되는 제1 프로그램 전압들(VG2∼VGX)(X는 정수)(도 36 참고)이 순차적으로 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 제1 프로그램된다(820). 또, 상기 제1 프로그램 단계(820)에서 최종적으로 증가된 상기 제1 프로그램 전압(VGX)으로부터 상기 제1 스텝 전압(Vs1) 비율로 점차 증가되는 제2 프로그램 전압들(VG(X+1)∼VGY)(Y는 정수)(도 36 참고)이 상기 선택된 워드 라인(WL1)에 순차적으로 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 제2 프로그램된다(830). 이 후, 상기 제2 프로그램 단계(830)에서 최종적으로 증가된 상기 제2 프로그램 전압(VGY)으로부터 제2 스텝 전압(Vs2, 도 36 참고)(예를 들어, 0.5V) 비율로 점차 증가되는 제3 프로그램 전압들(VG(Y+1)∼VGZ)(Z는 정수)(도 36 참고)이 상기 선택된 워드 라인(WL1)에 순차적으로 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)이 제2 프로그램된다(830). 바람직하게, 상기 제2 스텝 전압(Vs2)(예를 들어, 0.5V∼0.95V)은 상기 제1 스텝 전압(Vs1)(예를 들어, 0.1V∼0.3V)보다 크게 설 정된다. 택일적으로, 상기 제1 스텝 전압(Vs1)이 상기 제2 스텝 전압(Vs2)보다 크게 설정될 수도 있다.
도 33은 도 32에 도시된 처리 과정(820)의 상세한 흐름도이다. 먼저, 상기 선택된 워드 라인(WL1)에 상기 제1 프로그램 전압(VG1)이 공급된다(821). 그 후, 상기 워드 라인(WL1)에 검증 전압(PV1)이 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(822). 상기 페이지 버퍼들(PB1∼PBK)은 상기 독출된 데이터들에 기초하여 검증 데이터들(LVD1∼LVDK)을 각각 발생한다(823). 데이터 비교 회로에 의해, 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'인지의 여부가 판단된다(824). 상기 단계(824)에서 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'이 아닌 경우, 상기 제1 프로그램 전압(VG1)이 제1 스텝 전압(Vs1)만큼 증가된다(825). 이 후, 상기 단계(825)에서 증가된 제1 프로그램 전압(VG2)이 상기 워드 라인(WL1)에 공급되고, 상기 단계들(821∼825)이 반복적으로 실행된다. 또, 상기 단계(824)에서 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'인 경우, 상기 제1 프로그램 과정(820)이 종료되고, 제2 프로그램 과정(830)이 진행된다. 상기 단계들(821∼825)에서 상기 페이지 버퍼들(PB1∼PBK)의 동작은 도 20을 참고하여 설명한 상기 단계들(621∼625)에서의 상기 페이지 버퍼들(PB1∼PBK)의 동작과 유사하므로, 이에 대한 상세한 설명이 생략된다.
도 34는 도 32에 도시된 처리 과정(830)의 상세한 흐름도이다. 먼저, 상기 단계(820)에서 최종적으로 증가된 상기 제1 프로그램 전압(VGX)보다 상기 제1 스텝 전압(Vs1)만큼 더 큰 제2 프로그램 전압(VG(X+1))이 상기 선택된 워드 라인(WL1)에 공급된다(831). 그 후, 상기 워드 라인(WL1)에 상기 검증 전압(PV1)보다 더 큰 검증 전압(PV2)이 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(832). 상기 페이지 버퍼들(PB1∼PBK)은 상기 독출된 데이터들에 기초하여 검증 데이터들(MVD1∼MVDK)을 각각 발생한다(833). 데이터 비교 회로에 의해, 상기 검증 데이터들(MVD1∼MVDK)이 모두 로직 '0'인지의 여부가 판단된다(834). 상기 단계(834)에서 상기 검증 데이터들(MVD1∼MVDK)이 모두 로직 '0'이 아닌 경우, 상기 제2 프로그램 전압(VG(X+1))이 상기 제1 스텝 전압(Vs1)만큼 증가된다(835). 이 후, 상기 단계(835)에서 증가된 제2 프로그램 전압(VG(X+2))이 상기 워드 라인(WL1)에 공급되고, 상기 단계들(831∼835)이 반복적으로 실행된다. 또, 상기 단계(834)에서 상기 검증 데이터들(MVD1∼MVDK)이 모두 로직 '0'인 경우, 상기 제2 프로그램 과정(830)이 종료되고, 제3 프로그램 과정(840)이 진행된다. 상기 단계들(831∼835)에서 상기 페이지 버퍼들(PB1∼PBK)의 동작은 도 21을 참고하여 설명한 상기 단계들(631∼635)에서의 상기 페이지 버퍼들(PB1∼PBK)의 동작과 유사하므로, 이에 대한 상세한 설명이 생략된다.
도 35는 도 32에 도시된 처리 과정(840)의 상세한 흐름도이다. 먼저, 상기 단계(830)에서 최종적으로 증가된 상기 제2 프로그램 전압(VGY)보다 상기 제2 스텝 전압(Vs2)만큼 더 큰 제3 프로그램 전압(VG(Y+1))이 상기 선택된 워드 라인(WL1)에 공급된다(841). 상기 워드 라인(WL1)에 상기 검증 전압(PV2)보다 큰 검증 전압(PV3)이 공급됨에 따라, 상기 멀티 레벨 셀들(Me11∼Me1K 또는 Mo11∼Mo1K)로부터 데이터들(미도시)이 독출된다(842). 상기 페이지 버퍼들(PB1∼PBK)은 상기 독출된 데이터들에 기초하여 검증 데이터들(LVD1∼LVDK)을 각각 발생한다(843). 데이터 비교 회로에 의해, 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'인지의 여부가 판단된다(844). 상기 단계(844)에서 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'이 아닌 경우, 상기 제3 프로그램 전압(VG(Y+1))이 상기 제2 스텝 전압(Vs2)만큼 증가된다(845). 이 후, 상기 단계(845)에서 증가된 제3 프로그램 전압(VG(Y+2))이 상기 워드 라인(WL1)에 공급되고, 상기 단계들(841∼845)이 반복적으로 실행된다. 또, 상기 단계(844)에서 상기 검증 데이터들(LVD1∼LVDK)이 모두 로직 '0'인 경우, 상기 제3 프로그램 과정(840)이 종료된다. 상기 단계들(841∼845)에서 상기 페이지 버퍼들(PB1∼PBK)의 동작은 도 22을 참고하여 설명한 상기 단계들(641∼645)에서의 상기 페이지 버퍼들(PB1∼PBK)의 동작과 유사하므로, 이에 대한 상세한 설명이 생략된다. 상술한 것과 같이, 제1 및 제2 프로그램 과정(즉, 멀티 레벨 셀에 "10" 또는 "00"의 데이터가 프로그램되는 과정)에서 스텝 전압보다, 제3 프로그램 과정(즉, 멀티 레벨 셀에 "01"의 데이터가 프로그램되는 과정)에서의 스텝 전압이 더 크게 설정되면, 전체 프로그램 시간이 단축될 수 있다. 또한, 제1 및 제2 프로그램 과정에서 멀티 레벨 셀이 높은 프로그램 전압에 의해 오버프로그램되는 것이 방지될 수 있다.
상기에서 설명한 본 발명의 기술적 사상은 바람직한 실시예에서 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명은 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술적 사상의 범위 내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.
이상에서 설명한 바와 같이, 본 발명에 따른 소거 방법은 멀티 레벨 셀들의 문턱 전압들이 분포되는 전압 범위가 감소하도록 프리 프로그램하므로, 멀티 레벨 셀들의 소거시 패일(fail) 발생 비율을 감소시킬 수 있고, 멀티 레벨 셀들의 문턱 전압 분포를 개선시켜, 추후에 실행될 프로그램 동작에서 전체 프로그램 시간이 감소될 수 있다.
또한, 본 발명에 따른 프로그램 방법은 프로그램 속도가 느린 멀티 레벨 셀들만을 미리 선별하여 프로그램한 후, ISPP 방식의 프로그램 과정을 실행함으로써, 전체 프로그램 시간을 줄일 수 있다.
또, 본 발명에 따른 프로그램 방법은 ISPP 방식의 프로그램 과정에서 멀티 레벨 셀들의 문턱 전압들이 설정된 검증 전압으로 되기 전과 이후의 스텝 전압(즉, 프로그램 전압의 증가 폭)을 다르게 설정함으로써, 전체 프로그램 시간을 줄일 수 있다.

Claims (52)

  1. 워드 라인들과 비트 라인들을 공유하는 복수의 멀티 레벨 셀들을 포함하는 플래시 메모리 장치의 소거 방법에 있어서,
    상기 복수의 멀티 레벨 셀들의 문턱 전압들이 분포되는 범위가 감소하도록 상기 복수의 멀티 레벨 셀들 중 일부를 프리 프로그램하는 단계;
    상기 복수의 멀티 레벨 셀들을 소거하는 단계; 및
    상기 복수의 멀티 레벨 셀들이 정상적으로 소거되었는지의 여부를 검증하는 단계를 포함하는 플래시 메모리 장치의 소거 방법.
  2. 제1항에 있어서, 상기 프리 프로그램 단계는,
    상기 워드 라인들 중 하나를 선택하는 단계;
    상기 복수의 멀티 레벨 셀들 중에서, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 일부를 프로그램하는 단계;
    상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 일부가 프로그램되었는지의 여부를 판단하는 단계;
    상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 일부가 프로그램될 때까지, 상기 선택 단계, 상기 프로그램 단계, 및 상기 판단 단계를 반복하는 단계;
    상기 워드 라인들 중 마지막 워드 라인에 연결된 멀티 레벨 셀들 중 일부가 프로그램될 때까지, 상기 선택 단계 내지 상기 반복 단계를 반복적으로 실행하는 단계를 포함하는 플래시 메모리 장치의 소거 방법.
  3. 제2항에 있어서, 상기 프로그램 단계는,
    상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중에서, 제1 내지 제4 전압 범위들 중 어느 한 범위 내에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들을 선택하는 단계;
    상기 선택된 멀티 레벨 셀들의 문턱 전압들이, 상기 제1 내지 제4 전압 범위들 중 상기 선택된 멀티 레벨 셀들의 문턱 전압들이 포함되는 전압 범위를 제외한 나머지 전압 범위들 중 하나로 이동하도록, 상기 선택된 멀티 레벨 셀들을 프로그램하는 단계; 및
    상기 선택된 멀티 레벨 셀들이 프로그램될 때, 상기 선택된 멀티 레벨 셀들을 제외한 나머지 멀티 레벨 셀들을 프로그램 금지시키는 단계를 포함하는 플래시 메모리 장치의 소거 방법.
  4. 제3항에 있어서,
    상기 제1 전압 범위의 최대 전압은 상기 제2 전압 범위의 최소 전압보다 작고, 상기 제2 전압 범위의 최대 전압은 상기 제3 전압 범위의 최소 전압보다 작고, 상기 제3 전압 범위의 최대 전압은 상기 제4 전압 범위의 최소 전압보다 작고,
    상기 멀티 레벨 셀들을 선택하는 단계에서, 상기 제1 전압 범위에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들이 선택되는 플래시 메모리 장치의 소거 방법.
  5. 제4항에 있어서,
    상기 선택된 멀티 레벨 셀들을 프로그램하는 단계에서, 상기 선택된 멀티 레벨 셀들이 프로그램될 때, 상기 선택된 멀티 레벨 셀들의 문턱 전압들은 상기 제1 전압 범위에서 상기 제2 전압 범위로 이동하는 플래시 메모리 장치의 소거 방법.
  6. 제4항에 있어서,
    상기 선택된 멀티 레벨 셀들을 프로그램하는 단계에서, 상기 선택된 멀티 레벨 셀들이 프로그램될 때, 상기 선택된 멀티 레벨 셀들의 문턱 전압들은 상기 제1 전압 범위에서 상기 제4 전압 범위로 이동하는 플래시 메모리 장치의 소거 방법.
  7. 제4항에 있어서, 상기 멀티 레벨 셀들을 선택하는 단계는,
    상기 선택된 워드 라인에 상기 제1 전압 범위의 최대 전압보다 크고, 상기 제2 전압 범위의 최소 전압보다 작거나 또는 같은 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들로부터 데이터들을 독출하는 단계;
    상기 독출된 데이터들에 기초하여, 검증 데이터들을 발생하는 단계; 및
    상기 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 그 문턱 전압이 상기 제1 전압 범위내에 포함되는 멀티 레벨 셀들을 필터링하는 단계를 포함하고,
    상기 검증 데이터들의 발생 단계에서, 상기 독출된 데이터들 중 일부에 기초하여 발생된 센싱 데이터들이 프로그램 데이터들로서, 상기 비트 라인들 중 일부를 통하여 상기 필터링된 멀티 레벨 셀들에 연결된 페이지 버퍼들 각각에 저장되는 플래시 메모리 장치의 소거 방법.
  8. 제2항에 있어서, 상기 프로그램 단계는,
    상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중에서, 제1 내지 제4 전압 범위들 중 상기 제1 전압 범위내에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들을 선택하는 단계;
    상기 선택된 멀티 레벨 셀들의 문턱 전압들이 상기 제2 전압 범위로 이동하도록, 상기 선택된 멀티 레벨 셀들을 프로그램하는 단계;
    상기 선택된 멀티 레벨 셀들이 프로그램될 때, 상기 선택된 멀티 레벨 셀들을 제외한 나머지 멀티 레벨 셀들을 프로그램 금지시키는 단계;
    상기 복수의 멀티 레벨 셀들 중 상기 제2 전압 범위내에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들을 추가로 선택하는 단계;
    상기 추가로 선택된 멀티 레벨 셀들의 문턱 전압들이 상기 제3 전압 범위로 이동하도록, 상기 추가로 선택된 멀티 레벨 셀들을 추가로 프로그램하는 단계; 및
    상기 추가로 선택된 멀티 레벨 셀들이 추가로 프로그램될 때, 상기 추가로 선택된 멀티 레벨 셀들을 제외한 나머지 멀티 레벨 셀들을 프로그램 금지시키는 단계를 포함하는 플래시 메모리 장치의 소거 방법.
  9. 제8항에 있어서,
    상기 제1 전압 범위의 최대 전압은 상기 제2 전압 범위의 최소 전압보다 작고, 상기 제2 전압 범위의 최대 전압은 상기 제3 전압 범위의 최소 전압보다 작고, 상기 제3 전압 범위의 최대 전압은 상기 제4 전압 범위의 최소 전압보다 작은 플래시 메모리 장치의 소거 방법.
  10. 제8항에 있어서, 상기 멀티 레벨 셀들을 선택하는 단계는,
    상기 선택된 워드 라인에 상기 제1 전압 범위의 최대 전압보다 크고, 상기 제2 전압 범위의 최소 전압보다 작거나 또는 같은 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들로부터 데이터들을 독출하는 단계;
    상기 독출된 데이터들에 기초하여, 검증 데이터들을 발생하는 단계; 및
    상기 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 그 문턱 전압이 상기 제1 전압 범위내에 포함되는 멀티 레벨 셀들을 필터링하는 단계를 포함하고,
    상기 검증 데이터들의 발생 단계에서, 상기 독출된 데이터들 중 일부에 기초하여 발생된 센싱 데이터들이 프로그램 데이터들로서, 상기 비트 라인들 중 일부를 통하여 상기 필터링된 멀티 레벨 셀들에 연결된 페이지 버퍼들 각각에 저장되는 플래시 메모리 장치의 소거 방법.
  11. 제8항에 있어서, 상기 멀티 레벨 셀들을 추가로 선택하는 단계는,
    상기 선택된 워드 라인에 상기 제2 전압 범위의 최대 전압보다 크고, 상기 제3 전압 범위의 최소 전압보다 작거나 또는 같은 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들로부터 데이터들을 독출하는 단계;
    상기 독출된 데이터들에 기초하여, 검증 데이터들을 발생하는 단계; 및
    상기 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 그 문턱 전압이 상기 제2 전압 범위내에 포함되는 멀티 레벨 셀들을 필터링하는 단계를 포함하고,
    상기 검증 데이터들의 발생 단계에서, 상기 독출된 데이터들 중 일부에 기초하여 발생된 센싱 데이터들이 프로그램 데이터들로서, 상기 비트 라인들 중 일부를 통하여 상기 필터링된 멀티 레벨 셀들에 연결된 페이지 버퍼들 각각에 저장되는 플래시 메모리 장치의 소거 방법.
  12. 제2항에 있어서, 상기 검증 단계는,
    상기 선택된 워드 라인에 연결된 멀티 레벨 셀들에 상기 비트 라인들을 통하여 연결된 페이지 버퍼들 각각의 상위 비트 레지스터와 하위 비트 레지스터를 초기화시키는 단계;
    상기 선택된 워드 라인에 소거 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들로부터 데이터들을 독출하는 단계;
    상기 독출된 데이터들에 기초하여 상기 페이지 버퍼들의 상기 하위 비트 레 지스터들에 하위 센싱 데이터들을 각각 저장하는 단계;
    상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 리페어 된 멀티 레벨 셀들에 연결된 페이지 버퍼들 각각의 상위 비트 레지스터에 저장된 초기 데이터를 하위 비트 레지스터에 전달하는 단계;
    상기 페이지 버퍼들의 상기 하위 비트 레지스터들에 각각 저장된 상기 하위 센싱 데이터들 또는 상기 초기 데이터들에 기초하여 검증 데이터들을 발생하는 단계; 및
    상기 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들의 소거가 패일(fail)인지의 여부를 판단하는 단계를 포함하는 플래시 메모리 장치의 소거 방법.
  13. 제1항에 있어서,
    상기 소거 단계와 상기 검증 단계 사이에, 상기 복수의 멀티 레벨 셀들 중 과(over) 소거된 멀티 레벨 셀들의 문턱 전압들이 설정된 전압 범위내에 포함되도록, 상기 복수의 멀티 레벨 셀들을 포스트(post) 프로그램하는 단계를 더 포함하는 플래시 메모리 장치의 소거 방법.
  14. 제13항에 있어서, 상기 프리 프로그램 단계는,
    상기 워드 라인들 중 하나를 선택하는 단계;
    상기 복수의 멀티 레벨 셀들 중에서, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 일부를 프로그램하는 단계;
    상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 일부가 프로그램되었는지의 여부를 판단하는 단계;
    상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 일부가 프로그램될 때까지, 상기 선택 단계, 상기 프로그램 단계, 및 상기 판단 단계를 반복하는 단계;
    상기 워드 라인들 중 마지막 워드 라인에 연결된 멀티 레벨 셀들 중 일부가 프로그램될 때까지, 상기 선택 단계, 상기 프로그램 단계, 상기 판단 단계, 및 상기 반복 단계를 반복적으로 실행하는 단계를 포함하는 플래시 메모리 장치의 소거 방법.
  15. 제14항에 있어서, 상기 프로그램 단계는,
    상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중에서, 제1 내지 제4 전압 범위들 중 제1 전압 범위내에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들을 선택하는 단계;
    상기 선택된 멀티 레벨 셀들의 문턱 전압들이 상기 제4 전압 범위로 이동하도록, 상기 선택된 멀티 레벨 셀들을 프로그램하는 단계;
    상기 선택된 멀티 레벨 셀들이 프로그램될 때, 상기 선택된 멀티 레벨 셀들을 제외한 나머지 멀티 레벨 셀들을 프로그램 금지시키는 단계;
    상기 복수의 멀티 레벨 셀들 중 상기 제2 전압 범위내에 포함되는 문턱 전압들을 각각 가지는 멀티 레벨 셀들을 추가로 선택하는 단계;
    상기 추가로 선택된 멀티 레벨 셀들의 문턱 전압들이 상기 제3 전압 범위로 이동하도록, 상기 추가로 선택된 멀티 레벨 셀들을 추가로 프로그램하는 단계; 및
    상기 추가로 선택된 멀티 레벨 셀들이 추가로 프로그램될 때, 상기 추가로 선택된 멀티 레벨 셀들을 제외한 나머지 멀티 레벨 셀들을 프로그램 금지시키는 단계를 포함하는 플래시 메모리 장치의 소거 방법.
  16. 제15항에 있어서,
    상기 제1 전압 범위의 최대 전압은 상기 제2 전압 범위의 최소 전압보다 작고, 상기 제2 전압 범위의 최대 전압은 상기 제3 전압 범위의 최소 전압보다 작고, 상기 제3 전압 범위의 최대 전압은 상기 제4 전압 범위의 최소 전압보다 작은 플래시 메모리 장치의 소거 방법.
  17. 제15항에 있어서, 상기 멀티 레벨 셀들을 선택하는 단계는,
    상기 선택된 워드 라인에 상기 제1 전압 범위의 최대 전압보다 크고, 상기 제2 전압 범위의 최소 전압보다 작거나 또는 같은 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들로부터 데이터들을 독출하는 단계;
    상기 독출된 데이터들에 기초하여, 검증 데이터들을 발생하는 단계; 및
    상기 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 그 문턱 전압이 상기 제1 전압 범위내에 포함되는 멀티 레벨 셀들을 필터링하는 단계를 포함하고,
    상기 검증 데이터들의 발생 단계에서, 상기 독출된 데이터들 중 일부에 기초하여 발생된 센싱 데이터들이 프로그램 데이터들로서, 상기 비트 라인들 중 일부를 통하여 상기 필터링된 멀티 레벨 셀들에 연결된 페이지 버퍼들 각각에 저장되는 플래시 메모리 장치의 소거 방법.
  18. 제15항에 있어서, 상기 멀티 레벨 셀들을 추가로 선택하는 단계는,
    상기 선택된 워드 라인에 상기 제2 전압 범위의 최대 전압보다 크고, 상기 제3 전압 범위의 최소 전압보다 작거나 또는 같은 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들로부터 데이터들을 독출하는 단계;
    상기 독출된 데이터들에 기초하여, 검증 데이터들을 발생하는 단계; 및
    상기 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 그 문턱 전압이 상기 제2 전압 범위내에 포함되는 멀티 레벨 셀들을 필터링하는 단계를 포함하고,
    상기 검증 데이터들의 발생 단계에서, 상기 독출된 데이터들 중 일부에 기초하여 발생된 센싱 데이터가 프로그램 데이터로서, 상기 비트 라인들 중 일부를 통하여 상기 필터링된 멀티 레벨 셀들에 연결된 페이지 버퍼들 각각에 저장되는 플래시 메모리 장치의 소거 방법.
  19. 제13항에 있어서, 상기 포스트 프로그램 단계는,
    상기 워드 라인들 중 하나를 선택하는 단계;
    상기 선택된 워드 라인에 점차 증가하는 프로그램 전압을 공급하여, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들을 프로그램하는 단계;
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들에 상기 비트 라인들을 통하여 각각 연결된 페이지 버퍼들 각각의 상위 비트 레지스터와 하위 비트 레지스터를 초기화시키는 단계;
    상기 선택된 워드 라인에 제1 소거 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들로부터 제1 데이터들을 독출하는 단계;
    상기 제1 데이터들에 기초하여 상기 페이지 버퍼들의 상기 하위 비트 레지스터들에 제1 하위 센싱 데이터들을 각각 저장하는 단계;
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들 중 리페어 된 멀티 레벨 셀들에 연결된 페이지 버퍼들의 상위 비트 레지스터들에 각각 저장된 초기 데이터들을 하위 비트 레지스터들에 각각 전달하는 단계;
    상기 하위 비트 레지스터들에 각각 저장된 상기 제1 하위 센싱 데이터들 또는 상기 초기 데이터들에 기초하여 제1 검증 데이터들을 발생하는 단계;
    상기 제1 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들 중 적어도 하나의 문턱 전압이 상기 제1 소거 검증 전압보다 더 큰지의 여부를 판단하는 단계;
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들 중 적어도 하나의 문턱 전압이 상기 제1 소거 검증 전압보다 더 커질 때까지, 상기 프로그램 단계 내지 상기 판단 단계를 반복하는 단계; 및
    상기 선택된 워드 라인이 마지막 워드 라인으로 될 때까지 상기 선택 단계 내지 상기 반복 단계를 반복적으로 실행하는 단계를 포함하는 플래시 메모리 장치의 소거 방법.
  20. 제19항에 있어서, 상기 검증 단계는,
    상기 페이지 버퍼들 각각의 상위 비트 레지스터와 하위 비트 레지스터를 초기화시키는 단계;
    상기 선택된 워드 라인에 제2 소거 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들로부터 제2 데이터들을 독출하는 단계;
    상기 제2 데이터들에 기초하여 상기 페이지 버퍼들의 상기 하위 비트 레지스터들에 제2 하위 센싱 데이터들을 각각 저장하는 단계;
    상기 리페어 된 멀티 레벨 셀들에 연결된 페이지 버퍼들의 상위 비트 레지스터들에 각각 저장된 상기 초기 데이터들을 상기 하위 비트 레지스터들에 각각 전달하는 단계;
    상기 하위 비트 레지스터들에 각각 저장된 상기 제2 하위 센싱 데이터들 또는 상기 초기 데이터들에 기초하여 제2 검증 데이터들을 발생하는 단계; 및
    상기 제2 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들의 소거가 패일인지의 여부를 판단하는 단계를 포함하는 플래시 메모리 장치의 소거 방법.
  21. 제20항에 있어서,
    상기 제2 소거 검증 전압은 상기 제1 소거 검증 전압보다 더 큰 플래시 메모리 장치의 소거 방법.
  22. 제20항에 있어서,
    상기 제1 소거 검증 전압은 0V인 플래시 메모리 장치의 소거 방법.
  23. 워드 라인들과 비트 라인들을 공유하는 복수의 메모리 셀들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서,
    상기 워드 라인들 중 하나를 선택하는 단계;
    상기 선택된 워드 라인에 시작 프로그램 전압을 공급하여, 상기 복수의 메모리 셀들 중 상기 선택된 워드 라인에 연결된 메모리 셀들을 프로그램하는 단계;
    상기 선택된 워드 라인에 연결된 메모리 셀들 중에서, 설정된 전압보다 작은 문턱 전압들을 각각 가지는 메모리 셀들을 선택하는 단계;
    상기 선택된 워드 라인에 예비 프로그램 전압을 공급하여 상기 선택된 메모리 셀들을 프로그램하는 단계;
    상기 선택된 메모리 셀들이 프로그램될 때, 상기 선택된 메모리 셀들을 제외한 나머지 메모리 셀들을 프로그램 금지시키는 단계; 및
    상기 시작 프로그램 전압으로부터 스텝 전압 비율로 점차 증가되는 프로그램 전압을 상기 선택된 워드 라인에 공급하면서, 상기 선택된 워드 라인에 연결된 메 모리 셀들을 추가로 프로그램하는 단계를 포함하는 플래시 메모리 장치의 프로그램 방법.
  24. 제23항에 있어서,
    상기 설정된 전압은 0V인 플래시 메모리 장치의 프로그램 방법.
  25. 제23항에 있어서,
    상기 예비 프로그램 전압은 상기 시작 프로그램 전압보다 크고, 상기 추가로 프로그램하는 단계에서 최대로 증가된 프로그램 전압보다 작거나 또는 동일한 플래시 메모리 장치의 프로그램 방법.
  26. 제23항에 있어서, 상기 메모리 셀들을 선택하는 단계는,
    상기 선택된 워드 라인에 제1 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 메모리 셀들로부터 제1 데이터들을 독출하는 단계;
    상기 제1 데이터들에 기초하여, 제1 검증 데이터들을 발생하는 단계; 및
    상기 제1 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 메모리 셀들 중 상기 설정된 전압보다 작은 문턱 전압들을 각각 가지는 메모리 셀들을 필터링하는 단계를 포함하고,
    상기 제1 검증 데이터들의 발생 단계에서, 상기 제1 데이터들 중 일부에 기초하여 발생된 센싱 데이터들이 프로그램 데이터들로서, 상기 비트 라인들 중 일부 를 통하여 상기 필터링된 메모리 셀들에 연결된 페이지 버퍼들 각각에 저장되는 플래시 메모리 장치의 프로그램 방법.
  27. 제26항에 있어서,
    상기 제1 검증 전압은 상기 설정된 전압보다 작거나, 또는 동일한 플래시 메모리 장치의 프로그램 방법.
  28. 제26항에 있어서,
    상기 제1 검증 전압은 네가티브(negative) 전압인 플래시 메모리 장치의 프로그램 방법.
  29. 제26항에 있어서,
    상기 메모리 셀들이 멀티 레벨 셀들인 플래시 메모리 장치의 프로그램 방법.
  30. 제29항에 있어서, 상기 추가로 프로그램하는 단계는,
    상기 선택된 워드 라인에 상기 시작 프로그램 전압으로부터 상기 스텝 전압 비율로 점차 증가되는 제1 프로그램 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들을 제1 프로그램하는 단계;
    상기 선택된 워드 라인에 상기 제1 프로그램 단계에서 최종적으로 증가된 상기 제1 프로그램 전압으로부터 상기 스텝 전압 비율로 점차 증가되는 제2 프로그램 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들을 제2 프로그램하는 단계; 및
    상기 선택된 워드 라인에 상기 제2 프로그램 단계에서 최종적으로 증가된 상기 제2 프로그램 전압으로부터 상기 스텝 전압 비율로 점차 증가되는 제3 프로그램 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들을 제3 프로그램하는 단계를 포함하는 플래시 메모리 장치의 프로그램 방법.
  31. 제30항에 있어서, 상기 제1 프로그램 단계는,
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들이 프로그램되도록, 상기 선택된 워드 라인에 상기 제1 프로그램 전압을 공급하는 제1 공급 단계;
    상기 선택된 워드 라인에 제2 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들로부터 제1 데이터들을 독출하는 단계;
    상기 제1 데이터들에 기초하여, 제1 검증 데이터들을 발생하는 단계;
    상기 제1 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료되었는지의 여부를 판단하는 제1 판단 단계; 및
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료될 때까지, 상기 제1 공급 단계 내지 제1 판단 단계를 반복하는 단계를 포함하고,
    상기 제1 판단 단계 이 후 실행되는 상기 제1 공급 단계에서 상기 선택된 워드 라인에 공급되는 상기 제1 프로그램 전압은, 상기 제1 판단 단계 이전에 실행된 상기 제1 공급 단계에서 상기 선택된 워드 라인에 공급된 상기 제1 프로그램 전압보다 상기 스텝 전압만큼 더 큰 플래시 메모리 장치의 프로그램 방법.
  32. 제31항에 있어서,
    상기 제2 검증 전압은 상기 제1 검증 전압보다 더 큰 플래시 메모리 장치의 프로그램 방법.
  33. 제31항에 있어서, 상기 제2 프로그램 단계는,
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들이 프로그램되도록, 상기 선택된 워드 라인에 상기 제2 프로그램 전압을 공급하는 제2 공급 단계;
    상기 선택된 워드 라인에 제3 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들로부터 제2 데이터들을 독출하는 단계;
    상기 제2 데이터들에 기초하여, 제2 검증 데이터들을 발생하는 단계;
    상기 제2 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료되었는지의 여부를 판단하는 제2 판단 단계; 및
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료될 때까지, 상기 제2 공급 단계 내지 제2 판단 단계를 반복하는 단계를 포함하고,
    상기 제2 판단 단계 이 후 실행되는 상기 제2 공급 단계에서 상기 선택된 워드 라인에 공급되는 상기 제2 프로그램 전압은, 상기 제2 판단 단계 이전에 실행된 상기 제2 공급 단계에서 상기 선택된 워드 라인에 공급된 상기 제2 프로그램 전압보다 상기 스텝 전압만큼 더 큰 플래시 메모리 장치의 프로그램 방법.
  34. 제33항에 있어서,
    상기 제3 검증 전압은 상기 제2 검증 전압보다 더 큰 플래시 메모리 장치의 프로그램 방법.
  35. 제33항에 있어서, 상기 제3 프로그램 단계는,
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들이 프로그램되도록, 상기 선택된 워드 라인에 상기 제3 프로그램 전압을 공급하는 제3 공급 단계;
    상기 선택된 워드 라인에 제4 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들로부터 제3 데이터들을 독출하는 단계;
    상기 제3 데이터들에 기초하여, 제3 검증 데이터들을 발생하는 단계;
    상기 제3 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료되었는지의 여부를 판단하는 제3 판단 단계; 및
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료될 때까지, 상기 제3 공급 단계 내지 제3 판단 단계를 반복하는 단계를 포함하고,
    상기 제3 판단 단계 이 후 실행되는 상기 제3 공급 단계에서 상기 선택된 워드 라인에 공급되는 상기 제3 프로그램 전압은, 상기 제3 판단 단계 이전에 실행된 상기 제3 공급 단계에서 상기 선택된 워드 라인에 공급된 상기 제3 프로그램 전압보다 상기 스텝 전압만큼 더 큰 플래시 메모리 장치의 프로그램 방법.
  36. 제35항에 있어서,
    상기 제4 검증 전압은 상기 제3 검증 전압보다 더 큰 플래시 메모리 장치의 프로그램 방법.
  37. 제26항에 있어서,
    상기 메모리 셀들이 싱글 레벨 셀들인 플래시 메모리 장치의 프로그램 방법.
  38. 제37항에 있어서, 상기 추가로 프로그램하는 단계는,
    상기 선택된 워드 라인에 연결된 상기 싱글 레벨 셀들이 프로그램되도록, 상기 선택된 워드 라인에 상기 시작 프로그램 전압으로부터 상기 스텝 전압만큼 증가된 제1 프로그램 전압을 공급하는 단계;
    상기 선택된 워드 라인에 제2 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 싱글 레벨 셀들로부터 데이터들을 독출하는 단계;
    상기 데이터들에 기초하여, 검증 데이터들을 발생하는 단계;
    상기 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 상기 싱글 레벨 셀들의 프로그램이 완료되었는지의 여부를 판단하는 단계; 및
    상기 선택된 워드 라인에 연결된 상기 싱글 레벨 셀들의 프로그램이 완료될 때까지, 상기 공급 단계 내지 판단 단계를 반복하는 단계를 포함하고,
    상기 판단 단계 이 후 실행되는 상기 공급 단계에서 상기 선택된 워드 라인에 공급되는 상기 제1 프로그램 전압은, 상기 판단 단계 이전에 실행된 상기 공급 단계에서 상기 선택된 워드 라인에 공급된 상기 제1 프로그램 전압보다 상기 스텝 전압만큼 더 큰 플래시 메모리 장치의 프로그램 방법.
  39. 제38항에 있어서,
    상기 제2 검증 전압은 상기 제1 검증 전압보다 더 큰 플래시 메모리 장치의 프로그램 방법.
  40. 워드 라인들과 비트 라인들을 공유하는 복수의 메모리 셀들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서,
    상기 워드 라인들 중 하나를 선택하는 단계;
    제1 내지 제P(P는 정수) 프로그램 사이클들 각각에 대해, 상기 선택된 워드 라인에 스텝 전압 비율로 점차 증가되는 시작 프로그램 전압을 공급하여, 상기 선택된 워드 라인에 연결된 메모리 셀들을 프로그램하는 단계;
    상기 선택된 워드 라인에 연결된 상기 메모리 셀들 중에서, 설정된 전압보다 작은 문턱 전압들을 각각 가지는 메모리 셀들을 선택하는 단계;
    상기 선택된 워드 라인에 예비 프로그램 전압을 공급하여 상기 선택된 메모리 셀들을 프로그램하는 단계;
    상기 선택된 메모리 셀들이 프로그램될 때, 상기 선택된 메모리 셀들을 제외한 나머지 메모리 셀들을 프로그램 금지시키는 단계; 및
    상기 메모리 셀들의 프로그램 단계에서 최종적으로 증가된 상기 시작 프로그램 전압으로부터 상기 스텝 전압 비율로 점차 증가되는 프로그램 전압을 상기 선택된 워드 라인에 공급하면서, 상기 선택된 워드 라인에 연결된 상기 메모리 셀들을 추가로 프로그램하는 단계를 포함하는 플래시 메모리 장치의 프로그램 방법.
  41. 제40항에 있어서,
    상기 P는 3보다 작거나 또는 동일한 플래시 메모리 장치의 프로그램 방법.
  42. 제40항에 있어서,
    상기 예비 프로그램 전압은 상기 메모리 셀들을 프로그램하는 단계에서 최종적으로 증가된 상기 시작 프로그램 전압보다 크고, 상기 추가로 프로그램하는 단계에서 최대로 증가된 프로그램 전압보다 작거나 또는 동일한 플래시 메모리 장치의 프로그램 방법.
  43. 제40항에 있어서,
    상기 메모리 셀들이 멀티 레벨 셀들인 플래시 메모리 장치의 프로그램 방법.
  44. 제43항에 있어서, 상기 추가로 프로그램하는 단계는,
    상기 메모리 셀들을 프로그램하는 단계에서 최종적으로 증가된 상기 시작 프로그램 전압으로부터 상기 스텝 전압 비율로 점차 증가되는 제1 프로그램 전압을 상기 선택된 워드 라인에 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들을 제1 프로그램하는 단계;
    상기 제1 프로그램 단계에서 최종적으로 증가된 상기 제1 프로그램 전압으로부터 상기 스텝 전압 비율로 점차 증가되는 제2 프로그램 전압을 상기 선택된 워드 라인에 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들을 제2 프로그램하는 단계; 및
    상기 제2 프로그램 단계에서 최종적으로 증가된 상기 제2 프로그램 전압으로부터 상기 스텝 전압 비율로 점차 증가되는 제3 프로그램 전압을 상기 선택된 워드 라인에 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들을 제3 프로그램하는 단계를 포함하는 플래시 메모리 장치의 프로그램 방법.
  45. 제40항에 있어서,
    상기 메모리 셀들이 싱글 레벨 셀들인 플래시 메모리 장치의 프로그램 방법.
  46. 제45항에 있어서, 상기 추가로 프로그램하는 단계는,
    상기 선택된 워드 라인에 연결된 상기 싱글 레벨 셀들이 프로그램되도록, 상기 선택된 워드 라인에, 상기 메모리 셀들을 프로그램하는 단계에서 최종적으로 증가된 상기 시작 프로그램 전압으로부터 상기 스텝 전압만큼 증가된 제1 프로그램 전압을 공급하는 단계;
    상기 선택된 워드 라인에 제2 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 싱글 레벨 셀들로부터 데이터들을 독출하는 단계;
    상기 데이터들에 기초하여, 검증 데이터들을 발생하는 단계;
    상기 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 상기 싱글 레벨 셀들의 프로그램이 완료되었는지의 여부를 판단하는 단계; 및
    상기 선택된 워드 라인에 연결된 상기 싱글 레벨 셀들의 프로그램이 완료될 때까지, 상기 공급 단계 내지 판단 단계를 반복하는 단계를 포함하고,
    상기 판단 단계 이 후 실행되는 상기 공급 단계에서 상기 선택된 워드 라인에 공급되는 상기 제1 프로그램 전압은, 상기 판단 단계 이전에 실행된 상기 공급 단계에서 상기 선택된 워드 라인에 공급된 상기 제1 프로그램 전압보다 상기 스텝 전압만큼 더 큰 플래시 메모리 장치의 프로그램 방법.
  47. 워드 라인들과 비트 라인들을 공유하는 복수의 멀티 레벨 셀들을 포함하는 플래시 메모리 장치의 프로그램 방법에 있어서,
    상기 워드 라인들 중 하나를 선택하는 단계;
    상기 선택된 워드 라인에 시작 프로그램 전압으로부터 제1 스텝 전압 비율로 점차 증가되는 제1 프로그램 전압을 공급하여, 상기 선택된 워드 라인에 연결된 멀티 레벨 셀들을 제1 프로그램하는 단계; 및
    상기 제1 프로그램 단계에서 최종적으로 증가된 상기 제1 프로그램 전압으로 부터 제2 스텝 전압 비율로 점차 증가되는 제2 프로그램 전압을 상기 선택된 워드 라인에 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들을 제2 프로그램하는 단계를 포함하는 플래시 메모리 장치의 프로그램 방법.
  48. 제47항에 있어서,
    상기 제2 스텝 전압이 상기 제1 스텝 전압보다 더 큰 플래시 메모리 장치의 프로그램 방법.
  49. 제47항에 있어서, 상기 제1 프로그램 단계는,
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들이 프로그램되도록, 상기 선택된 워드 라인에 상기 제1 프로그램 전압을 공급하는 제1 공급 단계;
    상기 선택된 워드 라인에 제1 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들로부터 제1 데이터들을 독출하는 독출 단계;
    상기 제1 데이터들에 기초하여, 제1 검증 데이터들을 발생하는 단계;
    상기 제1 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료되었는지의 여부를 판단하는 제1 판단 단계; 및
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료될 때까지, 상기 제1 공급 단계 내지 제1 판단 단계를 반복하는 단계를 포함하고,
    상기 제1 판단 단계 이 후 실행되는 상기 제1 공급 단계에서 상기 선택된 워 드 라인에 공급되는 상기 제1 프로그램 전압은, 상기 제1 판단 단계 이전에 실행된 상기 제1 공급 단계에서 상기 선택된 워드 라인에 공급된 상기 제1 프로그램 전압보다 상기 제1 스텝 전압만큼 더 큰 플래시 메모리 장치의 프로그램 방법.
  50. 제49항에 있어서, 상기 제2 프로그램 단계는,
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들이 프로그램되도록, 상기 선택된 워드 라인에 상기 제2 프로그램 전압을 공급하는 제2 공급 단계;
    상기 선택된 워드 라인에 제2 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들로부터 제2 데이터들을 독출하는 독출 단계;
    상기 제2 데이터들에 기초하여, 제2 검증 데이터들을 발생하는 단계;
    상기 제2 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료되었는지의 여부를 판단하는 제2 판단 단계; 및
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료될 때까지, 상기 제2 공급 단계 내지 제2 판단 단계를 반복하는 단계를 포함하고,
    상기 제2 판단 단계 이 후 실행되는 상기 제2 공급 단계에서 상기 선택된 워드 라인에 공급되는 상기 제2 프로그램 전압은, 상기 제2 판단 단계 이전에 실행된 상기 제2 공급 단계에서 상기 선택된 워드 라인에 공급된 상기 제2 프로그램 전압보다 상기 제2 스텝 전압만큼 더 큰 플래시 메모리 장치의 프로그램 방법.
  51. 제50항에 있어서,
    상기 선택 단계와 상기 제1 프로그램 단계 사이에, 시작 전압으로부터 상기 제1 스텝 전압 비율로 점차 증가되는 상기 시작 프로그램 전압을 상기 선택된 워드 라인에 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들을 제3 프로그램하는 단계를 더 포함하고,
    상기 제3 프로그램 단계는,
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들이 프로그램되도록, 상기 선택된 워드 라인에 상기 시작 프로그램 전압을 공급하는 제3 공급 단계;
    상기 선택된 워드 라인에 제3 검증 전압을 공급하여, 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들로부터 제3 데이터들을 독출하는 독출 단계;
    상기 제3 데이터들에 기초하여, 제3 검증 데이터들을 발생하는 단계;
    상기 제3 검증 데이터들의 로직 값들에 따라 상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료되었는지의 여부를 판단하는 제3 판단 단계; 및
    상기 선택된 워드 라인에 연결된 상기 멀티 레벨 셀들의 프로그램이 완료될 때까지, 상기 제3 공급 단계 내지 제3 판단 단계를 반복하는 단계를 포함하고,
    상기 제3 판단 단계 이 후 실행되는 상기 제3 공급 단계에서 상기 선택된 워드 라인에 공급되는 상기 시작 프로그램 전압은, 상기 제3 판단 단계 이전에 실행된 상기 제3 공급 단계에서 상기 선택된 워드 라인에 공급된 상기 시작 프로그램 전압보다 상기 제1 스텝 전압만큼 더 큰 플래시 메모리 장치의 프로그램 방법.
  52. 제51항에 있어서,
    상기 제2 검증 전압은 상기 제1 검증 전압보다 더 크고, 상기 제1 검증 전압은 상기 제3 검증 전압보다 더 큰 플래시 메모리 장치의 프로그램 방법.
KR1020050086201A 2005-09-15 2005-09-15 프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법 KR100705220B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020050086201A KR100705220B1 (ko) 2005-09-15 2005-09-15 프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법
US11/275,279 US7539057B2 (en) 2005-09-15 2005-12-21 Erase and program method of flash memory device for increasing program speed of flash memory device
US12/425,025 US7990771B2 (en) 2005-09-15 2009-04-16 Program method of flash memory device
US12/424,984 US7978532B2 (en) 2005-09-15 2009-04-16 Erase method of flash memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050086201A KR100705220B1 (ko) 2005-09-15 2005-09-15 프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법

Publications (2)

Publication Number Publication Date
KR20070031594A true KR20070031594A (ko) 2007-03-20
KR100705220B1 KR100705220B1 (ko) 2007-04-06

Family

ID=37854915

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050086201A KR100705220B1 (ko) 2005-09-15 2005-09-15 프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법

Country Status (2)

Country Link
US (3) US7539057B2 (ko)
KR (1) KR100705220B1 (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100794311B1 (ko) * 2006-12-27 2008-01-11 삼성전자주식회사 프로그램 에러를 차단할 수 있는 멀티 비트 플래시 메모리장치의 프로그램 방법
KR100861378B1 (ko) * 2007-10-10 2008-10-01 주식회사 하이닉스반도체 플래시 메모리소자의 프로그램 방법
KR100888616B1 (ko) * 2006-11-28 2009-03-17 삼성전자주식회사 소거 동작 전에 프리 프로그램 동작을 수행하는 낸드플래시 메모리 및 그것의 소거 방법
KR100890045B1 (ko) * 2007-06-26 2009-03-25 주식회사 하이닉스반도체 멀티 레벨 셀 플래시 메모리소자의 프로그램 방법
KR100919736B1 (ko) * 2006-09-28 2009-09-29 가부시끼가이샤 도시바 불휘발성 반도체 기억 장치 및 데이터 판독 방법
US7668019B2 (en) 2006-11-28 2010-02-23 Samsung Electronics Co., Ltd. Non-volatile memory device and erasing method thereof
KR100953046B1 (ko) * 2007-12-27 2010-04-14 주식회사 하이닉스반도체 불휘발성 메모리 소자의 동작 방법
KR20100127406A (ko) * 2009-05-26 2010-12-06 삼성전자주식회사 저장 장치 및 그것의 읽기 방법
US8116141B2 (en) 2008-10-27 2012-02-14 Samsung Electronics Co., Ltd. Method analyzing threshold voltage distribution in nonvolatile memory

Families Citing this family (179)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602006016065D1 (de) * 2006-03-10 2010-09-23 St Microelectronics Srl Verfahren zum Programmieren und Löschen eines nichtflüchtigen Speichers, insbesonders für Flash-Typ Speicher.
WO2007132453A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Distortion estimation and cancellation in memory devices
WO2007132452A2 (en) * 2006-05-12 2007-11-22 Anobit Technologies Reducing programming error in memory devices
WO2007132457A2 (en) * 2006-05-12 2007-11-22 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
WO2007132456A2 (en) * 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
US8060806B2 (en) 2006-08-27 2011-11-15 Anobit Technologies Ltd. Estimation of non-linear distortion in memory devices
CN101601094B (zh) 2006-10-30 2013-03-27 苹果公司 使用多个门限读取存储单元的方法
WO2008053472A2 (en) * 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7924648B2 (en) 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
US7706182B2 (en) * 2006-12-03 2010-04-27 Anobit Technologies Ltd. Adaptive programming of analog memory cells using statistical characteristics
US8151163B2 (en) * 2006-12-03 2012-04-03 Anobit Technologies Ltd. Automatic defect management in memory devices
US7593263B2 (en) * 2006-12-17 2009-09-22 Anobit Technologies Ltd. Memory device with reduced reading latency
US7900102B2 (en) * 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
KR100816161B1 (ko) * 2007-01-23 2008-03-21 주식회사 하이닉스반도체 플래시 메모리 소자의 프로그램 방법
US7751240B2 (en) 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
US8151166B2 (en) * 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
US7738295B2 (en) 2007-01-31 2010-06-15 Micron Technology, Inc. Programming a non-volatile memory device
US8369141B2 (en) * 2007-03-12 2013-02-05 Apple Inc. Adaptive estimation of memory cell read thresholds
KR100824203B1 (ko) * 2007-04-03 2008-04-21 주식회사 하이닉스반도체 플래시 메모리 소자의 프로그램 방법
US8001320B2 (en) * 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8234545B2 (en) * 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8429493B2 (en) 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap processing unit
KR20100050471A (ko) * 2007-06-21 2010-05-13 샌디스크 코포레이션 프로그램 펄스 지속 시간의 지능적 제어
US7580290B2 (en) * 2007-06-21 2009-08-25 Sandisk Corporation Non-volatile storage system with intelligent control of program pulse duration
US7630249B2 (en) * 2007-06-21 2009-12-08 Sandisk Corporation Intelligent control of program pulse duration
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8174905B2 (en) * 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US7978520B2 (en) 2007-09-27 2011-07-12 Sandisk Corporation Compensation of non-volatile memory chip non-idealities by program pulse adjustment
US7773413B2 (en) 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
US8527819B2 (en) * 2007-10-19 2013-09-03 Apple Inc. Data storage in analog memory cell arrays having erase failures
US8068360B2 (en) * 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
KR101509836B1 (ko) * 2007-11-13 2015-04-06 애플 인크. 멀티 유닛 메모리 디바이스에서의 메모리 유닛의 최적화된 선택
US7903486B2 (en) * 2007-11-19 2011-03-08 Sandforce, Inc. System, method, and computer program product for increasing a lifetime of a plurality of blocks of memory
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) * 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8751755B2 (en) 2007-12-27 2014-06-10 Sandisk Enterprise Ip Llc Mass storage controller volatile memory containing metadata related to flash memory storage
US8085586B2 (en) * 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) * 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) * 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US7864573B2 (en) 2008-02-24 2011-01-04 Anobit Technologies Ltd. Programming analog memory cells for reduced variance after retention
US8230300B2 (en) * 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8059457B2 (en) * 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
KR100965029B1 (ko) * 2008-05-13 2010-06-21 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그 프로그램 검증 방법
US9123422B2 (en) * 2012-07-02 2015-09-01 Super Talent Technology, Corp. Endurance and retention flash controller with programmable binary-levels-per-cell bits identifying pages or blocks as having triple, multi, or single-level flash-memory cells
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8713330B1 (en) 2008-10-30 2014-04-29 Apple Inc. Data scrambling in memory devices
JP2010118580A (ja) 2008-11-14 2010-05-27 Toshiba Corp 不揮発性半導体記憶装置
US8208304B2 (en) * 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8248831B2 (en) * 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8397131B1 (en) 2008-12-31 2013-03-12 Apple Inc. Efficient readout schemes for analog memory cell devices
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
KR101016078B1 (ko) * 2009-01-21 2011-02-17 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그 동작 방법
US8223551B2 (en) 2009-02-19 2012-07-17 Micron Technology, Inc. Soft landing for desired program threshold voltage
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) * 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
KR101605827B1 (ko) * 2009-08-24 2016-03-23 삼성전자주식회사 불휘발성 메모리 장치, 그것의 프로그램 방법, 그리고 그것을 포함하는 메모리 시스템
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
KR101082692B1 (ko) * 2009-12-31 2011-11-15 주식회사 하이닉스반도체 반도체 메모리 장치 및 이의 프로그램 방법
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8677203B1 (en) 2010-01-11 2014-03-18 Apple Inc. Redundant data storage schemes for multi-die memory systems
US8365041B2 (en) 2010-03-17 2013-01-29 Sandisk Enterprise Ip Llc MLC self-raid flash data protection scheme
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8400827B2 (en) * 2010-06-07 2013-03-19 Micron Technology, Inc. Non-volatile memory programming
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US9741436B2 (en) 2010-07-09 2017-08-22 Seagate Technology Llc Dynamically controlling an operation execution time for a storage device
KR101139081B1 (ko) * 2010-07-09 2012-04-30 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 소거 방법
KR101205084B1 (ko) * 2010-07-09 2012-11-26 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 프로그램 방법
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8910020B2 (en) 2011-06-19 2014-12-09 Sandisk Enterprise Ip Llc Intelligent bit recovery for flash memory
US8909982B2 (en) 2011-06-19 2014-12-09 Sandisk Enterprise Ip Llc System and method for detecting copyback programming problems
KR20130016619A (ko) * 2011-08-08 2013-02-18 삼성전자주식회사 불휘발성 메모리 장치의 프로그램 방법
US8793543B2 (en) 2011-11-07 2014-07-29 Sandisk Enterprise Ip Llc Adaptive read comparison signal generation for memory systems
US9048876B2 (en) 2011-11-18 2015-06-02 Sandisk Enterprise Ip Llc Systems, methods and devices for multi-tiered error correction
US8924815B2 (en) 2011-11-18 2014-12-30 Sandisk Enterprise Ip Llc Systems, methods and devices for decoding codewords having multiple parity segments
US8954822B2 (en) 2011-11-18 2015-02-10 Sandisk Enterprise Ip Llc Data encoder and decoder using memory-specific parity-check matrix
US8792272B2 (en) * 2012-01-30 2014-07-29 HGST Netherlands B.V. Implementing enhanced data partial-erase for multi-level cell (MLC) memory using threshold voltage-drift or resistance drift tolerant moving baseline memory data encoding
WO2013147818A1 (en) * 2012-03-29 2013-10-03 Intel Corporation Nonvolatile memory erasure techniques
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US9501398B2 (en) 2012-12-26 2016-11-22 Sandisk Technologies Llc Persistent storage device with NVRAM for staging writes
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9239751B1 (en) 2012-12-27 2016-01-19 Sandisk Enterprise Ip Llc Compressing data from multiple reads for error control management in memory systems
US9003264B1 (en) 2012-12-31 2015-04-07 Sandisk Enterprise Ip Llc Systems, methods, and devices for multi-dimensional flash RAID data protection
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9214965B2 (en) 2013-02-20 2015-12-15 Sandisk Enterprise Ip Llc Method and system for improving data integrity in non-volatile storage
US9329928B2 (en) 2013-02-20 2016-05-03 Sandisk Enterprise IP LLC. Bandwidth optimization in a non-volatile memory system
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US9244763B1 (en) 2013-03-15 2016-01-26 Sandisk Enterprise Ip Llc System and method for updating a reading threshold voltage based on symbol transition information
US9367246B2 (en) 2013-03-15 2016-06-14 Sandisk Technologies Inc. Performance optimization of data transfer for soft information generation
US9236886B1 (en) 2013-03-15 2016-01-12 Sandisk Enterprise Ip Llc Universal and reconfigurable QC-LDPC encoder
US9092350B1 (en) 2013-03-15 2015-07-28 Sandisk Enterprise Ip Llc Detection and handling of unbalanced errors in interleaved codewords
US9136877B1 (en) 2013-03-15 2015-09-15 Sandisk Enterprise Ip Llc Syndrome layered decoding for LDPC codes
US9009576B1 (en) 2013-03-15 2015-04-14 Sandisk Enterprise Ip Llc Adaptive LLR based on syndrome weight
US10049037B2 (en) 2013-04-05 2018-08-14 Sandisk Enterprise Ip Llc Data management in a storage system
US9170941B2 (en) 2013-04-05 2015-10-27 Sandisk Enterprises IP LLC Data hardening in a storage system
US9159437B2 (en) 2013-06-11 2015-10-13 Sandisk Enterprise IP LLC. Device and method for resolving an LM flag issue
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9384126B1 (en) 2013-07-25 2016-07-05 Sandisk Technologies Inc. Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems
US9043517B1 (en) 2013-07-25 2015-05-26 Sandisk Enterprise Ip Llc Multipass programming in buffers implemented in non-volatile data storage systems
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US9361221B1 (en) 2013-08-26 2016-06-07 Sandisk Technologies Inc. Write amplification reduction through reliable writes during garbage collection
US9519577B2 (en) 2013-09-03 2016-12-13 Sandisk Technologies Llc Method and system for migrating data between flash memory devices
US9442670B2 (en) 2013-09-03 2016-09-13 Sandisk Technologies Llc Method and system for rebalancing data stored in flash memory devices
US9158349B2 (en) 2013-10-04 2015-10-13 Sandisk Enterprise Ip Llc System and method for heat dissipation
US9323637B2 (en) 2013-10-07 2016-04-26 Sandisk Enterprise Ip Llc Power sequencing and data hardening architecture
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9298608B2 (en) 2013-10-18 2016-03-29 Sandisk Enterprise Ip Llc Biasing for wear leveling in storage systems
US9436831B2 (en) 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
US9263156B2 (en) 2013-11-07 2016-02-16 Sandisk Enterprise Ip Llc System and method for adjusting trip points within a storage device
US9244785B2 (en) 2013-11-13 2016-01-26 Sandisk Enterprise Ip Llc Simulated power failure and data hardening
US9152555B2 (en) 2013-11-15 2015-10-06 Sandisk Enterprise IP LLC. Data management with modular erase in a data storage system
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9280429B2 (en) 2013-11-27 2016-03-08 Sandisk Enterprise Ip Llc Power fail latching based on monitoring multiple power supply voltages in a storage device
US9122636B2 (en) 2013-11-27 2015-09-01 Sandisk Enterprise Ip Llc Hard power fail architecture
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9250676B2 (en) 2013-11-29 2016-02-02 Sandisk Enterprise Ip Llc Power failure architecture and verification
US9092370B2 (en) 2013-12-03 2015-07-28 Sandisk Enterprise Ip Llc Power failure tolerant cryptographic erase
US9235245B2 (en) 2013-12-04 2016-01-12 Sandisk Enterprise Ip Llc Startup performance and power isolation
US9129665B2 (en) 2013-12-17 2015-09-08 Sandisk Enterprise Ip Llc Dynamic brownout adjustment in a storage device
US9549457B2 (en) 2014-02-12 2017-01-17 Sandisk Technologies Llc System and method for redirecting airflow across an electronic assembly
US9497889B2 (en) 2014-02-27 2016-11-15 Sandisk Technologies Llc Heat dissipation for substrate assemblies
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
US9348377B2 (en) 2014-03-14 2016-05-24 Sandisk Enterprise Ip Llc Thermal isolation techniques
US9519319B2 (en) 2014-03-14 2016-12-13 Sandisk Technologies Llc Self-supporting thermal tube structure for electronic assemblies
US9485851B2 (en) 2014-03-14 2016-11-01 Sandisk Technologies Llc Thermal tube assembly structures
US9390814B2 (en) 2014-03-19 2016-07-12 Sandisk Technologies Llc Fault detection and prediction for data storage elements
US9448876B2 (en) 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9454448B2 (en) 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9390021B2 (en) 2014-03-31 2016-07-12 Sandisk Technologies Llc Efficient cache utilization in a tiered data structure
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US9093160B1 (en) 2014-05-30 2015-07-28 Sandisk Technologies Inc. Methods and systems for staggered memory operations
US8891303B1 (en) 2014-05-30 2014-11-18 Sandisk Technologies Inc. Method and system for dynamic word line based configuration of a three-dimensional memory device
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US9070481B1 (en) 2014-05-30 2015-06-30 Sandisk Technologies Inc. Internal current measurement for age measurements
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US9645749B2 (en) 2014-05-30 2017-05-09 Sandisk Technologies Llc Method and system for recharacterizing the storage density of a memory device or a portion thereof
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9747200B1 (en) 2014-07-02 2017-08-29 Microsemi Solutions (U.S.), Inc. Memory system with high speed non-volatile memory backup using pre-aged flash memory devices
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
KR102274280B1 (ko) * 2015-06-22 2021-07-07 삼성전자주식회사 불휘발성 메모리 장치의 동작 방법
US9496043B1 (en) 2015-06-24 2016-11-15 International Business Machines Corporation Dynamically optimizing flash data retention or endurance based on data write frequency
KR20170037722A (ko) * 2015-09-25 2017-04-05 에스케이하이닉스 주식회사 반도체 장치, 그것의 동작 방법 및 그것을 포함하는 데이터 저장 장치
US9792999B2 (en) * 2015-10-30 2017-10-17 SK Hynix Inc. Adaptive scheme for incremental step pulse programming of flash memory
CN110838325A (zh) * 2018-08-17 2020-02-25 北京兆易创新科技股份有限公司 一种存储器的编程方法和系统
US10741252B2 (en) * 2018-12-18 2020-08-11 Micron Technology, Inc. Apparatus and methods for programming memory cells using multi-step programming pulses
US11031071B2 (en) * 2019-03-05 2021-06-08 Samsung Electronics Co., Ltd. Nonvolatile memory device, operating method of nonvolatile memory device, and storage device including nonvolatile memory device
KR20200107024A (ko) * 2019-03-05 2020-09-16 삼성전자주식회사 불휘발성 메모리 장치, 불휘발성 메모리 장치의 동작 방법, 그리고 불휘발성 메모리 장치를 포함하는 스토리지 장치
KR20210125297A (ko) * 2020-04-08 2021-10-18 에스케이하이닉스 주식회사 메모리 장치 및 이의 동작 방법
TWI739598B (zh) * 2020-09-15 2021-09-11 力旺電子股份有限公司 運用於多階型記憶胞陣列之編程與驗證方法
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory
KR20230113995A (ko) * 2022-01-24 2023-08-01 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440505A (en) * 1994-01-21 1995-08-08 Intel Corporation Method and circuitry for storing discrete amounts of charge in a single memory element
US5677869A (en) * 1995-12-14 1997-10-14 Intel Corporation Programming flash memory using strict ordering of states
US5903495A (en) * 1996-03-18 1999-05-11 Kabushiki Kaisha Toshiba Semiconductor device and memory system
US5805501A (en) 1996-05-22 1998-09-08 Macronix International Co., Ltd. Flash memory device with multiple checkpoint erase suspend logic
JPH1011981A (ja) * 1996-06-19 1998-01-16 Sony Corp 不揮発性半導体記憶装置
JPH10241388A (ja) 1996-12-29 1998-09-11 Sony Corp 電圧供給回路および半導体不揮発性記憶装置
KR100323554B1 (ko) * 1997-05-14 2002-03-08 니시무로 타이죠 불휘발성반도체메모리장치
JPH11110977A (ja) 1997-10-06 1999-04-23 Sony Corp 不揮発性半導体記憶装置
IT1303204B1 (it) * 1998-11-27 2000-10-30 St Microelectronics Srl Metodo di programmazione di celle di memoria non volatile ad elevataprecisione, con velocita' di programmazione ottimizzata.
TW439293B (en) * 1999-03-18 2001-06-07 Toshiba Corp Nonvolatile semiconductor memory
JP2001067884A (ja) * 1999-08-31 2001-03-16 Hitachi Ltd 不揮発性半導体記憶装置
US6343033B1 (en) * 2000-02-25 2002-01-29 Advanced Micro Devices, Inc. Variable pulse width memory programming
JP2001357680A (ja) * 2000-06-15 2001-12-26 Oki Electric Ind Co Ltd 不揮発性半導体記憶装置のデータ消去方法
EP1249842B1 (en) * 2001-04-10 2009-08-26 STMicroelectronics S.r.l. Method for programming nonvolatile memory cells with program and verify algorithm using a staircase voltage with varying step amplitude
US6522580B2 (en) * 2001-06-27 2003-02-18 Sandisk Corporation Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states
JP4028301B2 (ja) 2002-06-11 2007-12-26 富士通株式会社 不揮発性半導体記憶装置及びその消去方法
JP2004104086A (ja) 2002-09-10 2004-04-02 Arima Optoelectronics Corp 反射光源型ledの製造方法
DE60328354D1 (de) * 2003-02-20 2009-08-27 St Microelectronics Srl Programmierverfahren eines elektrisch programmierbaren, nichtflüchtigen Multibithalbleiterspeichers
US6967873B2 (en) 2003-10-02 2005-11-22 Advanced Micro Devices, Inc. Memory device and method using positive gate stress to recover overerased cell
US7251158B2 (en) * 2004-06-10 2007-07-31 Spansion Llc Erase algorithm for multi-level bit flash memory
US7656710B1 (en) * 2005-07-14 2010-02-02 Sau Ching Wong Adaptive operations for nonvolatile memories

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100919736B1 (ko) * 2006-09-28 2009-09-29 가부시끼가이샤 도시바 불휘발성 반도체 기억 장치 및 데이터 판독 방법
KR100888616B1 (ko) * 2006-11-28 2009-03-17 삼성전자주식회사 소거 동작 전에 프리 프로그램 동작을 수행하는 낸드플래시 메모리 및 그것의 소거 방법
US7668019B2 (en) 2006-11-28 2010-02-23 Samsung Electronics Co., Ltd. Non-volatile memory device and erasing method thereof
KR100794311B1 (ko) * 2006-12-27 2008-01-11 삼성전자주식회사 프로그램 에러를 차단할 수 있는 멀티 비트 플래시 메모리장치의 프로그램 방법
US7663914B2 (en) 2006-12-27 2010-02-16 Samsung Electronics Co., Ltd. Method of programming a multi bit flash memory device to avoid programming errors and a device implementing the same
KR100890045B1 (ko) * 2007-06-26 2009-03-25 주식회사 하이닉스반도체 멀티 레벨 셀 플래시 메모리소자의 프로그램 방법
KR100861378B1 (ko) * 2007-10-10 2008-10-01 주식회사 하이닉스반도체 플래시 메모리소자의 프로그램 방법
KR100953046B1 (ko) * 2007-12-27 2010-04-14 주식회사 하이닉스반도체 불휘발성 메모리 소자의 동작 방법
US8116141B2 (en) 2008-10-27 2012-02-14 Samsung Electronics Co., Ltd. Method analyzing threshold voltage distribution in nonvolatile memory
KR101486980B1 (ko) * 2008-10-27 2015-01-30 삼성전자주식회사 불휘발성 메모리의 문턱 전압 산포의 분석 방법
KR20100127406A (ko) * 2009-05-26 2010-12-06 삼성전자주식회사 저장 장치 및 그것의 읽기 방법

Also Published As

Publication number Publication date
US20070058446A1 (en) 2007-03-15
US7990771B2 (en) 2011-08-02
US20090201728A1 (en) 2009-08-13
US7978532B2 (en) 2011-07-12
US7539057B2 (en) 2009-05-26
KR100705220B1 (ko) 2007-04-06
US20090207660A1 (en) 2009-08-20

Similar Documents

Publication Publication Date Title
KR100705220B1 (ko) 프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법
US7310269B2 (en) High-speed verifiable semiconductor memory device
US7839692B2 (en) Soft program method in a non-volatile memory device
US9064580B2 (en) Nonvolatile semiconductor memory device and write-in method thereof
KR101074539B1 (ko) 불휘발성 메모리 장치 및 그 동작 방법
KR101080912B1 (ko) 멀티 레벨 셀을 갖는 비휘발성 메모리 장치의 프로그램방법
KR100953063B1 (ko) 불휘발성 메모리 장치의 소거 방법
WO2009081745A1 (ja) 不揮発性半導体記憶装置
KR20130001442A (ko) 반도체 메모리 장치 및 이의 동작 방법
JP2009070539A (ja) 不揮発性メモリ装置及びそのマルチレベルセルプログラム方法
US8743621B2 (en) Operating method in a non-volatile memory device
TW200931418A (en) Nonvolatile semiconductor memory device
KR100933860B1 (ko) 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법
JP6154879B2 (ja) Nand型フラッシュメモリとそのプログラム方法
CN107154275B (zh) 半导体存储装置及输入数据的验证方法
KR102528274B1 (ko) 비휘발성 메모리 장치 및 그 구동 방법
KR100938044B1 (ko) 불휘발성 메모리 장치 및 그 멀티 레벨 셀 프로그램 방법
KR100816121B1 (ko) 불휘발성 메모리장치의 멀티비트 프로그램 방법
KR20090000332A (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: 20130225

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140221

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150223

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160223

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170223

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180223

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190220

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20200226

Year of fee payment: 14