Nothing Special   »   [go: up one dir, main page]

KR20100085659A - 불휘발성 메모리 장치의 프로그램 방법 - Google Patents

불휘발성 메모리 장치의 프로그램 방법 Download PDF

Info

Publication number
KR20100085659A
KR20100085659A KR1020090005071A KR20090005071A KR20100085659A KR 20100085659 A KR20100085659 A KR 20100085659A KR 1020090005071 A KR1020090005071 A KR 1020090005071A KR 20090005071 A KR20090005071 A KR 20090005071A KR 20100085659 A KR20100085659 A KR 20100085659A
Authority
KR
South Korea
Prior art keywords
voltage
program
page
verification
verify
Prior art date
Application number
KR1020090005071A
Other languages
English (en)
Other versions
KR100996108B1 (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 KR1020090005071A priority Critical patent/KR100996108B1/ko
Priority to US12/471,546 priority patent/US7881115B2/en
Priority to CN200910142496A priority patent/CN101783177A/zh
Priority to JP2009146421A priority patent/JP2010170643A/ja
Publication of KR20100085659A publication Critical patent/KR20100085659A/ko
Application granted granted Critical
Publication of KR100996108B1 publication Critical patent/KR100996108B1/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
    • 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/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/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
    • 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

Landscapes

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

Abstract

본원 발명의 불휘발성 메모리 장치의 프로그램 방법은 제1 페이지에 대하여 프로그램 펄스를 인가하여 프로그램 동작을 수행하는 단계와, 검증전압 이상으로 프로그램된 셀이 있는지를 판단하는 검증 동작을 수행하는 단계와, 상기 프로그램 동작이 수행된 메모리 셀들의 문턱 전압 중 최고 문턱 전압 값을 측정하는 단계와, 상기 제1 페이지에 대하여 프로그램 동작 및 검증 동작을 반복 수행하여 프로그램 동작을 완료시키는 단계와, 제1 페이지에 대한 프로그램 시작전압에 상기 검증전압과 상기 최고 문턱 전압 값의 차이를 합하여 제2 페이지에 대한 프로그램 시작전압으로 설정하는 단계와, 상기 설정된 제2 페이지에 대한 프로그램 시작전압에 따라 제2 페이지에 대한 프로그램 동작을 수행하는 단계를 포함하는 것을 특징으로 한다.
더미 프로그램 펄스, 프로그램/소거 동작 횟수

Description

불휘발성 메모리 장치의 프로그램 방법{Programming method of non volatile memory device}
본원 발명은 불휘발성 메모리 장치의 프로그램 방법에 관한 것이다.
최근 들어 전기적으로 프로그램(program)과 소거(erase)가 가능하고, 일정 주기로 데이터를 재작성해야하는 리프레시(refresh) 기능이 필요 없는 불휘발성 메모리 소자에 대한 수요가 증가하고 있다.
상기 불휘발성 메모리 셀은 전기적인 프로그램/소거 동작이 가능한 소자로서 얇은 산화막에 인가되는 강한 전기장에 의해 전자가 이동하면서 셀의 문턱전압을 변화시켜 프로그램 및 소거 동작을 수행한다.
불휘발성 메모리 장치는 통상적으로 데이터가 저장되는 셀들이 매트릭스 형태로 구성된 메모리 셀 어레이, 상기 메모리 셀 어레이의 특정 셀들에 대하여 메모리를 기입하거나 특정 셀에 저장되었던 메모리를 독출하는 페이지 버퍼를 포함한다. 상기 페이지 버퍼는 특정 메모리 셀과 접속된 비트라인 쌍, 메모리 셀 어레이에 기록할 데이터를 임시저장하거나, 메모리 셀 어레이로부터 특정 셀의 데이터를 독출하여 임시 저장하는 레지스터, 특정 비트라인 또는 특정 레지스터의 전압 레벨 을 감지하는 감지노드, 상기 특정 비트라인과 감지노드의 접속여부를 제어하는 비트라인 선택부를 포함한다.
이러한 불휘발성 메모리 장치는 프로그램/소거 동작의 횟수가 증가할수록 프로그램 속도가 증가하는 것으로 알려져 있다. 프로그램/소거 동작의 횟수가 증가할수록 각 메모리 셀의 플로팅 게이트에 트랩되는 차지(charge)가 증가하면서 각 셀의 문턱전압이 높아지기 때문이다. 따라서 ISPP(Incremental step pulse program)프로그램 방법에 따른 프로그램 펄스가 상대적으로 적게 인가되더라도 목표로 하는 문턱전압 이상으로 프로그램된다.
이러한 특성을 고려하여 상기 ISPP 프로그램 방법에서 프로그램 시작전압을 낮게 설정하여 인가하는 방법을 고려할 수 있다. 프로그램/소거 동작 횟수가 낮은 시점에서도 이러한 방법을 사용할 경우 프로그램 시간이 증가하는 문제가 발생한다. 즉 프로그램 시작 전압이 낮아짐에 따라 인가하여야 하는 펄스가 더 많아지기 때문이다.
전술한 문제점에 따라 본원 발명이 해결하고자 하는 과제는 프로그램/소거 동작 횟수의 증가에 따라 가변적으로 프로그램 시작전압을 설정할 수 있는 불휘발성 메모리 장치의 프로그램 방법을 제공하는 것이다.
전술한 과제를 해결하기 위한 본원 발명의 불휘발성 메모리 장치의 프로그램 방법은 제1 페이지에 대하여 프로그램 펄스를 인가하여 프로그램 동작을 수행하는 단계와, 검증전압 이상으로 프로그램된 셀이 있는지를 판단하는 검증 동작을 수행하는 단계와, 상기 프로그램 동작이 수행된 메모리 셀들의 문턱 전압 중 최고 문턱 전압 값을 측정하는 단계와, 상기 제1 페이지에 대하여 프로그램 동작 및 검증 동작을 반복 수행하여 프로그램 동작을 완료시키는 단계와, 제1 페이지에 대한 프로그램 시작전압에 상기 검증전압과 상기 최고 문턱 전압 값의 차이를 합하여 제2 페이지에 대한 프로그램 시작전압으로 설정하는 단계와, 상기 설정된 제2 페이지에 대한 프로그램 시작전압에 따라 제2 페이지에 대한 프로그램 동작을 수행하는 단계를 포함하는 것을 특징으로 한다.
또한, 프로그램/소거 동작 횟수 증가에 따른 프로그램 속도 증가 특성을 보상하는 더미 프로그램 펄스 인가 방식의 불휘발성 메모리 장치의 프로그램 방법에 있어서, 제1 페이지에 대하여 프로그램 펄스를 인가하여 프로그램 동작을 수행하는 단계와, 검증전압 이상으로 프로그램된 셀이 있는지를 판단하는 검증 동작을 수행하는 단계와, 상기 검증전압을 기준으로 상기 프로그램 동작 수행이 수행된 메모리 셀 들의 문턱 전압 중 최고 문턱 전압 값을 측정하는 단계와, 제1 페이지에 대하여 프로그램 동작 및 검증 동작을 반복 수행하여 프로그램 동작을 완료시키는 단계와, 제1 페이지에 대한 프로그램 시작전압에 상기 검증전압과 상기 최고 문턱 전압 값의 차이를 합하여 제2 페이지에 대한 프로그램 시작전압으로 설정하는 단계와, 상기 설정된 제2 페이지에 대한 프로그램 시작전압에 따라 제2 페이지에 대한 프로그램 동작을 수행하는 단계를 포함하는 것을 특징으로 한다.
전술한 본원 발명의 과제 해결 수단에 따라 프로그램 시작전압을 가변적으로 설정할 수 있다. 특히 프로그램/소거 동작 횟수가 작은 초기 동작시에는 프로그램 시작전압을 상대적으로 크게 설정하여 프로그램 속도가 느린 셀의 특성을 보상할 수 있다. 또한, 프로그램/소거 동작 횟수가 큰 후기 동작시에는 프로그램 시작전압을 상대적으로 작게 설정하여 프로그램 속도가 빠른 셀의 특성을 보상할 수 있다.
이하, 첨부된 도면들을 참조하여 본원 발명의 바람직한 실시예를 상세히 살펴보기로 한다. 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 도면상에서 동일 부호는 동일한 요소를 지칭한다.
도 1은 본원 발명이 적용되는 불휘발성 메모리 장치의 전체 구성을 도시한 도면이다.
상기 불휘발성 메모리 장치(100)는 메모리 셀 어레이(102), 페이지 버퍼(108), X/Y-디코더(104, 106), 고전압 발생기(110), 명령어 인터페이스 로직부(112), 명령어 레지스터(114), 어드레스 레지스터/카운터(116), 데이터 레지스터(118), IO 버퍼부(120)를 포함한다. 상기 불휘발성 메모리 장치의 동작을 살펴보기로 한다.
먼저, 상기 명령어 인터페이스 로직부(112)에 대하여 칩 인에이블 신호(/CE) 가 디스에이블되고, 라이트 인에이블 신호(/WE)가 토글되면, 이에 응답하여, 상기 명령어 인터페이스 로직부(112)가 상기 IO 버퍼부(110)와 명령어 레지스터(114)를 통하여 수신되는 명령어 신호를 수신하고, 그 명령어에 따라 프로그램 명령, 소거 명령 또는 독출 명령등을 발생시킨다. 이때, 상기 명령어 신호는 상기 불휘발성 메모리 장치의 동작 모드를 결정하는 페이지 프로그램 셋업 코드(page program setup code)를 포함한다. 한편, 상기 명령어 인터페이스 로직부(112)에서 출력되는 동작상태 신호(/R/B)는 일정 시간 동안 디스에이블되는데, 외부의 메모리 컨트롤러(미도시)는 상기 동작상태 신호(/R/B)를 수신하고 상기 불휘발성 메모리 장치가 프로그램/소거/독출 등의 동작 상태임을 인식한다. 즉, 상기 동작상태 신호(/R/B)가 디스에이블되는 시간 동안, 상기 메모리 셀 어레이 중 하나의 페이지에 대한 프로그램/소거/독출 등이 실행된다.
또한, 어드레스 레지스터/카운터(116)는 상기 IO 버퍼부(120)를 통하여 수신되는 어드레스 신호를 수신하고, 로우 어드레스 신호 및 칼럼 어드레스 신호를 발생시킨다. 상기 어드레스 신호는 상기 메모리 셀 중 하나에 포함되는 페이지들 중 하나에 대응한다. 상기 데이터 레지스터(118)는 상기 IO 버퍼부(120)를 통하여 수신되는 각종 데이터들을 임시저장하고, Y-디코더(106)로 전달한다.
상기 고전압 발생기(110)는 상기 프로그램 명령, 소거 명령 또는 독출 명령에 응답하여 바이어스 전압들을 발생하고 이를 페이지 버퍼(108), X-디코더(104) 등에 공급한다.
상기 X-디코더(104)는 상기 로우 어드레스 신호에 응답하여, 상기 메모리 셀 어레이의 블록들 중 하나에 상기 고전압 발생기(110)로 부터 공급받은 바이어스 전압들을 메모리 셀 어레이(102)에 공급한다. 상기 Y-디코더(106)는 상기 컬럼 어드레스 신호에 응답하여, 상기 페이지 버퍼를 통하여 상기 메모리 셀 어레이의 블록들에 의해 공유되는 비트 라인들(미도시)에 데이터 신호를 공급한다.
상기 페이지 버퍼(108)는 상기 IO 버퍼부(110) 및 상기 Y-디코더(106)를 통하여 수신되는 데이터 신호를 래치하여 상기 메모리 셀 어레이의 블록들에 의해 공유되는 비트 라인들(미도시)에 출력한다.
도 2는 통상적인 불휘발성 메모리 장치의 프로그램/소거 동작횟수의 증가에 따른 문턱전압 변화특성을 도시한 그래프이다.
도시된 바와 같이 프로그램/소거 동작 횟수가 증가할수록 프로그램 상태의 문턱 전압 및 소거 상태의 문턱전압이 커지는 현상이 발생한다. 이는 프로그램/소거 동작 횟수가 증가할수록 불휘발성 메모리 셀의 플로팅 게이트에 트랩되는 차지가 증가함에 따라 소거 상태에서도 문턱전압이 증가하기 때문에 발생한다. 그 결과 동일한 프로그램 펄스가 인가에 따른 문턱전압의 변화량은 더욱 커지게 된다. 이와 같은 문턱전압의 변화량을 프로그램 속도로 정의한다. 즉 동일한 프로그램 펄스를 인가할 때 문턱전압의 변화량이 더 크면 프로그램 속도가 더 큰 것으로 본다.
도시된 바와 같이 프로그램/소거 동작 횟수가 10회인 경우 프로그램 상태의 문턱전압보다 프로그램/소거 동작 횟수가 10K인 경우 프로그램 상태의 문턱전압이 더 큰 것을 알 수 있다. 이는 소거 상태에서도 마찬가지이다. 이와 같이 프로그램/소거 동작의 횟수에 따라 프로그램 속도가 변하게 됨에 따라, 이러한 변화량을 보상하기 위한 프로그램 방법이 사용되고 있다.
도 3은 통상적으로 사용되는 불휘발성 메모리 장치의 프로그램 방법의 개념을 설명하기 위한 도면이다.
도시된 바와 같이 ISPP(Incremental step pulse program) 프로그램 방법에 따라 프로그램 동작이 수행된다. 즉 프로그램 펄스를 인가한 후 검증동작을 실시하며, 각 반복동작마다 프로그램 전압을 스텝전압(Vstep) 만큼 상승시켜 프로그램 동작을 반복한다. 이때 프로그램/소거 동작 횟수에 따라 프로그램 속도가 상이해 지는 점을 고려하여 더미 프로그램 펄스가 인가되는 구간을 추가한다.
프로그램/소거 동작 횟수가 1회인 경우에는 제1 시작전압(Vstart1)을 기준으 로 하여 ISPP 프로그램 동작을 수행한다. 그러나 프로그램/소거 동작 횟수가 10K 인 경우에는 프로그램 속도가 빠른 상태이므로 상기 제1 시작전압(Vstart1)보다 작은 제2 시작전압(Vstart2)을 기준으로 ISPP 프로그램 동작을 수행할 필요가 있다. 따라서 프로그램/소거 동작을 처음 시작할 때부터 제2 시작전압(Vstart2)을 기준으로 ISPP 프로그램 동작을 수행한다. 프로그램 시작전압이 낮으므로 프로그램/소거 동작 횟수가 1회 내지 10K 인 경우에는 실질적으로 프로그램 효과가 나타나지 않을 수도 있다. 따라서 프로그램/소거 동작 횟수가 1회 내지 10K 인 경우에는 제2 시작전압(Vstart2)이 인가되는 시점부터 제1 시작전압(Vstart1)이 인가되기 직전까지 인가되는 프로그램 펄스가 더미(dummy) 프로그램 펄스가 될 수 있다. 프로그램/소거 동작 횟수가 10K 이상이 되는 경우를 위해, 더미 프로그램 펄스를 인가하고 있으나, 프로그램/소거 동작 횟수가 10K가 되기 전까지는 총 프로그램 시간이 길어지는 문제점이 발생하게 된다.
도 4는 본원 발명의 일 실시예에 따른 불휘발성 메모리 장치의 프로그램 방법을 도시한 순서도이고, 도 5는 본원 발명의 일 실시예에 따른 불휘발성 메모리 장치의 프로그램 방법에서 최고 문턱 전압값을 측정하는 방법의 개념을 도시한 도면이다.
먼저 제1 페이지에 대하여 프로그램 시작 펄스를 인가하여 프로그램 동작을 수행한다(단계 410).
본원 발명에서는 ISPP 프로그램 시작전압에 따라 프로그램 동작을 수행한다. 그리고 제1 페이지에 대한 프로그램 동작 상태를 기초로 제2 페이지에 대한 프로그램 시작 펄스의 값을 조절하고자 한다.
다음으로, 상기 프로그램 동작에 대하여 검증 동작을 수행한다(단계 412).
프로그램 대상 셀들이 검증전압이상으로 모두 프로그램되었는지 여부를 확인한다. 상기 검증 동작은 통상적인 불휘발성 메모리 장치의 검증 동작에 따라 수행되는바 상세 동작에 대한 설명은 생략하기로 한다.
검증 결과 프로그램 대상 셀들이 검증 전압이상으로 프로그램이 완료된 경우에는 다음 페이지, 즉 제2 페이지에 대하여 프로그램 동작을 수행하게 된다(단계 414).
그러나 상기 검증 결과 프로그램 검증 전압이상으로 프로그램이 완료되지 못한 경우에는 최고 문턱 전압값을 측정한다(단계 414, 416).
도 5를 참조하여 상기 최고 문턱 전압값의 측정방법을 살펴보기로 한다. 프로그램/소거 동작 횟수가 낮은 초기에는 프로그램 속도가 빠르지 못하므로, 한번의 프로그램 펄스 인가만으로는 검증 전압이상으로 프로그램된 셀이 발생하지 않을 수 있다. 즉 검증 전압(Vver)을 기준으로 하여 검증동작을 수행해본 결과, 검증전압이상으로 프로그램된 셀이 없는 경우에는, 상기 검증 전압(Vver)을 감소시켜 재검증 동작을 수행한다. 이와 같이 검증 전압(Vver)을 감소시켜 검증동작을 반복수행하면, 감소되어 재설정된 검증 전압(Va)이상으로 프로그램된 셀을 센싱할 수 있고, 이러한 셀의 문턱 전압을 최고 문턱 전압으로 설정할 수 있다.
한편, 프로그램/소거 동작 횟수가 큰 경우에는 프로그램 속도가 빨라지므로, 한번의 프로그램 펄스 인가만으로 검증 전압이상으로 프로그램된 셀이 발생할 수 있다. 즉 검증 전압(Vver)을 기준으로 하여 검증동작을 수행해본 결과, 검증전압이상으로 프로그램된 셀이 있는 경우에는, 상기 검증 전압(Vver)을 증가시켜 재검증 동작을 수행한다. 이와 같이 검증 전압(Vver)을 증가시켜 검증동작을 반복수행하면, 증가되어 재설정된 검증 전압(Vb)보다 문턱 전압이 높은 셀이 하나만 있는 경우가 센싱될 수 있고, 그때 인가되던 검증 전압을 최고 문턱전압으로 설정할 수 있다. 또는 증가되어 재설정된 검증 전압(Vb)보다 문턱 전압이 높은 셀이 없을 수 있고, 그 직전에 인가되던 검증 전압을 최고 문턱전압으로 설정할 수 있다.
다시 도 4를 참조하면, 상기 단계(416) 수행 후, 제1 페이지에 대하여 프로그램 동작을 계속 수행한다(단계 418).
상기 프로그램 시작 펄스만으로는 프로그램이 완료되지 않을 것이므로, 스텝전압(Vstep)만큼 프로그램 전압을 증가시켜, 프로그램 동작을 반복 수행한다.
다음으로, 상기 프로그램 동작에 대하여 검증 동작을 수행한다(단계 420).
상기 단계(412)의 검증동작과 마찬가지로 프로그램 대상 셀들이 검증전압이상으로 모두 프로그램되었는지 여부를 확인한다.
검증결과 검증전압이상으로 프로그램되지 않은 셀들이 있는 경우에는 프로그램 전압을 스텝전압만큼 증가시켜(단계 424), 프로그램 동작을 반복수행한다.
상기 검증결과 프로그램 대상셀들이 모두 검증전압이상으로 프로그램된 경우에는 제2 페이지에 대한 프로그램 동작을 수행하기 전에, 제2 페이지에 대한 프로 그램 시작전압을 설정한다(단계 426).
먼저 상기 제1 페이지와 제2 페이지의 관계를 살펴보면 소거 동작의 단위가 되는 메모리 셀 블록에 공통적으로 포함되는 것으로, 소거 동작횟수가 동일하다. 또한 각각의 페이지는 낸드(NAND)형 불휘발성 메모리 장치의 특성에 따라 프로그램 동작의 단위가 된다. 따라서 제1 페이지와 제2 페이지의 실질적인 프로그램/소거 동작 횟수는 동일한 것으로 볼 수 있으며, 프로그램/소거 동작 횟수에 따른 셀의 특성도 대체적으로 같다고 볼 수 있다. 따라서 상기 단계(416)에서 측정한 제1 페이지의 특성을 근거로 제2 페이지의 프로그램 시작 펄스를 설정한다.
제2 페이지에 대한 프로그램 시작전압은 제1 페이지에 대한 프로그램 시작전압에 상기 검증전압과 최고문턱전압의 차이를 더한 값으로 설정한다.
즉, 다음과 같은 수학식에 의하여 결정된다.
제2 페이지에 대한 프로그램 시작전압 = 제1 페이지에 대한 프로그램 시작전압 + (검증전압 - 최고문턱전압)
도 5의 (a)에서와 같이 프로그램/소거 동작 횟수가 작아 최고 문턱전압이 검증전압보다 작은 경우에는 상기 제2 페이지에 대한 프로그램 시작전압은 제1 페이지에대한 프로그램 시작전압보다 커진다. 그에 따라 프로그램/소거 동작 횟수가 작은 초기에는 더미 프로그램 펄스보다 증가된 프로그램 시작전압에 따라 ISPP 프로그램 동작이 수행된다.
도 5의 (b)에서와 같이 프로그램/소거 동작 횟수가 커서 최고 문턱전압이 검증전압보다 큰 경우에는 상기 제2 페이지에 대한 프로그램 시작전압은 제1 페이지 에대한 프로그램 시작전압보다 작아진다. 그에 따라 프로그램/소거 동작 횟수가 커지면 더미 프로그램 펄스와 같이 낮은 프로그램 시작전압에 따라 ISPP 프로그램 동작이 수행된다.
다음으로, 상기 설정된 프로그램 시작전압에 따라 제2 페이지에 대한 프로그램 동작을 수행한다(단계 430).
제2 페이지에 대한 프로그램 동작 역시 상기 설명한 단계들을 수행하여 제1+2 페이지에 대한 프로그램 시작전압을 설정한다. 이와 같은 동작을 반복하여 동일 메모리 셀 블록내에 포함된 각 페이지에 대한 프로그램 동작을 완료한다.
이와 같은 동작에 따라 프로그램 시작전압을 가변적으로 설정할 수 있다. 특히 프로그램/소거 동작 횟수가 작은 초기 동작시에는 프로그램 시작전압을 상대적으로 크게 설정하여 프로그램 속도가 느린 셀의 특성을 보상할 수 있다. 또한, 프로그램/소거 동작 횟수가 큰 후기 동작시에는 프로그램 시작전압을 상대적으로 작게 설정하여 프로그램 속도가 빠른 셀의 특성을 보상할 수 있다.
도 1은 본원 발명이 적용되는 불휘발성 메모리 장치의 전체 구성을 도시한 도면이다.
도 2는 통상적인 불휘발성 메모리 장치의 프로그램/소거 동작횟수의 증가에 따른 문턱전압 변화특성을 도시한 그래프이다.
도 3은 통상적으로 사용되는 불휘발성 메모리 장치의 프로그램 방법의 개념을 설명하기 위한 도면이다.
도 4는 본원 발명의 일 실시예에 따른 불휘발성 메모리 장치의 프로그램 방법을 도시한 순서도이다.
도 5는 본원 발명의 일 실시예에 따른 불휘발성 메모리 장치의 프로그램 방법에서 최고 문턱 전압값을 측정하는 방법의 개념을 도시한 도면이다.

Claims (8)

  1. 제1 페이지에 대하여 프로그램 펄스를 인가하여 프로그램 동작을 수행하는 단계와,
    검증전압 이상으로 프로그램된 셀이 있는지를 판단하는 검증 동작을 수행하는 단계와,
    상기 프로그램 동작이 수행된 메모리 셀들의 문턱 전압 중 최고 문턱 전압 값을 측정하는 단계와,
    상기 제1 페이지에 대하여 프로그램 동작 및 검증 동작을 반복 수행하여 프로그램 동작을 완료시키는 단계와,
    제1 페이지에 대한 프로그램 시작전압에 상기 검증전압과 상기 최고 문턱 전압 값의 차이를 합하여 제2 페이지에 대한 프로그램 시작전압으로 설정하는 단계와,
    상기 설정된 제2 페이지에 대한 프로그램 시작전압에 따라 제2 페이지에 대한 프로그램 동작을 수행하는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
  2. 제1항에 있어서, 상기 프로그램 동작이 수행된 메모리 셀들의 문턱 전압 중 최고 문턱 전압 값을 측정하는 단계는
    상기 프로그램 동작을 수행한 메모리 셀들 중 검증전압이상으로 프로그램된 셀이 없는 경우 상기 검증전압을 감소시켜 검증 동작을 수행하는 단계와,
    상기 감소된 검증전압 이상으로 프로그램된 셀이 검출될 때까지 상기 검증전압을 감소시켜 검증 동작을 수행하는 단계를 반복수행하는 단계와,
    상기 감소된 검증전압 이상으로 프로그램된 셀이 검출된 경우 해당 시점에 인가된 검증 전압을 상기 최고 문턱 전압으로 설정하는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
  3. 제1항에 있어서, 상기 프로그램 동작이 수행된 메모리 셀들의 문턱 전압 중 최고 문턱 전압 값을 측정하는 단계는
    상기 프로그램 동작을 수행한 메모리 셀들 중 검증전압이상으로 프로그램된 셀이 있는 경우 검증전압을 증가시켜 검증 동작을 수행하는 단계와,
    상기 증가된 검증전압이상으로 프로그램된 셀이 검출되지 않을 때까지 상기 검증전압을 증가시켜 검증 동작을 수행하는 단계를 반복수행하는 단계와,
    상기 증가된 검증전압이상으로 프로그램된 셀이 검출되지 않은 경우 해당 시점의 검증 전압이전에 인가된 검증 전압을 상기 최고 문턱 전압으로 설정하는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
  4. 제1항에 있어서, 상기 제1 페이지에 대한 프로그램 시작전압에 검증전압과 상기 최고 문턱 전압 값의 차이를 합하여 제2 페이지에 대한 프로그램 시작전압으로 설정하는 단계는
    상기 검증 전압이 상기 최고 문턱 전압 값보다 큰 경우 상기 제2 페이지에 대한 프로그램 시작전압은 상기 제1 페이지에 대한 프로그램 시작전압보다 증가되도록 설정되는 단계와,
    상기 검증 전압이 상기 최고 문턱 전압 값보다 작은 경우 상기 제2 페이지에 대한 프로그램 시작전압은 상기 제1 페이지에 대한 프로그램 시작전압보다 감소되도록 설정되는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
  5. 프로그램/소거 동작 횟수 증가에 따른 프로그램 속도 증가 특성을 보상하는 더미 프로그램 펄스 인가 방식의 불휘발성 메모리 장치의 프로그램 방법에 있어서,
    제1 페이지에 대하여 프로그램 펄스를 인가하여 프로그램 동작을 수행하는 단계와,
    검증전압 이상으로 프로그램된 셀이 있는지를 판단하는 검증 동작을 수행하는 단계와,
    상기 검증전압을 기준으로 상기 프로그램 동작 수행이 수행된 메모리 셀 들의 문턱 전압 중 최고 문턱 전압 값을 측정하는 단계와,
    제1 페이지에 대하여 프로그램 동작 및 검증 동작을 반복 수행하여 프로그램 동작을 완료시키는 단계와,
    제1 페이지에 대한 프로그램 시작전압에 상기 검증전압과 상기 최고 문턱 전압 값의 차이를 합하여 제2 페이지에 대한 프로그램 시작전압으로 설정하는 단계 와,
    상기 설정된 제2 페이지에 대한 프로그램 시작전압에 따라 제2 페이지에 대한 프로그램 동작을 수행하는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
  6. 제5항에 있어서, 상기 검증전압을 기준으로 상기 프로그램 동작 수행이 수행된 메모리 셀 들의 문턱 전압 중 최고 문턱 전압 값을 측정하는 단계는
    상기 프로그램 동작을 수행한 메모리 셀들 중 검증전압이상으로 프로그램된 셀이 없는 경우 상기 검증전압을 감소시켜 검증 동작을 수행하는 단계와,
    상기 감소된 검증전압 이상으로 프로그램된 셀이 검출될 때까지 상기 검증전압을 감소시켜 검증 동작을 수행하는 단계를 반복수행하는 단계와,
    상기 감소된 검증전압 이상으로 프로그램된 셀이 검출된 경우 해당 시점에 인가된 검증 전압을 상기 최고 문턱 전압으로 설정하는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
  7. 제5항에 있어서, 상기 검증전압을 기준으로 상기 프로그램 동작 수행이 수행된 메모리 셀 들의 문턱 전압 중 최고 문턱 전압 값을 측정하는 단계는
    상기 프로그램 동작을 수행한 메모리 셀들 중 검증전압이상으로 프로그램된 셀이 있는 경우 검증전압을 증가시켜 검증 동작을 수행하는 단계와,
    상기 증가된 검증전압이상으로 프로그램된 셀이 검출되지 않을 때까지 상기 검증전압을 증가시켜 검증 동작을 수행하는 단계를 반복수행하는 단계와,
    상기 증가된 검증전압이상으로 프로그램된 셀이 검출되지 않은 경우 해당 시점의 검증 전압이전에 인가된 검증 전압을 상기 최고 문턱 전압으로 설정하는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
  8. 제5항에 있어서, 상기 제1 페이지에 대한 프로그램 시작전압에 검증전압과 상기 최고 문턱 전압 값의 차이를 합하여 제2 페이지에 대한 프로그램 시작전압으로 설정하는 단계는
    상기 검증 전압이 상기 최고 문턱 전압 값보다 큰 경우 상기 제2 페이지에 대한 프로그램 시작전압은 상기 제1 페이지에 대한 프로그램 시작전압보다 증가되도록 설정되는 단계와,
    상기 검증 전압이 상기 최고 문턱 전압 값보다 작은 경우 상기 제2 페이지에 대한 프로그램 시작전압은 상기 제1 페이지에 대한 프로그램 시작전압보다 감소되도록 설정되는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 프로그램 방법.
KR1020090005071A 2009-01-21 2009-01-21 불휘발성 메모리 장치의 프로그램 방법 KR100996108B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020090005071A KR100996108B1 (ko) 2009-01-21 2009-01-21 불휘발성 메모리 장치의 프로그램 방법
US12/471,546 US7881115B2 (en) 2009-01-21 2009-05-26 Method of programming nonvolatile memory device
CN200910142496A CN101783177A (zh) 2009-01-21 2009-06-18 对非易失性存储设备进行编程的方法
JP2009146421A JP2010170643A (ja) 2009-01-21 2009-06-19 不揮発性メモリ装置のプログラム方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090005071A KR100996108B1 (ko) 2009-01-21 2009-01-21 불휘발성 메모리 장치의 프로그램 방법

Publications (2)

Publication Number Publication Date
KR20100085659A true KR20100085659A (ko) 2010-07-29
KR100996108B1 KR100996108B1 (ko) 2010-11-22

Family

ID=42336850

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090005071A KR100996108B1 (ko) 2009-01-21 2009-01-21 불휘발성 메모리 장치의 프로그램 방법

Country Status (4)

Country Link
US (1) US7881115B2 (ko)
JP (1) JP2010170643A (ko)
KR (1) KR100996108B1 (ko)
CN (1) CN101783177A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170085774A (ko) * 2016-01-15 2017-07-25 삼성전자주식회사 프로그램 전압을 보정하는 플래시 메모리 장치, 3차원 메모리 장치, 메모리 시스템 및 그의 프로그램 방법

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101616099B1 (ko) * 2009-12-03 2016-04-27 삼성전자주식회사 플래시 메모리 장치 및 그것의 프로그램 방법
KR101678888B1 (ko) * 2010-08-06 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치의 데이터 판독 방법
KR20120092911A (ko) * 2011-02-14 2012-08-22 에스케이하이닉스 주식회사 반도체 메모리 장치 및 데이터 소거 방법
TWI471862B (zh) * 2011-08-19 2015-02-01 Silicon Motion Inc 快閃記憶體控制器
KR102090589B1 (ko) 2013-01-14 2020-03-18 삼성전자주식회사 비휘발성 메모리 장치의 데이터 저장 방법 및 비휘발성 메모리 장치의 테스트 방법
US10249382B2 (en) * 2017-08-22 2019-04-02 Sandisk Technologies Llc Determination of fast to program word lines in non-volatile memory
CN110556144B (zh) * 2018-05-31 2021-04-06 旺宏电子股份有限公司 存储器装置的编程方法
KR20210118462A (ko) 2019-05-22 2021-09-30 양쯔 메모리 테크놀로지스 씨오., 엘티디. 다중 레벨 셀 nand 플래시 메모리 장치를 프로그램하는 방법 및 mlc nand 플래시 메모리 장치

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG47058A1 (en) * 1993-09-10 1998-03-20 Intel Corp Circuitry and method for selecting a drain programming voltage for a nonvolatile memory
JP3737525B2 (ja) * 1994-03-11 2006-01-18 株式会社東芝 半導体記憶装置
JPH10199263A (ja) * 1996-12-30 1998-07-31 Sony Corp 不揮発性半導体記憶装置
JP3110397B2 (ja) * 1998-09-30 2000-11-20 日本電気アイシーマイコンシステム株式会社 不揮発性半導体記憶装置の書き込み方法および記録媒体
JP2002319286A (ja) * 2001-04-19 2002-10-31 Hitachi Ltd 不揮発性記憶装置および記憶システム
US6621741B2 (en) * 2002-01-30 2003-09-16 Fujitsu Limited System for programming verification
JP4086583B2 (ja) * 2002-08-08 2008-05-14 シャープ株式会社 不揮発性半導体メモリ装置およびデータ書き込み制御方法
KR100521364B1 (ko) * 2002-11-18 2005-10-12 삼성전자주식회사 플레쉬 메모리 셀들의 프로그램 오판을 방지하고 균일한문턱 전압 산포를 가질 수 있는 플레쉬 메모리 장치 및 그프로그램 검증 방법
JP2005044454A (ja) * 2003-07-24 2005-02-17 Sony Corp 半導体記憶装置、半導体記憶装置の駆動制御方法
US7339834B2 (en) * 2005-06-03 2008-03-04 Sandisk Corporation Starting program voltage shift with cycling of non-volatile memory
EP1946323B1 (en) 2005-10-27 2011-07-27 SanDisk Corporation Method for programming of multi-state non-volatile memory using smart verify
JP2007272952A (ja) * 2006-03-30 2007-10-18 Renesas Technology Corp 半導体記憶装置
JP4819951B2 (ja) * 2006-09-12 2011-11-24 サンディスク コーポレイション 初期プログラミング電圧の線形推定のための不揮発性メモリおよび方法
KR100780773B1 (ko) * 2006-11-03 2007-11-30 주식회사 하이닉스반도체 플래시 메모리소자의 프로그램 시작 바이어스 설정방법 및이를 이용한 프로그램 방법
US8000150B2 (en) * 2007-06-19 2011-08-16 Samsung Electronics Co., Ltd. Method of programming memory device
KR100882206B1 (ko) * 2007-06-19 2009-02-06 삼성전자주식회사 비휘발성 메모리 장치 및 그 동작 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170085774A (ko) * 2016-01-15 2017-07-25 삼성전자주식회사 프로그램 전압을 보정하는 플래시 메모리 장치, 3차원 메모리 장치, 메모리 시스템 및 그의 프로그램 방법

Also Published As

Publication number Publication date
US20100182839A1 (en) 2010-07-22
JP2010170643A (ja) 2010-08-05
US7881115B2 (en) 2011-02-01
KR100996108B1 (ko) 2010-11-22
CN101783177A (zh) 2010-07-21

Similar Documents

Publication Publication Date Title
KR100996108B1 (ko) 불휘발성 메모리 장치의 프로그램 방법
US7969786B2 (en) Method of programming nonvolatile memory device
KR100953045B1 (ko) 불휘발성 메모리 장치의 프로그램 방법
US8630123B2 (en) Method of operating nonvolatile memory device
KR101184814B1 (ko) 불휘발성 메모리 장치 및 이의 프로그램 방법
KR100885782B1 (ko) 차지 트랩형 불휘발성 메모리 장치 및 그 프로그램 방법
KR100908533B1 (ko) 불휘발성 메모리 장치의 독출 방법
JP2009301616A (ja) 不揮発性半導体記憶装置
JP2009043390A (ja) 不揮発性メモリ装置のソフトプログラム方法
KR100965076B1 (ko) 불휘발성 메모리 장치의 프로그램 방법
EP3014453B1 (en) Operation management in a memory device
KR101099982B1 (ko) 불휘발성 메모리 장치의 동작 방법
KR100967010B1 (ko) 불휘발성 메모리 장치 및 그 프로그램 방법
KR20130142461A (ko) 불휘발성 메모리 장치의 소거 방법 및 소프트 프로그램 방법
KR20100027781A (ko) 불휘발성 메모리 장치의 소거 방법 및 그를 이용한 동작 방법
KR20100027784A (ko) 불휘발성 메모리 장치의 소거 방법 및 소프트 프로그램 방법
KR20090120683A (ko) 불휘발성 메모리 장치의 프로그램 방법 및 소거 방법
KR20100115111A (ko) 불휘발성 메모리 장치의 프로그램 방법
KR20100054467A (ko) 불휘발성 메모리 장치의 검증 방법

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20090121

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20100421

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20101022

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20101116

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20101116

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee