KR102743456B1 - Ate for performing linear test for high-speed memory and method for operation thereof - Google Patents
Ate for performing linear test for high-speed memory and method for operation thereof Download PDFInfo
- Publication number
- KR102743456B1 KR102743456B1 KR1020230057777A KR20230057777A KR102743456B1 KR 102743456 B1 KR102743456 B1 KR 102743456B1 KR 1020230057777 A KR1020230057777 A KR 1020230057777A KR 20230057777 A KR20230057777 A KR 20230057777A KR 102743456 B1 KR102743456 B1 KR 102743456B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- pattern
- test
- field
- value
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 109
- 230000015654 memory Effects 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 title description 10
- 238000006243 chemical reaction Methods 0.000 claims abstract description 27
- 230000004044 response Effects 0.000 claims abstract description 9
- 238000011017 operating method Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 14
- 238000013075 data extraction Methods 0.000 description 14
- 239000004065 semiconductor Substances 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318307—Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/31813—Test pattern generators
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31919—Storing and outputting test patterns
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
다양한 실시예들에 따라서, 고속 메모리(high-speed memory)에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기(ATE, automated test equipment)는, 프로세서를 포함하고, 상기 프로세서는, 테스트 패턴 프로그램을 획득하고, SVP(save pattern) 명령 코드에 응답하여, 상기 테스트 패턴 프로그램의 테스트 패턴으로부터 확인된 방향 필드의 값, 리드(read)/라이트(write) 필드의 값, 및 데이터 필드의 값을 패턴 큐 레지스터에 저장하고, 기저장된 데이터 변환 테이블들 중에서 피시험 장치의 특성에 대응하는 특정 테이블에 기초하여, 상기 데이터 필드의 값을 제1 데이터로부터 제2 데이터로 변환하고, 및 상기 제2 데이터를 기설정된 데이터 할당 순서에 따라 할당하도록 설정될 수 있다. 그 밖의 다양한 실시예들도 가능할 수 있다.According to various embodiments, an automated test equipment (ATE) for performing a linear test on a high-speed memory includes a processor, wherein the processor is configured to obtain a test pattern program, and in response to a save pattern (SVP) command code, store a value of a direction field, a value of a read/write field, and a value of a data field identified from a test pattern of the test pattern program in a pattern queue register, and convert a value of the data field from first data to second data based on a specific table corresponding to a characteristic of a device under test among pre-stored data conversion tables, and allocate the second data according to a preset data allocation order. Various other embodiments may also be possible.
Description
본 문서의 다양한 실시 예들은 고속 메모리에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기 및 그 동작 방법에 관한 것이다.Various embodiments of this document relate to an automated test apparatus and its operating method for performing linear tests on high-speed memories.
최근 메모리 반도체 설계 기술의 급속한 발전에 따라, 메모리의 동작 속도가 빠르게 높아지고 있다. 그리고 반도체 공정 기술이 발전하여 메모리 회로의 집적도가 점점 증가하고 있다. 이러한 고속의 고집적 메모리는 메모리 반도체 산업의 비약적인 발전을 이끌어내고 있다. 그러나 고속의 고집적 메모리는 고속으로 동작함과 동시에 회로의 복잡도를 크게 증가시켜, 반도체 생산 비용 대비 테스트 비용 또한 크게 증가시키고 있다. 이에 따라 테스트 비용을 줄여 메모리 반도체 제품의 경쟁력을 높이기 위한 효율적인 테스트 기술은 매우 중요한 이슈가 되었다.Recently, with the rapid development of memory semiconductor design technology, the operating speed of memory is rapidly increasing. In addition, semiconductor process technology is developing, and the integration of memory circuits is increasing. Such high-speed, high-density memory is leading to the rapid development of the memory semiconductor industry. However, high-speed, high-density memory not only operates at high speed but also greatly increases the complexity of the circuit, which also greatly increases the testing cost compared to the semiconductor production cost. Accordingly, efficient testing technology to reduce testing costs and enhance the competitiveness of memory semiconductor products has become a very important issue.
메모리 반도체를 테스트하는 방법 중 대표적인 방법으로 자동화 테스트 기기(ATE, automatic test equipment)를 사용한 방법이 있다. ATE를 통한 메모리 반도체 테스트 방법은, BIST(built-in self test) 방법과는 달리 메모리 반도체 내부에 테스트 회로를 삽입하지 않고 보다 다양한 기능을 테스트할 수 있는 장점이 있다. A representative method of testing memory semiconductors is the method using automatic test equipment (ATE). Unlike the BIST (built-in self test) method, the memory semiconductor test method using ATE has the advantage of being able to test a wider range of functions without inserting a test circuit inside the memory semiconductor.
(특허문헌 0001) 대한민국 등록특허 제10-0850204호 (공고일: 2008.08.04)(Patent Document 0001) Republic of Korea Registered Patent No. 10-0850204 (Announcement Date: 2008.08.04)
반도체 메모리 장치가 점차 고속화됨에 따라 반도체 메모리 장치의 데이터 입출력 속도는 ATE로 측정할 수 있는 테스트 패턴의 속도 한계를 넘기 때문에, 점차 고속 메모리 장치의 양산을 위한 테스트에 많은 문제가 발생할 수 있다. 예를 들어, ATE로 측정할 수 있는 최대 주파수가 200MHz이고, 테스트하고자 하는 반도체 메모리 장치의 동작 주파수가 800MHz인 경우, 실제 메모리 셀에 불량이 발생하는지를 정확하게 측정할 수 없는 문제점이 발생할 수 있다. 즉, 기존에 사용하던 저속의 ATE는 최신의 고속 메모리의 속도를 테스트하기 어려우므로 메모리의 처리 속도 보다 빠른 최신 ATE가 필요하며, 이는 너무 많은 교체 비용이 발생할 문제가 있다. As semiconductor memory devices become increasingly faster, the data input/output speed of the semiconductor memory devices exceeds the speed limit of the test pattern that can be measured by ATE. Therefore, many problems may occur in testing for mass production of high-speed memory devices. For example, if the maximum frequency that can be measured by ATE is 200 MHz and the operating frequency of the semiconductor memory device to be tested is 800 MHz, a problem may occur in which it is difficult to accurately measure whether a defect occurs in the actual memory cell. In other words, since the low-speed ATE that was previously used has difficulty testing the speed of the latest high-speed memory, the latest ATE that is faster than the processing speed of the memory is required, and this can cause the problem of incurring too high replacement costs.
다양한 실시예들에 따라서, 고속 메모리(high-speed memory)에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기(ATE, automated test equipment)는, 프로세서를 포함하고, 상기 프로세서는, 테스트 패턴 프로그램을 획득하고, SVP(save pattern) 명령 코드에 응답하여, 상기 테스트 패턴 프로그램의 테스트 패턴으로부터 확인된 방향 필드의 값, 리드(read)/라이트(write) 필드의 값, 및 데이터 필드의 값을 패턴 큐 레지스터에 저장하고, 기저장된 데이터 변환 테이블들 중에서 피시험 장치의 특성에 대응하는 특정 테이블에 기초하여, 상기 데이터 필드의 값을 제1 데이터로부터 제2 데이터로 변환하고, 및 상기 제2 데이터를 기설정된 데이터 할당 순서에 따라 할당하도록 설정될 수 있다.According to various embodiments, an automated test equipment (ATE) for performing a linear test on a high-speed memory includes a processor, wherein the processor is configured to obtain a test pattern program, and in response to a save pattern (SVP) command code, store a value of a direction field, a value of a read/write field, and a value of a data field identified from a test pattern of the test pattern program in a pattern queue register, and convert a value of the data field from first data to second data based on a specific table corresponding to a characteristic of a device under test among pre-stored data conversion tables, and allocate the second data according to a preset data allocation order.
다양한 실시예들에 따라서, 고속 메모리(high-speed memory)에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기(ATE, automated test equipment)의 동작 방법은, 테스트 패턴 프로그램을 획득하는 동작, SVP(save pattern) 명령 코드에 응답하여, 상기 테스트 패턴 프로그램의 테스트 패턴으로부터 확인된 방향 필드의 값, 리드(read)/라이트(write) 필드의 값, 및 데이터 필드의 값을 패턴 큐 레지스터에 저장하는 동작, 기저장된 데이터 변환 테이블들 중에서 피시험 장치의 특성에 대응하는 특정 테이블에 기초하여, 상기 데이터 필드의 값을 제1 데이터로부터 제2 데이터로 변환하는 동작, 및 상기 제2 데이터를 기설정된 데이터 할당 순서에 따라 할당하는 동작을 포함할 수 있다.According to various embodiments, a method of operating an automated test equipment (ATE) for performing a linear test on a high-speed memory may include an operation of acquiring a test pattern program, an operation of storing, in a pattern queue register, a value of a direction field, a value of a read/write field, and a value of a data field identified from a test pattern of the test pattern program in response to a save pattern (SVP) command code, an operation of converting a value of the data field from first data to second data based on a specific table corresponding to a characteristic of a device under test among pre-stored data conversion tables, and an operation of allocating the second data according to a preset data allocation order.
다양한 실시예들에 따라서, 본 발명은 메모리 셀의 수와 관계없이 일정한 설정 사이클을 가지고, 적은 설정 사이클을 통하여 기존의 ATE의 느린 처리 속도를 향상시키는 효과를 제공할 수 있다.According to various embodiments, the present invention can provide an effect of improving the slow processing speed of existing ATE through a small number of setting cycles with a constant setting cycle regardless of the number of memory cells.
도 1은 다양한 실시예들에 따른, ATE의 블록도를 도시한다.
도 2는 다양한 실시예들에 따른, ATE의 동작을 설명하기 위한 도면이다.
도 3a는 다양한 실시예들에 따른, 패턴 변환 테이블에 기초하여 변환된 테스트 패턴에 대한 실시예를 나타낸다.
도 3b는 다양한 실시예들에 따른, 인스트럭션 구조에 대한 실시예를 나타낸다.
도 4는 다양한 실시예들에 따른, 데이터 추출 모듈의 동작을 설명하기 위한 도면이다.
도 5는 다양한 실시예들에 따른, 데이터 변환 모듈의 동작을 설명하기 위한 도면이다.
도 6은 다양한 실시예들에 따른, 패턴 생성기 모듈 및 생성기 모듈의 동작을 설명하기 위한 도면이다.
도면의 설명과 관련하여, 동일 또는 유사한 구성요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.FIG. 1 illustrates a block diagram of an ATE according to various embodiments.
FIG. 2 is a diagram for explaining the operation of ATE according to various embodiments.
FIG. 3a illustrates an embodiment of a test pattern converted based on a pattern conversion table according to various embodiments.
FIG. 3b illustrates an example of an instruction structure according to various embodiments.
FIG. 4 is a diagram for explaining the operation of a data extraction module according to various embodiments.
FIG. 5 is a diagram for explaining the operation of a data conversion module according to various embodiments.
FIG. 6 is a diagram for explaining a pattern generator module and the operation of the generator module according to various embodiments.
In connection with the description of the drawings, the same or similar reference numerals may be used for identical or similar components.
이하, 본 문서의 다양한 실시예들이 첨부된 도면을 참조하여 기재된다. 실시예 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B" 또는 "A 및/또는 B 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1," "제 2," "첫째," 또는 "둘째,"등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.Hereinafter, various embodiments of the present document will be described with reference to the accompanying drawings. It should be understood that the embodiments and the terms used herein are not intended to limit the technology described in this document to a specific embodiment, but rather to include various modifications, equivalents, and/or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar components. The singular expression may include plural expressions unless the context clearly indicates otherwise. In this document, expressions such as "A or B" or "at least one of A and/or B" may include all possible combinations of the items listed together. Expressions such as "first," "second," "first," or "second," may modify the corresponding components, regardless of order or importance, and are only used to distinguish one component from another, but do not limit the corresponding components. When it is said that a certain (e.g., a first) component is "(functionally or communicatively) connected" or "connected" to another (e.g., a second) component, said certain component may be directly connected to said other component, or may be connected through another component (e.g., a third component).
본 문서에서, "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, 하드웨어적 또는 소프트웨어적으로 "~에 적합한," "~하는 능력을 가지는," "~하도록 변경된," "~하도록 만들어진," "~를 할 수 있는," 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU 또는 application processor)를 의미할 수 있다. In this document, "configured to" can be used interchangeably with, for example, "suitable for," "capable of," "modified to," "made to," "capable of," or "designed to," either hardware-wise or software-wise. In some contexts, the phrase "a device configured to" can mean that the device is "capable of" doing something together with other devices or components. For example, the phrase "a processor configured to perform A, B, and C" can mean a dedicated processor (e.g., an embedded processor) for performing the operations, or a general-purpose processor (e.g., a CPU or application processor) that can perform the operations by executing one or more software programs stored in a memory device.
도 1은 다양한 실시예들에 따른, ATE(예: 도 1의 ATE(101))의 블록도를 도시한다.FIG. 1 illustrates a block diagram of an ATE (e.g., ATE (101) of FIG. 1) according to various embodiments.
다양한 실시예들에 따르면, ATE(101)는 버스(110), 프로세서(120), 메모리(130), 입출력 인터페이스(140), 및 통신 인터페이스(150)를 포함할 수 있다. 어떤 실시예에서는, ATE(101)는, 구성요소들 중 적어도 하나를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다. 버스(110)는 구성요소들(110-150)을 서로 연결하고, 구성요소들 간의 통신(예: 제어 메시지 또는 데이터)을 전달하는 회로를 포함할 수 있다. 프로세서(120)는, 중앙처리장치, 어플리케이션 프로세서, 또는 커뮤니케이션 프로세서(communication processor(CP)) 중 하나 또는 그 이상을 포함할 수 있다. 프로세서(120)는, 예를 들면, ATE(101)의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다. According to various embodiments, the ATE (101) may include a bus (110), a processor (120), a memory (130), an input/output interface (140), and a communication interface (150). In some embodiments, the ATE (101) may omit at least one of the components or additionally include another component. The bus (110) may include a circuit that connects the components (110-150) to each other and transmits communication (e.g., control messages or data) between the components. The processor (120) may include one or more of a central processing unit, an application processor, or a communication processor (CP). The processor (120) may execute, for example, operations or data processing related to control and/or communication of at least one other component of the ATE (101).
메모리(130)는, 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(130)는, 예를 들면, ATE(101)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 한 실시예에 따르면, 메모리(130)는 소프트웨어 및/또는 프로그램을 저장할 수 있다. 프로그램은, 예를 들면, 커널, 미들웨어, 어플리케이션 프로그래밍 인터페이스(API), 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 등을 포함할 수 있다. 커널, 미들웨어, 또는 API의 적어도 일부는, 운영 시스템으로 지칭될 수 있다. 커널은, 예를 들면, 다른 프로그램들(예: 미들웨어, API, 또는 어플리케이션 프로그램)에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)을 제어 또는 관리할 수 있다. 또한, 커널은 미들웨어, API, 또는 어플리케이션 프로그램에서 ATE(101)의 개별 구성요소에 접근함으로써, 시스템 리소스들을 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다. 미들웨어는, 예를 들면, API 또는 어플리케이션 프로그램이 커널과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어는 어플리케이션 프로그램으로부터 수신된 하나 이상의 작업 요청들을 우선 순위에 따라 처리할 수 있다. 예를 들면, 미들웨어는 어플리케이션 프로그램 중 적어도 하나에 ATE(101)의 시스템 리소스(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)를 사용할 수 있는 우선 순위를 부여하고, 상기 하나 이상의 작업 요청들을 처리할 수 있다. API는 어플리케이션이 커널 또는 미들웨어에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 영상 처리, 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다. The memory (130) may include volatile and/or nonvolatile memory. The memory (130) may store, for example, instructions or data related to at least one other component of the ATE (101). According to one embodiment, the memory (130) may store software and/or programs. The programs may include, for example, a kernel, middleware, an application programming interface (API), and/or an application program (or “application”). At least a portion of the kernel, the middleware, or the API may be referred to as an operating system. The kernel may control or manage, for example, system resources (e.g., a bus (110), a processor (120), or memory (130)) used to execute operations or functions implemented in other programs (e.g., middleware, APIs, or application programs). In addition, the kernel may provide an interface that allows the middleware, APIs, or application programs to control or manage system resources by accessing individual components of the ATE (101). The middleware may, for example, act as an intermediary so that an API or an application program can communicate with the kernel and exchange data. In addition, the middleware may process one or more work requests received from the application program according to priorities. For example, the middleware may give at least one of the application programs a priority to use the system resources (e.g., bus (110), processor (120), or memory (130)) of the ATE (101) and process the one or more work requests. The API is an interface for the application to control functions provided by the kernel or the middleware, and may include at least one interface or function (e.g., command) for, for example, file control, window control, image processing, or character control.
입출력 인터페이스(140)는, 예를 들면, 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 ATE(101)의 다른 구성요소(들)에 전달하거나, 또는 ATE(101)의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다. The input/output interface (140) can, for example, transmit commands or data input from a user or another external device to other component(s) of the ATE (101), or output commands or data received from other component(s) of the ATE (101) to the user or another external device.
통신 인터페이스(150)는, 예를 들면, ATE(101)와 외부 전자 장치 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스(150)는 무선 통신 또는 유선 통신을 통해서 네트워크에 연결되어 외부 전자 장치(예: 테스트를 받고자 하는 고속 메모리 장치)와 통신할 수 있다. 무선 통신은, 예를 들면, LTE, LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 등 중 적어도 하나를 사용하는 셀룰러 통신을 포함할 수 있다. 한 실시예에 따르면, 무선 통신은, 예를 들면, WiFi(wireless fidelity), 블루투스, 블루투스 저전력(BLE), 지그비(Zigbee), NFC(near field communication), 자력 시큐어 트랜스미션(Magnetic Secure Transmission), 라디오 프리퀀시(RF), 또는 보디 에어리어 네트워크(BAN) 중 적어도 하나를 포함할 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 네트워크는 텔레커뮤니케이션 네트워크, 예를 들면, 컴퓨터 네트워크(예: LAN 또는 WAN), 인터넷, 또는 텔레폰 네트워크 중 적어도 하나를 포함할 수 있다.The communication interface (150) can establish communication between, for example, the ATE (101) and an external electronic device. For example, the communication interface (150) can be connected to a network via wireless communication or wired communication to communicate with an external electronic device (e.g., a high-speed memory device to be tested). The wireless communication can include, for example, cellular communication using at least one of LTE, LTE-A (LTE Advance), CDMA (code division multiple access), WCDMA (wideband CDMA), UMTS (universal mobile telecommunications system), WiBro (Wireless Broadband), or GSM (Global System for Mobile Communications). According to one embodiment, the wireless communication can include, for example, at least one of WiFi (wireless fidelity), Bluetooth, Bluetooth low energy (BLE), Zigbee, near field communication (NFC), Magnetic Secure Transmission, Radio Frequency (RF), or Body Area Network (BAN). The wired communication may include at least one of, for example, a universal serial bus (USB), a high definition multimedia interface (HDMI), a recommended standard232 (RS-232), power line communication, or plain old telephone service (POTS). The network may include at least one of a telecommunications network, for example, a computer network (e.g., a LAN or WAN), the Internet, or a telephone network.
다양한 실시예들에 따르면, ATE(101)는 다양한 메모리 테스트 알고리즘(특히, March SS 알고리즘)을 이용하여 피시험 장치(DUT, device under test)(예: 고속 메모리 장치)에 대한 테스트를 수행할 수 있다. ATE(101)는 메모리 테스트 알고리즘을 이용하여, 특정한 순서로 읽기 동작과 쓰기 동작을 수행함으로써, 메모리 셀이 정상적으로 동작하는지 확인할 수 있다. 이 때, 읽기 동작과 쓰기 동작의 횟수와 순서는 찾아내고자 하는 결함의 종류에 따라 달라질 수 있다. 일 실시예에 따라, 피시험 장치는 워드지향 메모리(WOM, word oriented memory)일 수 있다.According to various embodiments, ATE (101) can perform tests on a device under test (DUT) (e.g., a high-speed memory device) using various memory test algorithms (particularly, the March SS algorithm). ATE (101) can perform read and write operations in a specific order using the memory test algorithm to check whether a memory cell operates normally. At this time, the number of times and order of the read and write operations may vary depending on the type of defect to be found. According to one embodiment, the DUT may be a word-oriented memory (WOM).
도 2는 다양한 실시예들에 따른, ATE(예: 도 1의 ATE(101))의 동작을 설명하기 위한 도면이다.FIG. 2 is a diagram for explaining the operation of an ATE (e.g., ATE (101) of FIG. 1) according to various embodiments.
도 3a는 다양한 실시예들에 따른, 패턴 변환 테이블에 기초하여 변환된 테스트 패턴에 대한 실시예를 나타낸다.FIG. 3a illustrates an embodiment of a test pattern converted based on a pattern conversion table according to various embodiments.
도 3b는 다양한 실시예들에 따른, 인스트럭션 구조에 대한 실시예를 나타낸다.FIG. 3b illustrates an example of an instruction structure according to various embodiments.
도 4는 다양한 실시예들에 따른, 데이터 추출 모듈의 동작을 설명하기 위한 도면이다.FIG. 4 is a diagram for explaining the operation of a data extraction module according to various embodiments.
도 5는 다양한 실시예들에 따른, 데이터 변환 모듈의 동작을 설명하기 위한 도면이다.FIG. 5 is a diagram for explaining the operation of a data conversion module according to various embodiments.
도 6은 다양한 실시예들에 따른, 패턴 생성기 모듈 및 생성기 모듈의 동작을 설명하기 위한 도면이다.FIG. 6 is a diagram for explaining a pattern generator module and the operation of the generator module according to various embodiments.
다양한 실시예들에 따르면, ATE(101)는 데이터 추출 모듈(201), 데이터 변환 모듈(202), 패턴 생성기 모듈(203), 및 선택기 모듈(204)을 포함할 수 있다. 상기 모듈들(201, 202, 203, 204) 중 적어도 하나는 프로세서(예: 도 1의 프로세서(120))에 물리적으로 구현된 하드웨어적 요소이거나 프로세서(120)에 의하여 실행되는 소프트웨어적 요소일 수 있다.According to various embodiments, the ATE (101) may include a data extraction module (201), a data transformation module (202), a pattern generator module (203), and a selector module (204). At least one of the modules (201, 202, 203, 204) may be a hardware element physically implemented in a processor (e.g., processor (120) of FIG. 1) or a software element executed by the processor (120).
일 실시예에 따르면, 프로세서(120)(예: 데이터 추출 모듈(201))는 테스트 패턴 프로그램을 획득할 수 있다. 예를 들어, 데이터 추출 모듈(201)은 외부 프로세서로부터 테스트 패턴 프로그램을 획득하거나, 또는 내부 프로세서(120)에 의하여 테스트 패턴 프로그램을 획득할 수 있다. 일 실시예에 따르면, 프로세서(120)(예: 데이터 추출 모듈(201))는 패턴 변환 테이블에 기초하여 변환된 테스트 패턴을 특정 포맷에 따라 생성한 인스트럭션을 획득할 수 있다. 예를 들어, 도 3a를 참조하면, <301>은 March SS 알고리즘에 특정 방향성(direction)이 지정된 제1 테스트 패턴 프로그램을 나타내고, <302>는 상기 제1 테스트 패턴 프로그램을 인스트럭션 기반의 테스트 패턴들(instruction-based test patterns)로 표현한 제2 테스트 패턴 프로그램 나타내며, <303>은 패턴 변환 테이블(310)에 기초하여 상기 제2 테스트 패턴 프로그램을 이진수의 테스트 패턴들로 표현한 제3 테스트 패턴 프로그램을 나타낸다. 상술한 변환 동작은, 외부 프로세서, 내부 프로세서(120), 또는 데이터 추출 모듈(201) 중 한 구성요소에 의하여 수행될 수 있고, 일 실시예에 따라, 상술한 구성요소에 의하여 제1 테스트 패턴 프로그램(301)으로부터 제3 테스트 패턴 프로그램(303)으로 곧바로 변환될 수 있음은 물론이다. 예를 들어, 도 3a의 320을 참조하면, 데이터 추출 모듈(201)은 제1 테스트 패턴 프로그램(301) 중 첫번째 테스트 패턴(예: |(w0);)을 인스트럭션 기반의 테스트 패턴(예: up/w0/end)으로 변환할 수 있고, 패턴 변환 테이블(310)에 기초하여 이진수의 테스트 패턴(예: 0/10/1)으로 변환할 수 있다. 일 실시예에 따르면, 패턴 변환 테이블(310)은 방향(direction)에 대한 정보, 종료(end)에 대한 정보, 및 마치 요소(March element)에 대한 정보를 포함할 수 있다.According to one embodiment, the processor (120) (e.g., the data extraction module (201)) can obtain a test pattern program. For example, the data extraction module (201) can obtain a test pattern program from an external processor, or can obtain a test pattern program by an internal processor (120). According to one embodiment, the processor (120) (e.g., the data extraction module (201)) can obtain an instruction that generates a converted test pattern according to a specific format based on a pattern conversion table. For example, referring to FIG. 3A, <301> represents a first test pattern program in which a specific direction is specified in the March SS algorithm, <302> represents a second test pattern program that expresses the first test pattern program as instruction-based test patterns, and <303> represents a third test pattern program that expresses the second test pattern program as binary test patterns based on the pattern conversion table (310). The above-described conversion operation may be performed by one of the external processor, the internal processor (120), or the data extraction module (201), and, according to one embodiment, may be directly converted from the first test pattern program (301) to the third test pattern program (303) by the above-described component. For example, referring to 320 of FIG. 3A, the data extraction module (201) may convert the first test pattern (e.g., |(w0);) of the first test pattern program (301) into an instruction-based test pattern (e.g., up/w0/end), and may convert it into a binary test pattern (e.g., 0/10/1) based on a pattern conversion table (310). According to one embodiment, the pattern conversion table (310) may include information about a direction, information about an end, and information about a March element.
일 실시예에 따르면, 프로세서(120)(예: 데이터 추출 모듈(301))가 획득하는 테스트 패턴 프로그램(예: 301, 302, 또는 302)의 각 인스트럭션은, 5비트의 opcode 필드, 3비트의 set_sel 필드, 24비트의 operand 필드를 포함할 수 있다. 예를 들어, 도 3b를 참조하면, opcode 필드는 명령 코드(operation code)(330)를 나타내고, set_sel 필드는 큐(queue)의 위치와 관련된 값을 나타내며, operand 필드는 테스트 패턴과 관련된 값을 나타낼 수 있다. 한편, 명령 코드의 종류는, (i)commands for pattern generation, (ii)commands for controlling interrupts, (iii)commands for controlling PCs, 및 (iv)commands for controlling repetition of pattern programs로 분류될 수 있다. 또한, operand 필드는 복수의 포맷들(340) 중에서 특정 포맷에 따라 생성될 수 있고, 상기 특정 포맷은 워드지향 메모리(WOM, word oriented memory)의 설정 값(예: x4, x8, x16)에 따라 결정될 수 있다. According to one embodiment, each instruction of a test pattern program (e.g., 301, 302, or 302) acquired by the processor (120) (e.g., data extraction module (301)) may include a 5-bit opcode field, a 3-bit set_sel field, and a 24-bit operand field. For example, referring to FIG. 3B, the opcode field may indicate an operation code (330), the set_sel field may indicate a value related to a location of a queue, and the operand field may indicate a value related to a test pattern. Meanwhile, the types of the operation codes may be classified into (i) commands for pattern generation, (ii) commands for controlling interrupts, (iii) commands for controlling PCs, and (iv) commands for controlling repetition of pattern programs. Additionally, the operand field may be generated according to a specific format among a plurality of formats (340), and the specific format may be determined according to a setting value of a word-oriented memory (WOM) (e.g., x4, x8, x16).
일 실시예에 따르면, 프로세서(120)(예: 데이터 추출 모듈(201))는 SVP(save pattern) 명령 코드에 응답하여, 테스트 패턴 프로그램의 테스트 패턴으로부터 확인된 방향 필드의 값, 리드(read)/라이트(write) 필드의 값, 및 데이터 필드의 값을 패턴 큐 레지스터에 저장할 수 있다. 예를 들어, 도 4의 <401>을 참조하면, SVP 명령 코드가 확인되는 경우, 데이터 추출 모듈(201)은 테스트 패턴(예: up=0, w0=10, end=1)으로부터 확인된 방향 필드 값(예: 0), 리드/라이트 필드 값(예: 1), 및 데이터 필드 값(예: 0)을 패턴 큐 레지스터에 저장할 수 있다. 패턴 큐 레지스터에 테스트 패턴을 미리 저장해놓음으로써 후속의 command들이 예측될 수 있다.According to one embodiment, the processor (120) (e.g., the data extraction module (201)) may store, in response to an SVP (save pattern) instruction code, a value of a direction field, a value of a read/write field, and a value of a data field identified from a test pattern of a test pattern program in a pattern queue register. For example, referring to <401> of FIG. 4, when the SVP instruction code is identified, the data extraction module (201) may store a value of a direction field (e.g., 0), a value of a read/write field (e.g., 1), and a value of a data field (e.g., 0) identified from a test pattern (e.g., up=0, w0=10, end=1) in a pattern queue register. By pre-storing a test pattern in the pattern queue register, subsequent commands can be predicted.
일 실시예에 따르면, 프로세서(120)(예: 데이터 추출 모듈(201))는 패턴 큐 레지스터에 저장된 데이터 필드의 값을 추출할 수 있다. 일 실시예에 따라, 도 4의 <402>를 참조하면, 데이터 추출 모듈(201)은 추출된 데이터 필드의 값을 데이터 변환 모듈(202)로 전달할 수 있다. 이 때, 상기 전달 동작은, LOAD 명령 코드에 응답하여 수행될 수 있다. 일 실시예에 따라, 도 4를 참조하면, 데이터 추출 모듈(201)로부터 데이터 변환 모듈(202)로 전달되는 데이터는, 워드지향 메모리의 설정 값(예: x8)에 따라 변화될 수 있다.According to one embodiment, the processor (120) (e.g., the data extraction module (201)) may extract the value of the data field stored in the pattern queue register. According to one embodiment, referring to <402> of FIG. 4, the data extraction module (201) may transfer the value of the extracted data field to the data conversion module (202). At this time, the transfer operation may be performed in response to a LOAD command code. According to one embodiment, referring to FIG. 4, data transferred from the data extraction module (201) to the data conversion module (202) may change according to a setting value of a word-oriented memory (e.g., x8).
일 실시예에 따르면, 프로세서(120)(예: 데이터 변환 모듈(202))는 기저장된 데이터 변환 테이블들 중에서 피시험 장치(205)의 특성에 대응하는 특정 테이블에 기초하여, 데이터 필드의 값을 제1 데이터로부터 제2 데이터로 변환할 수 있다. 예를 들어, 도 5를 참조하면, 데이터 변환 모듈(202)은 데이터 추출 모듈(201)로부터 테스트 패턴의 데이터 필드의 값(501)(예: 011 011 011 111 111 111)을 획득할 수 있고, 기저장된 데이터 변환 테이블들(511, 512, 513) 중에서 피시험 장치(205)의 특성(예: WOM x8)에 대응하는 특정 테이블(512)에 기초하여, 상기 데이터 필드의 값을 제1 데이터로부터 제2 데이터로 변환할 수 있다. 상기 예에서, 도 5를 참조하면, 데이터 변환 모듈(202)은 데이터 필드의 값이 '011'인 경우, 상기 특정 테이블(512)을 이용하여 제1 데이터(예: 011)에 맵핑된 제2 데이터(예: 0000_1111)를 획득할 수 있다. 일 실시예에 따르면, 피시험 장치(205)의 특성은 워드지향 메모리의 설정 값에 대응할 수 있다.According to one embodiment, the processor (120) (e.g., the data conversion module (202)) may convert the value of the data field from the first data to the second data based on a specific table corresponding to the characteristic of the device under test (205) among the pre-stored data conversion tables. For example, referring to FIG. 5, the data conversion module (202) may obtain the value (501) of the data field of the test pattern (e.g., 011 011 011 111 111 111), and may convert the value of the data field from the first data to the second data based on a specific table (512) corresponding to the characteristic (e.g., WOM x8) of the device under test (205) among the pre-stored data conversion tables (511, 512, 513). In the above example, referring to FIG. 5, when the value of the data field is '011', the data conversion module (202) can obtain the second data (e.g., 0000_1111) mapped to the first data (e.g., 011) by using the specific table (512). According to one embodiment, the characteristic of the device under test (205) can correspond to the setting value of the word-oriented memory.
일 실시예에 따르면, 프로세서(120)(예: 데이터 변환 모듈(202))은 기설정된 데이터 할당 순서에 따라 제2 데이터를 패턴 생성기 모듈(203)로 할당할 수 있다. 예를 들어, 도 5를 참조하면, 패턴 생성기 모듈(203)이 6개의 패턴 생성기들(PGs, pattern generators)을 포함하도록 설정된 경우, 데이터 변환 모듈(202)은 상기 패턴 생성기들에 대한 설정 순서(예: PG1->PG2->PG3->PG4->PG5->PG6)(즉, 기설정된 데이터 할당 순서)에 따라, 도 5의 <520>과 같이, 제2 데이터(예: 0000_1111)를 각각의 패턴 생성기로 선형적으로 할당할 수 있고, 그 결과, 도 5의 <530>과 같이, 각 패턴 생성기로 데이터가 전달될 수 있다. According to one embodiment, the processor (120) (e.g., the data conversion module (202)) may allocate the second data to the pattern generator module (203) according to a preset data allocation order. For example, referring to FIG. 5, if the pattern generator module (203) is set to include six pattern generators (PGs), the data conversion module (202) may linearly allocate the second data (e.g., 0000_1111) to each pattern generator according to the preset data allocation order (e.g., PG1->PG2->PG3->PG4->PG5->PG6) for the pattern generators, as in <520> of FIG. 5, and as a result, data may be transmitted to each pattern generator, as in <530> of FIG. 5.
일 실시예에 따르면, 프로세서(120)(예: 패턴 생성기 모듈(203))는 할당된 제2 데이터를 선택기 모듈(204)로 전달할 수 있다. 예를 들어, 도 6을 참조하면, 패턴 생성기 모듈(203) 내의 복수의 패턴 생성기들 각각(예: PG1 내지 PG6)은 데이터를 동시에 전달하기 위하여 병렬로 구현될 수 있고, 자신에게 할당된 데이터를 선택기 모듈(204)로 전달할 수 있다. 일 실시예에 따르면, 프로세서(120)(예: 선택기 모듈(204))는 설정에 따라 데이터를 피시험 장치(205)로 전달할 수 있다. 예를 들어, 도 6을 참조하면, 선택기 모듈(204)은 패턴 생성기 모듈(203)로부터 획득한 데이터를 미리 설정된 순서에 따라 피시험 장치(205)로 전달할 수 있다. 이 경우, 100MHz로 데이터를 처리할 수 있는 단일의 패턴 생성기를 이용하여 피시험 장치(205)를 테스트하는 경우 보다 600MHz로 데이터를 처리할 수 있는 6개의 병렬 패턴 생성기들을 이용하여 피시험 장치(205)를 테스트함으로써, 저속의 ATE(101)로 고속의 메모리 장치를 테스트할 수 있는 효과를 제공할 수 있다. 일 실시예에 따르면, 선택기 모듈(204)은 패턴 생성기(203) 내의 복수의 패턴 생성기들에서 병렬로 생성되는 패턴들을 취합하고 이를 피시험 장치(205)로 재할당할 수 있다. 일 실시예에 따르면, 패턴 생성기 모듈(203) 및 선택기 모듈(204)의 동작은 이 기술분야의 당업자가 공지된 기술을 이용하여 수행될 수 있다.According to one embodiment, the processor (120) (e.g., the pattern generator module (203)) may transmit the assigned second data to the selector module (204). For example, referring to FIG. 6, each of the plurality of pattern generators (e.g., PG1 to PG6) in the pattern generator module (203) may be implemented in parallel to simultaneously transmit data and may transmit the data assigned to it to the selector module (204). According to one embodiment, the processor (120) (e.g., the selector module (204)) may transmit data to the device under test (205) according to a setting. For example, referring to FIG. 6, the selector module (204) may transmit data acquired from the pattern generator module (203) to the device under test (205) according to a preset order. In this case, by testing the device under test (205) using six parallel pattern generators capable of processing data at 600 MHz, rather than testing the device under test (205) using a single pattern generator capable of processing data at 100 MHz, it is possible to provide an effect of testing a high-speed memory device with a low-speed ATE (101). According to one embodiment, the selector module (204) can collect patterns generated in parallel from a plurality of pattern generators in the pattern generator (203) and reallocate them to the device under test (205). According to one embodiment, the operations of the pattern generator module (203) and the selector module (204) can be performed by a person skilled in the art using a technique known to those skilled in the art.
다양한 실시예들에 따라서, 고속 메모리(high-speed memory)에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기(ATE, automated test equipment)는, 프로세서를 포함하고, 상기 프로세서는, 테스트 패턴 프로그램을 획득하고, SVP(save pattern) 명령 코드에 응답하여, 상기 테스트 패턴 프로그램의 테스트 패턴으로부터 확인된 방향 필드의 값, 리드(read)/라이트(write) 필드의 값, 및 데이터 필드의 값을 패턴 큐 레지스터에 저장하고, 기저장된 데이터 변환 테이블들 중에서 피시험 장치의 특성에 대응하는 특정 테이블에 기초하여, 상기 데이터 필드의 값을 제1 데이터로부터 제2 데이터로 변환하고, 및 상기 제2 데이터를 기설정된 데이터 할당 순서에 따라 할당하도록 설정될 수 있다.According to various embodiments, an automated test equipment (ATE) for performing a linear test on a high-speed memory includes a processor, wherein the processor is configured to obtain a test pattern program, and in response to a save pattern (SVP) command code, store a value of a direction field, a value of a read/write field, and a value of a data field identified from a test pattern of the test pattern program in a pattern queue register, and convert a value of the data field from first data to second data based on a specific table corresponding to a characteristic of a device under test among pre-stored data conversion tables, and allocate the second data according to a preset data allocation order.
다양한 실시예들에 따라서, 상기 프로세서는, 상기 테스트 패턴 프로그램으로서, 패턴 변환 테이블에 기초하여 변환된 테스트 패턴을 워드지향 메모리의 설정 값에 대응하는 특정 포맷에 따라 생성한 인스트럭션을 획득하도록 설정될 수 있다.According to various embodiments, the processor may be configured to obtain an instruction, as the test pattern program, for generating a test pattern converted based on a pattern conversion table according to a specific format corresponding to a setting value of a word-oriented memory.
다양한 실시예들에 따라서, 상기 테스트 패턴 프로그램은 March SS 알고리즘에 따라 생성된 프로그램이고, 상기 테스트 패턴 프로그램의 각 인스트럭션은 5비트의 opcode 필드, 3비트의 set_sel 필드, 24비트의 operand 필드를 포함할 수 있다.According to various embodiments, the test pattern program is a program generated according to the March SS algorithm, and each instruction of the test pattern program may include a 5-bit opcode field, a 3-bit set_sel field, and a 24-bit operand field.
다양한 실시예들에 따라서, 상기 프로세서는, 상기 기설정된 데이터 할당 순서로서, 복수의 패턴 생성기들에 대한 설정 순서에 따라 상기 제2 데이터를 상기 복수의 패턴 생성기들 각각에 선형적으로 할당하도록 설정될 수 있다.According to various embodiments, the processor may be configured to linearly allocate the second data to each of the plurality of pattern generators according to a set order for the plurality of pattern generators as the preset data allocation order.
다양한 실시예들에 따라서, 고속 메모리(high-speed memory)에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기(ATE, automated test equipment)의 동작 방법은, 테스트 패턴 프로그램을 획득하는 동작, SVP(save pattern) 명령 코드에 응답하여, 상기 테스트 패턴 프로그램의 테스트 패턴으로부터 확인된 방향 필드의 값, 리드(read)/라이트(write) 필드의 값, 및 데이터 필드의 값을 패턴 큐 레지스터에 저장하는 동작, 기저장된 데이터 변환 테이블들 중에서 피시험 장치의 특성에 대응하는 특정 테이블에 기초하여, 상기 데이터 필드의 값을 제1 데이터로부터 제2 데이터로 변환하는 동작, 및 상기 제2 데이터를 기설정된 데이터 할당 순서에 따라 할당하는 동작을 포함할 수 있다.According to various embodiments, a method of operating an automated test equipment (ATE) for performing a linear test on a high-speed memory may include an operation of acquiring a test pattern program, an operation of storing, in a pattern queue register, a value of a direction field, a value of a read/write field, and a value of a data field identified from a test pattern of the test pattern program in response to a save pattern (SVP) command code, an operation of converting a value of the data field from first data to second data based on a specific table corresponding to a characteristic of a device under test among pre-stored data conversion tables, and an operation of allocating the second data according to a preset data allocation order.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다. 다양한 실시예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체(예: 메모리(130))에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(예: 자기테이프), 광기록 매체(예: CD-ROM, DVD, 자기-광 매체 (예: 플롭티컬 디스크), 내장 메모리 등을 포함할 수 있다. 명령어는 컴파일러에 의해 만들어지는 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른, 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.The term "module" as used in this document includes a unit composed of hardware, software or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A "module" may be an integrally composed component or a minimum unit or a part thereof that performs one or more functions. A "module" may be implemented mechanically or electronically, and may include, for example, an ASIC (application-specific integrated circuit) chip, FPGAs (field-programmable gate arrays), or a programmable logic device, known or to be developed in the future, that performs certain operations. At least a portion of a device (e.g., modules or functions thereof) or a method (e.g., operations) according to various embodiments may be implemented as an instruction stored in a computer-readable storage medium (e.g., memory (130)) in the form of a program module. When the instruction is executed by a processor (e.g., processor (120)), the processor may perform a function corresponding to the instruction. The computer-readable recording medium may include a hard disk, a floppy disk, a magnetic medium (e.g., a magnetic tape), an optical recording medium (e.g., a CD-ROM, a DVD, a magneto-optical medium (e.g., a floptical disk), a built-in memory, etc. The instructions may include codes generated by a compiler or codes executable by an interpreter. A module or program module according to various embodiments may include at least one or more of the above-described components, some of them may be omitted, or other components may be further included. Operations performed by a module, a program module, or other components according to various embodiments may be executed sequentially, in parallel, iteratively, or heuristically, or at least some of the operations may be executed in a different order, omitted, or other operations may be added.
그리고 본 문서에 개시된 실시예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 개시의 범위를 한정하는 것은 아니다. 따라서, 본 개시의 범위는, 본 개시의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시예를 포함하는 것으로 해석되어야 한다.And the embodiments disclosed in this document are presented for the purpose of explanation and understanding of the disclosed technical contents, and do not limit the scope of the present disclosure. Therefore, the scope of the present disclosure should be interpreted to include all modifications or various other embodiments based on the technical idea of the present disclosure.
Claims (5)
프로세서를 포함하고,
상기 프로세서는,
테스트 패턴 프로그램을 획득하고,
SVP(save pattern) 명령 코드에 응답하여, 상기 테스트 패턴 프로그램의 테스트 패턴으로부터 확인된 방향 필드의 값, 리드(read)/라이트(write) 필드의 값, 및 데이터 필드의 값을 패턴 큐 레지스터에 저장하고,
기저장된 데이터 변환 테이블들 중에서 피시험 장치의 특성에 대응하는 특정 테이블에 기초하여, 상기 데이터 필드의 값을 제1 데이터로부터 제2 데이터로 변환하고, 및
상기 제2 데이터를 기설정된 데이터 할당 순서에 따라 할당하도록 설정된,
자동화 테스트 기기.
In automated test equipment (ATE) for performing linear tests on high-speed memory,
Contains a processor,
The above processor,
Obtain the test pattern program,
In response to the SVP (save pattern) command code, the values of the direction field, the values of the read/write field, and the values of the data field identified from the test pattern of the test pattern program are stored in the pattern queue register,
Converting the value of the data field from first data to second data based on a specific table corresponding to the characteristics of the device under test among the stored data conversion tables, and
Set to allocate the above second data according to the preset data allocation order,
Automated test equipment.
상기 프로세서는,
상기 테스트 패턴 프로그램으로서, 패턴 변환 테이블에 기초하여 변환된 테스트 패턴을 워드지향 메모리의 설정 값에 대응하는 특정 포맷에 따라 생성한 인스트럭션을 획득하도록 설정된,
자동화 테스트 기기.
In the first paragraph,
The above processor,
As the above test pattern program, it is set to obtain an instruction that generates a test pattern converted based on a pattern conversion table according to a specific format corresponding to a setting value of a word-oriented memory.
Automated test equipment.
상기 테스트 패턴 프로그램은 March SS 알고리즘에 따라 생성된 프로그램이고,
상기 테스트 패턴 프로그램의 각 인스트럭션은 5비트의 opcode 필드, 3비트의 set_sel 필드, 24비트의 operand 필드를 포함하는,
자동화 테스트 기기.
In the second paragraph,
The above test pattern program is a program generated according to the March SS algorithm.
Each instruction in the above test pattern program includes a 5-bit opcode field, a 3-bit set_sel field, and a 24-bit operand field.
Automated test equipment.
상기 프로세서는,
상기 기설정된 데이터 할당 순서로서, 복수의 패턴 생성기들에 대한 설정 순서에 따라 상기 제2 데이터를 상기 복수의 패턴 생성기들 각각에 선형적으로 할당하도록 설정된,
자동화 테스트 기기.
In the third paragraph,
The above processor,
As the above preset data allocation order, the second data is set to be linearly allocated to each of the plurality of pattern generators according to the set order for the plurality of pattern generators.
Automated test equipment.
테스트 패턴 프로그램을 획득하는 동작,
SVP(save pattern) 명령 코드에 응답하여, 상기 테스트 패턴 프로그램의 테스트 패턴으로부터 확인된 방향 필드의 값, 리드(read)/라이트(write) 필드의 값, 및 데이터 필드의 값을 패턴 큐 레지스터에 저장하는 동작,
기저장된 데이터 변환 테이블들 중에서 피시험 장치의 특성에 대응하는 특정 테이블에 기초하여, 상기 데이터 필드의 값을 제1 데이터로부터 제2 데이터로 변환하는 동작, 및
상기 제2 데이터를 기설정된 데이터 할당 순서에 따라 할당하는 동작을 포함하는,
자동화 테스트 기기의 동작 방법.In the operating method of automated test equipment (ATE) for performing linear testing on high-speed memory,
The action of obtaining a test pattern program,
An operation of storing the value of a direction field, a value of a read/write field, and a value of a data field identified from a test pattern of the test pattern program in the pattern queue register in response to a SVP (save pattern) command code.
An operation of converting the value of the data field from first data to second data based on a specific table corresponding to the characteristics of the device under test among the stored data conversion tables, and
Including an operation of allocating the second data according to a preset data allocation order.
How automated test equipment works.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230057777A KR102743456B1 (en) | 2023-05-03 | 2023-05-03 | Ate for performing linear test for high-speed memory and method for operation thereof |
PCT/KR2023/014955 WO2024228433A1 (en) | 2023-05-03 | 2023-09-27 | Automatic test equipment for performing linear test on high-speed memory, and operating method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230057777A KR102743456B1 (en) | 2023-05-03 | 2023-05-03 | Ate for performing linear test for high-speed memory and method for operation thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20240160889A KR20240160889A (en) | 2024-11-12 |
KR102743456B1 true KR102743456B1 (en) | 2024-12-16 |
Family
ID=93333103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230057777A Active KR102743456B1 (en) | 2023-05-03 | 2023-05-03 | Ate for performing linear test for high-speed memory and method for operation thereof |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102743456B1 (en) |
WO (1) | WO2024228433A1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998023968A1 (en) | 1996-11-29 | 1998-06-04 | Advantest Corporation | Pattern generator |
JP2009543096A (en) | 2006-07-10 | 2009-12-03 | アステリオン・インコーポレイテッド | Digital waveform generation and measurement in automated test equipment |
JP2017072509A (en) | 2015-10-08 | 2017-04-13 | 株式会社アドバンテスト | Test device, test signal supply device, test method, and program |
KR102084141B1 (en) | 2018-09-14 | 2020-03-03 | 연세대학교 산학협력단 | Instruction-based Built Off Self-Test Apparatus for Memory Test |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6681351B1 (en) * | 1999-10-12 | 2004-01-20 | Teradyne, Inc. | Easy to program automatic test equipment |
KR100374328B1 (en) * | 2000-06-03 | 2003-03-03 | 박현숙 | chip design verification and test apparatus and method |
KR100850204B1 (en) | 2006-11-04 | 2008-08-04 | 삼성전자주식회사 | Method and apparatus for generating high-frequency command and address signals for high-speed semiconductor memory device testing |
US7788562B2 (en) * | 2006-11-29 | 2010-08-31 | Advantest Corporation | Pattern controlled, full speed ATE compare capability for deterministic and non-deterministic IC data |
US10451653B2 (en) * | 2014-12-19 | 2019-10-22 | Teradyne, Inc. | Controlling a per-pin measurement unit |
KR102039112B1 (en) * | 2017-06-20 | 2019-10-31 | 포스필 주식회사 | Processor-based measurement method for testing device under test and measurement apparatus using the same |
KR102569335B1 (en) * | 2019-01-22 | 2023-08-22 | 주식회사 아도반테스토 | Automatic test equipment for testing one or more devices under test for command error handling, method and computer program for automatic testing of one or more devices under test |
KR102002753B1 (en) * | 2019-03-15 | 2019-07-23 | 호서대학교 산학협력단 | Interface card to test of memory |
JP7317209B2 (en) * | 2019-08-06 | 2023-07-28 | 株式会社アドバンテスト | Automatic test equipment for testing a device under test including a processing unit and program and/or data memory, a test controller, one or more interfaces to the device under test, an automatic test equipment including shared memory, and the device under test way to test |
KR102771558B1 (en) * | 2019-11-14 | 2025-02-24 | 삼성전자주식회사 | Test board and test system including the same |
KR20210063666A (en) * | 2019-11-25 | 2021-06-02 | 에스케이하이닉스 주식회사 | Apparatus and Method for Interface Circuit |
US11068368B2 (en) * | 2019-12-16 | 2021-07-20 | Advanced Micro Devices, Inc. | Automatic part testing |
-
2023
- 2023-05-03 KR KR1020230057777A patent/KR102743456B1/en active Active
- 2023-09-27 WO PCT/KR2023/014955 patent/WO2024228433A1/en unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998023968A1 (en) | 1996-11-29 | 1998-06-04 | Advantest Corporation | Pattern generator |
JP2009543096A (en) | 2006-07-10 | 2009-12-03 | アステリオン・インコーポレイテッド | Digital waveform generation and measurement in automated test equipment |
JP2017072509A (en) | 2015-10-08 | 2017-04-13 | 株式会社アドバンテスト | Test device, test signal supply device, test method, and program |
KR102084141B1 (en) | 2018-09-14 | 2020-03-03 | 연세대학교 산학협력단 | Instruction-based Built Off Self-Test Apparatus for Memory Test |
Also Published As
Publication number | Publication date |
---|---|
KR20240160889A (en) | 2024-11-12 |
WO2024228433A1 (en) | 2024-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11222280B2 (en) | Method and system for generating quantum bit control signal | |
CN113721927B (en) | ATE test vector compiling acceleration method based on FPGA and ATE system | |
US9711241B2 (en) | Method and apparatus for optimized memory test status detection and debug | |
CN112287569B (en) | Method, electronic device and storage medium for simulating logic system design | |
US10782919B2 (en) | Command processing method and storage controller using the same | |
US11275683B2 (en) | Method, apparatus, device and computer-readable storage medium for storage management | |
CN115809203B (en) | Dynamic nesting method, device and application of software test cases | |
KR102743456B1 (en) | Ate for performing linear test for high-speed memory and method for operation thereof | |
US10777293B2 (en) | Semiconductor device, memory test method for semiconductor device, and test pattern generation program | |
CN109508247B (en) | Method, system and electronic equipment for positioning memory error occurrence position | |
CN108335720B (en) | Method for compiling personalized data by using memory tester | |
US10957006B2 (en) | Information processing device and method of controlling same, and non-transitory computer readable medium | |
KR102747429B1 (en) | Memory control system with sequence processing unit | |
JP2018136145A (en) | Memory inspection device | |
JP6204044B2 (en) | Nonvolatile storage system, nonvolatile storage device, and memory controller | |
US9542254B2 (en) | Application-level signal handling and application-level memory protection | |
CN105320581B (en) | Integrated circuit, verification method and method for generating characteristic value adjusting code | |
CN112131806A (en) | Compilation method for verification design, electronic device and storage medium | |
JP2022044114A (en) | Semiconductor integrated circuit and test method thereof | |
CN107229564B (en) | Pressure simulation method and device | |
CN113283202A (en) | Prototype verification board | |
US20130318509A1 (en) | Generating object code from a conjoined assembler directive | |
CN112924854B (en) | Arbitrary waveform format generation method, apparatus, test device and storage medium | |
KR102713738B1 (en) | Electronic device for pre-allocating operand collector to use register file efficiently and operation method thereof | |
CN114816868B (en) | Method for realizing serial interface chip test |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20230503 |
|
PA0201 | Request for examination |
Patent event code: PA02011R01I Patent event date: 20230503 Comment text: Patent Application |
|
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20241127 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20241211 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20241212 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |