KR20120069114A - 반도체 장치의 프로그램 방법 - Google Patents

반도체 장치의 프로그램 방법 Download PDF

Info

Publication number
KR20120069114A
KR20120069114A KR1020100130518A KR20100130518A KR20120069114A KR 20120069114 A KR20120069114 A KR 20120069114A KR 1020100130518 A KR1020100130518 A KR 1020100130518A KR 20100130518 A KR20100130518 A KR 20100130518A KR 20120069114 A KR20120069114 A KR 20120069114A
Authority
KR
South Korea
Prior art keywords
verification
level
voltage
memory cells
program
Prior art date
Application number
KR1020100130518A
Other languages
English (en)
Other versions
KR101201888B1 (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 KR1020100130518A priority Critical patent/KR101201888B1/ko
Publication of KR20120069114A publication Critical patent/KR20120069114A/ko
Application granted granted Critical
Publication of KR101201888B1 publication Critical patent/KR101201888B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • 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
    • 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/08Address circuits; Decoders; Word-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/10Programming or data input circuits
    • G11C16/12Programming voltage switching circuits

Abstract

본 발명은, 선택된 워드라인에 프로그램 펄스를 인가하여 선택된 메모리 셀들을 프로그램하는 단계; 상기 선택된 워드라인에 목표레벨보다 낮은 예비레벨의 검증전압을 인가하여 상기 선택된 메모리 셀들의 제1 검증동작을 수행하는 단계; 상기 제1 검증동작의 패스여부를 판단하는 단계; 상기 선택된 워드라인에 상기 목표레벨을 인가하여 상기 선택된 메모리 셀들의 제2 검증동작을 수행하는 단계; 상기 제1 검증동작이 패스될 때까지 상기 프로그램 펄스를 상승시키면서 상기 제1 및 제2 검증동작을 포함한 프로그램 동작을 반복하는 단계; 및 상기 제1 검증동작이 패스되면, 상기 선택된 모든 메모리 셀들의 문턱전압이 상기 목표레벨에 도달할 때까지 상기 목표레벨을 검증전압으로 하는 제3 검증동작 및 프로그램 동작을 반복하는 단계를 포함하는 반도체 장치의 프로그램 방법으로 이루어진다.

Description

반도체 장치의 프로그램 방법{Program method of semiconductor device}
본 발명은 반도체 장치의 프로그램 방법에 관한 것으로, 특히 프로그램의 동작시간을 단축하기 위한 반도체 장치의 프로그램 방법에 관한 것이다.
반도체 장치의 프로그램 방법은 여러 가지가 있으나, 문턱전압의 분포 폭이 넓어지는 것을 방지하기 위해 ISPP(incremental step pulse program) 방식의 프로그램 동작이 주로 이용되고 있다. ISPP 방식의 프로그램 동작은, 처음에는 낮은 레벨의 프로그램 펄스를 이용하여 프로그램하다가 점진적으로 프로그램 펄스의 레벨을 상승시키는 방식으로 수행된다. 구체적으로, 선택된 워드라인에 프로그램 펄스를 인가하여 선택된 메모리 셀들의 문턱전압을 상승시킨 후, 검증동작을 수행하여 선택된 메모리 셀들의 문턱전압이 목표레벨에 도달했는지를 판단한다. 판단 결과, 문턱전압이 목표레벨에 도달하지 않았으면, 문턱전압이 목표레벨에 도달할 때까지 프로그램 펄스를 점진적으로 상승시키면서 검증동작을 수행하는 단계를 반복한다.
최근에는, 문턱전압의 분포 폭을 더 좁히기 위하여 ISPP 방식을 개선한 프로그램 방법이 연구되고 있는데, 이 중에서, 더블 검증동작(double verify)을 적용한 ISPP 방식의 프로그램 동작이 주로 연구되고 있다.
더블 검증동작은, 목표레벨에 근접한 셀들의 문턱전압 상승률을 저하시킴으로써 문턱전압의 분포 폭을 좁히는 원리로 수행된다. 즉, 더블 검증동작은 목표레벨에 근접한 셀들의 문턱전압이 급격히 상승하여 문턱전압 분포가 넓어지는 것을 방지할 뿐만 아니라, 문턱전압을 서서히 상승시킴으로써 문턱전압 분포를 더 좁힐 수 있다. 이를 위하여, 검증동작은 목표레벨과 목표레벨보다 낮은 예비레벨을 이용하여 수행된다. 더블 검증동작을 구체적으로 설명하면, 프로그램 펄스를 인가한 후, 예비레벨을 이용한 검증동작을 먼저 수행하여 그 결과를 제1 래치에 저장하고, 목표레벨을 이용한 검증동작을 수행하여 그 결과를 제2 래치에 저장한다. 이어서,제1 및 제2 래치들에 각각 저장된 데이터에 따라 해당 셀이 예비레벨보다 낮은지, 예비레벨과 목표레벨 사이에 있는지 또는 목표레벨에 도달했는지를 판단하는 체크(status check)동작을 수행한다. 체크 결과에 따라 해당 셀들에 대응되는 비트라인들의 전위를 세팅하면서 해당 셀들의 문턱전압이 모두 목표레벨에 도달할 때까지 프로그램 및 검증동작을 반복한다.
하지만, 이러한 프로그램 방법은, 프로그램할 메모리 셀들의 문턱전압이 모두 목표레벨에 모두 도달하기 이전까지는 문턱전압이 모두 예비레벨에 도달한 이후에도 예비레벨을 이용한 검증동작을 수행하도록 되어있다. 즉, 프로그램할 메모리 셀들의 문턱전압이 모두 예비레벨에 도달한 이후에 수행하는 예비레벨을 이용한 검증동작은 의미가 없으므로, 불필요한 동작시간이 소요된다.
본 발명이 해결하려는 과제는, 목표레벨 및 목표레벨보다 낮은 예비레벨을 이용하는 검증동작 시, 선택된 메모리 셀들의 문턱전압이 모두 예비레벨에 도달한 이후부터는 예비레벨을 이용한 검증동작을 생략함으로써 검증동작 시간을 단축하고자 한다.
본 발명의 일 실시 예에 따른 반도체 장치의 프로그램 방법은, 선택된 워드라인에 프로그램 펄스를 인가하여 선택된 메모리 셀들을 프로그램하는 단계; 상기 선택된 워드라인에 목표레벨보다 낮은 예비레벨의 검증전압을 인가하여 상기 선택된 메모리 셀들의 제1 검증동작을 수행하는 단계; 상기 제1 검증동작의 패스여부를 판단하는 단계; 상기 선택된 워드라인에 상기 목표레벨을 인가하여 상기 선택된 메모리 셀들의 제2 검증동작을 수행하는 단계; 상기 제1 검증동작이 패스될 때까지 상기 프로그램 펄스를 상승시키면서 상기 제1 및 제2 검증동작을 포함한 프로그램 동작을 반복하는 단계; 및 상기 제1 검증동작이 패스되면, 상기 선택된 모든 메모리 셀들의 문턱전압이 상기 목표레벨에 도달할 때까지 상기 목표레벨을 검증전압으로 하는 제3 검증동작 및 프로그램 동작을 반복한다.
상기 제1 검증동작 결과 상기 선택된 모든 메모리 셀들의 문턱전압이 상기 예비레벨에 도달하기 전까지는 상기 제2 검증동작을 수행한 후 상기 제2 검증동작에 대한 평가 동작을 생략한다.
상기 제1 검증동작을 수행하기 이전에 상기 선택된 메모리 셀들에 각각 연관된 비트라인들을 프리차지하는 단계를 더 포함한다.
상기 제1 검증동작을 수행한 후, 상기 비트라인들의 전위가 모두 프리차지 레벨을 유지하면 상기 제1 검증동작을 패스(pass)로 판단한다.
상기 제1 검증동작은, 상기 선택된 워드라인에 상기 예비레벨의 검증전압을 인가하고, 나머지 워드라인들에는 검증전압을 인가하여 수행한다.
상기 제2 검증동작은, 상기 예비레벨의 검증전압이 인가되는 상기 선택된 워드라인에 상기 목표레벨의 검증전압을 연속으로 인가하여 수행한다.
상기 제2 검증동작을 수행하는 동안에도 상기 나머지 워드라인들에 상기 패스전압을 계속 인가한다.
상기 제2 검증동작을 수행한 후에, 상기 선택된 워드라인을 포함한 모든 워드라인들을 디스차지한다.
상기 선택된 워드라인에 상기 프로그램 펄스를 인가할 때, 나머지 워드라인들에는 패스전압을 인가한다.
본 발명의 다른 실시 예에 따른 반도체 장치의 프로그램 방법은, 선택된 워드라인에 프로그램 펄스를 인가하는 단계; 상기 선택된 워드라인에 목표레벨보다 낮은 예비레벨의 검증전압을 인가하여 제1 검증동작을 수행하고, 상기 목표레벨의 검증전압을 인가하여 제2 검증동작을 순차적으로 수행하는 단계; 및 상기 제1 검증동작 결과, 상기 선택된 워드라인에 접속된 선택된 메모리 셀들의 문턱전압이 모두 상기 예비레벨에 도달한 경우에는, 상기 선택된 메모리 셀들의 문턱전압이 모두 상기 목표레벨에 도달할 때까지 상기 예비레벨을 이용한 검증동작을 생략하고 상기 목표레벨을 검증전압으로 이용하는 검증동작과 상기 프로그램 펄스를 점진적으로 상승시키는 프로그램 동작을 반복한다.
상기 프로그램 동작은 ISPP(incremental step pulse program) 방식으로 수행한다.
상기 제1 검증동작 결과, 상기 선택된 워드라인에 접속된 선택된 메모리 셀들의 문턱전압이 모두 상기 예비레벨에 도달하기 전까지, 상기 제2 검증동작에 대한 평가동작을 생략한다.
상기 제1 검증동작 결과, 상기 선택된 워드라인에 접속된 선택된 메모리 셀들의 문턱전압이 모두 상기 예비레벨에 도달한 이후부터는, 상기 제2 검증동작에 대한 평가동작을 수행한다.
상기 제2 검증동작은, 상기 예비레벨의 검증전압이 인가되는 상기 선택된 워드라인에 상기 목표레벨의 검증전압을 연속으로 인가하여 수행한다.
본 발명의 또 다른 실시 예에 따른 반도체 장치의 프로그램 방법은, 선택된 워드라인에 프로그램 펄스를 인가하여 선택된 메모리 셀들을 프로그램하는 단계; 및 상기 선택된 워드라인에 예비레벨 및 상기 예비레벨보다 높은 목표레벨의 검증전압을 순차적으로 인가하여 상기 메모리 셀들을 검증하는 더블 검증동작을 수행하되, 상기 선택된 모든 메모리 셀들의 문턱전압이 상기 예비레벨에 도달한 이후에는 상기 목표레벨의 검증전압을 이용한 검증동작만 수행하는 프로그램 동작을 수행하는 단계를 포함한다.
상기 더블 검증동작은, 상기 선택된 메모리 셀들의 문턱전압이 모두 상기 목표레벨에 도달하기 전까지, 상기 예비레벨을 검증전압으로 하는 검증동작을 수행하는 단계; 상기 예비레벨을 검증전압으로 하는 검증동작을 평가하는 단계; 및 상기 목표레벨을 검증전압으로 하는 검증동작을 수행하는 단계를 포함한다.
상기 선택된 메모리 셀들의 문턱전압이 모두 상기 목표레벨에 도달하기 전까지, 상기 목표레벨을 검증전압으로 하는 검증동작에 대한 평가동작을 생략한다.
상기 프로그램 동작은 ISPP(incremental step pulse program) 방식으로 수행한다.
본 발명은, 목표레벨 및 목표레벨보다 낮은 예비레벨을 이용하는 검증동작 시, 선택된 메모리 셀들의 문턱전압이 모두 예비레벨에 도달한 이후부터는 예비레벨을 이용한 검증동작을 생략함으로써 검증동작 시간을 단축할 수 있다. 따라서, 선택된 메모리 셀들을 다양한 레벨로 프로그램하는 동작시간을 단축할 수 있다.
도 1은 본 발명에 따른 반도체 장치를 설명하기 위한 블럭도이다.
도 2는 도 1의 페이지 버퍼를 구체적으로 설명하기 위한 회로도이다.
도 3은 본 발명의 실시 예에 따른 프로그램 방법을 설명하기 위한 순서도이다.
도 4는 본 발명에 따른 프로그램 동작 시, 프로그램할 메모리 셀들의 문턱전압을 설명하기 위한 그래프이다.
도 5는 본 발명의 실시 예에 따른 프로그램 방법을 설명하기 위한 타이밍도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 설명하기로 한다. 그러나, 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하며 통상의 지식을 가진자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.
도 1은 본 발명에 따른 반도체 장치를 설명하기 위한 블럭도이다.
도 1을 참조하면, 불휘발성 메모리 장치는 메모리 셀 어레이(110), 메모리 셀 어레이(110)에 포함된 메모리 셀들의 프로그램 동작 또는 리드 동작을 수행하도록 구성된 회로그룹(130, 140, 150, 160, 170, 180) 및 입력되는 데이터에 따라 선택된 메모리 셀들의 문턱전압 레벨들을 설정하기 위해 회로그룹(130, 140, 150, 160, 170, 180)을 제어하도록 구성된 제어회로(120)를 포함한다.
NAND 플래시 메모리 장치의 경우, 회로그룹은 전압 생성 회로(130), 로우 디코더(140), 페이지 버퍼 그룹(150), 컬럼 선택 회로(160), 입출력 회로(170) 및 패스/페일 판단회로(180)를 포함한다.
메모리 셀 어레이(110)는 다수의 메모리 셀 블록들을 포함하며, 도 1에는 그 중 하나의 메모리 셀 블록이 도시되어 있다. 각각의 메모리 셀 블록은 다수의 스트링들(ST)을 포함한다. 스트링들(ST) 중 일부는 노말 스트링들로 지정되고, 일부는 플래그(flag) 스트링들로 지정된다. 각각의 스트링(ST)은 서로 동일하게 구성되며, 공통 소오스 라인(CSL)에 연결되는 소오스 셀렉트 트랜지스터(SST), 다수의 메모리 셀들(F0 내지 Fn), 그리고 비트라인(BL1)에 연결되는 드레인 셀렉트 트랜지스터(DST)로 구성된다. 플래그 스트링에 포함되는 셀들을 플래그 셀이라 부르지만, 구조는 메모리 셀과 동일하다. 소오스 셀렉트 트랜지스터(SST)의 게이트는 소오스 셀렉트 라인(SSL)에 연결되고, 메모리 셀들(F0 내지 Fn)의 게이트들은 워드라인들(WL0 내지 WLn)에 각각 연결되며, 드레인 셀렉트 트랜지스터(DST)의 게이트는 드레인 셀렉트 라인(DSL)에 연결된다. 스트링들(ST)은 스트링들(ST) 각각에 대응하는 비트라인들(BL1 내지 BLk)과 각각 연결되고 공통 소오스 라인(CSL)과 공통으로 연결된다.
제어회로(120)는 명령 신호(CMD)에 응답하여 내부적으로 프로그램 동작 신호(PGM), 리드 동작 신호(READ) 또는 소거 동작 신호(ERASE)를 출력하고, 동작의 종류에 따라 페이지 버퍼 그룹(150)에 포함된 페이지 버퍼들을 제어하기 위한 페이지 버퍼 신호들(PB SIGNALS)을 출력한다. 또한, 제어회로(120)는 어드레스 신호(ADD)에 응답하여 내부적으로 로우 어드레스 신호(RADD)와 컬럼 어드레스 신호(CADD)를 출력한다. 또한, 제어회로(120)는 프로그램 검증 동작 시 패스/페일 판단회로(180)에서 출력되는 체크 신호(CS)에 따라 선택된 메모리 셀들의 문턱전압들이 목표 전압까지 상승하였는지를 확인하고, 확인 결과에 따라 프로그램 동작의 재실시 또는 완료 여부를 결정한다.
전압 공급 회로(130, 140)는 제어회로(120)의 신호들(READ, PGM, ERASE, RADD)에 따라 메모리 셀들의 프로그램 동작, 소거 동작 또는 리드 동작에 필요한 전압들을 선택된 메모리 셀 블록의 드레인 셀렉트 라인(DSL), 워드라인들(WL0 내지 WLn) 및 소오스 셀렉트 라인(SSL)으로 공급한다. 이러한 전압 공급 회로는 전압 생성 회로(130) 및 로우 디코더(140)를 포함한다.
전압 생성 회로(130)는 제어회로(120)의 내부 명령 신호인 동작 신호들(PGM, READ, ERASE)에 응답하여 메모리 셀들을 프로그램, 리드 또는 소거하기 위한 동작 전압들을 글로벌 라인들로 출력하며, 메모리 셀들을 프로그램하는 경우 프로그램을 위한 동작 전압들(예, Vpgm, Vpass, Vread)을 글로벌 라인들로 출력한다.
로우 디코더(140)는 제어회로(120)의 로우 어드레스 신호들(RADD)에 응답하여, 전압 생성 회로(130)에서 발생된 동작 전압들을 선택된 메모리 셀 블록의 로컬 라인들(DSL, WL[n:0], SSL)로 전달한다.
페이지 버퍼 그룹(150)은 비트라인들(BL1 내지 BLk)과 각각 연결되는 페이지 버퍼들(미도시)을 포함한다. 제어회로(120)에서 출력된 페이지 버퍼 신호들(PB SIGNALS)에 응답하여 메모리 셀들(F0 내지 Fn)에 데이터를 저장하는데 필요한 전압을 비트라인들(BL1 내지 BLk)에 각각 인가한다. 구체적으로, 페이지 버퍼 그룹(150)은 메모리 셀들(F0 내지 Fn)의 프로그램 동작, 소거 동작 또는 리드 동작 시 비트라인들(BL1 내지 BLk)을 프리차지하거나, 비트라인들(BL1 내지 BLk)의 전압 변화에 따라 검출된 메모리 셀들(F0 내지 Fn)의 문턱전압 레벨에 대응하는 데이터를 래치한다. 즉, 페이지 버퍼 그룹(150)은 프로그램 동작시에는 래치에 입력된 데이터에 따라 비트라인들에 프로그램 허용 전압(예컨대, 0V) 또는 프로그램 금지 전압(예컨대, Vcc)을 인가하고, 리드 동작 시에는 메모리 셀들(F0 내지 Fn)에 저장된 데이터에 따라 비트라인들(BL1 내지 BLk)의 전압을 조절하여 메모리 셀들(F0 내지 Fn)에 저장된 데이터를 검출한다.
컬럼 선택 회로(160)는 제어회로(120)에서 출력된 컬럼 어드레스 신호(CADD)에 응답하여 페이지 버퍼 그룹(150)에 포함된 페이지 버퍼들을 선택한다. 컬럼 선택 회로(160)에 의해 선택된 페이지 버퍼의 래치된 데이터가 출력된다. 또한, 페이지 버퍼 그룹(150)에서 출력된 데이터를 컬럼 라인(CL)을 통해 전달받고, 이를 패스/페일 판단회로(180)에 전달하기도 한다.
입출력 회로(170)는 프로그램 동작 시 외부로부터 입력된 데이터(DATA)를 페이지 버퍼그룹(150)의 페이지 버퍼들에 각각 입력하기 위하여 제어회로(120)의 제어에 따라 데이터(DATA)를 컬럼 선택 회로(160)에 전달한다. 전달된 데이터를 컬럼 선택 회로(160)가 페이지 버퍼 그룹(150)의 페이지 버퍼들에 차례대로 전달하면 페이지 버퍼들은 입력된 데이터를 내부 래치에 저장한다. 또한, 리드 동작 시 입출력 회로(170)는 페이지 버퍼 그룹(150)의 페이지 버퍼들로부터 컬럼 선택 회로(160)를 통해 전달된 데이터(DATA)를 외부로 출력한다.
패스/페일 판단회로(180)는 프로그램 동작 후 실시되는 프로그램 검증 동작에서 프로그램된 메모리 셀들 중 문턱전압이 목표전압보다 낮은 에러 셀들의 발생 여부를 체크하고 그 결과를 체크 신호(PFC)로 출력한다. 또한, 패스/페일 판단회로(180)는 에러 셀 발생 시 발생된 에러 셀들의 개수를 카운팅하고 카운팅 결과를 카운팅 신호(CS)로 출력하는 기능도 수행한다.
제어회로(120)는 메모리 셀들의 프로그램 동작 시 선택된 워드라인에 인가되는 프로그램 전압의 레벨을 조절하고, 프로그램 검증 동작 시 선택된 워드라인으로 인가되는 검증 전압들이 선택적으로 인가될 수 있도록 전압 생성 회로(130)를 제어한다. 이때, 패스/페일 판단회로(180)의 체크 신호(CS)에 따라 제어회로(120)가 전압 생성 회로(130)를 제어할 수도 있다.
도 2는 도 1의 페이지 버퍼를 구체적으로 설명하기 위한 회로도이다.
도 2를 참조하면, 페이지 버퍼(PB0)는 비트라인들(BL0 및 BL1) 중 어느 하나의 비트라인을 선택하기 위한 비트라인 선택회로(210)와, 독출 동작시 선택된 비트라인의 전위를 센싱노드(SO)로 전달하기 위한 센싱회로(220)와, 센싱노드(SO)를 프리차지하기 위한 프리차지 회로(230), 데이터를 저장하기 위한 제1 래치(240) 및 제2 래치(250)와, 제1 래치(240)에 저장된 데이터(QA)를 센싱노드(SO)로 전달하기 위한 제1 전달회로(260)와, 제2 래치(250)에 저장된 데이터(QB)를 센싱노드(SO)로 전달하기 위한 제2 전달회로(270)와, 제1 래치(150)를 셋업(setup) 또는 리셋(reset)하기 위한 제1 셋/리셋 회로(280)와, 제2 래치를 셋업 또는 리셋하기 위한 제2 셋/리셋 회로(290)와, 공통노드(CON)를 디스차지하기 위한 디스차지 회로(300)와, 제1 래치(240)에 저장된 데이터(QA)를 컬럼 라인(CL)을 통해 컬럼 선택 회로(160)에 전달하기 위한 제1 데이터 전송회로(310)와, 제2 래치(250)에 저장된 데이터(QB)를 컬럼 라인(CL)을 통해 컬럼 선택 회로(160)에 전달하기 위한 제2 데이터 전송회로(320)를 포함한다.
비트라인 선택회로(210)는, 프로그램 동작 중 이븐 비트라인(BLe) 또는 오드 비트라인(BLo)을 디스차지하기 위한 비트라인 디스차지 회로(212)와, 이븐 비트라인(BLe) 또는 오드 비트라인(BLo)을 선택하기 위한 선택회로(214)를 포함한다.
비트라인 디스차지 회로(212)는 이븐 디스차지 신호(PDE)에 응답하여 이븐 비트라인(BLe)을 디스차지하기 위한 제1 스위치(N01)와, 오드 프리차지 신호(PDO)에 응답하여 오드 비트라인(BLo)을 프리차지하기 위한 제2 스위치(N02)를 포함한다. 제1 스위치(N01)는 이븐 비트라인(BLo)과 가변전압(VIRPWR)이 인가되는 제1 단자 사이에 연결되는 NMOS 트랜지스터로 구현되며, 제2 스위치(N02)는 오드 비트라인(BLo)과 제1 단자 사이에 연결되는 NMOS 트랜지스터로 구현된다.
선택회로(214)는 이븐 선택신호(BSLE)에 응답하여 이븐 비트라인(BLe)을 선택하는 제3 스위치(N03)와, 오드 선택신호(BSLO)에 응답하여 오드 비트라인(BLo)을 선택하는 제4 스위치(N04)를 포함한다. 제3 스위치(N03) 및 제4 스위치(N04)는 NMOS 트랜지스터로 구현된다.
센싱회로(220)는 센싱신호(PBSENSE)에 응답하여 선택된 비트라인과 센싱노드(SO)를 연결하는 제5 스위치(N05)로 이루어지며, 제5 스위치(N05)는 NMOS 트랜지스터로 구현된다.
프리차지 회로(230)는 프리차지 신호(PRECHb)에 응답하여 전원전압(VDD) 단자와 센싱노드(SO)를 연결하여 센싱노드(SO)를 프리차지하기 위한 제6 스위치(N06)로 이루어지며, 제6 스위치(N06)는 PMOS 트랜지스터로 구현된다.
제1 래치(240)는 제1 및 제2 인터버들(I1 및 I2)로 이루어진다. 제1 인버터(I1)의 출력단과 제2 인버터(I2)의 입력단이 서로 연결되고, 제2 인버터(I2)의 출력단과 제1 인버터(I1)의 입력단이 서로 연결된다. 제1 래치(240)에 저장되는 제1 데이터(QA)는 제1 인터버(I1)의 출력단에 저장된다.
제2 래치(250)는 제3 및 제4 인터버들(I3 및 I4)로 이루어진다. 제3 인버터(I3)의 출력단과 제4 인버터(I4)의 입력단이 서로 연결되고, 제4 인버터(I4)의 출력단과 제3 인버터(I3)의 입력단이 서로 연결된다. 제2 래치(250)에 저장되는 제2 데이터(QB)는 제3 인터버(I3)의 출력단에 저장된다. 도 2에 도시된 페이지 버퍼(PB)에는 두 개의 래치(240 및 250)가 포함되어 있으나, 장치에 따라 두 개 이상의 래치들이 포함될 수 있다.
제1 전달회로(260)는 제1 전달신호(TRAN_A)에 응답하여 제1 인버터(I1)의 입력단과 센싱노드(SO)를 연결하는 제7 스위치(N07)와, 제2 전달신호(TRAN_B)에 응답하여 제1 인버터(I1)의 출력단과 센싱노드(SO)를 연결하는 제8 스위치(N08)를 포함한다. 제7 및 제8 스위치들(N07 및 N08)은 NMOS 트랜지스터로 구현된다.
제2 전달회로(270)는 제3 전달신호(TRAN_C)에 응답하여 제3 인버터(I3)의 입력단과 센싱노드(SO)를 연결하는 제9 스위치(N09)와, 제4 전달신호(TRAN_D)에 응답하여 제3 인버터(I1)의 출력단과 센싱노드(SO)를 연결하는 제10 스위치(N10)를 포함한다. 제9 및 제10 스위치들(N09 및 N10)은 NMOS 트랜지스터로 구현된다.
제1 셋/리셋 회로(280)는 제1 리셋신호(RESET_A)에 응답하여 제2 인버터(I2)의 출력단과 공통노드(CON)를 연결함으로써 제1 래치(240)를 리셋(reset)하는 제11 스위치(N11)와, 제1 셋신호(SET_A)에 응답하여 제2 인버터(I2)의 입력단과 공통노드(CON)를 연결함으로써 제1 래치(240)를 셋업(setup)하는 제12 스위치(N12)를 포함한다. 제11 및 제12 스위치들(N11 및 N12)은 NMOS 트랜지스터로 구현된다.
제2 셋/리셋 회로(290)는 제2 리셋신호(RESET_B)에 응답하여 제4 인버터(I4)의 출력단과 공통노드(CON)를 연결함으로써 제2 래치(250)를 리셋(reset)하는 제13 스위치(N13)와, 제2 셋신호(SET_B)에 응답하여 제4 인버터(I4)의 입력단과 공통노드(CON)를 연결함으로써 제2 래치(250)를 셋업(setup)하는 제14 스위치(N14)를 포함한다. 제13 및 제14 스위치들(N13 및 N14)은 NMOS 트랜지스터로 구현된다.
디스차지 회로(300)는 센싱노드(SO)에 응답하여 공통노드(CON)와 접지단자(Vss)를 연결함으로써 공통노드(CON)를 디스차지하는 제15 스위치(N15)로 이루어지며, 제15 스위치(N15)는 NMOS 트랜지스터로 구현된다.
제1 데이터 전송회로(310)는 제1 체크신호(CHKa)에 응답하여 제1 데이터(QA)를 컬럼 라인(CL)으로 전달하기 위한 NMOS 트랜지스터로 구현된다.
제2 데이터 전송회로(320)는 제2 체크신호(CHKb)에 응답하여 제2 데이터(QB)를 컬럼 라인(CL)으로 전달하기 위한 NMOS 트랜지스터로 구현된다.
도 3은 본 발명의 실시 예에 따른 프로그램 방법을 설명하기 위한 순서도이고, 도 4는 본 발명에 따른 프로그램 동작 시, 프로그램할 메모리 셀들의 문턱전압을 설명하기 위한 그래프이다.
도 3 및 도 4를 참조하여, 프로그램 방법을 구체적으로 설명하도록 한다.
(S01) 프로그램 펄스 인가 단계.
프로그램 동작이 시작되면, 선택된 메모리 셀들에 연관된 비트라인들에는 프로그램 허용전압(접지전압) 인가되고, 나머지 비선택된 메모리 셀들에 연관된 비트라인들에는 프로그램 금지전압(전원전압)이 인가된 상태에서, 프로그램하고자 하는 선택된 메모리 셀들에 연결된 워드라인(선택된 워드라인)에 프로그램 펄스를 인가한다. 프로그램 펄스가 인가되면, 선택된 메모리 셀들은 프로그램 펄스와 프로그램 허용전압 간의 차이로 인해 문턱전압이 상승한다.
(S02) 제1 검증 단계.
선택된 메모리 셀들의 문턱전압이 목표레벨(도 4의 Vt)보다 낮은 예비레벨(도 4의 Vp)의 검증전압에 도달했는지는 검증하기 위한 제1 검증동작을 수행한다. 제1 검증동작의 결과에 대한 데이터는 페이지 버퍼(도 2의 PB)의 제1 래치(도 2의 240)에 제1 데이터(QA)로 저장된다.
(S03) 제1 검증 패스 판단 단계.
제1 래치(240)에 저장된 제1 데이터(QA)에 따라 제1 검증의 패스(pass) 여부를 판단한다. 즉, 선택된 메모리 셀들의 문턱전압이 모두 예비레벨(Vp)의 검증전압에 도달했는지를 판단한다. 선택된 메모리 셀들의 문턱전압이 모두 예비레벨(Vp)의 검증전압에 도달했으면(B) 제1 검증이 패스된 것으로 판단하고, 문턱전압이 예비레벨(Vp)의 검증전압에 도달하지 못한 셀이 적어도 하나라도 검출되면(A) 제1 검증을 패스하지 못한 것으로 판단한다.
(S04) 제2 검증 단계.
S03 단계에서, 제1 검증을 패스하지 못한 것으로 판단되면(A), 정해진 알고리즘에 따라 제2 검증동작을 수행한다. 제2 검증동작은 선택된 메모리 셀들의 문턱전압이 목표레벨에 도달했는지를 검증하는 동작으로써, 제2 검증동작의 결과에 대한 데이터는 페이지 버퍼(PB)의 제2 래치(도 2의 250)에 제2 데이터(QB)로 저장된다. S04 단계에서는, 제2 검증 동작을 수행한 후 제2 검증 동작에 대한 결과를 판단하는 동작은 생략한다. 이는, 목표레벨보다 낮은 예비레벨의 검증전압에 도달하지 못한 셀들이 있으므로, 제2 검증동작의 결과를 판단하는 동작을 생략함으로써, 동작시간을 단축시킬 수 있다.
(S05) 비트라인 전위 셋업 단계.
제1 검증 결과로 제1 래치(240)에 입력된 제1 데이터(QA)에 따라 비트라인들의 전위를 셋업한다. 구체적으로, 제1 데이터(QA)가 바뀌었으면(B) 해당 메모리 셀들의 문턱전압이 예비레벨(Vp)의 검증전압에 도달한 것이므로 해당 메모리 셀들에 연관된 비트라인들에는 프로그램 금지전압을 인가하고, 제1 데이터(QA)가 이전 상태를 유지하는(A) 메모리 셀들에 연관된 비트라인들에는 프로그램 허용전압을 인가한다. 프로그램 퍼용전압은 접지전압이고, 프로그램 금지전압은 전원전압이 된다.
(S06) 프로그램 펄스 상승 단계.
프로그램 펄스의 레벨을 스텝펄스만큼 상승시킨다.
이어서, 상승된 프로그램 펄스를 선택된 워드라인에 인가하여 프로그램하는 단계(S01)를 재수행한다. 이와 같은 방식으로, 선택된 메모리 셀들의 문턱전압이 모두 예비레벨(Vp)의 검증전압에 도달할 때까지 S01 내지 S06 단계들을 반복한다. S01 내지 S06 단계들을 반복하다가, S03 단계에서, 제1 검증이 패스되면(B), S07 단계를 수행한다.
(S07) 제3 검증 단계.
선택된 메모리 셀들의 문턱전압이 목표레벨(Vt)에 도달했는지는 검증하기 위한 제2 검증동작을 수행한다. 제3 검증동작의 결과에 대한 데이터는 페이지 버퍼(도 2의 PB)의 제2 래치(도 2의 250)에 제2 데이터(QB)로 저장된다.
(S08) 제3 검증 패스 판단 단계.
제2 래치(250)에 저장된 제2 데이터(QB)에 따라 제2 검증의 패스(pass) 여부를 판단한다. 즉, 선택된 메모리 셀들의 문턱전압이 모두 목표레벨(Vt)에 도달했는지를 판단한다. 선택된 메모리 셀들의 문턱전압이 모두 목표레벨(Vt)에 도달했으면(C) 제2 검증이 패스된 것으로 판단하여 프로그램 동작을 종료한다. 하지만, 문턱전압이 목표레벨(Vt)에 도달하지 못한 셀이 적어도 하나라도 검출되면(B) 제3 검증을 패스하지 못한 것으로 판단한다.
(S09) 비트라인 전위 셋업 단계.
제3 검증 결과로 제2 래치(250)에 입력된 제2 데이터(QB)에 따라 비트라인들의 전위를 셋업한다. 구체적으로, 제2 데이터(QB)가 바뀐 메모리 셀들은(C) 문턱전압이 목표레벨에 도달한 셀들이므로, 해당 메모리 셀들에 연관된 비트라인들에는 프로그램 금지전압을 인가하고, 제2 데이터(QB)가 이전 상태를 유지하는 메모리 셀들(B)에 연관된 비트라인들에는 프로그램 허용전압을 인가한다. 프로그램 퍼용전압은 접지전압이고, 프로그램 금지전압은 전원전압이 된다.
(S10) 프로그램 펄스 상승 단계.
프로그램 펄스의 레벨을 스텝펄스만큼 상승시킨다.
이어서, 상승된 프로그램 펄스를 선택된 워드라인에 인가하여 프로그램하는 단계(S11)를 수행한다. S11 단계에서, 상승된 프로그램 펄스를 이용한 프로그램 동작을 수행한 후에는, 제1 검증동작을 생략하고 제2 검증동작(S07)을 수행한다. 이는, S03 단계에서 이미 선택된 메모리 셀들의 문턱전압이 모두 예비레벨(Vp)의 검증전압에 도달한 상태이므로 제1 검증동작을 재수행하는 것은 의미가 없어지기 때문이다. 이에 따라, 제1 검증동작을 패스한 이후에는, 제1 검증동작을 생략하고 제3 검증동작만을 이용하는 S07 내지 S11 단계들을 반복함으로써 프로그램 동작시간을 단축한다. 이처럼, S07 내지 S11 단계들을 반복하다가 S08 단계에서 제3 검증이 패스되면 프로그램 동작을 종료한다.
다음은, 반도체 장치를 이용하여 상술한 프로그램 동작을 수행하는 방법을 설명하도록 한다.
도 5는 본 발명의 실시 예에 따른 프로그램 방법을 설명하기 위한 타이밍도이다.
도 5 및 도 2를 참조하여 프로그램 방법을 설명하면 다음과 같다.
T1 구간에서는, 선택된 메모리 셀에 연결된 선택된 워드라인에 프로그램 펄스를 인가하여 선택된 메모리 셀들의 문턱전압을 상승시킨다. 이때, 비선택된 나머지 워드라인들에는 프로그램 패스전압을 인가한다. 선택된 워드라인에 프로그램 펄스를 인가할 때, 제1 데이터(QA)에 따라 비트라인들(BLe)의 전위가 결정되는데, 프로그램 동작을 수행할 선택된 셀들과 연관된 제1 데이터(QA)는 '0' 데이터가 입력되고, 비선택된 셀들과 연관된 제1 데이터(QA)는 '1' 데이터를 갖는다. 도 5에서는, 선택된 셀들의 프로그램 동작을 설명하고 있으므로, 제1 데이터(QA)가 '0'으로 도시되어 있다. 따라서,프로그램 펄스를 인가할 때, 제2 전달신호(TRAN_B) 및 이븐 선택신호(BSLE)를 하이 레벨로 인가하면 제8 스위치(N08) 및 제3 스위치(N03)가 모두 턴온되면서 선택된 이븐 비트라인(BLe)에는 프로그램 허용전압(접지전압)이 인가된다.
T2 구간에서는, T1 구간에서 수행한 프로그램 동작의 검증동작을 수행하기 위한 비트라인의 프리차지 동작을 수행한다. 이를 위하여, 하이 레벨의 센싱신호(PBSENSE)를 인가하여 센싱노드(SO)를 프리차지하고, 하이 레벨의 이븐 선택신호(BSLE)를 인가하여 프리차지된 센싱노드(SO)와 선택된 비트라인들(Sel. BL)을 연결한다. 이에 따라, 선택된 비트라인들(Sel. BL)이 프리차지된다.
T3 구간에서는, 선택된 메모리 셀들을 검증한다. 구체적으로, 메모리 셀들의 문턱전압 분포 폭을 좁히는데 유리한 더블 검증(double verify)동작을 수행한다. 더블 베리파이 동작은 하나의 프로그램 상태에 대하여 두 개 이상의 검증전압을 이용하는 검증동작을 의미하며, 본 실시 예에서는 두 개의 검증전압을 이용한 검증동작을 설명한다. 더블 검증동작에서는 선택된 메모리 셀을 최종적으로 프로그램할 목표레벨(Vt)과 목표레벨(Vt)보다 낮은 예비레벨(Vp)의 검증전압을 이용한다. 검증동작은 예비레벨(Vp)의 검증전압을 이용한 검증동작을 먼저 수행한 후에 목표레벨(Vt)의 검증전압을 이용한 검증동작을 수행하는 순서로 수행한다.
먼저, 예비레벨(Vp)의 검증전압을 이용한 검증동작을 수행하기 위하여, 선택된 워드라인(Sel. WL)에 예비레벨(Vp)의 검증전압을 인가한다. 이때, 비선택된 나머지 워드라인들(Unsel. WL)에는 패스전압을 인가한다. 도 5에는 도시되지 않았지만, 선택된 워드라인(Sel. WL)에 예비레벨(Vp) 또는 목표레벨(Vt)의 검증전압을 인가할 때, 소오스 셀렉트 라인(도 2의 SSL)에는 턴온전압을 인가한다. 그러면, 선택된 메모리 셀의 문턱전압이 예비레벨(Vp)보다 낮으면 선택된 메모리 셀에 채널이 형성되므로, 접지레벨의 공통 소오스 라인(CSL)과 선택된 비트라인(Sel. BL)이 연결되어 선택된 비트라인(Sel. BL)의 전위가 저하된다. 반면에, 선택된 메모리 셀의 문턱전압이 예비레벨(Vp)보다 높으면 선택된 메모리 셀에 채널이 형성되지 않으므로, 공통 소오스 라인(CSL)과 선택된 비트라인(Sel. BL)이 차단되어 선택된 비트라인(Sel. BL)의 프리차지 레벨이 유지된다. 따라서, 도 5의 T3 구간과 같이, 선택된 워드라인(Sel. WL)의 전위가 저하된 경우는 선택된 메모리 셀의 문턱전압이 예비레벨(Vp)보다 낮다는 것을 의미한다. 이에 따라, 하이 레벨의 센싱신호(PBSENSE) 및 제1 리셋신호(RESET_A)를 각각의 스위치(N05 및 N11)에 인가하면 해당 스위치들(N05 및 N11)이 턴온되어 선택된 비트라인(Sel. BL)의 전위가 제1 래치(240)의 제1 데이터(QA)에 반영된다. 즉, T3 구간과 같이 선택된 비트라인(Sel. BL)의 전위가 로우 레벨로 저하되었으면, 센싱노드(SO)의 전위도 로우 레벨로 저하되므로 제15 스위치(N15)가 턴오프된다. 이에 따라, 공통노드(CON)와 접지단자가 연결되지 않으므로 제11 스위치(N11)가 턴온되더라도 제1 데이터(QA)는 이전 데이터를 유지한다.
예비레벨(Vp)의 검증전압을 이용한 검증동작을 수행한 후에는, 선택된 메모리 셀의 프로그램 여부를 판단하기 위하여, 하이 레벨의 제1 체크신호(CHKa)를 제16 스위치(N16)에 인가한다. 이때, 센싱신호(PBSENSE)는 로우 레벨로 천이시킨다. 제16 스위치(N16)가 턴온되면 제1 데이터가 컬럼 라인(CL)으로 전달되고, 컬럼 선택 회로(도 1의 160)는 컬럼 라인(CL)을 통해 전달받은 데이터를 패스/페일 판단회로(180)로 전달한다. 패스/페일 판단회로(180)는 전달받은 데이터에 따라 예비레벨(Vp)의 검증전압을 이용한 검증동작이 패스(pass)되었는지를 판단한다. T3 구간에서는 제1 데이터(QA)가 로우 상태를 계속 유지하고 있으므로 예비레벨(Vp)의 검증전압을 이용한 검증동작은 패스되지 않은 것이 된다.
이어서, 선택된 워드라인(Sel. WL)에 목표레벨(Vt)의 검증전압을 인가하는 검증동작을 수행한다. 구체적으로, 예비레벨(Vp)의 검증전압이 인가되던 선택된 워드라인(Sel. WL)에 목표레벨(Vt)의 검증전압을 연속으로 인가한다. 이때, 제2 리셋신호(REST_B)로 하이 레벨로 인가하여 제13 스위치(N13)를 턴온시킨다. 하지만, 선택된 메모리 셀들의 문턱전압이 예비레벨(Vp)에도 도달하지 못한 것으로 판단되었기 때문에, 목표레벨(Vt)에는 더 도달할 수 없다. 따라서, 선택된 비트라인들(Sel. BL)의 전위는 로우 레벨로 저하되고, 센싱노드(SO)의 전위도 로우 레벨로 저하되므로 제15 스위치(N15)는 턴오프된다. 예비레벨(Vp)의 검증전압을 이용한 검증동작이 패스되기 까지는 목표레벨(Vt)의 검증전압을 이용한 검증동작의 평가동작을 생략함으로써 검증구간의 동작시간을 더욱 단축할 수 있다. 목표레벨(Vt)의 검증전압을 이용한 검증동작을 하는 이유는, 후속 프로그램 동작을 위해 제1 및 제2 래치들(240 및 250)에 저장된 데이터를 세팅하기 위하여 수행하는 것이다. 목표레벨(Vt)의 검증전압을 인가할 때, 센싱신호(PBSENSE)로 하이 레벨로 천이 된다.
T4 구간에서는, 워드라인들(Sel. WL 및 Unsel. WL)을 디스차지한다. 이때, 예비레벨(Vp)의 검증전압을 이용한 검증동작 결과에 따라 비트라인들의 전위를 세팅할 수도 있다.
T5 구간에서는, 프로그램 펄스를 상승시키고, 상승된 프로그램 펄스를 선택된 워드라인(Sel. WL)에 인가하여 선택된 메모리 셀들을 프로그램한다. 즉, 본 발명에서는 문턱전압 분포 폭을 좁히는데 유리한 ISPP(incremental step pulse program) 방식의 프로그램 동작을 수행하므로, 프로그램 펄스를 점진적으로 상승시킨다. 프로그램 펄스를 선택된 워드라인(Sel. WL)에 인가할 때, 비선택된 나머지 워드라인들(Unsel. WL)에는 패스전압을 인가한다.
T6 구간에서는, T5 구간에서 수행한 프로그램 동작의 검증동작을 수행하기 위한 비트라인의 프리차지 동작을 수행한다. 이를 위하여, 하이 레벨의 센싱신호(PBSENSE)를 인가하여 센싱노드(SO)를 프리차지하고, 하이 레벨의 이븐 선택신호(BSLE)를 인가하여 프리차지된 센싱노드(SO)와 선택된 비트라인들(Sel. BL)을 연결한다. 이에 따라, 선택된 비트라인들(Sel. BL)이 프리차지된다.
T7 구간에서는, 예비레벨(Vp)의 검증전압을 이용한 검증동작을 수행하기 위하여, 선택된 워드라인(Sel. WL)에 예비레벨(Vp)의 검증전압을 인가한다. 이때, 비선택된 나머지 워드라인들(Unsel. WL)에는 패스전압을 인가한다. 도 5에는 도시되지 않았지만, 선택된 워드라인(Sel. WL)에 예비레벨(Vp) 또는 목표레벨(Vt)의 검증전압을 인가할 때, 소오스 셀렉트 라인(도 2의 SSL)에는 턴온전압을 인가한다. 그러면, 선택된 메모리 셀의 문턱전압이 예비레벨(Vp)보다 낮으면 선택된 메모리 셀에 채널이 형성되므로, 접지레벨의 공통 소오스 라인(CSL)과 선택된 비트라인(Sel. BL)이 연결되어 선택된 비트라인(Sel. BL)의 전위가 저하된다. 반면에, 선택된 메모리 셀의 문턱전압이 예비레벨(Vp)보다 높으면 선택된 메모리 셀에 채널이 형성되지 않으므로, 공통 소오스 라인(CSL)과 선택된 비트라인(Sel. BL)이 차단되어 선택된 비트라인(Sel. BL)의 프리차지 레벨이 유지된다. 따라서, 도 5의 T7 구간과 같이, 선택된 워드라인(Sel. WL)의 전위가 저하된 경우는 선택된 메모리 셀의 문턱전압이 예비레벨(Vp)보다 낮다는 것을 의미한다. 이에 따라, 하이 레벨의 센싱신호(PBSENSE) 및 제1 리셋신호(RESET_A)를 각각의 스위치(N05 및 N11)에 인가하면 해당 스위치들(N05 및 N11)이 턴온되어 선택된 비트라인(Sel. BL)의 전위가 제1 래치(240)의 제1 데이터(QA)에 반영된다. 즉, T7 구간과 같이 선택된 비트라인(Sel. BL)의 전위가 로우 레벨로 저하되었으면, 센싱노드(SO)의 전위도 로우 레벨로 저하되므로 제15 스위치(N15)가 턴오프된다. 이에 따라, 공통노드(CON)와 접지단자가 연결되지 않으므로 제11 스위치(N11)가 턴온되더라도 제1 데이터(QA)는 이전 데이터를 유지한다.
예비레벨(Vp)의 검증전압을 이용한 검증동작을 수행한 후에는, 선택된 메모리 셀의 프로그램 여부를 판단하기 위하여, 하이 레벨의 제1 체크신호(CHKa)를 제16 스위치(N16)에 인가한다. 이때, 센싱신호(PBSENSE)는 로우 레벨로 천이시킨다. 제16 스위치(N16)가 턴온되면 제1 데이터가 컬럼 라인(CL)으로 전달되고, 컬럼 선택 회로(도 1의 160)는 컬럼 라인(CL)을 통해 전달받은 데이터를 패스/페일 판단회로(180)로 전달한다. 패스/페일 판단회로(180)는 전달받은 데이터에 따라 예비레벨(Vp)의 검증전압을 이용한 검증동작이 패스(pass)되었는지를 판단한다. T7 구간에서는 제1 데이터(QA)가 로우 상태를 계속 유지하고 있으므로 예비레벨(Vp)의 검증전압을 이용한 검증동작은 패스되지 않은 것이 된다.
이어서, 선택된 워드라인(Sel. WL)에 목표레벨(Vt)의 검증전압을 인가하는 검증동작을 수행한다. 구체적으로, 예비레벨(Vp)의 검증전압이 인가되던 선택된 워드라인(Sel. WL)에 목표레벨(Vt)의 검증전압을 연속으로 인가한다. 이때, 제2 리셋신호(REST_B)로 하이 레벨로 인가하여 제13 스위치(N13)를 턴온시킨다. 하지만, 선택된 메모리 셀들의 문턱전압이 예비레벨(Vp)에도 도달하지 못한 것으로 판단되었기 때문에, 목표레벨(Vt)에는 더 도달할 수 없다. 따라서, 선택된 비트라인들(Sel. BL)의 전위는 로우 레벨로 저하되고, 센싱노드(SO)의 전위도 로우 레벨로 저하되므로 제15 스위치(N15)는 턴오프된다. 예비레벨(Vp)의 검증전압을 이용한 검증동작이 패스되기 까지는 목표레벨(Vt)의 검증전압을 이용한 검증동작의 평가동작을 생략함으로써 검증구간의 동작시간을 더욱 단축할 수 있다. 목표레벨(Vt)의 검증전압을 이용한 검증동작을 하는 이유는, 후속 프로그램 동작을 위해 제1 및 제2 래치들(240 및 250)에 저장된 데이터를 세팅하기 위하여 수행하는 것이다. 목표레벨(Vt)의 검증전압을 인가할 때, 센싱신호(PBSENSE)로 하이 레벨로 천이 된다.
T8 구간에서는, 워드라인들(Sel. WL 및 Unsel. WL)을 디스차지한다. 이때, 예비레벨(Vp)의 검증전압을 이용한 검증동작 결과에 따라 비트라인들의 전위를 세팅할 수도 있다.
T9 구간에서는, 프로그램 펄스를 상승시키고, 상승된 프로그램 펄스를 선택된 워드라인(Sel. WL)에 인가하여 선택된 메모리 셀들을 프로그램한다. 이때, 비선택된 나머지 워드라인들(Unsel. WL)에는 패스전압을 인가한다.
T10 구간에서는, T9 구간에서 수행한 프로그램 동작의 검증동작을 수행하기 위한 비트라인의 프리차지 동작을 수행한다. 이를 위하여, 하이 레벨의 센싱신호(PBSENSE)를 인가하여 센싱노드(SO)를 프리차지하고, 하이 레벨의 이븐 선택신호(BSLE)를 인가하여 프리차지된 센싱노드(SO)와 선택된 비트라인들(Sel. BL)을 연결한다. 이에 따라, 선택된 비트라인들(Sel. BL)이 프리차지된다.
T11 구간에서는, 예비레벨(Vp)의 검증전압을 이용한 검증동작을 수행하기 위하여, 선택된 워드라인(Sel. WL)에 예비레벨(Vp)의 검증전압을 인가한다. 이때, 비선택된 나머지 워드라인들(Unsel. WL)에는 패스전압을 인가한다. 도 5에는 도시되지 않았지만, 선택된 워드라인(Sel. WL)에 예비레벨(Vp) 또는 목표레벨(Vt)의 검증전압을 인가할 때, 소오스 셀렉트 라인(도 2의 SSL)에는 턴온전압을 인가한다. 그러면, 선택된 메모리 셀의 문턱전압이 예비레벨(Vp)보다 낮으면 선택된 메모리 셀에 채널이 형성되므로, 접지레벨의 공통 소오스 라인(CSL)과 선택된 비트라인(Sel. BL)이 연결되어 선택된 비트라인(Sel. BL)의 전위가 저하된다. 반면에, 선택된 메모리 셀의 문턱전압이 예비레벨(Vp)보다 높으면 선택된 메모리 셀에 채널이 형성되지 않으므로, 공통 소오스 라인(CSL)과 선택된 비트라인(Sel. BL)이 차단되어 선택된 비트라인(Sel. BL)의 프리차지 레벨이 유지된다. 도 5의 T11 구간과 같이, 선택된 워드라인(Sel. WL)의 전위가 프리차지 레벨을 유지하는 경우에는 선택된 메모리 셀의 문턱전압이 예비레벨(Vp)에 도달했다는 것을 의미한다. 이에 따라, 하이 레벨의 센싱신호(PBSENSE) 및 제1 리셋신호(RESET_A)를 각각의 스위치(N05 및 N11)에 인가하면 해당 스위치들(N05 및 N11)이 턴온되어 선택된 비트라인(Sel. BL)의 전위가 제1 래치(240)의 제1 데이터(QA)에 반영된다. 즉, T11 구간과 같이 선택된 비트라인(Sel. BL)의 전위가 프리차지 레벨을 유지하고 있으면 센싱노드(SO)의 전위도 하이 레벨을 유지하므로 제15 스위치(N15)가 턴온된다. 이에 따라, 공통노드(CON)와 접지단자가 연결되므로 제1 데이터(QA)는 '0'에서 '1'로 바뀐다. 즉, 제1 래치(도 2의 140)의 제1 인버터(I1)의 출력단의 전위가 로우 레벨에서 하이 레벨로 바뀐다. 도 5에서는 제1 데이터가 세 번째 프로그램 펄스를 인가한 후에(T9 구간) 바뀌었으나, 이는 설명의 편의를 위하여 세 번째의 프로그램 펄스를 인가한 후에 바뀌도록 도시한 것이며, 세 번째의 프로그램 펄스로 한정되는 것은 아니다.
예비레벨(Vp)의 검증전압을 이용한 검증동작을 수행한 후에는, 선택된 메모리 셀의 프로그램 여부를 판단하기 위하여, 하이 레벨의 제1 체크신호(CHKa)를 제16 스위치(N16)에 인가한다. 이때, 센싱신호(PBSENSE)는 로우 레벨로 천이시킨다. 제16 스위치(N16)가 턴온되면 제2 데이터가 컬럼 라인(CL)으로 전달되고, 컬럼 선택 회로(도 1의 160)는 컬럼 라인(CL)을 통해 전달받은 데이터를 패스/페일 판단회로(180)로 전달한다. 패스/페일 판단회로(180)는 전달받은 데이터에 따라 예비레벨(Vp)의 검증전압을 이용한 검증동작이 패스(pass)되었는지를 판단한다. T11 구간에서는 제1 데이터(QA)가 로우 상태에서 하이 상태로 바뀌었으므로, 즉 '0'에서 '1'로 바뀌었으므로 예비레벨(Vp)의 검증전압을 이용한 검증동작이 패스된 것이 된다. 이어서, 선택된 워드라인(Sel. WL)에 목표레벨(Vt)의 검증전압을 인가하는 검증동작을 수행한다. 구체적으로, 예비레벨(Vp)의 검증전압이 인가되던 선택된 워드라인(Sel. WL)에 목표레벨(Vt)의 검증전압을 연속으로 인가한다.
T12 구간에서는, 워드라인들(Sel. WL 및 Unsel. WL)을 디스차지한다. 이때, 예비레벨(Vp)의 검증전압을 이용한 검증동작 결과에 따라 비트라인들의 전위를 세팅할 수도 있다.
T13 구간에서는, 프로그램 펄스를 상승시키고, 상승된 프로그램 펄스를 선택된 워드라인(Sel. WL)에 인가하여 선택된 메모리 셀들을 프로그램한다. 이때, 비선택된 나머지 워드라인들(Unsel. WL)에는 패스전압을 인가한다.
T14 구간에서는, T13 구간에서 수행한 프로그램 동작의 검증동작을 수행하기 위한 비트라인의 프리차지 동작을 수행한다. 이를 위하여, 하이 레벨의 센싱신호(PBSENSE)를 인가하여 센싱노드(SO)를 프리차지하고, 하이 레벨의 이븐 선택신호(BSLE)를 인가하여 프리차지된 센싱노드(SO)와 선택된 비트라인들(Sel. BL)을 연결한다. 이에 따라, 선택된 비트라인들(Sel. BL)이 프리차지된다.
T15 구간에서는, 예비레벨(Vp)의 검증전압을 이용한 검증동작이 이미 패스되었으므로 예비레벨(Vp)의 검증전압을 이용한 검증동작을 생략하고 목표레벨(Vt)의 검증전압을 이용한 검증동작을 수행하여 동작시간을 단축시킨다. 구체적으로, 선택된 워드라인(Sel. WL)에 목표레벨(Vt)의 검증전압을 인가한다. 이때, 비선택된 나머지 워드라인들(Unsel. WL)에는 패스전압을 인가한다. 도 5에는 도시되지 않았지만, 선택된 워드라인(Sel. WL)에 목표레벨(Vt)의 검증전압을 인가할 때, 소오스 셀렉트 라인(도 2의 SSL)에는 턴온전압을 인가한다. 그러면, 선택된 메모리 셀의 문턱전압이 목표레벨(Vt)보다 낮으면 선택된 메모리 셀에 채널이 형성되므로, 접지레벨의 공통 소오스 라인(CSL)과 선택된 비트라인(Sel. BL)이 연결되어 선택된 비트라인(Sel. BL)의 전위가 저하된다. 반면에, 선택된 메모리 셀의 문턱전압이 목표레벨(Vt)보다 높으면 선택된 메모리 셀에 채널이 형성되지 않으므로, 공통 소오스 라인(CSL)과 선택된 비트라인(Sel. BL)이 차단되어 선택된 비트라인(Sel. BL)의 프리차지 레벨이 유지된다. 도 5의 T15 구간과 같이, 선택된 워드라인(Sel. WL)의 전위가 로우 레벨로 저하된 경우에는 선택된 메모리 셀의 문턱전압이 목표레벨(Vt)에 도달했다는 것을 의미한다. 이에 따라, 하이 레벨의 센싱신호(PBSENSE) 및 제2 리셋신호(RESET_B)를 각각의 스위치(N05 및 N13)에 인가하면 해당 스위치들(N05 및 N13)이 턴온되어 선택된 비트라인(Sel. BL)의 전위가 제2 래치(250)의 제2 데이터(QB)에 반영된다. T15 구간에서는, 선택된 비트라인(Sel. BL)의 전위가 로우 레벨로 저하되어 센싱노드(SO)의 전위도 로우 레벨로 저하되므로 제15 스위치(N15)는 턴오프된다. 이에 따라, 공통노드(CON)와 접지단자가 차단되므로 제2 데이터(QB)는 이전 상태를 유지한다. 이어서, 하이 레벨의 제2 체크신호(CHKb)를 제17 스위치(N17)에 인가하여 제17 스위치(N17)를 턴온시킨다. 제17스위치(N17)가 턴온되면 제2 데이터(QB)가 컬럼 라인(CL)으로 전달되고, 컬럼 선택 회로(도 1의 160)는 전달받은 데이터를 패스/페일 판단회로(도 1의 180)에 전달한다. 패스.페일 판단회로(180)는 전달받은 데이터에 따라 목표레벨(Vt)의 검증전압을 이용한 검증동작이 패스되었는지를 판단한다.
상기와 같은 방식으로, 예비레벨(Vp)의 검증전압을 이용한 검증동작을 생략하고 목표레벨(Vt)의 검증전압만을 이용한 검증동작을 수행하면서 프로그램 펄스를 점진적으로 상승시키는 프로그램 동작을 반복한다. 선택된 메모리 셀들의 문턱전압이 모두 목표레벨(Vt)에 도달하면 해당 프로그램 동작을 종료한다. 이처럼, 예비레벨(Vp)의 검증전압을 이용한 검증동작이 패스된 후에는, 예비레벨(Vp)의 검증전압을 이용한 검증동작을 생략함으로써 검증동작에 걸리는 시간을 단축할 수 있고, 검증동작을 포함한 프로그램 동작시간 또한 단축할 수 있다.
상기에서 설명한 본 발명의 기술적 사상은 바람직한 실시 예에서 구체적으로 기술되었으나, 상기한 실시 예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명은 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술적 사상의 범위 내에서 다양한 실시 예가 가능함을 이해할 수 있을 것이다.
110: 메모리 셀 어레이 120 : 제어회로
130: 전압 생성 회로 140: 로우 디코더
150: 페이지 버퍼그룹 160: 컬럼 선택 회로
170: 입출력 회로 180: 패스/페일 판단회로

Claims (18)

  1. 선택된 워드라인에 프로그램 펄스를 인가하여 선택된 메모리 셀들을 프로그램하는 단계;
    상기 선택된 워드라인에 목표레벨보다 낮은 예비레벨의 검증전압을 인가하여 상기 선택된 메모리 셀들의 제1 검증동작을 수행하는 단계;
    상기 제1 검증동작의 패스여부를 판단하는 단계;
    상기 선택된 워드라인에 상기 목표레벨을 인가하여 상기 선택된 메모리 셀들의 제2 검증동작을 수행하는 단계;
    상기 제1 검증동작이 패스될 때까지 상기 프로그램 펄스를 상승시키면서 상기 제1 및 제2 검증동작을 포함한 프로그램 동작을 반복하는 단계; 및
    상기 제1 검증동작이 패스되면, 상기 선택된 모든 메모리 셀들의 문턱전압이 상기 목표레벨에 도달할 때까지 상기 목표레벨을 검증전압으로 하는 제3 검증동작 및 프로그램 동작을 반복하는 단계를 포함하는 반도체 장치의 프로그램 방법.
  2. 제1항에 있어서,
    상기 제1 검증동작 결과 상기 선택된 모든 메모리 셀들의 문턱전압이 상기 예비레벨에 도달하기 전까지는 상기 제2 검증동작을 수행한 후 상기 제2 검증동작에 대한 평가 동작을 생략하는 반도체 장치의 프로그램 방법.
  3. 제1항에 있어서,
    상기 제1 검증동작을 수행하기 이전에 상기 선택된 메모리 셀들에 각각 연관된 비트라인들을 프리차지하는 단계를 더 포함하는 반도체 장치의 프로그램 방법.
  4. 제3항에 있어서,
    상기 제1 검증동작을 수행한 후, 상기 비트라인들의 전위가 모두 프리차지 레벨을 유지하면 상기 제1 검증동작을 패스(pass)로 판단하는 반도체 장치의 프로그램 방법.
  5. 제1항에 있어서,
    상기 제1 검증동작은, 상기 선택된 워드라인에 상기 예비레벨의 검증전압을 인가하고, 나머지 워드라인들에는 검증전압을 인가하여 수행하는 반도체 장치의 프로그램 방법.
  6. 제5항에 있어서,
    상기 제2 검증동작은, 상기 예비레벨의 검증전압이 인가되는 상기 선택된 워드라인에 상기 목표레벨의 검증전압을 연속으로 인가하여 수행하는 반도체 장치의 프로그램 방법.
  7. 제6항에 있어서,
    상기 제2 검증동작을 수행하는 동안에도 상기 나머지 워드라인들에 상기 패스전압을 계속 인가하는 반도체 장치의 프로그램 방법.
  8. 제1항에 있어서,
    상기 제2 검증동작을 수행한 후에, 상기 선택된 워드라인을 포함한 모든 워드라인들을 디스차지하는 반도체 장치의 프로그램 방법.
  9. 제1항에 있어서,
    상기 선택된 워드라인에 상기 프로그램 펄스를 인가할 때, 나머지 워드라인들에는 패스전압을 인가하는 반도체 장치의 프로그램 방법.
  10. 선택된 워드라인에 프로그램 펄스를 인가하는 단계;
    상기 선택된 워드라인에 목표레벨보다 낮은 예비레벨의 검증전압을 인가하여 제1 검증동작을 수행하고, 상기 목표레벨의 검증전압을 인가하여 제2 검증동작을 순차적으로 수행하는 단계; 및
    상기 제1 검증동작 결과, 상기 선택된 워드라인에 접속된 선택된 메모리 셀들의 문턱전압이 모두 상기 예비레벨에 도달한 경우에는, 상기 선택된 메모리 셀들의 문턱전압이 모두 상기 목표레벨에 도달할 때까지 상기 예비레벨을 이용한 검증동작을 생략하고 상기 목표레벨을 검증전압으로 이용하는 검증동작과 상기 프로그램 펄스를 점진적으로 상승시키는 프로그램 동작을 반복하는 반도체 장치의 프로그램 방법.
  11. 제10항에 있어서,
    상기 프로그램 동작은 ISPP(incremental step pulse program) 방식으로 수행하는 반도체 장치의 프로그램 방법.
  12. 제10항에 있어서,
    상기 제1 검증동작 결과, 상기 선택된 워드라인에 접속된 선택된 메모리 셀들의 문턱전압이 모두 상기 예비레벨에 도달하기 전까지, 상기 제2 검증동작에 대한 평가동작을 생략하는 반도체 장치의 프로그램 방법.
  13. 제12항에 있어서,
    상기 제1 검증동작 결과, 상기 선택된 워드라인에 접속된 선택된 메모리 셀들의 문턱전압이 모두 상기 예비레벨에 도달한 이후부터는, 상기 제2 검증동작에 대한 평가동작을 수행하는 반도체 장치의 프로그램 방법.
  14. 제10항에 있어서,
    상기 제2 검증동작은, 상기 예비레벨의 검증전압이 인가되는 상기 선택된 워드라인에 상기 목표레벨의 검증전압을 연속으로 인가하여 수행하는 반도체 장치의 프로그램 방법.
  15. 선택된 워드라인에 프로그램 펄스를 인가하여 선택된 메모리 셀들을 프로그램하는 단계; 및
    상기 선택된 워드라인에 예비레벨 및 상기 예비레벨보다 높은 목표레벨의 검증전압을 순차적으로 인가하여 상기 메모리 셀들을 검증하는 더블 검증동작을 수행하되, 상기 선택된 모든 메모리 셀들의 문턱전압이 상기 예비레벨에 도달한 이후에는 상기 목표레벨의 검증전압을 이용한 검증동작만 수행하는 프로그램 동작을 수행하는 단계를 포함하는 반도체 장치의 프로그램 방법.
  16. 제15항에 있어서,
    상기 더블 검증동작은,
    상기 선택된 메모리 셀들의 문턱전압이 모두 상기 목표레벨에 도달하기 전까지, 상기 예비레벨을 검증전압으로 하는 검증동작을 수행하는 단계;
    상기 예비레벨을 검증전압으로 하는 검증동작을 평가하는 단계; 및
    상기 목표레벨을 검증전압으로 하는 검증동작을 수행하는 단계를 포함하는 반도체 장치의 프로그램 방법.
  17. 제16항에 있어서,
    상기 선택된 메모리 셀들의 문턱전압이 모두 상기 목표레벨에 도달하기 전까지, 상기 목표레벨을 검증전압으로 하는 검증동작에 대한 평가동작을 생략하는 반도체 장치의 프로그램 방법.
  18. 제15항에 있어서,
    상기 프로그램 동작은 ISPP(incremental step pulse program) 방식으로 수행하는 반도체 장치의 프로그램 방법.
KR1020100130518A 2010-12-20 2010-12-20 반도체 장치의 프로그램 방법 KR101201888B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100130518A KR101201888B1 (ko) 2010-12-20 2010-12-20 반도체 장치의 프로그램 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100130518A KR101201888B1 (ko) 2010-12-20 2010-12-20 반도체 장치의 프로그램 방법

Publications (2)

Publication Number Publication Date
KR20120069114A true KR20120069114A (ko) 2012-06-28
KR101201888B1 KR101201888B1 (ko) 2012-11-16

Family

ID=46687434

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100130518A KR101201888B1 (ko) 2010-12-20 2010-12-20 반도체 장치의 프로그램 방법

Country Status (1)

Country Link
KR (1) KR101201888B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9679638B2 (en) 2014-11-04 2017-06-13 SK Hynix Inc. Semiconductor device and method of operating the same

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102235492B1 (ko) 2014-08-25 2021-04-05 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 검증 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9679638B2 (en) 2014-11-04 2017-06-13 SK Hynix Inc. Semiconductor device and method of operating the same

Also Published As

Publication number Publication date
KR101201888B1 (ko) 2012-11-16

Similar Documents

Publication Publication Date Title
KR101066746B1 (ko) 페이지 버퍼 회로 및 이를 구비한 불휘발성 메모리 소자와 그 동작 방법
US9013924B2 (en) Semiconductor device and operating method thereof
KR101119343B1 (ko) 반도체 메모리 장치의 프로그램 방법
KR101211840B1 (ko) 반도체 메모리 장치의 프로그램 방법
US8971109B2 (en) Semiconductor memory device and method of operating the same
US7561474B2 (en) Program verifying method and programming method of flash memory device
KR101036720B1 (ko) 불휘발성 메모리 소자의 동작 방법
TWI573144B (zh) 半導體裝置及其操作方法
KR101009096B1 (ko) 불휘발성 메모리 소자 및 이의 프로그램 검증 동작 방법
KR101015757B1 (ko) 불휘발성 메모리 장치의 동작 방법
KR20130072668A (ko) 반도체 메모리 장치 및 그의 동작 방법
US8804433B2 (en) Semiconductor memory device and operating method thereof
JP5992983B2 (ja) 不揮発性半導体記憶装置
KR20120121167A (ko) 반도체 장치 및 이를 이용한 소거 방법
KR20090055806A (ko) 불휘발성 메모리 소자의 프로그램 검증 방법
JP2009043390A (ja) 不揮発性メモリ装置のソフトプログラム方法
KR20120136533A (ko) 반도체 장치 및 이의 동작방법
JP2010129125A (ja) 多値不揮発性半導体メモリ
JP6154879B2 (ja) Nand型フラッシュメモリとそのプログラム方法
KR101201888B1 (ko) 반도체 장치의 프로그램 방법
KR101014968B1 (ko) 불휘발성 메모리 소자와 그 페이지 버퍼 회로
KR20120078839A (ko) 반도체 메모리 장치 및 이를 이용한 소거방법
KR100904731B1 (ko) 멀티 레벨 셀 플래시 메모리소자의 페이지 버퍼 및프로그램 방법
KR20120005828A (ko) 불휘발성 메모리 장치의 동작 방법
KR20120061572A (ko) 불휘발성 메모리 장치 및 이의 리드 방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151020

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161024

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171025

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee