KR20090077822A - 시험장치 및 제어방법 - Google Patents

시험장치 및 제어방법 Download PDF

Info

Publication number
KR20090077822A
KR20090077822A KR1020097009710A KR20097009710A KR20090077822A KR 20090077822 A KR20090077822 A KR 20090077822A KR 1020097009710 A KR1020097009710 A KR 1020097009710A KR 20097009710 A KR20097009710 A KR 20097009710A KR 20090077822 A KR20090077822 A KR 20090077822A
Authority
KR
South Korea
Prior art keywords
unit
test
control
command
control processor
Prior art date
Application number
KR1020097009710A
Other languages
English (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
Priority claimed from US11/546,929 external-priority patent/US7502708B2/en
Priority claimed from US11/546,926 external-priority patent/US7340364B1/en
Application filed by 가부시키가이샤 어드밴티스트 filed Critical 가부시키가이샤 어드밴티스트
Publication of KR20090077822A publication Critical patent/KR20090077822A/ko

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/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31926Routing signals to or from the device under test [DUT], e.g. switch matrix, pin multiplexing
    • 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/2832Specific tests of electronic circuits not provided for elsewhere
    • G01R31/2834Automated test systems [ATE]; using microprocessors or computers
    • 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/2832Specific tests of electronic circuits not provided for elsewhere
    • G01R31/2836Fault-finding or characterising
    • G01R31/2837Characterising or performance testing, e.g. of frequency response
    • 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/2832Specific tests of electronic circuits not provided for elsewhere
    • G01R31/2836Fault-finding or characterising
    • G01R31/2846Fault-finding or characterising using hard- or software simulation or using knowledge-based systems, e.g. expert systems, artificial intelligence or interactive algorithms
    • 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/2851Testing of integrated circuits [IC]
    • G01R31/2882Testing timing characteristics
    • 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/31724Test controller, e.g. BIST state machine
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)

Abstract

피시험 디바이스를 시험하는 시험장치로, 피시험 디바이스를 시험하는 시험 프로그램을 실행하는 제어 프로세서와, 피시험 디바이스에 접속되어 제어 프로세서의 지시에 따라 피시험 디바이스를 시험하는 시험유닛과, 제어 프로세서 및 시험유닛에 접속되어 제어 프로세서에서 시험유닛에 송신되는 제어명령을 중단하는 중단부를 구비하고, 중단부는 제어 프로세서에서 시험유닛에 할당된 어드레스에 대해 입력되어야 하는 제어명령을 버퍼하는 버퍼부와, 제어 프로세서에서 수신한 제어명령을 시험유닛에 대해 송신해야 하는 타이밍을 기억하는 타이밍 기억부와, 타이밍 기억부에 기억된 타이밍이 도달함에 따라 버퍼부에 버퍼된 제어명령을 시험유닛에 송신하는 버퍼제어부를 갖는 시험장치를 제공한다.

Description

시험장치 및 제어방법{TESTER AND CONTROL METHOD}
본 발명은 시험장치 및 제어방법에 관한 것이다. 특히, 본 발명은 피시험 디바이스를 시험하는 시험유닛을 제어하기 위해 제어 프로세서에서 시험유닛에 대해 제어용 명령을 송신하는 시험장치 및 제어방법에 관한 것이다. 본 출원은 하기 미국 특허 출원에 관련한다. 문헌의 참조에 의한 조합이 인정되는 지정국에 대해서는 하기 출원에 기재된 내용을 참조해서 본 출원에 조합하며 본 출원의 일부로 한다.
1. 출원번호 11/546,926 출원일 2006년 10월 12일
2. 출원번호 11/546,929 출원일 2006년 10월 12일
시험장치에 구비된 제어 프로세서는 인스톨된 제어 프로그램에 기초해 동작하고 시험유닛에 대해 명령을 송신한다. 이에 의해 시험유닛의 제어, 예를 들면 시험유닛을 적절히 기동시키거나 동작 중의 시험유닛의 설정을 변경할 수 있다.
단, 시험유닛에는 그 사양에 따라서 처리해야 하는 명령의 순서가 정해져 있어 명령의 실행 순서가 그 사양에서 어긋나면 시험유닛이나 피시험 디바이스를 파손시킬 우려가 있다. 이 때문에 프로그래머는 이 사양에 준거하는 순서로 명령을 실행시키도록 제어 프로그램을 작성한다.
또한, 시험유닛에는 그 사양에 따라서 명령을 실행해야 하는 타이밍이 정해 져 있다. 예를 들면, 전압변경 등의 후에는 미리 정해진 기간 대기한 후에 다음 명령을 실행하지 않으면 불안정한 전압이 원인이 되어 시험유닛이 이상동작을 하는 경우가 있다. 이 때문에 프로그래머는 명령을 실행하지 않고 일정 기간 대기하는 명령을 제어 프로그램 중에 적절히 삽입한다.
또한 어떤 명령은 시험유닛이 미리 정해진 상태가 된 타이밍에 실행하도록 정해져 있다. 이와 같은 상태변화를 검출하는 방법으로는 제어 프로세서에 의한 폴링 또는 시험유닛에서 제어 프로세서에 대한 인터럽트 처리를 고려할 수 있다.
또한, 반도체 시험장치에 관한 참고기술로는 특허문헌 1을 참조한다.
[특허문헌1]특개평 11-64450호 공보
일정 기간 대기하는 명령이란, 예를 들면 제어 프로세서 외부의 타이머에 대기 시간을 설정하고 이 타이머에서 제어 프로세서에 대해 인터럽트를 발생시킴으로써 실현할 수 있다. 그 외에도 제어 프로그램 중에서 아이들 루프 등의 불필요한 처리를 시키거나 제어 프로세서를 제어하는 오퍼레이팅 시스템의 기능에 의해 대기 처리를 시킴으로써 실현할 수 있다.
그러나 제어 프로세서가 대기하는 시간은 프로그래머가 상정한 시간과는 달라 지는 경우가 있다. 이는 명령의 실행 타이밍에 편차가 있기 때문이다. 예를 들면 제어 프로세서가 여러 인터럽트 처리를 받아 다른 처리를 행하거나 또는 복수의 태스크를 시분할해서 실행하면 명령의 실행 타이밍이 지연하는 경우가 있다. 그 결과 실행 타이밍의 편차에 의해 명령 실행의 타이밍이 빨라지면 충분한 대기 시간을 확보하지 못하고 다음 처리를 행해서 시험유닛 등을 파손할 우려가 있다.
이와 같은 사태를 피하기 위해 프로그래머는 실제 필요한 대기 시간보다도 충분히 긴 대기 시간을 확보할 수 있도록 제어 프로그램을 작성한다. 그 결과 설정 변경 등에 필요한 시간이 원래 필요한 시간보다도 대폭으로 길어져서 시험 처리 전체의 효율을 저하시킬 우려가 있었다.
또한, 제어 프로세서에 의한 폴링이란 제어 프로세서에서 시험유닛 중의 레지스터를 정기적으로 읽어서 그 값의 변화에 따라 상태 변화를 검출하는 처리를 말한다. 하지만 레지스터로부터의 값의 읽기 처리는 제어 프로세서의 명령 실행과 비교해서 소요시간이 길고 제어 프로세서에 입출력 대기 시간이 발생해 제어 프로세서의 계산 능력을 유효하게 활용할 수 없는 경우가 있었다.
한편, 인터럽트 처리를 실현하려면 각 시험유닛에 인터럽트를 실현하기 위한 기구가 필요하게 되어 시험장치 전체의 설계를 복잡하게 할 우려가 있다. 또한 인터럽트를 신속하게 검출하려면 인터럽트의 유무를 높은 빈도로 확인해야 하며 인터럽트를 제어하는 오퍼레이팅 시스템이 제어 프로세서의 처리부하를 증가시킬 우려가 있다.
이와 같이 시험유닛의 상태 변화를 신속하면서 적절히 검출하려면 제어 프로세서에서는 높은 계산 능력이 요구된다. 이 때문에 복수의 시험유닛를 구비한 시험장치에서도 시험유닛마다 제어 프로세서가 필요하게 되고 시험장치 내에 다수의 제어 프로세서가 탑재되게 된다. 제어 프로세서의 수의 증가는 시험장치나 그 냉각장치의 대형화, 비용 증대 나아가서는 시험장치의 고장 발생율을 증가시키는 원인이 될 수 있다.
여기서, 본 발명의 일 측면에서는 상기 문제를 해결할 수 있는 시험장치 및 제어방법을 제공하는 것을 목적으로 한다. 이 목적은 청구범위의 독립항에 기재된 특징을 조합함으로써 달성된다. 또한, 종속항은 본 발명의 추가적인 유리한 구체예를 규정한다.
즉, 본 발명의 제 1의 형태에 의하면, 피시험 디바이스를 시험하는 시험장치로, 피시험 디바이스를 시험하는 시험 프로그램을 실행하는 제어 프로세서와, 피시험 디바이스에 접속되어 제어 프로세서의 지시에 따라 피시험 디바이스를 시험하는 시험유닛과, 제어 프로세서 및 시험유닛에 접속되어 제어 프로세서에서 시험유닛에 송신되는 제어명령을 중단하는 중단부를 구비하고, 중단부는 제어 프로세서에서 시험유닛에 할당된 어드레스에 대해 입력되어야 하는 제어명령을 버퍼하는 버퍼부와, 제어 프로세서에서 수신한 제어명령을 시험유닛에 대해 송신해야 하는 타이밍을 기억하는 타이밍 기억부와, 타이밍 기억부에 기억된 타이밍이 도달함에 따라 버퍼부에 버퍼된 제어명령을 시험유닛에 송신하는 버퍼제어부를 갖는 시험장치를 제공한다.
본 발명의 제 2의 형태에 의하면, 피시험 디바이스를 시험하는 시험 프로그램을 실행하는 제어 프로세서와, 피시험 디바이스에 접속되어 제어 프로세서의 지시에 따라 피시험 디바이스를 시험하는 시험유닛를 구비하는 시험장치를 제어하는 제어방법으로, 제어 프로세서에서 시험유닛에 할당된 어드레스에 대해 입력되어야 하는 제어명령을 버퍼하고, 제어 프로세서에서 수신한 제어명령을 시험유닛에 대해 송신해야 하는 타이밍을 기억해 타이밍이 도달함에 따라 버퍼된 제어명령을 시험유닛에 송신하는 제어방법을 제공한다.
본 발명의 제 3 형태에서는, 피시험 디바이스를 시험하는 시험장치로, 피시험 디바이스를 시험하는 시험 프로그램을 실행하는 제어 프로세서와, 피시험 디바이스에 접속되어 제어 프로세서의 지시에 따라 피시험 디바이스를 시험하는 시험유닛과, 제어 프로세서 및 시험유닛에 접속되어 제어 프로세서에서 시험유닛에 송신되는 제어명령을 중단하는 중단부를 구비하고, 중단부는 제어 프로세서에서 지정된 시험유닛의 상태를 나타내는 상태 레지스터를 반복해서 읽는 폴링부와, 상태 레지스터의 값이 제어 프로세서에서 지정된 기대치가 됨에 따라 상태 레지스터의 값이 기대치가 된 후에 시험유닛이 처리해야 하는 제어명령을 시험유닛에 송신하는 처리제어부를 갖는 시험장치를 제공한다.
본 발명의 제 4 형태에서는, 피시험 디바이스를 시험하는 시험 프로그램을 실행하는 제어 프로세서와, 피시험 디바이스에 접속되어 제어 프로세서의 지시에 따라 피시험 디바이스를 시험하는 시험유닛를 구비하는 시험장치를 제어하는 제어방법으로, 제어 프로세서에서 지정된 시험유닛의 상태를 나타내는 상태 레지스터를 반복해서 읽어 상태 레지스터의 값이 제어 프로세서에서 지정된 기대치가 됨에 따라 상태 레지스터의 값이 기대치가 된 후에 시험유닛이 처리해야 하는 제어명령을 시험유닛에 송신하는 제어방법을 제공한다.
또한, 상기 발명의 개요는 본 발명의 필요한 특징 전부를 열거한 것이 아니며 이들 특징군의 서브콤비네이션도 발명이 될 수 있다.
이하 발명의 실시형태를 통해 본 발명의 일 측면을 설명하나, 이하의 실시형태는 청구범위의 발명에 한정되는 것이 아니며, 또한 실시형태에서 설명하고 있는 특정한 조합의 전부가 발명의 해결수단에 필수하다고고 한정되지 않는다.
도 1은 시험장치(10)의 전체 구성을 나타낸다. 시험장치(10)는 제어 프로세서(15), 복수의 중단부(20), 복수의 시험유닛(40)을 갖는다. 제어 프로세서(15)는 피시험 디바이스를 시험하는 시험 프로그램(100)을 실행한다. 제어 프로세서(15)는 각각이 다른 시험유닛(40)을 제어하는 복수의 시험 프로그램(100)을 실행해도 된다. 복수의 시험 프로그램(100)의 각각은 멀티태스크, 멀티프로세스 또는 멀티슬레드라 불리는 실행기구를 구비하는 오퍼레이팅 시스템에서 제어 프로세서(15)의 계산기자원을 시분할해서 평행하게 실행되어도 된다.
복수의 시험유닛(40)의 각각은 복수의 피시험 디바이스(50)의 각각에 대응해 구비되어 있다 그리고, 복수의 시험유닛(40)의 각각은 대응하는 피시험 디바이스(50)에 접속되어, 제어 프로세서(15)의 지시에 따라 그 피시험 디바이스(50)를 시험한다. 또한 복수의 시험유닛(40)의 각각은 해당 시험유닛(40)의 상태를 나타내는 상태 레지스터를 갖는다. 예를 들면 복수의 시험유닛(40)의 각각은 제 1의 상태 레지스터의 일 예인 상태 레지스터(400)와, 제 2의 상태 레지스터의 일 예인 상태 레지스터(410)를 갖는다. 도면에는 하나의 시험유닛(40)에만 상태 레지스터(400, 410)를 예시했으나, 다른 각각의 시험유닛(40)도 상태 레지스터를 가지고 있어도 된다. 또한, 복수의 시험유닛(40)의 각각은 시험의 진행에 의한 상태 변화에 따라 해당 시험유닛(40)의 상태를 이들 상태 레지스터에 기억한다.
복수의 중단부(20)의 각각은 복수의 시험유닛(40)의 각각에 대응해 구비되어 있다. 복수의 중단부(20)의 각각은 제어 프로세서(15) 및 대응하는 시험유닛(40)에 접속된다. 또한, 복수의 중단부(20)의 각각은 제어 프로세서(15)에서 대응하는 시험유닛(40)에 송신되는 제어명령을 중단한다. 구체적으로, 중단부(20) 내의 기억영역 및 시험유닛(40) 내의 기억영역은 제어 프로세서(15) 상에서 시험 프로그램(100)이 동작하는 가상적인 어드레스 공간에 맵핑되어 있다. 또한, 제어 프로세서(15)는 시험 프로그램(100) 중의 입력 코멘드를 실행함으로써 이 가상적인 어드레스 공간 즉, 중단부(20) 또는 시험유닛(40)에 대해 입력을 행한다. 또한, 시험유닛(40)에 대한 제어명령이란 예를 들면 이 시험유닛(40)에서 피시험 디바이스(50)에 인가하는 전압의 크기를 설정·변경하는 명령 외에도 시험용 신호의 주파수를 설정·변경하는 명령이나 시험시퀀스의 동작 개시를 지시하는 명령 등이어도 된다.
중단부(20)는 시험유닛(40)에 할당된 어드레스 공간에 대한 입력 데이터에 대해서는 제어 프로세서(15)에서 수취한 대로 시험유닛(40)에 전송한다. 한 편, 중단부(20)는 중단부(20)에 할당된 어드레스 공간에 대한 입력 데이터에 대해서는 그 내용에 따라 해당 중단부(20) 중의 레지스터 또는 메모리 등에 대해 입력처리를 행한다. 중단부(20)는 입력된 내용에 따라 명령 전송의 타이밍을 제어한다. 예를 들면 중단부(20)는 해당 입력 데이터에 이어서 수신한 제어명령 등의 데이터를 해당 입력 데이터에 의해 나타나는 시간 대기한 후에 시험유닛(40)에 대해 송신해도 된다.
이와 같이 본 실시형태에 관한 시험장치(10)는 시험유닛(40)에 대해 코멘드를 송신하는 타이밍을 제어 프로세서(15)와는 별개로 구비된 중단부(20)에 의해 제어한다. 이에 의해 제어 프로세서(15)의 처리 부하를 경감함과 동시에 제어명령송신의 타이밍을 정확하게 제어하는 것을 목적으로 한다.
다음으로, 복수의 중단부(20) 중 어느 하나의 중단부(20)에 대한 기능 구성을 설명한다.
도 2는 중단부(20)의 기능 구성을 나타낸다. 중단부(20)는 처리제어부(30), 버퍼부(200), 타이밍 기억부(210), 조건기억부(220), 폴링부(230)를 가진다. 실장의 일 예로는 버퍼부(200), 타이밍 기억부(210) 및 조건기억부(220)는 레지스터나 메모리와 같은 기억 매체에 의해 실장되어 있으며, 폴링부(230) 및 처리제어부(30)는 시퀀서에 의해 실장되어 있다. 우선, 제어 프로세서(15)가 제어명령의 입력에 앞서 이 제어명령을 시험유닛(40)에 대해 송신해야 하는 타이밍을 시험유닛(40)에 할당된 레지스터에 대해 입력하는 경우의 처리기능을 설명한다. 버퍼부(200)는 해당 중단부(20)에 할당된 어드레스에 대해 제어 프로세서(15)에서 입력되어야 하는 타이밍 값 및 대응하는 시험유닛(40)에 할당된 어드레스에 대해 제어 프로세서(15)에서 입력되어야 하는 제어명령을 순서대로 버퍼한다.
상세하게는 버퍼부(200)는 제어 프로세서(15)에서 수신한 타이밍 값을 입력하는 타이밍 입력 코멘드와, 제어명령을 입력하는 제어명령 입력 코멘드를 순서대로 버퍼한다. 타이밍 입력 코멘드란 예를 들면 중단부(20)에 할당된 어드레스 공간 중의 어드레스 및 해당 레지스터에 입력되어야 하는 타이밍 값의 그룹이다. 한 편, 제어명령 입력 코멘드란 예를 들면 시험유닛(40)에 할당된 어드레스 공간 중의 어드레스 및 해당 레지스터에 입력되야 하는 제어명령의 그룹이다.
타이밍 기억부(210)는 제어 프로세서(15)에서 수신한 제어명령을 시험유닛(40)에 대해 송신해야 하는 타이밍을 기억한다. 이 타이밍은 타이밍 입력 코멘드에 따라 버퍼제어부(35)에 의해 타이밍 값으로 기억되는 것이다. 처리제어부(30)는 버퍼제어부(35)를 갖는다. 버퍼제어부(35)는 상기 타이밍 값의 기억 외에 타이밍 입력 코멘드에 이어서 수신하는 제어명령의 송신 타이밍을 제어한다. 상세하게는 버퍼제어부(35)는 타이밍 기억부(210)에 기억된 타이밍이 도달함에 따라 버퍼부(200)에 버퍼된 제어명령을 대응하는 시험유닛(40)에 대해 송신한다. 이 타이밍 값은 예를 들면 이어서 수신한 제어명령의 송신을 지연시키는 지연량 등이다. 즉, 버퍼제어부(35)는 버퍼부(200)에서 타이밍 입력 코멘드를 꺼냄에 따라 이 타이밍이 도달할 때까지 타이밍 입력 코멘드보다 나중에 수신한 제어명령 입력 코멘드의 처리를 지연시킨다.
다음으로, 제어 프로세서(15)가 시험유닛(40)에 할당된 어드레스 공간 내의 상태 레지스터의 어드레스 및 기대치를 중단부(20)에 할당된 어드레스에 대해 입력한 후 해당 시험유닛(40)에 할당된 레지스터에 제어명령을 입력하는 경우의 처리기능을 설명한다. 조건기억부(220)는 제어 프로세서(15)에서 수신한 시험유닛(40)의 상태를 나타내는 상태 레지스터의 어드레스와, 이 상태 레지스터의 값과 비교되는 기대치를 기억한다. 이들 어드레스 및 기대치는 버퍼제어부(35)에 의해 기억되는 것이다. 즉, 버퍼제어부(35)는 버퍼부(200)에서 상태 레지스터의 어드레스 및 기대치를 입력하는 조건 입력 코멘드를 취득하면 이 어드레스 및 기대치를 조건기억부(220)에 기억한다.
또한, 상태 레지스터의 어드레스란 그 상태 레지스터에 할당된 제어 프로세서(15)에서의 가상적인 어드레스 외에 그 상태 레지스터의 번호, 그 외의 식별정보 등이어도 된다.
폴링부(230)는 제어 프로세서(15)에서 지정된 시험유닛(40)의 상태를 나타내는 상태 레지스터(제어 프로세서(15)의 지정에 따라 상태 레지스터(400) 및 상태 레지스터(410)의 한쪽 또는 양쪽)를 반복해서 읽는다. 상세하게는 폴링부(230)는 버퍼부(200)에서 조건 입력 코멘드를 취득함에 따라 상태 레지스터의 어드레스(즉, 조건기억부(220)에 기억한 어드레스)를 읽기 어드레스로 하는 읽기 코멘드를 시험유닛(40)에 반복해서 발행한다. 처리제어부(30)는 읽은 상태 레지스터의 값이 제어 프로세서(15)에서 지정된 기대치가 됨에 따라 그 상태 레지스터의 값이 그 기대치가 된 후에 시험유닛(40)이 처리해야 하는 제어명령을 시험유닛(40)에 송신한다. 상태 레지스터의 값이 기대치가 된 후에 처리해야 하는 제어명령이란 예를 들면 조건 입력 코멘드보다 나중에 수신한 제어명령 입력 코멘드에 의해 입력되는 명령이다. 즉, 버퍼제어부(35)는 상태 레지스터의 값이 기대치가 됨에 따라 조건 입력 코멘드보다 나중에 수신한 제어명령 입력 코멘드를 시험유닛(40)에 송신한다.
이를 대체해서 또는 이에 부가해서, 버퍼제어부(35)는 상태 레지스터의 값이 기대치가 됨에 따라 제어 프로세서(15)에서 나중에 읽은 제어명령을 송신시켜기 위해서 제어 프로세서에 인터럽트를 발행시켜도 된다. 이 처리는 일련의 시험처리가 종료한 것과 같은 경우에 유효하다. 즉, 예를 들면 버퍼제어부(35)는 제어 프로세서(15)에 대해 인터럽트를 발행해서 제어 프로세서(15)를 재기동시킴으로써 다음 시험을 처음부터 개시할 수 있다.
도 3은, 버퍼제어부(35)의 기능 구성을 나타낸다. 버퍼제어부(35)는 취출부(300), 입력부(310), 검출부(320), 송신부(330)를 갖는다. 취출부(300)는 버퍼부(200)에 버퍼된 입력 코멘드를 순서대로 꺼낸다. 취출부(300)는 입력부(310)에 의한 입력 완료의 통지 또는 송신부(330)에 의한 송신 완료의 통지에 따라서 FIFO방식의 버퍼부(200)의 선두에서 입력 코멘드를 하나 꺼내도 된다. 또한 취출부(300)는 중단부(20)용의 입력 코멘드를 꺼낸 후에 이 입력 코멘드를 버퍼부(200)에서 바로 삭제해도 되고 이 입력 코멘드에 따른 처리의 완료 후에 이 입력 코멘드를 버퍼부(200)에서 삭제해도 된다.
입력부(310)는 본 발명에 관한 타이밍 입력부의 일 예이며, 타이밍 입력 코멘드를 꺼냄에 따라 해당 타이밍을 타이밍 기억부(210)에 기억시킨다. 또한 입력부(310)는 조건 입력 코멘드를 꺼냄에 따라 상태 레지스터의 어드레스 및 기대치를 조건기억부(220)에 기억시킨다. 검출부(320)는 타이밍 기억부(210)에 기억된 타이밍의 도달을 검출한다. 또한 검출부(320)는 폴링부(230)에 의해 읽어진 상태 레지스터의 값이 기대치가 되었는 지를 검출한다.
송신부(330)는 타이밍의 도달이 검출된 것을 조건으로 타이밍 입력 코멘드보다 나중에 수신한 제어명령 입력 코멘드를 시험유닛(40)에 송신한다. 또한 송신부(330)는 상태 레지스터의 값이 기대치가 된 것을 조건으로 조건 입력 코멘드보다 나중에 수신한 제어명령 입력 코멘드를 시험유닛(40)에 송신한다.
도 4는, 제어 프로세서(15)에서 시험유닛(40)에 대한 명령을 중단부(20)에 의해 중단하는 처리의 흐름을 나타낸다. 버퍼부(200)는 제어 프로세서(15)에서 시험유닛(40) 또는 해당 중단부(20)에 할당된 어드레스에 대해 입력되어야 하는 제어명령을 버퍼한다(S400). 취출부(300)는 버퍼부(200)에 버퍼된 입력 코멘드를 순서대로 꺼낸다(S410). 꺼낸 입력 코멘드가 해당 중단부(20)에 할당된 어드레스 공간에 대한 입력 코멘드라면 중단부(20)는 타이밍 기억부(210) 또는 조건기억부(220)에 대해 입력을 행한다(S420). 꺼낸 입력 코멘드가 시험유닛(40)의 상태 레지스터(400, 410)의 레지스터에 대한 입력 코멘드라면 중단부(20)는 제어명령의 송신처리를 행한다(S430).
도 5는, 도 4의 S420에서의 처리를 상세하게 나타낸다. 입력부(310)꺼낸 코멘드가 타이밍 입력 코멘드인지 아닌지를 판단한다(S500). 타이밍 입력 코멘드라면(S500 : YES) 입력부(310)는 그 타이밍 입력 코멘드에 의해 지정된 타이밍을 타이밍 기억부(210)에 기억시킨다(S510). 조건 입력 코멘드라면(S520 : YES) 입력부(310)는 나중에 읽은 제어명령을 송신하는 조건 즉, 상태 레지스터의 어드레스 및 기대치를 조건기억부(220)에 기억시킨다(S530).
도 6은, 도 4의 S430에서의 처리를 상세하게 나타낸다. 검출부(320)는 타이밍 기억부(210)에 기억된 타이밍의 도달을 검출한다(S600). 타이밍의 도달이 검출된 경우에 또는 원래 타이밍이 설정되어 있지 않은 경우에(S600 : YES) 검출부(320)는 상태 레지스터의 값이 제어 프로세서(15)에서 지정된 기대치가 되었는 지를 판단한다(S610). 이 판단에서 상태 레지스터의 값은 소정의 마스크 값에 의해 비트 마스크된 후에 판단에 사용해도 된다. 구체적으로는 이하와 같다.
우선, 제어 프로세서(15)는 상태 레지스터의 어드레스 및 기대치의 입력에서 그 기대치로 폴링부(230)가 읽은 상태 레지스터의 값의 각 비트를 마스크할지 안 할지를 지정하는 마스크 값과, 마스크된 상태 레지스터의 값이 만족해야 하는 값을 나타내는 마스크 후의 기대치를 조건기억부(220)에 입력한다. 그리고, 폴링부(230)는 상태 레지스터의 값을 읽음과 동시에 그 상태 레지스터의 값을 그 마스크 값에 의해 마스크한 값이 마스크 후의 기대치가 되었는지 아닌지를 판단한다。
그리고, 타이밍의 도달이 검출되면서 상태 레지스터의 값이 기대치가 됨에 따라(S600 : YES, S610 : YES) 버퍼제어부(35)의 검출부(320)는 조건 입력 코멘드 또는 타이밍 입력 코멘드보다도 나중에 수신한 제어명령 입력 코멘드를 시험유닛(40)에 송신한다(S620). 또한, 상태 레지스터에 마스크 값이 지정되어 있는 경우에는 마스크한 값이 마스크 후의 기대치가 된 것이 조건이 된다.
타이밍의 도달이 검출되지 않거나 또는 상태 레지스터의 값이 기대치가 되지 않는 경우에는 처리제어부(30)는 버퍼부(200)에서 조건 입력 코멘드가 취득된 후에 미리 설정된 타임아웃 시간이 경과했는지 아닌지를 판단한다(S630). 경과 했으면(S630 : YES) 처리제어부(30)는 제어 프로세서(15)에 대해 타임아웃 인터럽트를 발행한다(S640). 이에 의해 조건을 설정했지만 장해의 발생 등에 의해 그것이 성립하지 않은 경우나 설정한 조건에 잘못이 있어서 그 조건이 성립하지 않는 경우라도 에러 검출처리나 다음 시험을 적절히 개시시킬 수 있다.
이 인터럽트를 받은 제어 프로세서(15)는 버퍼부(200)의 내용을 삭제하고 다음 처리를 정확하게 개시할 수 있도록 하기 위해서 버퍼부(200)의 내용을 삭제하는 명령을 중단부(20)에 대해 발행해도 된다. 이 경우 중단부(20)는 이 명령을 수신하면 버퍼부(200) 내에 버퍼링하지 않고 버퍼부(200) 내의 입력 코멘드를 삭제한다. 또 다른 예로, 제어 프로세서(15)는 버퍼부(200)의 내용을 읽는 명령을 중단부(20)에 대해 발행해도 된다. 이 경우 중단부(20)는 이 명령을 수신하면 이 명령을 버퍼부(200) 내에 버퍼링하지 않고 버퍼부(200)에서 입력 코멘드를 읽어서 제어 프로세서(15)에 송신한다. 이런 구조를 실장함으로써 에러 발생 후의 복구나 원인추구를 효율화할 수 있다.
또한, 처리제어부(30)는 특정 조건 성립, 예를 들면 미리 정해진 특정 상태 레지스터의 값이 기대치가 되었는지 아닌지를 판단한다(S650). 이 상태 레지스터가 그 기대치가 된 상태는 예를 들면 시험장치(10)에 의한 일련의 시험이 종료한 것을 나타내는 상태이다. 이 경우에는(S650 : YES) 처리제어부(30)는 제어 프로세서(15)에서 나중에 읽은 제어명령 즉, 다음 시험의 제어명령을 송신하기 위해 제어 프로세서(15)에 대해 인터럽트를 발행한다(S640).
도 7은, 버퍼부(200)에 버퍼링되는 명령군의 제 1예를 나타낸다. 제 1예를 이용해 제어명령을 실행시키기 위해 충족해야 하는 조건을 복수 설정하는 예를 설명한다. 이 제 1예에서 FIFO방식의 버퍼부(200)에는 선두에서 순서대로 상태 레지스터(400)에 조건을 입력하기 위한 제 1의 조건 입력 코멘드인 조건 입력 코멘드(1)와, 상태 레지스터(410)에 조건을 입력하기 위한 제 2의 조건 입력 코멘드인 조건 입력 코멘드(2)와, 시험유닛(40)을 제어하는 제어명령이 기억된다. 조건 입력 코멘드(1)는 제어 프로세서(15)의 어드레스 공간에서 상태 레지스터(400)를 특정하기 위한 제 1의 어드레스와, 상태 레지스터(400)와 비교되어야 하는 제 1의 기대치에 의해 구성된다. 또한 조건 입력 코멘드(2)는 제어 프로세서(15)의 어드레스 공간에서 상태 레지스터(410)를 특정하기 위한 제 2의 어드레스와, 상태 레지스터(410)와 비교되어야 하는 제 2의 기대치에 의해 구성된다.
즉, 제어 프로세서(15)는 상태 레지스터(400)가 제 1의 기대치가 되면서 상태 레지스터(410)가 제 2의 기대치가 된 것을 조건으로 제어명령을 시험유닛(40)에 송신하고 싶은 경우에는, 상태 레지스터(400)의 어드레스 및 제 1의 기대치와, 상태 레지스터(410)의 어드레스 및 제 2의 기대치를 버퍼부(200)에 할당된 어드레스에 대해 순서대로 입력한다. 그리고 그후에 제어 프로세서(15)는 시험유닛(40)에 할당된 레지스터에 제어명령을 입력한다. 그 결과 도 7에 나타낸 바와 같이 조건 입력 코멘드(1), 조건 입력 코멘드(2) 및 제어명령이 순서대로 버퍼부(200)에 격납되게 된다.
버퍼부(200)가 이와 같은 상태에 있는 경우에, 폴링부(230)는 상태 레지스터(400)의 어드레스 및 제 1의 기대치를 입력하는 조건 입력 코멘드(1)를 버퍼부(200)에서 취득함에 따라 상태 레지스터(400)의 어드레스를 읽기 어드레스로 하는 제 1의 읽기 코멘드를 시험유닛(40)에 반복적으로 발행한다. 그리고 버퍼제어부(35)는 상태 레지스터(400)의 값이 제 1의 기대치가 됨에 따라 조건 입력 코멘드(1)보다 나중에 수신한 상태 레지스터(410)의 어드레스 및 제 2의 기대치를 입력하는 조건 입력 코멘드(2)를 버퍼부(200)에서 꺼낸다.
또한, 폴링부(230)는 조건 입력 코멘드(2)를 버퍼부(200)에서 취득함에 따라 상태 레지스터(410)의 어드레스를 읽기 어드레스로 하는 제 2의 읽기 코멘드를 시험유닛(40)에 반복해 발행한다. 그리고 버퍼제어부(35)는 상태 레지스터(410)의 값이 제 2의 기대치가 됨에 따라 조건 입력 코멘드(2)보다 나중에 수신한 제어명령 입력 코멘드를 시험유닛(40)에 송신한다. 이와 같이 복수의 조건 입력 코멘드를 사용하면 제어명령을 실행시키기 위해 충족해야 하는 조건을 복수 지정할 수 있다.
도 8은, 버퍼부(200)에 버퍼링되는 명령군의 제 2예를 나타낸다. 제 2예를 이용해 제어명령을 실행시키기 위해 충족해야 하는 복수의 다른 조건을 설정하는 처리를 설명한다. 이 제 2예에서 FIFO방식의 버퍼부(200)에는 선두에서 순서대로 제어명령을 시험유닛(40)에 대해 송신해야 하는 타이밍을 정하는 타이밍 입력 코멘드와, 상태 레지스터(400)에 조건을 입력하기 위한 조건 입력 코멘드와, 시험유닛(40)을 제어하는 제어명령이 기억된다.
즉, 제어 프로세서(15)는 타이밍 입력 코멘드, 조건 입력 코멘드, 제어명령 입력 코멘드를 이 순서로 순차적으로 발행하고 있다. 이와 같은 상태에서 검출부(320)는 타이밍 입력 코멘드에 의해 입력된 타이밍의 도달을 검출한다. 타이밍의 도달이 검출되면 취출부(300)는 다음 코멘드 즉, 조건 입력 코멘드를 버퍼부(200)에서 꺼낸다. 그리고 폴링부(230)는 상태 레지스터(400)의 어드레스 및 기대치를 입력하는 조건 입력 코멘드를 버퍼부(200)에서 취득함에 따라 상태 레지스터(400)의 어드레스를 읽기 어드레스로 하는 읽기 코멘드를 시험유닛(40)에 반복해서 발행한다. 그리고 버퍼제어부(35)는 상태 레지스터(400)의 값이 기대치가 됨에 따라 조건 입력 코멘드보다 나중에 수신한 제어명령 입력 코멘드를 시험유닛(40)에 송신한다. 이와 같이 제어명령을 실행시키기 위해 충족해야 하는 조건은 복수의 다른 종류의 조건의 조합이어도 된다.
도 9는, 본 실시형태의 변형예에서의 시험장치(10)의 전체 구성을 나타낸다. 본 변형예는 복수의 시험유닛(40)이 협력해서 단일 피시험 디바이스(50)를 시험하는 것을 목적으로 한다. 피시험 디바이스(50)의 고성능화에 따라 피시험 디바이스(50)의 입출력 단자의 수도 증가해 하나의 시험유닛(40)에 의해서는 하나의 피시험 디바이스(50)를 시험할 수 없는 경우가 있다. 이와 같은 경우에는 복수의 시험유닛(40)이 피시험 디바이스(50)의 입출력 단자의 일부씩 접속해 시험을 행한다.
구체적으로 본 변형예에 관한 시험장치(10)는 시험유닛(40-1) 및 시험유닛(40-2)에 의해 피시험 디바이스(50-1)를 시험한다. 또한 시험장치(10)는 시험유닛(40-3) 및 시험유닛(40-4)에 의해 피시험 디바이스(50-2)를 시험한다. 또한 시험유닛(40-1~4)의 각각에 대응시켜서 중단부(20-1~4)의 각각이 구비되어 있다. 이와 같은 형태에서 중단부(20-1~2)는 제어 프로세서(15)의 동일한 어드레스 공간을 공유해도 된다. 또한 중단부(20-3~4)는 제어 프로세서(15)의 동일한 어드레스 공간을 공유해도 된다. 이 경우의 명령 중단 처리의 일 예를 도 10을 참조해 설명한다.
또한, 도 9를 참조해서 설명한 구성 이외의 구성에 대해서는 도 1 ~ 도 8을 참조해서 설명한 실시형태에 관한 시험장치(10)와 거의 동일하기 때문에 설명을 생략한다.
도 10은 본 실시형태의 변형예에서의 버퍼부(200)에 버퍼링되는 명령군의 일 예를 나타낸다. 중단부(20-1) 및 중단부(20-2)는 동일한 어드레스 공간을 공유하고 있기 때문에 중단부(20-1)의 버퍼부(200) 및 중단부(20-2)의 버퍼부(200)에는 동일한 명령군이 버퍼링되어 있다 구체적으로는 각각의 버퍼부(200)에는 선두에서 순서대로 시험유닛(40-1)에 대한 제어명령(1)과 시험유닛(40-2)에 대한 제어명령(2)과, 시험유닛(40-1)에 대한 제어명령(1)이 이 순서대로 기억되어 있다.
중단부(20-1)의 취출부(300)는 버퍼부(200)의 선두에서 제어명령(1)을 꺼내면 이 제어명령(1)의 입력처가 시험유닛(40-1)인지 아닌지를 판단한다. 입력처는 시험유닛(40-1)이기 때문에 중단부(20-1)는 이 제어명령(1)을 시험유닛(40-1)애 대해 송신시킨다. 한 편, 중단부(20-2)의 취출부(300)는 버퍼부(200)의 선두의 제어명령(1)의 입력처는 시험유닛(40-2)이 아니기 때문에 이 제어명령(1)을 실행하지 않고 파기한다.
선두의 제어명령(1)의 실행 또는 파기가 완료하면 중단부(20-1 ~ 2)는 둘다 다음 명령의 처리로 이동한다. 즉, 중단부(20-1)의 버퍼부(200)는 제어명령(2)을 꺼내면 그 제어명령(2)의 입력처가 시험유닛(40-2)이기 때문에 그 제어명령(2)을 파기한다. 한 편, 중단부(20-2)의 버퍼부(200)는 제어명령(2)의 입력처가 시험유닛(40-2)이기 때문에 그 제어명령을 시험유닛(40-2)에 대해 송신시킨다. 이후의 제어명령에 대해서도 동일하다.
이와 같이 본 변형예에 의하면, 하나의 피시험 디바이스(50)를 복수의 시험유닛(40)을 사용해 시험하는 경우에도 제어 프로세서(15)에서 본 어드레스 공간을 피시험 디바이스(50)마다 설정할 수 있다. 이와 같이 해서 중단부(20)에 의해 각각의 시험유닛(40)에 대한 명령은 적절히 배분되어 처리된다. 이와 같이 본 변형예에 의하면, 도 1에서 도 8에 나타낸 실시형태에서 설명한 처리에 추가로 명령의 배분처리도 중단부(20)에 집중시켜서 제어 프로세서(15)의 부하를 경감할 수 있다 또한, 기존의 시험 프로그램(100) 및 시험유닛(40)의 유용을 용이하게 할 수 있다.
이상 본 발명의 일 측면을 실시형태를 이용해 설명했으나 본 발명의 기술적 범위는 상기 실시형태에 기재된 범위에는 한정되지 않는다. 상기 실시형태에 다양한 변경 또는 개량을 할 수 있다. 예를 들면 본 실시예 또는 그 변형예에 나타나는 중단부(20)는 이에 대응하는 시험유닛(40) 중에 포함시켜서 실장되어도 된다. 이와 같은 변경 또는 개량을 한 형태도 본 발명의 기술적 범위에 포함될 수 있음이 청구범위의 기재로부터 분명하다.
상기 설명에서 알 수 있듯이 본 발명의 일 실시형태에 의하면, 시험유닛의 동작 타이밍을 정밀도가 좋으면서 효율적으로 제어하는 시험장치 및 제어방법을 실현할 수 있다.
도 1은 시험장치(10)의 전체 구성을 나타낸다.
도 2는 중단부(20)의 기능 구성을 나타낸다.
도 3은 버퍼제어부(35)의 기능 구성을 나타낸다.
도 4는 제어 프로세서(15)에서 시험유닛(40)에 대한 명령을 중단부(20)에의해 중단하는 처리의 흐름을 나타낸다.
도 5는 도 4의 S420에서의 처리를 상세하게 나타낸다.
도 6은 도 4의 S430에서의 처리를 상세하게 나타낸다.
도 7은 버퍼부(200)에 버퍼링되는 명령군의 제 1예를 나타낸다.
도 8은 버퍼부(200)에 버퍼링되는 명령군의 제 2예를 나타낸다.
도 9는 본 실시형태의 변형예에서의 시험장치(10)의 전체 구성을 나타낸다.
도 10은 본 실시형태의 변형예에서의 버퍼부(200)에 버퍼링되는 명령군의 일 예를 나타낸다.
[부호의 설명]
10 시험장치 15 제어 프로세서
20 중단부 40 시험유닛
50 피시험 디바이스 100 시험 프로그램
400 상태 레지스터 410 상태 레지스터
30 처리제어부 200 버퍼부
210 타이밍 기억부 220 조건기억부
230 폴링부 35 버퍼제어부
300 취출(取出)부 310 입력부
320 검출부 330 송신부

Claims (12)

  1. 피시험 디바이스를 시험하는 시험장치로서,
    상기 피시험 디바이스를 시험하는 시험 프로그램을 실행하는 제어 프로세서와,
    상기 피시험 디바이스에 접속되어 상기 제어 프로세서의 지시에 따라 상기 피시험 디바이스를 시험하는 시험유닛과,
    상기 제어 프로세서 및 상기 시험유닛에 접속되어 상기 제어 프로세서에서 상기 시험유닛에 송신되는 제어명령을 중단하는 중단부를 구비하고,
    상기 중단부는,
    상기 제어 프로세서에서 상기 시험유닛에 할당된 어드레스에 대해 입력되어야 하는 상기 제어명령을 버퍼하는 버퍼부와,
    상기 제어 프로세서에서 수신한 상기 제어명령을 상기 시험유닛에 대해 송신해야 하는 타이밍을 기억하는 타이밍 기억부와,
    상기 타이밍 기억부에 기억된 타이밍이 도달함에 따라 상기 버퍼부에 버퍼된 상기 제어명령을 상기 시험유닛에 송신하는 버퍼제어부
    를 갖는 시험장치.
  2. 제 1항에 있어서,
    상기 제어 프로세서는 상기 제어명령의 입력에 앞서 상기 제어명령을 상기 시험유닛에 대해 송신해야 하는 타이밍을 상기 중단부에 할당된 어드레스에 대해 입력하고,
    상기 버퍼부는 상기 제어 프로세서에서 수신한 상기 타이밍을 입력하는 타이밍 입력 코멘드와 상기 제어명령을 입력하는 제어명령 입력 코멘드를 순서대로 버퍼하고,
    상기 버퍼제어부는 상기 버퍼부에서 상기 타이밍 입력 코멘드를 꺼냄에 따라 상기 타이밍이 도달할 때까지 상기 타이밍 입력 코멘드보다 나중에 수신한 상기 제어명령 입력 코멘드의 처리를 지연시키는 시험장치.
  3. 제 2항에 있어서,
    상기 버퍼제어부는
    상기 버퍼부에 버퍼된 입력 코멘드를 순서대로 꺼내는 취출부와,
    상기 타이밍 입력 코멘드를 꺼냄에 따라 해당 타이밍을 상기 타이밍 기억부에 기억시키는 타이밍 입력부와,
    상기 타이밍 기억부에 기억된 상기 타이밍의 도달을 검출하는 검출부와,
    상기 타이밍의 도달이 검출된 것을 조건으로 상기 타이밍 입력 코멘드 후에 수신한 상기 제어명령 입력 코멘드를 상기 시험유닛에 송신하는 송신부를 포함하는 시험장치.
  4. 제 3항에 있어서,
    해당 시험장치는 복수의 피시험 디바이스를 시험하는 것이며,
    상기 복수의 피시험 디바이스의 각각에 대응해 복수의 상기 시험유닛의 각각이 구비되고,
    상기 복수의 시험유닛의 각각에 대응해서 복수의 상기 중단부의 각각이 구비되는 시험장치.
  5. 피시험 디바이스를 시험하는 시험 프로그램을 실행하는 제어 프로세서와, 상기 피시험 디바이스에 접속되어 상기 제어 프로세서의 지시에 따라 상기 피시험 디바이스를 시험하는 시험유닛를 구비하는 시험장치를 제어하는 제어방법으로서,
    상기 제어 프로세서에서 상기 시험유닛에 할당된 어드레스에 대해 입력되어야 하는 제어명령을 버퍼하고,
    상기 제어 프로세서에서 수신한 상기 제어명령을 상기 시험유닛에 대해 송신해야 하는 타이밍을 기억하고,
    상기 타이밍이 도달함에 따라 버퍼된 상기 제어명령을 상기 시험유닛에 송신하는 제어방법.
  6. 피시험 디바이스를 시험하는 시험장치로서,
    상기 피시험 디바이스를 시험하는 시험 프로그램을 실행하는 제어 프로세서와,
    상기 피시험 디바이스에 접속되어 상기 제어 프로세서의 지시에 따라 상기 피시험 디바이스를 시험하는 시험유닛과,
    상기 제어 프로세서 및 상기 시험유닛에 접속되어 상기 제어 프로세서에서 상기 시험유닛에 송신되는 제어명령을 중단하는 중단부를 구비하고,
    상기 중단부는,
    상기 제어 프로세서에서 지정된 상기 시험유닛의 상태를 나타내는 상태 레지스터를 반복해서 읽는 폴링부와,
    상기 상태 레지스터의 값이 상기 제어 프로세서에서 지정된 기대치가 됨에 따라 상기 상태 레지스터의 값이 상기 기대치가 된 후에 상기 시험유닛이 처리해야 하는 상기 제어명령을 상기 시험유닛에 송신하는 처리제어부를 갖는 시험장치.
  7. 제 6항에 있어서,
    상기 제어 프로세서는 상기 시험유닛에 할당된 어드레스 공간 내의 상기 상태 레지스터의 어드레스 및 상기 기대치를 상기 중단부에 할당된 어드레스에 대해 입력한 후 상기 시험유닛에 할당된 레지스터에 상기 제어명령을 입력하고,
    상기 중단부는 상기 제어 프로세서에서 수신한 상기 상태 레지스터의 어드레스 및 상기 기대치를 입력하는 조건 입력 코멘드와 상기 제어명령을 입력하는 제어명령 입력 코멘드를 순서대로 버퍼하는 버퍼부를 추가로 가지며,
    상기 폴링부는 상기 버퍼부에서 상기 조건 입력 코멘드를 취득함에 따라 상기 상태 레지스터의 어드레스를 읽기 어드레스로 하는 읽기 코멘드를 상기 시험유닛에 반복해서 발행하고,
    상기 처리제어부는 상기 상태 레지스터의 값이 상기 기대치가 됨에 따라 상기 조건 입력 코멘드보다 나중에 수신한 상기 제어명령 입력 코멘드를 상기 시험유닛에 송신하는 버퍼제어부를 포함하는 시험장치.
  8. 제 7항에 있어서,
    상기 제어 프로세서는 상기 상태 레지스터의 어드레스 및 상기 기대치의 입력에서 상기 기대치로 상기 폴링부가 읽은 상기 상태 레지스터의 값의 각 비트를 마스크할지 안 할지를 지정하는 마스크 값과, 마스크된 상기 상태 레지스터의 값이 만족해야 하는 값을 나타내는 마스크 후의 기대치를 입력하고,
    상기 버퍼제어부는 상기 상태 레지스터의 값을 상기 마스크 값에 의해 마스크한 값이 상기 마스크 후의 기대치가 됨에 따라 상기 조건 입력 코멘드보다 나중에 수신한 상기 제어명령 입력 코멘드를 상기 시험유닛에 송신하는 시험장치.
  9. 제 7항에 있어서,
    상기 제어 프로세서는 제 1의 상기 상태 레지스터가 제 1의 상기 기대치이면서 제 2의 상기 상태 레지스터가 제 2의 상기 기대치가 된 것을 조건으로 상기 제어명령을 상기 시험유닛에 송신하는 경우에 상기 제 1의 상태 레지스터의 어드레스 및 상기 제 1의 기대치와, 상기 제 2의 상태 레지스터의 어드레스 및 상기 제 2의 기대치를 상기 중단부에 할당된 어드레스에 대해 순서대로 입력한 후 상기 시험유닛에 할당된 레지스터에 상기 제어명령을 입력하고,
    상기 폴링부는 상기 제 1의 상태 레지스터의 어드레스 및 상기 제 1의 기대치를 입력하는 제 1의 상기 조건 입력 코멘드를 상기 버퍼부에서 취득함에 따라 상기 제 1의 상태 레지스터의 어드레스를 읽기 어드레스로 하는 제 1의 읽기 코멘드를 상기 시험유닛에 반복해서 발행하고,
    상기 버퍼제어부는 상기 제 1의 상태 레지스터의 값이 상기 제 1의 기대치가 됨에 따라 상기 제 1의 조건 입력 코멘드보다 나중에 수신한 상기 제 2의 상태 레지스터의 어드레스 및 상기 제 2의 기대치를 입력하는 제 2의 상기 조건 입력 코멘드를 상기 버퍼부에서 꺼내고,
    상기 폴링부는 상기 제 2의 조건 입력 코멘드를 상기 버퍼부에서 취득함에 따라 상기 제 2의 상태 레지스터의 어드레스를 읽기 어드레스로 하는 제 2의 읽기 코멘드를 상기 시험유닛에 반복해서 발행하고,
    상기 버퍼제어부는 상기 제 2의 상태 레지스터의 값이 상기 제 2의 기대치가 됨에 따라 상기 제 2의 조건 입력 코멘드보다 나중에 수신한 상기 제어명령 입력 코멘드를 상기 시험유닛에 송신하는 시험장치.
  10. 제 6항에 있어서,
    상기 처리제어부는 상기 버퍼부에서 상기 조건 입력 코멘드가 취득된 후에 미리 설정된 타임아웃 시간이 경과함에 따라 상기 제어 프로세서에 대해 타임아웃 인터럽트를 발행하는 시험장치.
  11. 제 6항에 있어서,
    상기 처리제어부는 상기 상태 레지스터의 값이 상기 제어 프로세서에서 지정된 기대치가 됨에 따라 상기 제어 프로세서에서 나중에 읽은 상기 제어명령을 송신시키기 위해 상기 제어 프로세서에 인터럽트를 발행하는 시험장치.
  12. 피시험 디바이스를 시험하는 시험 프로그램을 실행하는 제어 프로세서와,
    상기 피시험 디바이스에 접속되어 상기 제어 프로세서의 지시에 따라 상기 피시험 디바이스를 시험하는 시험유닛를 구비하는 시험장치를 제어하는 제어방법으로서,
    상기 제어 프로세서에서 지정된 상기 시험유닛의 상태를 나타내는 상태 레지스터를 반복해서 읽고,
    상기 상태 레지스터의 값이 상기 제어 프로세서에서 지정된 기대치가 됨에 따라 상기 상태 레지스터의 값이 상기 기대치가 된 후에 상기 시험유닛이 처리해야 하는 상기 제어명령을 상기 시험유닛에 송신하는 제어방법.
KR1020097009710A 2006-10-12 2007-09-12 시험장치 및 제어방법 KR20090077822A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US11/546,929 2006-10-12
US11/546,929 US7502708B2 (en) 2006-10-12 2006-10-12 Test apparatus, and control method
US11/546,926 US7340364B1 (en) 2003-02-26 2006-10-12 Test apparatus, and control method
US11/546,926 2006-10-12

Publications (1)

Publication Number Publication Date
KR20090077822A true KR20090077822A (ko) 2009-07-15

Family

ID=39282630

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097009710A KR20090077822A (ko) 2006-10-12 2007-09-12 시험장치 및 제어방법

Country Status (4)

Country Link
JP (1) JP5008673B2 (ko)
KR (1) KR20090077822A (ko)
TW (1) TW200817702A (ko)
WO (1) WO2008044421A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9582341B2 (en) 2014-05-07 2017-02-28 SK Hynix Inc. Semiconductor device including a plurality of processors and a method of operating the same

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5080580B2 (ja) * 2007-08-27 2012-11-21 株式会社アドバンテスト システム、中継装置、および試験装置
JP4674273B2 (ja) 2008-05-30 2011-04-20 株式会社アドバンテスト 試験装置および情報処理システム
JP4772920B2 (ja) * 2008-05-30 2011-09-14 株式会社アドバンテスト 試験装置および送信装置
US8179154B2 (en) * 2008-10-30 2012-05-15 Advantest Corporation Device, test apparatus and test method
TWI399551B (zh) * 2009-06-26 2013-06-21 Senao Networks Inc Burner device and burner method
US8706439B2 (en) 2009-12-27 2014-04-22 Advantest Corporation Test apparatus and test method
US8656229B2 (en) * 2012-06-05 2014-02-18 Litepoint Corporation System and method for execution of user-defined instrument command sequences using multiple hardware and analysis modules

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6447148U (ko) * 1987-09-16 1989-03-23
JP2004163351A (ja) * 2002-11-15 2004-06-10 Shibasoku:Kk 試験装置、試験装置による試験方法
US7340364B1 (en) * 2003-02-26 2008-03-04 Advantest Corporation Test apparatus, and control method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9582341B2 (en) 2014-05-07 2017-02-28 SK Hynix Inc. Semiconductor device including a plurality of processors and a method of operating the same

Also Published As

Publication number Publication date
WO2008044421A1 (fr) 2008-04-17
TW200817702A (en) 2008-04-16
JPWO2008044421A1 (ja) 2010-02-04
JP5008673B2 (ja) 2012-08-22

Similar Documents

Publication Publication Date Title
KR20090077822A (ko) 시험장치 및 제어방법
US7340364B1 (en) Test apparatus, and control method
US7992042B2 (en) Debug support device, and program for directing computer to perform debugging method
KR100951092B1 (ko) 정교한 멀티스레드 디스패치 차단 방법, 장치 및 컴퓨터 판독가능한 기록 매체
US7502708B2 (en) Test apparatus, and control method
JP2019169081A (ja) 情報処理装置、情報処理方法、プログラム
US20170212852A1 (en) Method and accelerator unit for interrupt handling
EP0290942B1 (en) Guest machine execution control system for virtual machine system
CN106844025B (zh) 一种异步中断处理方法及中断控制器
JP2522158B2 (ja) マルチプロセッサシステムのプログラムデバッグ方法
TWI801581B (zh) 中斷控制器及其相關的設備和方法
US20160246740A1 (en) Processor system having nested vectored interrupt controller
US8069338B2 (en) Data processing device and control method for preventing an exception caused by an instruction sent to a peripheral device by a branch source program from occurring during execution of a branch destination program or interrupt program
JP2006119982A (ja) コンピュータシステム
KR100274084B1 (ko) 리셋 스위치를 이용한 보드/시스템의 리셋 장치 및 방법
US20040128491A1 (en) Digital signal processor
WO2018179753A1 (ja) マイクロコンピュータ
US20110093863A1 (en) Context switching in a data processing apparatus
KR100404283B1 (ko) 마이크로프로세서, 마이크로프로세서를 포함하는 시스템및 마이크로프로세서의 버스 사이클 제어 방법
JPH11338712A (ja) 割込順序保存回路
JPS6148181B2 (ko)
KR20030042822A (ko) 인터럽트 오류 방지 장치 및 방법
JP3777304B2 (ja) マイクロプログラムロード方式
JPH0290331A (ja) 仮想計算機システムのためのプロセツサ間通信命令処理装置
JPS63217430A (ja) インサ−キツト・エミユレ−タ

Legal Events

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