KR100933861B1 - 불휘발성 메모리 소자 및 그 프로그램 검증 방법 - Google Patents

불휘발성 메모리 소자 및 그 프로그램 검증 방법 Download PDF

Info

Publication number
KR100933861B1
KR100933861B1 KR1020080021946A KR20080021946A KR100933861B1 KR 100933861 B1 KR100933861 B1 KR 100933861B1 KR 1020080021946 A KR1020080021946 A KR 1020080021946A KR 20080021946 A KR20080021946 A KR 20080021946A KR 100933861 B1 KR100933861 B1 KR 100933861B1
Authority
KR
South Korea
Prior art keywords
data
program
latch
input
unit
Prior art date
Application number
KR1020080021946A
Other languages
English (en)
Other versions
KR20090096870A (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 KR1020080021946A priority Critical patent/KR100933861B1/ko
Publication of KR20090096870A publication Critical patent/KR20090096870A/ko
Application granted granted Critical
Publication of KR100933861B1 publication Critical patent/KR100933861B1/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
    • 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
    • G11C16/26Sensing or reading circuits; Data output circuits

Landscapes

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

Abstract

본 발명은 불휘발성 메모리 소자의 프로그램 검증에 관한 것으로, 선택된 메모리 셀에 프로그램된 데이터를 독출 하는 단계; 상기 독출된 독출 데이터와 비교하기 위한 데이터를 입력받은 단계; 상기 독출 데이터와, 상기 입력받은 입력 데이터를 비교 판단하여, 그 결과에 따른 프로그램 패스 또는 프로그램 페일을 판단하는 단계; 및 상기 판단결과, 프로그램 페일된 메모리 셀의 개수가 설정된 페일 개수와 같거나 작은 경우, 프로그램 패스로 판단하여 프로그램을 완료하는 단계를 포함한다.
지능형 검증, 멀티 레벨 셀

Description

불휘발성 메모리 소자 및 그 프로그램 검증 방법{Non volatile memory device and method of program verifying the same}
본 발명은 불휘발성 메모리 소자에 관한 것으로, 특히 멀티 레벨 셀의 프로그램 동작시에 적용할 수 있는 불휘발성 메모리 소자 및 그 프로그램 검증 방법에 관한 것이다.
불휘발성 메모리인 플래시 메모리는 일반적으로 NAND 플래시 메모리와, NOR 플래시 메모리로 구분된다. NOR 플래시 메모리는 메모리 셀들이 각각 독립적으로 비트 라인과 워드 라인에 연결되는 구조를 가지므로 랜덤 액세스 시간 특성이 우수한 반면에, NAND 플래시 메모리는 복수개의 메모리 셀들이 직렬로 연결되어 셀 스트링 당 한 개의 컨택만을 필요로 하므로 집적도면에서 우수한 특성을 갖는다. 따라서 고집적 플래시 메모리에는 주로 NAND 구조가 사용되고 있다.
잘 알려진 NAND 플래시 메모리 장치는 메모리 셀 어레이, 행 디코더, 페이지 버퍼를 포함한다. 상기 메모리 셀 어레이는 행들을 따라 신장된 복수개의 워드 라인들과 열들을 따라 신장된 복수개의 비트라인들과 상기 비트라인들에 각각 대응되는 복수개의 셀 스트링들로 이루어진다.
불휘발성 메모리 소자는 메모리 셀에 데이터를 프로그램하는 동작에서, 프로그램이 되었는지를 확인하는 검증 과정이 중요한 과정 중 하나이다. 따라서 검증 과정에 소요되는 시간을 줄이는 것은 전체 프로그램 시간을 줄이기 위해 중요한 문제이다.
따라서 지능형(Intelligent) 검증 방식을 사용하기도 하는데, 지능형 검증 방법은 모든 비트가 패스가 되지 않고 설정된 개수 내의 페일이 발생된 경우는 프로그램 패스인 것으로 동작하게 하는 방법이다. 지능형 검증에서 페일난 비트는 에러 보정 등의 방법으로 수정이 가능하다.
한편, 최근에는 메모리 소자의 집적도를 더욱 향상시키기 위해 한 개의 메모리 셀의 복수개의 데이터를 저장할 수 있는 다중 비트 셀에 대한 연구가 활발히 진행되고 있다. 이러한 방식의 메모리 셀을 통상 멀티 레벨 셀(Multi Level Cell; MLC)라고 한다. 이와 대비되는 단일 비트의 메모리 셀을 싱글 레벨 셀(Single Level Cell; SLC)이라 한다.
그런데 현재 지능형 프로그램 검증 방식은 싱글 레벨 셀(SLC)에 대해서만 사용이 가능하다. 현재 지능형 프로그램 검증 방식은 워드라인 방식을 지원하기 때문에 멀티 레벨 셀에 지능형 프로그램 검증 방식을 적용하기 위해서는 데이터 독출을 3밴 해야 한다. 따라서 데이터 독출에 드는 시간이 많아져서 전체 프로그램 검증 시간이 길어지게 된다.
따라서 본 발명이 이루고자 하는 기술적 과제는 멀티 레벨 셀에 지능형 프로그램 검증 방식을 적용하는데 있어서 데이터 독출을 최소화 하고 효과적으로 검증을 수행하도록 하는 불휘발성 메모리 소자 및 그 프로그램 검증 방법을 제공하는데 있다.
본 발명의 특징에 따른 불휘발성 메모리 소자는,
멀티 레벨 셀들을 포함하는 메모리 셀 어레이; 상기 메모리 셀 어레이에 데이터를 프로그램하거나, 상기 메모리 셀 어레이에 저장된 데이터를 독출하기 위한 페이지 버퍼를 복수개 포함하는 페이지 버퍼부; 및 상기 페이지 버퍼부가 독출하는 프로그램된 데이터와, 실제 프로그램되어야 하는 데이터를 비교하여 프로그램 패스 또는 프로그램 페일을 판단하는 데이터 검증부를 포함한다.
상기 데이터 검증부는, 데이터 입출력을 위한 각각의 입출력부마다 포함되는 비교 회로를 포함하고 각각의 비교 회로는, 상기 페이지 버퍼부가 독출한 데이터와, 실제 프로그램되어야 하는 데이터가 같은 데이터인지 여부를 비교하는 비교기; 및 상기 비교기가 출력하는 결과중, 상기 독출 데이터와 프로그램되어야 하는 데이터가 일치하지 않는 경우를 카운팅하는 카운터를 포함한다.
상기 실제 프로그램되어야 하는 데이터는, 프로그램 입력 명령에 따라 입력되는 데이터인 것을 특징으로 한다.
상기 데이터 검증부는, 상기 카운터의 카운팅 결과를 저장하는 저장부를 포함하는 것을 특징으로 한다.
상기 카운터는, 카운팅 결과가 미리 설정된 최대 페일 비트 개수를 초과하면 이를 표시하는 플래그 정보를 설정하는 것을 특징으로 한다.
본 발명의 다른 특징에 따른 불휘발성 메모리 소자는,
멀티 레벨 셀들을 포함하는 메모리 셀 어레이; 상기 메모리 셀 어레이에 데이터를 프로그램하거나, 상기 메모리 셀 어레이에 저장된 데이터를 독출하기 위한 페이지 버퍼를 복수개 포함하는 페이지 버퍼부; 및 상기 페이지 버퍼부로 입출력되는 데이터 입출력 경로를 제공하고, 프로그램 검증을 위한 데이터 비교 수단을 포함하는 데이터 입출력부를 포함한다.
상기 데이터 비교 수단은 상기 데이터 입출력부의 입출력부에 각각 구성되고, 각각의 비교 수단은, 상기 페이지 버퍼부가 독출한 데이터와, 실제 프로그램되어야 하는 데이터가 같은 데이터인지 여부를 비교하는 비교기; 및 상기 비교기가 출력하는 결과중, 상기 독출 데이터와 프로그램되어야 하는 데이터가 일치하지 않는 경우를 카운팅하는 카운터를 포함한다.
상기 실제 프로그램되어야 하는 데이터는, 프로그램 입력 명령에 따라 입력되는 데이터인 것을 특징으로 한다.
상기 데이터 비교수단은, 상기 카운터의 카운팅 결과를 저장하는 저장부를 포함하는 것을 특징으로 한다.
상기 카운터는, 카운팅 결과가 미리 설정된 최대 페일 비트 개수를 초과하면 이를 표시하는 플래그 정보를 설정하는 것을 특징으로 한다.
본 발명의 다른 특징에 따른 불휘발성 메모리 소자의 프로그램 검증 방법은,
데이터의 프로그램 검증 방법에 있어서, 선택된 메모리 셀에 프로그램된 데이터를 독출하는 단계; 상기 독출된 독출 데이터와 비교하기 위한 데이터를 입력받은 단계; 상기 독출 데이터와, 상기 입력받은 입력 데이터를 비교 판단하여, 그 결과에 따른 프로그램 패스 또는 프로그램 페일을 판단하는 단계; 및 상기 판단결과, 프로그램 페일된 메모리 셀의 개수가 설정된 페일 개수와 같거나 작은 경우, 프로그램 패스로 판단하여 프로그램을 완료하는 단계를 포함한다.
상기 독출 데이터는 상기 메모리 셀에 연결되는 페이지 버퍼의 제 2 래치에 저장되고, 상기 입력 데이터는 상기 페이지 버퍼의 제 1 래치에 저장되는 것을 특징으로 한다.
상기 독출 데이터와 상기 입력 데이터의 비교 판단은, 상기 제 1 래치의 데이터를 상기 페이지 버퍼의 제 3 래치로 이동하고, 상기 제 1 래치를 초기화하는 단계; 상기 제 3 래치의 데이터를 상기 제 1 래치로 반전하여 이동하는 단계; 상기 제 2 래치의 데이터 상태에 따라 상기 제 1 래치의 데이터 상태를 변경시키는 단계; 상기 제 3 래치의 데이터 상태에 따라 상기 제 2 래치의 데이터 상태를 변경시키는 단계; 상기 제 2 래치의 데이터 상태에 따라 상기 제 1 래치의 데이터 상태를 변경시키는 단계; 및 상기 제 1 래치의 데이터를 상기 제 2 래치로 이동하는 단계를 포함한다.
상기 제 2 래치의 가장 마지막 데이터 상태에 따라 프로그램 패스 또는 프로 그램 페일을 판단하는 것을 특징으로 한다.
상기 프로그램 페일된 메모리 셀의 개수가 설정된 페일 개수보다 큰 경우, 상기 메모리 셀의 프로그램 전압을 높여서 프로그램을 수행하는 것을 특징으로 한다.
이상에서 설명한 바와 같이, 본 발명에 따른 불휘발성 메모리 소자 및 그 프로그램 검증 방법은 멀티 레벨 셀에 적용하는 지능형 프로그램 검증 방법에서 데이터 독출을 최소화 하고, 외부에서 입력되는 데이터와 독출 데이터를 비교하여 검증을 수행하도록 하는 검증 수단을 구비하여 효과적으로 멀티 레벨 셀에 지능형 프로그램 검증 방법을 사용하도록 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 설명하기로 한다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하며 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.
도 1a는 본 발명의 제 1 실시 예에 따른 플래시 메모리 소자의 블록도이다.
도 1a를 참조하면, 플래시 메모리 소자(100)는 메모리 셀 어레이(110)와, 페이지 버퍼부(120)와, Y 디코더(130)와, X 디코더(140)와 전압 제공부(150)와 제어부(160)와, 데이터 입출력부(170) 및 데이터 검증부(180)를 포함한다.
메모리 셀 어레이(110)는 데이터 저장을 위한 메모리 셀들이 직렬로 연결된 셀 스트링들이 복수개 포함되고, 각각의 셀 스트링들은 비트라인(BL)에 연결된다. 또한 상기 비트라인과 직교하는 방향으로 메모리 셀들의 게이트가 워드라인(WL)으로 연결된다.
페이지 버퍼부(120)는 상기 메모리 셀 어레이(110)의 비트라인에 연결되는 페이지 버퍼(121)가 복수개 포함되는데, 각각의 페이지 버퍼(121)는 선택된 메모리 셀에 프로그램할 데이터를 임시 저장하였다가 비트라인을 통해 메모리 셀에 전달하거나, 메모리 셀에 저장된 데이터를 독출 하여 저장한다.
상기 페이지 버퍼는 다수의 래치 회로를 포함하고 있으며, 하나의 래치 회로를 이용해서 프로그램을 수행하는 동안 다른 하나의 래치 회로에는 캐시 프로그램할 데이터를 입력받을 수 있다.
Y 디코더(130)는 입력 어드레스에 따라 페이지 버퍼부(120)의 페이지 버퍼(121)에 입출력 경로를 제공하고, X 디코더(140)는 입력 어드레스에 따라 메모리 셀 어레이(110)의 워드라인을 선택한다.
전압 제공부(150)는 제어부(160)의 제어에 따라 상기 X 디코더(140)가 연결하는 워드라인에 제공할 동작 전압을 생성하고, 제어부(160)는 동작 명령에 따른 제어신호를 출력하며, 메모리 셀 어레이(110)의 데이터 프로그램 정도에 따라 설정되어 있는 패스전압을 제공할 수 있도록 전압 제공부(150)를 제어한다.
데이터 입출력부(170)는 제어부(160)의 제어에 따라 플래시 메모리 소자(100)의 IO 패드로부터 입력되는 프로그램할 데이터를 Y 디코더(130) 또는 데이 터 검증부(180)로 전달하고, 상기 Y 디코더(130)를 통해 출력되는 데이터를 IO 패드로 전달한다.
데이터 검증부(180)는 페이지 버퍼부(120)에서 지능형 검증을 위해 독출한 데이터와, 데이터 입출력부(170)로부터 전달되는 데이터를 비교하여 검증 결과를 출력한다.
상기 페이지 버퍼부(120)에 포함되는 다수의 페이지 버퍼(121)들은 LSB(Least Significant Bit) 프로그램과, MSB(Most Significant Bit) 프로그램을 위해 3 개의 래치를 가진다.
도 1b는 상기 페이지 버퍼의 상세 회로도이다.
도 1b를 참조하면, 페이지 버퍼(121)는 센싱부(122)와, 프리차지부(123)와 래치부(124) 및 검증부(128)를 포함한다.
센싱부(122)는 데이터 독출시에 입력 어드레스에 의해 연결된 비트라인의 전압을 센싱 한다. 센싱부(122)가 센싱한 결과는 센싱노드(SO)로 반영된다.
프리차지부(123)는 센싱 노드(SO)를 프리차지시키고, 래치부(124)는 다수의 래치 회로들이 센싱노드(SO)와 연결되어 상기 센싱노드(SO)의 전압 레벨에 따라 메모리 셀에 저장된 데이터를 래치회로에 저장하거나, 프로그램할 데이터를 래치회로에 저장하고 있다가 센싱노드(SO)로 전달한다.
래치부(124)는 제 1 내지 제 3 래치회로부(125 내지 127)를 포함한다. 제 1 래치 회로부(125)는 캐시(Cache) 프로그램을 위한 데이터를 임시 저장하거나, 지능형 검증(Intelligent Verify; 이하 IV라 함)을 수행하기 위해 이용된다. 그리고 제 2 래치회로부(126)는 프로그램을 위한 메인(Main) 래치의 역할을 하며, 제 3 래치 회로부(127)는 임시(Temp) 래치 동작을 수행한다.
검증부(128)는 제 1 및 제 2 래치회로부(125, 126)의 사이에 연결되어 프로그램 검증을 위한 검증신호를 출력한다.
상기 센싱부(122)는 제 1 NMOS 트랜지스터(N1)를 포함하며, 프리차지부(123)는 PMOS 트랜지스터(P)를 포함한다.
그리고 제 1 래치회로부(125)는 제 2 내지 제 4 NMOS 트랜지스터(N2 내지 N4)를 포함하고, 제 1 내지 제 2 인버터(IN1, IN2)를 포함한다. 그리고 제 2 래치회로부(126)는 제 1 내지 제 3 NMOS 트랜지스터(N5 내지 N7)와 제 3 및 제 4 인버터(IN3, IN4)를 포함한다.
제 3 래치회로부(127)는 제 4 내지 제 7 NMOS 트랜지스터(N8 내지 N11)와 제 5 및 제 6 인버터(IN5, IN6)를 포함하고, 검증부는 제 9 내지 제 11 NMOS 트랜지스터(N13 내지 N15)를 포함한다. 또한 래치부(124)에는 제 8 NMOS 트랜지스터(N12)가 포함된다.
제 1 NMOS 트랜지스터(N1)는 비트라인과 센싱노드(SO) 사이에 연결되고, 제 1 NMOS 트랜지스터(N1)의 게이트에는 센싱제어신호(PBSENSE)가 입력된다. 상기 제 1 NMOS 트랜지스터(N1)는 연결되는 비트라인의 전압과 센싱 제어신호(PBSENSE)의 전압 레벨에 따라 턴 온 또는 턴오프 된다. 상기 제 1 NMOS 트랜지스터(N1)가 턴 온 또는 턴오프 됨에 따라 센싱노드(SO)의 전압 레벨이 달라져 래치부(124)에 저장되는 데이터가 달라진다.
PMOS 트랜지스터(P)는 전원전압과 센싱노드(SO)사이에 연결되고, PMOS 트랜지스터(P)의 게이트에는 프리차지 제어신호(PRECH_N)가 입력된다.
그리고 제 2 NMOS 트랜지스터(N2)는 센싱노드(SO)와 노드(QC_N)사이에 연결되고, 제 2 NMOS 트랜지스터(N2)의 게이트에는 제 1 데이터 전송신호(TRANC)가 입력된다.
제 1 및 제 2 인버터(IN1, IN2)는 노드(QC)와 노드(QC_N) 사이에 래치회로 형태로 연결되어 제 1 래치(L1)를 구성한다.
제 3 NMOS 트랜지스터(N3)는 노드(QC)와 노드(K1) 사이에 연결되고, 제 4 NMOS 트랜지스터(N4)는 노드(QC_N)와 노드(K1) 사이에 연결된다. 그리고 제 3 및 제 4 NMOS 트랜지스터(N3, N4)의 게이트에는 각각 제 1 리셋 신호(CRST)와 제 1 세트신호(CSET)가 입력된다.
제 5 NMOS 트랜지스터(N5)는 센싱노드(SO)와 노드(QM_N) 사이에 연결되고, 제 5 NMOS 트랜지스터(N5)의 게이트에는 제 2 데이터 전송신호(TRANM)가 입력된다. 그리고 제 3 및 제 4 인버터(IN3, IN4)는 노드(QM)와 노드(QM_N) 사이에 래치 회로 형태로 연결되어 제 2 래치(L2)를 구성한다.
제 6 NMOS 트랜지스터(N6)는 노드(QM)와 노드(K1) 사이에 연결되고, 제 7 NMOS 트랜지스터(N7)는 노드(QM_N)와 노드(K1) 사이에 연결된다. 제 6 및 제 7 NMOS 트랜지스터(N6, N7)의 게이트에는 각각 제 2 리셋 신호(MRST)와 제 2 세트신호(MSET)가 입력된다.
제 8 NMOS 트랜지스터(N8)는 센싱노드(SO)와 노드(QT) 사이에 연결되고, 제 9 NMOS 트랜지스터(N9)는 센싱노드(SO)와 노드(QT_N)사이에 연결된다. 제 8 및 제 9 NMOS 트랜지스터(N8, N9)의 게이트에는 각각 제 3 데이터 전송반전 신호(TRANT_N)와 제 3 데이터 전송신호(TRANT)가 입력된다.
제 5 및 제 6 인버터(IN5, IN6)는 노드(QT)와 노드(QT_N) 사이에 래치회로 형태로 연결되어 제 3 래치(L3)를 구성한다.
제 10 NMOS 트랜지스터(N10)는 노드(QT)와 노드(K1) 사이에 연결되고, 제 11 NMOS 트랜지스터(N11)는 노드(QT_N)와 노드(K1) 사이에 연결된다. 제 10 및 제 11 NMOS 트랜지스터(N10, N11)의 게이트에는 각각 제 3 리셋 신호(TRST)와 제 3 세트신호(TSET)가 입력된다.
제 12 NMOS 트랜지스터(N12)는 노드(K1)와 접지노드 사이에 연결되고, 제 12 NMOS 트랜지스터(N12)의 게이트에는 센싱노드(SO)가 연결된다.
제 13 및 제 14 NMOS 트랜지스터(N13, N14)는 노드(K2)와 검증신호 출력노드(nWDo) 사이에 연결되고, 제 13 NMOS 트랜지스터(N13)의 게이트는 노드(QC_N)에 연결되고, 제 14 NMOS 트랜지스터(N14)의 게이트에는 페이지 버퍼 체크신호(PBCHECK)가 연결된다.
그리고 제 15 NMOS 트랜지스터(N15)는 접지노드와 노드(K2) 사이에 연결되고, 제 15 NMOS 트랜지스터(N15)의 게이트는 노드(QM)가 연결된다.
또한, 데이터 검증부(180)는 다음과 같다.
도 1c는 데이터 검증부 비교 회로의 상세 회로도이다.
도 1c를 참조하면, 데이터 검증부(180)는 데이터 입출력부(170)의 IO와 각각 연결되는 비교 회로(181)를 복수개 포함하는데, 비교 회로(181)는 PMOS 트랜지스터와 NMOS 트랜지스터로 구성되는 인버터(IN10)와, 입력되는 두 개의 데이터가 동일한 데이터 인지 여부를 비교하는 비교기(182)와, 상기 비교기(COM)의 출력 결과를 카운팅 하는 카운터(183)를 포함한다. 그리고 상기 카운터(183)는 최대 페일 발생 비트 정보를 저장하고, 카운팅 정보와, 플래그 정보 등을 저장하기 위한 저장부(184)를 포함한다.
비교기(182)는 제 1 및 제 2 입력단(a, b)이 있고, 상기 제 1 및 제 2 입력단(a, b)으로 입력되는 데이터가 동일한 경우에는 '0'데이터를 출력하고, 상기 제 1 및 제 2 입력단(a, b)으로 입력되는 데이터가 서로 다른 경우에는 '1'데이터를 출력한다. 상기 비교기(182)가 출력하는 데이터는 서로 바뀔 수도 있다. 상기 비교기(182)가 출력하는 '1'데이터는 프로그램 페일이 발생한 비트라는 의미이다.
비교기(182)의 제 1 입력단(a)에는 페이지 버퍼(121)로부터 전송되는 독출 데이터가 입력된다. 그리고 제 1 입력단(b)에는 인버터(IN10)의 출력 데이터가 입력되는데, 상기 PMOS 트랜지스터와 NMOS 트랜지스터로 구성되는 인버터(IN10)는 데이터 입출력부(170)로부터 입력되는 비교 데이터를 반전하여 출력한다.
그리고 카운터(183)는 상기 비교기(COM)가 출력하는 '1'데이터를 카운팅하고, 그 결과를 저장부(184)에 저장한다. 또한 제어부(160)를 통해서 최대 페일 비트의 개수를 설정하면, 그 정보가 상기 카운터(183)의 저장부(184)에 저장되며, 카운터(183)가 카운팅한 '1'데이터의 개수와 저장된 최대 페일 비트의 개수를 비교하여 프로그램 패스 또는 페일을 나타내는 플래그 데이터를 설정하여 저장할 수 있 다.
상기 플래그 데이터는 현재 프로그램 검증 결과가 패스인지, 아니면 페일인지를 나타내는 것이다. 프로그램 페일로 판단이 되면 다시 프로그램 전압을 프로그램을 진행할 수 있다.
따라서 카운터(183)는 저장부(184)에 저장되는 카운팅 정보와 플래그 정보를 데이터 입출력부(170)로 전송한다.
상기 비교 회로(181)의 동작은 다음과 같다.
플래시 메모리 소자(100)의 외부 IO 패드를 통해 검증 테스트를 위한 테스터(Tester)가 연결될 수 있고, 프로그램 이후의 검증을 위해서 페이지 버퍼부(120)는 데이터를 독출하여 제 1 입력단(a)으로 전송하고, 외부의 테스터는 그와 비교할 데이터의 반전 값을 인버터(IN10)로 입력한다. 인버터(IN10)는 입력되는 데이터를 반전하여 제 2 입력단(b)으로 출력한다.
비교기(182)는 제 1 및 제 2 입력단(a, b)으로 입력되는 데이터가 동일하면 '0'데이터를 출력하고, 서로 틀리면 '1'데이터를 출력한다.
카운터(183)는 비교기(182)가 출력하는 '1'데이터의 수를 카운팅하고, 카운팅된 값은 다시 테스터로 전송된다.
상기 비교 회로(181)는 IO의 개수만큼 구비되고, 일반적인 플래시 메모리 소자(100)는 8 개의 IO를 가진다. 또한 데이터 검증부(180)가 상기 도 1a와 같이 별도로 구비되거나, 데이터 입출력부(170)에 포함되어 구성될 수도 있다.
상기의 제 1 실시 예에서는 플래시 메모리 소자(100)에서 지능형 프로그램 검증을 위해서 입력 데이터와, 독출 데이터를 비교하는 비교 회로를 구비한 경우이다. 다음은 별도의 비교 회로 없이 페이지 버퍼에서 지능형 프로그램 검증을 하도록 하는 제 2 실시예의 방법을 설명하기로 한다.
도 2a는 본 발명의 제 2 실시 예에 따른 지능형 프로그램 검증 동작 순서도이다.
도 2a를 참조하면, 상기 도 1a와 같은 플래시 메모리 소자(100)에서 데이터검증부(180)가 별도로 구비되지 않은 상태에서, 페이지 버퍼부(120)에 프로그램할 데이터를 입력하여 프로그램을 수행한다(S210).
그리고 프로그램 검증을 위하여, 페이지버퍼부(120)의 페이지 버퍼(121)들에 메모리 셀에 저장되어 있는 데이터를 독출한다(S230). 이때의 독출 명령은 00H를 이용한다.
그리고 독출된 데이터와 비교하기 위한 데이터를 입력받는다(S250). 이때는 데이터 입력을 위한 명령어인 80H를 사용할 수 있다.
이후에는 상기 단계S230의 독출 데이터와 단계 S250의 입력 데이터가 동일한지 유무를 비교하여(S270), 프로그램 상태를 체크한다(S290). 이때 데이터 비교를 위해 명령어 2FH를 사용할 수 있다.
상기 데이터 비교 과정을 상기 도 1b의 페이지 버퍼(121)를 참고하여 좀 더 상세히 설명하면 다음과 같다.
도 2b는 도 2a의 데이터 비교 동작 순서도이다.
도 2b를 참조하면, 먼저 프로그램 동작 이후에 선택된 메모리 셀에 저장된 데이터를 제 2 래치(L2)의 노드(QM_N)로 독출해온다(S230). 그리고 데이터 입력 명령에 의해 비교할 데이터를 제 1 래치(L1)의 노드(QC_N)로 입력받는다(S250).
본 발명의 제 2 실시예의 설명에서, 메모리 셀의 데이터 상태는 '1' 또는 '0'이고, 각각의 데이터 상태가 프로그램 패스 또는 페일인 경우의 4가지 경우(A 내지 D)로 생각할 수 있다.
즉, 첫 번째 경우(A)는 실제 메모리 셀에 저장되어야 하는 데이터는 '1'이고, 독출 결과 페이지 버퍼(121)의 노드(QM_N)에 입력되는 데이터가 '1'인 경우이다. 이 경우는 프로그램 패스(Pass)로 결과가 나와야 한다. 그리고 두 번째 경우(B)는 실제 데이터가 '1'이고, 독출데이터가 '0'인 경우로, 이 경우는 프로그램 페일(Fail)로 결과가 나와야 한다.
마찬가지로, 세 번째와 네 번째(C, D)는 각각 패스인 경우와 페일인 경우가 된다.
따라서 단계 S230에서 독출되는 데이터는 4가지 경우를 한번에 표시하면, '1001' 된다. 그리고 단계S250에서 입력되는 데이터는 4가지 경우를 한번에 표시하여 '1100'이 된다.
상기와 같이 4 가지 경우에 대한 페이지 버퍼(121)의 제 1 내지 제 3 래치(L1 내지 L3)에 저장되는 데이터는 다음의 표와 같다.
Figure 112008017199201-pat00001
표 1과 같이 제 1 및 제 2 래치(L1, L2)에 데이터가 입력된 이후에 비교 명령(2FH)이 입력되면(S271), 먼저 제 1 래치(L1)의 데이터를 제 3 래치(L3)로 전달한다(S272). 이를 위해서 페이지 버퍼(121)의 제 2 NMOS 트랜지스터(N2)를 턴온 시키기 위한 제 1 데이터 전송신호(TRANC)가 하이레벨로 입력되고, 제 3 리셋 신호(TRST)가 하이 레벨로 입력된다. 그 결과로 표 1에 나타나 바와 같이, QT_N노드가 '1100'상태가 된다.
이후에 제1 래치(L1)를 리셋 한다(S273). 이때의 리셋은 센싱노드(SO)를 프리차지 한 후 제 1 리셋 신호(CRST)를 인가한다.
제 1 래치(L1)를 리셋한 이후에는, 제 3 래치(L3)의 데이터를 다시 제 1 래치(L1)로 입력하는, 이때 제 3 래치(L3)의 노드(QT_N)의 데이터를 반전하여 제 1 래치(L1)의 노드(QC_N)에 입력한다(S274). 이를 위하여 제 3 데이터 전송신호(TRANT)와, 제 1 세트신호(CSET)가 입력된다. 그 결과로 노드(QC_N)는 '0011'이 된다.
이후에는 제 2 래치(L2)에 저장되어 있는 독출 데이터를 제 1 래치(L1)로 입력한다(S275). 이를 위해서 제 2 데이터 전송신호(TRANM)와 제 1 리셋신호(CRST)가 입력된다. 상기의 제 2 래치(L2)의 데이터를 제 1 래치(L1)로 입력하면, 제 1 래치(L1)에 저장되는 데이터는 '0011'에서 '1011'로 변경된다.
그리고 제 3 래치(L3)의 데이터를 제 2 래치(L2)로 전달한다(S276). 이를 위해서 제 3 데이터 전송신호(TRANT)와 제 2 세트 신호(MSET)를 인가한다. 이 동작에 의해 제 2 래치(L2)의 데이터 상태는 '1001'에서 '0001'로 변경된다.
다음으로는 제 2 래치(L2)의 데이터를 제 1 래치(L1)로 전송한다(S277). 이때는 제 2 데이터 전송신호(TRANT)와 제 1 세트 신호(CSET)를 인가하고, 제 1 래치(L1)는 '10110'이 된다.
마지막으로 제 1 래치(L1)의 데이터를 다시 제 2 래치(L2)로 전송한다(S278). 이때는 제 1 데이터 전송신호(TRANC)와 제 2 리셋 신호 및 제 2 세트 신호(MSET, MRST)가 인가되고, 제 2 래치(L2)의 데이터는 '1010'이 된다.
따라서 검증부(128)는 상기 제 2 래치(L2)의 데이터 상태에 따라 검증 신호를 , 패스-페일-패스-페일로 출력할 수 있다. 이는 앞서 도 2b를 설명할 때 가정한 4 가지 경우의 프로그램 패스, 페일 결과와 같다.
즉, 한번의 데이터 독출만으로 지능형 프로그램 검증을 수행할 수 있다. 상기 검증 수행 결과는 제어부(160)로 전달되고, 제어부(160)는 에러 보정이 가능한 범위에서 페일이 발생한 경우 프로그램 패스로 판단한다.
상기에서 설명한 본 발명의 기술적 사상은 바람직한 실시 예에서 구체적으로 기술되었으나, 상기한 실시 예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명은 본 발명의 기술분야의 통상의 전문가라면 본 발명의 기술적 사상의 범위 내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.
도 1a는 본 발명의 제 1 실시 예에 따른 플래시 메모리 소자의 블록도이다.
도 1b는 상기 페이지 버퍼의 상세 회로도이다.
도 1c는 데이터 검증부 비교 회로의 상세 회로도이다.
도 2a는 본 발명의 제 2 실시 예에 따른 지능형 프로그램 검증 동작 순서도이다.
도 2b는 도 2a의 데이터 비교 동작 순서도이다.
*도면의 주요 부분의 간단한 설명*
100 : 플래시 메모리 소자 110 : 메모리 셀 어레이
120 : 페이지 버퍼부 130 : Y 디코더
140 : X 디코더 150 : 전압 제공부
160 : 제어부 170 : 데이터 입출력부
180 : 데이터 검증부

Claims (15)

  1. 멀티 레벨 셀들을 포함하는 메모리 셀 어레이;
    상기 메모리 셀 어레이에 데이터를 프로그램하거나, 상기 메모리 셀 어레이에 저장된 데이터를 독출하기 위한 페이지 버퍼를 복수개 포함하는 페이지 버퍼부; 및
    상기 페이지 버퍼부가 독출하는 프로그램된 데이터와, 실제 프로그램되어야 하는 데이터를 비교하여 프로그램 패스 또는 프로그램 페일을 판단하는 데이터 검증부를 포함하고,
    상기 데이터 검증부는,
    데이터 입출력을 위한 각각의 입출력부마다 포함되는 비교 회로를 포함하고 각각의 비교 회로는,
    상기 페이지 버퍼부가 독출한 데이터와, 실제 프로그램되어야 하는 데이터가 같은 데이터인지 여부를 비교하는 비교기; 및
    상기 비교기가 출력하는 결과중, 상기 독출 데이터와 프로그램되어야 하는 데이터가 일치하지 않는 경우를 카운팅하여 프로그램 검증 패스 또는 페일을 판단하는 플래그 정보를 설정하는 카운터를 포함하는 불휘발성 메모리 소자.
  2. 삭제
  3. 제 1항에 있어서,
    상기 실제 프로그램되어야 하는 데이터는, 프로그램 입력 명령에 따라 입력되는 데이터인 것을 특징으로 하는 불휘발성 메모리 소자.
  4. 제 1항에 있어서,
    상기 데이터 검증부는,
    상기 카운터의 카운팅 결과를 저장하는 저장부를 포함하는 것을 특징으로 하는 불휘발성 메모리 소자.
  5. 제 1항에 있어서,
    상기 카운터는,
    카운팅 결과가 미리 설정된 최대 페일 비트 개수를 초과하면 이를 표시하는 플래그 정보를 설정하는 것을 특징으로 하는 불휘발성 메모리 소자.
  6. 멀티 레벨 셀들을 포함하는 메모리 셀 어레이;
    상기 메모리 셀 어레이에 데이터를 프로그램하거나, 상기 메모리 셀 어레이에 저장된 데이터를 독출하기 위한 페이지 버퍼를 복수개 포함하는 페이지 버퍼부; 및
    상기 페이지 버퍼부로 입출력되는 데이터 입출력 경로를 제공하고, 프로그램 검증을 위한 데이터 비교 수단을 포함하는 데이터 입출력부를 포함하고,
    상기 데이터 비교 수단은 상기 데이터 입출력부의 입출력부에 각각 구성되고, 각각의 데이터 비교 수단은,
    상기 페이지 버퍼부가 독출한 데이터와, 실제 프로그램되어야 하는 데이터가 같은 데이터인지 여부를 비교하는 비교기; 및
    상기 비교기가 출력하는 결과중, 상기 독출 데이터와 프로그램되어야 하는 데이터가 일치하지 않는 경우를 카운팅하여 프로그램 패스 또는 페일을 판단하는 플래그 정보를 설정하는 카운터
    를 포함하는 불휘발성 메모리 소자.
  7. 삭제
  8. 제 6항에 있어서,
    상기 실제 프로그램되어야 하는 데이터는, 프로그램 입력 명령에 따라 입력되는 데이터인 것을 특징으로 하는 불휘발성 메모리 소자.
  9. 제 6항에 있어서,
    상기 데이터 비교 수단은,
    상기 카운터의 카운팅 결과를 저장하는 저장부를 포함하는 것을 특징으로 하는 불휘발성 메모리 소자.
  10. 제 6항에 있어서,
    상기 카운터는,
    카운팅 결과가 미리 설정된 최대 페일 비트 개수를 초과하면 이를 표시하는 플래그 정보를 설정하는 것을 특징으로 하는 불휘발성 메모리 소자.
  11. 데이터의 프로그램 검증 방법에 있어서,
    선택된 메모리 셀들을 프로그램하는 단계;
    상기 선택된 메모리 셀에 프로그램된 데이터를 독출하는 단계;
    상기 독출된 독출 데이터와 비교하기 위한 데이터를 입력받은 단계;
    상기 독출 데이터와, 상기 입력받은 입력 데이터를 비교 판단하여, 그 결과에 따른 프로그램 패스 또는 프로그램 페일을 판단하는 단계; 및
    상기 판단결과, 프로그램 페일된 메모리 셀의 개수가 설정된 페일 개수와 같거나 작은 경우, 프로그램 패스로 판단하여 프로그램을 완료하는 단계
    를 포함하는 불휘발성 메모리 소자의 프로그램 검증 방법.
  12. 제 11항에 있어서,
    상기 독출 데이터는 상기 메모리 셀에 연결되는 페이지 버퍼의 제 2 래치에 저장되고, 상기 입력 데이터는 상기 페이지 버퍼의 제 1 래치에 저장되는 것을 특징으로 하는 불휘발성 메모리 소자의 프로그램 검증 방법.
  13. 제 12항에 있어서,
    상기 독출 데이터와 상기 입력 데이터의 비교 판단은,
    상기 제 1 래치의 데이터를 상기 페이지 버퍼의 제 3 래치로 이동하고, 상기 제 1 래치를 초기화하는 단계;
    상기 제 3 래치의 데이터를 상기 제 1 래치로 반전하여 이동하는 단계;
    상기 제 2 래치의 데이터 상태에 따라 상기 제 1 래치의 데이터 상태를 변경시키는 단계;
    상기 제 3 래치의 데이터 상태에 따라 상기 제 2 래치의 데이터 상태를 변경시키는 단계;
    상기 제 2 래치의 데이터 상태에 따라 상기 제 1 래치의 데이터 상태를 변경시키는 단계; 및
    상기 제 1 래치의 데이터를 상기 제 2 래치로 이동하는 단계
    를 포함하는 불휘발성 메모리 소자의 프로그램 검증 방법.
  14. 제 13항에 있어서,
    상기 제 2 래치의 가장 마지막 데이터 상태에 따라 프로그램 패스 또는 프로그램 페일을 판단하는 것을 특징으로 하는 불휘발성 메모리 소자의 프로그램 검증 방법.
  15. 제 14항에 있어서,
    상기 프로그램 페일된 메모리 셀의 개수가 설정된 페일 개수보다 큰 경우, 상기 메모리 셀의 프로그램 전압을 높여서 프로그램을 수행하는 것을 특징으로 하는 불휘발성 메모리 소자의 프로그램 검증 방법.
KR1020080021946A 2008-03-10 2008-03-10 불휘발성 메모리 소자 및 그 프로그램 검증 방법 KR100933861B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080021946A KR100933861B1 (ko) 2008-03-10 2008-03-10 불휘발성 메모리 소자 및 그 프로그램 검증 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080021946A KR100933861B1 (ko) 2008-03-10 2008-03-10 불휘발성 메모리 소자 및 그 프로그램 검증 방법

Publications (2)

Publication Number Publication Date
KR20090096870A KR20090096870A (ko) 2009-09-15
KR100933861B1 true KR100933861B1 (ko) 2009-12-24

Family

ID=41356407

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080021946A KR100933861B1 (ko) 2008-03-10 2008-03-10 불휘발성 메모리 소자 및 그 프로그램 검증 방법

Country Status (1)

Country Link
KR (1) KR100933861B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107154275A (zh) * 2016-03-04 2017-09-12 华邦电子股份有限公司 半导体存储装置及输入数据的验证方法
US11307919B2 (en) 2019-07-03 2022-04-19 SK Hynix Inc. Fail information control circuit, semiconductor apparatus including the same, and fail information control method of semiconductor apparatus

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101200125B1 (ko) * 2010-12-20 2012-11-12 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060099940A (ko) * 2005-03-15 2006-09-20 주식회사 하이닉스반도체 사전 소거 검증을 위한 페이지 버퍼를 갖는 불휘발성 메모리 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060099940A (ko) * 2005-03-15 2006-09-20 주식회사 하이닉스반도체 사전 소거 검증을 위한 페이지 버퍼를 갖는 불휘발성 메모리 장치

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107154275A (zh) * 2016-03-04 2017-09-12 华邦电子股份有限公司 半导体存储装置及输入数据的验证方法
CN107154275B (zh) * 2016-03-04 2021-01-12 华邦电子股份有限公司 半导体存储装置及输入数据的验证方法
US11307919B2 (en) 2019-07-03 2022-04-19 SK Hynix Inc. Fail information control circuit, semiconductor apparatus including the same, and fail information control method of semiconductor apparatus

Also Published As

Publication number Publication date
KR20090096870A (ko) 2009-09-15

Similar Documents

Publication Publication Date Title
US8059460B2 (en) Method of programming nonvolatile memory device
US7515484B2 (en) Page buffer circuit of memory device and program method
US8767481B2 (en) Nonvolatile memory device and method of operating the same
CN101533673B (zh) 测试非易失性存储设备的方法
KR100880320B1 (ko) 플래시 메모리 소자 및 프로그램 방법
US8804391B2 (en) Semiconductor memory device and method of operating the same
US8194464B2 (en) Page buffer of nonvolatile memory device and method of performing program verification operation using the same
KR101005164B1 (ko) 불휘발성 메모리 소자 및 이의 프로그램 방법
KR101003935B1 (ko) 불휘발성 메모리 소자의 페이지 버퍼 회로 및 그 동작 방법
KR100933861B1 (ko) 불휘발성 메모리 소자 및 그 프로그램 검증 방법
JP6115882B1 (ja) 半導体記憶装置
US8634261B2 (en) Semiconductor memory device and method of operating the same
KR100933838B1 (ko) 불휘발성 메모리 소자의 테스트 방법
KR100943141B1 (ko) 불휘발성 메모리 소자의 프로그램 방법
KR100908541B1 (ko) 불휘발성 메모리 소자의 카피백 프로그램 방법
KR100960447B1 (ko) 불휘발성 메모리 소자의 동작 방법
KR20100111005A (ko) 불휘발성 메모리 소자의 테스트 방법
KR100980375B1 (ko) 불휘발성 메모리 소자 및 그 동작 방법
KR101068495B1 (ko) 불휘발성 메모리 소자의 데이터 독출 방법
KR20090055798A (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
LAPS Lapse due to unpaid annual fee