KR20080079753A - Method and apparatus for testing memory - Google Patents

Method and apparatus for testing memory Download PDF

Info

Publication number
KR20080079753A
KR20080079753A KR1020070020101A KR20070020101A KR20080079753A KR 20080079753 A KR20080079753 A KR 20080079753A KR 1020070020101 A KR1020070020101 A KR 1020070020101A KR 20070020101 A KR20070020101 A KR 20070020101A KR 20080079753 A KR20080079753 A KR 20080079753A
Authority
KR
South Korea
Prior art keywords
data
memory
test
input
gate
Prior art date
Application number
KR1020070020101A
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 KR1020070020101A priority Critical patent/KR20080079753A/en
Publication of KR20080079753A publication Critical patent/KR20080079753A/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25BTOOLS OR BENCH DEVICES NOT OTHERWISE PROVIDED FOR, FOR FASTENING, CONNECTING, DISENGAGING OR HOLDING
    • B25B1/00Vices
    • B25B1/06Arrangements for positively actuating jaws
    • B25B1/18Arrangements for positively actuating jaws motor driven, e.g. with fluid drive, with or without provision for manual actuation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q3/00Devices holding, supporting, or positioning work or tools, of a kind normally removable from the machine
    • B23Q3/02Devices holding, supporting, or positioning work or tools, of a kind normally removable from the machine for mounting on a work-table, tool-slide, or analogous part
    • B23Q3/06Work-clamping means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25BTOOLS OR BENCH DEVICES NOT OTHERWISE PROVIDED FOR, FOR FASTENING, CONNECTING, DISENGAGING OR HOLDING
    • B25B1/00Vices
    • B25B1/02Vices with sliding jaws
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25BTOOLS OR BENCH DEVICES NOT OTHERWISE PROVIDED FOR, FOR FASTENING, CONNECTING, DISENGAGING OR HOLDING
    • B25B1/00Vices
    • B25B1/24Details, e.g. jaws of special shape, slideways
    • B25B1/2405Construction of the jaws
    • B25B1/2478Construction of the jaws with more than one pair of jaws
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25BTOOLS OR BENCH DEVICES NOT OTHERWISE PROVIDED FOR, FOR FASTENING, CONNECTING, DISENGAGING OR HOLDING
    • B25B1/00Vices
    • B25B1/24Details, e.g. jaws of special shape, slideways
    • B25B1/2489Slideways

Abstract

A method for testing a memory and an apparatus therefore are provided to detect an error of the memory accurately through simultaneous compressing method. According to an apparatus for testing a memory including a plurality of memory regions, a test control part(300) outputs a control signal to write and read test data to/from the memory. An address generation part(302) outputs an address signal according to the control of the test control part. A test pattern generation part outputs the test data according to the control of the test control part. A test result analysis part(306) reads 1 bit data from each memory region, and inputs the k bit data to a data compressing part including k-input logic gates and then compresses the k bit data, and judges failure of the memory through a test result flag outputted through the compressing.

Description

메모리 테스트 방법 및 장치{Method and Apparatus for testing Memory}Memory test method and device {Method and Apparatus for testing Memory}

도 1은 종래기술에 따른 메모리 테스트에서 데이터 압축 과정의 일예를 도시한 도면. 1 is a diagram illustrating an example of a data compression process in a memory test according to the prior art.

도 2는 종래기술에 따른 메모리 테스트에서 데이터 압축 과정의 다른 예를 도시한 도면. 2 illustrates another example of a data compression process in a memory test according to the prior art.

도 3는 본 발명의 바람직한 일 실시예에 따른 메모리 테스트 시스템의 블록도. 3 is a block diagram of a memory test system in accordance with one preferred embodiment of the present invention.

도 4는 본 발명의 바람직한 제1 실시예에 따른 데이터 압축 과정을 도시한 도면. 4 is a diagram illustrating a data compression process according to a first preferred embodiment of the present invention.

도 5는 본 발명의 바람직한 제2 실시예에 따른 데이터 압축 과정을 도시한 도면.5 is a diagram illustrating a data compression process according to a second preferred embodiment of the present invention.

도 6은 본 발명에 따른 데이터 압축부의 논리 게이트 구성의 일예를 도시한 블록도. 6 is a block diagram showing an example of a logic gate configuration of a data compression unit according to the present invention;

도 7은 본 발명의 제1 실시예에 따른 메모리 테스트 과정의 순서도. 7 is a flowchart of a memory test process according to the first embodiment of the present invention.

도 8은 본 발명의 제2 실시예에 따른 메모리 테스트 과정의 순서도.8 is a flowchart of a memory test process according to the second embodiment of the present invention.

본 발명은 메모리 테스트 방법 및 장치에 관한 것으로서, 보다 상세하게는 압축 방식을 개선하여 메모리 테스트 시 고장 검출률(fault coverage)를 높일 수 있는 방법 및 장치에 관한 것이다. The present invention relates to a memory test method and an apparatus, and more particularly, to a method and an apparatus capable of improving a fault coverage during a memory test by improving a compression scheme.

최근 들어 하나의 칩에 대한 회로의 집적도는 시스템의 고성능화, 고기능화 및 소형화의 요구와 함께 설계 공정 기술의 발달에 힘입어 급속하게 증가하고 있다. In recent years, the density of circuits on a single chip is rapidly increasing due to the development of design process technology along with the demand for high performance, high functionality, and miniaturization of a system.

한 개의 칩 안에 2천 만개 이상의 트랜지스터를 집적할 수 있는 초고집적 반도체 설계 및 제조 기술과 그 동안 축적된 풍부한 설계 라이브러리는 한 개의 칩에 이미 설계되어 검증된 다양한 형태의 코어를 내장하여 고집적화된 칩(SOC: System-on-Chip)이 가능하게 되었다. Ultra-integrated semiconductor design and fabrication technology capable of integrating more than 20 million transistors in one chip, and the accumulated rich design library have been integrated into a highly integrated chip by embedding various types of cores already designed and proven on one chip. SOC: System-on-Chip.

시스템온칩은 재사용 가능한 코어를 사용하기 때문에 새로운 시스템을 개발하기 위한 시간을 대폭 줄일 수 있으며 저전력화, 다기능화 및 소형화가 가능하다. System-on-chip uses reusable cores, greatly reducing the time needed to develop new systems, enabling lower power, versatility and miniaturization.

그러나 코어와 함께 메모리와 같은 모듈이 하나의 칩에 내장됨에 따라 메모리의 고장을 테스트하는 것이 매우 중요한 문제로 부각되었다. 메모리의 테스트를 위해 메모리 셀 어레이에 소정 테스트 데이터를 기입(write)하고, 기입된 데이터를 독출(read)하여 이를 정상 동작시의 출력값과 비교하는 방법이 주로 사용된다. However, as modules such as memory are embedded in one chip with the core, testing memory failures becomes an important issue. A method of writing predetermined test data into a memory cell array for testing a memory, reading the written data, and comparing it with an output value in normal operation is mainly used.

모든 메모리 셀에서 독출되는 데이터와 정상 동작시의 출력값을 비교하는 것은 많은 기억용량을 필요로 하여 하드웨어 오버헤드를 크게 하기 때문에 테스트 과정 중에 테스트 대상 메모리(예를 들어, RAM, ROM 등)에서 독출된 데이터를 압축하 여 부호(flag)를 생성하여 플래그를 통해 메모리의 고장 여부를 검출하는 방법이 많이 사용된다. Comparing the data read from all memory cells with the output during normal operation requires a large amount of storage capacity and increases hardware overhead, so it is not possible to read from the memory under test (eg RAM, ROM, etc.) during the test process. A method of compressing data to generate a flag and detecting a memory failure through a flag is widely used.

도 1은 종래기술에 따른 메모리 테스트에서 데이터 압축 과정의 일 예를 도시한 도면이다.1 is a diagram illustrating an example of a data compression process in a memory test according to the prior art.

도 1은 4개의 메모리 영역(M0 내지M3, 100 내지 106)에서 독출된 1비트 데이터를 2비트씩 압축하여 플래그를 생성하는 과정을 도시한 도면이다. FIG. 1 is a diagram illustrating a process of generating a flag by compressing 1-bit data read in four memory areas M0 to M3 and 100 to 106 by 2 bits.

여기서 각 메모리 영역(100 내지 106)은 하나의 메모리 내에서 물리적으로 구분되는 영역으로서, 소정 크기를 가지는 뱅크(bank) 영역일 수 있으며, 또는 하나의 뱅크 내에서 소정 크기를 가지는 블록(block) 영역일 수 있다. Here, each of the memory areas 100 to 106 is a physically divided area in one memory, and may be a bank area having a predetermined size, or a block area having a predetermined size in one bank. Can be.

종래에는 제1 및 제2 메모리 영역(100,102)에서 독출된 데이터를 제1 XOR 로직(108)을 통해 압축하고, 제3 및 제4 메모리 영역(104,106)에서 독출된 데이터를 제2 XOR 로직(110)을 통해 압축하게 된다. Conventionally, data read in the first and second memory areas 100 and 102 is compressed through the first XOR logic 108, and data read in the third and fourth memory areas 104 and 106 is compressed to the second XOR logic 110. ) Is compressed.

여기서 제1 및 제2 XOR 로직(108,110)은 2-입력 배타적 논리합(exclusive or) 게이트로 구현되며, 압축된 데이터는 논리합 게이트(112)를 통과하면서 테스트 결과 플래그로 출력된다. Here, the first and second XOR logics 108 and 110 are implemented as two-input exclusive OR gates, and the compressed data is output as a test result flag while passing through the OR gate 112.

일반적으로 정상 동작 플래그가 하이(논리값1) 또는 로우(논리값0)으로 미리 설정되어 있으며, 테스트 결과 플래그가 하이 또는 로우인지를 통해 메모리의 고장 여부를 검출할 수 있다. In general, the normal operation flag is set to a high (logical value 1) or a low (logical value 0), and the test result flag is high or low to detect whether a memory has failed.

그러나 도 1과 같은 종래기술에 따르면 제1 XOR 로직(108)에 입력되는 bit0과 bit1이 동시에 오류가 발생하는 경우, 즉 bit0과 bit1을 출력한 메모리 셀에 모 두 고장이 있는 경우에는 테스트 결과 플래그가 정상 동작시의 플래그와 동일하게 되어 메모리 셀의 고장을 검출할 수 없는 문제점이 있었다. However, according to the prior art as shown in FIG. 1, when bit0 and bit1 input to the first XOR logic 108 have an error at the same time, that is, when there is a failure in both the memory cells outputting bit0 and bit1, the test result flag. Has the same problem as that in the normal operation flag, so that a failure of the memory cell cannot be detected.

이는 제2 XOR 로직(110)에 입력되는 bit2와 bit3이 동시에 오류가 있는 경우에도 마찬가지이다. This is true even when bit2 and bit3 input to the second XOR logic 110 have an error at the same time.

예를 들어, 정상 동작 플래그가 로우로 설정되고, 각 메모리 영역의 bit0 내지 bit3에 상응하는 메모리 셀에 논리값 '0'이라는 데이터를 기입하고, 이를 독출하는 경우, 정상적인 데이터가 독출된다면 배타적 논리합 게이트에 의해 제1 XOR 로직(108)과 제2 XOR 로직(110)은 각각 논리값 '0'을 출력하게 되며, 이들이 논리합 게이트(112)를 통과하여 최종적으로 '0' 플래그가 출력된다. For example, when the normal operation flag is set to low and writes data of a logic value '0' to memory cells corresponding to bit0 to bit3 of each memory area, and reads it out, if the normal data is read out, an exclusive logical sum By the gate, the first XOR logic 108 and the second XOR logic 110 respectively output logic values '0', and they pass through the OR gate 112 to finally output the '0' flag.

그러나 M0 및 M1 메모리 영역(100,102) 내의 특정 메모리 셀에 고장이 있어 bit0과 bit1이 논리값 '1'을 출력하는 경우, 제1 XOR 로직(108)은 배타적 논리합에 의해 논리값 '0' 출력하며, 이에 따라 최종 플래그가 '0'이 된다. However, when a specific memory cell in the M0 and M1 memory regions 100 and 102 has failed and bit0 and bit1 output a logic value '1', the first XOR logic 108 outputs a logic value '0' by an exclusive OR. Therefore, the final flag is '0'.

이는 M2 및 M3 메모리 영역(104,106)에 모두 고장이 있는 경우에도 마찬가지가 된다. This is true even when both the M2 and M3 memory areas 104 and 106 have a fault.

즉, 4개의 메모리 영역에서 1비트 데이터를 독출하는 메모리 테스트 방식에서 2-입력 XOR 로직을 이용하는 경우, 각 XOR 로직에 입력되는 데이터 모두에 오류가 있으면 테스트 결과 플래그가 정상 동작 시 플래그와 동일한 값을 출력하기 때문에 실질적으로 고장을 검출할 수 없는 문제점이 있다. In other words, when the 2-input XOR logic is used in the memory test method that reads one bit data from four memory areas, if all data input to each XOR logic has an error, the test result flag is the same value as the flag in normal operation. There is a problem in that it is practically impossible to detect a fault because the output of the.

한편, 도 2는 종래기술에 따른 메모리 테스트에서 데이터 압축 과정의 다른 예를 도시한 도면이다. 2 is a diagram illustrating another example of a data compression process in a memory test according to the prior art.

도 2는 동일한 데이터 집합, 즉 각 메모리 영역(100 내지 106)에서 인접한 메모리 셀에 상응하는 4비트의 데이터를 제1 내지 제4 로직(200 내지 206)으로 압축하고 압축된 데이터를 논리합 게이트(112)를 통과시켜 플래그를 출력하는 과정을 도시한 도면이다. FIG. 2 compresses 4-bit data corresponding to adjacent memory cells in the same data set, that is, each memory area 100 to 106, into the first to fourth logics 200 to 206, and compresses the compressed data into the logical sum gate 112. FIG. Is a diagram illustrating a process of outputting a flag by passing through a.

그러나 이와 같은 테스트 방법에 따르면 오히려 도 1에 도시된 방법보다 더욱 안 좋은 고장 검출률을 제공하게 된다. However, such a test method provides a worse failure detection rate than the method shown in FIG.

이는 메모리 제조 과정의 특성상 하나의 메모리 셀에 고장이 있는 경우 인접한 메모리 셀도 고장이 있을 가능성이 높기 때문이다. 이에 따라 인접한 메모리 셀들이 모두 고장이 발생하였음에도 불구하고 압축에 의해 생성된 테스트 결과 플래그가 정상 동작 플래그와 동일해져 정확하게 오류를 검출할 수 없는 문제점이 있었다.This is because when one memory cell fails due to the characteristics of a memory manufacturing process, adjacent memory cells are also likely to fail. As a result, even though all adjacent memory cells have failed, the test result flag generated by compression is the same as the normal operation flag, so that an error cannot be accurately detected.

본 발명에서는 상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 동시 압축 방법을 통해 메모리의 오류를 정확하게 검출할 수 있는 메모리 테스트 방법 및 장치를 제안하고자 한다. In the present invention, to solve the problems of the prior art as described above, it is proposed a memory test method and apparatus that can accurately detect the error of the memory through the simultaneous compression method.

본 발명의 다른 목적은 효율적인 메모리 테스트를 통해 테스트 시간을 감소시킬 수 있는 메모리 테스트 방법 및 장치를 제공하는 것이다.Another object of the present invention is to provide a memory test method and apparatus capable of reducing test time through an efficient memory test.

상기한 바와 같은 목적을 달성하기 위해, 본 발명의 바람직한 일 실시예에 따르면, 복수의 메모리 영역을 포함하는 메모리를 테스트하는 방법에 있어서, (a) k개(k는 3이상의 자연수)의 메모리 영역으로부터 k개의 1비트 데이터를 독출하는 단계; (b) 상기 k개의 1비트 데이터를 k-입력 논리 게이트를 포함하는 데이터 압축부로 입력하여 압축하는 단계; 및 (c) 상기 데이터 압축부에서 압축을 통해 출력된 테스트 결과 플래그를 통해 메모리의 고장 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 메모리 테스트 방법이 제공된다.In order to achieve the above object, according to a preferred embodiment of the present invention, in the method for testing a memory including a plurality of memory areas, (a) k (k is a natural number of 3 or more) memory areas Reading k 1-bit data from the; (b) inputting and compressing the k 1-bit data into a data compression unit including a k-input logic gate; And (c) determining whether the memory is faulty based on a test result flag output through compression by the data compression unit.

본 발명의 다른 측면에 따르면, 복수의 메모리 영역을 포함하는 메모리를 테스트 방법에 있어서, (a) n개(n은 2이상의 자연수)의 메모리 영역으로부터 각각 n비트 데이터를 독출하는 단계; (b) 각 n비트 데이터를 n개의 데이터 집합으로 조합하는 단계-상기 미리 설정된 데이터 집합은 n비트 데이터임-; (c) 상기 조합된 데이터 집합을 n-입력 논리 게이트를 포함하는 복수의 데이터 압축부로 입력하여 압축하는 단계; (d) 상기 복수의 데이터 압축부에서 출력한 데이터를 연산하여 테스트 결과 플래그를 생성하는 단계; 및 (e) 상기 테스트 결과 플래그를 통해 상기 메모리의 고장 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 메모리 테스트 방법이 제공된다.According to another aspect of the present invention, there is provided a method of testing a memory including a plurality of memory regions, comprising: (a) reading n-bit data from each of n (n is a natural number of two or more) memory regions; (b) combining each n-bit data into n data sets, wherein the preset data set is n-bit data; (c) inputting and compressing the combined data set into a plurality of data compression units including n-input logic gates; (d) generating a test result flag by calculating data output from the plurality of data compression units; And (e) determining whether the memory has failed based on the test result flag.

본 발명의 다른 측면에 따르면, 복수의 메모리 영역을 포함하는 메모리를 테스트하는 장치에 있어서, 상기 메모리에 테스트 데이터를 기입 및 독출하기 위한 제어신호를 출력하는 테스트 제어부; 상기 테스트 제어부의 제어에 따라 어드레스 신호를 출력하는 어드레스 생성부; 상기 테스트 제어부의 제어에 따라 상기 테스트 데이터를 출력하는 테스트 패턴 생성부; 및 k개(k는 3이상의 자연수)의 메모리 영역으로부터 각각 1비트 데이터를 독출하고, 상기 독출된 k비트 데이터를 k-입력 논 리 게이트를 포함하는 데이터 압축부로 입력하여 압축하며, 상기 압축을 통해 출력된 테스트 결과 플래그를 통해 메모리의 고장 여부를 판단하는 테스트 결과 분석부를 포함하는 것을 특징으로 하는 메모리 테스트 장치가 제공된다.According to another aspect of the present invention, an apparatus for testing a memory including a plurality of memory areas, the apparatus comprising: a test controller for outputting a control signal for writing and reading test data into the memory; An address generator for outputting an address signal under control of the test controller; A test pattern generator configured to output the test data under the control of the test controller; And read 1 bit data from k memory regions (k is a natural number of 3 or more), input the compressed k bit data into a data compression unit including a k-input logic gate, and compress the compressed data. There is provided a memory test apparatus including a test result analyzer configured to determine whether a memory has failed through an output test result flag.

본 발명의 다른 측면에 따르면, 복수의 메모리 영역을 포함하는 메모리를 테스트하는 장치에 있어서, 상기 메모리에 테스트 데이터를 기입 및 독출하기 위한 제어신호를 출력하는 테스트 제어부; 상기 테스트 제어부의 제어에 따라 어드레스 신호를 출력하는 어드레스 생성부; 상기 테스트 제어부의 제어에 따라 상기 테스트 데이터를 출력하는 테스트 패턴 생성부; 및 n개(n은 2이상의 자연수)의 메모리 영역으로부터 각각 n비트 데이터를 독출하고, 각 n비트 데이터를 n개의 데이터 집합으로 조합하며, 상기 미리 설정된 데이터 집합은 n비트 데이터임-, 상기 조합된 데이터 집합을 n-입력 논리 게이트를 포함하는 복수의 데이터 압축부로 입력하여 압축하고, 상기 복수의 데이터 압축부에서 출력한 데이터를 연산하여 생성된 테스트 결과 플래그를 통해 메모리의 고장 여부를 판단하는 테스트 결과 분석부를 포함하는 것을 특징으로 하는 메모리 테스트 장치가 제공된다. According to another aspect of the present invention, an apparatus for testing a memory including a plurality of memory areas, the apparatus comprising: a test controller for outputting a control signal for writing and reading test data into the memory; An address generator for outputting an address signal under control of the test controller; A test pattern generator configured to output the test data under the control of the test controller; And n-bit data are respectively read from n memory regions (n is a natural number of two or more), each n-bit data is combined into n data sets, and the preset data set is n-bit data. A test result of determining whether a memory is broken through a test result flag generated by inputting and compressing a data set into a plurality of data compression units including n-input logic gates, and calculating data output from the plurality of data compression units. There is provided a memory test apparatus comprising an analysis unit.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the drawings, similar reference numerals are used for similar elements.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.

이하, 본 발명의 바람직한 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면 번호에 상관없이 동일한 수단에 대해서는 동일한 참조 번호를 사용하기로 한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention, the same reference numerals will be used for the same means regardless of the reference numerals in order to facilitate the overall understanding.

도 3는 본 발명의 바람직한 일 실시예에 따른 메모리 테스트 시스템의 블록도이다.3 is a block diagram of a memory test system according to an exemplary embodiment of the present invention.

도 3에 도시된 바와 같이, 본 발명에 따른 메모리 테스트 시스템은 테스트 제어부(300), 어드레스 생성부(302), 테스트 패턴 생성부(304), 테스트 결과 분석부(306) 및 테스트 대상 회로에 해당하는 메모리(308)를 포함할 수 있다. As shown in FIG. 3, the memory test system according to the present invention corresponds to a test controller 300, an address generator 302, a test pattern generator 304, a test result analyzer 306, and a test target circuit. Memory 308 may be included.

테스트 제어부(300)는 테스트 시작과 종료 및 판단 과정을 수행하며, 테스트 모드 중에 자체 테스트를 위한 어드레스 생성부(302), 테스트 패턴 생성부(304) 및 테스트 결과 분석부(306)의 동작을 제어한다The test controller 300 performs a test start, end, and determination process, and controls the operations of the address generator 302, the test pattern generator 304, and the test result analyzer 306 for the self test during the test mode. do

테스트 제어부(300)는 테스트 모드에서 데이터가 기입 또는 독출되는 메모리 셀 선택을 위한 어드레스 생성 제어신호(Address Order), 데이터 기입을 위한 테스트 데이터 생성 제어신호(Data select)를 출력하며, 또한 어드레스 생성을 위한 클 럭(AGL_CLK), 메모리 셀에 데이터를 기입 또는 독출하는 동작 타이밍을 위한 클럭(TCLK) 및 테스트 결과 분석을 위한 클럭(DCL_CLK)을 출력한다.The test control unit 300 outputs an address generation control signal (Address Order) for selecting a memory cell in which data is written or read in the test mode, a test data generation control signal (Data select) for writing data, and also generates an address generation. A clock AGL_CLK for outputting a clock, a clock TCLK for timing operation of writing or reading data into a memory cell, and a clock DCL_CLK for analyzing a test result are output.

어드레스 생성부(302)는 상기한 어드레스 생성 제어신호를 인가 받아 테스트 모드에서의 어드레스를 생성한다. 어드레스 생성부(302)는 카운터를 구비하여 증가 또는 감소하는 방향으로 순차적으로 어드레스를 생성할 수 있다. The address generator 302 receives the address generation control signal described above to generate an address in the test mode. The address generator 302 may include a counter to sequentially generate addresses in an increasing or decreasing direction.

테스트 패턴 생성부(304)는 테스트 제어부(300)로부터 인가된 제어신호에 따라 각 메모리 셀에 기입될 데이터를 생성한다. The test pattern generator 304 generates data to be written in each memory cell according to a control signal applied from the test controller 300.

상기한 과정을 통해 생성된 어드레스 및 데이터가 각각 제1 먹스(310) 및 제2 먹스(312)를 통해 메모리(308)로 입력된다. The address and data generated through the above process are input to the memory 308 through the first mux 310 and the second mux 312, respectively.

또한, 테스트 제어부(300)에서 출력된 테스트 클럭(TCLK)는 제3 먹스(314)를 통해 메모리(308)로 입력되며, 테스트 대상이 되는 메모리 셀을 활성화하고, 활성화된 메모리 셀에 데이터를 기입 또는 독출하기 위한 테스트 제어 신호(Test CTR)는 제4 먹스(316)를 통해 메모리(308)로 입력된다. In addition, the test clock TCLK output from the test controller 300 is input to the memory 308 through the third mux 314, activates the memory cell to be tested, and writes data to the activated memory cell. Alternatively, the test control signal Test CTR for reading is input to the memory 308 through the fourth mux 316.

상기한 제1 먹스 내지 제4 먹스는 (310 내지 316)는 테스트 모드인 경우 메모리(308)에 연결된 프로세서로부터 입력되는 어드레스(Normal ADD), 데이터(Normal Data), 클럭(CLK) 및 제어신호(Normal CTR)를 먹싱하여 테스트 모드에서 입력되는 어드레스/데이터/클럭/제어신호만이 선택적으로 메모리(308)에 입력되도록 한다. When the first to fourth muxes 310 to 316 are in the test mode, the first mux to fourth mux are inputted from the processor connected to the memory 308, the normal data, the clock CLK, and the control signal. Normal CTR) is muxed so that only the address / data / clock / control signals input in the test mode are selectively input to the memory 308.

메모리(308)는 프로세서의 요청 또는 테스트 제어부의 요청에 따라 데이터를 워드 라인과 비트 라인으로 이루어지는 메모리 셀 어레이에 기입 또는 독출하는 것 으로서, RAM(Random Access Memory) 또는 ROM(Read Only Memory)일 수 있으며, 보다 상세하게는 SRAM(Static RAM), DRAM(Dynamic RAM), 플래시 메모리, EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable PROM)일 수 있다. The memory 308 writes or reads data into a memory cell array having a word line and a bit line at the request of a processor or a request of a test controller. The memory 308 may be a random access memory (RAM) or a read only memory (ROM). In more detail, it may be a static RAM (SRAM), a dynamic RAM (DRAM), a flash memory, an erasable programmable ROM (EPROM), or an electrically erasable PROM (EEPROM).

이와 같은 메모리(308)는 프로세서(미도시)로부터 어드레스, 제어신호, 클럭 및 데이터를 입력 받고 어드레스를 로우 어드레스와 컬럼 어드레스로 디코딩한 후 디코딩된 어드레스에 상응하는 메모리 셀에 미리 설정된 동작 타이밍에 따라 데이터를 독출하거나 기입한다.The memory 308 receives an address, a control signal, a clock, and data from a processor (not shown), decodes the address into a row address and a column address, and according to an operation timing set in advance in a memory cell corresponding to the decoded address. Read or write data.

이를 위해 메모리(308)는 메모리 인터페이스(미도시)를 포함할 수 있으며, 메모리 인터페이스는 명령 디코더(Command decoder)(미도시), 로우 디코더(Row decoder) (미도시), 컬럼 디코더(Column decoder)(미도시) 및 입출력 버퍼(미도시) 등을 포함할 수 있다. For this purpose, the memory 308 may include a memory interface (not shown), and the memory interface may include a command decoder (not shown), a row decoder (not shown), and a column decoder. (Not shown) and an input / output buffer (not shown).

한편, 메모리 셀 어레이는 도 4내지 도 5에 도시된 바와 같이, 복수의 메모리 영역(400 내지 406)으로 구분될 수 있다. 복수의 메모리 영역은 물리적으로 구분되는 소정 크기를 가지는 뱅크(bank) 영역일 수 있으며, 또는 하나의 뱅크 내에서 소정 크기를 가지는 블록(block) 영역일 수 있다.Meanwhile, the memory cell array may be divided into a plurality of memory regions 400 to 406, as illustrated in FIGS. 4 to 5. The plurality of memory areas may be a bank area having a predetermined size physically divided, or may be a block area having a predetermined size in one bank.

테스트 모드 시 테스트 제어부(300)의 제어에 따라 개별 메모리 영역에 기입된 데이터가 독출된다. In the test mode, data written to an individual memory area is read under the control of the test controller 300.

테스트 결과 분석부(306)는 독출된 데이터를 가공 처리하여 테스트 결과 플래그를 통해 메모리의 고장 또는 정상 신호를 출력한다. The test result analyzer 306 processes the read data and outputs a memory failure or normal signal through the test result flag.

본 발명의 바람직한 일 실시예에 따르면, 테스트 결과 분석부(306)는 개별 메모리 영역(400 내지 406)에서 출력된 데이터를 동시에 압축 처리하여 테스트 결과 플래그를 생성하고, 이를 통해 메모리의 고장 여부를 검출한다. According to an exemplary embodiment of the present invention, the test result analyzer 306 simultaneously compresses the data output from the individual memory areas 400 to 406 to generate a test result flag, thereby detecting whether the memory is broken. do.

이때, 테스트 결과 분석부(306)에는 정상 동작 시 플래그가 로우 또는 하이로 미리 설정되어 있을 수 있으므로 상기와 같이 독출된 데이터의 압축을 통해 테스트 결과 플래그가 생성되는 경우, 이를 통해 메모리의 고장 여부를 검출할 수 있다. In this case, since the flag may be preset to low or high in the normal operation, when the test result flag is generated through the compression of the read data as described above, the test result analyzer 306 determines whether the memory has failed. Can be detected.

도 4는 본 발명의 바람직한 제1 실시예에 따른 데이터 압축 과정을 도시한 도면으로서, 본 발명에 따른 테스트 결과 분석부(306)는 데이터 압축부(408)를 포함할 수 있다. 4 is a diagram illustrating a data compression process according to a first embodiment of the present invention. The test result analyzer 306 according to the present invention may include a data compressor 408.

본 발명의 제1 실시예에 따른 데이터 압축부(408)는 도 4에 도시된 바와 같이, k개(k는 3이상의 자연수)의 각 메모리 영역(400 내지 406)으로부터 각각 1비트씩 k 비트의 데이터를 수신하여 동시에 압축한다. As shown in FIG. 4, the data compression unit 408 according to the first embodiment of the present invention has k bits of 1 bit each from k memory regions 400 to 406 (k is a natural number of 3 or more). Receive and compress data simultaneously.

도 4는 k가 4 인 경우를 도시한 것이다. 4 illustrates the case where k is 4.

데이터 압축부(408)는 개별 메모리 영역(400 내지 406)에서 독출된 데이터의 동시 압축을 통해 독출된 데이터가 모두 정상인 경우와 모두 오류가 있는 경우에만 정상 동작 플래그와 동일한 값을 출력하도록 구현된다. The data compression unit 408 is implemented to output the same value as the normal operation flag only when the data read out through the simultaneous compression of the data read out from the individual memory areas 400 to 406 are all normal and if all are in error.

도 6은 본 발명에 따른 데이터 압축부의 논리 게이트 구성의 일예를 도시한 블록도이다. 6 is a block diagram illustrating an example of a logic gate configuration of a data compression unit according to the present invention.

도 6을 참조하면 본 발명의 제1 실시예에 따른 데이터 압축부(408)는 논리곱 게이트(AND Logic, 600), 역논리합 게이트(NOR Logic, 602) 및 2-입력 논리합 게이트(OR Logic, 604)를 포함할 수 있다. Referring to FIG. 6, the data compressor 408 according to the first exemplary embodiment of the present invention may include an AND logic 600, an inverse logical gate 602, and a two input OR logic gate. 604).

본 발명의 제1 실시예에 따르면 상기한 바와 같이, k개의 개별 메모리 영역(400 내지 406)로부터 1비트 데이터를 독출하는 경우, 본 발명에 따른 데이터 압축부(408)는 k-입력 논리 게이트, 즉 k-입력 논리곱 게이트(600) 및 k-입력 역논리합 게이트(602)를 포함할 수 있다. According to the first embodiment of the present invention, as described above, in the case of reading 1-bit data from the k individual memory areas 400 to 406, the data compression unit 408 according to the present invention has a k-input logic gate. That is, it may include a k-input AND gate 600 and a k-inverse logical gate (602).

하기에서는 k가 4인 경우 데이터 압축부(408)의 플래그 생성 과정을 살펴본다. Hereinafter, when k is 4, the flag generation process of the data compression unit 408 will be described.

예를 들어, 각 메모리 영역(400 내지 406)에 논리값 '0'이 기입되는 경우 정상 동작 시 각 메모리 영역(400 내지 406)에서 독출되는 데이터(bit0 내지 bit3)는 논리값 '0000'이 된다. For example, when a logic value '0' is written to each memory area 400 to 406, the data bits 0 to bit3 read out from each memory area 400 to 406 become a logic value '0000' during normal operation. .

독출된 데이터가 도 6의 4-입력 논리곱 게이트(600)로 입력되는 경우 출력 A는 논리값 '0'이 되며 4-입력 역논리합 게이트(602)로 입력되는 경우 출력 B는 논리값 '1'이 된다. 이에 따라 정상 동작 시 2-입력 논리합 게이트(604)를 통과하여 출력되는 테스트 결과 플래그는 '1'이 된다. When the read data is input to the 4-input AND gate 600 of FIG. 6, the output A becomes a logic value '0', and when the inputted data is input to the 4-input logical logic gate 602, the output B becomes a logic value '1'. 'Becomes. Accordingly, the test result flag output through the 2-input OR gate 604 in normal operation becomes '1'.

그러나 독출된 데이터 중 적어도 하나에 오류가 있는 경우(예를 들어, bit0 내지 bit3 중 적어도 하나가 논리값 '1'인 경우), 4-입력 논리곱 게이트(600)는 논리값 '0'을 4-입력 역논리합 게이트(602)는 논리값 '0'을 출력하게 된다. However, if there is an error in at least one of the read data (for example, at least one of bit0 to bit3 is the logic value '1'), the four-input AND gate 600 sets the logic value '0' to four. The input inverse logic gate 602 outputs a logic value '0'.

이에 따라 최종 테스트 결과 플래그는 '0'이 된다. As a result, the final test result flag is '0'.

한편, 본 발명에 따르면, 압축 대상이 되는 모든 메모리 셀에 고장이 있는 경우, 즉 상기한 예에서 bit0 내지 bit3이 모두 논리값 '1111'인 경우에 4-입력 논리곱 게이트(600)는 '1'을, 4-입력 역논리합 게이트(602)는 '1'을 출력함으로써 테스트 결과 플래그가 '1'로 출력된다. 즉 본 발명에 따른 데이터 압축부(408)는 입력되는 데이터가 모두 오류인 경우에만 정상 동작 플래그와 동일한 값을 출력하는 것이다. Meanwhile, according to the present invention, when all memory cells to be compressed have a failure, that is, in the above example, when bit0 to bit3 are all logic values' 1111 ', the four-input AND gate 600 is' 1. ', The 4-input inverse logic gate 602 outputs' 1' so that the test result flag is output as' 1 '. That is, the data compression unit 408 according to the present invention outputs the same value as the normal operation flag only when all input data is an error.

종래에는 개별 메모리 영역 중 일부 그룹으로 압축을 수행하였으나, 본 발명은 서로 다른 메모리 영역에서 독출된 데이터 전체를 동시에 압축하기 때문에 적어도 하나의 독출된 데이터에 오류가 있는 경우라면 메모리 셀의 고장을 검출할 수 있으며, 단지 독출된 모든 데이터에 오류가 있는 경우만 고장을 검출할 수 없어 고장 검출률을 한층 개선할 수 있다. Conventionally, although compression is performed to some groups of individual memory areas, the present invention compresses all the data read from different memory areas at the same time, so that if there is an error in at least one read data, a failure of the memory cell may be detected. If only all the data read out have an error, the failure cannot be detected, and the failure detection rate can be further improved.

한편, 도 5는 본 발명의 바람직한 제2 실시예에 따른 데이터 압축 과정을 도시한 도면이다.5 is a diagram illustrating a data compression process according to a second preferred embodiment of the present invention.

본 발명의 제2 실시예에 따르면, n개(n은 2 이상의 자연수)의 메모리 영역(400 내지 406)으로부터 n 비트 데이터를 독출하고, 독출된 데이터를 미리 설정된 데이터 집합으로 조합하여 압축을 수행한다. According to the second embodiment of the present invention, n-bit data is read from n memory areas 400 to 406 (n is a natural number of two or more), and the read data is combined into a preset data set to perform compression. .

워드 단위로 테스트가 이루어지는 경우에 상기한 바와 같이 각 메모리 영역(400 내지 406)에서 n비트의 데이터가 독출될 수 있다. When the test is performed in units of words, as described above, n bits of data may be read from each memory area 400 to 406.

도 5는 n이 4인 경우를 도시한 것으로서, 각 메모리 영역(400 내지 406)에서 독출된 4비트 데이터는 이웃하는 메모리 셀로부터 독출된 데이터이다. FIG. 5 illustrates a case where n is 4, and 4-bit data read in each memory area 400 to 406 is data read from a neighboring memory cell.

도 5를 참조하면, 본 발명에 따른 데이터 조합부(500)는 각 메모리 영역(400 내지 406)에서 독출된 각 4비트 데이터를 조합하여 제1 내지 제4 데이터 압축부(502 내지 508)로 출력한다. Referring to FIG. 5, the data combiner 500 according to the present invention combines each 4-bit data read from each memory area 400 to 406 and outputs the combined data to the first to fourth data compressors 502 to 508. do.

여기서 독출된 4비트 데이터를 조합하는 과정은 각 메모리 영역(400 내지 406)에서 독출된 4비트 데이터를 분리하여 도 5에 도시된 개별 데이터 압축부(502 내지 508)로 서로 다른 메모리 영역(400 내지 406)에 상응하는 1비트 데이터가 동시에 입력되도록 하는 과정을 의미한다. Herein, the process of combining the read 4-bit data is performed by separating the 4-bit data read in each of the memory areas 400 to 406 and using different data areas 400 to 508 as shown in FIG. 5. A process of allowing 1-bit data corresponding to 406 to be simultaneously input.

이와 같은 조합 과정을 수행하는 것은 서로 인접한 메모리 셀이 아니라 물리적으로 구분되는 다른 메모리 영역에 존재하는 메모리 셀 데이터를 압축하여 고장이 있음에도 정상 동작 플래그와 동일한 값이 생성되는 것을 방지하기 위함이다. The combination process is performed to prevent memory cell data existing in different memory areas that are physically separated from each other instead of adjacent memory cells to generate the same value as a normal operation flag even in the case of a failure.

예를 들어, 도 5에 도시된 바와 같이, 제1 메모리 영역(400)에서 bit0 내지 bit3, 제2 메모리 영역(402)에서 bit4 내지 bit7, 제3 메모리 영역(404)에서 bit8 내지 bit11, 제4 메모리 영역(406)에서 bit12 내지 bit15에 해당하는 데이터가 독출되는 경우, 본 발명에 따른 데이터 조합부(500)는 각 메모리 영역(400 내지 406)에서 출력된 4비트 데이터 중 bit0, bit4, bit8 및 bit12를 포함하는 제1 데이터 집합을 생성한다. For example, as illustrated in FIG. 5, bit0 to bit3 in the first memory area 400, bit4 to bit7 in the second memory area 402, and bit8 to bit11 and fourth in the third memory area 404. When data corresponding to bits 12 to bit 15 are read from the memory area 406, the data combination unit 500 according to the present invention may use bit 0, bit 4, bit 8, and 4 bit data among the 4 bit data output from the memory areas 400 to 406. Generate a first data set comprising bit12.

제1 데이터 집합은 4비트, 즉 독출된 데이터와 동일한 비트 수를 가지며, 각 메모리 영역(400 내지 406)에 상응하는 1비트 데이터를 중복되지 않게 포함한다. The first data set has four bits, i.e., the same number of bits as the read data, and includes one-bit data corresponding to each of the memory areas 400 to 406 without overlapping.

제1 데이터 집합은 제1 데이터 압축부(502)에 동시에 입력되어 압축된다. The first data set is simultaneously input to the first data compressor 502 and compressed.

또한, 데이터 조합부(500)는 제2 데이터 압축부(504)로 각 4비트 데이터의 두 번째 비트에 해당하는 bit1, bit5, bit9 및 bit13(제2 데이터 집합)이 입력되도 록 각 메모리 영역(400 내지 406)에서 독출된 데이터를 조합하는 과정을 수행한다. In addition, the data combination unit 500 inputs each memory area (2) so that bit1, bit5, bit9 and bit13 (second data set) corresponding to the second bit of each 4-bit data are input to the second data compression unit 504. In step 400 to 406, a process of combining the data read is performed.

상기한 과정을 통해, 제3 데이터 압축부(506)로는 각 4비트 데이터의 세 번째 비트에 해당하는 bit2, bit6, bit10 및 bit14(제3 데이터 집합)이 입력되며, 제4 데이터 압축부(508)에는 각 4비트 데이터의 네 번째 비트에 해당하는 bit3, bit7, bit11 및 bit15(제4 데이터 집합)이 입력된다. Through the above process, bit2, bit6, bit10, and bit14 (third data set) corresponding to the third bit of each 4-bit data are input to the third data compressor 506, and the fourth data compressor 508 ), Bit3, bit7, bit11 and bit15 (fourth data set) corresponding to the fourth bit of each 4-bit data are input.

상기에서는 각 4비트 데이터에서 동일한 위치에 해당하는 비트 데이터를 포함하는 데이터 집합으로 조합하는 것을 설명하였으나 이에 한정됨이 없이 각 데이터 압축부로 입력되는 비트 데이터가 서로 중복되지 않는다면 조합 방법은 다양하게 구현될 수 있다는 점을 당업자는 이해하여야 할 것이다. In the above description, a combination of data sets including bit data corresponding to the same position in each 4-bit data has been described. However, the combination method may be variously implemented unless bit data input to each data compression unit is overlapped with each other. Those skilled in the art will understand that there is.

상기한 데이터 조합 과정을 통해 4개의 메모리 영역(400 내지 406)에서 독출된 n비트 데이터의 소정 위치에 해당하는 비트 데이터가 서로 중복되지 않으면서 본 발명에 따른 n개의 데이터 압축부(502 내지 508)에 입력된다. The n data compression units 502 to 508 according to the present invention do not overlap bit data corresponding to predetermined positions of the n bit data read from the four memory areas 400 to 406 through the data combining process. Is entered.

한편, 제1 내지 제4 데이터 압축부(502 내지 508)는 조합된 데이터 집합이 입력되는 경우, 도 6에 도시된 논리 게이트를 통해 입력된 데이터를 압축하는 과정을 수행한다. Meanwhile, when the combined data sets are input, the first to fourth data compression units 502 to 508 perform a process of compressing the data input through the logic gate shown in FIG. 6.

본 발명의 제2 실시예에 따르면, 도 6의 논리곱 게이트(600) 및 역논리합 게이트(602)의 입력 수는 각 개별 메모리 영역(400 내지 406)에서 독출된 데이터의 비트 수에 따라 결정될 수 있다. According to the second embodiment of the present invention, the number of inputs of the AND gate 600 and the inverse logical gate 602 of FIG. 6 may be determined according to the number of bits of data read from each individual memory area 400 to 406. have.

즉, 본 발명의 제2 실시예에 따른 각 데이터 압축부는 논리곱 게이트(600) 및 역논리합 게이트(602)의 입력수가 n인 n-입력 논리 게이트를 포함할 수 있다. That is, each data compression unit according to the second embodiment of the present invention may include an n-input logic gate having n input numbers of the AND gate 600 and the inverse logical gate 602.

도 6을 통해 데이터 압축 과정은 상기에서 상세하게 설명하였으므로 여기서 이에 대한 상세한 설명은 생략한다. Since the data compression process has been described above in detail with reference to FIG. 6, a detailed description thereof will be omitted.

도 7은 본 발명의 제1 실시예에 따른 메모리 테스트 과정의 순서도이다.7 is a flowchart of a memory test process according to a first embodiment of the present invention.

도 7을 참조하면, 테스트 모드에서 테스트 제어부(300)는 테스트를 위해 메모리에 데이터 기입을 위한 제어신호/어드레스/데이터를 출력한다(단계 700).Referring to FIG. 7, in the test mode, the test controller 300 outputs a control signal / address / data for writing data to a memory for testing (step 700).

상기한 테스트 제어부(300)의 신호에 따라 물리적으로 구분되는 k개의 메모리 영역에 테스트 데이터가 기입된다(단계 702). 본 발명의 제1 실시예에서 k는 3이상의 자연수이다. The test data is written in k memory areas that are physically divided according to the signal of the test controller 300 (step 702). In the first embodiment of the present invention, k is a natural number of three or more.

메모리 테스트에 있어서, 플래그를 생성하는 단위가 되는 메모리 셀(도 4의 데이터 압축부로 동시에 입력되는 데이터가 독출되는 메모리 셀)에는 동일한 테스트 데이터가 기입되는 것이 바람직하다. In the memory test, the same test data is preferably written in a memory cell (a memory cell in which data simultaneously input to the data compression unit of FIG. 4) is used as a unit for generating a flag.

한편, 테스트 제어부(300)가 데이터 독출을 위한 어드레스 및 제어신호를 출력하는 경우, k개의 메모리 영역으로부터 각각 1비트 데이터가 독출된다(단계 704).On the other hand, when the test control unit 300 outputs an address and a control signal for reading data, one bit of data is read from k memory areas (step 704).

테스트 결과 분석부(306)는 독출된 데이터를 상기한 메모리 영역의 개수와 동일한 입력을 갖는 k-입력 논리 게이트를 포함하는 데이터 압축부를 통해 압축한다(단계 706).The test result analyzer 306 compresses the read data through a data compression unit including a k-input logic gate having an input equal to the number of the memory areas described above (step 706).

상기한 과정에 따르면, k-입력에 해당하는 데이터가 모두 정상인 경우나 또는 모두 오류가 있는 경우에만 정상 동작 플래그와 동일한 값이 생성되므로 고장 검출률을 한층 개선할 수 있다. According to the above-described process, since the same value as the normal operation flag is generated only when all data corresponding to the k-input are normal or all have an error, the failure detection rate can be further improved.

상기한 압축 과정을 통해 테스트 결과 플래그가 생성되며(단계 708), 테스트 결과 분석부(306)는 테스트 결과 플래그를 통해 정상(Valid) 또는 고장(Invalid) 신호를 출력한다(단계 710).The test result flag is generated through the compression process (step 708), and the test result analyzer 306 outputs a valid or invalid signal through the test result flag (step 710).

도 8은 본 발명의 제2 실시예에 따른 메모리 테스트 과정의 순서도이다. 8 is a flowchart of a memory test process according to a second embodiment of the present invention.

도 8을 참조하면, 테스트 모드에서 테스트 제어부(300)는 테스트를 위해 메모리에 데이터 기입을 위한 제어신호/어드레스/데이터를 출력한다(단계 800).Referring to FIG. 8, in the test mode, the test controller 300 outputs a control signal / address / data for writing data to a memory for testing (step 800).

상기한 테스트 제어부(300)의 신호에 따라 물리적으로 구분되는 n개의 메모리 영역에 테스트 데이터가 기입된다(단계 802). 본 발명의 제2 실시예에서 n은 2이상의 자연수이다. The test data is written to n memory areas physically divided according to the signal of the test controller 300 (step 802). In the second embodiment of the present invention, n is a natural number of two or more.

또한, 본 발명의 제2 실시예에서, 플래그를 생성하는 단위가 되는 메모리 셀(도 5의 각 데이터 압축부로 동시에 입력되는 데이터가 독출되는 메모리 셀)에는 동일한 테스트 데이터가 기입되는 것이 바람직하다. In addition, in the second embodiment of the present invention, it is preferable that the same test data is written in the memory cells (memory cells in which data simultaneously input to the respective data compression units of FIG. 5 are read).

한편, 테스트 제어부(300)가 데이터 독출을 위한 어드레스 및 제어신호를 출력하는 경우, n개의 메모리 영역으로부터 각각 n비트 데이터가 독출된다(단계 804).On the other hand, when the test control unit 300 outputs an address and a control signal for reading data, n-bit data is read from the n memory areas, respectively (step 804).

독출된 n비트 데이터는 본 발명에 따른 조합 과정을 통해 n개의 데이터 집합으로 조합되고 각 데이터 집합은 이에 상응하는 n개의 데이터 압축부로 출력된다(단계 806). The read n-bit data is combined into n data sets through a combination process according to the present invention, and each data set is output to the corresponding n data compressors (step 806).

이때, 조합 과정은 각 메모리 영역(400 내지 406)에서 독출된 n 비트 데이터에서 n개의 데이터 집합을 생성하는 과정이다. In this case, the combining process is a process of generating n data sets from n bit data read from each memory area 400 to 406.

조합에 의해 생성된 데이터 집합은 n-입력 논리 게이트를 포함하는 데이터 압축부에서 압축된다(단계 808).The data set produced by the combination is compressed in a data compression section containing n-input logic gates (step 808).

압축 결과 테스트 결과 플래그가 생성되며(단계 810), 테스트 결과 분석부(306)는 테스트 결과 플래그를 통해 정상 또는 고장 신호를 출력한다(단계 812).The compression result test result flag is generated (step 810), and the test result analyzer 306 outputs a normal or fault signal through the test result flag (step 812).

상기한 과정에 따르면, 서로 인접한 메모리 셀이 아니라 물리적으로 구분되는 다른 메모리 영역에 존재하는 메모리 셀 데이터를 압축하기 때문에 고장이 있음에도 정상 동작 플래그와 동일한 값이 생성되는 것을 방지할 수 있고, 또한 n-입력 논리 게이트를 포함하는 데이터 압축부를 통해 입력 데이터가 전체에 오류가 있는 경우에만 정상 동작 플래그와 동일한 값을 생성하기 때문에 고장 검출률을 높일 수 있다. According to the above process, since memory cell data existing in different memory areas that are physically separated from each other rather than adjacent memory cells is compressed, a value equal to the normal operation flag can be prevented from being generated even in the case of a failure, and n- The data compression unit including the input logic gate generates the same value as the normal operation flag only when the input data has an error in its entirety, thereby increasing the failure detection rate.

상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다. Preferred embodiments of the present invention described above are disclosed for purposes of illustration, and those skilled in the art will be able to make various modifications, changes, and additions within the spirit and scope of the present invention. Additions should be considered to be within the scope of the following claims.

이상에서 설명한 바와 같이, 본 발명의 제1 실시예에 따르면 적어도 3개 이상의 메모리 영역에서 1비트의 데이터를 독출하는 경우에 각 메모리 영역에서 독출된 데이터를 동시에 압축하기 때문에 고장 검출률을 높일 수 있는 장점이 있다. As described above, according to the first embodiment of the present invention, when reading one bit of data from at least three or more memory areas, data read from each memory area is simultaneously compressed, thereby increasing the failure detection rate. There is an advantage.

또한 본 발명의 제2 실시예에 따르면, 적어도 2개의 메모리 영역에서 n비트의 데이터를 독출하는 경우, 각 메모리 영역에서 독출된 n비트 데이터를 조합하여 다른 메모리 영역에서의 데이터를 압축함으로써 고장 검출률을 높일 수 있는 장점이 있다. Further, according to the second embodiment of the present invention, when n bits of data are read in at least two memory areas, a failure detection rate is obtained by combining the n bits of data read in each memory area by compressing the data in another memory area. There is an advantage to increase.

또한 본 발명의 제2 실시예에 따르면, 조합에 의해 각 데이터 압축부에 입력되는 n비트의 데이터를 동시에 압축하기 때문에 고장 검출률을 높일 수 있는 장점이 있다. Further, according to the second embodiment of the present invention, since the n-bit data input to each data compression unit is simultaneously compressed by the combination, there is an advantage that the failure detection rate can be increased.

또한 본 발명에 따르면 높은 고장 검출률에 의해 메모리 테스트 시간을 단축할 수 있는 장점이 있다. In addition, according to the present invention there is an advantage that the memory test time can be shortened by a high failure detection rate.

Claims (15)

복수의 메모리 영역을 포함하는 메모리를 테스트하는 방법에 있어서,In the method for testing a memory including a plurality of memory areas, (a) k개(k는 3이상의 자연수)의 메모리 영역으로부터 k개의 1비트 데이터를 독출하는 단계;(a) reading k one-bit data from k memory regions where k is a natural number of three or more; (b) 상기 k개의 1비트 데이터를 k-입력 논리 게이트를 포함하는 데이터 압축부로 입력하여 압축하는 단계; 및 (b) inputting and compressing the k 1-bit data into a data compression unit including a k-input logic gate; And (c) 상기 데이터 압축부에서 압축을 통해 출력된 테스트 결과 플래그를 통해 메모리의 고장 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 메모리 테스트 방법. and (c) determining whether the memory is faulty based on a test result flag output through compression by the data compression unit. 제1항에 있어서,The method of claim 1, 상기 k개의 메모리 영역은 소정 크기를 가지는 뱅크(bank) 영역 및 상기 뱅크 영역 내에서 소정 크기를 가지는 블록(block) 영역 중 적어도 하나인 것을 특징으로 하는 메모리 테스트 방법. And the k memory regions are at least one of a bank region having a predetermined size and a block region having a predetermined size within the bank region. 제1항에 있어서,The method of claim 1, 상기 데이터 압축부는 k-입력 논리곱 게이트, k-입력 역논리합 게이트 및 상기 논리곱 게이트 및 역논리합 게이트의 출력이 입력되는 2-입력 논리합 게이트를 포함하는 것을 특징으로 하는 메모리 테스트 방법. And the data compression unit comprises a k-input AND gate, a k-input INOR gate, and a two-input OR gate to which the outputs of the AND and IN logic gates are input. 복수의 메모리 영역을 포함하는 메모리를 테스트 방법에 있어서,In the test method of a memory including a plurality of memory areas, (a) n개(n은 2이상의 자연수)의 메모리 영역으로부터 각각 n비트 데이터를 독출하는 단계;(a) reading n-bit data from n memory regions where n is a natural number of two or more; (b) 각 n비트 데이터를 n개의 데이터 집합으로 조합하는 단계-상기 미리 설정된 데이터 집합은 n비트 데이터임-;(b) combining each n-bit data into n data sets, wherein the preset data set is n-bit data; (c) 상기 조합된 데이터 집합을 n-입력 논리 게이트를 포함하는 복수의 데이터 압축부로 입력하여 압축하는 단계; (c) inputting and compressing the combined data set into a plurality of data compression units including n-input logic gates; (d) 상기 복수의 데이터 압축부에서 출력한 데이터를 연산하여 테스트 결과 플래그를 생성하는 단계; 및(d) generating a test result flag by calculating data output from the plurality of data compression units; And (e) 상기 테스트 결과 플래그를 통해 상기 메모리의 고장 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 메모리 테스트 방법. (e) determining whether the memory has failed based on the test result flag. 제4항에 있어서,The method of claim 4, wherein 상기 n개의 메모리 영역은 소정 크기를 가지는 뱅크(bank) 영역 및 상기 뱅크 영역 내에서 소정 크기를 가지는 블록(block) 영역 중 적어도 하나인 것을 특징으로 하는 메모리 테스트 방법. The n memory areas are at least one of a bank area having a predetermined size and a block area having a predetermined size within the bank area. 제4항에 있어서,The method of claim 4, wherein 상기 조합된 데이터 집합은 각 메모리 영역에 상응하는 1비트 데이터를 포함 하는 것을 특징으로 하는 메모리 테스트 방법. And the combined data set includes 1-bit data corresponding to each memory area. 제4항에 있어서,The method of claim 4, wherein 상기 조합된 데이터 집합은 각 메모리 영역에 상응하는 n비트 데이터 중 동일한 위치에 해당하는 비트 데이터의 집합인 것을 특징으로 하는 메모리 테스트 방법.The combined data set is a set of bit data corresponding to the same position among n-bit data corresponding to each memory area. 제4항에 있어서,The method of claim 4, wherein 상기 조합된 데이터 집합은 정상 동작 시 모두 동일한 비트 데이터를 포함하는 것을 특징으로 하는 메모리 테스트 방법.And said combined data set includes the same bit data in normal operation. 제4항에 있어서,The method of claim 4, wherein 상기 복수의 데이터 압축부는 각각 n개의 입력이 모두 정상인 경우와 모두 오류가 있는 경우에 정상 동작 플래그와 동일한 테스트 결과 플래그를 출력하는 것을 특징으로 하는 메모리 테스트 방법. And each of the plurality of data compression units outputs a test result flag identical to a normal operation flag when n inputs are all normal and all errors are present. 제4항에 있어서,The method of claim 4, wherein 상기 데이터 압축부는 n-입력 논리곱 게이트, n-입력 역논리합 게이트 및 상기 논리곱 게이트 및 역논리합 게이트의 출력이 입력되는 2-입력 논리합 게이트를 포함하는 것을 특징으로 하는 메모리 테스트 방법. And the data compression unit comprises an n-input AND gate, an n-input INOR gate, and a two-input OR gate to which outputs of the AND gate and the inverse AND gate are input. 복수의 메모리 영역을 포함하는 메모리를 테스트하는 장치에 있어서,An apparatus for testing a memory including a plurality of memory regions, the apparatus comprising: 상기 메모리에 테스트 데이터를 기입 및 독출하기 위한 제어신호를 출력하는 테스트 제어부;A test controller configured to output a control signal for writing and reading test data into the memory; 상기 테스트 제어부의 제어에 따라 어드레스 신호를 출력하는 어드레스 생성부;An address generator for outputting an address signal under control of the test controller; 상기 테스트 제어부의 제어에 따라 상기 테스트 데이터를 출력하는 테스트 패턴 생성부; 및A test pattern generator configured to output the test data under the control of the test controller; And k개(k는 3이상의 자연수)의 메모리 영역으로부터 각각 1비트 데이터를 독출하고, 상기 독출된 k비트 데이터를 k-입력 논리 게이트를 포함하는 데이터 압축부로 입력하여 압축하며, 상기 압축을 통해 출력된 테스트 결과 플래그를 통해 메모리의 고장 여부를 판단하는 테스트 결과 분석부를 포함하는 것을 특징으로 하는 메모리 테스트 장치. 1 bit data is read from k memory regions (k is a natural number of 3 or more), and the read k-bit data is inputted to a data compression unit including a k-input logic gate and compressed, and output through the compression. And a test result analyzer to determine whether the memory has failed through the test result flag. 제11항에 있어서,The method of claim 11, 상기 데이터 압축부는 k-입력 논리곱 게이트, k-입력 역논리합 게이트 및 상기 논리곱 게이트 및 역논리합 게이트의 출력이 입력되는 2-입력 논리합 게이트를 포함하는 것을 특징으로 하는 메모리 테스트 장치. And the data compression unit comprises a k-input AND gate, a k-input INOR gate, and a two-input OR gate to which outputs of the AND and IN logic gates are input. 복수의 메모리 영역을 포함하는 메모리를 테스트하는 장치에 있어서,An apparatus for testing a memory including a plurality of memory regions, the apparatus comprising: 상기 메모리에 테스트 데이터를 기입 및 독출하기 위한 제어신호를 출력하는 테스트 제어부;A test controller configured to output a control signal for writing and reading test data into the memory; 상기 테스트 제어부의 제어에 따라 어드레스 신호를 출력하는 어드레스 생성부;An address generator for outputting an address signal under control of the test controller; 상기 테스트 제어부의 제어에 따라 상기 테스트 데이터를 출력하는 테스트 패턴 생성부; 및A test pattern generator configured to output the test data under the control of the test controller; And n개(n은 2이상의 자연수)의 메모리 영역으로부터 각각 n비트 데이터를 독출하고, 각 n비트 데이터를 n개의 데이터 집합으로 조합하며, 상기 미리 설정된 데이터 집합은 n비트 데이터임-, 상기 조합된 데이터 집합을 n-입력 논리 게이트를 포함하는 복수의 데이터 압축부로 입력하여 압축하고, 상기 복수의 데이터 압축부에서 출력한 데이터를 연산하여 생성된 테스트 결과 플래그를 통해 메모리의 고장 여부를 판단하는 테스트 결과 분석부를 포함하는 것을 특징으로 하는 메모리 테스트 장치. n-bit data is read from n memory regions (n is a natural number of two or more), and each n-bit data is combined into n data sets, and the preset data set is n-bit data. Analyzing the test result by inputting the set into a plurality of data compression units including n-input logic gates and compressing the data, and determining whether the memory has failed through a test result flag generated by calculating data output from the plurality of data compression units. A memory test apparatus comprising a portion. 제13항에 있어서,The method of claim 13, 상기 조합된 데이터 집합은 각 메모리 영역에 상응하는 1비트 데이터를 포함하는 것을 특징으로 하는 메모리 테스트 장치. And the combined data set includes 1-bit data corresponding to each memory area. 제13항에 있어서,The method of claim 13, 상기 데이터 압축부는 n-입력 논리곱 게이트, n-입력 역논리합 게이트 및 상 기 논리곱 게이트 및 역논리합 게이트의 출력이 입력되는 2-입력 논리합 게이트를 포함하는 것을 특징으로 하는 메모리 테스트 장치. And the data compression unit comprises an n-input AND gate, an n-input AND logic gate, and a two-input OR gate to which outputs of the AND gates and the inverse AND gate are input.
KR1020070020101A 2007-02-28 2007-02-28 Method and apparatus for testing memory KR20080079753A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070020101A KR20080079753A (en) 2007-02-28 2007-02-28 Method and apparatus for testing memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070020101A KR20080079753A (en) 2007-02-28 2007-02-28 Method and apparatus for testing memory

Publications (1)

Publication Number Publication Date
KR20080079753A true KR20080079753A (en) 2008-09-02

Family

ID=40020543

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070020101A KR20080079753A (en) 2007-02-28 2007-02-28 Method and apparatus for testing memory

Country Status (1)

Country Link
KR (1) KR20080079753A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782476B2 (en) 2011-04-25 2014-07-15 Hynix Semiconductor Inc. Memory and test method for memory
CN112242177A (en) * 2019-07-16 2021-01-19 北京地平线机器人技术研发有限公司 Memory testing method and device, computer readable storage medium and electronic equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782476B2 (en) 2011-04-25 2014-07-15 Hynix Semiconductor Inc. Memory and test method for memory
CN112242177A (en) * 2019-07-16 2021-01-19 北京地平线机器人技术研发有限公司 Memory testing method and device, computer readable storage medium and electronic equipment

Similar Documents

Publication Publication Date Title
US7679976B2 (en) Circuit and method for testing multi-device systems
US7506226B2 (en) System and method for more efficiently using error correction codes to facilitate memory device testing
CN110289041B (en) Memory detection device combining BIST and ECC in system chip
KR102127455B1 (en) Semiconductor memory device and testing method thereof
US20090249148A1 (en) Error-correction forced mode with m-sequence
KR100679586B1 (en) Integrated circuit memory device having built-in self test circuit with monitor and tester modes
US7380191B2 (en) ABIST data compression and serialization for memory built-in self test of SRAM with redundancy
US7729185B2 (en) Apparatus and method for detection of address decoder open faults
US20020122343A1 (en) Semiconductor storage device having redundancy circuit for replacement of defect cells under tests
KR100718518B1 (en) Semiconductor memory device
US7913126B2 (en) Semiconductor memory device and method of testing same
US6331958B2 (en) Semiconductor memory device having data parallel/serial conversion function and capable of efficiently performing operational test
JP5611916B2 (en) Semiconductor integrated circuit
JP2008059711A (en) Semiconductor memory device
US9013931B2 (en) Semiconductor memory device and method for testing the same
US7552368B2 (en) Systems and methods for simultaneously testing semiconductor memory devices
KR20080079753A (en) Method and apparatus for testing memory
JP2007272982A (en) Semiconductor storage device and its inspection method
JPH10106297A (en) Parallel bit test circuit for semiconductor memory apparatus
US9941020B2 (en) Semiconductor system and method for testing semiconductor device
KR20110002678A (en) Semiconductor memory device and method for testing the same
KR101124282B1 (en) Parallel compression tester of a memory device
KR20160115485A (en) Data fail detection circuit and semiconductor device including the same
US8782476B2 (en) Memory and test method for memory
US20060041798A1 (en) Design techniques to increase testing efficiency

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application