KR101003878B1 - 불휘발성 메모리 장치의 동작 방법 - Google Patents

불휘발성 메모리 장치의 동작 방법 Download PDF

Info

Publication number
KR101003878B1
KR101003878B1 KR1020090047820A KR20090047820A KR101003878B1 KR 101003878 B1 KR101003878 B1 KR 101003878B1 KR 1020090047820 A KR1020090047820 A KR 1020090047820A KR 20090047820 A KR20090047820 A KR 20090047820A KR 101003878 B1 KR101003878 B1 KR 101003878B1
Authority
KR
South Korea
Prior art keywords
memory block
program
level
page
voltage
Prior art date
Application number
KR1020090047820A
Other languages
English (en)
Other versions
KR20100129064A (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 KR1020090047820A priority Critical patent/KR101003878B1/ko
Priority to US12/650,740 priority patent/US8036042B2/en
Publication of KR20100129064A publication Critical patent/KR20100129064A/ko
Application granted granted Critical
Publication of KR101003878B1 publication Critical patent/KR101003878B1/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/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed 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
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • G11C2211/5621Multilevel programming verification

Landscapes

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

Abstract

본 발명은 프로그램 전압의 레벨을 제1레벨로 설정하는 초기화 동작을 실시하는 단계, 상기 프로그램 전압을 상기 제1레벨부터 상승시키면서 제1메모리 블록의 제1페이지에 포함된 메모리 셀들의 프로그램 동작 및 검증 동작을 실시하는 단계, 상기 검증 동작에서 검증전압보다 문턱전압이 높은 메모리 셀이 검출될 때 상기 제1페이지로 인가된 프로그램 전압의 레벨인 제2레벨을 저장하는 단계, 상기 프로그램 전압을 상기 제2레벨부터 상승시키면서 상기 제1메모리 블록의 제2페이지부터 마지막 페이지까지 프로그램 동작 및 검증동작을 각각 실시하는 단계 및 상기 제1메모리 블록의 프로그램 동작이 완료된 후, 제2 메모리 블록에 포함된 페이지의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 초기화 동작을 실시하는 단계를 포함한다.
프로그램, 블라인드, 멀티 레벨 셀, 메모리, 불휘발성, 블록 어드레스.

Description

불휘발성 메모리 장치의 동작 방법 {Operation method of nonvolaile memory device}
본 발명은 불휘발성 메모리 장치의 동작 방법에 관한 것이다.
최근 들어 전기적으로 프로그램(program)과 소거(erase)가 가능하고, 일정 주기로 데이터를 재작성해야하는 리프레시(refresh) 기능이 필요 없는 불휘발성 메모리 소자에 대한 수요가 증가하고 있다.
불휘발성 메모리 셀의 프로그램 동작시에는 프로그램 대상 셀이 검증 전압이상으로 프로그램되었는지 여부를 확인하는 검증동작을 수행하게 된다. 싱글 레벨 셀(Single Level Cell, SLC) 프로그램 방식으로 프로그램 동작을 실시하면 서로 다른 두 상태의 셀들만이 존재하므로 검증 전압은 하나이지만, 멀티 레벨 셀(Multi Level Cell, MLC) 프로그램 방식으로 프로그램 동작을 실시하면 여러 상태의 셀들이 하나의 페이지에 존재하게 되므로 검증 전압도 복수가 된다. 예를 들어 2비트 멀티 레벨 셀 프로그램 방식으로 프로그램 동작을 실시하면 상위 비트(MSB) 프로그 램 동작을 수행하는 경우에는 세 가지 검증 전압을 기준으로 검증동작을 수행하게 된다. 이러한 경우, ISPP(Incremental step pulse program) 프로그램 방식에 따르면, 한 번의 펄스가 인가된 후 세 번의 검증 동작을 수행하게 될 필요가 있다.
이처럼 멀티 레벨 셀 프로그램 방식으로 프로그램 동작을 실시하는 경우, 다수의 문턱전압 분포를 갖기 때문에 셀들의 문턱전압 분포 특성을 좋게 하기 위한 기술이 필요하다. 이외에도 ISPP 프로그램 방식에서 한 번의 펄스가 인가된 후에 다수의 검증동작을 실시하는 것은 비효율적이기 때문에 이를 개선하기 위한 방안이 필요하다.
본 발명은 불휘발성 메모리 장치의 프로그램 동작 및 검증 동작을 실시함에 있어서, 동작효율을 개선한 동작 방법을 제공하는데 그 목적이 있다.
이와 같은 목적을 달성하기 위한 본 발명은 프로그램 전압의 레벨을 제1레벨로 설정하는 초기화 동작을 실시하는 단계, 상기 프로그램 전압을 상기 제1레벨부터 상승시키면서 제1메모리 블록의 제1페이지에 포함된 메모리 셀들의 프로그램 동작 및 검증 동작을 실시하는 단계, 상기 검증 동작에서 검증전압보다 문턱전압이 높은 메모리 셀이 검출될 때 상기 제1페이지로 인가된 프로그램 전압의 레벨인 제2레벨을 저장하는 단계, 상기 프로그램 전압을 상기 제2레벨부터 상승시키면서 상기 제1메모리 블록의 제2페이지부터 마지막 페이지까지 프로그램 동작 및 검증동작을 각각 실시하는 단계 및 상기 제1메모리 블록의 프로그램 동작이 완료된 후, 제2 메모리 블록에 포함된 페이지의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 초기화 동작을 실시하는 단계를 포함한다.
상기 제1메모리 블록의 프로그램 동작이 완료된 후, 제2 메모리 블록에 포함된 페이지의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 초기화 동작을 실시하는 단계 후에, 상기 프로그램 전압을 상기 제1레벨부터 상승시키면서 상기 제2메모리 블록에 포함된 페이지의 프로그램 동작 및 검증 동작을 실시하는 단계를 더 포함할 수 있다.
상기 제1메모리 블록의 프로그램 동작이 완료된 후, 제2 메모리 블록에 포함된 페이지의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 초기화 동작을 실시하는 단계는, 상기 제1메모리 블록의 프로그램 동작 완료여부를 확인하는 단계, 상기 제1메모리 블록의 프로그램이 완료되었으면, 상기 제2메모리 블록의 프로그램 동작 진행여부를 확인하는 단계 및 상기 제2메모리 블록의 프로그램 동작이 진행되면, 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 단계를 포함할 수 있다.
상기 제1메모리 블록의 프로그램 동작이 완료된 후, 제2 메모리 블록에 포함된 페이지의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 초기화 동작을 실시하는 단계는, 이전 페이지의 메모리 블록 어드레스를 로딩하는 단계, 현재 페이지의 메모리 블록 어드레스를 로딩하는 단계, 상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스를 비교하는 단계 및 상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스가 상이하면 상기 제1메모리 블록의 프로그램 동작을 완료하고, 상기 제2메모리 블록의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 단계를 포함할 수 있다.
상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스가 동일하면 상기 제1메모리 블록의 프로그램 동작을 계속 진행하는 단계를 더 포함할 수 있다.
상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스를 비교하는 단계는, 상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스와의 차를 구하는 서브트랙트(subtract) 연산을 수행하는 단계와, 상기 서브트랙트 연산 결과에 따라 플래그를 생성하는 단계를 포함할 수 있다.
상기 플래그는 상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스의 동일 여부를 나타내는 것일 수 있다.
상기 플래그가 상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스가 상이한 것임을 나타내는 플래그이면, 상기 제1메모리 블록의 프로그램 동작을 완료하고, 상기 제2메모리 블록의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 단계를 더 포함할 수 있다.
상기 플래그가 상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스가 동일한 것임을 나타내는 플래그이면, 상기 제1메모리 블록의 프로그램 동작을 계속 진행하는 단계를 더 포함할 수 있다.
본 발명에 의하면 불휘발성 메모리 장치에서 프로그램 동작시에 메모리 블록이 변경되면 프로그램 전압을 초기화시킴으로써, 전체 프로그램 동작 시간을 단축시킬 수 있는 효과가 있다. 특히, 멀티 레벨 셀 프로그램 방식에서 블라인드 검증 동작이 실시될 때 오버 프로그램 현상을 방지하여 전체 프로그램 동작 시간을 효율 적으로 단축시킬 수 있는 효과가 있다.
이하, 첨부된 도면을 참조해서 본 발명의 실시예를 상세히 설명하면 다음과 같다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법을 설명하기 위한 도면이다.
하위 비트 프로그램(Least Significant Bit Program, LSB PGM) 동작에서는 프로그램 동작에 의하여 서로 다른 두 개의 셀 분포가 나타난다. 즉, 검증전압(LPV1) 이상으로 프로그램된 셀의 문턱전압 분포를 제2상태라 하고, 그렇지 않은 셀의 문턱전압 분포를 제1상태라 한다.
이렇게 하위비트 프로그램 동작을 수행한 상태에서 상위 비트 프로그램(Most Significant Bit Program, MSB PGM) 동작을 수행하게 된다. 상위 비트 프로그램 동작에서 의하여 서로 다른 네 개의 셀 문턱전압 분포(제3 내지 제6 상태)가 나타난다. 이때, 각 분포별로 검증 전압이 상이한바, 낮은 순서부터 정렬하면, 제1 검증전압(MPV1), 제2 검증전압(MPV2), 제3 검증전압(MPV3)을 들 수 있다. 즉, 제3 검 증전압(MPV3)이상으로 프로그램된 상태를 제6 상태, 제3 검증전압(MPV3)보다 낮으나 제2 검증전압(MPV2)이상으로 프로그램된 상태를 제5 상태, 제2 검증전압(MPV2)보다 낮으나 제1 검증전압(MPV1)이상으로 프로그램된 상태를 제4 상태, 제1 검증전압(MPV1)보다 낮게 프로그램된 상태를 제3 상태라 한다. 또한, 제4 상태로 프로그램하고자 하는 셀들을 제1 검증 대상 셀, 제5 상태로 프로그램하고자 하는 셀들을 제2 검증 대상 셀, 제6 상태로 프로그램하고자 하는 셀들을 제3 검증 대상 셀로 정의한다.
이와 같이 상위비트 프로그램 동작에서는 하위비트 프로그램 동작에 비하여 더 많은 검증전압을 기준으로 검증동작을 수행하여야 한다.
도 2는 불휘발성 메모리 장치의 검증 방법 중 블라인드 검증 방법의 개념을 설명하기 위한 도면이다.
블라인드(blind) 검증 방법은 MLC 프로그램 방법에 적용된다. 도시된 검증 방법은 2비트 멀티 레벨 셀 프로그램시의 검증 방법이다. 총 세 개의 검증 전압(PV1, PV2, PV3)을 기준으로 검증 동작을 수행한다. 세 개의 검증 전압을 기준으로 각각 검증 동작을 수행하므로, 원칙적으로는 한번의 프로그램 펄스 인가 후 세 번의 검증 동작을 수행하여야 한다.
그러나, 앞서 언급한 바와 같이 프로그램 시작전압은 문턱전압이 제일 낮은 상태를 기준으로 설정되므로, 최초 프로그램 펄스 인가시에는 제2 검증 전압(PV2)및 제3 검증 전압(PV3)이상으로 프로그램되는 셀은 발생하지 않게 된다. 즉, 프로 그램 펄스가 어느 정도 인가된 후에야 제2 검증 전압, 제3 검증 전압 이상으로 프로그램 되는 셀들이 발생하게 된다. 따라서 검증 동작에서 소요되는 시간을 단축시키기 위해, 최초 몇 구간 동안은 프로그램 펄스 후 제1 검증 전압을 기준으로 한 검증 동작만을 수행한다. 이와 같이 검증 동작시에 일부 검증 동작을 생략한다 하여 블라인드(blind) 검증 방법이라 한다. 다만, 이와 같은 블라인드 검증 방법의 개념에 더하여, 앞서 설명한 프로그램/소거 검증 횟수에 따른 프로그램 속도 변화를 고려한 프로그램 펄스 인가방법을 적용할 경우 다음과 같은 문제점이 발생한다.
도 3은 불휘발성 메모리 장치의 상위 비트 프로그램에 대한 프로그램/검증방법을 설명하기 위한 도면이다.
제1 프로그램/검증방법에 따르면, 앞서 설명한 블라인드 검증 방법에 따라 최초 프로그램 전압인가 후에 제1 검증전압(MPV1)을 기준으로 하는 검증동작만을 실시한다. 원칙적으로는 제2 검증전압(MPV2), 제3 검증전압(MPV3) 등을 기준으로 하는 검증동작도 같이 실시하여야 하나, 앞서 설명한 블라인드 검증 방법에 따라 제1 검증전압(MPV1)을 기준으로 하는 검증동작만 실시한다.
프로그램 펄스 인가 및 제1 검증전압(MPV1)을 기준으로 하는 검증동작만을 3회 정도 실시한 후에, 제1 검증전압(MPV1)뿐만 아니라 제2 검증전압(MPV2)을 기준으로 하는 검증동작도 실시한다. 또한, 제1 및 제2 검증전압(MPV1, MPV2)을 기준으로 하는 검증동작을 3 회 정도 실시한 후에 제3 검증전압(MPV3)을 기준으로 한 검증동작을 실시한다. 한편, 제1 검증전압(MPV1)만을 기준으로 하는 검증동작이 실시 되는 횟수, 제1 및 제2 검증전압(MPV1, MPV2)만을 기준으로 하는 검증동작이 실시되는 횟수는 미리 설정되어 있다.
다음으로 제2 프로그램/검증방법에 대하여 살펴보자. 제2 프로그램/검증 방법은 프로그램/소거 횟수의 증가에 따라 프로그램 속도가 증가하는 경향을 보상하기 위하여 프로그램 시작 펄스를 낮춰서 인가하는 방식이다. 즉, 도시된 바와 같이 제1 프로그램/검증 방법에 비하여 프로그램 시작 펄스를 낮춰서 인가하게 된다. 다만, 이는 프로그램/소거 횟수에 따라 문제점을 나타낼 수 있다.
즉, 프로그램/소거 횟수가 높은 경우에는 프로그램 속도가 빠르기 때문에 낮은 프로그램 펄스의 인가에도 문턱전압의 변화량이 크다. 따라서 낮은 프로그램 전압의 인가시에도 검증동작을 수행할 필요가 있다. 또한, 문턱전압이 일부 상승한 시점이후(A 이후)에는 제1 및 제2 검증전압(MPV1, MPV2)을 기준으로 한 검증동작을 실시할 필요가 있다.
그러나 프로그램/소거 횟수가 작은 경우에는 프로그램 속도가 늦기 때문에 낮은 프로그램 펄스의 인가에 대한 문턱전압의 변화량이 작은 편이다. 따라서 낮은 프로그램 전압의 인가시에 검증동작을 수행해야할 필요는 적어진다. 또한, 문턱전압의 상승 폭이 작기 때문에, 프로그램 펄스가 어느 정도 인가된 이후(A 이후)에도 제1 검증전압(MPV1)을 기준으로 한 검증동작 이외에 제2 검증전압(MPV2)을 기준으로 한 검증동작까지 실시해야할 필요는 적어진다.
도 4는 불휘발성 메모리 장치의 프로그램/검증방법을 설명하기 위한 도면이 다.
도 4를 참조하면, 프로그램/소거 횟수 증가에 따른 프로그램 속도의 상승 경향을 반영하여 최초 프로그램 시작전압을 낮게 인가한다. 다만, 이러한 상태에서 앞서 설명한 블라인드(blind) 검증 방법을 단편적으로 적용할 경우, 프로그램/소거 횟수가 낮은 초기 동작에서는 제1 검증전압(MPV1)을 기준으로 하는 검증 동작 외에 불필요하게 제2 검증전압(MPV2)을 기준으로 하는 검증 동작을 실시하게 되는 경우가 존재한다.
이를 방지하기 위하여 제1 검증전압(MPV1) 이상으로 프로그램된 셀이 검출된 경우에 한하여 블라인드 검증방법을 적용한다.
즉, 도시된 바와 같이 제1 검증전압(MPV1) 이상으로 프로그램된 셀이 검출되기 전까지는 제1 검증전압(MPV1)을 기준으로 하는 제1 검증동작과, ISPP 프로그램 동작을 번갈아서 수행한다. 그리고 제1 검증전압(MPV1) 이상으로 프로그램된 셀이 검출된 직후에는 블라인드 검증방법을 수행한다.
이상에서 설명한 블라인드 검증방법에 추가적으로 다양한 기법이 도입되고 있다. 먼저, 블라인드 검증 방법에서 프로그램 전압을 조정하는 방식이 있는데, 이는 제1페이지에 대한 프로그램 동작 중에 제1검증전압(MPV1) 이상으로 프로그램된 셀이 검출되면, 그 때의 프로그램 전압 레벨을 제2페이지에 대한 프로그램 시작전압으로 설정하여 프로그램 동작을 실시하는 것이다. 이렇게 함으로써, 전체 프로그램 동작에 소요되는 시간(tPROG)을 줄일 수 있다.
한편, 프로그램/소거 횟수가 증가할수록 프로그램 속도가 빨라지기 때문에 일률적으로 프로그램 전압을 조정하게 되면 문제가 발생한다. 따라서, 프로그램 전압 조정 방식이 적용된 블라인드 검증 방법에서 옵션에서 정해진만큼 프로그램 시작전압의 레벨을 낮추는 방식이 도입되었다.
그러나, 이러한 방식도 프로그램 대상 메모리 블록이 변경되는 경우 문제가 발생할 수 있다. 가령, 프로그램/소거 횟수가 적은 메모리 블록에 대한 프로그램 동작을 실시하여 프로그램 시작전압이 설정되었다고 하면, 프로그램/소거 횟수가 많은 다른 메모리 블록으로 변경하여 프로그램 동작이 실시될 때 동일한 프로그램 시작전압을 적용하면 높은 프로그램 시작전압레벨로 인하여 프로그램 금지 셀이 프로그램되는 오버프로그램 현상이 발생할 수 있다.
따라서, 본 발명에서는 메모리 블록이 변경될 때마다 프로그램 시작전압을 초기화시키는 방법을 제안하고자 한다.
도 5는 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 블록도이다.
도 5를 참조하면, 불휘발성 메모리 장치(100)는 메모리 셀 어레이(102), X-디코더(104), Y-디코더(106), 페이지 버퍼부(108), 고전압 발생부(110), IO 버퍼부(112), 어드레스 카운터(114), 외부 레지스터부(116), 제어부(120)를 포함한다.
메모리 셀 어레이(102)는 다수의 메모리 블록을 포함하여 이루어진다. 도 5에서 메모리 셀 어레이(102)는 1024개의 메모리 블록(B1, B2,...B1024)을 포함하고 있다. 또한, 각 메모리 블록은 n개의 페이지(P1, P2,...Pn)를 포함하고 있다.
제어부(120)는 불휘발성 메모리 장치의 전반적인 제어를 하며, IO 버퍼 부(112)를 통해 송수신되는 신호에 따라 프로그램 명령 신호, 소거 명령 신호 또는 독출 명령 신호 등을 발생시킨다.
고전압 발생부(110)는 제어부(120)의 프로그램 명령, 소거 명령 또는 독출 명령에 응답하여 바이어스 전압들을 발생시키고, 이를 X-디코더(104) 등에 공급한다. 본 발명에서 고전압 발생부(110)는 제어부(120)로부터 생성된 플래그 신호(F1)에 따라 바이어스 전압을 조절하여 X-디코더(104) 등에 공급할 수 있다.
X-디코더(104)는 로우(Row) 어드레스 신호에 응답하여 고전압 발생부(110)로부터 공급받은 바이어스 전압들을 메모리 셀 어레이(110)의 블록들 중 하나에 공급한다.
Y-디코더(106)는 컬럼(Column) 어드레스 신호에 응답하여, 페이지 버퍼부(108)에 데이터 신호를 공급한다.
페이지 버퍼부(108)는 IO 버퍼부(112) 및 Y-디코더(106)를 통하여 수신되는 데이터 신호를 저장하여 메모리 셀 어레이(102)의 블록들에 의해 공유되는 비트 라인들에 출력하는 복수의 페이지 버퍼들을 포함한다. 또한 각 페이지 버퍼들은 독출 동작에 따라 메모리 셀 어레이(102)로부터 독출한 데이터를 저장하였다가 Y-디코더(106), IO 버퍼부(112)를 통해 외부로 출력시킨다.
어드레스 카운터(114)는 메모리 블록 어드레스를 생성하여 출력하는 역할을 한다. 예를 들어, 어드레스 카운터(114)는 13비트의 메모리 블록 어드레스를 생성하여 제어부(120)로 출력할 수 있다.
외부 레지스터부(116)는 프로그램이 동작이 실시된 메모리 블록의 어드레스 를 저장하는 역할을 한다. 예를 들어, 외부 레지스터부(116)는 13비트의 메모리 블록 어드레스를 저장할 수 있다. 그리고, 외부 레지스터부(116)는 제어부(120)로부터 리셋(reset) 신호가 들어오기전까지 저장된 데이터를 유지하게 된다.
본 발명은 프로그램이 진행되는 메모리 블록이 변경될 때마다 프로그램 전압을 초기화시키게 된다. 이러한 동작에 관련된 불휘발성 메모리 소자의 구성요소를 중심으로 설명하면 다음과 같다.
도 6은 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 제어부(120), 어드레스 카운터(114), 외부 레지스터부(116)의 블록도이다.
도 6을 참조하면, 제어부(120)는 제1레지스터부(122), 제2레지스터부(124), 연산부(126)를 포함한다.
제1레지스터부(122)는 어드레스 카운터(114)로부터 입력된 메모리 블록 어드레스를 저장하는 역할을 한다.
제2레지스터부(124)는 연산부(126)에서 출력된 플래그(flag) 신호를 저장하는 역할을 한다. 제2레지스터부(124)는 고전압 발생부(110)에 플래그 신호를 출력하고, 고전압 발생부(110)는 플래그 신호에 따라 전압 바이어스를 조절하게 된다.
연산부(126)는 제1레지스터부(122)에 저장된 프로그램이 완료된 이전 페이지의 메모리 블록 어드레스와 프로그램이 진행될 현재 페이지의 메모리 블록 어드레스를 비교하여 플래그 신호(F1)를 생성한다. 본 발명의 일 실시예에서 연산부(126)는 서브트랙트(subtract) 연산을 이용하여 이전 페이지의 메모리 블록 어드레스와 현재 페이지의 메모리 블록 어드레스를 비교하여 플래그 신호(F1)를 생성할 수 있 다. 예를 들어, 연산부(126)는 이전 페이지의 메모리 블록 어드레스와 현재 페이지의 메모리 블록 어드레스를 서브트랙트 연산하여 0 또는 1의 플래그 신호(F1)를 생성할 수 있다.
도 7은 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 동작 방법을 보여주는 흐름도이다. 도 7의 흐름도를 설명하면서 도 5 및 도 6의 불휘발성 메모리 장치의 블록도를 참조하여 설명하기로 한다.
프로그램 전압의 레벨을 제1레벨로 설정하는 초기화 동작을 실시한다(S101). 여기서 제1레벨은 ISPP 프로그램 방식에서 프로그램/검증 동작시의 첫 루프에 인가되는 프로그램 전압의 레벨이다.
프로그램 전압을 제1레벨부터 상승시키면서 제1메모리 블록(B1)의 제1페이지(P1)에 포함된 메모리 셀들의 프로그램 동작 및 검증 동작을 실시한다(S103).
검증 동작에서 검증전압보다 문턱전압이 높은 메모리 셀이 검출되면(S105), 제1페이지(P1)로 인가된 프로그램 전압의 레벨인 제2레벨을 저장한다(S107). 예를 들어, 제2레벨은 제어부(120)의 내부 레지스터에 저장될 수 있다.
다음, 제1페이지(P1)에 대한 프로그램 동작이 완료되었는지 여부를 확인한다(S109). 제1페이지(P1)에 대한 프로그램 동작이 완료되지 않은 상태이면, 프로그램 전압 레벨을 상승시키면서(S121), S103 내지 S109 단계를 반복한다.
제1페이지(P1)에 대한 프로그램 동작이 완료되면, 프로그램 전압을 제2레벨부터 상승시키면서 제1메모리 블록(B1)의 제2페이지(P2)부터 나머지 페이지까지 프 로그램 동작 및 검증동작을 각각 실시한다(S111).
그리고, 제1메모리 블록(B1)의 프로그램 동작이 완료되었는지 여부를 확인한다(S113).
제1메모리 블록(B1)의 프로그램 동작이 완료되면, 제2메모리 블록(B2)의 프로그램 진행 여부를 확인한다(S115).
제2메모리 블록(B2)의 프로그램이 진행되면, 제2 메모리 블록(B2)에 포함된 페이지의 프로그램 동작을 위하여 프로그램 전압의 레벨을 제1레벨로 설정하는 초기화 동작을 실시한다(S117). S117 단계에 대한 상세한 설명은 후술하기로 한다.
그리고, 프로그램 전압을 제1레벨부터 상승시키면서 제2메모리 블록(B2)에 포함된 첫번째 페이지의 프로그램 동작 및 검증동작을 ISPP 방식으로 실시한다(S119). 제2메모리 블록(B2)에 대한 프로그램 동작 및 검증동작은 제1메모리 블록(B1)에 대한 프로그램 동작 및 검증동작과 동일하다. 따라서, 제2메모리 블록(B2)에 대한 프로그램 동작 및 검증동작은 제1메모리 블록(B1)에 대한 프로그램 동작 및 검증동작에 대한 과정인 S101 내지 S121 단계와 같은 방식으로 진행된다.
이제 S117 단계를 도면을 참조하여 상세히 설명하면 다음과 같다.
도 8은 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 동작을 설명하기 위한 흐름도이다.
도 8을 참조하면, S117 단계는 다음과 같이 과정을 포함한다.
이전 페이지의 메모리 블록 어드레스를 제1레지스터부(122)에 로딩한 다(S201). 여기서 이전 페이지의 메모리 블록 어드레스란 프로그램 동작이 실시된 페이지의 메모리 블록 어드레스를 의미한다. 예를 들어, 도 10에서 제1메모리 블록(B1)의 어드레스가 제1레지스터부(122)에 로딩될 수 있다.
현재 페이지의 메모리 블록 어드레스를 제1레지스터부(122)에 로딩한다(S203). 여기서 현재 페이지의 메모리 블록 어드레스란 프로그램 동작을 실시할 현재 페이지의 메모리 블록 어드레스를 의미한다. 예를 들어, 도 10에서 제1메모리 블록(B1) 또는 제2메모리 블록(B2)의 어드레스가 제1레지스터부(122)에 로딩될 수 있다.
연산부(126)에서는 이전 페이지의 메모리 블록 어드레스와 현재 페이지의 메모리 블록 어드레스를 비교하기 위하여 서브트랙트(subtract) 연산을 수행한다(S205).
연산부(126)에서는 서브트랙트 연산 결과에 따라 플래그 신호(F1)를 생성한다(S207). 생성된 플래그 신호(F1)는 제2레지스터(124)에 저장되어 고전압 발생부(110)로 출력된다. 본 발명에서 플래그 신호(F1)는 이전 페이지의 메모리 블록 어드레스와 현재 페이지의 메모리 블록 어드레스의 동일 여부를 나타낸다. 예를 들어, 연산부(126)는 이전 페이지의 메모리 블록 어드레스와 현재 페이지의 메모리 블록 어드레스가 동일하면 0인 플래그 신호(F1)를 생성하고, 그렇지 않으면 1인 플래그 신호(F1)를 생성한다.
플래그 신호(F1)가 1이면(S209), 제1메모리 블록(B1)의 프로그램 동작이 완료되고, 새로운 제2메모리 블록(B2)의 프로그램 동작이 시작되는 것을 의미한다. 따라서, 제2메모리 블록(B2)의 프로그램 동작을 위하여 프로그램 전압의 레벨을 제1레벨로 설정하는 초기화 동작을 실시한다(S213). 플래그 신호(F1)가 1이라는 것은 이전 페이지의 메모리 블록 어드레스와 현재 페이지의 메모리 블록 어드레스가 상이하다는 것을 의미한다. 즉, 제1메모리 블록(B1)의 프로그램 동작을 완료하고 제2메모리 블록(B2)으로 변경하여 프로그램 동작을 실시한다. 이에 따라 1인 플래그 신호(F1)를 수신한 고전압 발생부(110)는 프로그램 전압을 제1레벨로 초기화하여 X-디코더(104)에 공급하게 된다.
반면, 플래그 신호가 0이면(S209), 제1메모리 블록(B1)의 프로그램 동작을 계속 진행한다. 플래그 신호(F1)가 0이라는 것은 이전 페이지의 메모리 블록 어드레스와 현재 페이지의 메모리 블록 어드레스가 동일하다는 것을 의미한다. 즉, 제1메모리 블록(B1) 내에서 페이지들의 프로그램 동작을 계속 실시한다.
이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 다양한 변화와 수정을 가할 수 있음을 이해할 것이다.
도 1은 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법을 설명하기 위한 도면이다.
도 2는 불휘발성 메모리 장치의 검증 방법 중 블라인드 검증 방법의 개념을 설명하기 위한 도면이다.
도 3은 불휘발성 메모리 장치의 상위 비트 프로그램에 대한 프로그램/검증방법을 설명하기 위한 도면이다.
도 4는 불휘발성 메모리 장치의 프로그램/검증방법을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 블록도이다.
도 6은 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 제어부, 어드레스 카운터, 외부 레지스터부의 블록도이다.
도 7은 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 동작 방법을 보여주는 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 동작 방법을 설명하기 위한 흐름도이다.
*도면의 주요 부분에 대한 부호의 설명*
102 메모리 셀 어레이 104 X-디코더부
106 Y-디코더부 108 페이지버퍼부
110 고전압 발생부 112 IO 버퍼부
114 어드레스 카운터 116 외부 레지스터부
120 제어부 122 제10레지스터부
124 제2레지스터부 126 연산부

Claims (9)

  1. 프로그램 전압의 레벨을 제1레벨로 설정하는 초기화 동작을 실시하는 단계;
    상기 프로그램 전압을 상기 제1레벨부터 상승시키면서 제1메모리 블록의 제1페이지에 포함된 메모리 셀들의 프로그램 동작 및 검증 동작을 실시하는 단계;
    상기 검증 동작에서 검증전압보다 문턱전압이 높은 메모리 셀이 검출될 때 상기 제1페이지로 인가된 프로그램 전압의 레벨인 제2레벨을 저장하는 단계;
    상기 프로그램 전압을 상기 제2레벨부터 상승시키면서 상기 제1메모리 블록의 제2페이지부터 마지막 페이지까지 프로그램 동작 및 검증동작을 각각 실시하는 단계; 및
    상기 제1메모리 블록의 프로그램 동작이 완료된 후, 제2 메모리 블록에 포함된 페이지의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 초기화 동작을 실시하는 단계를 포함하는 불휘발성 메모리 장치의 동작 방법.
  2. 제1항에 있어서,
    상기 제1메모리 블록의 프로그램 동작이 완료된 후, 제2 메모리 블록에 포함된 페이지의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 초기화 동작을 실시하는 단계 후에,
    상기 프로그램 전압을 상기 제1레벨부터 상승시키면서 상기 제2메모리 블록 에 포함된 페이지의 프로그램 동작 및 검증동작을 실시하는 단계
    를 더 포함하는 불휘발성 메모리 장치의 동작 방법.
  3. 제1항에 있어서,
    상기 제1메모리 블록의 프로그램 동작이 완료된 후, 제2 메모리 블록에 포함된 페이지의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 초기화 동작을 실시하는 단계는,
    상기 제1메모리 블록의 프로그램 동작 완료여부를 확인하는 단계;
    상기 제1메모리 블록의 프로그램이 완료되었으면, 상기 제2메모리 블록의 프로그램 동작 진행여부를 확인하는 단계; 및
    상기 제2메모리 블록의 프로그램 동작이 진행되면, 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 단계
    를 포함하는 불휘발성 메모리 장치의 동작 방법.
  4. 제1항에 있어서,
    상기 제1메모리 블록의 프로그램 동작이 완료된 후, 제2 메모리 블록에 포함된 페이지의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 초기화 동작을 실시하는 단계는,
    이전 페이지의 메모리 블록 어드레스를 로딩하는 단계;
    현재 페이지의 메모리 블록 어드레스를 로딩하는 단계;
    상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스를 비교하는 단계; 및
    상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스가 상이하면 상기 제1메모리 블록의 프로그램 동작을 완료하고, 상기 제2메모리 블록의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 단계
    를 포함하는 불휘발성 메모리 장치의 동작 방법.
  5. 제4항에 있어서,
    상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스가 동일하면 상기 제1메모리 블록의 프로그램 동작을 계속 진행하는 단계를 더 포함하는 불휘발성 메모리 장치의 동작 방법.
  6. 제4항에 있어서,
    상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스를 비교하는 단계는,
    상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스와의 차를 구하는 서브트랙트(subtract) 연산을 수행하는 단계와,
    상기 서브트랙트 연산 결과에 따라 플래그를 생성하는 단계
    를 포함하는 불휘발성 메모리 장치의 동작 방법.
  7. 제6항에 있어서,
    상기 플래그는 상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스의 동일 여부를 나타내는 것인 불휘발성 메모리 장치의 동작 방법.
  8. 제7항에 있어서,
    상기 플래그가 상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스가 상이한 것임을 나타내는 플래그이면, 상기 제1메모리 블록의 프로그램 동작을 완료하고, 상기 제2메모리 블록의 프로그램 동작을 위하여 상기 프로그램 전압의 레벨을 상기 제1레벨로 설정하는 단계를 더 포함하는 불휘발성 메모리 장치의 동작 방법.
  9. 제7항에 있어서,
    상기 플래그가 상기 이전 페이지의 메모리 블록 어드레스와 상기 현재 페이지의 메모리 블록 어드레스가 동일한 것임을 나타내는 플래그이면, 상기 제1메모리 블록의 프로그램 동작을 계속 진행하는 단계를 더 포함하는 불휘발성 메모리 장치의 동작 방법.
KR1020090047820A 2009-05-29 2009-05-29 불휘발성 메모리 장치의 동작 방법 KR101003878B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090047820A KR101003878B1 (ko) 2009-05-29 2009-05-29 불휘발성 메모리 장치의 동작 방법
US12/650,740 US8036042B2 (en) 2009-05-29 2009-12-31 Method of operating nonvolatile memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090047820A KR101003878B1 (ko) 2009-05-29 2009-05-29 불휘발성 메모리 장치의 동작 방법

Publications (2)

Publication Number Publication Date
KR20100129064A KR20100129064A (ko) 2010-12-08
KR101003878B1 true KR101003878B1 (ko) 2010-12-30

Family

ID=43220054

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090047820A KR101003878B1 (ko) 2009-05-29 2009-05-29 불휘발성 메모리 장치의 동작 방법

Country Status (2)

Country Link
US (1) US8036042B2 (ko)
KR (1) KR101003878B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8508992B2 (en) 2010-07-09 2013-08-13 SK Hynix Inc. Semiconductor memory device and method of operating the same
KR20120056113A (ko) * 2010-11-24 2012-06-01 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법, 그리고 불휘발성 메모리 장치를 포함하는 메모리 시스템
KR101211840B1 (ko) * 2010-12-30 2012-12-12 에스케이하이닉스 주식회사 반도체 메모리 장치의 프로그램 방법
US8681562B2 (en) 2011-01-10 2014-03-25 Micron Technology, Inc. Memories and methods of programming memories
KR20120121166A (ko) * 2011-04-26 2012-11-05 에스케이하이닉스 주식회사 반도체 장치 및 이의 동작 방법
KR102118979B1 (ko) * 2013-09-13 2020-06-05 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법
KR102498248B1 (ko) * 2016-02-04 2023-02-10 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그것의 동작 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090048130A (ko) 2007-11-09 2009-05-13 주식회사 하이닉스반도체 불휘발성 메모리 장치의 프로그램 방법
KR100923821B1 (ko) * 2007-12-24 2009-10-27 주식회사 하이닉스반도체 불휘발성 메모리 장치의 페이지 버퍼 및 그 프로그램 방법

Also Published As

Publication number Publication date
KR20100129064A (ko) 2010-12-08
US8036042B2 (en) 2011-10-11
US20100302864A1 (en) 2010-12-02

Similar Documents

Publication Publication Date Title
US8223555B2 (en) Multiple level program verify in a memory device
KR101222063B1 (ko) 불휘발성 메모리 장치 및 그 동작방법
KR101003878B1 (ko) 불휘발성 메모리 장치의 동작 방법
US7920420B2 (en) Multi bit flash memory device and method of programming the same
JP4912460B2 (ja) 不揮発性メモリの読み出し動作改善における個別サイズマージンのプログラムおよび選択状態時の補償による検知
EP1993101A2 (en) Measuring threshold voltage distribution in memory using an aggregate characteristic
US9183937B2 (en) Method and apparatus for the erase suspend operation
US8520435B2 (en) Nonvolatile memory device and method of operating the same
US8305816B2 (en) Method of controlling a memory cell of non-volatile memory device
TWI705443B (zh) 用於快閃記憶體之增量階躍脈衝編程之自適應方案
KR101212739B1 (ko) 비휘발성 메모리장치 및 이의 동작방법
JP4270898B2 (ja) 不揮発性半導体記憶装置
US9007840B2 (en) Semiconductor memory apparatus and program verification method
KR100880329B1 (ko) 플래시 메모리 소자 및 그 프로그램 방법
KR100861378B1 (ko) 플래시 메모리소자의 프로그램 방법
US8000154B2 (en) Non-volatile memory device and method of controlling a bulk voltage thereof
KR20070052403A (ko) 낸드 플래시 메모리의 프로그램 방법
KR20130008275A (ko) 반도체 메모리 장치 및 그 동작 방법
KR20080060799A (ko) 테스트 시간을 감소할 수 있는 멀티 레벨 셀 낸드 플래시메모리 장치 및 그것의 테스트 방법
CN112786094B (zh) 一种对存储装置执行操作的方法
KR20130035513A (ko) 비휘발성 메모리 장치
KR20150075887A (ko) 메모리 시스템 및 이의 동작 방법
KR20130069366A (ko) 불휘발성 반도체 메모리 장치 및 불휘발성 반도체 메모리 장치의 동작 조건 제어 방법
KR20110078750A (ko) 반도체 메모리 장치의 동작 방법

Legal Events

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

Payment date: 20131122

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141126

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151120

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161125

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171124

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181126

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20191125

Year of fee payment: 10