KR102148043B1 - 유연성 있는 테스트 사이트 동기화 - Google Patents

유연성 있는 테스트 사이트 동기화 Download PDF

Info

Publication number
KR102148043B1
KR102148043B1 KR1020140160551A KR20140160551A KR102148043B1 KR 102148043 B1 KR102148043 B1 KR 102148043B1 KR 1020140160551 A KR1020140160551 A KR 1020140160551A KR 20140160551 A KR20140160551 A KR 20140160551A KR 102148043 B1 KR102148043 B1 KR 102148043B1
Authority
KR
South Korea
Prior art keywords
bridge
test program
controllers
controller
busy signal
Prior art date
Application number
KR1020140160551A
Other languages
English (en)
Other versions
KR20150058041A (ko
Inventor
마이클 존스
다카히로 야스이
알란 에스 쥬니어 크레치
에드문도 델라푸엔트
다이치 후쿠다
Original Assignee
주식회사 아도반테스토
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아도반테스토 filed Critical 주식회사 아도반테스토
Publication of KR20150058041A publication Critical patent/KR20150058041A/ko
Application granted granted Critical
Publication of KR102148043B1 publication Critical patent/KR102148043B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R1/00Details of instruments or arrangements of the types included in groups G01R5/00 - G01R13/00 and G01R31/00
    • 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/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31907Modular tester, e.g. controlling and coordinating instruments in a bus based architecture
    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

자동 테스트 장비(ATE;;automated test equipment) 내부에서 테스트 사이트 동기화(test site synchronization)를 수행하는 방법이 제시된다. 이 방법은 복수의 브릿지 제어기(BC;bridge controller)를 이용하여 복수의 테스트 프로그래 제어기(TPC)를 제어하는 단계를 포함하며, 여기서 각각의 TPC는 복수의 비동기 이벤트(multiple asynchronous events)를 개시할 수 있다. TPC에 의해 개시되는 비동기 이벤트에 대해, 비동기 이벤트가 아직 완료되지 않은 동안에는 비지 플래그(busy flag)가 표명되고, 비동기 이벤트가 완료될 때에는 비지 플래그가 표명해제(deasserted)되며, 여기서 비동기 이벤트는 미확정된 시간을 필요로 하는 태스크에 대응한다. 이 방법은 또한 복수의 TPC 중 어떤 것으로부터 비지 플래그를 수신하는 것에 응답하여 제 1 BC에서 비지 신호를 발생하는 단계도 포함하는데, 여기서 비지 신호는 복수의 TPC 중의 어떤 것이 비지 플래그를 표명하는 동안에는 비지 신호가 표명된 채로 유지된다. 마지막으로, 이 방법은 복수의 TPC로 비지 신호를 송신하는 단계를 포함하는데, 여기서 TPC는 비지 신호를 이용하여 동작들을 동기화한다.

Description

유연성 있는 테스트 사이트 동기화{FLEXIBLE TEST SITE SYNCHRONIZATION}
본 발명의 실시예들은 전반적으로 자동화된 장치 테스팅(automated device testing)에 관한 것으로, 더 구체적으로는 자동화된 장치 테스팅을 위한 동기화 방법에 관한 것이다.
자동 테스트 장비(ATE;automated test equipment)는 장치, 반도체 웨이퍼 또는 다이(die) 등에 대해 테스트를 수행하는 임의의 테스팅 어셈블리(testing assembly)일 수 있다. ATE 어셈블리는 측정을 신속히 수행하여 테스트 결과(이것은 나중에 해석될 수 있다)를 발생하는 자동화된 테스트를 실행하는데 이용될 수 있다. ATE 어셈블리는 측정기에 접속된 컴퓨터 시스템에서부터 전자부품 및/또는 반도체를 자동으로 테스트할 수 있는 맞춤 제작식 전용 컴퓨터 제어 시스템과 많은 상이한 테스트 도구를 포함하는 자동화된 복합 테스트 어셈블리에 이르기까지 어떤 것이라도 될 수 있다. ATE는 전기 칩 제조 분야에서 일반적으로 이용된다. ATE 시스템은 장치를 테스하는 데 걸리는 시간을 줄여주어 장치가 설계된 바대로 기능할 수 있거하며, 주어진 장치가 소비자에게 도달하기 전에 고장난 성분의 존재를 확인하는 진단 툴의 역할을 수행한다.
장치나 제품을 테스트함에 있어서, 예를 들어 생산 이후에, 높은 제품 품질, 장치나 제품의 성능의 평가, 제조 공정과 관련한 피드백 및 최종적으로 높은 고객 만족도를 달성하는 것은 중요하다. 테스팅 장치, 예컨대 NAND 플래시 패키지는 일부 유형의 오류 포착(error capture) 및 분석을 요구한다. 흔히, 장치 또는 제품의 올바른 기능을 보장하기 위해서 복수의 테스트가 수행되는데, 이것을 테스팅 용어로 피시험 장치(DUT;device under test)라고 부른다. 이러한 복수의 테스트는 전형적으로 사용자에 의해 ATE 시스템에 부가되는 테스트 계획서 또는 테스트 프로그램의 일부이다. 테스트 계획서는 DUT에 대한 테스트를 실행하는 청사진의 역할을 한다.
DUT를 테스트하는 전통적인 ATE 솔루션은 테스트 프로그램 제어기가 테스터 자원(tester resource)을 고정형 동기화 메커니즘을 이용해 고정된 방식으로 제어하므로 제한된다. 종래의 ATE 솔루션은 예를 들어 DUT에게 하드웨어 유닛을 배정함에 있어 유연성을 허용하지 않으며, 더 나아가 하드웨어 유닛들이 서로간에 동기화를 유지함에 있어 유연성을 허용하지 않는다. 하드웨어 유닛을 DUT에 배정하고 이들 사이에 유연하게 동기화를 유지함에 있어서의 이러한 경직성(inflexibility)은 테스터 자원을 효율적으로 이용하지 못하게 한다.
따라서, 각각 상이한 타이밍을 갖는 다중 테스트 프로그램 제어기 유닛 전체에 대한 테스트 패턴 조정(test pattern coordination)을 위해 효율적이고 유연성이 있으며 확장성(scalable)이 있는 솔루션을 제공하는 ATE 시스템이 요구된다. 일 실시예로, 본 발명은 다중 테스트 프로그램 제어기 유닛으로 하여금 그룹화되어, 모든 그룹화된 자원이 락스텝(lockstep)으로 동작하는 방식으로 하나의 조합 자원(combined resource)으로서 함께 동작하게 한다. 예를 들어, 만약에 제어기 유닛 중 어느 하나가 미확정된 시간(indeterminate amount of time)이 걸리는 동작을 수행중이라면, 이 동작이 수행된 이후에 해당 제어 유닛은 나머지 자원들과 함께 다시 동기화된다. 테스트 자원들을 그룹화하고 동기화하는 능력은 ATE 시스템을 바람직하게 유연하고 확장 가능하게 하는데, 그 이유는 추가적인 테스트 자원이 확실하게 그룹내의 다른 자원들과 동기화된 채로 유지되도록 노력하지 않아도 자원 그룹에 매끄럽게 추가될 수 있기 때문이다.
일 실시예로, ATE를 이용하여 테스트 사이트 동기화(test site synchronization)를 수행하는 방법이 개시된다. 이 방법은 브릿지 제어기(bridge controller)(예컨대, FPGA(Field Programmable Gate Array)를 이용하여 복수의 테스트 프로그램 제어기(예컨대, ASIC(Application Specific Integrated Circuit))를 제어하는 단계를 포함한다. 각각의 테스트 프로그램 제어기는 복수의 비동기 이벤트(multiple asynchronous events)를 개시할 수 있는데, 여기서 복수의 비동기 이벤트는 미확정된 시간을 필요로 하는 태스크에 대응한다. 테스트 프로그램 제어기에 의해 개시되는 모든 비동기 이벤트에 대해, 비동기 이벤트가 아직 완료되지 않은 동안에는 비지 플래그(busy flag)가 표명되고, 비동기 이벤트가 완료될 때에 비지 플래그가 표명해제(deasserted)된다. 이 방법은 또한 테스트 프로그램 제어기 중 어떤 것으로부터 비지 플래그를 수신하는 것에 응답하여 브릿지 제어기에서 비지 신호를 발생하는 단계를 더 포함하는데, 여기서 비지 신호는 복수의 테스트 프로그램 제어기 중의 어떤 것이 비지 플래그를 표명하는 동안에는 브릿지 제어기로부터 표명된 채로 유지된다. 마지막으로, 이 방법은 복수의 테스트 프로그램 제어기로 비지 신호를 송신하는 단계도 포함하는데, 여기서 테스트 프로그램 제어기는 이 비지 신호를 이용하여 동작 및 프로그램 흐름을 동기화한다.
일 실시예로, 브릿지 제어기는 다른 브릿지 제어기에 연결될 수 있다. 이 실시예에서, 본 방법은 또한 제 1 브릿지 제어기에 연결된 다른 브릿지 제어기로 비지 신호를 송신하는 단계를 더 포함할 수 있다. 이런 실시예에서 모든 브릿지 제어기는 함께 그룹화되어 단일 자원처럼 동작한다. 제 1 브릿지 제어기와 다른 브릿지 제어기는 비지 신호를 이용하여 서로간에 동작을 동기화한다.
다른 실시예로, 컴퓨터 시스템에 의해 실행될 경우 컴퓨터 시스템으로 하여금 ATE를 이용하여 테스트 사이트 동기화를 수행하는 방법을 수행하게 하는 컴퓨터 실행가능 명령어가 저장된 컴퓨터 판독가능 저장 매체가 개시된다. 상기 방법은 제 1 브릿지 제어기를 이용하여 복수의 테스트 프로그램 제어기를 제어하는 단계를 포함하는데, 여기서 각각의 테스트 프로그램 제어기는 복수의 비동기 이벤트를 개시할 수 있다. 테스트 프로그램 제어기에 의해 개시된 비동기 이벤트에 대해, 비동기 이벤트가 아직 완료되지 않은 동안에 비지 플래그가 표명되고, 비동기 이벤트가 완료될 때에는 비지 플래그가 표명해제되며, 여기서 비동기 이벤트는 미확정된 시간을 필요로 하는 태스크에 대응한다. 이 방법은 또한 복수의 테스트 프로그램 제어기 중 어떤 것으로부터 비지 플래그를 수신하는 것에 응답하여 제 1 브릿지 제어기에서 비지 신호를 생성하는 단계를 더 포함하는데, 여기서 비지 신호는 복수의 테스트 프로그램 제어기 중의 어떤 것이 비지 플래그를 표명하는 동안에는 표명된 채로 유지된다. 마지막으로, 이 방법은 복수의 테스트 프로그램 제어기로 비지 신호를 송신하는 단계도 포함하는데, 여기서 테스트 프로그램 제어기는 이 비지 신호를 이용하여 동작 및 프로그램 흐름을 동기화한다.
다른 실시예로, ATE를 이용하여 테스트 사이트 동기화를 수행하는 시스템이 개시된다. 이 시스템은 복수의 테스트 프로그램 제어기를 포함하는데, 이 테스트 프로그램 제어기는 복수의 연결된 피시험 장치(DUT) 상에서 테스트 프로그램을 실행하도록 동작할 수 있다. 이 시스템은 또한 복수의 브릿지 제어기를 포함하며, 이 복수의 브릿지 제어기와 복수의 테스트 프로그램 제어기는 함께 그룹화되어 조합 테스트 자원으로서 동작하고, 복수의 브릿지 제어기는 체인(chain)으로서 순차적으로 함께 연결되며, 각각의 브릿지 제어기는 복수의 테스트 프로그램 제어기의 부분집합을 제어하며, 복수의 브릿지 제어기의 각각은 (a) 각각의 브릿지 제어기에 연결된 테스트 프로그램 제어기로부터 수신된 비지 플래그에 응답하여 비지 신호를 생성―비지 플래그는 테스트 프로그램 제어기에 의해 개시되는 비동기 이벤트에 의해 표명되고, 각각의 비동기 이벤트는 미확정된 시간을 필요로 하는 태스크에 대응함―하고, (b) 제 1 비지 신호를 다운스트림으로 체인 내에서 후속하는 브릿지 제어기로 직렬로 송신―제 1 비지 신호는 복수의 브릿지 제어기의 각자의 비지 상태와 관련한 정보를 수집함―하고, (c) 제 2 비지 신호를 업스트림으로 체인 내에서 앞선 브릿지 제어기로 전달―제 2 비지 신호는 제 1 비지 신호로부터 생성되고, 제 2 비지 신호는 복수의 브릿지 제어기의 각각에 대한 각자의 비지 상태와 관련한 조합 정보를 포함하며, 제 2 비지 신호는 복수의 브릿지 제어기의 각각에 대해 자신의 업스트림으로 도중에 정보를 분산함―하고, (d) 제 2 비지 신호를 연결된 테스트 프로그램 제어기로 송신―제 2 비지 신호는 복수의 테스트 프로그램 제어기의 동작을 동기화도록 동작가능함―하도록 동작 가능하다.
다음의 상세한 설명은 첨부 도면과 함께 본 발명의 성격과 이점들을 더 잘 이해하도록 도울 것이다.
본 발명의 실시예들은 첨부된 도면에서 제한적 의미가 아닌 예로서 예시되며, 도면에서 유사한 참조 번호는 유사한 요소들을 나타낸다.
도 1은 본 발명의 일 실시예에 따른 ATE 장치의 PEM(Pin Electronics Module)의 블록도를 예시한다.
도 2는 본 발명의 일 실시예에 따른 PEM내의 브릿지 FPGA(Field Programmable Gate Arrays)와 ASIC(Application Specific Integrated Circuits) 사이의 상호 연결을 보여주는 블록도를 예시한다.
도 3은 본 발명의 일 실시예에 따라 도 1의 브릿지 FPGA 모듈의 블록도를 예시한다.
도 4는 FPGA 하프-브릿지(Half-bridge)에 대한 블록도를 예시하며, 여기서 내부에서 발생된 동기 신호는 본 발명의 일 실시예에 따라 조합 자원 모드(CRM;combined resource mode) 그룹내에서 복수의 브릿지 FPGA와 ASIC의 동작을 동기화하는데 이용된다.
도 5는 CRM 체인 내부의 모든 브릿지 FPGA와 ASIC가 본 발명의 일 실시예에 따라 락스텝으로 유지하되도록 보장하기 위해서 도 4의 동기 신호가 언더샘플링(under-sampled)되는 방법을 보여주는 블록도를 예시한다.
도 6은 본 발명의 일 실시예에 따라 개시된 테스트 사이트 동기화를 수행하는 예시적인 컴퓨터 제어 프로세스의 흐름도를 도시한다.
이제 본 개시 내용의 다양한 실시예들에 대하여 참조가 상세히 이루어질 것이며, 그 예들은 첨부 도면에 예시된다. 실시예들과 함께 설명되었을지라도 본 개시 내용이 이러한 실시예로 제한되도록 의도된 것이 아님을 이해할 것이다. 그와 반대로, 본 개시 내용은 첨부된 특허청구범위에 의해 정의되는 바와 같은 개시 내용의 사상과 범주내에 포함될 수 있는 대안, 수정안 및 등가안을 포괄하도록 의도된다. 더 나아가, 다음의 본 개시 내용의 상세한 설명에서, 다양한 특정 세부사항들은 본 개시 내용의 완전한 이해를 제공하기 위해 설정된 것이다. 그러나 이러한 특정 세부사항들없이도 본 개시 내용이 실시될 수 있음이 이해될 것이다. 다른 예로서, 공지된 방법, 프로시저, 성분 및 회로들은 본 개시내용을 쓸데없이 흐리게 하지 않도록 하기 위해 상세히 설명되지 않았다.
유연성있는 테스트 사이트 동기화
일 실시예로, 본 발명은 각각 상이한 타이밍을 갖는 다중 테스트 프로그램 제어기 유닛 전체에 대한 테스트 패턴 조정을 위해 효율적이고 유연성이 있으며 확장성이 있는 솔루션을 제공하는 ATE 시스템이다. 본 발명의 실시예는 다중 테스트 프로그램 제어기 유닛으로 하여금 그룹화되어, 모든 그룹화된 자원이 락스텝으로 동작하는 방식으로 하나의 조합 자원으로서 함께 동작하게 한다. 예를 들어, 만약에 테스트 프로그램 제어기 유닛 중 어느 하나가 미확정된 시간이 걸리는 동작을 수행중이라면, 이 동작이 수행된 이후에 해당 제어 유닛은 나머지 자원들과 함께 다시 동기화된다. 그룹화된 자원들의 동기를 맞추는 것은 중요한데, 그 이유는 특정 동작, 예컨대 연결된 DUT 상에서 신규 테스트 패턴을 프로그래밍하는 동작은 그룹내의 모든 자원들에 대한 동기 상태에서 일어나야 하기 때문이다. 테스트 자원들을 그룹화하고 동기화하는 능력은 ATE 시스템을 바람직하게 유연하고 확장 가능하게 하는데, 그 이유는 추가적인 테스트 자원이 확실하게 그룹내의 다른 자원들과 동기화된 채로 유지되도록 노력하지 않아도 그룹에 매끄럽게 추가될 수 있기 때문이다.
도 1은 본 발명의 일 실시예에 따른 ATE 장치의 PEM의 블록도를 예시한다. 일 실시에에서, PEM은 테스트 사이트(118, 116, 114)를 포함하는 테스트 도구이거나 인쇄 회로 기판(PCB)이다. 또한, 일 실시예에서는 각각의 테스트 사이트가 두 개의 독립적인 테스트 프로그램 제어기(150)(이후부터는 "ASIC"으로 칭함)를 포함할 수 있지만, 다른 실시예에서는 임의의 개수의 ASIC이 단일 테스트 사이트상에 구성될 수 있다. 전형적으로, 테스터 하드웨어는 모든 자원이 여러 테스트 사이트 사이에 공평하게 분할되므로, 각각의 사이트는 예컨대 핀 전자장치(pin electronics), 전력 공급원, 메모리 등의 자원에 액세스할 수 있다. 모든 자원은 ASIC 및/또는 FPGA에 의해 제어되며, 이들의 각각은 독립적인 유닛으로서 동작할 수 있다. 일 실시예로, ASIC은 프로세서로서, 테스트 프로그램을 실행하고, 연결된 DUT 상에서 테스트 패턴을 발생 및 확인한다.
또한, 일 실시예로, 각각의 테스트 사이트는 브릿지 FPGA를 포함할 수 있다. 예를 들어, 테스트 사이트(118)는 브릿지 FPGA(152)를 포함하는 반면, 테스트 사이트(116, 114)는 브릿지 FPGA(122, 123)를 각각 포함한다. 다른 예로, 각각의 테스트 사이트는 하나의 브릿지 FPGA보다 많이 포함할 수 있다. 본 발명의 일 실시예에서, 각각의 테스트 사이트는 테스트 사이트 제어기 모듈(148)도 포함한다. 테스트 사이트 제어기 모듈(148)은 테스트 프로세서(150)를 포함할 수 있다.
테스트 사이트의 각각은(예컨대, 테스트 사이트(118)은) 두 개의 핀 전자장치(PE) I/O 모듈(120)을 포함할 수 있고, 이것을 통해 테스트 사이트상의 각각의 ASIC이 하나 이상의 DUT(도시하지 않음)를 병렬로 연결 및 테스트할 수 있다. 일 실시예로, 각각의 PE I/O 모듈(120)은 DUT에 연결 및 테스트하기 위해 무려 48개 채널을 포함할 수 있다. 예를 들어, 테스트 사이트(118)는 PE I/O 모듈(120)을 통해 8개의 DUT를 병렬로 테스트할 수 있고, 이때 각각의 DUT는 ASIC(150)과 통신하기 위해 최대 8개 채널을 필요로 한다. 이 예에서, 이용가능한 96개 채널(48x2) 중 64개는 테스트 사이트(118)과 통신하는 8개 DUT에 의해 활용될 것이다.
다른 실시예에서, 다중 테스트 사이트로부터의 다중 연속 ASIC은 조합 자원 모드(CRM)로 함께 그룹화될 수 있다. ASIC을 CRM 그룹으로 조합하는 것은 상이한 자원 요구를 가질 수 있는 DUT를 테스트하기 위해 테스터 자원의 유연성있는 할당을 허용한다. 예를 들어, 만약에 DUT가 테스트 사이트(118)와 통신하기 위해 120개 채널을 요구한다면, DUT를 테스트하기 위해 144 채널(48x3)의 조합 I/O 용량을 갖는 최대 3개의 ASIC이 CRM 그룹으로 함께 그룹화되는 것이 필요할 것이다. 도 1에 도시된 신호 FMBUSY(190)는 동기화 유지를 위해 CRM 그룹 내부의 모든 자원에 의해 이용될 수 있고, 따라서 이 자원들은 고도로 조정된 방식으로 동작하여 DUT 테스트 프로그램을 실행할 수 있다.
테스트 데이터는 연결된 DUT(도시되지 않음)로부터 PE I/O 모듈(120)을 통해 수신될 수 있다. ASIC(150)은 DUT로부터 포획된 정보를 브릿지 FPGA 모듈(152)로 운반한다. 테스트 데이터는 ASIC(150)과 FPGA(152)에 의해 처리 및 압축되고, 테스트 데이터로부터 추출된 장애 정보(fail information)는 테스트 사이트 제어기 모듈(148)로 운반된다.
일 실시예로, 브릿지 FPGA 모듈(152)은 ASIC(150)으로부터 데이터를 실시간으로 처리 및 분석할 수 있다. 예를 들어, FPGA 모듈(152)은 특히 소프트웨어에서 정정될 수 없는 오류 관련 정보를 각각의 연결된 DUT를 위한 편리한 장애 리스트로 압축 및 합성할 수 있다. 마지막으로, 테스트 사이트 제어기 모듈(148)은 일 실시예에서 FPGA 모듈(152)에 의해 통신된 장애 리스트를 모집하고, 그 정보를 분석하여 정정 솔루션을 제공하도록 구성된다.
도 2는 본 발명의 일 실시예에 따른 PEM내의 브릿지 FPGA와 ASIC 사이의 상호 연결을 보여주는 블록도를 예시한다. 전술한 것처럼, PEM은 일 실시예로 6개의 독립적인 ASIC(291-296)을 포함하는 테스트 도구이며, 여기서 ASIC의 쌍은 단일 제어기인 브릿지 FPGA에 연결된다. 따라서, 각각의 PEM은 3개의 브릿지 FPGA(276, 278, 280)를 포함할 수 있다.
전술한 것처럼, ASIC이 서로 독립적으로 실행될 수 있는 반면, 이들은 예컨대 48개 이상의 I/O를 필요로 하는 DUT의 테스팅같은 특정한 응용의 경우에는 CRM에서 함께 그룹화될 수 있다. 예를 들어, 120개 I/O 채널을 요구하는 DUT는 3개의 ASIC에 걸쳐서 배열될 필요가 있다. 그 결과, CRM 그룹의 내부에서 다중 ASIC은 응용에 따라서 사실상 단일 ASIC 모듈처럼 동작하도록 걸쳐서 배열되는 것이 필요하다. 일 실시예로, 본 발명은 CRM 그룹이 1, 2, 3, 4, 6 또는 12개 ASIC과 그 연관 자원을 포함하는 것을 허용한다. 따라서, 다중 브릿지 FPGA와 짝수의 다중 PEM은 함께 그룹화되어 단일 CRM 그룹을 형성할 수 있다. 또한, CRM 모드는 고정 배선되는 것이 아닌 소프트웨어 프로그램가능하고, 이것은 확장 가능성을 만들어 낸다.
CRM 그룹은 그들 사이에 조정에 대한 필요성없이 독립적으로 기능할 수 있다. 비록 CRM 그룹이 독집적일지라도, 그룹 내부의 ASIC은 조심스럽게 동기화되어야만 하고, 따라서 이들 각각은 DUT 테스트 프로그램을 실행하기 위해 고도로 조정된 방식으로 동작한다. ASIC은 동기로부터 떨어져나갈 수도 있는데, 그 이유는 ASIC 중 하나가 예를 들면, FPGA로부터 ASIC으로 버퍼 메모리를 로딩하기, 특정 레지스터로부터의 비동기 판독, DUT로부터의 장애 데이터를 처리하기 등처럼 미확정된 시간이 걸리는 동작을 수행하는 것이 필요할 수도 있기 때문이다.
그러나 이러한 동작을 수행한 이후에, ASIC은 모두 다시 동기화되는 것이 필요하다. CRM 그룹 내부의 ASIC 중 일부가 다른 ASIC로부터 물리적으로 떨어져 있으므로, 모든 각각의 사이트로부터의 자원들이 적절히 동기화되도록 보장하는 것은 특히 중요하다. ASIC 사이의 동기화는 중요한데, 그 이유는 ASIC이 서로간에 독립적으로 실행할 수 있는 경우일지라도 CRM 그룹으로 조합될 때는 동일한 시간에 그리고 동조하여 신규 패턴을 실행하는 것같은 특정 동작을 개시하는 것이 필요하기 때문이다. 따라서, 본 발명은 각각 상이한 타이밍을 갖는 다중 ASIC에 걸쳐 유연성있고 확장성있는 테스트 패턴 조정의 이점을 갖는다.
일 실시예로, CRM 그룹 내부의 브릿지 FPGA는 CRM 그룹 내부의 FPGA의 체인을 통해 FMBUSY 신호를 전달함으로써 동기화가 유지된다. 예를 들어, 만약에 브릿지(276, 278, 280)와 ASIC(291-296)이 (예를 들면, 3개의 FPGA와 6개의 ASIC을 갖는 CRM 6으로 동작하는) 동일한 CRM 그룹의 일부였다면, FMBUSY 신호는 CRM 6 그룹 내부의 모든 자원으로 전달되어 CRM 6 그룹 내부의 모든 자원이 락스텝으로 동작중이었음을 보장하는 것이 필요하다. 다시 말해서, CRM 6 그룹 내부의 모든 테스트 자원은 그 그룹내의 모든 다른 테스트 자원이 신규 동작을 시작할 준비가 되었는지 알 필요가 있다. 만약 테스트 자원 중 어떤 것이 비동기인 동작이나 또는 미확정된 시간이 걸리는 동작을 수행중이라면, 다른 테스트 자원은 다시 동기화되기를 대기할 필요가 있다.
전술한 실시예에서, 다른 브릿지 FPGA와 유사한 브릿지 FPGA(276)는 인입 FNBUSY 신호를 위한 입력 포트 FMBUSY0_I(290)를 포함한다. FNBUSY 신호는 현재 FPGA(276)의 비지 상태와 내부적으로 논리합되고(OR-ed), 출력 신호 포트 FMBUSY0_O(291)를 이용하여 CRM 6 체인내의 후속 브릿지 FPGA(278)로 전달된다. 브릿지 FPGA(276)와 유사하게, FPGA(278, 280)은 CRM 6 체인에서 그들 앞에 있는 FPGA의 비지 상태에 관한 정보를 그들 각자의 FMBUSY0_I 포트를 통해 수신한다. 이 정보는 현재 각각의 FPGA의 비지 상태와 논리합되고, 각자의 FMBUSY0_O 포트를 통해 출력된다. 일단, 비지 정보가 브릿지(276)에서 브릿지(280)를 향해 전달되면, 체인내의 선행하는 FPGA, 즉, 브릿지(276, 278)가 체인내의 후행하는 FPGA, 즉, 브릿지(280)의 비지 상태와 관련한 정보를 수신하도록 역순환되어야 한다. 각각의 브릿지 FPGA상의 FMBUSY1_I 포트(293)는 체인내의 후행 FPGA로부터 FMBUSY 신호를 수신한다. 다음, 이 신호는 FMBUSY1_O 포트(292)를 이용하여 각각의 FPGA로부터 업스트림으로 또한 전달된다.
FMBUSY 신호는 CRM 6 그룹내의 ASIC(291-296)으로 통신되어, ASIC이 다른 테스트 자원들과 동기화를 유지하도록 할 필요가 있다. 일 실시예로, 이후에 논의되는 것처럼, 브릿지 FPGA, 즉, FPGA(276)으로부터 ASIC, 즉, ASIC(291)으로 전송된 신호 IFMBUSY(250)는 브릿지 FPGA로부터 ASIC으로 FMBUSY 신호를 운반하여, 이러한 동기화가 발생하게 한다. 신호 그룹(255)은 브릿지(276)와 ASIC(291) 사이에 교환된 신호 집합을 복제한다. 또한, ASIC으로 통신된 ISYNCSTART(252) 신호는 이러한 동기화를 도울 수 있다. 따라서, 모든 브릿지는 ISYNCSTART 신호와 IFMBUSY 신호를 그들 각자의 연결된 ASIC으로 통신한다.
일 실시예로, ASIC은 다른 패턴의 실행을 계속하기 전에 IFMBUSY 신호가 표명해제되기를 기다리는 동안 JBF 명령어로 불리는 특수 동작 코드(op-코드)를 실행할 수 있다. 다시 말해서, ASIC이 FMBUSY가 표명되게 할 비동기 동작을 개시할 때, 이것은 JBF 명령어를 실행하고, 이것은 후속 명령어에 대한 제어를 전달하기 전에 ASIC으로 복귀하는 IFMBUSY 신호가 표명해제되기를 대기할 것이다. 추가적으로, CRM의 모든 ASIC은 신규 테스트 패턴이 실행될 때 그들이 동기화된 채로 유지되도록 그들 각자의 JBF 명령어를 하나의 클록 주기내에 빠져나오는 것이 필요하다.
FMBUSY 신호는 복수의 비동기 이벤트 중 어떤 것의 결과로서 표명될 수 있는데, 그 예는 도 4를 참조하여 설명될 것이다. 이벤트의 각각은 전형적으로 CRM 그룹내의 ASIC에 의해 개시되고, 미확정된 시간이 걸린다. FMBUSY 신호는 비동기 이벤트를 제어하고 있는 브릿지 FPGA 내부의 로직에 의해 발생된다. FMBUSY 신호는 제어된 방식으로 ASIC으로 다시 분산되며, 각각의 ASIC 내부의 프로그램으로 하여금 모든 ASIC이 특정 동작을 완료하고 테스트 프로그램을 계속할 준비가 될때까지 대기하게 한다. 이로써 모든 ASIC내의 프로그램은 서로 정렬을 유지한다.
CRM은 소프트웨어 프로그램가능하며, 일 실시예로 브릿지 FPGA는 시스템으로 하여금 몇 개의 CRM 중 어떤 하나로 프로그램되게 하는 회로를 포함한다. CRM에 따라서(예컨대, 1, 2, 3, 4, 6, 12 등), 브릿지 FPGA는 동기 신호, 예컨대 ISYNCSTART와 IFMBUSY를 CRM 그룹내의 각자의 ASIC으로 발생할 것이고, 이로써 CRM 그룹 내부의 ASIC의 모든 동작들이 정렬된 채로 유지된다.
도 3은 본 발명의 일 실시예에 따라 도 1의 브릿지 FPGA 모듈의 블록도를 예시한다. 전술한 것처럼, 브릿지 FPGA(350)는 일 실시예로 2개의 ASIC 모듈(352)에 연결될 것이다. 테스트 데이터는 ASIC(352)으로부터 수신되고, FPGA(350)에의해 전달되며, PCI 버스 모듈(360)을 통해 테스트 사이트 제어기(TSC;Test Site Controller)(354)로 전송된다.
일 실시예로, 임의의 연결된 DUT로부터 판독될 것으로 예상되는 데이터를 저장하기 위해 버퍼 메모리(BM) 모듈(364)이 이용될 수 있다. BM 모듈(364)로부터의 이러한 예상 데이터는 연결된 ASIC으로 전송되고, 여기서 인입 DUT로부터의 데이터와 비교되어, DUT에서의 장애 포인트(fail point)를 식별한다. ECR(error catch RAM) 모듈(362)은 ASIC(352)으로부터의 장애 데이터를 처리한다. 최종 데이터는 장애 리스트에 형성되고, 이 장애 리스트는 DMA(Direct Memory Access)를 이용해 TSC(354)로 전달된다.
도 6을 참조하여 추가로 설명되는 것처럼, 페이지 이동(page transfer)이 진행중이거나 또는 다음 이동을 위한 여유가 충분하지 않은 동안에는, FMBUSY 신호가 특히 ASIC(352)과 ECR 모듈(362) 사이, 또는 ASIC(352)과 BM 모듈(364) 사이의 패턴 이동(pattern transfer)을 차단하기 위해 이용될 수 있다.
도 4는 FPGA 하프-브릿지에 대한 블록도를 예시하며, 여기서 내부에서 발생된 동기 신호는 본 발명의 일 실시예에 따라 CRM 그룹내에서 복수의 브릿지 FPGA와 ASIC의 동작을 동기화하는데 이용된다. 일 실시예로, 각각의 브릿지 PFGA(430)는 두 개의 하프-브릿지(424, 426)를 포함하며, 여기서 각각의 하프-브릿지는 ASIC에 연결되어 제어한다. 브릿지 FPGA가 내부적으로 두 개로 쪼개지게 하는 것은 홀수 CRM 그룹, 예컨대 CRM 3을 허용하는데, 여기서 ASIC 중 두 개는 풀-브릿지(full bridge) FPGA에 연결되고, 세번째 ASIC은 하프-브릿지에 연결된다.
FMBUSY 동기 신호는 FMBUSY0_I 입력 포트(406)를 통해 하프-브릿지(426)에 수신된다. 다음, FMBUSY 동기 신호는 AND 게이트(460)를 통해 전송되고, 여기서 AND 게이트(460)는 CRM 신호(462)에 의해 제어된다. CRM 신호(462)는 선택 CRM 신호(413)와 연계하여 CRM 그룹을 기술한다. 하프-브릿지(426)는 FMBUSY0_O 출력 포트(408)를 통해 조합된 FMBUSY 신호를 전송하기 전에 OR 게이트(418)를 이용하여 기여 입력들(414-417)을 포트(406)를 통해 수신된 인입 FMBUSU 신호와 논리곱함으로써 비지 신호를 조합한다. 상기 기여 입력들의 일부 예로서, ECR 비지 신호(414), BM xfer 비지 신호(415) 및 플래시 ctr 판독 신호(416)를 들 수 있다. 이들은 비동기 동작의 개시를 지시하기 위해 ASIC에서 표명되어 각자의 하프-브릿지로 통신되는 플래그의 예들이다. 그러나 FMBUSY 신호가 표명될 필요가 있는 많은 다른 경우들이 존재함을 유의해야 한다.
조합된 FMBUSY 신호는 CRM내의 다른 연결 브릿지 FPGA를 통해 분산되고, 다시 순환되어 FMBUSY1_I 포트(410)를 통해 하프-브릿지(426)에 의해 수신되기 전에 체인에서 더 아래쪽에 있는 다른 FPGA의 비지 상태와 조합된다. 이후, FMBUSY 신호는 FMBUSY1_O 포트(404)를 통해 체인의 더 위쪽으로 전달될 수 있다. 달리 말하면, 브릿지 FPGA는 모든 기여 입력분들을 논리합함으로써 비지 신호를 조합한다. 그 결과는 FMBUSY0 체인을 이용하여 다음 브릿지로 전달되고, 최종 브릿지는 FMBUSY1 체인을 이용하여 그 결과를 전달한다.
전술한 것처럼, FMBUSY 신호는 ASIC에 의해 각각 개시되는 다중 이벤트에 응답하여 표명될 수 있다. 테스트 프로그램은 ASIC에 의해 실행되는 패턴 시리즈를 포함한다. 모든 테스트 프로그램은 ASIC에 의해 실행되는 패턴 중 하나에 의해 트리거된다. 가끔 ASIC은 비동기이거나 미확정된 시간이 걸리는 패턴을 실행한다. FMBUSY 신호는 비동기 이벤트를 제어하는 브릿지 FPGA 내부의 로직에 의해 발생된다. 예를 들어, 이것은 패턴에 응답하여 BM 모듈(364)로부터의 버퍼 메모리가 ASIC에 로드되는 ASIC에 의해 실행된다. 그러나, 이것은 비동기 동작이고 실시간으로 행해지지 않는다. 그 결과, ASIC으로부터의 패턴 지속성(pattern continuation)은 도 4에 도시된 것과 같은 BM xfer 비지 신호(415)를 표명함으로써 이동이 완료될 때까지 중지되고, 이것은 결과적으로 OR 게이트(418)의 출력에서 하프-브릿지(426) 내부에 FMBUSY 신호를 표명한다. CRM 내부의 상이한 브릿지 FPGA는 상이한 시간에 BM 모듈(364)로부터 각자의 ASIC으로의 데이터 로딩을 마치므로, 테스트 프로그램의 리마인더(reminder)를 계속하기 전에 FMBUSY 신호를 이용하여 패턴이 다시 동기 상태가 되게 하는 것이 필요하다.
또한, ASIC은 장애 데이터를 브릿지 FPGA로 전달하는 패턴을 실행한다. 전술한 것처럼, 브릿지 FPGA 내부의 ECR 모듈(362)은 ASIC(352)으로부터 장애 데이터를 처리한다. 페이지 이동이 진행중이거나 또는 다음 이동을 위한 여유분이 충분하지 않은 동안 지속하는 ASIC으로부터 패턴을 차단하기 위해서 ECR 비지 신호(414)가 FMBUSY 신호를 표명하는데 이용된다. 그러므로 ECR 비지 신호(414)는 ASIC으로부터 브릿지로의 전달 동안 FMBUSY 신호를 표명하고, 장애 데이터의 완전한 다음 페이지를 수용하기 위해 ECR 파이프라인의 장애 버퍼에 충분한 여유분이 있을 때까지 FMBUSY를 표명된 채로 유지시킨다.
일 실시예로, ASIC은 플래시 카운터(Flash Counter)를 포함하는데, 이것은 테스트 특정 카운터(test specific counter)이다. 이것은 브릿지 FPGA를 ASIC에 연결하는 비교적 저속인 레지스터 액세스 버스를 이용하여 재판독(read back)해낼 수 있다. 이 버스의 타이밍은 기간이 정해지지 않을 수 있다. 플래시 카운터 값은 즉시 재판독될 수 있고, 테스트 패턴내에서 사용자가 프로그램가능한 포인트에서 트리거될 수 있다. 판독된 값이 안정하다는 것을 보장하기 위해서, ASIC에 의해 실행중인 패턴은 상기 재판독이 완료될 때까지 중지되어야 한다. 따라서, 일 실시예로, 플래시 ctr 판독 신호(416)가 재판독동안 표명될 수 있고, 이것은 결과적으로 FMBUSY 신호를 표명한다. 일단 재판독이 완료되면, ASIC 패턴은 모든 ASIC에 대해 락스텝으로 지속될 수 있게 허용된다.
강제 신호(force signal)(417)는 일 실시예로 테스트 동안에 FMBUSY 신호를 표명하는 진단성 강제 신호일 수 있다.
전술한 것처럼, FMBUSY 신호는 제어된 방식으로 ASIC으로 다시 분산되고, 각각의 ASIC 내부의 프로그램으로 하여금 모든 ASIC이 비동기 혹은 미확정된 시간이 걸리는 동작을 완료하여 테스트 패턴을 지속할 준비가 될 때가지 대기하게 한다. 이런 방법으로, 모든 ASIC내의 프로그램은 서로간에 정렬을 유지한다. 또한, CRM 그룹 내부의 여러 ASIC으로 하여금 테스트 패턴을 실행하기 전에 다른 ASIC과 정렬하게 하는 것은 CRM 그룹 내부에서의 동기화된 동작에 필수적인 전제 조건이다.
FMBUSY 신호는 IFMBUSY 신호(402)를 이용하여 하프-브릿지(426)에 의해 그 연결된 ASIC으로 전달된다. 일 실시예로, 다중화기(440)는 선택 CRM 신호(413)와 연계하여 하프-브릿지(424)가 어떤 CRM 그룹에 속하는지 결정한다. 마찬가지로, 하프-브릿지(424)내의 다중화기와 선택 CRM 신호는 체인내의 다음 하프-브릿지가 어떤 CRM 그룹에 속하는지 결정한다. 다시 말해서, 선택 CRM 신호(413)는 CRM 체인내에서 FMBUSY 신호의 루프백(loopback)이 발생하는 위치를 제어한다.
IFMBUSY 신호(402)는 OR 게이트(418)의 출력에서 FMBUSY 신호를 샘플링하고 플립 플롭(422)을 통해 클록킹한 다음 FMBUSY1 체인을 통해 전달함으로써 발생된다. 그러나 플립 플롭(422)은 오로지 주기적으로 샘플링되므로, CRM내의 모든 ASIC은 동일한 서브 샘플링 주기로 FMBUSY 신호의 갱신값을 수신한다. FMBUSY가 CRM 그룹내의 브릿지 체인을 통해 전달되므로, 신호 전달과 연관된 시간 지연으로 인해 FMBUSY는 CRM 그룹 내부의 모든 테스트 자원에 동시에 도달하지 않는다. 도 4에 도시된 것처럼 카운트-완료 클록 분할기 신호(count-done clock divider signal)(412)를 이용하여, 모든 ASIC이 최대한 하나의 서브 샘플링 주기 내에 FMBUSY 신호 천이를 수신하는 것을 보장하도록 플립 플롭(422)은 언더샘플링된다. 카운트-완료 신호(421)를 발생하는 클록 분할기의 값은 프로그램 가능하며, CRM 체인의 길이에 좌우될 것이다. CRM 체인이 길수록 FMBUSY가 여러 브릿지를 통해 전달되는데 오래 걸리며, 더 높은 카운트 값은 ASIC이 정렬되는 것을 보장하기 위해 필요할 것이다. 일 실시예로, 16 또는 32의 분할기 값이 이용될 수 있은데, 이것은 신호에게 CRM 체인을 한바퀴 돌아 전달되는데 충분한 시간을 허용하도록 적어도 16개 또는 32개의 클록 사이클 각각이 샘플링 FMBUSY 사이에 발생하게 한다.
도 5는 CRM 체인 내부의 모든 브릿지 FPGA와 ASIC가 본 발명의 일 실시예에 따라 락스텝으로 유지하되도록 보장하기 위해서 도 4의 동기 신호가 언더샘플링되는 방법을 보여주는 블록도를 예시한다. 도 5는 도 4와 관련해 설명된 포트와 그 기능이 유사한 FMBUSY0_I 포트(506), FMBUSY0_O 포트(508), FMBUSY1_I 포트(510), FMBUSY1_O 포트(504)를 이용해 FMBUSY 신호가 전달되는 브릿지를 예시한다. 전술한 것처럼, 플립 플롭(530)의 출력은 IFMBUSY 신호가 ASIC에 도달할 때 게이트(gate)하는데 이용된다. 전술한 것처럼, ASIC은 일 실시예로 IFMBUSY 신호가 표명해제되는 것을 대기하는 op-코드 JBF를 실행할 것이다. 모든 ASIC이 그들 각자의 JBF 명령어를 동시에 빠져나오는 것이 중요하다. 따라서, CRM내의 모든 ASIC이 동일한 클록 사이클에서 IFMBUSY의 표명해제에 동작하는 것이 중요하다. 플립 플롭(530)과 마찬가지로, ASIC(526)내의 플립 플롭(512)도 클록 분할기(518)로부터의 값에 기반하여 언더샘플링된다. 플립 플롭(512)의 출력은 패턴 실행을 제어하기 위해 ASIC 내부에서 이용된다. 플립 플롭(512)을 게이트하는 클록 분할기(518)는 플립 플롭(530)을 게이트하는 분할기(536)와 동일한 값으로 프로그램된다. 일 실시예로, 카운터 리셋을 수행함에 있어서 더 많은 유연성을 제공하기 위해 클록 분할기(518)는 하프-브릿지마다 구현된다.
일 실시예로, 전술한 것처럼 FMBUSY 신호가 ASIC에 의해 샘플링되기 전에 적어도 16 또는 32개 클록 사이클이 각기 발생하도록 하기 위해 클록 분할기(518)와 클록 분할기(536)는 모두 16 또는 32의 값으로 프로그램된다. 그러나, 모든 ASIC이 16 또는 32대 클록 사이클 내에서 동일한 사이클로 FMBUSY를 샘플링하도록 하기 위해, 또다른 신호 SYNC_SM(530)이 이용된다. SYNC_SM(530)은 모든 테스터 자원에 대해 공평하게 분산되므로, 이것은 동일한 시간에 모든 ASIC에 도달하고, 따라서 이것은 특히 모든 ASIC이 동일 사이클 클록에 대해 동기화시키는데 이용될 수 있다. SYNC_SM(530)은 분할기(536)를 리셋하는데 브릿지와 함께 이용된다. SYNC_SM 신호(530)는 FPGA를 통해 ISYNCSTART 신호(516)로서 ASIC에 전달되고, 여기서 ISYNCSTART 신호(516)는 분할기(518)의 리셋을 제어하도록 동작가능하다. 따라서, SYNC_SM 신호(530)는 FMBUSY와 연계하여 CRM 그룹 내부의 여러 ASIC을 테스트 패턴을 실행하기 전에 서로에 대해 정렬하는데 이용된다.
FMBUSY 신호와 클록 분할기의 이용이 없다면, ASIC은 신규 테스트 패턴을 시작하기 전에 끝내는 비동기 동작과 관련해 긴 비확정된 주기동안 대기하는 것이 필요할 가능성이 있다. 그러나, 이것은 비효율적이고 일부 경우에는 부정확한데, 예를 들면 비동기 동작이 예측되는 것보다 더 오래 걸리는 경우에는 부정확하다. 그러므로, 본 발명의 실시예들은 상이한 타이밍을 갖는 다중 테스트 프로그램 제어기 유닛 전체에 대해 효율적인 테스트 패턴 조정을 허용한다.
도 6은 본 발명의 일 실시예에 따라 개시된 테스트 사이트 동기화를 수행하는 예시적인 컴퓨터 제어 프로세스의 흐름도를 도시한다. 그러나 본 발명이 흐름도(600)에 제시된 내용으로 제한되는 것은 아니다. 오히려, 당업자에게는 본원에 제시된 개념으로부터 다른 기능적 흐름도 본 발명의 범주와 사상내에 있음이 명확할 것이다. 흐름도(600)는 전술된 예시적인 실시예를 참조하여 계속 설명될 것이지만, 이 방법이 이러한 실시예로 제한되는 것은 아니다.
단계(602)에서, 복수의 테스트 프로그램 제어기와 복수의 브릿지 제어기는 함께 그룹화되어, 조합된 테스트 자원 그룹으로서 동작한다. 전술한 것처럼, 각각의 브릿지 제어기는 테스트 프로그램 제어기의 부분집합을 제어하는데, 예를 들면 각각의 브릿지 FPGA는 도 2에 도시된 것처럼 2개의 ASIC을 제어한다.
단계(604)에서, 조합 테스트 자원 그룹 내부의 테스트 프로그램 제어기에 의해 개시된 각각의 비동기 태스크에 대해 비지 플래그가 표명된다. 이 플래그는 태스크가 완료되지 않은 동안에는 계속 표명되며, 태스크가 완료될 때 표명해제된다.
단계(606)에서, 비지 신호는 테스트 프로그램 제어기로부터 수신된 비지 플래그에 응답하여 브릿지 제어기 중 하나에서 발생된다. 전술한 것처럼, 비지 플래그는 테스트 프로그램 제어기에 의해 개시된 비동기 이벤트에 응답하여 표명된다. 비지 신호는 브릿지 FPGA 내부에 발생되지만, 이것은 각자의 ASIC내에서 개시되었던 비동기 이벤트에 대해 브릿지 FPGA에게 경고하는 연결된 ASIC으로부터 표명 및 수신된 플래그에 응답하여 발생된다. 이러한 비동기 이벤트는 전형적으로 미확정된 시간이 걸리는데, 이것이 비동기 이벤트가 끝난 이후에 ASIC를 다시 동기화시키는데 본 발명의 비지 신호가 필요한 이유이다.
단계(608)에서, 비지 신호, 예컨대 FMBUSY 신호는 제 1 브릿지 제어기로부터 조합 테스트 자원 그룹의 다른 브릿지 제어기로의 하향 스트림으로 직렬로 전송되는데, 여기서 비지 신호는 제 1 브릿지 제어기의 비지 상태를 지시하며, 그리고 비지 신호는 하나의 브릿지 제어기로부터 다른 브릿지 제어기로 전송될 때 제 1 브릿지 제어기로부터의 다운 스트림으로 다른 브릿지 제어기의 비지 상태들을 조합한다. 전술한 것처럼, 브릿지 제어기의 비지 상태는 브릿지 제어기에 연결된 테스트 프로그램 제어기가 비동기 동작을 실행중인지의 여부에 따라 좌우된다.
단계(610)에서, 비지 신호는 조합 테스트 자원 그룹 체인내의 최종 브릿지 제어기로부터 업스트림으로 다시 제 1 브릿지 제어기로 전달된다. 모든 브릿지 제어기의 각자의 비지 상태와 관련한 정보는 비지 신호에 반영되고, 이 정보를 체인의 상향방향으로 전달하는 것은 체인에서 추가의 업스트림으로 브릿지 제어기로 하여금 체인내의 모든 브릿지 제어기의 비지 상태에 관한 정보를 수신하게 한다.
단계(612)에서, 비지 신호는 브릿지 제어기에 연결된 테스트 프로그램 제어기를 향해 하향으로 다시 전송되고, 비지 신호로부터의 정보는 동작과 테스트 프로그램 제어기의 프로그램 흐름을 동기화하는데 이용되므로, 제어기들은 DUT 테스트 프로그램을 동기화된 방식으로 계속 실행할 수 있다. 일 실시예로, 비지 신호의 표명해제는 테스트 프로그램 실행을 동기화된 방식으로 재개하기 위해 테스트 프로그램 제어에 의해 이용된다.
이와 같이 본 발명에 따른 실시예가 설명되었다. 본 개시 내용은 특정 실시예에서 설명되었지만, 본 발명이 이러한 실시예로 제한되는 것처럼 해석되어서는 안 되며, 그 보다는 이하의 청구범위에 따라 해석되어야 함을 인지해야 한다.
114, 116, 118 테스트 사이트 120 핀 전자장치 I/O 모듈
122, 123, 152, 276, 278, 280, 350, 430 FPGA
148 테스트 사이트 제어기 모듈
150 테스트 프로그램 제어기(테스트 프로세서)
352 ASIC 354 테스트 사이트 제어기(TSC)
360 PCI 버스 모듈 362 ECR(error catch RAM) 모듈
364 메모리 모듈

Claims (24)

  1. 자동 테스트 장비(ATE;automated test equipment)를 이용하여 테스트 사이트 동기화(test site synchronization)를 수행하는 방법으로서,
    제 1 브릿지 제어기(bridge controller)를 이용하여 복수의 테스트 프로그램 제어기를 제어하는 단계―각각의 테스트 프로그램 제어기는 복수의 비동기 이벤트(multiple asynchronous events)를 개시할 수 있음―와,
    테스트 프로그램 제어기에 의해 개시되는 비동기 이벤트에 대해, 상기 비동기 이벤트가 아직 완료되지 않은 동안에는 비지 플래그(busy flag)를 표명하고, 상기 비동기 이벤트가 완료될 때에는 상기 비지 플래그를 표명해제(de-asserting)하는 단계―상기 비동기 이벤트는 미확정된 시간(indeterminate amount of time)을 필요로 하는 태스크에 대응함―와,
    상기 복수의 테스트 프로그램 제어기 중 임의의 테스트 프로그램 제어기로부터 비지 플래그를 수신하는 것에 응답하여 상기 제 1 브릿지 제어기에서 비지 신호를 생성하는 단계―상기 비지 신호는 상기 복수의 테스트 프로그램 제어기 중 임의의 테스트 프로그램 제어기가 비지 플래그를 표명하는 동안에 표명된 채로 유지됨―와,
    상기 복수의 테스트 프로그램 제어기로 상기 비지 신호를 송신하는 단계―상기 테스트 프로그램 제어기는 상기 비지 신호를 이용하여 동작 및 프로그램 흐름을 동기화함―를 포함하는
    방법.
  2. 제 1 항에 있어서,
    상기 제 1 브릿지 제어기에 연결된 복수의 브릿지 제어기로 상기 비지 신호를 송신하는 단계를 더 포함하되,
    상기 비지 신호는 상기 복수의 브릿지 제어기와 상기 제 1 브릿지 제어기 사이에서 동작을 동기화하는데 이용되며, 상기 복수의 브릿지 제어기와 상기 제 1 브릿지 제어기는 함께 그룹화되어 단일 자원(a single resource)으로서 동작하는
    방법.
  3. 제 1 항에 있어서,
    분할기 모듈을 이용하여 상기 비지 신호를 언더샘플링(under-sampling)하는 단계―상기 제 1 브릿지 제어기는 분할기 모듈을 포함함―와,
    상기 비지 신호의 언더샘플링된 출력을 상기 제 1 브릿지 제어기로부터 상기 복수의 테스트 프로그램 제어기로 전달하는 단계를 더 포함하되,
    상기 비지 신호의 언더샘플링된 출력은 상기 복수의 테스트 프로그램 제어기 사이에서 동작 및 프로그램 흐름을 동기화하도록 동작 가능한
    방법.
  4. 제 1 항에 있어서,
    브릿지 제어기는 필드 프로그램가능 게이트 어레이(FPGA;Field Programmable Gate Array) 장치를 포함하는
    방법.
  5. 제 1 항에 있어서,
    테스트 프로그램 제어기는 주문형 반도체(ASIC;Application Specific Integrated Circuit)를 포함하는
    방법.
  6. 제 1 항에 있어서,
    상기 비동기 이벤트는 버퍼 메모리를 테스트 프로그램 제어기로 로딩하는 것, 테스트 프로그램 제어기에 의해 브릿지 제어기 내의 레지스터로부터 비동기 판독하는 것 및 연결된 피시험 장치(DUT;device under test)로부터 장애 데이터(fail data)를 처리하는 것으로 이루어진 그룹으로부터 선택되는
    방법.
  7. 컴퓨터 시스템에 의해 실행될 경우 상기 컴퓨터 시스템으로 하여금 자동 테스트 장비(ATE)를 이용하여 테스트 사이트 동기화를 수행하는 방법을 수행하게 하는 컴퓨터 실행가능 명령어가 저장된 컴퓨터 판독가능 저장 매체로서,
    상기 방법은
    제 1 브릿지 제어기를 이용하여 복수의 테스트 프로그램 제어기를 제어하는 단계―각각의 테스트 프로그램 제어기는 복수의 비동기 이벤트를 개시할 수 있음―와,
    테스트 프로그램 제어기에 의해 개시되는 비동기 이벤트에 대해, 상기 비동기 이벤트가 아직 완료되지 않은 동안에는 비지 플래그를 표명하고, 상기 비동기 이벤트가 완료될 때에는 상기 비지 플래그를 표명해제하는 단계―상기 비동기 이벤트는 미확정된 시간을 필요로 하는 태스크에 대응함―와,
    상기 복수의 테스트 프로그램 제어기 중 임의의 테스트 프로그램 제어기로부터 비지 플래그를 수신하는 것에 응답하여 상기 제 1 브릿지 제어기에서 비지 신호를 생성하는 단계―상기 비지 신호는 상기 복수의 테스트 프로그램 제어기 중 임의의 테스트 프로그램 제어기가 비지 플래그를 표명하는 동안에 표명된 채로 유지됨―와,
    상기 복수의 테스트 프로그램 제어기로 상기 비지 신호를 송신하는 단계―상기 테스트 프로그램 제어기는 상기 비지 신호를 이용하여 동작 및 프로그램 흐름을 동기화함―를 포함하는
    컴퓨터 판독가능 저장 매체.
  8. 제 7 항에 있어서,
    상기 방법은 상기 제 1 브릿지 제어기에 연결된 복수의 브릿지 제어기로 상기 비지 신호를 송신하는 단계를 더 포함하되,
    상기 비지 신호는 상기 복수의 브릿지 제어기와 상기 제 1 브릿지 제어기 사이에서 동작을 동기화하는데 이용되며, 상기 복수의 브릿지 제어기와 상기 제 1 브릿지 제어기는 함께 그룹화되어 단일 자원으로서 동작하는
    컴퓨터 판독가능 저장 매체.
  9. 제 7 항에 있어서,
    상기 방법은
    분할기 모듈을 이용하여 상기 비지 신호를 언더샘플링하는 단계―상기 제 1 브릿지 제어기는 분할기 모듈을 포함함―와,
    상기 비지 신호의 언더샘플링된 출력을 상기 제 1 브릿지 제어기로부터 상기 복수의 테스트 프로그램 제어기로 전달하는 단계를 더 포함하되,
    상기 비지 신호의 언더샘플링된 출력은 상기 복수의 테스트 프로그램 제어기 사이에서 동작 및 프로그램 흐름을 동기화하도록 동작 가능한
    컴퓨터 판독가능 저장 매체.
  10. 제 7 항에 있어서,
    브릿지 제어기는 FPGA 장치를 포함하는
    컴퓨터 판독가능 저장 매체.
  11. 제 7 항에 있어서,
    테스트 프로그램 제어기는 ASIC을 포함하는
    컴퓨터 판독가능 저장 매체.
  12. 제 7 항에 있어서,
    상기 비동기 이벤트는 버퍼 메모리를 테스트 프로그램 제어기로 로딩하는 것, 테스트 프로그램 제어기에 의해 브릿지 제어기 내의 레지스터로부터 비동기 판독하는 것 및 연결된 DUT로부터 장애 데이터를 처리하는 것으로 이루어진 그룹으로부터 선택되는
    컴퓨터 판독가능 저장 매체.
  13. 자동 테스트 장비(ATE)를 이용하여 테스트 사이트 동기화를 수행하는 방법으로서,
    복수의 테스트 프로그램 제어기와 복수의 브릿지 제어기를 조합된 테스트 자원(combined test resource)으로서 동작하도록 그룹화하는 단계―각각의 브릿지 제어기는 상기 복수의 테스트 프로그램 제어기의 부분집합을 제어하고, 상기 복수의 브릿지 제어기는 체인(chain)으로서 순차적으로 함께 연결됨―와,
    제 1 브릿지 제어기에 연결된 테스트 프로그램 제어기로부터 수신된 비지 플래그에 응답하여 상기 제 1 브릿지 제어기에서 제 1 비지 신호를 생성하는 단계―상기 비지 플래그는 상기 테스트 프로그램 제어기에 의해 개시된 비동기 이벤트에 의해 표명되고, 각각의 비동기 이벤트는 미확정된 시간을 필요로 하는 태스크에 대응함―와,
    상기 제 1 브릿지 제어기로부터 다운스트림으로 순차적으로 상기 조합된 테스트 자원 내의 나머지 브릿지 제어기로 상기 제 1 비지 신호를 송신하는 단계―상기 제 1 비지 신호는 상기 복수의 브릿지 제어기의 각각의 비지 상태에 관한 정보를 수집함―와,
    체인 내의 최종 브릿지 제어기로부터 업스트림으로 상기 제 1 브릿지 제어기로 제 2 비지 신호를 전달하는 단계―상기 제 2 비지 신호는 상기 제 1 비지 신호로부터 생성되고, 상기 제 2 비지 신호는 상기 복수의 브릿지 제어기의 각각의 개별 비지 상태에 관한 조합된 정보를 포함하며, 상기 제 2 비지 신호는 상기 복수의 브릿지 제어기의 각각에 대해 업스트림으로 도중에 상기 조합된 정보를 분산함―와,
    상기 제 2 비지 신호를 상기 복수의 브릿지 제어기의 각각으로부터 상기 조합된 테스트 자원 내의 각각의 테스트 프로그램 제어기로 송신하는 단계와,
    상기 제 2 비지 신호를 이용하여 상기 조합된 테스트 자원 내의 상기 복수의 테스트 프로그램 제어기의 동작을 동기화하는 단계를 포함하는
    방법.
  14. 제 13 항에 있어서,
    분할기 모듈을 이용하여 상기 제 2 비지 신호를 언더샘플링하는 단계―상기 복수의 브릿지 제어기의 각각은 분할기 모듈을 포함함―와,
    상기 제 2 비지 신호의 언더샘플링된 출력을 각각의 브릿지 제어기로부터 테스트 프로그램 제어기로 전달하는 단계를 더 포함하되,
    상기 제 2 비지 신호의 언더샘플링된 출력은 상기 동기화를 수행하도록 동작 가능한
    방법.
  15. 제 14 항에 있어서,
    상기 동기화를 수행하기 위하여 상기 제 2 비지 신호와 함께 전역적 동기화 신호(global synchronization signal)를 이용하는 단계를 더 포함하되,
    상기 전역적 동기화 신호는 상기 복수의 테스트 프로그램 제어기의 각각으로 전달되고, 상기 전역적 동기화 신호는 상기 복수의 테스트 프로그램 제어기의 각각 및 상기 복수의 브릿지 제어기에 대응하는 각각의 하프-브릿지(half-bridge) 내의 각자의 분할기 모듈을 공통 클록 사이클로 리셋하도록 동작가능하며, 상기 전역적 동기화 신호는 상기 복수의 브릿지 제어기의 각각으로 전달되는
    방법.
  16. 제 13 항에 있어서,
    상기 동기화에 응답하여 상기 복수의 테스트 프로그램 제어기에 연결된 복수의 DUT 상에서 동기화된 방식으로 테스트 프로그램을 실행하는 단계를 더 포함하는
    방법.
  17. 제 13 항에 있어서,
    브릿지 제어기는 FPGA 장치를 포함하는
    방법.
  18. 제 13 항에 있어서,
    테스트 프로그램 제어기는 ASIC을 포함하는
    방법.
  19. 제 13 항에 있어서,
    상기 조합된 테스트 자원 내의 테스트 프로그램 제어기의 개수는 프로그램가능하며, 1, 2, 3, 4, 6 및 12로 구성된 그룹으로부터 선택될 수 있는
    방법.
  20. 자동 테스트 장비(ATE)를 이용하여 테스트 사이트 동기화를 수행하는 시스템으로서,
    복수의 연결된 피시험 장치(DUT) 상에서 테스트 프로그램을 실행하도록 동작가능한 복수의 테스트 프로그램 제어기와,
    복수의 브릿지 제어기를 포함하되,
    상기 복수의 브릿지 제어기와 상기 복수의 테스트 프로그램 제어기는 조합된 테스트 자원으로서 동작하도록 함께 그룹화되고, 상기 복수의 브릿지 제어기는 체인으로서 순차적으로 함께 연결되며, 각각의 브릿지 제어기는 상기 복수의 테스트 프로그램 제어기의 부분집합을 제어하고,
    상기 복수의 브릿지 제어기의 각각은
    각각의 브릿지 제어기에 연결된 테스트 프로그램 제어기로부터 수신된 비지 플래그에 응답하여 비지 신호를 생성―상기 비지 플래그는 상기 테스트 프로그램 제어기에 의해 개시된 비동기 이벤트에 의해 표명되고, 각각의 비동기 이벤트는 미확정된 시간을 필요로 하는 태스크에 대응함―하고,
    제 1 비지 신호를 다운스트림으로 상기 체인 내에서 후속하는 브릿지 제어기로 직렬로 송신―상기 제 1 비지 신호는 상기 복수의 브릿지 제어기의 각각의 비지 상태에 관한 정보를 수집함―하고,
    제 2 비지 신호를 업스트림으로 상기 체인 내에서 앞선 브릿지 제어기로 전달―상기 제 2 비지 신호는 상기 제 1 비지 신호로부터 생성되고, 상기 제 2 비지 신호는 상기 복수의 브릿지 제어기의 각각의 개별 비지 상태에 관한 조합된 정보를 포함하며, 상기 제 2 비지 신호는 상기 복수의 브릿지 제어기의 각각에 대해 업스트림으로 도중에 상기 조합된 정보를 분산함―하고,
    상기 제 2 비지 신호를 연결된 테스트 프로그램 제어기로 송신―상기 제 2 비지 신호는 상기 복수의 테스트 프로그램 제어기의 동작을 동기화하도록 동작가능함―하도록 동작가능한
    시스템.
  21. 제 20 항에 있어서,
    상기 제 2 비지 신호는 제 2 클록 분할기 회로를 이용하여 상기 제 1 비지 신호를 언더샘플링함으로써 생성되는
    시스템.
  22. 제 21 항에 있어서,
    상기 복수의 테스트 프로그램 제어기의 각각은 또한 제 1 클록 분할기 회로를 이용하여 상기 제 2 비지 신호를 언더샘플링함으로써 제 3 비지 신호를 생성하도록 동작가능하고, 상기 제 3 비지 신호는 상기 테스트 프로그램 제어기의 동작을 상기 조합된 테스트 자원 내의 다른 테스트 프로그램 제어기와 동기화하도록 동작가능한
    시스템.
  23. 제 22 항에 있어서,
    상기 제 1 클록 분할기 회로와 상기 제 2 클록 분할기 회로는 상기 언더샘플링의 크기를 제어하도록 프로그래밍되게 동작가능한
    시스템.
  24. 제 20 항에 있어서,
    상기 비동기 이벤트는, 버퍼 메모리를 테스트 프로그램 제어기로 로딩하는 것, 테스트 프로그램 제어기에 의해 브릿지 제어기 내의 레지스터로부터 비동기 판독하는 것 및 연결된 DUT로부터 장애 데이터를 처리하는 것으로 이루어진 그룹으로부터 선택되는
    시스템.
KR1020140160551A 2013-11-19 2014-11-18 유연성 있는 테스트 사이트 동기화 KR102148043B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/084,028 2013-11-19
US14/084,028 US9267965B2 (en) 2013-11-19 2013-11-19 Flexible test site synchronization

Publications (2)

Publication Number Publication Date
KR20150058041A KR20150058041A (ko) 2015-05-28
KR102148043B1 true KR102148043B1 (ko) 2020-08-25

Family

ID=53172677

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140160551A KR102148043B1 (ko) 2013-11-19 2014-11-18 유연성 있는 테스트 사이트 동기화

Country Status (2)

Country Link
US (1) US9267965B2 (ko)
KR (1) KR102148043B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9453883B2 (en) * 2014-03-04 2016-09-27 Advantest Corporation Distributed power supply architecture in automatic test equipment
CN111061526B (zh) * 2019-10-12 2023-12-01 天航长鹰(江苏)科技有限公司 自动化测试方法、装置、计算机设备及存储介质
US11032725B1 (en) * 2020-03-18 2021-06-08 Litepoint Corporation System and method for testing data packet signal transceivers with a tester using externally initiated and self-terminating test control sequences
US11989145B2 (en) * 2022-02-14 2024-05-21 Infineon Technologies Ag Write busy signaling for interface structures

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009245485A (ja) 2008-03-28 2009-10-22 Advantest Corp 試験装置および試験方法
JP2013117540A (ja) 2013-02-26 2013-06-13 Seiko Epson Corp インターフェースボード

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6032271A (en) * 1996-06-05 2000-02-29 Compaq Computer Corporation Method and apparatus for identifying faulty devices in a computer system
KR20070018078A (ko) * 2004-05-21 2007-02-13 주식회사 아도반테스토 비표준 인스트루먼트 카드를 테스트 시스템에 적응시키는캐리어 모듈
US7506228B2 (en) * 2006-02-14 2009-03-17 Atmel Corporation Measuring the internal clock speed of an integrated circuit
US8145805B2 (en) * 2008-06-09 2012-03-27 Emulex Design & Manufacturing Corporation Method for re-sequencing commands and data between a master and target devices utilizing parallel processing
KR20100124399A (ko) * 2009-05-19 2010-11-29 (주)티에스이 분산 제어 방식 반도체 소자 테스트 장치
US8463865B2 (en) * 2010-03-09 2013-06-11 Texas Instruments Incorporated Video synchronization with distributed modules

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009245485A (ja) 2008-03-28 2009-10-22 Advantest Corp 試験装置および試験方法
JP2013117540A (ja) 2013-02-26 2013-06-13 Seiko Epson Corp インターフェースボード

Also Published As

Publication number Publication date
KR20150058041A (ko) 2015-05-28
US9267965B2 (en) 2016-02-23
US20150137839A1 (en) 2015-05-21

Similar Documents

Publication Publication Date Title
JP4885316B2 (ja) 試験装置および試験方法
US9116785B2 (en) Embedded tester
US5103450A (en) Event qualified testing protocols for integrated circuits
US5001713A (en) Event qualified testing architecture for integrated circuits
TWI403744B (zh) 測試資料處理系統之方法及裝置
KR102148043B1 (ko) 유연성 있는 테스트 사이트 동기화
US8769360B2 (en) Dynamic detection and identification of the functional state of multi-processor cores
EP2434404B1 (en) Method and arrangement for streaming data profiling
JPH0548494B2 (ko)
KR20140091719A (ko) 설정가능한 인터페이스를 가진 테스트 기기
CN110954808A (zh) 具有模拟测试总线的有限引脚测试接口
US20150149842A1 (en) Test device and method using a separate control module for test
US20130097462A1 (en) Embedded logic analyzer
US6260166B1 (en) Observability register architecture for efficient production test and debug
US6715093B1 (en) Method for triggering an asynchronous event by creating a lowest common denominator clock
US20110026664A1 (en) Counter/Timer Functionality in Data Acquisition Systems
JPH11272627A (ja) パイプライン型マルチプロセッサシステム
EP0382360B1 (en) Event qualified testing architecture for integrated circuits
US20120278027A1 (en) System for performing electrical characterization of asynchronous integrated circuit interfaces
CN116594830B (zh) 硬件仿真工具、调试方法和存储介质
US20040205404A1 (en) Integrated circuit
US11506710B1 (en) Method for testing a circuit system and a circuit system thereof
JP4792541B2 (ja) 試験装置および試験方法
US20210173989A1 (en) Simulation signal viewing method and system for digital product
US20210173994A1 (en) Method and system for viewing simulation signals of a digital product

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant