[go: up one dir, main page]

KR100816155B1 - 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법 - Google Patents

불휘발성 메모리 장치 및 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법 Download PDF

Info

Publication number
KR100816155B1
KR100816155B1 KR1020060136356A KR20060136356A KR100816155B1 KR 100816155 B1 KR100816155 B1 KR 100816155B1 KR 1020060136356 A KR1020060136356 A KR 1020060136356A KR 20060136356 A KR20060136356 A KR 20060136356A KR 100816155 B1 KR100816155 B1 KR 100816155B1
Authority
KR
South Korea
Prior art keywords
voltage
register
data
bit line
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
KR1020060136356A
Other languages
English (en)
Inventor
왕종현
박세천
박성훈
Original Assignee
주식회사 하이닉스반도체
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 하이닉스반도체 filed Critical 주식회사 하이닉스반도체
Priority to KR1020060136356A priority Critical patent/KR100816155B1/ko
Priority to DE102007026856A priority patent/DE102007026856A1/de
Priority to TW096121639A priority patent/TWI346955B/zh
Priority to US11/765,518 priority patent/US7466587B2/en
Priority to JP2007178049A priority patent/JP2008165953A/ja
Priority to CN2007101380722A priority patent/CN101211660B/zh
Application granted granted Critical
Publication of KR100816155B1 publication Critical patent/KR100816155B1/ko
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/24Bit-line control 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/30Power supply 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/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/564Miscellaneous aspects
    • G11C2211/5642Multilevel memory with buffers, latches, registers at input or output

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

본원 발명의 불휘발성 메모리 장치는 특정 비트라인과 감지노드를 선택적으로 접속시키는 비트라인 선택부와, 특정 데이터를 저장하는 제1 레지스터 및 제2 레지스터와, 상기 제1 레지스터에 저장된 데이터와 제2 레지스터에 저장된 데이터를 비교하여 상기 감지노드로 전달하는 데이터 비교부와, 상기 제1 레지스터에 저장된 데이터의 전압 레벨에 따라 상기 비트라인에 로우 레벨의 전압을 인가하는 제1 비트라인 전압 제어부와, 상기 제2 레지스터에 저장된 데이터의 전압 레벨에 따라 상기 비트라인에 선정된 제1 하이 레벨의 전압을 인가하는 제2 비트라인 전압 제어부를 포함하는 페이지 버퍼를 구비한 것을 특징으로 한다.
멀티 레벨 셀, 비트라인

Description

불휘발성 메모리 장치 및 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법{The non volatile memory device and multi level cell programming method thereof}
도 1a 내지 1c는 본 발명이 적용되는 멀티레벨 셀 불휘발성 메모리장치의 프로그램 방법을 단계별로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 불휘발성 메모리장치를 도시한 회로도이다.
도 3은 본원 발명의 페이지 버퍼의 각 레지스터를 초기화하는 동작을 도시한 타이밍도이다.
도 4는 본 발명의 일 실시예에 따른 하위비트 프로그램동작을 도시한 파형도이다.
도 5는 본 발명의 일 실시예에 따른 상위비트 프로그램동작을 도시한 파형도이다.
도 6a는 통상적인 멀티 레벨 셀 프로그램 동작 중 상위비트 프로그램에 의한 특정 셀들의 전압 상태를 도시한 도면이다.
도 6b는 본원 발명의 일실시예에 따른 멀티 레벨 셀 프로그램 동작 중 상위비트 프로그램에 의한 특정 셀들의 전압 상태를 도시한 도면이다.
본 발명은 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법에 관한 것으로, 더욱 상세하게는 특정 셀에 대한 상위비트 프로그램을 더욱 효율적으로 수행하기 위한 페이지 버퍼를 구비한 멀티레벨 셀 불휘발성 메모리 장치 및 그 프로그램 방법에 관한 것이다.
최근 들어 전기적으로 프로그램(program)과 소거(erase)가 가능하고, 일정 주기로 데이터를 재작성해야하는 리프레시(refresh) 기능이 필요 없는 비휘발성 메모리 소자에 대한 수요가 증가하고 있으며, 그 집적도를 높이기 위한 방법으로 하나의 셀에 1 비트 이상의 데이터를 저장하고자 하는 시도가 계속 진행중이다.
이와 같이 다수비트의 데이터를 저장할 수 있는 불휘발성 메모리 장치를 멀티레벨 셀(Multi-level cell, MLC) 불휘발성 메모리 장치라고 한다. 예를 들어 2 비트를 저장하는 멀티레벨 셀 불휘발성 메모리 장치는 하나의 셀에 '11, 10, 01, 00' 과 같이 총 네 개의 데이터를 저장할 수 있어 그 집적도를 논리적인 측면에서 증가시킬수 있다.
한편, 상기와 같은 메모리 셀들에 대한 프로그램 동작은 단일 비트를 저장하는 싱글레벨 셀(Single-level cell, SLC) 불휘발성 메모리 장치와는 달리 이미 프로그램된 셀을 다시 한번 프로그램 시키는 동작을 포함하고 있으며, 이와 같은 동작에 의해 상기와 같이 여러 상태의 데이터를 저장할 수 있다.
이때, 동일 페이지에 포함된 특정 셀들에 대한 프로그램 동작시 어떤 셀은 최초로 프로그램 동작이 이루어지는 셀이고, 또 다른 셀은 이전 단계에서 한번의 프로그램 동작이 있었고 또 다른 프로그램 동작을 필요로 하는 경우에, 한번의 프로그램 동작이 있었던 셀들은 어느 정도 이상의 프로그램 전압이 인가되지 않으면 해당 셀의 문턱전압이 높아지지 않는 현상이 발생한다. 이로 인해 동일 페이지에 포함된 최초로 프로그램 동작이 이루어지는 셀과의 관계에 있어서, 두번째의 프로그램동작을 하는 셀의 프로그램에 소요되는 시간이 증가하게 되고, 프로그램 방해(disturbance) 현상이 발생하게 된다.
상술한 문제점을 해결하기 위해 본 발명은 상위비트 프로그램 동작시에 하위비트 프로그램에 비해 더 높은 전압을 인가하며, 하위비트는 프로그램하지 않았으면서 상위비트를 프로그램하려는 셀 그룹에 대해서는 비트라인에 로우레벨보다 더 높은 전압을 인가할 수 있는 페이지 버퍼를 구비한 불휘발성 메모리장치를 제공하는 것을 목적으로 한다. 또한, 상위비트 프로그램 동작시에 하위비트 프로그램에 비해 더 높은 전압을 인가하며, 하위비트는 프로그램하지 않았으면서 상위비트를 프로그램하려는 셀 그룹에 대해서는 비트라인에 로우레벨보다 더 높은 전압을 인가하는 불휘발성 메모리장치의 멀티 레벨 셀 프로그램 방법을 제공하는 것을 목적으로 한다.
상술한 목적을 달성하기 위한 본원 발명의 불휘발성 메모리 장치는 특정 비 트라인과 감지노드를 선택적으로 접속시키는 비트라인 선택부와, 특정 데이터를 저장하는 제1 레지스터 및 제2 레지스터와, 상기 제1 레지스터에 저장된 데이터와 제2 레지스터에 저장된 데이터를 비교하여 상기 감지노드로 전달하는 데이터 비교부와, 상기 제1 레지스터에 저장된 데이터의 전압 레벨에 따라 상기 비트라인에 로우 레벨의 전압을 인가하는 제1 비트라인 전압 제어부와, 상기 제2 레지스터에 저장된 데이터의 전압 레벨에 따라 상기 비트라인에 선정된 제1 하이 레벨의 전압을 인가하는 제2 비트라인 전압 제어부를 포함하는 페이지 버퍼를 구비한 것을 특징으로 한다.
또한, 본원 발명의 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법은 특정 셀에 대하여 하위비트 데이터를 프로그램하고 검증하는 단계와, 특정 셀에 대하여 상위비트로 프로그램할 데이터를 페이지 버퍼의 제1 레지스터로 입력받는 단계와, 하위비트 프로그램에 의하여 특정 셀에 저장된 데이터를 독출하여 페이지 버퍼의 제2 레지스터에 저장하는 단계와, 상기 제1 레지스터에 저장된 데이터에 따라 상기 제2 레지스터에 저장된 데이터를 재설정하여 상위비트 및 하위비트를 프로그램할 셀을 특정하는 단계와, 상기 제2 레지스터에 재설정되어 저장된 데이터와 상기 제1 레지스터에 저장된 데이터를 비교하여 상위비트만을 프로그램할 셀을 특정하는 단계와, 상기 상위비트 및 하위비트를 프로그램할 셀에 대하여 비트라인을 로우레벨로 프리차지 시키는 단계와, 상기 상위비트만을 프로그램할 셀에 대하여 비트라인을 선정된 레벨을 갖는 하이레벨로 프리차지 시키는 단계와, 하위비트 프로그램시 보다 일정 레벨 더 큰 전압을 초기전압으로 하는 ISPP(Incremental step pulse program) 프로그램 동작을 하는 단계를 포함하는 것을 특징으로 한다.
또한, 본원 발명의 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법은 하위비트를 프로그램하였으면서 상위비트도 프로그램하려는 제1 셀 그룹 및 하위비트는 프로그램하지 않았으면서 상위비트를 프로그램하려는 제2 셀 그룹을 특정하는 단계와, 상기 제1 셀 그룹과 접속된 비트라인을 로우 레벨로 프리차지 시키는 단계와, 상기 제2 셀 그룹과 접속된 비트라인을 선정된 레벨을 갖는 하이레벨로 프리차지 시키는 단계와, 하위비트 프로그램시 보다 3~4 V 더 큰 전압을 초기전압으로 하는 ISPP(Incremental step pulse program) 프로그램 동작을 하는 단계를 포함하는 것을 특징으로 한다.
이하, 첨부된 도면들을 참조하여 본 발명의 바람직한 실시 예를 상세히 설명하기로 한다.
도 1a 내지 1c는 본 발명이 적용되는 불휘발성 메모리장치의 프로그램 방법을 단계별로 도시한 도면이다.
도 1a를 참조하면, 각 셀들의 문턱전압별 분포를 나타내고 있으며, 그 분포별로 해당 셀에 저장될 데이터를 특정하였다. 소거 동작에 의해 모든 셀이 초기화 되며, 이 상태는 문턱전압이 제일 낮은 분포를 갖는 셀그룹(S1)으로서 LSB(Least Significant Bit)와 MSB(Most Significant Bit) 모두 1로 설정된다.
두번째로 문턱전압이 낮은 분포를 갖는 셀그룹(S2)은 LSB가 1, MSB가 0으로 설정되고, 문턱전압이 두번째로 큰 분포를 갖는 셀그룹(S3)은 LSB가 0, MSB가 1로 설정되며, 문턱전압이 제일 큰 분포를 갖는 셀그룹(S4)은 LSB가 0, MSB가 0으로 설정된다.
도 1b를 참조하면, 하위비트 프로그램에 의하여 문턱전압이 두번째로 큰 분포를 갖는 셀그룹(S3)을 프로그램하는 상황(S5)이 도시되어 있다. 상기 프로그램은 문턱전압이 제일 낮은 분포를 갖는 셀그룹(S1)의 특정 셀들에 대해 LSB 를 0으로 프로그램하는 것으로, 프로그램 되지 않은 셀들은 그 분포(S1)를 그대로 유지한다.
도 1c를 참조하면, 상위비트 프로그램에 의하여 문턱전압이 세번째로 큰 분포를 갖는 셀그룹(S2)을 프로그램하는 상황(S6)과 문턱전압이 제일 큰 분포를 갖는 셀그룹(S4)을 프로그램하는 상황(S7)이 도시되어 있다. 상기 셀그룹(S2)을 프로그램하는 상황(S6)은 문턱전압이 제일 낮은 분포를 갖는 셀그룹(S1)의 특정 셀들에 대해 MSB 를 0으로 프로그램하는 것으로, 프로그램 되지 않은 셀들은 그 분포(S1)를 그대로 유지한다. 또한, 셀그룹(S4)을 프로그램하는 상황(S7)은 앞서 설명한 하위비트 프로그램에 의해 문턱전압이 일부 상승한 셀그룹(S3)의 특정 셀들에 대해 MSB 를 0으로 프로그램하는 것으로, 프로그램 되지 않은 셀들은 그 분포(S3)를 그대로 유지한다.
이때, 상위비트 프로그램의 대상되는 셀그룹(S1, S3)들은 각각 서로 다른 문턱전압을 갖고 있으며, 따라서 동일한 프로그램 전압을 인가하여 프로그램할 경우, 한번의 프로그램 동작이 있었던 셀들은 어느 정도 이상의 프로그램 전압이 인가되지 않으면 해당 셀의 문턱전압이 높아지지 않는 현상이 발생한다. 이로 인해 동일 페이지에 포함된 최초로 프로그램 동작이 이루어지는 셀(S1)과의 관계에 있어서, 두번째의 프로그램동작을 하는 셀(S3)의 프로그램에 소요되는 시간이 증가하게 되고, 프로그램 방해(disturbance) 현상이 발생하게 된다.
도 2는 본 발명의 일실시예에 따른 불휘발성 메모리장치를 도시한 회로도이다.
상기 불휘발성 메모리 장치는 데이터가 저장되는 메모리 셀 어레이와 페이지 버퍼를 포함한다.
상기 페이지 버퍼는 특정 비트라인(BLe 또는 BLo)과 감지노드(SO)를 선택적으로 접속시키는 비트라인 선택부(100), 특정 데이터를 저장하는 제1 레지스터(110) 및 제2 레지스터(120), 상기 제1 레지스터(110)에 저장된 데이터와 제2 레지스터(120)에 저장된 데이터를 비교하여 상기 감지노드(SO)로 전달하는 데이터 비교부(130), 데이터 입력회로(150), 상기 제1 레지스터(110)에 저장된 데이터의 전압 레벨에 따라 상기 비트라인에 로우 레벨의 전압을 인가하는 제1 비트라인 전압 제어부(160)와, 상기 제2 레지스터(120)에 저장된 데이터의 전압 레벨에 따라 상기 비트라인에 선정된 하이 레벨의 전압을 인가하는 제2 비트라인 전압 제어부(170)를 포함한다.
상기 비트라인 선택부(100)는 다수의 NMOS 트랜지스터(N102~N108)들을 포함한다. NMOS 트랜지스터(N102)는 이븐비트라인(BLe)과 바이어스 전압(VIRPWR) 사이에 연결되고, 이븐 디스차지 신호(DISCHe)에 응답하여 턴온된다. NMOS 트랜지스 터(N102)가 턴온될때 상기 바이어스 전압(VIRPWR)이 이븐 비트라인(BLe)에 인가된다. NMOS 트랜지스터(N104)는 오드 비트라인(BLo)과 바이어스 전압(VIRPWR) 사이에 연결되고, 오드 디스차지 신호(DISCHo)에 응답하여 턴온된다. NMOS 트랜지스터(N104)가 턴온될때 바이어스 전압(VIRPWR)이 오드 비트라인(BLo)에 인가된다. NMOS 트랜지스터(N106)는 상기 이븐 비트라인(BLe)과 감지 노드(SO) 사이에 연결되고, 이븐 비트라인 선택 신호(SELBLe)에 응답하여 턴온된다. NMOS 트랜지스터(N106)가 턴온될때 상기 이븐 비트라인(BLe)과 상기 감지 노드(SO)가 연결된다. NMOS 트랜지스터(N108)는 상기 오드 비트라인(BLo)과 상기 감지 노드(SO) 사이에 연결되고, 오드 비트라인 선택 신호(SELBLo)에 응답하여 턴온된다. NMOS 트랜지스터(N108)가 턴온될때 상기 오드 비트라인(BLo)과 상기 감지 노드(SO)가 연결된다.
상기 제1 레지스터(110)는 두 개의 인버터(IV114, IV116)로 구성된 래치(112), 상기 래치의 제1 노드(QA)와 접속된 NMOS 트랜지스터(N114), 상기 래치의 제2 노드(QAb)와 접속된 NMOS 트랜지스터(N112) 및 인버터(IV112)를 포함한다. 또한 상기 NMOS 트랜지스터(N112, N114)의 접속노드(N1)와 접지사이에 접속된 NMOS 트랜지스터(N116)를 포함한다.
상기 NMOS 트랜지스터(N112)는 상기 제2 노드(QAb)와 접속노드(N1)사이에 접속되어 상위비트 독출신호(MREAD)에 응답하여 턴온되며, NMOS 트랜지스터(N114)는 상기 제1 노드(QA)와 접속노드(N1)사이에 접속되어 상위비트 셋신호(MSET)에 응답하여 턴온된다.
상기 NMOS 트랜지스터(N116)는 접속노드(N1)와 접지사이에 접속되며, 감지 노드(SO)의 전압레벨에 따라 턴온되어 상기 접속노드(N1)에 접지전압을 공급한다.
상기 제2 레지스터(120)는 두 개의 인버터(IV124, IV126)로 구성된 래치(122), 상기 래치의 제1 노드(QB)와 접속된 NMOS 트랜지스터(N124), 상기 래치의 제2 노드(QBb)와 접속된 NMOS 트랜지스터(N122) 및 인버터(IV122)를 포함한다. 또한 상기 NMOS 트랜지스터(N122, N124)의 접속노드(N2)와 접지사이에 접속된 NMOS 트랜지스터(N126)를 포함한다.
상기 NMOS 트랜지스터(N122)는 상기 제2 노드(QBb)와 접속노드(N2)사이에 접속되어 하위비트 리셋신호(LRST)에 응답하여 턴온되며, NMOS 트랜지스터(N124)는 상기 제1 노드(QB)와 접속노드(N2)사이에 접속되어 하위비트 셋신호(LSET)에 응답하여 턴온된다.
상기 NMOS 트랜지스터(N126)는 접속노드(N1)와 접지사이에 접속되며, 감지 노드(SO)의 전압레벨에 따라 턴온되어 상기 접속노드(N2)에 접지전압을 공급한다.
상기 데이터 비교부(130)는 상위비트 프로그램 신호(MPG)에 응답하여 상기 제1 레지스터(110)에 저장된 데이터와 제2 레지스터(120)에 저장된 데이터의 논리곱 데이터를 상기 감지노드(SO)로 전달한다.
상기 데이터 비교부(130)는 제1 비교 회로(132)와 제2 비교 회로(134)를 포함한다. 상기 제1 비교 회로(132)는 NMOS 트랜지스터(N132, N136)를 포함한다. 상 기 NMOS 트랜지스터(N132, N136)는 상기 감지 노드(SO)와 노드(N3)사이에 직렬 연결된다. NMOS 트랜지스터(N132)는 상위비트 프로그램 신호(MPG)에 응답하여 턴온되고, NMOS 트랜지스터(N136)는 노드(N4)의 전위에 응답하여 턴온되어 상기 감지 노드(SO)와 상기 노드(N3)를 연결하거나 분리한다.
상기 제2 비교 회로(134)는 NMOS 트랜지스터(N134, N138)를 포함한다. 상기 NMOS 트랜지스터(N134, N138)는 상기 감지 노드(SO)와 상기 노드(N4) 사이에 직렬 연결된다. NMOS 트랜지스터(N134)는 상기 상위비트 프로그램 신호(MPG)에 응답하여 턴온되고, NMOS 트랜지스터(N138)는 상기 노드(N3)의 전위에 응답하여 턴온되어 상기 감지 노드(SO)와 상기 노드(N4)를 연결하거나 분리한다.
상기 데이터 비교부(130)의 동작시에는 프리차지용 트랜지스터(P140)을 일정기간 턴온시켜 감지 노드(SO)를 하이 레벨로 프리차지 시킨 상태에서, 하이레벨의 상위비트 프로그램 신호(MPG)를 인가하게 된다. 이때, 제1 비교 회로(132)의 노드(N3)와 제2 비교 회로(134)의 노드(N4)의 전압 레벨에 따라, 감지 노드(SO)의 전압 레벨이 달라지는데, 그 상태는 다음 표와 같다.
비교회로 동작여부 N3 노드 전위 N4 노드 전위 감지 노드(SO) 전위
N136,N138 TR 턴온 High High High
N138 TR 턴온 High Low Low
N136 TR 턴온 Low High Low
N136,N138 TR 턴오프 Low Low 프리차지 레벨유지
표와 같이 제1 비교 회로(132)의 노드(N3)와 제2 비교 회로(134)의 노드(N4)의 전압 레벨에 따라 NMOS 트랜지스터(N136, N138)의 턴온 여부가 결정되며, 그에 따라 각 노드의 전위가 감지 노드(SO)에 영향을 주게 되는지 결정된다. 다만, 두 노드의 전위가 모두 로우 레벨인 경우에는 두 트랜지스터 모두가 턴오프되어 상기 논리곱 데이터 전송을 중단하며, 이때는 감지 노드(SO)의 전위는 프리차지된 레벨에 따라 결정된다.
상기 데이터 입력 회로(150)는 NMOS 트랜지스터(N152, N154)를 포함한다. NMOS 트랜지스터(N152)는 상기 제2 노드(QAb)와 입출력 단자(YA) 사이에 연결되고, 데이터 입력 신호(DI)에 응답하여 턴온된다. 상기 NMOS 트랜지스터(N152)가 턴온될때 상기 입출력 단자(YA)의 데이터를 상기 제1 레지스터(110)의 제2 노드(QAb)에 전달한다. NMOS 트랜지스터(N154)는 상기 제1 노드(QA)와 상기 입출력 단자(YA) 사이에 연결되고, 반전 데이터 입력 신호(nDI)에 응답하여 턴온된다. 상기 NMOS 트랜지스터(N154)가 턴온될때 상기 입출력 단자(YA)의 데이터를 상기 제1 노드(QA)에 전달한다.
따라서, 상기 입출력 단자(YA)를 접지시킨 상태에서 하이레벨의 입력 신호(DI)가 인가되면, NMOS 트랜지스터(N152)가 턴온되어 제2 노드(QAb)가 로우레벨이 되고, 이와 반대로 하이레벨의 입력 신호(nDI)가 인가되면, NMOS 트랜지스터(N154)가 턴온되어 제1 노드(QA)가 로우레벨이 되면서 데이터가 입력된다.
한편, 상기 제1 비트라인 전압 제어부(160)는 제1 레지스터(110)의 제2 노드(QAb)와 감지노드(SO) 사이에 접속된다. 상기 제1 비트라인 전압 제어부(160)는 제1 레지스터에 저장된 데이터에 응답하여 접지 전압을 상기 감지노드로 공급하는 NMOS 트랜지스터(N164)와, 상기 NMOS 트랜지스터(N164)와 상기 감지노드 사이에 접속되고 제1 비트라인 전압 제어신호(MREG)에 응답하여 상기 접지 전압을 상기 감지노드로 공급하는 NMOS 트랜지스터(N164)를 포함한다.
상기 제2 비트라인 전압 제어부(170)는 제2 레지스터(120)의 제2 노드(QBb)와 감지노드(SO) 사이에 접속된다. 상기 제2 비트라인 전압 제어부(170)는 제2 레지스터(120)에 저장된 데이터에 응답하여 전원 전압(Vcc)을 상기 감지노드로 공급하는 NMOS 트랜지스터(N174)와, 상기 NMOS 트랜지스터(N174)와 상기 감지노드 사이에 접속되고 제2 비트라인 전압 제어신호(LREG)에 응답하여 상기 전원 전압을 상기 감지노드로 공급하는 NMOS 트랜지스터(N172)를 포함한다. 다만, 상기 전원 전압(Vcc)에 인가되는 전압의 값은 하위비트 프로그램시와 상위비트 프로그램시에 서로 다르게 설정되도록 한다. 즉, 하위비트 프로그램시에는 접지 전압을 인가하도록 하며, 상위비트 프로그램시에는 하이레벨 전압을 인가하도록 한다. 구체적인 내용은 추후 살펴보도록 한다.
본원 발명의 구성에 따라, 제1 비트라인 전압 제어신호(MREG)의 전압 레벨은 제2 비트라인 전압 제어신호(LREG)의 전압레벨보다 낮은 것을 특징으로 하며, 바람직하게는 제2 비트라인 전압 제어신호는 제1 비트라인 전압 제어신호보다 1.5V~2,0V 더 큰 신호인것을 특징인 것으로 한다.
또한, 바람직하게는 제1 비트라인 전압 제어신호(MREG)는 상기 NMOS 트랜지스터(N162)를 턴온할 수 있는 문턱 전압 레벨 이상인 것을 특징으로 한다. 제2 비트라인 전압 제어신호(LREG)는 하위비트 프로그램시에는 상기 NMOS 트랜지스터(N172)의 문턱 전압보다 큰 전압이고, 상위비트 프로그램시에는 상기 NMOS 트랜지스터(N172)의 문턱전압과 상기 선정된 하이 레벨 전압의 합보다 큰 전압인것을 특징으로 한다. 이때, 선정된 하이 레벨의 전압은 1.5V~2.0V 인 것을 특징으로 한다.
한편, 각 비트 레지스터의 노드(N3, N4)와 감지 노드(SO) 사이에는 데이터 전송용 트랜지스터(N142, N144)가 연결되어 있다. 상기 NMOS 트랜지스터(N142)는 상기 감지 노드(SO)와 상기 노드(N3) 사이에 연결되고, 데이터 전송 신호(DTRN)에 응답하여 턴온된다. 따라서, 상기 NMOS 트랜지스터(N142)의 턴온시에는 상기 노드(N3)의 데이터를 상기 감지 노드(SO)에 전달한다.
상기 NMOS 트랜지스터(N144)는 상기 감지 노드(SO)와 상기 노드(N4) 사이에 연결되고, 하위비트 프로그램 신호(LPG)에 응답하여 턴온된다. 따라서, 상기 NMOS 트랜지스터(N144)의 턴온시에는 상기 노드(N4)의 데이터를 상기 감지 노드(SO)에 전달한다.
또한, 전원 전압(VDD)과 상기 감지 노드(SO) 사이에 접속된 프리차지용 PMOS 트랜지스터(P140)는 로우레벨의 프리차지 신호(PRE_N)에 응답하여 턴온된다. 상기 PMOS 트랜지스터(140)가 턴온될때 상기 전원 전압(VDD)이 상기 감지 노드(SO)에 인 가되어 상기 감지 노드(SO)가 상기 전원 전압(VDD) 레벨로 프리차지된다.
도 3은 본원 발명의 페이지 버퍼의 각 레지스터를 초기화하는 동작을 도시한 타이밍도이다.
상기 프리차지 신호(PRE_N)가 상기 PMOS 트랜지스터(P140)에 소정 시간 동안 로우 레벨로 인가되면, 상기 PMOS 트랜지스터(P140)가 턴온되어 상기 전원 전압(VDD)을 상기 감지 노드(SO)에 인가한다. 따라서 상기 감지 노드(SO)가 상기 전원 접압(VDD)레벨로 프리차지되어, 상기 감지 노드(SO)의 전위가 하이 레벨이 된다. 상기 감지 노드(SO)의 전위에 응답하여 상기 제1 레지스터(110)에 포함된 NMOS 트랜지스터(N116)가 턴온된다. 이때 하이 레벨의 상위비트 독출 신호(MREAD)가 NMOS 트랜지스터(N112)에 인가되어 상기 NMOS 트랜지스터(N112)가 턴온된다. 이로 인해 상기 접지 전압(Vss)과 상기 제2 노드(QAb)가 접속되어 상기 접지 전압(Vss)이 상기 제2 노드(QAb)에 인가된다. 따라서 상기 제2 노드(QAb)의 전위는 로우 레벨로, 상기 제1 노드(QA)의 전위는 하이 레벨로 초기화된다.
또한 상기 감지 노드(SO)의 전위에 응답하여 상기 제2 레지스터(120)에 포함된 NMOS 트랜지스터(N126)가 턴온된다. 이때 하이 레벨의 하위비트 셋신호(LSET)가 NMOS 트랜지스터(N124)에 인가되어 상기 NMOS 트랜지스터(N124)가 턴온된다. 이로 인해 상기 접지 전압(Vss)과 상기 제1 노드(QB)가 접속되어 상기 접지 전압(Vss)이 상기 노드(QB)에 인가된다. 따라서 상기 제1 노드(QB)의 전위는 로우 레벨로 초기화된다. 이와 같은 초기화 동작은 다음에 살펴볼 하위비트 프로그램 동작 및 상위 비트 프로그램 동작에 앞서 각 페이지 버퍼를 초기화시키는데 공통적으로 사용된다. 정리하면, 제1 레지스터(110)의 제1 노드(QA)는 하이 레벨로 초기화되고, 제2 레지스터(120)의 제1 노드(QB)는 로우 레벨로 초기화된다.
도 4는 본 발명의 일 실시예에 따른 하위비트 프로그램동작을 도시한 파형도이다.
먼저 프로그램동작에 앞서 특정 셀에 입력할 데이터를 상기 데이터 입출력부(150)로부터 입력받아 제1 레지스터(110)를 거쳐 제2 레지스터(120)에 전달한다(도 4의 데이터 입력구간).
구체적으로 살펴보면, 입력되는 데이터가 '1(소거 셀)'이라면, 상기 데이터 입출력부(150)를 통해 제1 레지스터(110)의 제1 노드(QA)에 하이레벨의 데이터가 저장된다. 이 상태에서, 데이터 전송용 트랜지스터(N142)에 하이레벨의 신호(DTRN)가 인가되면, 제1 노드(QA)에 저장된 데이터가 래치와 인버터(IV112)를 통해 감지 노드(SO)에 인가되고, 하이레벨의 데이터가 제2 레지스터(120)의 NMOS 트랜지스터(N126)을 턴온시키게 된다. 한편, 이때 제2 레지스터(120)의 NMOS 트랜지스터(N122)에는 하이레벨의 하위비트 리셋신호(LRST)가 인가되어 NMOS 트랜지스터(N122)가 턴온되므로, 제2 노드(QBb)에는 접지전압이 인가되고 제1 노드(QB)에 하이레벨의 데이터가 저장된다.
한편, 입력되는 데이터가 '0(프로그램 셀)'이라면, 상기 데이터 입출력부(150)를 통해 제1 레지스터(110)의 제1 노드(QA)에 로우레벨의 데이터가 저장된 다. 이 상태에서, 데이터 전송용 트랜지스터(N142)에 하이레벨의 신호(DTRN)가 인가되면, 제1 노드(QA)에 저장된 데이터가 래치와 인버터(IV112)를 통해 감지 노드(SO)에 인가되고, 로우레벨의 데이터가 제2 레지스터(120)의 NMOS 트랜지스터(N126)에 전달되어 NMOS 트랜지스터(N126)를 턴오프시키게 된다. 한편, 이때 제2 레지스터(120)의 NMOS 트랜지스터(N122)에는 하이레벨의 하위비트 리셋신호(LRST)가 인가되어 NMOS 트랜지스터(N122)가 턴온되는데, 상기 NMOS 트랜지스터(N126)가 턴오프되어 있는 상태이므로, 초기에 제2 레지스터(120)에 저장된 데이터가 그대로 유지된다. 따라서, 제1 노드(QB)에 초기에 저장되었던 로우레벨의 데이터가 그대로 유지된다.
다음으로, 프로그램 동작을 살펴보기로 한다.
먼저 이븐 디스차지 신호(DISCHe)가 인에이블되어 상기 NMOS 트랜지스터(N102)가 턴온된다. 따라서 상기 바이어스 전압(VIRPWR)이 상기 이븐 비트라인(BLe)에 인가되어 상기 이븐 비트라인(BLe)이 하이 레벨 전위로 프리차지 된다. 또한 상기 오드 디스차지 신호(DISCHo)가 인에이블되어 상기 NMOS 트랜지스터(N104)가 턴온된다. 따라서 상기 바이어스 전압(VIRPWR)이 상기 오드 비트라인(BLo)에 인가되어 상기 오드 비트라인(BLo)이 하이 레벨 전위로 프리차지 된다.
일정 시간후에 상기 이븐 디스차지 신호(DISCHe)가 디스에이블되어 상기 NMOS 트랜지스터(N102)가 턴오프된다. 따라서 상기 이븐 비트라인(BLe)에 인가되던 상기 바이어스 전압(VIRPWR)이 차단된다. 한편 상기 오드 디스차지 신호(DISCHo)는 상기 프로그램 구간 동안 인에이블 상태로 유지되므로 상기 오드 비트라인(BLo)은 하이 레벨 전위를 유지한다.
다음으로, 상기 하위비트 프로그램 신호(LPG)가 상기 데이터 전송용 트랜지스터(N144)에 인가되어 상기 감지 노드(SO)와 상기 노드(N4)가 연결된다. 하위 비트 데이터의 값이 '1'일 경우, 상기 제2 레지스터(120)의 제1 노드(QB)에는 앞서 살펴본바와 같이 하이레벨의 데이터가 저장되므로, 래치(120)와 인버터(IV122)를 거쳐 상기 노드(N4)와 감지 노드(SO)에 하이레벨의 데이터가 전달된다. 하위비트 데이터의 값이 '0'일 경우, 상기 제2 레지스터(120)의 제1 노드(QB)에는 앞서 살펴본바와 같이 로우레벨의 데이터가 저장되므로, 래치(120)와 인버터(IV122)를 거쳐 상기 노드(N4)와 감지 노드(SO)에 로우레벨의 데이터가 전달된다.
또한, 상기 이븐 비트라인 선택 신호(BSLe)가 상기 비트라인 선택부(100)에 인가되어 상기 NMOS 트랜지스터(N106)가 턴온된다. 이로 인해 상기 이븐 비트라인(BLe)과 상기 감지 노드(SO)가 연결된다. 이때 상기 감지 노드(SO)의 전압 레벨에 따라 상기 이븐 비트라인(BLe)의 전위가 달라지는데, 하위 비트 데이터의 값이 '1'일 경우에는 감지 노드(SO)에 하이레벨의 데이터가 전달되므로, 이븐 비트라인(BLe)의 전위는 하이레벨이 되며, 반대의 경우에는 로우레벨이 된다(도면의 경우 하위 비트 데이터의 값이 '0'인 경우 도시함).
한편, 제2 비트라인 전압 제어부(170)에 제2 비트라인 전압 제어신호(LREG) 가 인가되는데 이때는 상기 NMOS 트랜지스터(N172)의 문턱 전압 레벨에 해당하는 전압 신호가 인가된다. 또한, 하위 비트 데이터가 '0'인 경우에는 인버터(IV126)에 의해 전압 레벨이 반전되어 NMOS 트랜지스터(N174)가 턴온된다.
한편, 앞서 설명한 바와 같이 하위비트 프로그램시에는 NMOS 트랜지스터(N174)의 일단에 접지 전압이 공급되게 한다. 따라서, NMOS 트랜지스터(N172, N174)가 모두 턴온되어, 감지노드(SO)에 접지 전압이 인가되고, 비트라인의 전압레벨이 로우레벨이 되게 한다.
또한, 드레인 선택 트랜지스터(DSL)에 하이레벨의 전압을 인가하여 메모리 셀 어레이의 특정 셀이 포함된 셀 스트링과 특정 비트라인을 접속시킨다.
또한, 선택된 워드라인에 대해서는 ISPP(Incremental step pulse program) 방식에 의하여 프로그램 전압을 인가한다.
바람직하게는, 약 13.0 V부터 시작하여 0.2V의 스텝으로 프로그램 전압을 인가한다.
다음으로, 검증 동작을 살펴보기로 한다.
먼저 이븐 디스차지 신호(DISCHe)가 일정기간 인에이블되어 상기 NMOS 트랜지스터(N102)가 턴온되는데, 상기 바이어스 전압(VIRPWR)이 로우레벨로 천이되므로 상기 이븐 비트라인(BLe)이 로우 레벨 전위로 디스차지 된다. 또한 상기 오드 디스차지 신호(DISCHo)가 인에이블되어 상기 NMOS 트랜지스터(N104)가 턴온되므로, 상기 오드 비트라인(BLo)도 로우 레벨 전위로 디스차지된다.
다음으로, 이븐 비트라인 선택 트랜지스터(N106)에 하이레벨(V1)의 전압을 일정기간 인가하여 이븐 비트라인(BLe)과 감지노드(SO)를 접속시킨다. 이때, 도면에는 도시되지 않았지만, 감지노드(SO)는 프라치지용 트랜지스터(P140)를 일정기간 턴온시켜 하이레벨로 프리차지된 상태이다.
또한, 드레인 선택 트랜지스터(DSL)에 하이레벨의 전압을 인가하여 메모리 셀 어레이의 특정 셀이 포함된 셀 스트링과 특정 비트라인을 접속시킨다.
또한, 선택된 워드라인에 대해서는 검증 기준 전압(PV2)을 인가한다.
다음으로, 이븐 비트라인 선택 트랜지스터(N106)에 하이레벨(V2)의 전압을 일정기간 인가하여 븐 비트라인(BLe)과 감지노드(SO)를 접속시킨다.
또한, 소스 선택 트랜지스터(SSL)에 하이레벨의 전압을 인가하여 메모리 셀 어레이의 특정 셀이 포함된 셀 스트링과 공통소스라인을 접속시켜, 비트라인에서 공통소스라인으로 이어지는 전류 경로를 형성시킨다. 따라서, 특정 셀이 프로그램된 경우에는 문턱전압이 높아져서 상기 형성된 전류 경로를 통해 전류가 흐르지 않아 비트라인의 전압레벨이 그대로 유지되며, 프로그램되지 않은 경우, 즉 소거된 셀의 경우에는 상기 형성된 전류 경로를 통해 전류가 흘러가서 비트라인의 전압레벨이 로우레벨로 떨어지게 된다.
비트라인의 전압레벨에 따라 감지노드(SO)의 전압레벨이 결정되며, 해당 셀이 프로그램된 경우에는 하이레벨을 유지하므로, 제2 레지스터의 NMOS 트랜지스터(N126)가 턴온된다. 이때, 제2 레지스터의 NMOS 트랜지스터(N122)에 하이레벨의 신호가 인가되므로, 프로그램된 경우에는 제2 노드(QB)에 하이레벨 데이터가 저장 된다. 그러나 프로그램되지 않은 경우에는 초기에 저장된 로우레벨 데이터를 유지한다.
이와 같은 과정을 통해 해당 셀의 프로그램 여부를 검증하게 되며, 이때 프로그램 된 셀은 도 1의 '10' 데이터를 저장하는 셀이 된다.
다음으로, 상위비트 프로그램 동작에 대해 살펴보기로 한다.
상위비트 프로그램 동작을 하기 전에 먼저, 도 3에서 살펴본 각 레지스터의 초기화 동작을 실시한다.
상기 초기화 동작에 의해 제1 레지스터의 제1 노드(QA)는 하이레벨로, 제2 레지스터의 제1 노드(QB)는 로우 레벨로 초기화되는 것은 동일하다.
다음으로, 상위 비트에 프로그램할 데이터를 페이지 버퍼의 제1 레지스터로 입력받는다.
이 동작은 도 4의 데이터 입력구간에서와 마찬가지로 이루어지며, 데이터 입력회로(150)를 통해 '1' 또는 '0' 데이터를 입력받는다.
다음으로, 하위비트 프로그램에 의하여 특정 셀에 저장된 데이터를 독출하여 페이지 버퍼의 제2 레지스터에 저장한다.
상기 동작은 도 4의 프로그램 검증 동작과 거의 유사하며, 다만 선택된 워드라인에 검증 기준 전압(PV2)을 인가하지 않고, OV의 전압을 인가하여 프로그램 여 부를 판단한다. 판단 결과, 특정 셀의 하위비트가 프로그램된 경우에는 감지노드(SO)의 전압레벨이 하이레벨을 유지하고, 소거된 경우에는 로우레벨을 유지하게 되는 것은 앞서 살펴본 바와 같다.
이때, 감지노드(SO)가 하이레벨인 경우에는 제2 레지스터의 NMOS 트랜지스터(N126)가 턴온되고, 이때 하이레벨의 신호(LRST)에 의해 NMOS 트랜지스터(N122)가 턴온되므로, 제2 노드(QBb)에는 로우레벨의 신호가 저장되며, 제1 노드(QB)에는 하이레벨의 데이터가 저장되게 된다.
한편, 감지노드(SO)가 로우레벨인 경우에는 제2 레지스터의 NMOS 트랜지스터(N126)가 턴오프 되므로, 앞선 초기화 동작에서 저장되었던 로우레벨 데이터가 그대로 유지된다.
따라서, 독출 결과 하위비트가 프로그램된 셀에 대해서는 제2 레지스터의 제1노드(QB)에 하이레벨의 데이터가 저장되고, 소거된 셀에 대해서는 로우레벨의 데이터가 저장된다.
지금까지 설명한 동작의 결과 각 레지스터에 저장된 데이터를 살펴보면 다음과 같다. 제1 레지스터에는 데이터 입력부(150)를 통해 프로그램하고자 하는 데이터인 '1' 또는 '0'이 저장되어 있으며, 제2 레지스터에는 특정 셀의 프로그램 여부에 따라 '1' 또는 '0'이 저장되어 있다.
다음으로, 제1 레지스터에 저장된 데이터에 따라 상기 제2 레지스터에 저장된 데이터를 재설정하여 상위비트 및 하위비트를 프로그램할 셀을 특정한다. 이와 같은 동작은, 하위비트가 프로그램되지 않은 셀이면서 상위비트를 프로그램 할 경우(도 1의 '01' 데이터)에 대해서만 제2 레지스터에 '0' 데이터를 저장하기 위함이다. 또한, 더 이상 프로그램이 필요하지 않은 경우(도 1의 '11', '10' 데이터)에 대해서는 제1 레지스터 및 제2 레지스터에 '1' 데이터를 저장하기 위함이다. 또한, 하위비트가 프로그램된 셀이면서 상위비트도 프로그램할 경우(도 1의 '00' 데이터)에 대해서만 제1 레지스터에 '0' 데이터를 저장하기 위함이다.
상기 데이터 전송 동작은, 도 4에서 설명한 데이터 전송 동작과 동일하게 이루어진다. 즉, 입력되는 데이터가 '1(소거 셀)'이라면, 상기 데이터 입출력부(150)를 통해 제1 레지스터(110)의 제1 노드(QA)에 하이레벨의 데이터가 저장된다. 이 상태에서, 데이터 전송용 트랜지스터(N142)에 하이레벨의 신호(DTRN)가 인가되면, 제1 노드(QA)에 저장된 데이터가 래치와 인버터(IV112)를 통해 감지 노드(SO)에 인가되고, 하이레벨의 데이터가 제2 레지스터(120)의 NMOS 트랜지스터(N126)을 턴온시키게 된다. 한편, 이때 제2 레지스터(120)의 NMOS 트랜지스터(N122)에는 하이레벨의 하위비트 리셋신호(LRST)가 인가되어 NMOS 트랜지스터(N122)가 턴온되므로, 제2 노드(QBb)에는 접지전압이 인가되고 제1 노드(QB)에 하이레벨의 데이터가 저장된다.
한편, 입력되는 데이터가 '0(프로그램 셀)'이라면, 상기 데이터 입출력부(150)를 통해 제1 레지스터(110)의 제1 노드(QA)에 로우레벨의 데이터가 저장된다. 이 상태에서, 데이터 전송용 트랜지스터(N142)에 하이레벨의 신호(DTRN)가 인가되면, 제1 노드(QA)에 저장된 데이터가 래치와 인버터(IV112)를 통해 감지 노 드(SO)에 인가되고, 로우레벨의 데이터가 제2 레지스터(120)의 NMOS 트랜지스터(N126)에 전달되어 NMOS 트랜지스터(N126)를 턴오프시키게 된다. 한편, 이때 제2 레지스터(120)의 NMOS 트랜지스터(N122)에는 하이레벨의 하위비트 리셋신호(LRST)가 인가되어 NMOS 트랜지스터(N122)가 턴온되는데, 상기 NMOS 트랜지스터(N126)가 턴오프되어 있는 상태이므로, 초기에 제2 레지스터(120)에 저장된 데이터가 그대로 유지된다. 따라서, 제1 노드(QB)에 초기에 저장되었던 로우레벨의 데이터가 그대로 유지된다.
즉, 제2 레지스터에 저장되어 있던 데이터의 종류와는 무관하게, 제1 레지스터로 입력된 데이터가 '1'인 경우에는 제2 레지스터에 '1' 데이터가 저장되고, 제1 레지스터 입력된 데이터가 '0' 인 경우에는 제2 레지스터에 저장되어있던 데이터가 그대로 유지된다.
다음 표를 참조하면 더욱 명확하게 이해할 수 있다.
제2 레지스터에 저장된 데이터 제1 레지스터로 입력된 데이터 제2 레지스터의 데이터 변화
0(소거된 셀) 0(프로그램 데이터) 0->0
1(소거 데이터) 0->1
1(프로그램된 셀) 0(프로그램 데이터) 1->1
1(소거 데이터) 1->1
결과적으로, 하위비트가 프로그램되지 않은 셀이면서 상위비트를 프로그램 할 경우, 즉 특정 셀에 '01' 데이터를 저장하는 경우에 한해서 제2 레지스터에 '0'이 저장되며, 나머지의 경우에는 모두 '1'이 입력된다. 다만, 제2 레지스터에 '0'이 저장된 상태라면 제1 레지스터에도 '0'이 저장되어 있는 상태로서, 하위비트가 프로그램된 셀이면서 상위비트도 프로그램할 경우와 구별이 되지 않는다. 이를 구 별하기 위해, 데이터 비교 동작을 통해 제1 레지스터에 저장된 '0'을 '1'로 변환한다.
다음으로, 제2 레지스터에 재설정되어 저장된 데이터와 상기 제1 레지스터에 저장된 데이터를 비교하여 상위비트만을 프로그램할 셀을 특정한다. 상기 데이터 비교 동작을 위해, 제1 레지스터에 저장된 데이터와 제2 레지스터에 저장된 데이터를 데이터 비교부(130)를 통해 비교하여 제1 레지스터에 저장된 데이터를 재설정한다. 이는, 하위비트가 프로그램된 셀이면서 상위비트도 프로그램할 경우에 대해서만 제1 레지스터에 '0' 데이터를 저장하기 위함이다.
앞선 데이터 재설정 동작에 따른 표를 살펴보면, 하위비트가 프로그램된 셀이면서 상위비트도 프로그램할 경우에 대해서는 이미 제1 레지스터에 '0' 데이터가 저장되고 제2 레지스터에 '1' 데이터가 저장되어 있어 별도의 비교 동작이 불필요하다. 그러나 하위비트가 프로그램되지 않은 셀이면서 상위비트를 프로그램할 경우에는 제1 레지스터에도 '0' 데이터가 저장되어 있는바, 이를 '1'로 변환하는 동작이 필요하다.
데이터 비교부(130)를 통한 데이터 비교 동작은 앞서 살펴본 바와 같이 진행된다.
먼저, 프리차지용 PMOS 트랜지스터(P140)를 턴온시켜 감지노드(SO)를 하이레벨로 프리차지 시킨다.
다음으로, 하이레벨의 상위비트 프로그램 신호(MPG)를 데이터 비교부의(130) 의 NMOS 트랜지스터(N132, N134)를 턴온시킨다.
이때, 제1 비교 회로(132)의 노드(N3)와 제2 비교 회로(134)의 노드(N4)의 전압 레벨에 따라, 감지 노드(SO)의 전압 레벨이 달라지는데, 그 상태는 다음 표와 같다.
비교회로 동작여부 N3 노드 전위 N4 노드 전위 감지 노드(SO) 전위
N136,N138 TR 턴온 High High High
N138 TR 턴온 High Low Low
N136 TR 턴온 Low High Low
N136,N138 TR 턴오프 Low Low 프리차지 레벨유지
상기 N3 노드의 전위는 제1 레지스터에 저장된 데이터의 레벨과 같으며, N4 노드의 전위는 제2 레지스터에 저장된 데이터의 레벨과 같다. 표와 같이 제1 비교 회로(132)의 노드(N3)와 제2 비교 회로(134)의 노드(N4)의 전압 레벨에 따라 NMOS 트랜지스터(N136, N138)의 턴온 여부가 결정되며, 그에 따라 각 노드의 전위가 감지 노드(SO)에 영향을 주게 되는지 결정된다.
다음으로, NMOS 트랜지스터(N112)에 하이레벨의 신호(MREAD)를 인가하여, 감지노드(SO)의 전위에 따라 제2 노드(QAb)에 접지전압을 인가한다.
제1 레지스터 및 제2 레지스터의 데이터 레벨에 따라 감지 노드(SO)의 전위가 하이 레벨로 결정된 경우에는, NMOS 트랜지스터(N116)에 하이레벨의 신호가 인가되므로, 제2 노드(QAb)에 접지전압이 인가되고, 따라서 제1 노드(QA)에 하이레벨의 데이터, 즉 '1' 데이터가 저장된다. 따라서, 위 표에 있어서는 제1 레지스터에 저장된 데이터에는 변화가 없다.
제1 레지스터 및 제2 레지스터의 데이터 레벨에 따라 감지 노드(SO)의 전위가 로우 레벨로 결정된 경우에는, NMOS 트랜지스터(N116)에 로우레벨의 신호가 인 가되므로 역시 제1 레지스터에 저장된 데이터가 그대로 유지된다.
한편, 두 노드의 전위가 모두 로우 레벨인 경우, 즉 제1 레지스터 및 제2 레지스터에 저장된 데이터가 모두 '0'인 경우에는 두 트랜지스터 모두가 턴오프되며, 이때는 감지 노드(SO)의 전위는 프리차지된 레벨에 따라 결정된다. 그런데, 앞서 상기 감지 노드(SO)의 전위는 하이레벨로 프리차지된 상태이므로, 따라서 제1 레지스터의 NMOS 트랜지스터(N116)가 턴온된다. 따라서, 제2 노드(QAb)에 접지전압이 인가되고, 제1 노드(QA)에 하이레벨의 데이터, 즉 '1' 데이터가 저장된다.
정리하면, 하위비트가 프로그램되지 않은 셀이면서 상위비트를 프로그램할 경우에는 제1 레지스터 및 제2 레지스터에 '0' 데이터가 저장되어 있었으나, 데이터 비교 동작에 의해 제1 레지스터의 데이터가 '1'로 변환됨으로써, 제2 레지스터에만 '0' 데이터가 저장된다.
상기 데이터 재설정 동작 및 데이터 비교 동작을 마친 후의 각 레지스터에 저장된 데이터 상태는 다음과 같다.
제1 레지스터 제2 레지스터
'11'데이터 입력시 1 1
'10'데이터 입력시 1 1
'01'데이터 입력시 1 0
'00'데이터 입력시 0 1
이와 같이 각 레지스터에 데이터가 저장되면, 프로그램 준비단계가 완료된다. 이제 도면을 참조하여, 상위 비트 프로그램 동작을 살펴보기로 한다.
도 5는 본 발명의 일 실시예에 따른 상위비트 프로그램동작을 도시한 파형도이다.
먼저 이븐 디스차지 신호(DISCHe)가 인에이블되어 상기 NMOS 트랜지스터(N102)가 턴온된다. 따라서 상기 바이어스 전압(VIRPWR)이 상기 이븐 비트라인(BLe)에 인가되어 상기 이븐 비트라인(BLe)이 하이 레벨 전위로 프리차지 된다. 또한 상기 오드 디스차지 신호(DISCHo)가 인에이블되어 상기 NMOS 트랜지스터(N104)가 턴온된다. 따라서 상기 바이어스 전압(VIRPWR)이 상기 오드 비트라인(BLo)에 인가되어 상기 오드 비트라인(BLo)이 하이 레벨 전위로 프리차지 된다.
일정 시간후에 상기 이븐 디스차지 신호(DISCHe)가 디스에이블되어 상기 NMOS 트랜지스터(N102)가 턴오프된다. 따라서 상기 이븐 비트라인(BLe)에 인가되던 상기 바이어스 전압(VIRPWR)이 차단된다. 한편 상기 오드 디스차지 신호(DISCHo)는 상기 프로그램 구간 동안 인에이블 상태로 유지되므로 상기 오드 비트라인(BLo)은 하이 레벨 전위를 유지한다.
다음으로, 하이레벨의 상위비트 프로그램 신호(MPG)가 상기 데이터 비교부(130)의 NMOS 트랜지스터(N132, N134)에 인가되어 상기 감지 노드(SO)에 제1 레지스터 및 제2 레지스터의 데이터가 인가된다.
데이터 비교부(130)의 구체적인 동작은 앞서 살펴본바와 같으며, 제1 레지스터 및 제2 레지스터에 모두 '1' 데이터가 저장된 경우에 한하여 감지 노드(SO)에 하이레벨 전압이 인가되고, 그 밖의 경우에는 로우레벨 전압이 인가된다.
따라서, 제1 레지스터 및 제2 레지스터 모두 '1' 데이터를 저장한 경우(입력된 데이터가 '11', '10' 인 경우)는 감지 노드(SO)가 하이 레벨이 되므로, 프로그 램 대상이 되지 않으며, 제1 레지스터 및 제2 레지스터 중 어느 하나에 '0' 데이터를 저장한 경우 (입력된 데이터가 '01', '00' 인 경우)는 감지 노드(SO)가 로우 레벨이 되므로, 프로그램 대상이 된다.
또한, 상기 이븐 비트라인 선택 신호(BSLe)가 상기 비트라인 선택부(100)에 인가되어 상기 NMOS 트랜지스터(N106)가 턴온된다. 이로 인해 상기 이븐 비트라인(BLe)과 상기 감지 노드(SO)가 연결된다. 이때 상기 감지 노드(SO)의 전압 레벨에 따라 상기 이븐 비트라인(BLe)의 전위가 달라지는데, 하위 비트 데이터의 값이 '1'일 경우에는 감지 노드(SO)에 하이레벨의 데이터가 전달되므로, 이븐 비트라인(BLe)의 전위는 하이레벨이 되며, 반대의 경우에는 로우레벨이 된다.
한편, 제1 비트라인 전압 제어부(160)에 제1 비트라인 전압 제어신호(MREG)가 인가되는데, 상기 NMOS 트랜지스터(N162)의 문턱 전압 레벨에 해당하는 전압 신호가 인가된다. 이때, 제1 레지스터의 제1 노드(QA)에 저장된 데이터가 '0'인 경우에는 인버터(IV116)에 의해 전압 레벨이 반전되어 NMOS 트랜지스터(N164)가 턴온된다. 따라서, NMOS 트랜지스터(N162, N164)가 모두 턴온되어, 감지노드(SO)에 접지 전압이 인가되고, 비트라인의 전압레벨이 로우레벨이 되게 한다.
또한, 제2 비트라인 전압 제어부(170)에 제2 비트라인 전압 제어신호(LREG)가 인가되는데, 상기 NMOS 트랜지스터(N172)의 문턱 전압 레벨에 해당하는 전압 신 호 보다 일정 레벨(Va)이상 큰 전압이 인가된다. 이때, 제2 레지스터의 제1 노드(QB)에 저장된 데이터가 '0'인 경우에는 인버터(IV126)에 의해 전압 레벨이 반전되어 NMOS 트랜지스터(N174)가 턴온된다.
한편, 상기 NMOS 트랜지스터(N174)와 접속된 전원 전압(Vcc)은 상기 일정 레벨(Va) 보다 더 큰 전압 레벨을 갖도록 한다. 하위비트 프로그램시와는 달리 상위비트 프로그램시에는 본원 발명의 목적에 따라, 비트라인의 전압레벨을 일정 부분 상승시킬 필요가 있어, 상위비트 프로그램시에는 하이레벨의 전압을 인가하도록 한다. 더욱 상세하게는, 상기 전원 전압(Vcc)는 내부 전원에 의할 경우에는 1.5V~ 2.3V 정도의 값을 가지며, 외부 전원에 의할 경우에는 2.7V~3.6V 정도의 값을 갖는다.
상기 NMOS 트랜지스터(N174)가 턴온된 경우, NMOS 트랜지스터(N172)와 NMOS 트랜지스터(N174)의 접속점에 걸리는 전압레벨은 Vcc-Vth가 된다.
한편, 제2 비트라인 전압 제어신호(LREG)의 레벨은 Va+Vth 이므로, 제2 비트라인 전압 제어신호(LREG)의 인가에 의하여 상기 Vcc-Vth 값 중에서 Va 만큼의 전압이 감지노드(SO)에 인가되고, 비트라인의 전압레벨이 로우레벨 보다 일정 레벨(Va)이상 크게 된다. 이때, 바람직하게는 상기 일정 레벨(Va)의 전압은 1.5~2.0V 인 것을 특징으로 한다.
위와 같이 제1 비트라인 전압 제어부(160)와 제2 비트라인 전압 제어부(170)의 제어를 통해 프로그램하려는 데이터별로 비트라인의 전압레벨을 조절할 수 있다.
즉, 프로그램하려는 데이터가 '00'인 경우는 제1 레지스터에만 '0' 데이터가 저장된 경우로서, 비트라인의 전압레벨에 변화가 없지만, 프로그램하려는 데이터가 '01'인 경우는 제2 레지스터에만 '0' 데이터가 저장된 경우로서, 비트라인의 전압레벨이 일정 레벨(Va) 이상으로 상승한다. 이는 본원 발명의 목적에 따른 구성으로, 상기와 같은 구성을 택한 이유를 도면을 참조하여 설명하기로 한다.
도 6a는 통상적인 멀티 레벨 셀 프로그램 동작 중 상위비트 프로그램에 의한 특정 셀들의 전압 상태를 도시한 도면이며, 도 6b는 본원 발명의 일실시예에 따른 멀티 레벨 셀 프로그램 동작 중 상위비트 프로그램에 의한 특정 셀들의 전압 상태를 도시한 도면이다.
도 6a를 참조하면, 하위비트는 프로그램되지 않았으면서 상위비트는 프로그램하려는 경우('01' 프로그램 셀)는 ISPP 프로그램 전압이 상승함에 따라 문턱전압도 꾸준하게 상승하는 경향이 있으나, 하위비트 및 상위비트를 모두 프로그램 하려는 경우('00' 프로그램 셀)는 ISPP 프로그램 전압의 상승에도 불구하고 일정시간이 지난후에 문턱전압이 상승하게 된다. 이로 인해 전체적인 프로그램 시간이 증가하게 되는 문제점이 있다. 이는 하위비트가 이미 프로그램된 셀의 경우 문턱전압이 일정레벨 이상 상승해 있는 상태이기 때문에, 특정전압 이하에서는 프로그램이 되지 않기 때문이다.
이를 위해, 본원 발명에서는 상위 비트 프로그램 동작시에는 ISPP 전압 인가시 최초 전압의 레벨을 일정 레벨 이상 상승시켜, 하위비트 및 상위비트를 모두 프로그램 하려는 경우('00' 프로그램 셀)에 대해서도 빠른 시간동안 문턱전압을 상승 시키고자 하는 것이다.
도 6b를 참조하면, ISPP 전압 인가시 최초 전압의 레벨이 일정 레벨 이상 상승되어 있음을 알 수 있으며, 그에 따라 하위비트 및 상위비트를 모두 프로그램 하려는 경우('00' 프로그램 셀)에 대해서도 도 5a 에 비해 빠른시간 내에 문턱 전압이 상승하는 것을 볼 수 있다.
다만, 하위비트는 프로그램되지 않았으면서 상위비트는 프로그램하려는 경우('01' 프로그램 셀)에 상기와 같은 프로그램 전압을 인가하게 되면, 프로그램 전압의 갑작스런 상승으로 오버 프로그램이 일어날 수 있기 때문에 이를 방지하기 위해 비트라인의 전압레벨을 상기와 같이 일정 레벨(Va) 만큼 상승시킨다.
비트라인의 전압레벨을 일정 레벨(Va)만큼 상승시키게 되면, 워드라인에 인가되는 프로그램 전압보다 일정 레벨(Va) 감소된 전압(즉, Vpgm - Va)이 플로팅 게이트에 인가되어, 오버프로그램을 방지할 수 있다.
정리하면, 제1 비트라인 전압 제어부(160)와 제2 비트라인 전압 제어부(170)의 동작에 의하여, '01' 데이터를 프로그램하려는 경우에는 비트라인의 전압레벨이 일정 레벨(Va) 만큼 상승하게 되고, '00' 데이터를 프로그램하려는 경우에는 비트라인의 전압레벨이 OV 가 된다.
다시 도 5를 참조하여 프로그램 동작을 계속 설명하기로 한다.
드레인 선택 트랜지스터(DSL)에 하이레벨의 전압을 인가하여 메모리 셀 어레 이의 특정 셀이 포함된 셀 스트링과 특정 비트라인을 접속시킨다.
또한, 선택된 워드라인에 대해서는 ISPP(Incremental step pulse program) 방식에 의하여 프로그램 전압을 인가한다. 이때, 앞서 설명한 바와 같이 프로그램 전압의 시작 전압을 통상의 방법과 상이하게 인가한다.
통상적으로, 하위비트 프로그램 전압과 상위비트 프로그램 전압은 상이하게 인가된다. 즉, 하위비트 프로그램 전압에 비해 대략 2.0V 정도 더 큰 시작전압에서 상위비트 프로그램 전압을 인가하기 시작한다.
그러나, 본 발명에 있어서는 하위비트 프로그램 전압에 비해 대략 3.5 V 정도 더 큰 시작전압에서 상위비트 프로그램 전압을 인가하기 시작한다.
즉, 약 16.5 V부터 시작하여 0.2V의 스텝으로 프로그램 전압을 인가한다.
다음으로, 검증 동작을 살펴보기로 한다.
데이터의 저장상태에 따라, 한 번의 프로그램으로 두 개의 서로 다른 문턱전압을 갖는 셀이 형성되므로, 서로 다른 두 개의 검증 기준 전압(PV1, PV3)을 기준으로 하여 두 번의 검증 단계를 거친다.
먼저 '01' 데이터에 대해 프로그램이 제대로 되었는지를 검증 기준 전압(PV1)을 기준으로 하여 검증한다. 전체적인 검증 동작은 도 4의 경우와 유사하다.
먼저 이븐 디스차지 신호(DISCHe)가 일정기간 인에이블되어 상기 NMOS 트랜지스터(N102)가 턴온되는데, 상기 바이어스 전압(VIRPWR)이 로우레벨로 천이되므로 상기 이븐 비트라인(BLe)이 로우 레벨 전위로 디스차지 된다. 또한 상기 오드 디스차지 신호(DISCHo)가 인에이블되어 상기 NMOS 트랜지스터(N104)가 턴온되므로, 상기 오드 비트라인(BLo)도 로우 레벨 전위로 디스차지된다.
다음으로, 이븐 비트라인 선택 트랜지스터(N106)에 하이레벨(V1)의 전압을 일정기간 인가하여 이븐 비트라인(BLe)과 감지노드(SO)를 접속시킨다. 이때, 도면에는 도시되지 않았지만, 감지노드(SO)는 프라치지용 트랜지스터(P140)를 일정기간 턴온시켜 하이레벨로 프리차지된 상태이다.
또한, 드레인 선택 트랜지스터(DSL)에 하이레벨의 전압을 인가하여 메모리 셀 어레이의 특정 셀이 포함된 셀 스트링과 특정 비트라인을 접속시킨다.
또한, 선택된 워드라인에 대해서는 검증 기준 전압(PV1)을 인가한다.
다음으로, 이븐 비트라인 선택 트랜지스터(N106)에 하이레벨(V2)의 전압을 일정기간 인가하여 븐 비트라인(BLe)과 감지노드(SO)를 접속시킨다.
또한, 소스 선택 트랜지스터(SSL)에 하이레벨의 전압을 인가하여 메모리 셀 어레이의 특정 셀이 포함된 셀 스트링과 공통소스라인을 접속시켜, 비트라인에서 공통소스라인으로 이어지는 전류 경로를 형성시킨다. 따라서, 특정 셀이 프로그램된 경우에는 문턱전압이 높아져서 상기 형성된 전류 경로를 통해 전류가 흐르지 않아 비트라인의 전압레벨이 그대로 유지되며, 프로그램되지 않은 경우, 즉 소거된 셀의 경우에는 상기 형성된 전류 경로를 통해 전류가 흘러가서 비트라인의 전압레벨이 로우레벨로 떨어지게 된다.
비트라인의 전압레벨에 따라 감지노드(SO)의 전압레벨이 결정되며, 해당 셀 이 프로그램된 경우에는 하이레벨을 유지하므로, 제2 레지스터의 NMOS 트랜지스터(N126)가 턴온된다. 이때, 제2 레지스터의 NMOS 트랜지스터(N122)에 하이레벨의 신호(LRST)가 인가되므로, 프로그램된 경우에는 제1 노드(QB)에 하이레벨 데이터가 저장된다. 그러나 프로그램되지 않은 경우에는 초기에 저장된 로우레벨 데이터를 유지한다.
이와 같은 과정을 통해 해당 셀의 프로그램 여부를 검증하게 되며, 이때 프로그램 된 셀은 도 1의 '01' 데이터를 저장하는 셀이 된다.
다음으로 '00' 데이터에 대해 프로그램이 제대로 되었는지를 검증 기준 전압(PV3)을 기준으로 하여 검증한다.
전체적인 검증 동작은 상기의 경우와 유사하며, 다만 데이터를 센싱하는 구간에서 약간의 차이가 있다.
비트라인의 전압레벨에 따라 감지노드(SO)의 전압레벨이 결정되며, 해당 셀이 프로그램된 경우에는 하이레벨을 유지하므로, 제2 레지스터의 NMOS 트랜지스터(N126) 뿐만 아니라 제1 레지스터의 NMOS 트랜지스터(N116)도 턴온된다. '01'에 대한 검증동작과는 달리, 제1 레지스터의 NMOS 트랜지스터(N112)에 하이레벨의 신호(MREAD)가 인가되므로, 해당 셀이 프로그램된 경우에는 제1 노드(QA)에 하이레벨 데이터가 저장된다. 그러나 프로그램되지 않은 경우에는 초기에 저장된 로우레벨 데이터를 유지한다.
이와 같은 과정을 통해 해당 셀의 프로그램 여부를 검증하게 되며, 이때 프 로그램 된 셀은 도 1의 '00' 데이터를 저장하는 셀이 된다.
지금까지 상술한 내용은 2비트를 저장하는 멀티 레벨 셀 프로그램 방법에 대해서 서술하였지만, 3비트 및 4비트를 저장하는 멀티 레벨 셀 프로그램 방법에 대해서도 적용가능하다. 즉, 각 비트별로 프로그램 전압을 서로 상이하게 하는 구성을 필수적으로 포함하도록 한다. 또한, 전 단계에서 프로그램된 셀인 경우와 처음으로 프로그램되는 셀로 그룹을 특정하여, 처음으로 프로그램되는 셀에 대해서는 비트라인 전압 레벨을 그렇지 않은 셀에 비해 높이는 단계를 포함하여 실시할 수 있다.
상술한 본원 발명의 구성에 따라, 상위비트 프로그램시에 프로그램 시간을 단축시킬 수 있다. 즉, 하위비트가 프로그램되지 않았으면서 상위비트를 프로그램하려는 셀과 하위비트 및 상위비트를 모두 프로그램하려는 셀이 있다면, 후자의 경우 하위비트 셀이 이미 프로그램되어 있어서, 프로그램 동작 동안 문턱전압이 더디게 상승하는 문제점이 있다. 이를 해소하기 위해, ISPP 프로그램 전압 인가시의 초기 프로그램 전압을 통상적인 경우보다 더 높게 인가하되, 하위비트가 프로그램되지 않았으면서 상위비트를 프로그램하려는 셀에 대해 오버 프로그램이 될 위험이 있으므로 이를 방지하기 위해, 제2 전압 제어부를 통해 비트라인 전압 레벨을 일정 부분 상승시킴으로써 안정적이면서 신속한 프로그램 동작을 할 수 있다.
실험 결과, ISPP 프로그램 동작시 통상적인 경우에 비해 8 펄스 정도 프로그램 시간이 감소되는 것으로 나타났다.

Claims (25)

  1. 특정 비트라인과 감지노드를 선택적으로 접속시키는 비트라인 선택부와,
    특정 데이터를 저장하는 제1 레지스터 및 제2 레지스터와,
    상기 제1 레지스터에 저장된 데이터와 제2 레지스터에 저장된 데이터를 비교하여 상기 감지노드로 전달하는 데이터 비교부와,
    상기 제1 레지스터에 저장된 데이터의 전압 레벨에 따라 상기 비트라인에 로우 레벨의 전압을 인가하는 제1 비트라인 전압 제어부와,
    상기 제2 레지스터에 저장된 데이터의 전압 레벨에 따라 상기 비트라인에 선정된 제1 하이 레벨의 전압을 인가하는 제2 비트라인 전압 제어부를 포함하는 페이지 버퍼를 구비한 것을 특징으로 하는 불휘발성 메모리 장치.
  2. 제1항에 있어서, 상기 제1 비트라인 전압 제어부는 제1 레지스터에 저장된 데이터에 응답하여 접지 전압을 상기 감지노드로 공급하는 제1 트랜지스터와,
    상기 제1 트랜지스터와 상기 감지노드 사이에 접속되고 제1 비트라인 전압 제어신호에 응답하여 상기 접지 전압을 상기 감지노드로 공급하는 제2 트랜지스터를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치.
  3. 제1항에 있어서, 상기 제2 비트라인 전압 제어부는 제2 레지스터에 저장된 데이터에 응답하여 전원 전압을 상기 감지노드로 공급하는 제1 트랜지스터와,
    상기 제1 트랜지스터와 상기 감지노드 사이에 접속되고 제2 비트라인 전압 제어신호에 응답하여 상기 전원 전압을 상기 감지노드로 공급하는 제2 트랜지스터를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치.
  4. 제2항에 있어서, 상기 제1 비트라인 전압 제어신호 전압 레벨은 상기 제2 트랜지스터의 문턱전압보다 큰 것을 특징으로 하는 불휘발성 메모리 장치.
  5. 제3항에 있어서, 상기 전원 전압으로는 하위 비트 프로그램시에는 접지 전압이 공급되고, 상위 비트 프로그램시에는 하이 레벨 전압이 공급되는 것을 특징으로 하는 불휘발성 메모리 장치.
  6. 제5항에 있어서, 상기 제2 비트라인 전압 제어 신호의 전압 레벨은 하위비트 프로그램시에는 상기 제2 트랜지스터의 문턱전압보다 큰 전압이고, 상위비트 프로그램시에는 상기 제2 트랜지스터의 문턱전압과 상기 제1 하이 레벨 전압의 합보다 큰 전압인것을 특징으로 하는 불휘발성 메모리 장치.
  7. 제1항 또는 제6항에 있어서, 상기 제1 하이 레벨 전압의 크기는 1.5V~2.0V 인 것을 특징으로 하는 불휘발성 메모리 장치.
  8. 제1항에 있어서, 상기 데이터 비교부는 상위비트 프로그램 신호에 응답하여 상기 제1 레지스터에 저장된 데이터와 제2 레지스터에 저장된 데이터의 논리곱 데이터를 상기 감지노드로 전달하는 것을 특징으로 하는 불휘발성 메모리 장치.
  9. 제8항에 있어서, 상기 데이터 비교부는 제1 레지스터에 저장된 데이터가 '0'이고, 제2 레지스터에 저장된 데이터가 '0'인 경우에는 상기 논리곱 데이터 전송을 중단하는 것을 특징으로 하는 불휘발성 메모리 장치.
  10. 특정 셀에 대하여 하위비트 데이터를 프로그램하고 검증하는 단계와,
    특정 셀에 대하여 상위비트로 프로그램할 데이터를 페이지 버퍼의 제1 레지스터로 입력받는 단계와,
    하위비트 프로그램에 의하여 특정 셀에 저장된 데이터를 독출하여 페이지 버퍼의 제2 레지스터에 저장하는 단계와,
    상기 제1 레지스터에 저장된 데이터에 따라 상기 제2 레지스터에 저장된 데이터를 재설정하여 상위비트 및 하위비트를 프로그램할 셀을 특정하는 단계와,
    상기 제2 레지스터에 재설정되어 저장된 데이터와 상기 제1 레지스터에 저장된 데이터를 비교하여 상위비트만을 프로그램할 셀을 특정하는 단계와,
    상기 상위비트 및 하위비트를 프로그램할 셀에 대하여 비트라인을 로우레벨로 프리차지 시키는 단계와,
    상기 상위비트만을 프로그램할 셀에 대하여 비트라인을 선정된 레벨을 갖는 하이레벨로 프리차지 시키는 단계와,
    하위비트 프로그램시 보다 일정 레벨 더 큰 전압을 초기전압으로 하는 ISPP(Incremental step pulse program) 프로그램 동작을 하는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  11. 제10항에 있어서, 상기 상위비트 및 하위비트를 프로그램할 셀을 특정하는 단계는 제1 레지스터에 '0' 데이터를 저장시키고, 제2 레지스터에 '1' 데이터를 저장시키는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  12. 제10항에 있어서, 상기 상위비트만을 프로그램할 셀을 특정하는 단계는 제1 레지스터에 '1' 데이터를 저장시키고, 제2 레지스터에 '0' 데이터를 저장시키는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  13. 제10항에 있어서, 상기 비트라인을 로우레벨로 프리차지 시키는 단계는 제1 레지스터에 저장된 데이터의 전압레벨에 따라 접지전압을 비트라인에 인가시키는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  14. 제10항에 있어서, 상기 비트라인을 선정된 레벨을 갖는 하이레벨로 프리차지 시키는 단계는 제2 레지스터에 저장된 데이터의 전압레벨에 따라 선정된 레벨의 전압을 비트라인에 인가시키는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  15. 제10항 또는 제14항에 있어서, 상기 선정된 레벨의 전압은 1.5~2.0V 인 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  16. 제10항에 있어서, 상기 하위비트에 대한 ISPP에 의한 프로그램시 초기 전압은 13V 이고, 스텝 전압은 0.2V 인 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  17. 제10항에 있어서, 상기 상위비트에 대한 ISPP에 의한 프로그램시 초기 전압은 16.5V 이고, 스텝 전압은 0.2V 인 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  18. 하위비트를 프로그램하였으면서 상위비트도 프로그램하려는 제1 셀 그룹 및 하위비트는 프로그램하지 않았으면서 상위비트를 프로그램하려는 제2 셀 그룹을 특정하는 단계와,
    상기 제1 셀 그룹과 접속된 비트라인을 로우 레벨로 프리차지 시키는 단계와,
    상기 제2 셀 그룹과 접속된 비트라인을 선정된 레벨을 갖는 하이레벨로 프리차지 시키는 단계와,
    하위비트 프로그램시 보다 3~4 V 더 큰 전압을 초기전압으로 하는 ISPP(Incremental step pulse program) 프로그램 동작을 하는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  19. 제18항에 있어서, 상기 제1 셀 그룹에 대한 페이지 버퍼의 제1 레지스터에는 '0' 데이터가 저장되고 제2 레지스터에는 '1' 데이터가 저장되는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  20. 제18항에 있어서, 상기 제2 셀 그룹에 대한 페이지 버퍼의 제1 레지스터에는 '1' 데이터가 저장되고 제2 레지스터에는 '0' 데이터가 저장되는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  21. 제18항에 있어서, 상기 비트라인을 로우레벨로 프리차지 시키는 단계는 페이지 버퍼의 제1 레지스터에 저장된 데이터의 전압레벨에 따라 접지전압을 비트라인에 인가시키는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  22. 제18항에 있어서, 상기 비트라인을 선정된 레벨을 갖는 하이레벨로 프리차지 시키는 단계는 페이지 버퍼의 제2 레지스터에 저장된 데이터의 전압레벨에 따라 선정된 레벨의 전압을 비트라인에 인가시키는 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  23. 제18항 또는 제22항에 있어서, 상기 선정된 레벨의 전압은 1.5~2.0V 인 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  24. 제18항에 있어서, 상기 하위비트에 대한 ISPP에 의한 프로그램시 초기 전압은 13V 이고, 스텝 전압은 0.2V 인 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
  25. 제18항에 있어서, 상기 상위비트에 대한 ISPP에 의한 프로그램시 초기 전압은 16.5V 이고, 스텝 전압은 0.2V 인 것을 특징으로 하는 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법.
KR1020060136356A 2006-12-28 2006-12-28 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법 Expired - Fee Related KR100816155B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020060136356A KR100816155B1 (ko) 2006-12-28 2006-12-28 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법
DE102007026856A DE102007026856A1 (de) 2006-12-28 2007-06-11 Nicht-flüchtiges Speicherbauelement und Verfahren zum Programmieren einer MLC-Speicherzelle in derselben
TW096121639A TWI346955B (en) 2006-12-28 2007-06-15 Non-volatile memory device and method of programming a multi level cell in the same
US11/765,518 US7466587B2 (en) 2006-12-28 2007-06-20 Non-volatile memory device and method of programming a multi level cell in the same
JP2007178049A JP2008165953A (ja) 2006-12-28 2007-07-06 不揮発性メモリ装置とそれを用いたマルチレベルセルプログラム方法
CN2007101380722A CN101211660B (zh) 2006-12-28 2007-08-08 非易失性存储装置以及对其中的多级单元进行编程的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060136356A KR100816155B1 (ko) 2006-12-28 2006-12-28 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법

Publications (1)

Publication Number Publication Date
KR100816155B1 true KR100816155B1 (ko) 2008-03-21

Family

ID=39411481

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060136356A Expired - Fee Related KR100816155B1 (ko) 2006-12-28 2006-12-28 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법

Country Status (6)

Country Link
US (1) US7466587B2 (ko)
JP (1) JP2008165953A (ko)
KR (1) KR100816155B1 (ko)
CN (1) CN101211660B (ko)
DE (1) DE102007026856A1 (ko)
TW (1) TWI346955B (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100965029B1 (ko) * 2008-05-13 2010-06-21 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그 프로그램 검증 방법
KR101099911B1 (ko) * 2009-12-17 2011-12-28 주식회사 하이닉스반도체 반도체 메모리 장치 및 그 동작 방법
KR101391352B1 (ko) 2011-12-19 2014-05-07 삼성전자주식회사 메모리 시스템 및 그것의 프로그램 방법

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100769770B1 (ko) * 2006-09-29 2007-10-23 주식회사 하이닉스반도체 메모리 장치의 페이지 버퍼 회로 및 프로그램 방법
KR101391881B1 (ko) * 2007-10-23 2014-05-07 삼성전자주식회사 멀티-비트 플래시 메모리 장치 및 그것의 프로그램 및 읽기방법
KR101024142B1 (ko) * 2009-02-02 2011-03-22 주식회사 하이닉스반도체 불휘발성 메모리 소자의 프로그램 방법
KR101074564B1 (ko) * 2009-02-04 2011-10-17 주식회사 하이닉스반도체 불휘발성 메모리 장치
US8355286B2 (en) * 2009-05-08 2013-01-15 Hynix Semiconductor Inc. Method of operating nonvolatile memory device controlled by controlling coupling resistance value between a bit line and a page buffer
ITUB20160956A1 (it) * 2016-02-22 2017-08-22 Sk Hynix Inc Memoria flash NAND comprendente un page buffer per il rilevamento di corrente
CN105976866B (zh) * 2016-04-21 2019-11-26 清华大学 二进制数据序列的编码方法、存储装置和电子设备
US9818476B1 (en) * 2016-07-25 2017-11-14 Samsung Electronics Co., Ltd. Reprogram without erase using capacity in multi-level NAND cells
US10162554B2 (en) * 2016-08-03 2018-12-25 Samsung Electronics Co., Ltd. System and method for controlling a programmable deduplication ratio for a memory system
JP7092915B1 (ja) 2021-04-06 2022-06-28 ウィンボンド エレクトロニクス コーポレーション 半導体装置
CN114512162A (zh) * 2022-01-27 2022-05-17 东芯半导体股份有限公司 一种预充电方法及使用该方法的存储器装置
CN119296613A (zh) * 2022-03-14 2025-01-10 长江存储科技有限责任公司 页缓冲器、编程方法、存储器装置及系统
EP4449416A4 (en) * 2022-03-14 2025-10-22 Yangtze Memory Tech Co Ltd PAGE BUFFER, MEMORY DEVICE, AND ASSOCIATED PROGRAMMING METHOD

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060052142A (ko) * 2004-10-28 2006-05-19 삼성전자주식회사 페이지 버퍼 및 페이지 버퍼를 포함하는 불휘발성 메모리장치
KR20060056236A (ko) * 2004-11-19 2006-05-24 삼성전자주식회사 페이지 버퍼 및 이를 포함하는 멀티-비트 불휘발성 메모리장치
KR20060067579A (ko) * 2004-12-15 2006-06-20 삼성전자주식회사 시리얼 센싱 동작을 수행하는 노어 플래시 메모리 장치
KR20060068969A (ko) * 2004-12-17 2006-06-21 삼성전자주식회사 프로그램 동작 속도를 개선하는 불휘발성 반도체 메모리장치의 페이지 버퍼와 이에 대한 구동방법
KR20060070734A (ko) * 2004-12-21 2006-06-26 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그것의 프로그램 검증 방법

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3476952B2 (ja) * 1994-03-15 2003-12-10 株式会社東芝 不揮発性半導体記憶装置
JP3153730B2 (ja) * 1995-05-16 2001-04-09 株式会社東芝 不揮発性半導体記憶装置
JP3210259B2 (ja) * 1996-04-19 2001-09-17 株式会社東芝 半導体記憶装置及び記憶システム
JP3397600B2 (ja) * 1996-11-01 2003-04-14 株式会社東芝 不揮発性半導体記憶装置
JP3409986B2 (ja) * 1997-01-31 2003-05-26 株式会社東芝 多値メモリ
JP3481817B2 (ja) * 1997-04-07 2003-12-22 株式会社東芝 半導体記憶装置
US6166960A (en) * 1999-09-24 2000-12-26 Microchip Technology, Incorporated Method, system and apparatus for determining that a programming voltage level is sufficient for reliably programming an eeprom
KR100319559B1 (ko) * 1999-11-01 2002-01-05 윤종용 문턱 전압 분포들 사이의 마진을 일정하게 유지할 수 있는멀티-스테이트 불휘발성 반도체 메모리 장치
JP3631463B2 (ja) * 2001-12-27 2005-03-23 株式会社東芝 不揮発性半導体記憶装置
JP4170604B2 (ja) * 2001-04-18 2008-10-22 株式会社東芝 不揮発性半導体メモリ
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
KR100454119B1 (ko) * 2001-10-24 2004-10-26 삼성전자주식회사 캐쉬 기능을 갖는 불 휘발성 반도체 메모리 장치 및 그것의 프로그램, 읽기, 그리고 페이지 카피백 방법들
JP2004023044A (ja) * 2002-06-20 2004-01-22 Toshiba Corp 不揮発性半導体記憶装置
KR100585628B1 (ko) * 2005-01-24 2006-06-07 삼성전자주식회사 불휘발성 반도체 메모리 장치의 프로그램 구동방법
KR100672148B1 (ko) * 2005-02-17 2007-01-19 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그것의 페이지 버퍼 동작 방법
KR100672147B1 (ko) * 2005-03-15 2007-01-19 주식회사 하이닉스반도체 불휘발성 메모리 장치의 체크 보드 프로그램 시에 프로그램페일을 방지하기 위한 페이지 버퍼
KR100723772B1 (ko) * 2005-03-28 2007-05-30 주식회사 하이닉스반도체 개선된 프로그램 동작 성능을 가지는 플래쉬 메모리 소자의페이지 버퍼 및 그것의 프로그램 동작 제어 방법
KR100600301B1 (ko) * 2005-05-25 2006-07-13 주식회사 하이닉스반도체 면적이 감소된 페이지 버퍼 회로와, 이를 포함하는 플래시메모리 장치 및 그 프로그램 동작 방법
KR100642892B1 (ko) * 2005-07-19 2006-11-03 주식회사 하이닉스반도체 면적이 감소된 페이지 버퍼 회로와 그 독출 및 프로그램동작 방법
US7362616B2 (en) * 2005-07-28 2008-04-22 Stmicroelectronics S.R.L. NAND flash memory with erase verify based on shorter evaluation time
US7336532B2 (en) * 2006-05-12 2008-02-26 Elite Semiconductor Memory Method for reading NAND memory device and memory cell array thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060052142A (ko) * 2004-10-28 2006-05-19 삼성전자주식회사 페이지 버퍼 및 페이지 버퍼를 포함하는 불휘발성 메모리장치
KR20060056236A (ko) * 2004-11-19 2006-05-24 삼성전자주식회사 페이지 버퍼 및 이를 포함하는 멀티-비트 불휘발성 메모리장치
KR20060067579A (ko) * 2004-12-15 2006-06-20 삼성전자주식회사 시리얼 센싱 동작을 수행하는 노어 플래시 메모리 장치
KR20060068969A (ko) * 2004-12-17 2006-06-21 삼성전자주식회사 프로그램 동작 속도를 개선하는 불휘발성 반도체 메모리장치의 페이지 버퍼와 이에 대한 구동방법
KR20060070734A (ko) * 2004-12-21 2006-06-26 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그것의 프로그램 검증 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100965029B1 (ko) * 2008-05-13 2010-06-21 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그 프로그램 검증 방법
US8085587B2 (en) 2008-05-13 2011-12-27 Hynix Semiconductor Inc. Non-volatile memory device and method of verifying a program operation in the same
KR101099911B1 (ko) * 2009-12-17 2011-12-28 주식회사 하이닉스반도체 반도체 메모리 장치 및 그 동작 방법
US8335107B2 (en) 2009-12-17 2012-12-18 Hynix Semiconductor Inc. Semiconductor memory device and method of operating the same
KR101391352B1 (ko) 2011-12-19 2014-05-07 삼성전자주식회사 메모리 시스템 및 그것의 프로그램 방법
US9406392B2 (en) 2011-12-19 2016-08-02 Samsung Electronics Co., Ltd. Memory system and a programming method thereof

Also Published As

Publication number Publication date
DE102007026856A1 (de) 2008-07-03
TWI346955B (en) 2011-08-11
CN101211660A (zh) 2008-07-02
US7466587B2 (en) 2008-12-16
JP2008165953A (ja) 2008-07-17
TW200828318A (en) 2008-07-01
CN101211660B (zh) 2010-09-29
US20080158953A1 (en) 2008-07-03

Similar Documents

Publication Publication Date Title
US7466587B2 (en) Non-volatile memory device and method of programming a multi level cell in the same
US7535768B2 (en) Method of controlling copy-back operation of flash memory device including multi-level cells
EP2426668B1 (en) Flash multi-level threshold distribution scheme
EP1738374B1 (en) Variable programming of non-volatile memory
KR100885784B1 (ko) 불휘발성 메모리 장치의 소프트 프로그램 방법
US7952929B2 (en) Source side asymmetrical precharge programming scheme
KR100496866B1 (ko) 미프로그램된 셀들 및 과프로그램된 셀들 없이 균일한문턱 전압 분포를 갖는 플레쉬 메모리 장치 및 그프로그램 검증 방법
US8570801B2 (en) Method of programming a semiconductor memory device
CN101176162A (zh) 多级单元快闪存储器中较高级状态的较快编程
CN105190763A (zh) 在编程期间降低非易失性存储装置的nand串选择栅极电压
US8743621B2 (en) Operating method in a non-volatile memory device
KR20080114203A (ko) 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법
JP4306042B2 (ja) 不揮発性半導体記憶装置、並びに不揮発性半導体記憶装置のベリファイ方法及び読み出し方法
KR100938044B1 (ko) 불휘발성 메모리 장치 및 그 멀티 레벨 셀 프로그램 방법
JP2000163977A (ja) 不揮発性半導体記憶装置及びそのデータ書き込み方法
KR100769802B1 (ko) 플래쉬 메모리 소자의 페이지 버퍼 및 이를 이용한프로그램 방법
KR100816121B1 (ko) 불휘발성 메모리장치의 멀티비트 프로그램 방법
KR20080038932A (ko) 플래시 메모리 소자의 페이지 버퍼 및 이를 이용한프로그램 방법

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

FPAY Annual fee payment

Payment date: 20120222

Year of fee payment: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20130318

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20130318

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000