KR20130034919A - 반도체 장치 및 이의 동작 방법 - Google Patents

반도체 장치 및 이의 동작 방법 Download PDF

Info

Publication number
KR20130034919A
KR20130034919A KR1020110099086A KR20110099086A KR20130034919A KR 20130034919 A KR20130034919 A KR 20130034919A KR 1020110099086 A KR1020110099086 A KR 1020110099086A KR 20110099086 A KR20110099086 A KR 20110099086A KR 20130034919 A KR20130034919 A KR 20130034919A
Authority
KR
South Korea
Prior art keywords
memory cells
page
word line
odd
order memory
Prior art date
Application number
KR1020110099086A
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 KR1020110099086A priority Critical patent/KR20130034919A/ko
Priority to US13/619,122 priority patent/US20130083600A1/en
Priority to DE102012217730A priority patent/DE102012217730A1/de
Priority to TW101136029A priority patent/TW201324514A/zh
Priority to CN2012103757103A priority patent/CN103035292A/zh
Publication of KR20130034919A publication Critical patent/KR20130034919A/ko

Links

Images

Classifications

    • 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
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/04Arrangements for selecting an address in a digital store using a sequential addressing device, e.g. shift register, counter
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection

Landscapes

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

Abstract

본 발명은 메모리 셀 어레이에 포함된 다수의 메모리 셀 블록들 중 하나의 메모리 셀 블록을 선택하는 단계; 상기 선택된 메모리 셀 블록의 워드라인들 중 선택된 워드라인에 연결된 짝수차 메모리 셀들을 프로그램하는 단계; 상기 선택된 워드라인에 연결된 홀수차 메모리 셀들을 프로그램하는 단계; 상기 선택된 워드라인에 인접한 다음 워드라인에 연결된 홀수차 메모리 셀들을 프로그램하는 단계; 및 상기 다음 워드라인에 연결된 짝수차 메모리 셀들을 프로그램하는 단계를 포함하며, 상기 선택된 메모리 셀 블록의 모든 워드라인들에 연결된 선택된 메모리 셀들의 프로그램이 완료될 때까지 상기 프로그램하는 단계들을 반복하는 반도체 장치 및 이의 동작 방법으로 이루어진다.

Description

반도체 장치 및 이의 동작 방법{Semiconductor device and operation method thereof}
본 발명은 반도체 장치 및 이의 동작 방법에 관한 것으로, 특히 반도체 장치의 신뢰도를 향상시키기 위한 프로그램 방법에 관한 것이다.
반도체 장치는 데이터가 저장되는 다수의 메모리 셀 어레이를 포함한다. 최근들어 메모리 셀들의 개수가 증가하면서 반도체 장치의 집적도도 증가하고 있는데, 이로 인해 서로 인접한 메모리 셀들 간의 간섭(interference)이 발생하면서 반도체 장치의 신뢰도가 저하되는 문제가 발생하고 있다.
도 1은 종래 기술에 따른 프로그램 동작 시 인접한 메모리 셀들 간의 간섭을 설명하기 위한 도면이다.
도 1을 참조하면, 메모리 셀 어레이(10)는 다수의 셀 스트링들(STe 및 STo)이 포함된 메모리 셀 블록들을 포함한다. 설명의 편의를 위하여, 도 1에는 어느 하나의 메모리 셀 블록을 도시하였다. 메모리 셀 블록은 다수의 셀 스트링들(STe 및 STo)로 이루어지며, 각각의 셀 스트링들(STe 및 STo)은 서로 직렬로 연결된 다수의 메모리 셀들을 포함한다. 셀 스트링들(STe 및 STo) 중 짝수차 스트링들을 이븐 스트링(STe)이라 하고, 홀수차 스트링들을 오드 스트링(STo)이라 한다. 또한, 서로 다른 셀 스트링들(STe 및 STo)에 포함되고 동일한 워드라인에 연결된 메모리 셀들의 그룹을 페이지(page)라 하는데, 프로그램 동작은 이러한 페이지 단위(N-2, N-1, N, N+1, N+2, ...)로 순차적으로 수행한다.
프로그램 동작을 설명하면 다음과 같다.
제N-2 페이지의 짝수차 스트링들(STe)에 대한 프로그램 동작을 수행한 후, 동일한 제N-2 페이지의 홀수차 스트링들(STo)에 대한 프로그램 동작을 수행한다. 제N-2 페이지의 짝수차 및 홀수차 스트링들(STe 및 STo)에 대한 프로그램이 모두 완료되면, 다음 페이지인 제N-1 페이지의 짝수차 스트링들(STe)에 대한 프로그램 동작을 수행한 후, 동일한 제N-1 페이지의 홀수차 스트링들(STo)에 대한 프로그램 동작을 수행한다. 이러한 방식으로 프로그램을 실시하면, 모든 페이지들(N-2 내지 N+2)의 짝수차 스트링들(STe)에 대응되는 메모리 셀들이 먼저 프로그램된 이후에 홀수차 스트링들(STo)에 대응되는 메모리 셀들이 프로그램된다. 따라서, 짝수차 스트링들(STe)에 포함된 메모리 셀들은 이와 인접한 홀수차 스트링들(STo)에 포함된 메모리 셀들의 프로그램 동작시 'X축' 방향으로 간섭을 받으며, 다음 페이지에 대한 프로그램 동작시에는 'Y축' 방향으로 간섭을 받는다. 반면에, 홀수차 스트링들(STo)에 포함된 메모리 셀들은 다음 페이지에 대한 프로그램 동작시 'Y축' 방향으로만 간섭을 받고 'X축' 방향으로는 간섭을 거의 받지 않는다. 도 1의 'X+Y' 및 'Y'는 이처럼 인접한 메모리 셀들 간의 간섭을 나타내고 있다. 즉, 짝수차 스트링들(STe)에 포함된 메모리 셀들은 'X+Y'의 간섭을 받으며, 홀수차 스트링들(STo)에 포함된 메모리 셀들은 'Y'의 간섭만 받는다.
도 2는 종래의 프로그램 동작에 따른 문턱전압을 설명하기 위한 그래프이다.
도 2를 참조하면, 프로그램 동작이 실시된 메모리 셀들이 주변 셀들의 프로그램 동작시 간섭을 받지 않으면 목표 문턱전압 분포(Vt)를 갖게 되지만, 주변 셀들의 프로그램 동작 시 발생하는 간섭으로 인해 선택된 메모리 셀들의 문턱전압 분포는 도 2의 'Vy' 또는 'Vx+y'만큼 상승하게 된다. 문턱전압이 'Vy' 만큼 상승하는 경우는 'Y'의 간섭만 받을 때이고, 'Vx+y' 만큼 상승하는 경우는 'X+Y'의 간섭을 받을 때이다.
이와 같이, 주변 셀들의 프로그램 동작시 발생하는 간섭으로 인해 프로그램된 메모리 셀들의 문턱전압 분포가 변하기 때문에, 리드전압(R1 및 R2)은 문턱전압 분포와 일정 레벨의 마진을 갖도록 설정한다. 목표 문턱전압(Vt)이 'R1'과 'R2' 사이에 분포하는 메모리 셀들을 리드하는 경우, 해당 메모리 셀들이 도 1의 'Y'과 같은 간섭을 받아 문턱전압이 'Vy'만큼 상승했더라도, 문턱전압이 리드전압 'R2'보다 낮으므로 해당 메모리 셀들을 제대로 리드(read)할 수 있다. 하지만, 도 1의 'X+Y'와 같이 간섭을 크게 받게 되면(Vx+y) 문턱전압이 리드전압 'R2'보다 높아질 수 있으므로(20), 해당 메모리 셀들을 제대로 리드(read)할 수 없게 된다. 이로 인해, 반도체 장치의 신뢰도가 저하된다.
본 발명이 해결하고자 하는 과제는, 주변 메모리 셀들의 프로그램 여부에 따라 선택된 메모리 셀들의 리드전압을 변경함으로써, 리드동작의 신뢰도를 개선하는데 있다.
본 발명의 제1 실시 예에 따른 반도체 장치의 동작 방법은, 메모리 셀 어레이에 포함된 다수의 메모리 셀 블록들 중 하나의 메모리 셀 블록을 선택하는 단계; 상기 선택된 메모리 셀 블록의 워드라인들 중 선택된 워드라인에 연결된 짝수차 메모리 셀들을 프로그램하는 단계; 상기 선택된 워드라인에 연결된 홀수차 메모리 셀들을 프로그램하는 단계; 상기 선택된 워드라인에 인접한 다음 워드라인에 연결된 홀수차 메모리 셀들을 프로그램하는 단계; 및 상기 다음 워드라인에 연결된 짝수차 메모리 셀들을 프로그램하는 단계를 포함하며, 상기 선택된 메모리 셀 블록의 모든 워드라인들에 연결된 선택된 메모리 셀들의 프로그램이 완료될 때까지 상기 프로그램하는 단계들을 반복한다.
본 발명의 제2 실시 예에 따른 반도체 장치의 동작 방법은, 제1 워드라인의 짝수차 메모리 셀들을 프로그램하는 단계; 상기 제1 워드라인의 홀수차 메모리 셀들을 프로그램하는 단계; 상기 제1 워드라인에 인접한 제2 워드라인의 홀수차 메모리 셀들을 프로그램하는 단계; 상기 제2 워드라인의 짝수차 메모리 셀들을 프로그램하는 단계; 상기 제2 워드라인에 인접한 제3 워드라인의 짝수차 메모리 셀들을 프로그램하는 단계; 및 상기 제3 워드라인의 홀수차 메모리 셀들을 프로그램하는 단계를 포함한다.
본 발명의 제3 실시 예에 따른 반도체 장치의 동작 방법은, 선택된 메모리 셀 블록에 포함된 페이지들 중, 제N 페이지의 짝수차 메모리 셀들을 프로그램하는 단계; 상기 제N 페이지의 짝수차 메모리 셀들의 프로그램이 완료되면, 상기 제N 페이지의 홀수차 메모리 셀들을 프로그램하는 단계; 상기 제N 페이지의 홀수차 메모리 셀들의 프로그램이 완료되면, 상기 제N 페이지에 인접한 제N+1 페이지의 홀수차 메모리 셀들을 프로그램하는 단계; 및 상기 제N+1 페이지의 홀수차 메모리 셀들의 프로그램이 완료되면, 상기 제N+1 페이지의 짝수차 메모리 셀들을 프로그램하는 단계를 포함한다.
본 발명의 제4 실시 예에 따른 반도체 장치의 동작 방법은, 선택된 페이지의 하위비트 프로그램 동작을 수행하는 단계; 상기 선택된 페이지의 짝수차 메모리 셀들의 상위비트 프로그램 동작을 수행한 후, 홀수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계; 상기 선택된 페이지의 다음 페이지의 하위비트 프로그램 동작을 수행하는 단계; 상기 다음 페이지의 홀수차 메모리 셀들의 상위비트 프로그램 동작을 수행한 후, 짝수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계를 포함한다.
본 발명의 제5 실시 예에 따른 반도체 장치의 동작 방법은, 선택된 메모리 셀 블록의 하위비트 프로그램 동작을 수행하는 단계; 상기 선택된 메모리 셀 블록에 포함된 페이지들 중, 선택된 페이지의 짝수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계; 상기 선택된 페이지의 홀수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계; 상기 선택된 페이지의 다음 페이지의 홀수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계; 및 상기 다음 페이지의 짝수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계를 포함한다.
본 발명의 실시 예에 따른 반도체 장치는, 다수의 페이지들이 포함된 메모리 셀 블록 및 플래그 셀 블록을 포함하는 메모리 셀 어레이; 상기 메모리 셀 어레이의 워드라인들에 연결된 로우 디코더; 구동전압을 생성하고, 상기 구동전압을 상기 로우 디코더에 전달하기 위한 전압 생성 회로; 상기 메모리 셀 어레이의 비트라인들에 연결된 페이지 버퍼들; 및 상기 메모리 셀 블록에 포함된 페이지들 중, 선택된 페이지의 짝수차 메모리 셀들과 홀수차 메모리 셀들을 순차적으로 프로그램한 후, 다음 페이지의 홀수차 메모리 셀들과 짝수차 메모리 셀들을 순차적으로 프로그램하는 방식으로 상기 메모리 셀 블록의 모든 선택된 메모리 셀들을 프로그램하기 위하여 상기 로우 디코더, 상기 전압 생성 회로 및 상기 페이지 버퍼들을 제어하기 위한 제어회로를 포함하는 반도체 장치를 포함한다.
본 발명은, 선택된 셀의 주변 셀들의 프로그램 상태에 따라 선택된 셀을 리드하기 위하여 메모리 셀들을 프로그램하는 순서를 변경함으로써, 리드 동작의 신뢰도를 개선할 수 있다.
도 1은 종래 기술에 따른 프로그램 동작 시 인접한 메모리 셀들 간의 간섭을 설명하기 위한 도면이다.
도 2는 종래의 프로그램 동작에 따른 문턱전압을 설명하기 위한 그래프이다.
도 3은 본 발명에 따른 반도체 장치를 설명하기 위한 블록도이다.
도 4는 도 3의 메모리 셀 어레이를 구체적으로 설명하기 위한 회로도이다.
도 5는 본 발명에 따른 프로그램 방법을 설명하기 위한 순서도이다.
도 6은 도 5의 프로그램 방법에 따른 메모리 셀들 간의 간섭을 설명하기 위한 도면이다.
도 7은 프로그램 동작으로 인한 메모리 셀들의 문턱전압 변화를 설명하기 위한 그래프이다.
도 8은 본 발명에 따른 리드 방법을 개략적으로 설명하기 위한 순서도이다.
도 9 내지 12는 본 발명에 따른 리드 방법을 구체적으로 설명하기 위한 순서도이다.
도 13은 본 발명에 따른 리드 동작시 사용하는 리드 전압을 설명하기 위한 그래프이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 설명하기로 한다. 그러나, 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하며 통상의 지식을 가진자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.
도 3은 본 발명에 따른 반도체 장치를 설명하기 위한 블록도이다.
도 3을 참조하면, 반도체 장치는 메모리 셀 어레이(110), 메모리 셀 어레이(110)에 포함된 메모리 셀들의 프로그램, 리드 또는 소거 동작을 수행하도록 구성된 다수의 회로들(130, 140, 150, 160, 170, 180) 및 입력되는 데이터에 따라 선택된 메모리 셀들의 문턱전압 레벨들을 설정하기 위해 다수의 회로들(130, 140, 150, 160, 170, 180)을 제어하도록 구성된 제어회로(120)를 포함한다.
NAND 플래시 메모리 장치의 경우, 상기 회로들은 전압 생성 회로(130), 로우 디코더(140), 페이지 버퍼 그룹(150), 패스/페일 판단회로(180), 컬럼 선택 회로(170) 및 입출력 회로(180)를 포함한다.
메모리 셀 어레이(110)는 다수의 메모리 셀 블록들을 포함하는데, 도 3에는 그 중 하나의 메모리 셀 블록이 도시되어 있다. 각각의 메모리 셀 블록은 일반 데이터를 저장하기 위한 메모리 셀 블록(111)과 각종 동작에 필요한 데이터를 저장하기 위한 플래그 셀 스트링들을 포함하는 플래그 셀 블록(112)을 포함한다. 노말 셀 스트링들과 플래그 셀 스트링들은 서로 동일하게 구성될 뿐이며, 수행하는 기능을 구분하기 위하여 각각 지정된다. 따라서, 메모리 셀 블록(111)과 플래그 셀 블록(112)은 서로 동일한 구성으리 이루어진 메모리 셀들 또는 플래그 셀들을 포함한다.
제어회로(120)는 명령신호(CMD)에 응답하여 내부적으로 프로그램 동작 신호(PGM), 리드 동작 신호(READ) 또는 소거 동작 신호(ERASE)를 출력하고, 동작의 종류에 따라 페이지 버퍼 그룹(150)에 포함된 페이지 버퍼들을 제어하기 위한 페이지 버퍼 신호들(PB SIGNALS)을 출력한다. 또한, 제어회로(120)는 어드레스 신호(ADD)에 응답하여 내부적으로 로우 어드레스 신호(RADD)와 컬럼 어드레스 신호(CADD)를 출력한다. 제어회로(120)는 검증 동작 시 패스/페일 판단회로(180)에서 출력되는 패스/페일 신호(PFS)를 확인하고, 확인 결과에 따라 해당 동작의 재실시, 완료 또는 페일(fail) 여부를 결정한다. 특히, 제어회로(120)는 리드 동작시, 선택된 셀의 주변 셀들의 프로그램 여부에 따라 선택된 메모리 셀들을 리드하기 위한 리드전압을 가변시킨다.
전압 생성 회로(130)는 제어회로(120)의 내부 명령 신호인 동작 신호들(PGM, READ, ERASE)에 응답하여 메모리 셀들을 프로그램, 리드 또는 소거하기 위한 동작 전압들(예컨데, Vpgm, Vread, Vpass)을 글로벌 라인들로 출력한다.
로우 디코더(140)는 제어회로(120)의 로우 어드레스 신호들(RADD)에 응답하여, 전압 생성 회로(130)에서 발생된 동작 전압들을 선택된 메모리 셀 블록의 라인들(WL[n:0], DSL, SSL)로 전달한다.
페이지 버퍼 그룹(150)은 메모리 셀들의 프로그램 상태 또는 소거 상태를 검출한다. 페이지 버퍼 그룹(150)은 비트라인들(BL)과 각각 연결되는 페이지 버퍼들을 포함하며, 제어회로(120)에서 출력된 페이지 버퍼 신호들(PB SIGNALS)에 응답하여 메모리 셀들에 데이터를 저장하는데 필요한 전압을 비트라인들(BL)에 각각 인가한다. 구체적으로, 페이지 버퍼 그룹(150)은 메모리 셀들의 프로그램 동작, 소거 동작 또는 리드 동작 시 비트라인들(BL)을 프리차지하거나, 비트라인들(BL)의 전압 변화에 따라 검출된 메모리 셀들의 문턱전압 레벨에 대응하는 데이터를 래치한다. 즉, 페이지 버퍼 그룹(150)에 포함된 각각의 페이지 버퍼들은 프로그램 동작시에는 래치에 입력된 프로그램 데이터가 '0'이면 비트라인들(BL)에 프로그램 허용전압(0V)을 인가하고, 프로그램 데이터가 '1'이면 비트라인들(BL)에 프로그램 금지전압(Vcc)을 인가한다. 또한, 페이지 버퍼들은 리드 동작 시에는 메모리 셀들에 저장된 데이터에 따라 비트라인들(BL)의 전압을 조절하여 메모리 셀들에 저장된 데이터를 검출한다. 또한, 페이지 버퍼들은 검증 또는 리드 동작시 메모리 셀들로부터 검출한 데이터(VS)를 패스/페일 판단회로(160)에 전송한다.
패스/페일 판단회로(160)는 프로그램 또는 소거 동작 후 실시되는 검증 동작시 페이지 버퍼들로부터 전달받은 데이터(VS)에 따라 해당 동작의 패스/페일 신호(PFS)를 출력하거나, 에러 셀들의 발생 여부를 체크하기도 한다. 또한, 패스/페일 판단회로(160)는 에러 셀 발생 시 발생된 에러 셀들의 개수를 카운팅하고 카운팅 결과를 카운팅 신호(CS)로 출력하는 기능도 수행한다.
컬럼 선택 회로(170)는 제어회로(120)에서 출력된 컬럼 어드레스 신호(CADD)에 응답하여 페이지 버퍼 그룹(150)에 포함된 페이지 버퍼들을 선택한다. 컬럼 선택 회로(170)에 의해 선택된 페이지 버퍼의 래치된 데이터가 출력된다. 또한, 페이지 버퍼 그룹(150)에서 출력된 데이터를 컬럼 라인(CL)을 통해 전달받고, 이를 입출력 회로(180)에 전달하기도 한다.
입출력 회로(170)는 프로그램 동작 시 외부로부터 입력된 데이터(DATA)를 페이지 버퍼그룹(150)의 페이지 버퍼들에 각각 입력하기 위하여 제어회로(120)의 입출력 신호(IN/OUT)에 따라 데이터(DATA)를 컬럼 선택 회로(160)에 전달한다. 전달된 데이터를 컬럼 선택 회로(170)가 페이지 버퍼 그룹(150)의 페이지 버퍼들에 차례대로 전달하면 페이지 버퍼들은 입력된 데이터를 내부 래치에 저장한다. 또한, 리드 동작 시 입출력 회로(180)는 제어회로(120)의 입출력 신호(IN/OUT)에 따라 페이지 버퍼 그룹(150)의 페이지 버퍼들로부터 컬럼 선택 회로(170)를 통해 전달된 데이터(DATA)를 외부로 출력하기도 한다.
도 4는 도 3의 메모리 셀 어레이를 구체적으로 설명하기 위한 회로도이다.
도 4를 참조하면, 메모리 셀 어레이(110)의 메모리 셀 블록(111)과 플래그 셀 블록(112)에 포함된 셀 스트링들(ST)은 서로 동일하게 구성된다. 이 중 메모리 셀 블록(111)에 포함된 하나의 셀 스트링(STe)을 예를 들어 설명하면 다음과 같다. 셀 스트링(STe)은 공통 소오스 라인(CSL)에 연결되는 소오스 셀렉트 트랜지스터(SST), 다수의 메모리 셀들(F0 내지 Fn), 그리고 비트라인(BLe)에 연결되는 드레인 셀렉트 트랜지스터(DST)로 구성된다. 플래그 스트링에 포함되는 셀들을 플래그 셀이라 부르지만, 구조는 메모리 셀과 동일하다. 소오스 셀렉트 트랜지스터(SST)의 게이트는 소오스 셀렉트 라인(SSL)에 연결되고, 메모리 셀들(F0 내지 Fn)의 게이트들은 워드라인들(WL0 내지 WLn)에 각각 연결되며, 드레인 셀렉트 트랜지스터(DST)의 게이트는 드레인 셀렉트 라인(DSL)에 연결된다. 스트링들(ST)은 스트링들(ST) 각각에 대응하는 비트라인들(BLe 및 BLo)과 공통 소오스 라인(CSL) 사이에 연결된다. 비트라인들의 배열 순서에 따라 짝수차 비트라인들을 이븐(even) 비트라인(BLe)이라 부르고, 홀수차 비트라인들을 오드(odd) 비트라인(BLo)이라 부른다. 따라서, 이븐 비트라인들(BLe)에 연결된 스트링들을 이븐 스트링(STe)이라 부르고, 오드 비트라인들(BLo)에 연결된 스트링들을 오드 스트링이라 부른다.
도 5는 본 발명에 따른 프로그램 방법을 설명하기 위한 순서도이다.
도 5를 참조하여, 싱글 레벨 셀(single level cell; SLC)의 프로그램 동작 또는 멀티 레벨 셀(multi level cell; MLC)의 상위비트(Most Significant Bit; 이하, MSB) 프로그램 동작을 설명하면 다음과 같다. 멀티 레벨 셀(MLC)의 경우, 선택된 메모리 셀 블록에 대하여 하위비트(Least Significant Bit; 이하, LSB) 프로그램 동작을 모두 완료한 후에 후술하는 방식으로 MSB 프로그램 동작을 수행하거나, 선택된 메모리 셀 블록의 페이지가 선택될 때마다 선택된 페이지의 LSB 프로그램 동작을 수행한 후, 선택된 페이지의 MSB 프로그램 동작을 후술하는 방법으로 실시할 수 있다.
프로그램 동작이 시작되면, 로우 어드레스에 따라 하나의 메모리 셀 블록이 선택되고, 선택된 메모리 셀 블록에 포함된 다수의 페이지들 중에서 하나의 페이지가 선택된다. 페이지의 순번을 'N'으로 나타내면, 첫 번째 선택된 페이지의 순번 'N'은 '1'이 된다(501).
제N 페이지의 짝수차 메모리 셀들의 프로그램 동작을 수행한다(502). 프로그램 동작은 프로그램 전압을 점진적으로 상승시키는 ISPP(incremental step pulse program) 방식으로 수행한다. 구체적으로, 제N 페이지의 메모리 셀들 중에서 이븐 스트링(STe)에 포함된 메모리 셀들에 대한 프로그램 동작을 수행하기 위하여, 제N 페이지에 연결된 선택된 워드라인에 프로그램 전압을 인가하여 선택된 메모리 셀들의 문턱전압을 상승시킨다.
제N 페이지의 짝수차 메모리 셀들의 프로그램 검증동작을 수행한다(503). 프로그램 검증동작은 제N 페이지의 짝수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달했는지를 검증하는 동작이다. 프로그램 검증 결과가 페일(fail)이면, 제N 페이지에 연결된 워드라인에 인가하는 프로그램 전압을 상승시키고(504), 제N 페이지의 짝수차 메모리 셀들의 프로그램 동작(502)을 재수행한다. 제N 페이지의 짝수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달할 때까지 '502' 내지 '504' 단계들을 반복한다. 제N 페이지의 짝수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달하면, 프로그램 검증(503) 결과는 패스(pass)된다.
제N 페이지의 짝수차 메모리 셀들의 프로그램 검증(503)이 패스되면, 제N 페이지의 홀수차 메모리 셀들의 프로그램 동작을 수행한다(505). 프로그램 동작은 프로그램 전압을 점진적으로 상승시키는 ISPP(incremental step pulse program) 방식으로 수행한다. 구체적으로, 제N 페이지의 메모리 셀들 중에서 오드 스트링(STo)에 포함된 메모리 셀들에 대한 프로그램 동작을 수행하기 위하여, 제N 페이지에 연결된 선택된 워드라인에 프로그램 전압을 인가하여 선택된 메모리 셀들의 문턱전압을 상승시킨다.
제N 페이지의 홀수차 메모리 셀들의 프로그램 검증동작을 수행한다(505). 프로그램 검증동작은 제N 페이지의 짝수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달했는지를 검증하는 동작이다. 프로그램 검증 결과가 페일(fail)이면, 제N 페이지에 연결된 워드라인에 인가하는 프로그램 전압을 상승시키고(507), 제N 페이지의 홀수차 메모리 셀들의 프로그램 동작(505)을 재수행한다. 제N 페이지의 홀수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달할 때까지 '505' 내지 '507' 단계들을 반복한다. 제N 페이지의 홀수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달하면, 프로그램 검증(505) 결과는 패스(pass)된다.
제N 페이지에 포함된 선택된 메모리 셀들의 프로그램이 모두 완료되면, 다음 페이지인 제N+1 페이지의 홀수차 메모리 셀들의 프로그램 동작을 수행한다(508). 구체적으로, 제N+1 페이지의 메모리 셀들 중에서 오드 스트링(STo)에 포함된 메모리 셀들에 대한 프로그램 동작을 수행하기 위하여, 제N+1 페이지에 연결된 선택된 워드라인에 프로그램 전압을 인가하여 선택된 메모리 셀들의 문턱전압을 상승시킨다.
제N+1 페이지의 홀수차 메모리 셀들의 프로그램 검증동작을 수행한다(509). 프로그램 검증동작은 제N+1 페이지의 짝수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달했는지를 검증하는 동작이다. 프로그램 검증 결과가 페일(fail)이면, 제N+1 페이지에 연결된 워드라인에 인가하는 프로그램 전압을 상승시키고(510), 제N+1 페이지의 홀수차 메모리 셀들의 프로그램 동작(508)을 재수행한다. 제N+1 페이지의 홀수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달할 때까지 '508' 내지 '510' 단계들을 반복한다. 제N+1 페이지의 홀수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달하면, 프로그램 검증(509) 결과는 패스(pass)된다.
제N+1 페이지의 홀수차 메모리 셀들의 프로그램 검증(509)이 패스되면, 제N+1 페이지의 짝수차 메모리 셀들의 프로그램 동작을 수행한다(511). 구체적으로, 제N+1 페이지의 메모리 셀들 중에서 이븐 스트링(STe)에 포함된 메모리 셀들에 대한 프로그램 동작을 수행하기 위하여, 제N+1 페이지에 연결된 선택된 워드라인에 프로그램 전압을 인가하여 선택된 메모리 셀들의 문턱전압을 상승시킨다.
제N+1 페이지의 짝수차 메모리 셀들의 프로그램 검증동작을 수행한다(512). 프로그램 검증동작은 제N+1 페이지의 짝수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달했는지를 검증하는 동작이다. 프로그램 검증 결과가 페일(fail)이면, 제N+1 페이지에 연결된 워드라인에 인가하는 프로그램 전압을 상승시키고(513), 제N+1 페이지의 짝수차 메모리 셀들의 프로그램 동작(511)을 재수행한다. 제N+1 페이지의 짝수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달할 때까지 '511' 내지 '513' 단계들을 반복한다. 제N+1 페이지의 짝수차 메모리 셀들의 문턱전압이 모두 목표레벨에 도달하면, 프로그램 검증(512) 결과는 패스(pass)된다.
제N+1 페이지에 포함된 선택된 메모리 셀들의 프로그램이 모두 완료되면, 제N+1 페이지가 선택된 메모리 셀 블록 내의 마지막 페이지 인지를 판단한다(514). 제N+1 페이지가 마지막 페이지가 아니면, 'N=N+1'로 하여 다음 페이지를 선택하고(515), 나머지 페이지들의 선택된 메모리 셀들이 모두 프로그램 완료될 때까지 '502' 내지 '514' 단계들을 반복한다. '514' 단계에서, 프로그램된 페이지가 마지막 페이지로 판단되면, 선택된 메모리 셀 블록에 대한 프로그램 동작을 종료한다.
상술한 바와 같이 프로그램 동작을 수행하면 동일한 페이지에 포함된 메모리 셀들은 서로 간섭을 받는 정도가 달라지며, 동일한 셀 스트링에 포함된 메모리 셀들 간에도 간섭을 받는 정도가 달라진다. 상술한 프로그램 동작으로 인한 메모리 셀들 간의 간섭을 설명하면 다음과 같다.
도 6은 도 5의 프로그램 방법에 따른 메모리 셀들 간의 간섭을 설명하기 위한 도면이다.
도 6을 참조하면, 도 5에서 설명한 바와 같이 제N 페이지에서는 짝수차 메모리셀들을 프로그램한 후 홀수차 메모리 셀들을 프로그램하고, 제N+1 페이지에서는 홀수차 메모리 셀들을 프로그램한 후 짝수차 메모리 셀들을 프로그램하는 방식으로 프로그램 동작을 수행하면, 서로 인접한 메모리 셀들이 받는 간섭 또한 서로 달라진다. 예를 들어, 제N-2페이지(N-2)의 이븐 스트링들(STe)에 포함된 짝수차 메모리 셀들을 프로그램한 후, 동일 페이지의 오드 스트링들(STo)에 포함된 홀수차 메모리 셀들을 프로그램하면, 제N-2 페이지의 짝수차 메모리 셀들은 X축 방향으로부터 간섭을 받는다. 이어서, 다음 페이지인 제N-1 페이지의 홀수차 메모리 셀들을 프로그램하면 제N 페이지의 홀수차 메모리 셀들은 Y축 방향으로부터 간섭을 받고, 제N-1 페이지의 짝수차 메모리 셀들을 프로그램하면 제N 페이지의 짝수차 메모리 셀들도 Y축 방향으로부터 간섭을 받는다. 이러한 방식으로 프로그램 동작을 수행하면, 제N-2 페이지의 이븐 스트링들(STe)에 포함된 짝수차 메모리 셀들은 'X+Y'의 간섭을 받게 되고, 제N-2 페이지의 오드 스트링들(STo)에 포함된 홀수차 메모리 셀들은 'Y'의 간섭만 받게된다. 또한, 제N-1 페이지의 이븐 스트링들(STe)에 포함된 짝수차 메모리 셀들은 'Y'의 간섭만 받게되고, 제N-1 페이지의 오드 스트링들(STo)에 포함된 홀수차 메모리 셀들은 'X+Y'의 간섭을 받게된다. 즉, 동일한 페이지에 포함된 짝수차 메모리 셀들과 홀수차 메모리 셀들은 'X+Y' 또는 'Y'의 간섭을 교호적으로 받게되며, 동일한 셀 스트링에서 서로 다른 페이지에 포함된 메모리 셀들도 'X+Y' 또는 'Y'의 간섭을 교호적으로 받게된다. 'X+Y'의 간섭을 받은 메모리 셀들은 'Y'의 간섭만 받은 메모리 셀들보다 상대적으로 문턱전압의 상승률이 적다.
도 7은 프로그램 동작으로 인한 메모리 셀들의 문턱전압 변화를 설명하기 위한 그래프이다.
도 7을 참조하면, 프로그램된 메모리 셀들의 목표 문턱전압(Vt)은 제1 리드전압(R1)과 제2 리드전압(R2) 사이에 분포한다. 하지만, 주변 셀들의 프로그램 동작시 발생한 간섭으로 인해 목표 문턱전압(Vt)은 일정 레벨 상승하게 된다. 도 6에서 상술한 바와 같이, 'Y'의 간섭만 받게되어 상승된 문턱전압(Vy)은 일반적으로 제2 리드전압(R2)보다 높아지지는 않는다. 이는, 제2 리드전압(R2)은 이러한 간섭으로 인한 문턱전압 변화를 고려하여 목표 문턱전압(Vt)과 일정 레벨의 마진을 두고 설정되기 때문이다. 하지만, 프로그램된 메모리 셀이 'Y'보다 더 큰 'X+Y'의 간섭을 받게 되면, 문턱전압이 더 상승되어(Vx+y) 일부 메모리 셀들의 문턱전압이 제2 리드전압(R2)보다 높아질 수 있다. 이와 같이, 프로그램된 메모리 셀들의 문턱전압이 상승하게 되면, 다음과 같은 방법으로 리드(read) 동작을 수행한다.
도 8은 본 발명에 따른 리드 방법을 개략적으로 설명하기 위한 순서도이다.
도 8을 참조하면, 선택된 메모리 셀을 리드하기 이전에, 주변 셀들을 먼저 리드함으로써, 선택된 메모리 셀이 받은 간섭을 미리 판단하고, 판단 결과에 따라 가변된 리드전압으로 선택된 메모리 셀을 리드한다. 구체적으로 설명하면 다음과 같다.
선택된 제N 페이지에 포함된 메모리 셀을 리드하기 이전에, 다음 페이지인 제N+1 페이지의 메모리 셀을 리드한다(801). 리드된 제N+1 페이지의 메모리 셀이 프로그램된 셀인지를 판단한다(802). 제N+1 페이지의 메모리 셀이 프로그램된 셀이 아니면, 미리 설정된 리드전압을 이용하여 제N 페이지의 메모리 셀을 리드한다(803). 만약, 제N+1 페이지의 메모리 셀이 프로그램된 셀이면, 제N 페이지에 대한 리드전압을 일정 레벨만큼 상승시킨 후(804), 상승된 리드전압을 이용하여 제N 페이지의 메모리 셀을 리드한다(805). 이처럼, 주변 셀의 프로그램 여부에 따라 선택된 메모리 셀을 리드하기 위한 리드전압을 가변시키면, 선택된 메모리 셀로부터 리드된 데이터의 신뢰도를 향상시킬 수 있다.
상술한 바와 같이 프로그램할 경우, 각 메모리 셀들이 받을 수 있는 간섭의 최대치를 알 수 있으므로, 선택된 메모리 셀에 대응된 알고리즘을 적용시켜 리드 동작을 수행할 수 있다. 예를 들면, 제N-2 페이지의 이븐 스트링들(STe)에 포함된 메모리 셀들은 최대 'X+Y'의 간섭을 받을 수 있으므로, 이에 대응되는 리드 동작을 수행한다. 또한, 제N-2 페이지의 오드 스트링들(STo)에 포함된 메모리 셀들은 최대 'Y'의 간섭을 받을 수 있으므로, 이에 대응되는 리드 동작을 수행한다.
상술한 프로그램 방법으로 프로그램된 메모리 셀들을 리드하는 방법을 구체적으로 설명하면 다음과 같다.
도 9 내지 12는 본 발명에 따른 리드 방법을 구체적으로 설명하기 위한 순서도이다. 이하, 제N 페이지가 선택된 페이지라는 가정 하에 설명하도록 한다.
도 9는 'X+Y'의 간섭을 받을 수 있는 메모리 셀의 LSB 리드 방법을 설명하기 위한 순서도이다.
도 9를 참조하면, 제N 페이지에 포함된 메모리 셀들을 제1 리드전압(R1)을 이용하여 리드한다(901). 리드된 데이터는 각 페이지 버퍼들의 래치에 저장된다. 이어서, 제N 페이지가 LSB 프로그램된 페이지인지 MSB 프로그램된 페이지인지를 판단한다(902). 제N 페이지가 LSB 프로그램된 페이지인지 MSB 프로그램된 페이지인지를 판단하기 위하여 제N 페이지의 플래그 셀을 리드한다. 즉, 각 페이지의 MSB 프로그램 동작 후에는 해당 페이지의 플래그 셀을 프로그램하여 '0' 데이터를 입력해 놓기 때문에, 플래그 셀을 리드하여 해당 페이지가 LSB 프로그램됐는지 또는 MSB 프로그램됐는지를 판단할 수 있다. 즉, 플래그 셀을 리드한 데이터가 '0'이면 해당 페이지는 MSB 프로그램된 페이지이고, 데이터가 '1'이면 해당 페이지는 LSB 프로그램된 페이지이거나 소거상태인 페이지이다. 제N 페이지가 LSB 프로그램된 페이지이면 '901' 단계에서 리드된 데이터를 출력하여 리드동작을 종료한다. 만약, 제N 페이지가 MSB 프로그램된 페이지이면, 다음 페이지인 제N+1 페이지의 리드 동작을 수행한다(903). 제N+1 페이지에 대한 리드 동작은 제1 리드전압(R1), 제2 리드전압(R2) 및 제3 리드전압(R3)을 이용하여 각각 수행한다. 제2 리드전압(R2)은 제1 리드전압(R1)보다 높고, 제3 리드전압(R3)은 제2 리드전압(R2)보다 높다. 이어서, 제N+1 페이지가 LSB 프로그램된 페이지인지 또는 MSB 프로그램된 페이지인지를 판단한다(904). 제N+1 페이지가 LSB 프로그램된 페이지인지 또는 MSB 프로그램된 페이지인지를 판단하기 위하여, 제N+1 페이지의 플래그 셀을 리드한다. 플래그 셀을 리드하여 얻은 데이터가 '0'이면 제N+1 페이지는 MSB 프로그램된 페이지이고, 데이터 '1'이면 제N+1 페이지는 LSB 프로그램된 페이지이거나 소거상태인 페이지로 판단된다. 판단 결과(904), 제N+1 페이지가 LSB 프로그램만 수행된 페이지이면 미리 설정된 제2 리드전압(R2)을 이용하여 제N 페이지의 LSB 리드 동작을 수행한다(905). 만약, 판단 결과(904), 제N+1 페이지가 MSB 프로그램까지 수행된 페이지이면 제N 페이지가 간섭을 받을 수 있으므로, 미리 설정된 제2 리드전압(R2)을 이용하여 제N 페이지의 LSB 리드동작을 수행하고(906), 이어서 설정된 제2 리드전압(R2)보다 높은 제2 가변전압(R2')을 이용하여 제N 페이지의 LSB 리드동작을 수행한다(907). 특히, 설정된 제2 리드전압(R2)을 이용하여 제N 페이지의 LSB 리드동작을 수행하는 '906' 단계는, 제N 페이지의 메모리 셀들 중 간섭을 덜 받은 메모리 셀들을 리드하기 위하여 수행하므로, 생략 가능하다. 예를 들면, '906' 단계는 제N 페이지의 메모리 셀들 중 'Y'의 간섭을 받은 메모리 셀들을 리드하기 위하여 실시한다. '907' 단계와 같이, 주변 셀이 MSB 프로그램된 경우, 선택된 메모리 셀의 문턱전압이 상승되므로 설정된 제2 리드전압(R2)보다 높은 제2 가변전압(R2')을 이용하여 선택된 메모리 셀을 리드한다. 이처럼, 주변 셀의 프로그램 상태에 따라 선택된 메모리 셀을 리드하기 위한 리드전압을 변경하면, 선택된 메모리 셀의 문턱전압이 변경되었더라도 선택된 메모리 셀을 올바로 리드(read)할 수 있다.
도 10은 'Y'의 간섭을 받을 수 있는 메모리 셀의 LSB 리드 방법을 설명하기 위한 순서도이다.
도 10을 참조하면, 제N 페이지에 포함된 메모리 셀들을 제1 리드전압(R1)을 이용하여 리드한다(1001). 리드된 데이터는 각 페이지 버퍼들의 래치에 저장된다. 이어서, 제N 페이지가 LSB 프로그램된 페이지인지 MSB 프로그램된 페이지인지를 판단한다(1002). 제N 페이지가 LSB 프로그램된 페이지인지 또는 MSB 프로그램된 페이지인지를 판단하기 위하여, 제N 페이지의 플래그 셀을 리드한다. 플래그 셀을 리드하여 얻은 데이터가 '0'이면 제N+1 페이지는 MSB 프로그램된 페이지이고, 데이터 '1'이면 제N+1 페이지는 LSB 프로그램된 페이지이거나 소거상태인 페이지로 판단된다.판단 결과, 제N 페이지가 LSB 프로그램된 페이지이면 '1001' 단계에서 리드된 데이터를 출력하여 리드 동작을 종료한다. 만약, 제N 페이지가 MSB 프로그램된 페이지로 판단되면, 설정된 제2 리드전압(R2)을 이용하여 제N 페이지의 LSB 리드동작을 수행하고(1003) 리드동작을 종료한다.
도 11은 'X+Y'의 간섭을 받을 수 있는 메모리 셀의 MSB 리드 방법을 설명하기 위한 순서도이다.
도 11을 참조하면, 제N 페이지의 다음 페이지인 제N+1 페이지의 메모리 셀들을 리드한다(1101). 예를 들어, 리드 동작은 제1 리드전압(R1), 제2 리드전압(R2) 및 제3 리드전압(R3)을 각각 이용하여 수행한다. 제1 내지 제3 리드전압(R1 내지 R3)을 이용하여 메모리 셀을 리드하면 해당 셀의 프로그램 상태를 판단할 수 있다. 제N+1 페이지의 리드(1101) 결과를 이용하여 제N+1 페이지의 메모리 셀들이 LSB 프로그램된 셀인지 또는 MSB 프로그램된 셀인지를 판단한다(1102). 제N+1 페이지가 LSB 프로그램된 페이지인지 또는 MSB 프로그램된 페이지인지를 판단하기 위하여, 제N+1 페이지의 플래그 셀을 리드한다. 플래그 셀을 리드하여 얻은 데이터가 '0'이면 제N+1 페이지는 MSB 프로그램된 페이지이고, 데이터 '1'이면 제N+1 페이지는 LSB 프로그램된 페이지이거나 소거상태인 페이지로 판단된다. 판단 결과(1102), 제N+1 페이지가 LSB 프로그램된 페이지이면 설정된 제1 리드전압(R1)과 제3 리드전압(R3)을 이용하여 제N 페이지의 메모리 셀들을 리드한다. 판단 결과(1102), 제N+1 페이지가 MSB 프로그램된 페이지이면 설정된 제1 리드전압(R1)을 이용하여 제N 페이지의 메모리 셀들을 리드한다(1104). 설정된 제1 리드전압(R1)을 이용한 리드동작을 수행하는 이유는, 제N 페이지의 메모리 셀들 중 간섭으로 인한 변화량이 적은 메모리 셀들을 리드하기 위함이다. 따라서, '1104' 단계는 생략 가능하다. 제N 페이지의 메모리 셀들 중 간섭으로 인한 변화량이 큰 셀들을 리드하기 위하여, 설정된 제1 리드전압(R1)보다 높은 제1 가변전압(R1')을 이용한 리드동작을 수행한다(1105). 이어서, 설정된 제3 리드전압(R3)을 이용하여 제N 페이지의 메모리 셀들을 리드한다(1106). 설정된 제3 리드전압(R3)을 이용한 리드동작을 수행하는 이유는, 제N 페이지의 메모리 셀들 중 간섭으로 인한 변화량이 적은 메모리 셀들을 리드하기 위함이다. 따라서, '1106' 단계도 생략 가능하다. 제N 페이지의 메모리 셀들 중 간섭으로 인한 변화량이 큰 셀들을 리드하기 위하여, 설정된 제3 리드전압(R3)보다 높은 제3 가변전압(R3')을 이용한 리드동작을 수행한다(1107). '1103' 단계 및 '1107' 단계 이후에는, 제N 페이지가 LSB 프로그램된 페이지인지 또는 MSB 프로그램된 페이지인지를 판단한다(1108). 제N 페이지가 LSB 프로그램된 페이지인지 또는 MSB 프로그램된 페이지인지를 판단하기 위하여, 제N 페이지의 플래그 셀을 리드한다. 플래그 셀을 리드하여 얻은 데이터가 '0'이면 제N 페이지는 MSB 프로그램된 페이지이고, 데이터가 '1'이면 제N+1 페이지는 LSB 프로그램된 페이지이거나 소거상태인 페이지로 판단된다. 판단 결과, 제N 페이지가 MSB 프로그램된 페이지로 판단되면, 이전에 리드된 데이터를 출력하고 리드동작을 종료한다. 만약, 제N 페이지가 MSB 프로그램된 페이지로 판단되면, 페이지 버퍼들의 래치에 '1' 데이터가 입력되도록 페이지 버퍼들을 셋팅한다(1109). 구체적으로, 선택된 메모리 셀들을 MSB 리드하였으나, 선택된 메모리 셀들이 LSB 프로그램된 셀이면, 선택된 메모리 셀들은 MSB 프로그램된 셀들이 아니므로 페이지 버퍼의 래치에 모두 소거 상태를 나타내는 '1' 데이터를 입력한 후 리드동작을 종료한다.
도 12는 'Y'의 간섭을 받을 수 있는 메모리 셀의 MSB 리드 방법을 설명하기 위한 순서도이다.
도 12를 참조하면, 제N 페이지의 메모리 셀들을 제1 리드전압(R1) 및 제3 리드전압(R3)을 이용하여 각각 리드한다(1201). 리드된 데이터는 각각의 페이지 버퍼의 래치에 저장된다. 이어서, 제N 페이지가 LSB 프로그램된 페이지인지 MSB 프로그램된 페이지인지를 판단한다(1202). 제N 페이지가 LSB 프로그램된 페이지인지 또는 MSB 프로그램된 페이지인지를 판단하기 위하여, 제N 페이지의 플래그 셀을 리드한다. 플래그 셀을 리드하여 얻은 데이터가 '0'이면 제N 페이지는 MSB 프로그램된 페이지이고, 데이터 '1'이면 제N 페이지는 LSB 프로그램된 페이지이거나 소거상태인 페이지로 판단된다. 판단결과, 제N 페이지가 LSB 프로그램된 페이지이면 '1201' 단계에서 리드된 데이터를 출력하여 리드 동작을 종료한다. 만약, 제N 페이지가 MSB 프로그램된 페이지로 판단되면, 페이지 버퍼들의 래치에 '1' 데이터가 입력되도록 페이지 버퍼들을 셋팅한다(1203). 구체적으로, 선택된 메모리 셀들을 MSB 리드하였으나, 선택된 메모리 셀들이 LSB 프로그램된 셀이면, 선택된 메모리 셀들은 MSB 프로그램된 셀들이 아니므로 페이지 버퍼의 래치에 모두 소거 상태를 나타내는 '1' 데이터를 입력한 후 리드동작을 종료한다.
도 13은 본 발명에 따른 리드 동작시 사용하는 리드 전압을 설명하기 위한 그래프이다.
도 13을 참조하면, 도 9 내지 12에서 상술한 바와 같이, 주변 셀들로부터 간섭을 받지 않았거나 조금만 받은 메모리 셀들은 문턱전압(1301)이 변동되지 않았거나 변동되더라도 조금만 변동되므로 미리 설정된 리드전압(R1, R2, R3)을 사용하여 리드동작을 수행한다. 단, 주변 셀들로부터 간섭을 많이 받은 메모리 셀들은 문턱전압(1302)의 변동량이 크기 때문에 변동된 리드전압(R1', R2', R3')을 사용하여 리드동작을 수행하면 리드동작의 신뢰도를 개선할 수 있다.
상기에서 설명한 본 발명의 기술적 사상은 바람직한 실시 예에서 구체적으로 기술되었으나, 상기한 실시 예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명은 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술적 사상의 범위 내에서 다양한 실시 예가 가능함을 이해할 수 있을 것이다.
110: 메모리 셀 어레이 111: 메모리 셀 블록
112: 플래그 셀 블록 120: 제어회로
130: 전압 생성 회로 140: 로우 디코더
150: 페이지 버퍼 그룹 160: 패스/페일 판단회로
170: 컬럼 선택 회로 180: 입출력 회로
STe: 이븐 스트링 STo: 오드 스트링

Claims (9)

  1. 메모리 셀 어레이에 포함된 다수의 메모리 셀 블록들 중 하나의 메모리 셀 블록을 선택하는 단계;
    상기 선택된 메모리 셀 블록의 워드라인들 중 선택된 워드라인에 연결된 짝수차 메모리 셀들을 프로그램하는 단계;
    상기 선택된 워드라인에 연결된 홀수차 메모리 셀들을 프로그램하는 단계;
    상기 선택된 워드라인에 인접한 다음 워드라인에 연결된 홀수차 메모리 셀들을 프로그램하는 단계; 및
    상기 다음 워드라인에 연결된 짝수차 메모리 셀들을 프로그램하는 단계를 포함하며,
    상기 선택된 메모리 셀 블록의 모든 워드라인들에 연결된 선택된 메모리 셀들의 프로그램이 완료될 때까지 상기 프로그램하는 단계들을 반복하는 반도체 장치의 동작방법.
  2. 제1항에 있어서,
    상기 선택된 워드라인의 짝수차 메모리 셀들을 프로그램하는 단계는,
    상기 선택된 워드라인에 프로그램 전압을 인가하여 상기 선택된 워드라인에 연결된 짝수차 메모리 셀들의 문턱전압을 상승시키는 단계;
    상기 선택된 워드라인에 연결된 짝수차 메모리 셀들의 문턱전압이 목표레벨에 모두 도달했는지를 판단하는 단계; 및
    상기 판단 결과 문턱전압이 상기 목표레벨에 도달하지 않은 셀들이 있으면, 상기 프로그램 전압을 점진적으로 상승시키면서 상기 선택된 워드라인의 짝수차 메모리 셀들의 프로그램 동작을 반복하는 단계를 포함하는 반도체 장치의 동작방법.
  3. 제1항에 있어서,
    상기 선택된 워드라인의 홀수차 메모리 셀들을 프로그램하는 단계는,
    상기 선택된 워드라인에 프로그램 전압을 인가하여 상기 선택된 워드라인에 연결된 홀수차 메모리 셀들의 문턱전압을 상승시키는 단계;
    상기 선택된 워드라인에 연결된 홀수차 메모리 셀들의 문턱전압이 목표레벨에 모두 도달했는지를 판단하는 단계; 및
    상기 판단 결과 문턱전압이 상기 목표레벨에 도달하지 않은 셀들이 있으면, 상기 프로그램 전압을 점진적으로 상승시키면서 상기 선택된 워드라인의 홀수차 메모리 셀들의 프로그램 동작을 반복하는 단계를 포함하는 반도체 장치의 동작방법.
  4. 제1 워드라인의 짝수차 메모리 셀들을 프로그램하는 단계;
    상기 제1 워드라인의 홀수차 메모리 셀들을 프로그램하는 단계;
    상기 제1 워드라인에 인접한 제2 워드라인의 홀수차 메모리 셀들을 프로그램하는 단계;
    상기 제2 워드라인의 짝수차 메모리 셀들을 프로그램하는 단계;
    상기 제2 워드라인에 인접한 제3 워드라인의 짝수차 메모리 셀들을 프로그램하는 단계; 및
    상기 제3 워드라인의 홀수차 메모리 셀들을 프로그램하는 단계를 포함하는 반도체 장치의 동작방법.
  5. 선택된 메모리 셀 블록에 포함된 페이지들 중, 제N 페이지의 짝수차 메모리 셀들을 프로그램하는 단계;
    상기 제N 페이지의 짝수차 메모리 셀들의 프로그램이 완료되면, 상기 제N 페이지의 홀수차 메모리 셀들을 프로그램하는 단계;
    상기 제N 페이지의 홀수차 메모리 셀들의 프로그램이 완료되면, 상기 제N 페이지에 인접한 제N+1 페이지의 홀수차 메모리 셀들을 프로그램하는 단계; 및
    상기 제N+1 페이지의 홀수차 메모리 셀들의 프로그램이 완료되면, 상기 제N+1 페이지의 짝수차 메모리 셀들을 프로그램하는 단계를 포함하는 반도체 장치의 동작방법.
  6. 선택된 페이지의 하위비트 프로그램 동작을 수행하는 단계;
    상기 선택된 페이지의 짝수차 메모리 셀들의 상위비트 프로그램 동작을 수행한 후, 홀수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계;
    상기 선택된 페이지의 다음 페이지의 하위비트 프로그램 동작을 수행하는 단계;
    상기 다음 페이지의 홀수차 메모리 셀들의 상위비트 프로그램 동작을 수행한 후, 짝수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계를 포함하는 반도체 장치의 동작방법.
  7. 선택된 메모리 셀 블록의 하위비트 프로그램 동작을 수행하는 단계;
    상기 선택된 메모리 셀 블록에 포함된 페이지들 중, 선택된 페이지의 짝수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계;
    상기 선택된 페이지의 홀수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계;
    상기 선택된 페이지의 다음 페이지의 홀수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계; 및
    상기 다음 페이지의 짝수차 메모리 셀들의 상위비트 프로그램 동작을 수행하는 단계를 포함하는 반도체 장치의 동작방법.
  8. 제5 내지 7항 중 어느 하나의 항에 있어서,
    상기 페이지는 상기 메모리 셀 블록에 포함된 메모리 셀들 중, 동일한 워드라인에 연결된 메모리 셀들의 그룹인 반도체 장치의 동작방법.
  9. 다수의 페이지들이 포함된 메모리 셀 블록 및 플래그 셀 블록을 포함하는 메모리 셀 어레이;
    상기 메모리 셀 어레이의 워드라인들에 연결된 로우 디코더;
    구동전압을 생성하고, 상기 구동전압을 상기 로우 디코더에 전달하기 위한 전압 생성 회로;
    상기 메모리 셀 어레이의 비트라인들에 연결된 페이지 버퍼들; 및
    상기 메모리 셀 블록에 포함된 페이지들 중, 선택된 페이지의 짝수차 메모리 셀들과 홀수차 메모리 셀들을 순차적으로 프로그램한 후, 다음 페이지의 홀수차 메모리 셀들과 짝수차 메모리 셀들을 순차적으로 프로그램하는 방식으로 상기 메모리 셀 블록의 모든 선택된 메모리 셀들을 프로그램하기 위하여 상기 로우 디코더, 상기 전압 생성 회로 및 상기 페이지 버퍼들을 제어하기 위한 제어회로를 포함하는 반도체 장치.
KR1020110099086A 2011-09-29 2011-09-29 반도체 장치 및 이의 동작 방법 KR20130034919A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020110099086A KR20130034919A (ko) 2011-09-29 2011-09-29 반도체 장치 및 이의 동작 방법
US13/619,122 US20130083600A1 (en) 2011-09-29 2012-09-14 Semiconductor device and method of operating the same
DE102012217730A DE102012217730A1 (de) 2011-09-29 2012-09-28 Halbleitervorrichtung und Verfahren des Betreibens von dieser
TW101136029A TW201324514A (zh) 2011-09-29 2012-09-28 半導體裝置及其操作方法
CN2012103757103A CN103035292A (zh) 2011-09-29 2012-09-29 半导体器件及其操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110099086A KR20130034919A (ko) 2011-09-29 2011-09-29 반도체 장치 및 이의 동작 방법

Publications (1)

Publication Number Publication Date
KR20130034919A true KR20130034919A (ko) 2013-04-08

Family

ID=47878838

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110099086A KR20130034919A (ko) 2011-09-29 2011-09-29 반도체 장치 및 이의 동작 방법

Country Status (5)

Country Link
US (1) US20130083600A1 (ko)
KR (1) KR20130034919A (ko)
CN (1) CN103035292A (ko)
DE (1) DE102012217730A1 (ko)
TW (1) TW201324514A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150029404A (ko) * 2013-09-10 2015-03-18 에스케이하이닉스 주식회사 반도체 장치, 메모리 시스템 및 이의 동작 방법

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160011483A (ko) * 2014-07-22 2016-02-01 에스케이하이닉스 주식회사 메모리 장치
CN105513635B (zh) * 2014-09-23 2019-08-06 群联电子股份有限公司 编程方法、存储器存储装置及存储器控制电路单元
KR20170004698A (ko) * 2015-07-03 2017-01-11 에스케이하이닉스 주식회사 반도체 장치 및 이의 동작 방법
CN105719694B (zh) * 2016-01-22 2019-12-03 清华大学 Nand存储器的多比特编程方法及装置
JP6659494B2 (ja) * 2016-08-19 2020-03-04 キオクシア株式会社 半導体記憶装置及びメモリシステム
US11257552B2 (en) * 2019-02-21 2022-02-22 Macronix International Co., Ltd. Programming a memory device
JP7258697B2 (ja) * 2019-09-02 2023-04-17 キオクシア株式会社 半導体記憶装置
US11361825B2 (en) * 2019-12-18 2022-06-14 Micron Technology, Inc. Dynamic program erase targeting with bit error rate
KR20220012435A (ko) 2020-07-22 2022-02-04 삼성전자주식회사 비휘발성 메모리 장치, 그것의 동작 방법, 그것을 제어하는 제어기, 및 그것을 포함하는 저장 장치

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6987693B2 (en) * 2002-09-24 2006-01-17 Sandisk Corporation Non-volatile memory and method with reduced neighboring field errors
US7218552B1 (en) * 2005-09-09 2007-05-15 Sandisk Corporation Last-first mode and method for programming of non-volatile memory with reduced program disturb
US7400532B2 (en) * 2006-02-16 2008-07-15 Micron Technology, Inc. Programming method to reduce gate coupling interference for non-volatile memory
KR100763353B1 (ko) * 2006-04-26 2007-10-04 삼성전자주식회사 인접하는 메모리셀과의 커플링 노이즈를 저감시키는불휘발성 반도체 메모리 장치
KR101069004B1 (ko) * 2008-08-01 2011-09-29 주식회사 하이닉스반도체 플래시 메모리 소자의 프로그램 방법
US7839687B2 (en) * 2008-10-16 2010-11-23 Sandisk Corporation Multi-pass programming for memory using word line coupling

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150029404A (ko) * 2013-09-10 2015-03-18 에스케이하이닉스 주식회사 반도체 장치, 메모리 시스템 및 이의 동작 방법

Also Published As

Publication number Publication date
CN103035292A (zh) 2013-04-10
US20130083600A1 (en) 2013-04-04
DE102012217730A1 (de) 2013-04-04
TW201324514A (zh) 2013-06-16

Similar Documents

Publication Publication Date Title
KR101198515B1 (ko) 반도체 메모리 소자의 동작 방법
KR101211840B1 (ko) 반도체 메모리 장치의 프로그램 방법
KR101212387B1 (ko) 반도체 메모리 소자의 독출 방법
US8422305B2 (en) Method of programming nonvolatile memory device
US8971109B2 (en) Semiconductor memory device and method of operating the same
KR102192910B1 (ko) 반도체 장치, 메모리 시스템 및 이의 동작 방법
KR20130034919A (ko) 반도체 장치 및 이의 동작 방법
US8520435B2 (en) Nonvolatile memory device and method of operating the same
KR101184814B1 (ko) 불휘발성 메모리 장치 및 이의 프로그램 방법
US8780630B2 (en) Operating method of semiconductor device
US8804433B2 (en) Semiconductor memory device and operating method thereof
JP2013143155A (ja) 不揮発性半導体記憶装置とその書き込み方法
US8508992B2 (en) Semiconductor memory device and method of operating the same
KR101081311B1 (ko) 불휘발성 메모리 장치 및 그 동작 방법
JP2008091011A (ja) フラッシュメモリ素子とそのプログラム方法
KR20120059035A (ko) 반도체 메모리 장치의 프로그램 방법
US8351267B2 (en) Method of programming nonvolatile memory device
JP5784788B2 (ja) 不揮発性半導体記憶装置とその書き込み方法
KR101203256B1 (ko) 불휘발성 메모리 장치 및 이의 동작 방법
KR20110116473A (ko) 반도체 메모리 장치의 동작 방법
KR20130101858A (ko) 반도체 메모리 장치 및 이의 동작 방법
TWI553646B (zh) 半導體裝置及程式化其之方法
KR20120005841A (ko) 불휘발성 메모리 장치 및 그의 동작 방법
KR101124126B1 (ko) 불휘발성 메모리 소자의 프로그램 방법
KR20130008275A (ko) 반도체 메모리 장치 및 그 동작 방법

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid