KR20100111005A - Method of testing a non volatile memory device - Google Patents

Method of testing a non volatile memory device Download PDF

Info

Publication number
KR20100111005A
KR20100111005A KR1020090029353A KR20090029353A KR20100111005A KR 20100111005 A KR20100111005 A KR 20100111005A KR 1020090029353 A KR1020090029353 A KR 1020090029353A KR 20090029353 A KR20090029353 A KR 20090029353A KR 20100111005 A KR20100111005 A KR 20100111005A
Authority
KR
South Korea
Prior art keywords
data
latch
page
changing
node
Prior art date
Application number
KR1020090029353A
Other languages
Korean (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 KR1020090029353A priority Critical patent/KR20100111005A/en
Publication of KR20100111005A publication Critical patent/KR20100111005A/en

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
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/1201Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising I/O circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/808Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout using a flexible replacement scheme

Abstract

PURPOSE: A method of testing a non volatile memory device is provided to reduce a test time of deciding a bad block by testing the memory by a block unit. CONSTITUTION: A memory cell array(110) comprises a plurality of cell strings. Strings are connected to the bit line(BL). A page buffer unit(120) comprises a plurality of page buffers(121). An Y decoder(130) provides the input/output path to the page buffer of the page buffer unit. According to the input address, an X decoder(140) selects the word line of the memory cell array.

Description

불휘발성 메모리 소자의 테스트 방법{Method of testing a non volatile memory device}Method of testing a non volatile memory device

본 발명은 불휘발성 메모리 소자에 블록 테스트 방법에 관한 것이다.The present invention relates to a block test method for a nonvolatile memory device.

불휘발성 메모리인 플래시 메모리는 일반적으로 NAND 플래시 메모리와, NOR 플래시 메모리로 구분된다. NOR 플래시 메모리는 메모리 셀들이 각각 독립적으로 비트 라인과 워드 라인에 연결되는 구조를 가지므로 랜덤 액세스 시간 특성이 우수한 반면에, NAND 플래시 메모리는 복수개의 메모리 셀들이 직렬로 연결되어 셀 스트링 당 한 개의 컨택만을 필요로 하므로 집적도면에서 우수한 특성을 갖는다. 따라서 고집적 플래시 메모리에는 주로 NAND 구조가 사용되고 있다.Flash memory, which is a nonvolatile memory, is generally classified into a NAND flash memory and a NOR flash memory. NOR flash memory has a good random access time characteristic because memory cells are independently connected to bit lines and word lines, whereas NAND flash memory has a plurality of memory cells connected in series so that one contact per cell string is provided. Since only requires, it has excellent characteristics in terms of integration degree. Therefore, a NAND structure is mainly used for highly integrated flash memory.

잘 알려진 NAND 플래시 메모리 장치는 메모리 셀 어레이, 행 디코더, 페이지 버퍼를 포함한다. 상기 메모리 셀 어레이는 행들을 따라 신장된 복수개의 워드 라인들과 열들을 따라 신장된 복수개의 비트라인들과 상기 비트라인들에 각각 대응되는 복수개의 셀 스트링들로 이루어진다.Well known NAND flash memory devices include memory cell arrays, row decoders, and page buffers. The memory cell array includes a plurality of word lines extending along rows and a plurality of bit lines extending along columns and a plurality of cell strings corresponding to the bit lines, respectively.

불휘발성 메모리 소자는 메모리 셀에 데이터를 프로그램하는 동작에서, 프로그램이 되었는지를 확인하는 검증 과정이 중요한 과정 중 하나이다. 따라서 검증 과정에 소요되는 시간을 줄이는 것은 전체 프로그램 시간을 줄이기 위해 중요한 문제이다.In the operation of programming data into a memory cell of a nonvolatile memory device, a verification process for confirming whether a program is programmed is one of important processes. Therefore, reducing the time spent on the verification process is an important issue to reduce the overall program time.

불휘발성 메모리 소자는 메모리 셀들을 포함하는 메모리 블록들을 포함한다. 또한 메모리 셀들은 워드라인과 비트라인으로 연결된다.The nonvolatile memory device includes memory blocks including memory cells. In addition, memory cells are connected to word lines and bit lines.

비트라인들은 각각 메모리 셀 스트링에 연결되는데, 셀 스트링은 다수의 메모리 셀들이 직렬로 연결되어 구성된다. 따라서 셀 스트링에서 하나의 메모리 셀이라도 페일이 발생하면 다른 메모리 셀들의 동작에 영향을 줄 수 있다.Each of the bit lines is connected to a memory cell string, which is composed of a plurality of memory cells connected in series. Therefore, if one memory cell fails in the cell string, the operation of other memory cells may be affected.

페일난 메모리 셀로 인해서 셀 스트링 전체에 연결된 나머지 메모리 셀들이 오동작을 일으켜 데이터의 신뢰성이 떨어지는 것을 방지하기 위해서, 페일난 메모리 셀이 하나라도 연결된 셀 스트링은 다른 셀 스트링에 대체된다. 이를 리페어라 한다.In order to prevent the remaining memory cells connected to the entire cell string due to the failed memory cell from malfunctioning, the reliability of data is deteriorated, so that the cell string to which at least one failed memory cell is connected is replaced with another cell string. This is called repair.

리페어를 위해서 불휘발성 메모리 소자는 여분의 리던던시 셀 스트링을 구비하고 있다. 그러나 리던던시 셀 스트링의 개수는 한정되어 있기 때문에 메모리 블록마다 정해신 개수 이상으로 셀 스트링이 페일되면 리페어를 더 이상 수행할 수 없다. 이러한 경우에는 해당 메모리 블록을 배드블록 처리한다.For repair, the nonvolatile memory device has an extra redundancy cell string. However, since the number of redundancy cell strings is limited, repair can no longer be performed when a cell string fails more than a predetermined number for each memory block. In this case, the corresponding memory block is bad-blocked.

상기 메모리 블록을 배드블록 처리하기 위해서는 먼저 페일이 발생한 셀 스트링의 개수를 판단하기 위한 테스트가 필요하다. In order to bad block the memory block, a test is required to determine the number of cell strings in which a fail has occurred.

따라서 본 발명이 이루고자 하는 기술적 과제는 메모리 블록을 테스트 하여 배드블록을 판단하는 테스트 시간을 단축할 수 있는 불휘발성 메모리 소자의 테스트 방법을 제공하는데 있다.Accordingly, an aspect of the present invention is to provide a test method for a nonvolatile memory device capable of shortening a test time for determining a bad block by testing a memory block.

본 발명의 다른 특징에 따른 불휘발성 메모리 소자의 테스트 방법은,Test method of a nonvolatile memory device according to another aspect of the present invention,

선택된 메모리 블록의 제 1 페이지의 페이지 버퍼의 제 1 래치로 독출하고, 상기 제 1 데이터와 비교하기 위한 비교 데이터를 상기 페이지 버퍼의 제 2 래치로 입력받는 제 1 독출 및 데이터 입력단계; 상기 페이지 버퍼의 제 3 래치를 초기화하는 단계; 상기 제 1 및 제 2 래치에 저장된 데이터를 비교하여 상기 제 1 내지 제 3 래치의 데이터를 비교 결과에 따라 변경하는 제 1 데이터 비교 단계; 상기 제 1 데이터 비교단계에 의해 변경된 상기 제 1 래치에 데이터를 상기 선택된 메모리 블록의 제 2 페이지에 프로그램된 데이터의 상태에 따라 변경하고, 상기 제 2 페이지와 비교하기 위한 데이터를 상기 제 2 래치에 입력받은 제 2 독출 및 데이터 입력단계; 상기 제 1 및 제 2 래치에 저장된 데이터를 비교하고, 그 결과에 따라 상기 제 1 내지 제 3 래치의 데이터 상태를 변경하는 제 2 데이터 비교단계; 및 상기 선택된 메모리 블록의 나머지 페이지에 대해서 상기 제 2 독출 및 데이터 입력단계와 상기 제 2 데이터 비교단계를 반복하여 수행하는 단계를 포함한다.A first read and data input step of reading a first latch of a page buffer of a first page of a selected memory block and receiving comparison data for comparison with the first data to a second latch of the page buffer; Initializing a third latch of the page buffer; A first data comparing step of comparing data stored in the first and second latches and changing data of the first to third latches according to a comparison result; Change the data in the first latch changed by the first data comparing step according to the state of the data programmed in the second page of the selected memory block, and convert the data for comparison with the second page into the second latch. A second read and data input step received; A second data comparing step of comparing data stored in the first and second latches and changing data states of the first to third latches according to the result; And repeatedly performing the second read and data input step and the second data compare step with respect to the remaining pages of the selected memory block.

상기 제 3 래치에 최종적으로 저장된 데이터 중 페일로 판단되는 데이터의 개수를 카운팅 하는 단계; 및 상기 카운팅 결과가 설정된 개수 이상인 경우 상기 선택된 메모리 블록을 배드블록 처리하는 단계를 포함한다.Counting the number of data that is determined to be failure among data finally stored in the third latch; And bad-blocking the selected memory block when the counting result is equal to or greater than a set number.

상기 카운팅 결과가 설정된 개수 이하인 경우, 페일로 판단되는 비트라인에 대해 리페어를 수행하는 것을 특징으로 한다.When the counting result is less than or equal to the set number, the repair is performed on the bit line determined as the fail.

상기 제 1 또는 제 2 데이터 비교단계는 각각, 상기 제 3 래치의 데이터상태에 따라 상기 제 1 래치의 데이터를 변경하는 단계; 상기 제 2 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계; 상기 제 1 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계; 상기 제 2 래치의 데이터 상태에 따라 상기 제 1 래치의 데이터 상태를 변경하는 단계; 및 상기 제 1 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계를 포함한다.The first or second data comparing step may include changing data of the first latch according to a data state of the third latch; Changing data in the third latch in accordance with the data state of the second latch; Changing data in the third latch in accordance with the data state of the first latch; Changing the data state of the first latch in accordance with the data state of the second latch; And changing the data of the third latch in accordance with the data state of the first latch.

본 발명의 다른 특징에 따른 불휘발성 메모리 소자의 테스트 방법은,Test method of a nonvolatile memory device according to another aspect of the present invention,

테스트 명령에 따라 페이지 버퍼를 초기화 한 후, 선택되는 메모리 블록의 제 1 페이지의 제 1 데이터를 페이지 버퍼의 제 1 래치로 독출하고, 상기 제 1 페이지의 데이터와 비교하기 위한 제 1 비교데이터를 상기 페이지 버퍼의 제 2 래치로 입력받은 후, 상기 제 1 및 제 2 래치의 데이터를 비교하여 서로 다른 경우의 제 1 비트라인에 연결된 페이지 버퍼의 제 3 래치에 페일 데이터를 고정하는 제 1 페이지 테스트 단계; 상기 선택된 메모리 블록의 제 2 페이지의 제 2 데이터 상태에 따라 상기 제 1 래치의 데이터를 변경하고, 제 2 페이지의 데이터와 비교하기 위한 제 2 비교데이터를 상기 제 2 래치에 입력받은 후, 상기 제 1 및 제 2 래치의 데이터를 비교하여 서로 다른 경우의 제 2 비트라인에 연결된 페이지 버퍼에 제 3 래치에 페일 데이터를 고정하는 제 2 페이지 테스트 단계; 및 상기 선택된 메모리 블록의 모든 페이지에 대해서 상기 제 2 페이지 테스트 단계와 같은 동작을 수행한 후, 상기 페이지 버퍼의 제 3 래치의 데이터를 이용하여 상기 선택된 메모리 블록의 배드블록 여부를 판단하는 단계를 포함한다.After initializing the page buffer according to the test command, the first data of the first page of the selected memory block is read into the first latch of the page buffer, and the first comparison data for comparing with the data of the first page is read. A first page test step of fixing fail data to a third latch of a page buffer connected to a first bit line by comparing data of the first and second latches after receiving the second latch of the page buffer; ; After changing the data of the first latch according to the second data state of the second page of the selected memory block and receiving the second comparison data for comparison with the data of the second page, the second latch is input. A second page test step of comparing the data of the first and second latches to fix the fail data to the third latch in a page buffer connected to the second bit line in different cases; And performing the same operation as the second page test step on all pages of the selected memory block, and then determining whether the selected memory block is a bad block using data of the third latch of the page buffer. do.

상기 배드블록 여부를 판단하는 것은, 제 3 래치에 최종적으로 저장된 데이터 중 페일로 판단되는 데이터의 개수를 카운팅 하는 단계; 및 상기 카운팅 결과가 설정된 개수 이상인 경우 상기 선택된 메모리 블록을 배드블록 처리하는 단계를 포함한다.Determining whether the bad block comprises: counting the number of data that is determined to fail among the data finally stored in the third latch; And bad-blocking the selected memory block when the counting result is equal to or greater than a set number.

상기 카운팅 결과가 설정된 개수 이하인 경우, 페일로 판단되는 비트라인에 대해 리페어를 수행하는 것을 특징으로 한다.When the counting result is less than or equal to the set number, the repair is performed on the bit line determined as the fail.

상기 제 1 및 제 2 래치의 데이터를 비교하고, 상기 제 3 래치에 페일 데이터를 고정하는 것은, 상기 제 3 래치의 데이터상태에 따라 상기 제 1 래치의 데이터를 변경하는 단계; 상기 제 2 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계; 상기 제 1 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계; 상기 제 2 래치의 데이터 상태에 따라 상기 제 1 래치의 데이터 상태를 변경하는 단계; 및 상기 제 1 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계를 포함한다.Comparing data of the first and second latches and fixing fail data to the third latch may include: changing data of the first latch according to a data state of the third latch; Changing data in the third latch in accordance with the data state of the second latch; Changing data in the third latch in accordance with the data state of the first latch; Changing the data state of the first latch in accordance with the data state of the second latch; And changing the data of the third latch in accordance with the data state of the first latch.

이상에서 설명한 바와 같이, 본 발명에 따른 불휘발성 메모리 소자의 테스트 방법은 메모리 블록을 테스틀 할 때, 첫 번째 페이지에 대해서만 초기화를 수행한 후, 각각의 페이지에 대해서 외부에서 입력되는 데이터와 독출 데이터를 비교하여 검증을 수행하여 테스트 결과가 고정되도록 하여 메모리 블록단위로 테스트를 함으로써 테스트 시간을 줄일 수있다.As described above, in the test method of a nonvolatile memory device according to the present invention, when testing a memory block, after initializing only the first page, externally input data and read data for each page are performed. The test time can be shortened by testing by the memory block unit by comparing and verifying the test result so that the test result is fixed.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 설명하기로 한다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하며 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. It is provided to inform you.

도 1a는 본 발명의 실시 예에 따른 불휘발성 메모리 소자의 블록도이다.1A is a block diagram of a nonvolatile memory device according to an embodiment of the present invention.

도 1a를 참조하면, 플래시 메모리 소자(100)는 메모리 셀 어레이(110), 페이지 버퍼부(120), Y 디코더(130), X 디코더(140), 전압 제공부(150), 제어부(160) 및 데이터 입출력부(170)를 포함한다.Referring to FIG. 1A, a flash memory device 100 may include a memory cell array 110, a page buffer unit 120, a Y decoder 130, an X decoder 140, a voltage providing unit 150, and a controller 160. And a data input / output unit 170.

메모리 셀 어레이(110)는 데이터 저장을 위한 메모리 셀들이 직렬로 연결된 셀 스트링들이 복수개 포함되고, 각각의 셀 스트링들은 비트라인(BL)에 연결된다. 또한 상기 비트라인과 직교하는 방향으로 메모리 셀들의 게이트가 워드라인(WL)으로 연결된다. The memory cell array 110 includes a plurality of cell strings in which memory cells for data storage are connected in series, and each cell string is connected to a bit line BL. In addition, the gates of the memory cells are connected to the word line WL in a direction orthogonal to the bit line.

페이지 버퍼부(120)는 상기 메모리 셀 어레이(110)의 비트라인에 연결되는 페이지 버퍼(121)가 복수개 포함되는데, 각각의 페이지 버퍼(121)는 선택된 메모리 셀에 프로그램할 데이터를 임시 저장하였다가 비트라인을 통해 메모리 셀에 전달하 거나, 메모리 셀에 저장된 데이터를 독출 하여 저장한다.The page buffer unit 120 includes a plurality of page buffers 121 connected to bit lines of the memory cell array 110. Each page buffer 121 temporarily stores data to be programmed in a selected memory cell. The data is transferred to a memory cell through a bit line, or data stored in the memory cell is read and stored.

상기 페이지 버퍼는 다수의 래치 회로를 포함하고 있으며, 하나의 래치 회로를 이용해서 프로그램을 수행하는 동안 다른 하나의 래치 회로에는 다음번으로 프로그램 데이터를 입력받을 수 있다.The page buffer includes a plurality of latch circuits, and while the program is executed using one latch circuit, program data may be input to the other latch circuit next.

Y 디코더(130)는 입력 어드레스에 따라 페이지 버퍼부(120)의 페이지 버퍼(121)에 입출력 경로를 제공하고, X 디코더(140)는 입력 어드레스에 따라 메모리 셀 어레이(110)의 워드라인을 선택한다.The Y decoder 130 provides an input / output path to the page buffer 121 of the page buffer unit 120 according to the input address, and the X decoder 140 selects the word line of the memory cell array 110 according to the input address. do.

전압 제공부(150)는 제어부(160)의 제어에 따라 상기 X 디코더(140)가 연결하는 워드라인에 제공할 동작 전압을 생성하고, 제어부(160)는 동작 명령에 따른 제어신호를 출력하며, 메모리 셀 어레이(110)의 데이터 프로그램 정도에 따라 설정되어 있는 패스전압을 제공할 수 있도록 전압 제공부(150)를 제어한다.The voltage providing unit 150 generates an operation voltage to be provided to a word line connected by the X decoder 140 under the control of the controller 160, and the controller 160 outputs a control signal according to an operation command. The voltage providing unit 150 is controlled to provide a pass voltage set according to the data program degree of the memory cell array 110.

데이터 입출력부(170)는 제어부(160)의 제어에 따라 불휘발성 메모리 소자(100)의 IO 패드로부터 입력되는 프로그램할 데이터를 Y 디코더(130) 또는 데이터 검증부(180)로 전달하고, 상기 Y 디코더(130)를 통해 출력되는 데이터를 IO 패드로 전달한다.The data input / output unit 170 transfers data to be programmed from an IO pad of the nonvolatile memory device 100 to the Y decoder 130 or the data verification unit 180 under the control of the controller 160, and the Y The data output through the decoder 130 is transferred to the IO pad.

상기 페이지 버퍼부(120)에 포함되는 다수의 페이지 버퍼(121)들은 LSB(Least Significant Bit) 프로그램과, MSB(Most Significant Bit) 프로그램을 위해 3 개의 래치를 가진다.The plurality of page buffers 121 included in the page buffer unit 120 have three latches for a LSB (Least Significant Bit) program and a MSB (Most Significant Bit) program.

도 1b는 상기 페이지 버퍼의 상세 회로도이다.1B is a detailed circuit diagram of the page buffer.

도 1b를 참조하면, 페이지 버퍼(121)는 센싱부(122)와, 프리차지부(123)와 래치부(124) 및 검증부(128)를 포함한다.Referring to FIG. 1B, the page buffer 121 includes a sensing unit 122, a precharge unit 123, a latch unit 124, and a verification unit 128.

센싱부(122)는 데이터 독출시에 입력 어드레스에 의해 연결된 비트라인의 전압을 센싱 한다. 센싱부(122)가 센싱한 결과는 센싱노드(SO)로 반영된다.The sensing unit 122 senses a voltage of a bit line connected by an input address when data is read. The sensing result of the sensing unit 122 is reflected as the sensing node SO.

프리차지부(123)는 센싱 노드(SO)를 프리차지시키고, 래치부(124)는 다수의 래치 회로들이 센싱노드(SO)와 연결되어 상기 센싱노드(SO)의 전압 레벨에 따라 메모리 셀에 저장된 데이터를 래치회로에 저장하거나, 프로그램할 데이터를 래치회로에 저장하고 있다가 센싱노드(SO)로 전달한다.The precharge unit 123 precharges the sensing node SO, and the latch unit 124 includes a plurality of latch circuits connected to the sensing node SO to form a memory cell according to the voltage level of the sensing node SO. The stored data is stored in the latch circuit or the data to be programmed is stored in the latch circuit and then transferred to the sensing node SO.

래치부(124)는 제 1 내지 제 3 래치회로부(125 내지 127)를 포함한다. 제 1 래치 회로부(125)는 캐시(Cache) 프로그램을 위한 데이터를 임시 저장하거나, 지능형 검증(Intelligent Verify; 이하 IV라 함)을 수행하기 위해 이용된다. 그리고 제 2 래치회로부(126)는 프로그램을 위한 메인(Main) 래치의 역할을 하며, 제 3 래치 회로부(127)는 임시(Temp) 래치 동작을 수행한다.The latch unit 124 includes first to third latch circuit units 125 to 127. The first latch circuit unit 125 is used to temporarily store data for a cache program or to perform intelligent verify (hereinafter referred to as IV). The second latch circuit unit 126 serves as a main latch for a program, and the third latch circuit unit 127 performs a temporary latch operation.

검증부(128)는 제 1 및 제 2 래치회로부(125, 126)의 사이에 연결되어 프로그램 검증을 위한 검증신호를 출력한다. The verification unit 128 is connected between the first and second latch circuit units 125 and 126 to output a verification signal for program verification.

상기 센싱부(122)는 제 1 NMOS 트랜지스터(N1)를 포함하며, 프리차지부(123)는 PMOS 트랜지스터(P)를 포함한다.The sensing unit 122 includes a first NMOS transistor N1, and the precharge unit 123 includes a PMOS transistor P. FIG.

그리고 제 1 래치회로부(125)는 제 2 내지 제 4 NMOS 트랜지스터(N2 내지 N4)를 포함하고, 제 1 내지 제 2 인버터(IN1, IN2)를 포함한다. 그리고 제 2 래치회로부(126)는 제 1 내지 제 3 NMOS 트랜지스터(N5 내지 N7)와 제 3 및 제 4 인버터(IN3, IN4)를 포함한다.The first latch circuit unit 125 includes second to fourth NMOS transistors N2 to N4, and includes first to second inverters IN1 and IN2. The second latch circuit unit 126 includes first to third NMOS transistors N5 to N7 and third and fourth inverters IN3 and IN4.

제 3 래치회로부(127)는 제 4 내지 제 7 NMOS 트랜지스터(N8 내지 N11)와 제 5 및 제 6 인버터(IN5, IN6)를 포함하고, 검증부는 제 9 내지 제 11 NMOS 트랜지스터(N13 내지 N15)를 포함한다. 또한 래치부(124)에는 제 8 NMOS 트랜지스터(N12)가 포함된다.The third latch circuit unit 127 includes fourth to seventh NMOS transistors N8 to N11 and fifth and sixth inverters IN5 and IN6, and the verification unit includes ninth to eleventh NMOS transistors N13 to N15. It includes. In addition, the latch unit 124 includes an eighth NMOS transistor N12.

제 1 NMOS 트랜지스터(N1)는 비트라인과 센싱노드(SO) 사이에 연결되고, 제 1 NMOS 트랜지스터(N1)의 게이트에는 센싱 제어신호(PBSENSE)가 입력된다. 상기 제 1 NMOS 트랜지스터(N1)는 연결되는 비트라인의 전압과 센싱 제어신호(PBSENSE)의 전압 레벨에 따라 턴 온 또는 턴 오프 된다. 상기 제 1 NMOS 트랜지스터(N1)가 턴 온 또는 턴 오프 됨에 따라 센싱노드(SO)의 전압 레벨이 달라져 래치부(124)에 저장되는 데이터가 달라진다.The first NMOS transistor N1 is connected between the bit line and the sensing node SO, and the sensing control signal PBSENSE is input to the gate of the first NMOS transistor N1. The first NMOS transistor N1 is turned on or off according to the voltage of the bit line to which it is connected and the voltage level of the sensing control signal PBSENSE. As the first NMOS transistor N1 is turned on or turned off, the voltage level of the sensing node SO is changed to change data stored in the latch unit 124.

PMOS 트랜지스터(P)는 전원전압과 센싱노드(SO)사이에 연결되고, PMOS 트랜지스터(P)의 게이트에는 프리차지 제어신호(PRECH_N)가 입력된다.The PMOS transistor P is connected between the power supply voltage and the sensing node SO, and the precharge control signal PRECH_N is input to the gate of the PMOS transistor P.

그리고 제 2 NMOS 트랜지스터(N2)는 센싱노드(SO)와 노드(QC_N)사이에 연결되고, 제 2 NMOS 트랜지스터(N2)의 게이트에는 제 1 데이터 전송신호(TRANC)가 입력된다.The second NMOS transistor N2 is connected between the sensing node SO and the node QC_N, and the first data transfer signal TRAN is input to the gate of the second NMOS transistor N2.

제 1 및 제 2 인버터(IN1, IN2)는 노드(QC)와 노드(QC_N) 사이에 래치회로 형태로 연결되어 제 1 래치(L1)를 구성한다.The first and second inverters IN1 and IN2 are connected in a latch circuit form between the node QC and the node QC_N to form the first latch L1.

제 3 NMOS 트랜지스터(N3)는 노드(QC)와 노드(K1) 사이에 연결되고, 제 4 NMOS 트랜지스터(N4)는 노드(QC_N)와 노드(K1) 사이에 연결된다. 그리고 제 3 및 제 4 NMOS 트랜지스터(N3, N4)의 게이트에는 각각 제 1 리셋 신호(CRST)와 제 1 세 트신호(CSET)가 입력된다.The third NMOS transistor N3 is connected between the node QC and the node K1, and the fourth NMOS transistor N4 is connected between the node QC_N and the node K1. The first reset signal CRST and the first set signal CSET are input to the gates of the third and fourth NMOS transistors N3 and N4, respectively.

제 5 NMOS 트랜지스터(N5)는 센싱노드(SO)와 노드(QM_N) 사이에 연결되고, 제 5 NMOS 트랜지스터(N5)의 게이트에는 제 2 데이터 전송신호(TRANM)가 입력된다. 그리고 제 3 및 제 4 인버터(IN3, IN4)는 노드(QM)와 노드(QM_N) 사이에 래치 회로 형태로 연결되어 제 2 래치(L2)를 구성한다.The fifth NMOS transistor N5 is connected between the sensing node SO and the node QM_N, and the second data transfer signal TRANM is input to the gate of the fifth NMOS transistor N5. The third and fourth inverters IN3 and IN4 are connected between the node QM and the node QM_N in the form of a latch circuit to form the second latch L2.

제 6 NMOS 트랜지스터(N6)는 노드(QM)와 노드(K1) 사이에 연결되고, 제 7 NMOS 트랜지스터(N7)는 노드(QM_N)와 노드(K1) 사이에 연결된다. 제 6 및 제 7 NMOS 트랜지스터(N6, N7)의 게이트에는 각각 제 2 리셋 신호(MRST)와 제 2 세트신호(MSET)가 입력된다.The sixth NMOS transistor N6 is connected between the node QM and the node K1, and the seventh NMOS transistor N7 is connected between the node QM_N and the node K1. The second reset signal MRST and the second set signal MSET are input to gates of the sixth and seventh NMOS transistors N6 and N7, respectively.

제 8 NMOS 트랜지스터(N8)는 센싱노드(SO)와 노드(QT) 사이에 연결되고, 제 9 NMOS 트랜지스터(N9)는 센싱노드(SO)와 노드(QT_N)사이에 연결된다. 제 8 및 제 9 NMOS 트랜지스터(N8, N9)의 게이트에는 각각 제 3 데이터 전송반전 신호(TRANT_N)와 제 3 데이터 전송신호(TRANT)가 입력된다. The eighth NMOS transistor N8 is connected between the sensing node SO and the node QT, and the ninth NMOS transistor N9 is connected between the sensing node SO and the node QT_N. The third data transfer inversion signal TRANT_N and the third data transfer signal TRANT are input to gates of the eighth and ninth NMOS transistors N8 and N9, respectively.

제 5 및 제 6 인버터(IN5, IN6)는 노드(QT)와 노드(QT_N) 사이에 래치회로 형태로 연결되어 제 3 래치(L3)를 구성한다.The fifth and sixth inverters IN5 and IN6 are connected between the node QT and the node QT_N in a latch circuit form to form the third latch L3.

제 10 NMOS 트랜지스터(N10)는 노드(QT)와 노드(K1) 사이에 연결되고, 제 11 NMOS 트랜지스터(N11)는 노드(QT_N)와 노드(K1) 사이에 연결된다. 제 10 및 제 11 NMOS 트랜지스터(N10, N11)의 게이트에는 각각 제 3 리셋 신호(TRST)와 제 3 세트신호(TSET)가 입력된다.The tenth NMOS transistor N10 is connected between the node QT and the node K1, and the eleventh NMOS transistor N11 is connected between the node QT_N and the node K1. The third reset signal TRST and the third set signal TSET are input to gates of the tenth and eleventh NMOS transistors N10 and N11, respectively.

제 12 NMOS 트랜지스터(N12)는 노드(K1)와 접지노드 사이에 연결되고, 제 12 NMOS 트랜지스터(N12)의 게이트에는 센싱노드(SO)가 연결된다.The twelfth NMOS transistor N12 is connected between the node K1 and the ground node, and the sensing node SO is connected to the gate of the twelfth NMOS transistor N12.

제 13 및 제 14 NMOS 트랜지스터(N13, N14)는 노드(K2)와 검증신호 출력노드(nWDo) 사이에 연결되고, 제 13 NMOS 트랜지스터(N13)의 게이트는 노드(QC_N)에 연결되고, 제 14 NMOS 트랜지스터(N14)의 게이트에는 페이지 버퍼 체크신호(PBCHECK)가 연결된다.The thirteenth and fourteenth NMOS transistors N13 and N14 are connected between the node K2 and the verify signal output node nWDo, and the gate of the thirteenth NMOS transistor N13 is connected to the node QC_N, and the fourteenth The page buffer check signal PBCHECK is connected to the gate of the NMOS transistor N14.

그리고 제 15 NMOS 트랜지스터(N15)는 접지노드와 노드(K2) 사이에 연결되고, 제 15 NMOS 트랜지스터(N15)의 게이트는 노드(QM)가 연결된다.The fifteenth NMOS transistor N15 is connected between the ground node and the node K2, and the gate of the fifteenth NMOS transistor N15 is connected to the node QM.

상기한 페이지 버퍼(121)가 프로그램 및 검증을 수행할 때, 지능형 검증(Intelligent Verify)을 수행하는 동작은 다음과 같다.When the page buffer 121 performs a program and verify, an operation of performing intelligent verify is as follows.

도 2a는 지능형 프로그램 검증 동작 순서도이다.2A is a flowchart of an intelligent program verification operation.

도 2a를 참조하면, 상기 도 1b와 같은 페이지 버퍼(121)에 프로그램할 데이터를 입력하여 프로그램을 수행한다(S210).Referring to FIG. 2A, a program is executed by inputting data to be programmed into the page buffer 121 as shown in FIG. 1B (S210).

그리고 프로그램 검증을 위하여, 페이지버퍼부(120)의 페이지 버퍼(121)들에 메모리 셀에 저장되어 있는 데이터를 독출한다(S230). 이때의 독출 명령은 00H를 이용한다.In order to verify the program, data stored in the memory cell is read in the page buffers 121 of the page buffer unit 120 (S230). The read command at this time uses 00H.

그리고 독출된 데이터와 비교하기 위한 데이터를 입력받는다(S250). 이때는 데이터 입력을 위한 명령어인 80H를 사용할 수 있다.In operation S250, data for comparison with the read data is received. In this case, 80H, a command for data input, can be used.

이후에는 상기 단계S230의 독출 데이터와 단계 S250의 입력 데이터가 동일한지 유무를 비교하여(S270), 프로그램 상태를 체크한다(S290). 이때 데이터 비교를 위해 명령어 2FH를 사용할 수 있다.Thereafter, the read data of the step S230 and the input data of the step S250 are compared (S270), and the program state is checked (S290). At this time, command 2FH can be used for data comparison.

상기 데이터 비교 과정을 상기 도 1b의 페이지 버퍼(121)를 참고하여 좀 더 상세히 설명하면 다음과 같다.The data comparison process will be described in more detail with reference to the page buffer 121 of FIG. 1B.

도 2b는 도 2a의 데이터 비교 동작 순서도이다.2B is a flowchart of a data comparison operation of FIG. 2A.

도 2b를 참조하면, 먼저 프로그램 동작 이후에 선택된 메모리 셀에 저장된 데이터를 제 2 래치(L2)의 노드(QM_N)로 독출해온다(S230). 그리고 데이터 입력 명령에 의해 비교할 데이터를 제 1 래치(L1)의 노드(QC_N)로 입력받는다(S250).Referring to FIG. 2B, first, data stored in the selected memory cell after the program operation is read into the node QM_N of the second latch L2 (S230). The data to be compared is received by the data input command to the node QC_N of the first latch L1 (S250).

본 발명의 제 2 실시예의 설명에서, 메모리 셀의 데이터 상태는 '1' 또는 '0'이고, 각각의 데이터 상태가 프로그램 패스 또는 페일인 경우의 4가지 경우(A 내지 D)로 생각할 수 있다.In the description of the second embodiment of the present invention, the data state of the memory cell is '1' or '0', and it can be considered as four cases (A to D) in the case where each data state is a program pass or fail.

즉, 첫 번째 경우(A)는 실제 메모리 셀에 저장되어야 하는 데이터는 '1'이고, 독출 결과 페이지 버퍼(121)의 노드(QM_N)에 입력되는 데이터가 '1'인 경우이다. 이 경우는 프로그램 패스(Pass)로 결과가 나와야 한다. 그리고 두 번째 경우(B)는 실제 데이터가 '1'이고, 독출데이터가 '0'인 경우로, 이 경우는 프로그램 페일(Fail)로 결과가 나와야 한다.That is, in the first case (A), the data to be stored in the actual memory cell is '1' and the data input to the node QM_N of the read result page buffer 121 is '1'. In this case, the result should be a program pass. In the second case (B), the actual data is '1' and the read data is '0'. In this case, the result should be a program fail.

마찬가지로, 세 번째와 네 번째(C, D)는 각각 패스인 경우와 페일인 경우가 된다.Similarly, the third and fourth (C, D) are pass and fail cases, respectively.

따라서 단계 S230에서 독출되는 데이터는 4가지 경우를 한번에 표시하면, '1001' 된다. 그리고 단계S250에서 입력되는 데이터는 4가지 경우를 한번에 표시하여 '1100'이 된다.Therefore, the data read in step S230 is '1001' if four cases are displayed at once. The data input in step S250 displays four cases at once to become '1100'.

상기와 같이 4 가지 경우에 대한 페이지 버퍼(121)의 제 1 내지 제 3 래 치(L1 내지 L3)에 저장되는 데이터는 다음의 표와 같다.As described above, the data stored in the first to third latches L1 to L3 of the page buffer 121 for the four cases are shown in the following table.

Figure 112009020536807-PAT00001
Figure 112009020536807-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'상태가 된다.As shown in Table 1, when the comparison command 2FH is input after the data is input to the first and second latches L1 and L2 (S271), the data of the first latch L1 is first transferred to the third latch L3. Transfer to (S272). To this end, the first data transfer signal TRAN for turning on the second NMOS transistor N2 of the page buffer 121 is input at a high level, and the third reset signal TRST is input at a high level. As a result, as shown in Table 1, the QT_N node is in the '1100' state.

이후에 제1 래치(L1)를 리셋 한다(S273). 이때의 리셋은 센싱노드(SO)를 프리차지 한 후 제 1 리셋 신호(CRST)를 인가한다.Thereafter, the first latch L1 is reset (S273). At this time, the reset applies the first reset signal CRST after precharging the sensing node SO.

제 1 래치(L1)를 리셋한 이후에는, 제 3 래치(L3)의 데이터를 다시 제 1 래치(L1)로 입력하는, 이때 제 3 래치(L3)의 노드(QT_N)의 데이터를 반전하여 제 1 래치(L1)의 노드(QC_N)에 입력한다(S274). 이를 위하여 제 3 데이터 전송신호(TRANT)와, 제 1 세트신호(CSET)가 입력된다. 그 결과로 노드(QC_N)는 '0011'이 된다.After resetting the first latch L1, the data of the third latch L3 is inputted back into the first latch L1. At this time, the data of the node QT_N of the third latch L3 is inverted to generate the first latch L1. The data is input to the node QC_N of the first latch L1 (S274). To this end, the third data transmission signal TRANT and the first set signal CSET are input. As a result, node QC_N becomes '0011'.

이후에는 제 2 래치(L2)에 저장되어 있는 독출 데이터를 제 1 래치(L1)로 입력한다(S275). 이를 위해서 제 2 데이터 전송신호(TRANM)와 제 1 리셋신호(CRST)가 입력된다. 상기의 제 2 래치(L2)의 데이터를 제 1 래치(L1)로 입력하면, 제 1 래치(L1)에 저장되는 데이터는 '0011'에서 '1011'로 변경된다.Thereafter, the read data stored in the second latch L2 is input to the first latch L1 (S275). To this end, the second data transmission signal TRANM and the first reset signal CRST are input. When the data of the second latch L2 is input to the first latch L1, the data stored in the first latch L1 is changed from '0011' to '1011'.

그리고 제 3 래치(L3)의 데이터를 제 2 래치(L2)로 전달한다(S276). 이를 위해서 제 3 데이터 전송신호(TRANT)와 제 2 세트 신호(MSET)를 인가한다. 이 동작에 의해 제 2 래치(L2)의 데이터 상태는 '1001'에서 '0001'로 변경된다.The data of the third latch L3 is transferred to the second latch L2 (S276). To this end, a third data transmission signal TRANT and a second set signal MSET are applied. By this operation, the data state of the second latch L2 is changed from '1001' to '0001'.

다음으로는 제 2 래치(L2)의 데이터를 제 1 래치(L1)로 전송한다(S277). 이때는 제 2 데이터 전송신호(TRANT)와 제 1 세트 신호(CSET)를 인가하고, 제 1 래치(L1)는 '10110'이 된다.Next, the data of the second latch L2 is transferred to the first latch L1 (S277). In this case, the second data transmission signal TRANT and the first set signal CSET are applied, and the first latch L1 becomes '10110'.

마지막으로 제 1 래치(L1)의 데이터를 다시 제 2 래치(L2)로 전송한다(S278). 이때는 제 1 데이터 전송신호(TRANC)와 제 2 리셋 신호 및 제 2 세트 신호(MSET, MRST)가 인가되고, 제 2 래치(L2)의 데이터는 '1010'이 된다.Finally, the data of the first latch L1 is transferred to the second latch L2 again (S278). In this case, the first data transmission signal TRAN, the second reset signal, and the second set signals MSET and MRST are applied, and the data of the second latch L2 becomes '1010'.

따라서 검증부(128)는 상기 제 2 래치(L2)의 데이터 상태에 따라 검증 신호를 , 패스-페일-패스-페일로 출력할 수 있다. 이는 앞서 도 2b를 설명할 때 가정한 4 가지 경우의 프로그램 패스, 페일 결과와 같다.Accordingly, the verification unit 128 may output a verification signal as pass-fail-pass-fail according to the data state of the second latch L2. This is the same as the program pass and fail results of the four cases assumed when the above-described FIG. 2B is described.

즉, 한번의 데이터 독출만으로 지능형 프로그램 검증을 수행할 수 있다. 상기 검증 수행 결과는 제어부(160)로 전달되고, 제어부(160)는 에러 보정이 가능한 범위에서 페일이 발생한 경우 프로그램 패스로 판단한다.That is, intelligent program verification can be performed with only one data reading. The verification result is transmitted to the controller 160, and the controller 160 determines a program pass when a failure occurs in a range capable of error correction.

한편, 본 발명의 실시 예에 따라 메모리 블록이 배드블록인지를 테스트 하는 방법은 다음과 같다.Meanwhile, according to an embodiment of the present invention, a method of testing whether a memory block is a bad block is as follows.

도 3은 본 발명의 실시 예에 따른 메모리 블록 테스트 방법을 설명하기 위한 순서도이다.3 is a flowchart illustrating a memory block test method according to an embodiment of the present invention.

도 3의 설명을 하는데 있어서, 상기 도 1b의 페이지 버퍼(121)와 다음의 표 2를 함께 참조하여 설명하기로 한다.3, the page buffer 121 of FIG. 1B and the following Table 2 will be described together.

Figure 112009020536807-PAT00002
Figure 112009020536807-PAT00002

도 3 및 상기 도 1b와 표 2를 참조하면, 먼저 테스트 명령이 입력되면(S301), 상기 테스트 명령과 함께 입력되는 어드레스 정보에 따라 선택되는 메모리 블록의 첫 번째 워드라인인 제 1 페이지에 데이터를 독출하고(S303), 제 1 페이지에서 독출된 데이터와 비교하기 위한 비교 데이터가 입력된다(S305).Referring to FIGS. 3, 1B, and 2, when a test command is input (S301), data is written to a first page which is a first word line of a memory block selected according to address information input together with the test command. In operation S303, comparison data for comparison with data read in the first page is input (S305).

상기 제 1 페이지의 데이터는 노드(QM_N)으로 독출된다. 독출된 데이터가 '1001'이고, 노드(QM_N)의 데이터는 노드(QC_N)으로 전달된다. 그리고 노드(QC_N)으로 비교할 데이터가 입력된다. 이에 따라 노드(QC_N)는 '1100'이 되고, 노드(QM_N)는 '1010'이다.The data of the first page is read out to the node QM_N. The read data is '1001', and the data of the node QM_N is transferred to the node QC_N. Data to be compared is input to the node QC_N. Accordingly, the node QC_N becomes '1100' and the node QM_N is '1010'.

그리고 제 3 래치(L3)의 노드(QT)를 초기화 한다(S307). 노드(QT)를 초기화 하면, 노드(QT)의 데이터는 '1111'이 된다. 노드(QT)가 '1111'이면, 노드(QT_N)는 '0000'이 된다. 노드(QT)의 데이터를 노드(QM_N)으로 전달해도, 노드(QM_N)의 데이터 상태는 '1010'으로 변경되지 않는다.In operation S307, the node QT of the third latch L3 is initialized. When the node QT is initialized, the data of the node QT becomes '1111'. If node QT is '1111', node QT_N is '0000'. Even when the data of the node QT is transferred to the node QM_N, the data state of the node QM_N does not change to '1010'.

그리고 제 1 내지 제 3 래치(L1 내지 L3)의 데이터를 이용해서 독출 데이터와 입력된 비교데이터를 비교하고, 그 결과에 따라 제 1 내지 제 3 래치(L1 내지 L3)의 상태를 변경시킨다(S309).Then, the read data is compared with the input comparison data using the data of the first to third latches L1 to L3, and the state of the first to third latches L1 to L3 is changed according to the result (S309). ).

먼저 노드(QC_T)의 데이터를 노드(QT)로 전달한다.First, data of the node QC_T is transferred to the node QT.

노드(QC_N)는 '1100'상태이다. 따라서 제 1 데이터 전송신호(TRANC)를 하이 레벨로 인가하면 센싱노드(SO)는 '1100'상태가 된다. 그리고 제 3 리셋 신호(TRST)를 하이 레벨로 인가하면, 노드(QT)는 '0011'이 된다.Node QC_N is in a '1100' state. Therefore, when the first data transmission signal TRAN is applied at a high level, the sensing node SO is in a '1100' state. When the third reset signal TRST is applied at a high level, the node QT becomes '0011'.

그리고 노드(QM_N)의 데이터를 노드(QT)로 전달한다.The data of the node QM_N is transferred to the node QT.

노드(QM_N)는 '1001' 상태이다. 따라서 제 2 데이터 전송 신호(TRANM)를 하이 레벨로 인가하면, 센싱노드(SO)는 '1001'이 된다. 그리고 제 3 세트신호(TSET)를 하이 레벨로 인가하면, 노드(QT)는 '1011'이 된다.Node QM_N is in a '1001' state. Therefore, when the second data transmission signal TRANM is applied at a high level, the sensing node SO becomes '1001'. When the third set signal TSET is applied at a high level, the node QT becomes '1011'.

노드(QC_N)의 데이터는 노드(QM_N)로 전달된다.Data of the node QC_N is transferred to the node QM_N.

노드(QC_N)는 '1100'이고, 이에 따라 노드(QM_N)는 '0001'이 된다. 그리고 다시 노드(QM_N)의 데이터를 노드(QT)로 전달하여 노드(QT)가 '1010'이 된게 한다.Node QC_N is '1100', and thus node QM_N is '0001'. The data of the node QM_N is transferred to the node QT so that the node QT becomes '1010'.

상기와 같이 제 1 페이지의 데이터를 독출하고, 비교한 결과는 노드(QT)에 저장된다.As described above, the data of the first page is read and compared, and the result of the comparison is stored in the node QT.

그리고 다시 페이지 버퍼의 초기화 없이 제 2 페이지에 대한 테스트를 시작한다.Then, the test for the second page is started again without initializing the page buffer.

제 2 페이지 테스트를 위해서는 먼저 제 2 페이지 데이터를 노드(QM_N)로 독출하고(S311), 노드(QC_N)로 비교할 데이터를 입력한다(S313).For the second page test, first, the second page data is read to the node QM_N (S311), and data to be compared to the node QC_N is input (S313).

그리고 상기 제 1 페이지의 비교 동작과 동일하게 래치간에 데이터를 전달한다(S315). 이때 제 1 페이지의 데이터 비교에서는 노드(QT)의 데이터 초기화가 있었으나, 제 2 페이지부터는 노드(QT)의 데이터 초기화 없이 이전 상태를 그대로 적용하여 데이터 비교를 한다. Data is transferred between the latches in the same manner as the comparison operation of the first page (S315). At this time, in the data comparison of the first page, there is data initialization of the node QT. From the second page, data comparison is performed by applying the previous state as it is without initializing the data of the node QT.

그리고 마지막 페이지까지 단계S311 내지 S319를 반복하여 수행한다.Then, steps S311 to S319 are repeatedly performed until the last page.

이로서 연속하여 메모리 블록의 모든 페이지들에 대해서 독출하고 입력 데이터와의 비교를 한 후, 최종적인 결과를 노드(QT)에 저장한다. 노드(QT)에는 그 결과가 누적되어 저장되기 때문에 비트라인에 연결되는 메모리 셀들 중 하나의 메모리 셀이라도 페일이 되었다면 노드(QT)를 이용해서 페일이 있는 비트라인을 확인할 수 있다.As a result, all pages of the memory block are continuously read and compared with the input data, and the final result is stored in the node QT. Since the result is accumulated and stored in the node QT, if a memory cell of one of the memory cells connected to the bit line fails, the bit line having the fail may be checked using the node QT.

모든 메모리 블록에 대해서 테스트가 완료되면, 제 3 래치(L3)에 저장된 데이터를 출력한다(S321). 이를 위해서 노드(QM_N)를 '1'로 초기화한 후, 노드(QT)의 데이터를 옮겨와서 검증부(128)에서 패스 및 페일 검증을 할 수 있다. 또는 노드(QT)의 데이터를 노드(QC_N)로 전달하여 출력함으로써 테스트 장치에서 페일 데이터를 카운팅하여(S323), 배드블록 여부를 판단한다(S325).When the test is completed for all the memory blocks, the data stored in the third latch L3 is output (S321). To this end, after initializing the node QM_N to '1', the data of the node QT may be moved and the verification unit 128 may perform pass and fail verification. Alternatively, by passing the data of the node QT to the node QC_N and outputting the counted data, the test apparatus counts fail data (S323) and determines whether the bad block is present (S325).

상기 배드블록 판단은 테스트 장치가 아니라, 제어부(160)에서 판단할 수도 있다. 즉 제어부(160)에서 노드(QT)의 데이터를 노드(QM_N)으로 전달한 후, 페일 체크를 하고, 페일이 발생된 비트라인을 카운팅 함으로써 배드블록 발생 여부를 판단할수 있다.The bad block determination may be determined by the controller 160 instead of the test apparatus. That is, after the controller 160 transmits the data of the node QT to the node QM_N, a fail check may be performed, and the bad block may be determined by counting the bit line in which the fail has occurred.

상기 배드블록을 판단하는 것은, 설정된 개수 이상으로 비트라인이 페일된 경우 배드블록으로 설정한다.The bad block is determined as a bad block when the bit lines fail more than the set number.

상기의 메모리 블록 단위의 테스트는 하나라도 페일이 발생된 메모리 셀이 연결되는 비트라인 개수를 파악함으로써 배드블록 처리를 하거나, 리페어를 수행할 수 있는지를 확인하는데 이용될 수 있다.The above test in units of memory blocks may be used to determine whether a bad block process or repair can be performed by identifying the number of bit lines to which a failed memory cell is connected.

상기에서 설명한 본 발명의 기술적 사상은 바람직한 실시 예에서 구체적으로 기술되었으나, 상기한 실시 예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명은 본 발명의 기술분야의 통상의 전문가라면 본 발명의 기술적 사상의 범위 내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.Although the technical spirit of the present invention described above has been described in detail in a preferred embodiment, it should be noted that the above-described embodiment is for the purpose of description and not of limitation. In addition, it will be understood by those skilled in the art that various embodiments of the present invention are possible within the scope of the technical idea of the present invention.

도 1a는 본 발명의 실시 예에 따른 불휘발성 메모리 소자의 블록도이다.1A is a block diagram of a nonvolatile memory device according to an embodiment of the present invention.

도 1b는 상기 페이지 버퍼의 상세 회로도이다.1B is a detailed circuit diagram of the page buffer.

도 2a는 지능형 프로그램 검증 동작 순서도이다.2A is a flowchart of an intelligent program verification operation.

도 2b는 도 2a의 데이터 비교 동작 순서도이다.2B is a flowchart of a data comparison operation of FIG. 2A.

도 3은 본 발명의 실시 예에 따른 메모리 블록 테스트 방법을 설명하기 위한 순서도이다.3 is a flowchart illustrating a memory block test method according to an embodiment of the present invention.

*도면의 주요 부분의 간단한 설명** Brief description of the main parts of the drawings *

100 : 불휘발성 메모리 소자 110 : 메모리 셀 어레이100 nonvolatile memory device 110 memory cell array

120 : 페이지 버퍼부 130 : Y 디코더120: page buffer unit 130: Y decoder

140 : X 디코더 150 : 전압 제공부140: X decoder 150: voltage provider

160 : 제어부 170 : 데이터 입출력부160 control unit 170 data input / output unit

Claims (8)

선택된 메모리 블록의 제 1 페이지의 페이지 버퍼의 제 1 래치로 독출하고, 상기 제 1 데이터와 비교하기 위한 비교 데이터를 상기 페이지 버퍼의 제 2 래치로 입력받는 제 1 독출 및 데이터 입력단계;A first read and data input step of reading a first latch of a page buffer of a first page of a selected memory block and receiving comparison data for comparison with the first data to a second latch of the page buffer; 상기 페이지 버퍼의 제 3 래치를 초기화하는 단계;Initializing a third latch of the page buffer; 상기 제 1 및 제 2 래치에 저장된 데이터를 비교하여 상기 제 1 내지 제 3 래치의 데이터를 비교 결과에 따라 변경하는 제 1 데이터 비교 단계;A first data comparing step of comparing data stored in the first and second latches and changing data of the first to third latches according to a comparison result; 상기 제 1 데이터 비교단계에 의해 변경된 상기 제 1 래치에 데이터를 상기 선택된 메모리 블록의 제 2 페이지에 프로그램된 데이터의 상태에 따라 변경하고, 상기 제 2 페이지와 비교하기 위한 데이터를 상기 제 2 래치에 입력받은 제 2 독출 및 데이터 입력단계; Change the data in the first latch changed by the first data comparing step according to the state of the data programmed in the second page of the selected memory block, and convert the data for comparison with the second page into the second latch. A second read and data input step received; 상기 제 1 및 제 2 래치에 저장된 데이터를 비교하고, 그 결과에 따라 상기 제 1 내지 제 3 래치의 데이터 상태를 변경하는 제 2 데이터 비교단계; 및A second data comparing step of comparing data stored in the first and second latches and changing data states of the first to third latches according to the result; And 상기 선택된 메모리 블록의 나머지 페이지에 대해서 상기 제 2 독출 및 데이터 입력단계와 상기 제 2 데이터 비교단계를 반복하여 수행하는 단계Repeatedly performing the second read and data input step and the second data compare step with respect to the remaining pages of the selected memory block. 를 포함하는 불휘발성 메모리 소자의 테스트 방법.Test method of a nonvolatile memory device comprising a. 제 1항에 있어서,The method of claim 1, 상기 제 3 래치에 최종적으로 저장된 데이터 중 페일로 판단되는 데이터의 개수를 카운팅 하는 단계; 및Counting the number of data that is determined to be failure among data finally stored in the third latch; And 상기 카운팅 결과가 설정된 개수 이상인 경우 상기 선택된 메모리 블록을 배드블록 처리하는 단계를 포함하는 불휘발성 메모리 소자의 테스트 방법.And performing bad block processing on the selected memory block when the counting result is equal to or greater than a set number. 제 1항에 있어서,The method of claim 1, 상기 카운팅 결과가 설정된 개수 이하인 경우, 페일로 판단되는 비트라인에 대해 리페어를 수행하는 것을 특징으로 하는 불휘발성 메모리 소자의 테스트 방법.And if the counting result is less than or equal to the set number, repairing the bit line determined to fail. 제 1항에 있어서,The method of claim 1, 상기 제 1 또는 제 2 데이터 비교단계는 각각,The first or second data comparison step, respectively, 상기 제 3 래치의 데이터상태에 따라 상기 제 1 래치의 데이터를 변경하는 단계;Changing data of the first latch in accordance with a data state of the third latch; 상기 제 2 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계;Changing data in the third latch in accordance with the data state of the second latch; 상기 제 1 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계;Changing data in the third latch in accordance with the data state of the first latch; 상기 제 2 래치의 데이터 상태에 따라 상기 제 1 래치의 데이터 상태를 변경하는 단계; 및Changing the data state of the first latch in accordance with the data state of the second latch; And 상기 제 1 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계Changing the data of the third latch in accordance with the data state of the first latch 를 포함하는 불휘발성 메모리 소자의 테스트 방법.Test method of a nonvolatile memory device comprising a. 테스트 명령에 따라 페이지 버퍼를 초기화 한 후, 선택되는 메모리 블록의 제 1 페이지의 제 1 데이터를 페이지 버퍼의 제 1 래치로 독출하고, 상기 제 1 페이지의 데이터와 비교하기 위한 제 1 비교데이터를 상기 페이지 버퍼의 제 2 래치로 입력받은 후, 상기 제 1 및 제 2 래치의 데이터를 비교하여 서로 다른 경우의 제 1 비트라인에 연결된 페이지 버퍼의 제 3 래치에 페일 데이터를 고정하는 제 1 페이지 테스트 단계;After initializing the page buffer according to the test command, the first data of the first page of the selected memory block is read into the first latch of the page buffer, and the first comparison data for comparing with the data of the first page is read. A first page test step of fixing fail data to a third latch of a page buffer connected to a first bit line by comparing data of the first and second latches after receiving the second latch of the page buffer; ; 상기 선택된 메모리 블록의 제 2 페이지의 제 2 데이터 상태에 따라 상기 제 1 래치의 데이터를 변경하고, 제 2 페이지의 데이터와 비교하기 위한 제 2 비교데이터를 상기 제 2 래치에 입력받은 후, 상기 제 1 및 제 2 래치의 데이터를 비교하여 서로 다른 경우의 제 2 비트라인에 연결된 페이지 버퍼에 제 3 래치에 페일 데이터를 고정하는 제 2 페이지 테스트 단계; 및After changing the data of the first latch according to the second data state of the second page of the selected memory block and receiving the second comparison data for comparison with the data of the second page, the second latch is input. A second page test step of comparing the data of the first and second latches to fix the fail data to the third latch in a page buffer connected to the second bit line in different cases; And 상기 선택된 메모리 블록의 모든 페이지에 대해서 상기 제 2 페이지 테스트 단계와 같은 동작을 수행한 후, 상기 페이지 버퍼의 제 3 래치의 데이터를 이용하여 상기 선택된 메모리 블록의 배드블록 여부를 판단하는 단계Performing the same operation as the second page test step on all pages of the selected memory block, and then determining whether the selected memory block is a bad block by using data of a third latch of the page buffer 를 포함하는 불휘발성 메모리 소자의 테스트 방법.Test method of a nonvolatile memory device comprising a. 제 5항에 있어서,The method of claim 5, 상기 배드블록 여부를 판단하는 것은,Determining whether or not the bad block, 제 3 래치에 최종적으로 저장된 데이터 중 페일로 판단되는 데이터의 개수를 카운팅 하는 단계; 및Counting the number of data that is determined to be failure among data finally stored in the third latch; And 상기 카운팅 결과가 설정된 개수 이상인 경우 상기 선택된 메모리 블록을 배드블록 처리하는 단계를 포함하는 불휘발성 메모리 소자의 테스트 방법.And performing bad block processing on the selected memory block when the counting result is equal to or greater than a set number. 제 6항에 있어서,The method of claim 6, 상기 카운팅 결과가 설정된 개수 이하인 경우, 페일로 판단되는 비트라인에 대해 리페어를 수행하는 것을 특징으로 하는 불휘발성 메모리 소자의 테스트 방법.And if the counting result is less than or equal to the set number, repairing the bit line determined to fail. 제 5항에 있어서,The method of claim 5, 상기 제 1 및 제 2 래치의 데이터를 비교하고, 상기 제 3 래치에 페일 데이터를 고정하는 것은, Comparing the data of the first and second latch, and fixing the fail data to the third latch, 상기 제 3 래치의 데이터상태에 따라 상기 제 1 래치의 데이터를 변경하는 단계;Changing data of the first latch in accordance with a data state of the third latch; 상기 제 2 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계;Changing data in the third latch in accordance with the data state of the second latch; 상기 제 1 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계;Changing data in the third latch in accordance with the data state of the first latch; 상기 제 2 래치의 데이터 상태에 따라 상기 제 1 래치의 데이터 상태를 변경하는 단계; 및Changing the data state of the first latch in accordance with the data state of the second latch; And 상기 제 1 래치의 데이터 상태에 따라 상기 제 3 래치의 데이터를 변경하는 단계Changing the data of the third latch in accordance with the data state of the first latch 를 포함하는 불휘발성 메모리 소자의 테스트 방법.Test method of a nonvolatile memory device comprising a.
KR1020090029353A 2009-04-06 2009-04-06 Method of testing a non volatile memory device KR20100111005A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090029353A KR20100111005A (en) 2009-04-06 2009-04-06 Method of testing a non volatile memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090029353A KR20100111005A (en) 2009-04-06 2009-04-06 Method of testing a non volatile memory device

Publications (1)

Publication Number Publication Date
KR20100111005A true KR20100111005A (en) 2010-10-14

Family

ID=43131387

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090029353A KR20100111005A (en) 2009-04-06 2009-04-06 Method of testing a non volatile memory device

Country Status (1)

Country Link
KR (1) KR20100111005A (en)

Similar Documents

Publication Publication Date Title
KR101024188B1 (en) Method of programming a non volatile memory device
CN101533673B (en) Method of testing a non-volatile memory device
US7739560B2 (en) Nonvolatile semiconductor memory device and method of self-testing the same
US8804391B2 (en) Semiconductor memory device and method of operating the same
KR100880320B1 (en) Flash memory device and method of programming the same
US8767481B2 (en) Nonvolatile memory device and method of operating the same
JP6342350B2 (en) Semiconductor memory device
KR102615027B1 (en) Serializer and memory device including the same
KR101005164B1 (en) Non volatile memory and method of programing thereof
KR100933861B1 (en) Nonvolatile Memory Device and Program Verification Method
US8634261B2 (en) Semiconductor memory device and method of operating the same
KR100943141B1 (en) Method of programming a non volatile memory device
KR100933838B1 (en) Test method of nonvolatile memory device
JP6115882B1 (en) Semiconductor memory device
US9318198B2 (en) Memory system and method of operating the same
CN113625629B (en) Configuration control circuit applied to N _ FLASH type FPGA
KR20100115123A (en) Non volatile memory device and method of operating the same
KR102604620B1 (en) Serializer and memory device including the same
KR100908541B1 (en) Copyback Program Method for Nonvolatile Memory Devices
KR20100111005A (en) Method of testing a non volatile memory device
KR20080021397A (en) Flash memory device and program method thereof
KR101068495B1 (en) Method of data reading a non volatile memory device
KR100980375B1 (en) Non volatile memory device and method of operating the same
KR20120005828A (en) Operation method of non-volatile memory device
KR20090000409A (en) Circuit of page buffer and flash memory device having the same

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination