[go: up one dir, main page]

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 PDF

Info

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
Application number
KR1020230057777A
Other languages
Korean (ko)
Other versions
KR20240160889A (en
Inventor
이영우
박석민
Original Assignee
전남대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전남대학교산학협력단 filed Critical 전남대학교산학협력단
Priority to KR1020230057777A priority Critical patent/KR102743456B1/en
Priority to PCT/KR2023/014955 priority patent/WO2024228433A1/en
Publication of KR20240160889A publication Critical patent/KR20240160889A/en
Application granted granted Critical
Publication of KR102743456B1 publication Critical patent/KR102743456B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318307Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/31813Test pattern generators
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31919Storing 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

고속 메모리(high-speed memory)에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기 및 그 동작 방법{ATE FOR PERFORMING LINEAR TEST FOR HIGH-SPEED MEMORY AND METHOD FOR OPERATION THEREOF}{ATE FOR PERFORMING LINEAR TEST FOR HIGH-SPEED MEMORY AND METHOD FOR OPERATION THEREOF}

본 문서의 다양한 실시 예들은 고속 메모리에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기 및 그 동작 방법에 관한 것이다.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)

고속 메모리(high-speed memory)에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기(ATE, automated test equipment)에 있어서,
프로세서를 포함하고,
상기 프로세서는,
테스트 패턴 프로그램을 획득하고,
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.
제1 항에 있어서,
상기 프로세서는,
상기 테스트 패턴 프로그램으로서, 패턴 변환 테이블에 기초하여 변환된 테스트 패턴을 워드지향 메모리의 설정 값에 대응하는 특정 포맷에 따라 생성한 인스트럭션을 획득하도록 설정된,
자동화 테스트 기기.
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.
제2 항에 있어서,
상기 테스트 패턴 프로그램은 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.
제3 항에 있어서,
상기 프로세서는,
상기 기설정된 데이터 할당 순서로서, 복수의 패턴 생성기들에 대한 설정 순서에 따라 상기 제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.
고속 메모리(high-speed memory)에 대하여 선형 테스트를 수행하기 위한 자동화 테스트 기기(ATE, 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.
KR1020230057777A 2023-05-03 2023-05-03 Ate for performing linear test for high-speed memory and method for operation thereof Active KR102743456B1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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