KR100493350B1 - 이벤트에 기초한 테스트 시스템의 스케일링 로직 - Google Patents

이벤트에 기초한 테스트 시스템의 스케일링 로직 Download PDF

Info

Publication number
KR100493350B1
KR100493350B1 KR10-2000-0017509A KR20000017509A KR100493350B1 KR 100493350 B1 KR100493350 B1 KR 100493350B1 KR 20000017509 A KR20000017509 A KR 20000017509A KR 100493350 B1 KR100493350 B1 KR 100493350B1
Authority
KR
South Korea
Prior art keywords
event
scaling
data
vernier
count
Prior art date
Application number
KR10-2000-0017509A
Other languages
English (en)
Other versions
KR20010006949A (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 KR20010006949A publication Critical patent/KR20010006949A/ko
Application granted granted Critical
Publication of KR100493350B1 publication Critical patent/KR100493350B1/ko

Links

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
    • 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/31922Timing generation or clock distribution
    • 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/3193Tester hardware, i.e. output processing circuits with comparison between actual response and known fault free response
    • G01R31/31937Timing aspects, e.g. measuring propagation delay
    • 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/31908Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
    • G01R31/3191Calibration

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

피 시험 전자 장치(DUT)에 테스트 신호를 공급하여 DUT의 출력을 스트로브(strobe) 신호의 타이밍에 평가함으로써 DUT를 테스트하는 이벤트의 타이밍을 자유롭게 변경하는 스케일링 기능을 구비한 이벤트에 기초한 테스트 시스템이 제공된다.
이벤트에 기초한 테스트 시스템은 기준 클럭 주기의 정수배와 기준 클럭 주기의 소수로 구성되며 2개의 인접한 이벤트들 사이의 시간차를 나타내는 각 이벤트의 타이밍 데이터를 저장하는 이벤트 메모리와, 상기 이벤트 메모리로부터 타이밍 데이터를 판독하기 위해 이벤트 메모리를 억세스하기 위한 어드레스 데이터를 생성하는 어드레스 시퀀서와, 선정된 기준점에 대한 각 이벤트의 전체 시간을 생성하기 위해 스케일(scale) 인수에 기초하여 타이밍 데이터를 가산 및 변경하는 가산 및 스케일링 로직과, 테스트 신호 또는 스트로브 신호를 형성하기 위해 전체 시간에 기초하여 각각의 이벤트를 생성하는 이벤트 생성 회로와, 테스트 프로그램을 통해 이벤트에 기초한 테스트 시스템의 전체 동작을 제어하는 호스트 컴퓨터를 포함한다.

Description

이벤트에 기초한 테스트 시스템의 스케일링 로직{SCALING LOGIC FOR EVENT BASED TEST SYSTEM}
본 발명은 반도체 장치를 테스트하기 위한 반도체 테스트 시스템에 관한 것으로, 특히 피 시험 반도체 장치를 평가하기 위한 여러 가지 타이밍의 테스트 신호 및 스트로브 신호를 포함하는 여러 가지 테스트 이벤트를 생성하기 위한 이벤트에 기초한 반도체 테스트 시스템에 사용되는 스케일링 로직에 관한 것으로, 각 이벤트의 타이밍은 이전의 이벤트로부터의 시간에 의해 정해진다.
IC 테스터와 같은 반도체 테스트 시스템에 의해 IC 및 LSI와 같은 반도체 장치의 테스트에 있어서, 피 시험 반도체 IC 장치에는 선정된 테스트 타이밍에 해당하는 핀에 IC 테스터에 의해 생성된 테스트 신호가 공급된다. IC 테스터는 테스트 신호에 응답하여 피 시험 IC 장치로부터 발생된 출력 신호를 수신한다. IC 장치가 올바르게 기능하는 지를 판단하기 위해, 출력 신호는 기대 데이터와 비교하기 위해 선정된 타이밍에 스트로브 신호에 의해 조사, 즉 샘플된다.
일반적으로, 테스트 신호 및 스트로브 신호의 타이밍은 반도체 테스트 시스템의 테스터 속도 또는 테스터 사이클에 관련하여 정해진다. 이러한 테스트 시스템은 사이클에 기초한 테스트 시스템이라고도 한다. 사이클에 기초한 테스트 시스템에서는, 테스트 신호 및 스트로브 신호의 원하는 파형을 생성하기 위하여 포매터에서 프로그램된 데이터 속도(테스터 사이클)의 주기를 갖는 핀 패턴 벡터에 타이밍 에지를 제공함으로써 피 시험 반도체 장치(DUT)를 테스트한다.
상술된 바와 같이, 일반적으로, 테스터 사이클, 테스트 신호 및 스트로브 신호의 여러 타이밍은 기준 클럭에 기초하여 생성된다. 기준 클럭은 안정도가 높은 오실레이터, 예를 들어 IC 테스터 내에 구비된 수정 발진기에 의해 생성된다. IC 테스터가 필요로 하는 타이밍 정밀도가 기준 클럭 발진기의 최고 클럭 속도(최단 클럭 사이클)와 동일하거나 또는 정수배일 때, 카운터 또는 분주기를 이용하여 기준 클럭을 분주함으로써 여러 가지 타이밍 신호를 생성할 수 있다.
그러나, 일반적으로 IC 테스터는 기준 클럭(시스템 클럭)의 최고 클럭 속도, 즉 최단 주기보다 더 높은 타이밍 정밀도를 갖도록 요구된다. 예를 들어, IC 테스터 내에 사용된 기준 클럭이 10㎱인 경우에, IC 테스터는 0.3㎱ 이상의 타이밍 정밀도를 가져야 하지만, 이 경우에는 단순히 기준 클럭을 적용하거나 또는 분할하는 것만으로는 이러한 타이밍 정밀도를 달성할 수는 없다. 더욱이, 현재의 IC 테스터는 테스트 프로그램에 기초한 사이클에 따라서 이러한 여러 가지 타이밍을 동적으로 변경할 필요가 있다.
이러한 타이밍 신호를 생성하기 위해, 종래에는 타이밍 데이터에 의해 이러한 타이밍을 테스트 프로그램 내에 기술하였다. 기준 클럭 속도보다 높은 정밀도의 타이밍을 기술하기 위해, 타이밍 데이터는 기준 클럭 시간 간격의 정수배(정수 부분)와 기준 클럭 사이클의 소수(소수 부분)의 조합에 의해 기술된다. 이러한 타이밍 데이터는 타이밍 메모리 내에 저장되고 테스트 사이클의 각 사이클에서 판독된다. 그러므로, 각각의 테스트 사이클에 있어서, 테스트 신호 및 스트로브 신호는 타이밍 데이터에 기초하여 각 사이클의 개시점과 같은 테스트 사이클과 관련하여 생성된다.
또한, 다른 방식으로서, 이벤트 메모리로부터의 데이터를 직접적으로 이용하여, 원하는 테스트 신호와 스트로브 신호를 각 핀 마다 생성하는 이벤트에 기초한 테스트 시스템이라고 하는 테스트 시스템이 있다. 현재, 이벤트에 기초한 테스트 시스템은 아직 시판되고 있지 않으며, 평가 단계에 있다. 본 발명은 주로 이러한 이벤트에 기초한 테스트 시스템에 관한 것이다.
이벤트에 기초한 테스트 시스템에서는 이벤트라는 개념을 사용하고 있으며, 이벤트라 함은 피 시험 반도체 장치의 테스트에 사용되는 신호의 논리 상태의 변화를 말한다. 예를 들어, 이러한 변화는 테스트 신호 및 스트로브 신호의 상승 및 하강을 말한다. 이벤트의 타이밍은 기준 시점으로부터의 시간과 관련하여 정해진다. 일반적으로, 이러한 기준 시점은 이전 이벤트의 타이밍이다.
고 정밀도의 타이밍을 생성하기 위해서는, 이벤트들 사이의 시간(지연값)은 기준 클럭 사이클의 정수배(정수부 또는 이벤트 카운트 데이터)와 기준 클럭 사이클의 소수(소수부 또는 이벤트 버니어 데이터)의 조합에 의해 정의된다. 이벤트 카운트와 이벤트 버니어 간의 타이밍 관계는 도 2의 타이밍 차트에 도시되어 있다. 이 예에서는 도 2의 (a)의 기준 클럭(마스터 클럭 또는 시스템 클럭)은 클럭 사이클(주기 또는 시간 간격) T를 갖는다. 도 2의 (c)의 이벤트0, 이벤트1 및 이벤트2는 도 2에 도시된 바와 같이 상호 관련되어 있다. 이벤트1을 이벤트0과 관련하여 기술하기 위해서는, 도 2의 (b)의 타이밍 관계가 사용되는데, 여기에서 NT는 기준 클럭 주기 N의 N배인 이벤트 카운트를 나타내고, Δt는 기준 클럭 주기 T의 소수 부분인 이벤트 버니어를 나타낸다.
이벤트에 기초한 테스트 시스템에서는, 타이밍 메모리(이벤트 메모리) 내의 타이밍 데이터가 각각의 모든 테스트 사이클 데이터에 관한 복잡한 정보를 포함할 필요가 없기 때문에, 타이밍 데이터의 기술이 매우 간략하게 될 수 있다. 이벤트에 기초한 테스트 시스템에서는 이벤트 메모리 내에 저장된 각 이벤트의 타이밍 데이터가 현재의 이벤트와 이전의 이벤트 사이의 시간차로 표현된다. 인접한 이벤트들 간의 시간차는 매우 작기 때문에, 메모리 내의 데이터 크기도 매우 작게 될 수 있어서, 메모리 용량이 감소된다.
더욱이, LSI 및 VLSI와 같은 반도체 장치를 설계하기 위해 오늘날 널리 사용되는 CAD 시스템에 있어서는, CAD 시스템 내의 로직 시뮬레이터는 이벤트에 기초한 테스트 신호를 사용하여 반도체 장치를 평가한다. 그러므로, 이벤트에 기초한 테스트 시스템은 설계 단계에서 CAD 시스템에 의해 생성된 설계 데이터와 이 설계 데이터를 사용하여 생성되는 테스트 신호 사이에 양호한 결합력을 나타낸다.
상술된 바와 같이, 이벤트에 기초한 테스트 시스템에 있어서, 이벤트 메모리 내의 이벤트 데이터는 현재의 이벤트와 이전의 이벤트 사이의 시간차(델타 시간)에 의해 표현된다. 그러므로, 이벤트 데이터에 기초하여 이벤트를 생성하기 위해, 이벤트에 기초한 테스트 시스템은 각 이벤트까지의 지연의 합을 계산할 수 있어야 된다. 따라서 이벤트 카운트로 표현된 지연 시간을 계속하여 계수하면서 이벤트 버니어 값을 합산하기 위한 로직이 테스트 시스템 내에 필요함을 의미한다.
이러한 관계는 도 3의 타이밍 차트에 도시되어 있으며, 여기에서 이벤트 0-7은 기간 T=1을 갖는 기준 클럭과 관련하여 표현된다. 예를 들어, 이벤트0의 델타 시간 ΔV0는 0.75(이벤트 카운트 "0", 이벤트 버니어 "0.75")이고, 이벤트1의 델타 시간 ΔV1는 1.50(이벤트 카운트 "1", 이벤트 버니어 "0.50")일 수 있다. 이 경우에는, 이벤트1의 전체 지연은 2.25로서, 테스트 시스템 내의 로직은 2개의 이벤트 클럭 "2.0"을 카운트하고, 이벤트 버니어의 합계 "0.25"를 나머지 소수 지연 시간으로 계산한다. 이 가산 동작은 테스트 신호에 관련된 각각의 이벤트 동안의 정확한 버니어를 계산함에 있어서 필수적이다.
이벤트 테스트 시스템은 또한 이벤트 메모리로부터 델타 시간을 스케일링할 수 있어야 된다. 델타 시간 ΔV0, ΔV1 …ΔVn의 스케일링 동작은 각 델타 시간을 스케일링 인수배로 함으로써 달성된다. 예를 들어, 델타 시간 1.5를 2로 스케일링한다는 것은 1.5×2=3.0을 의미한다. 이벤트 카운트와 이벤트 버니어에 의해 정의되는 델타 시간(지연값)을 이용하여 일반적으로 표현하면, 승산은 (이벤트 카운트 + 이벤트 버니어) ×(스케일 인수) = 스케일링된 지연으로 된다.
소프트웨어를 이용하여 전술한 가산 및 스케일링 동작을 실행할 수 있다. 그러나, 지연을 나타내는 많은 데이터를 변환시키는 시간과 이 데이터를 이벤트에 기초한 테스터에 다시 로딩하는 시간은 과다하게 소요된다. 오히려, 가산 및 스케일링 동작은 하드웨어로 직접 실행해야 한다. 이벤트에 기초한 테스트 시스템에 있어서 다양한 스케일링 기술이 가능하다.
본 발명의 목적은 반도체 장치를 평가하기 위해 이벤트 메모리 내에 저장된 이벤트 데이터에 기초하여 테스트 신호 및 스트로브를 생성하는 이벤트에 기초한 반도체 테스트 시스템을 제공하기 위한 것이다.
본 발명의 다른 목적은 여러 가지 이벤트의 타이밍을 생성하는 이벤트에 기초한 반도체 테스트 시스템을 제공하기 위한 것으로서, 각 이벤트의 타이밍은 이전의 이벤트로부터의 시간(델타 시간)에 의해 정해진다.
본 발명의 또 다른 목적은 이전의 이벤트로부터의 델타 시간에 기초하여 이벤트를 생성하는 이벤트에 기초한 반도체 테스트 시스템을 제공하기 위한 것으로서, 각 이벤트는 기준 클럭 주기의 정수배와 기준 클럭 주기의 소수 부분의 조합에 의해 정해진다.
본 발명의 또 다른 목적은 스케일링 인수에 기초하여 현재 이벤트의 지연 시간을 변경함으로써 현재 이벤트를 생성하기 위해 지연 시간(델타 시간)을 스케일링할 수 있는 이벤트에 기초한 반도체 테스트 시스템을 제공하기 위한 것이다.
본 발명의 또 다른 목적은 정수 부분과 소수 부분을 모두 가지는 스케일 인수에 기초하여 지연 시간(델타 시간)을 스케일링할 수 있는 이벤트에 기초한 반도체 테스트 시스템을 제공하기 위한 것이다.
본 발명의 또 다른 목적은 정수부만을 가지는 스케일 인수에 기초하여 지연 시간(델타 시간)을 스케일링할 수 있는 이벤트에 기초한 반도체 테스트 시스템을 제공하기 위한 것이다.
본 발명은 피 시험 전자 장치(DUT)에 공급하기 위한 테스트 신호를 제공하기 위한 여러 가지 타이밍의 이벤트를 생성하고, 스트로브 신호의 타이밍에서 DUT의 출력을 평가함으로써 DUT를 테스트하기 위한 이벤트에 기초한 테스트 시스템이다. 이벤트의 타이밍은 스케일 인수의 값에 따라서 자유롭게 스케일링될 수 있다.
이벤트에 기초한 테스트 시스템은: 기준 클럭 주기의 정수배(정수부분 데이터)와 기준 클럭 주기의 소수(소수부분 데이터)로 구성된 각 이벤트의 타이밍 데이터를 저장하는 이벤트 메모리를 포함하되, 타이밍 데이터는 2개의 인접한 이벤트들 사이의 시간 차를 나타내고; 타이밍 데이터를 이벤트 메모리로부터 판독하기 위해 이벤트 메모리를 억세스하기 위한 어드레스 데이터를 생성하는 어드레스 시퀀서; 선정된 기준점에 관련하여 각 이벤트의 전체 시간을 생성하기 위해 타이밍 데이터를 가산하고 스케일 인수에 기초하여 타이밍 데이터를 변경하는 가산 및 스케일링 로직을 포함하되, 가산 및 스케일링 로직은 소수 부분의 합이 기준 클럭 주기를 초과할 때마다 하나의 기준 클럭 주기의 추가 지연을 제공하는 지연 수단을 포함하고; 테스트 신호 또는 스트로브 신호를 명확히 나타내기 위해 전체 시간에 기초하여 각 이벤트를 생성하는 이벤트 생성기 회로; 및 테스트 프로그램을 통해 이벤트에 기초한 테스트 시스템의 전체 동작을 제어하는 호스트 컴퓨터를 포함한다.
본 발명의 다른 실시양태에 있어서, 가산 및 스케일링 로직은 스케일 인수에 기초하여 이벤트 카운트 데이터를 스케일링하는 이벤트 카운트 스케일링 로직, 스케일 인수에 기초하여 이벤트 버니어 메모리로부터 버니어 데이터를 스케일링하는 이벤트 버니어 메모리, 이벤트 카운트 스케일링 로직으로부터의 단말 카운트 펄스에 응답하여 출력 신호를 생성하는 이벤트 카운트 상태 머신, 및 이벤트 카운트 스케일링 로직으로부터의 스케일링된 데이터, 버니어 스케일링 로직으로부터의 스케일링된 데이터 및 이벤트 카운트 상태 머신으로부터의 출력 신호에 기초하여 현재 이벤트의 전체 스케일링된 지연을 계산하는 이벤트 스케일링 출력 로직을 포함한다.
가산 및 스케일링 로직에 있어서, 타이밍 데이터를 스케일링하는 스케일 인수는 정수 부분과 소수 부분을 포함한다. 대안적으로, 타이밍 데이터를 스케일링하는 스케일 인수는 정수 부분만을 포함한다. 스케일 인수가 정수 부분과 소수 부분을 모두 포함하는 본 발명의 양태에 있어서, 이벤트 카운트 스케일링 로직은 스케일 인수의 정수 부분에 의해 규정된 횟수만큼 기준 클럭을 카운트하고 지정된 수의 기준 클럭을 카운트할 때마다 단말 카운트 펄스를 발생시키기 위해 스케일 인수의 정수 부분이 갖추어진 스케일링 카운터, 및 스케일링 카운터로부터 단말 카운트 펄스를 수신할 때마다 소수 부분을 누적하기 위해 스케일 인수의 소수 부분이 갖추어진 누산기로 구성되고, 하나의 기준 클럭 사이클의 추가 지연을 스케일링 카운터에 제공하여 기준 클럭을 카운트하기 위해 누적 데이터가 기준 클럭의 한 사이클을 초과할 때 누산기에 의해 캐리 신호가 생성된다.
스케일 인수가 정수 부분과 소수 부분을 모두 포함하는 본 발명의 다른 양태에 있어서, 이벤트 버니어 스케일링 로직은 정수 부분과 소수 부분을 갖는 스케일 인수와 버니어 데이터를 승산하기 위해 이벤트 버니어 메모리로부터의 버니어 데이터가 갖추어진 승산기로 구성되고, 이벤트 스케일링 출력 로직은 이벤트 카운트 스케일링 로직 내의 누산기로부터의 누적된 데이터와 이벤트 버니어 스케일링 로직 내의 승산기로부터의 승산된 데이터를 가산하는 가산기, 및 이벤트 생성기의 이벤트 개시 신호를 생성하기 위해 이벤트 카운트 상태 머신으로부터의 출력 신호가 갖추어진 상태 머신으로 구성되며, 이벤트 개시 신호의 생성 시에 한 기준 클럭 사이클의 추가 지연을 상태 머신에 제공하기 위해 가산 데이터가 기준 클럭의 한 사이클을 초과할 때 가산기에 의해 캐리 신호가 생성된다.
본 발명의 또 다른 실시양태에 있어서, 이벤트 버니어 스케일링 로직은 정수 부분과 소수 부분을 갖는 스케일 인수와 버니어 데이터를 승산하기 위해 이벤트 버니어 메모리로부터의 버니어 데이터가 갖추어진 승산기, 및 스케일 인수의 정수 부분에 의해 정해진 지정 횟수만큼 기준 클럭의 타이밍에 버니어 데이터를 누적하는 버니어 누산기를 포함한다. 승산기가 스케일 인수의 소수 부분만을 다루기 때문에, 관련된 로직 스케일은 감소될 수 있다.
본 발명에 따르면, 이벤트에 기초한 반도체 테스트 시스템은 반도체 장치를 평가하기 위해 이벤트 메모리 내에 저장된 이벤트 데이터에 기초하여 여러 가지 타이밍의 이벤트를 생성할 수 있다. 각 이벤트의 타이밍은 이전의 이벤트로부터의 시간(델타 시간)의 차에 의해 정해진다. 이벤트들 사이의 델타 시간은 또한 기준 클럭 주기의 정수배와 기준 클럭 주기의 소수의 조합에 의해 정해진다. 본 발명의 이벤트 테스트 시스템은 스케일 인수에 기초하여 현재 이벤트의 지연 시간을 변경함으로써 현재 이벤트를 생성하기 위한 지연 시간(델타 시간)을 스케일링할 수 있다. 본 발명의 이벤트 테스트 시스템에서의 스케일링 동작은 정수 부분과 소수 부분을 모두 가지는 스케일 인수에 기초하여 실행된다. 다른 실시양태에 있어서, 이벤트 테스트 시스템에서의 스케일링 동작은 정수 부분만을 가지는 스케일 인수에 기초하여 실행된다.<실시예>
도 1은 본 발명의 이벤트에 기초한 테스트 시스템의 기본적인 구조의 한 예를 개략적으로 도시한 블록도이다. 이벤트에 기초한 테스트 시스템은 시스템 버스(14)에 접속된 호스트 컴퓨터(12)와 버스 인터페이스(13), 내부 버스(15), 어드레스 제어 로직(18), 고장 메모리(17), 이벤트 카운트 메모리(20)와 이벤트 버니어 메모리(21)로 구성된 이벤트 메모리, 이벤트 가산 및 스케일링 로직(22), 이벤트 생성기(24), 및 핀 전자부품(26)을 포함한다. 이벤트에 기초한 테스트 시스템은 핀 전자부품(26)에 접속되어 있는 마이크로프로세서와 같은 메모리 IC 또는 로직 IC인 테스트 하에 있는 반도체 장치(DUT)(28)를 평가하기 위한 것이다.
호스트 컴퓨터(12)의 예는 내부에 UNIX 운영 시스템을 갖고 있는 워크 스테이션이다. 호스트 컴퓨터(12)는 테스트 프로그램 또는 다른 테스트 조건을 로드하거나, 또는 호스트 컴퓨터에서 테스트 결과를 분석하기 위해, 유저가 테스트의 개시 및 정지 동작을 지시할 수 있게 하는 유저 인터페이스로서 기능한다. 호스트 컴퓨터(12)는 시스템 버스(14) 및 버스 인터페이스(13)를 통해 하드웨어 테스트 시스템과 인터페이스한다. 도시되지 않았지만, 호스트 컴퓨터(12)는 다른 테스트 시스템 또는 컴퓨터 네트워크로부터 테스트 정보를 송신 또는 수신하기 위해 통신 네트워크에 접속되는 것이 바람직하다.
내부 버스(15)는 하드웨어 테스트 시스템 내의 버스이고, 일반적으로 어드레스 제어 로직(18), 고장 메모리(17), 이벤트 가산 및 스케일링 로직(22), 및 이벤트 생성기(24)와 같은 대부분의 기능 블록에 접속된다. 어드레스 제어 로직(18)의 한 예는 하드웨어 테스트 시스템 전용의 테스터 프로세서이고, 유저에 의해 억세스될 수 없다. 어드레스 제어 로직(18)은 호스트 컴퓨터(12)로부터의 테스트 프로그램 및 조건에 기초하여 테스트 시스템 내의 다른 기능 블록에 명령을 제공한다. 고장 메모리(17)는 어드레스 제어 로직(18)에 의해 정해진 어드레스에 DUT(28)의 고장 정보와 같은 테스트 결과를 저장한다. 고장 메모리(17) 내에 저장된 정보는 피 시험 장치의 고장 분석 단계에서 사용된다.
어드레스 제어 로직(18)은 도 1에 도시된 바와 같이 어드레스 데이터를 이벤트 카운트 메모리(20) 및 이벤트 버니어 메모리(21)에 제공한다. 실제 테스트 시스템에 있어서, 여러 세트의 이벤트 카운트 메모리 및 이벤트 버니어 메모리가 제공될 수 있고, 각각의 세트는 테스트 시스템의 테스트 핀에 대응하여 구성된다. 이벤트 카운트 및 버니어 메모리는 테스트 신호 및 스트로브 신호의 각 이벤트에 대한 타이밍 데이터를 저장한다. 아래에서 상세히 설명하겠지만, 이벤트 카운트 메모리(20)는 기준 클럭의 정수배(정수 부분)인 타이밍 데이터를 저장하고, 이벤트 버니어 메모리(21)는 기준 클럭의 소수(소수 부분)인 타이밍 데이터를 저장한다. 본 발명에서는, 각 이벤트의 타이밍 데이터는 이전의 이벤트로부터의 시간차(지연 시간 또는 델타 시간)에 의해 표현될 수 있는데, 이것에 대해서는 아래에서 상세히 설명하기로 한다.
이벤트 가산 및 스케일링 로직(22)은 이벤트 카운트 메모리(20) 및 이벤트 버니어 메모리(21)로부터의 델타 타이밍 데이터에 기초하여 각 이벤트의 전체 타이밍을 나타내는 데이터를 생성하기 위한 것이다. 기본적으로, 이러한 전체 타이밍 데이터는 정수배 데이터와 소수 데이터를 가산하여 생성된다. 타이밍 데이터를 가산하는 프로세스 동안에, 소수 데이터의 자릿수 올림 동작(정수 데이터로의 오프셋)은 또한 타이밍 카운트 및 오프셋 로직(22)에서 행해진다. 또한 전체 타이밍을 생성하는 프로세스 동안에, 전체 타이밍을 스케일 인수에 의해 변경하기 위한 스케일링 동작을 실시할 수도 있다. 이러한 동작에 대한 상세한 설명은 후술될 것이다.
이벤트 생성기(24)는 이벤트 가산 및 스케일링 로직(22)으로부터의 전체 타이밍 데이터에 기초하여 각 이벤트를 실제로 생성하기 위한 것이다. 이렇게 생성된 이벤트(테스트 신호 및 스트로브 신호)는 핀 전자부품(26)을 통해 DUT(28)에 제공된다. 기본적으로, 핀 전자부품(26)은 다수의 부품으로 구성되고, 각각의 부품은 DUT(28)와의 입력 및 출력 관계를 설정하기 위한 드라이버, 비교기 및 스위치를 포함한다.
가산 및 스케일링 로직(22)의 특정 예에 대해서는 도 4-15를 참조하여 설명하겠다. 가산 동작은 수신된 모든 이벤트 데이터(델타 시간)를 가산하기 위한 것이다. 가산 동작은 또한 데이터의 소수 부분의 합이 기준 클럭의 한 사이클을 초과할 때의 자릿수 올림 동작을 포함한다. 스케일링은 이벤트 메모리 내에 저장된 지연 데이터(델타 시간)를 스케일 인수와 곱하는 프로세스이다. 스케일 인수를 변화시킴으로써, 테스트 시스템에 의해 생성된 이벤트의 타이밍(최종 지연 값)은 자유롭게 변경될 수 있다. 아래에서는, 주로 본 발명에 따른 이벤트 스케일링의 구성과 동작을 중심으로 설명하기로 한다.
2가지의 기본 형태의 스케일링, 소수 스케일링 및 정수 스케일링이 있다. 소수 스케일링에 있어서, 스케일 인수는 정수 부분과 소수 부분을 포함하고, 즉 "xxx.xxx"로 표현된다. 정수 스케일링에 있어서, 스케일 인수는 소수 부분을 포함하지 않고 정수 부분만을 포함하고, 즉 "xxx"로 표현된다. 본 발명과 관련하여서는 2개의 인접한 이벤트들 사이의 델타 시간이 하나의 기준 클럭 사이클보다 커야 될 필요가 있다.
스케일링은 이벤트 데이터의 가산 동작 이전에(프리-스케일링) 또는 가산 동작 이후에(포스트-스케일링) 실행될 수 있다. 도 4는 스케일 기능이 가산 동작 전단에 제공되는 프리-스케일링의 기본 구조를 개략적으로 도시한 블록도이다. 이벤트 메모리(30)로부터의 이벤트 데이터(델타 시간)는 이벤트 가산 로직(32)에 제공되기 이전에 승산기(35)에 의해 스케일 인수와 승산된다.
도 4의 지연 계산(스케일링)은 도 5에 도시된 바와 같이 전술한 이벤트 테스트 시스템에도 적용된다. 도 5는 정수 프리-스케일링 또는 소수 프리-스케일링의 한 예를 개략적으로 도시한 블록도이다. 이벤트 카운트 메모리(20)로부터의 델타 시간의 정수 부분(이벤트 카운트 데이터)은 스케일 인수가 갖추어진 승산기(35)에 의해 스케일링된다. 버니어 메모리(21)로부터의 델타 시간의 소수 부분(버니어 데이터)은 스케일 인수가 갖추어진 승산기(36)에 의해 스케일링된다.
승산기(35 및 36)로부터의 스케일링된 델타 시간은 가산기(37)에 의해 가산된다. 이로써 최종 지연 값이 생성되고, 이것은 그 다음에 기준 클럭 주기(한 사이클 시간)의 정수배인 정수 부분 지연과 한 기준 클럭 주기보다 작은 소수 부분 지연으로 분리된다. 가산 로직(32) 내에서 정수 부분 지연은 이벤트 카운트 지연 로직(43)에 제공되는 반면, 소수 부분 지연은 이벤트 버니어 지연 로직(45)에 제공된다. 즉, 버니어 스케일링의 결과가 한 기준 클럭 사이클을 초과하는 경우에, 버니어 스케일링의 결과에서 정수 부분은 정수 부분 가산에 추가하기 위하여 이벤트 카운트 지연 로직(43)에 공급되어야 한다.
이벤트 가산 로직(32)에 있어서, 이벤트 카운트 지연 로직(43) 및 이벤트 버니어 지연 로직(45)은 연산의 개시시 부터 현재까지 누적된 이벤트의 전체 지연 시간을 생성하기 위해 상호작용한다. 소수 부분 지연 데이터의 합계가 오버플로우를 생성할 때, 이벤트 버니어 지연 로직(45)은 이벤트 카운트 지연 로직(43)에 신호를 보냄으로써, 이벤트 카운트 지연 로직(43)에서 한 기준 클럭의 지연을 추가한다.
정수 프리-스케일링을 하는 이벤트 테스트 시스템의 기본적인 구조는 내부 동작은 다르지만 기본적으로는 도 5에 도시된 것과 같다. 주요한 차이는 이벤트 카운트 메모리(20)로부터의 이벤트 카운트 값과 스케일 인수가 기준 클럭의 정수라는 점이다. 그러므로, 정수 부분을 다른 정수 부분으로 스케일링하기 때문에 이벤트 버니어 지연의 결과에 가산될 소수 부분이 생성되지 않는다. 한편, 이벤트 버니어 지연은 기준 클럭의 한 사이클보다 작은 값이다. 그러므로, 정수 스케일 인수로 이 값을 스케일링하면 소수 부분이 생길 가능성이 있다. 더욱이, 이렇게 얻어진 지연은 기준 클럭의 한 사이클을 초과할 수 있다. 그러므로, 소수 스케일링의 경우와 마찬가지로, 버니어 스케일링의 결과로 생긴 정수는 이벤트 가산 로직(32)에 제공되어 정수 부분 지연에 추가되어야 한다. 이러한 분리 기능은 정수 부분 지연과 소수 부분 지연을 가산기(37)의 출력으로부터 분리함으로써 실행된다.
후술될 포스트-스케일링에 비해 상술된 프리-스케일링은 몇가지 단점을 갖는다. 첫째, 각 지연값의 승산은 결과치의 소수 부분을 주어진 수의 유효 비트에 꼭 맞게 되도록 할 필요가 있으며, 각각의 지연(버니어 지연)에 에러를 도입할 수 있다. 둘째, 스케일링 동작의 결과가 이벤트 가산 로직에 의해 가산되므로, 스케일링된 버니어 지연 데이터의 합계 중에 이들 에러가 누적될 수 있다. 현재 이벤트의 타이밍이 이전의 모든 이벤트의 지연 시간을 누적한 결과이기 때문에, 상술된 에러는 각각의 새로운 이벤트(지연 값)가 이전의 합에 더해질 때 마다 증가한다.
상기 프리-스케일링 동작에 의해 생긴 에러를 방지하기 위해, 스케일링 동작은 버니어 지연(소수 부분) 데이터의 가산 이후에 수행되어야 한다. 도 6은 가산 동작이 스케일링 동작보다 먼저 행해지는 본 발명의 포스트-스케일링 구성의 기본 구조를 도시한 것이다. 지연 데이터와 스케일 인수의 승산은 여전히 에러를 도입할 수 있지만, 에러는 한번만 발생하고, 다음에 오는 이벤트에 누적되지는 않는다.
도 6에서, 델타 시간(정수 부분과 소수 부분으로 구성된 지연 데이터)은 현재 이벤트의 지연 데이터가 이전의 모든 이벤트의 지연 데이터에 가산되는 이벤트 가산 로직(52)에 제공된다. 가산된 지연 데이터는 승산기(55)에서 스케일 인수와 승산된다. 스케일링된 지연 데이터는 이벤트 생성기(24)에 제공되고, 이벤트 생성기는 예를 들어, 최종 이벤트 카운트 지연인 이벤트 개시(이벤트 인에이블) 신호 및 최종 버니어 지연인 이벤트 버니어에 기초하여 이벤트를 발생시킨다. 도 6의 블록도는 또한 포스트-스케일링 로직이 데이터를 다시 이벤트 가산 로직(52)으로 보내야 함을 보여준다. 이 데이터는 스케일링 동작에 의해 추가 지연(오버플로우)이 있음을 나타내고, 따라서 가산 로직을 지연시키는 역할을 한다.
도 7은 이벤트 테스트 시스템에 적용된 포스트-스케일링의 기본 구조를 도시한 블록도이다. 이 예에서, 승산을 위한 스케일 인수는 정수와 소수 부분을 모두 포함한다. 이벤트 카운트 메모리(20)로부터의 이벤트 카운트 데이터(델타 시간의 정수 부분)는 이벤트 가산 로직(52) 내의 이벤트 카운트 지연 로직(53)에 제공된다. 이벤트 버니어 메모리(21)로부터의 이벤트 버니어 데이터(델타 시간의 소수 부분)는 이벤트 가산 로직(52) 내의 이벤트 버니어 지연 로직(54)에 제공된다. 이벤트 가산 로직(52)에 있어서, 현재 이벤트의 델타 시간은 이전의 모든 이벤트의 델타 시간에 가산된다. 이러한 가산 동작 과정 중에, 버니어 데이터의 가산 결과가 하나의 기준 클럭 사이클을 초과할 때마다, 캐리 신호는 이벤트 카운트 지연 로직(53) 내의 한 기준 클럭 사이클의 추가 지연을 포함하도록 생성된다.
승산기(58)는 이벤트 카운트 지연 로직(53)으로부터 최종 정수 지연 값을 수신한다. 정수 지연 값은 승산기(58)에서 스케일 인수와 승산된다. 승산기(59)는 이벤트 버니어 지연 로직(54)으로부터 최종 버니어 지연 값을 수신한다. 버니어 지연 값은 승산기(59)에서 스케일 인수와 승산된다. 승산기(58 및 59)로부터의 스케일링된 결과는 가산기(57)에 의해 가산된다. 스케일 인수의 소수 부분은 소수 부분을 갖는 스케일링된 이벤트 카운트 지연을 생성할 수 있다. 이 소수 부분은 현재 이벤트의 최종 지연값을 판단하기 위해 스케일링된 버니어 지연에 가산되어야 한다. 소수 부분의 가산이 한 기준 클럭 사이클보다 큰 경우(오버플로우)에는, 가산기(57)의 출력의 정수 부분은 기준 클럭의 한 사이클에 상당하는 지연 시간이 추가된다.
도 8은 이벤트 테스트 시스템에 적용된 포스트-스케일링의 다른 기본 구조를 도시한 블록도이다. 이 예에서, 승산 연산을 위한 스케일 인수는 정수 부분만을 포함한다. 정수 부분에 기초한 포스트-스케일링은 버니어 지연 스케일링의 결과에 가산될 이벤트 카운트 스케일링 내의 소수 부분을 생성하지 않는다. 이것은 이벤트 카운트 지연 로직(63)으로부터의 지연 데이터 및 스케일 인수가 이벤트 클럭의 정수배이기 때문이다. 이와 반대로, 이벤트 버니어 지연은 이벤트 클럭의 한 사이클보다 작은 값이며 소수 부분을 포함는다. 이 값을 정수 스케일 인수로 스케일링하는 것은 여전히 소수 부분을 갖는 결과를 생성할 수 있다. 스케일링된 버니어 지연은 또한 기준 클럭의 한 사이클을 초과할 수 있다. 그러므로, 도 7의 소수 스케일링의 경우와 마찬가지로, 버니어 스케일링 결과치 중의 정수는 가산기(67)에 의해 이벤트 카운트 지연의 정수 부분 지연에 가산되어야 한다. 그 다음, 가산기(67)의 출력에서의 정수 부분 지연과 소수 부분 지연은 이벤트 생성기(24)에 제공된다.
도 9는 정수 부분과 소수 부분을 모두 포함하는 스케일링 인수를 사용하는 포스트-스케일링의 더욱 구체적인 예를 도시한 것이다. 이벤트 카운트 상태 머신(71)은 부분적으로 도 7의 이벤트 가산 로직(52) 내의 이벤트 카운트 지연 로직(53)에 대응한다. 이벤트 카운트 상태 머신(71)은 후술되는 바와 같이 이전의 모든 이벤트를 통해 누적된 지연 데이터의 정수 부분에 기초하여 유효 데이터 인에이블을 생성한다. 레지스터(72)는 이 예에서 정수 부분과 소수 부분으로 구성된 스케일 인수를 저장한다.
도 9의 실시예는 기본적으로 이벤트 카운트 스케일링부, 이벤트 버니어 스케일링부 및 이벤트 스케일링 출력부로 구성된다. 이벤트 카운트 스케일링부는 대략 도 7의 승산기(58)에 대응하고, 이벤트 버니어 스케일링부는 도 7의 승산기(59)에 대응한다. 또한, 이벤트 스케일링 출력은 도 7의 가산기(57)에 대략 대응한다. 누적된 이벤트 카운트 데이터에 기초하여 생성된 상태 머신(71)으로부터의 유효 데이터 인에이블은 레지스터(79) 및 플립 플롭(81)을 통해 이벤트 스케일링 출력에 보내짐으로써 최종 지연의 정수 부분인 이벤트 개시 신호를 생성한다. 이벤트 스케일링 출력부는 또한 이벤트 개시 신호와 관련된 지연 타이밍인 최종 지연의 소수 부분을 나타내는 이벤트 버니어 데이터를 생성한다.
레지스터(72)로부터의 스케일 인수는 도 9의 이벤트 카운트 스케일링부 및 이벤트 버니어 스케일링부에 제공된다. 이벤트 카운트 스케일링부는 스케일링 카운터(73), 및 가산기(74)와 레지스터(75)로 구성된 누산기를 포함한다. 이벤트 버니어 스케일링부는 승산기(77) 및 레지스터(78)를 포함한다. 이벤트 스케일링 출력부는 가산기(82), 플립 플롭(83) 및 상태 머신(84)을 포함한다. 구체적으로 도시되지는 않았지만, 기준 클럭은 도 9의 각 회로 부분에 공통으로 제공된다.
이 예에서, 이벤트 카운트 스케일링부에서는 스케일 인수의 소수 부분이 가산기(74)에 제공되고, 스케일 인수의 정수 부분이 카운터(73)에 제공된다. 이벤트 버니어 스케일링에서는 스케일 인수의 풀 스케일(정수와 소수 부분)이 승산기(77)에 제공된다. 이벤트 버니어 메모리로부터의 버니어 데이터는 승산기(77)에 제공되어 스케일 인수와 승산된다.
스케일 인수의 정수 부분은 카운트된 값이 미리 설정된 값에 도달할 때마다 단말 카운트(TC) 펄스가 스케일링 카운터(73)로부터 발생되도록 스케일링 카운터(73)를 미리 설정한다. 예를 들어, 스케일 인수의 정수 부분이 "3"을 나타내면, 스케일링 카운터(73)는 기준 클럭의 3개의 펄스를 카운트할 때마다 단말 카운트 펄스를 발생시킨다. 단말 카운트 펄스는 단말 카운트 펄스의 수가 상태 머신(71) 내에 지정된 누적 이벤트 카운트 값에 도달할 때 유효 데이터 인에이블이 생성되도록 클럭 인에이블 신호로서 이벤트 카운트 상태 머신(71)에 제공된다.
스케일링 카운터(73)로부터의 단말 카운트 펄스는 또한 레지스터(75 및 78)에 공급된다. 상술된 바와 같이, 레지스터(75) 및 가산기(74)가 누산기를 형성하기 때문에, 스케일 인수의 소수 부분은 단말 카운트 펄스가 레지스터(75)에 의해 수신될 때마다 이전의 소수 부분에 가산된다. 누적된 소수 부분이 "1"과 같은 정수, 즉 하나의 기준 클럭 사이클을 초과하는 경우에, 그 결과로서의 캐리 신호를 스케일링 카운터(73)에 제공하며, 다음의 단말 카운트 펄스를 발생시키기 전에 하나의 기준 클럭 사이클에 상당하는 시간만큼 지연시킨다.
이벤트 버니어 스케일링부에서, 레지스터(78)는 버니어 데이터를 스케일 인수와 승산하여 얻어진 버니어 값을 이벤트 스케일링 출력부 내의 가산기(82)에 전송한다. 그러므로, 이벤트 스케일링 출력부 내의 가산기(82)는 레지스터(누산기)(75)로부터의 누적된 소수 부분을 레지스터(78)로부터의 스케일링된 버니어 데이터에 가산한다. 가산 결과가 오버플로우, 즉 정수값을 넘는 경우에, 이러한 정수를 나타내는 최상위 비트(MSB)를 상태 머신(84)에 제공함으로써 정수에 의해 정해진 추가의 지연을 제공한다. 추가 지연에 의해 정해진 타이밍에 기초하여, 상태 머신(84)은 도 7에 도시된 바와 같은 이벤트 생성기에 제공된 유효 데이터 인에이블 또는 이벤트 개시 신호를 발생시킨다. 스케일링된 이벤트 버니어의 소수 부분은 또한 이벤트 스케일링 출력에 의해 생성되어 이벤트 생성기에 제공된다.
도 10은 스케일링 인수가 정수 부분과 소수 부분을 모두 포함하는 이벤트 테스트 시스템 내에 실현된 소수 포스트-스케일링의 다른 예를 도시한 블록도이다. 상기에서와 같이, 도 9의 실시예에서는 스케일 인수의 풀 스케일 값이 구비된 승산기(77)를 포함한다. 따라서, 풀 스케일 값의 승산 연산은 실현하는 데에 많은 양의 로직을 필요로 할 수 있다. 이와 달리, 도 10의 방법에서는 버니어 승산을 이벤트 버니어 스케일링의 정수 연산과 소수 연산으로 나누는 것이다.
도 10의 이벤트 카운트 상태 머신(71) 및 이벤트 카운트 스케일링부는 도 9에서와 동일하고, 이전의 모든 이벤트를 통해 누적된 지연 데이터의 정수 부분에 기초한 유효 데이터 인에이블을 생성한다. 유효 데이터 인에이블은 플립플롭(79 및 91-93)을 통해 이벤트 스케일링 출력부 내의 상태 머신(84)으로 전송되어 이벤트 개시 신호를 생성한다. 레지스터(72)는 정수 부분과 소수 부분으로 이루어진 스케일 인수를 저장한다.
도 10의 이벤트 카운트 스케일링부는 스케일링 카운터(73)가 이벤트 스케일링 출력부 내의 비교기(99)에 카운트 데이터 CNT를 제공한다는 점에서 도 9와 다르다. 이벤트 카운트 스케일링부의 다른 차이점은 스케일링 카운터(73)가 모드 제어(MODE)를 이벤트 버니어 스케일링 내의 누산기에 제공한다는 점이다. 도 9의 예에서와 같이, 가산기(74) 및 레지스터(75)는 누산기를 형성한다. 이벤트 카운트 스케일링부는 이벤트 버니어 스케일링부 내의 추가 부품에 관한 재타이밍을 위해 추가의 플립플롭(94-96)을 포함한다.
이벤트 버니어 스케일링부는 승산기(105), 플립플롭(107), 레지스터(111), 가산기(106)와 레지스터(108)로 구성된 버니어 누산기, 플립플롭(112), 가산기(113), 및 플립플롭(102)을 포함한다. 누산기는 스케일링 카운터(73)로부터 모드 제어 신호를 수신한다. 이벤트 버니어 메모리로부터의 버니어 데이터는 승산기(105) 및 가산기(106)(버니어 누산기)에 제공된다. 승산기(105)는 또한 레지스터(72)로부터 스케일 인수의 소수 부분을 수신한다.
이벤트 스케일링 출력부는 상술된 비교기(99) 및 상태 머신(84), 가산기(82), 플립 플롭(83, 97, 98 및 101)을 포함한다. 비교기(99)는 스케일링 카운터(73)로부터 카운트 데이터 CNT를 수신하고, 누적된 버니어 데이터의 최상위비트(MSB)로부터 구해진 오버플로우 신호를 버니어 스케일링부로부터 수신하여, 이들을 비교한다. 상태 머신(84)은 이벤트 카운트 상태 머신(71)으로부터의 유효 데이터 인에이블 및 비교기(99)의 출력(정수 지연 인에이블)을 수신할 때 이벤트 개시 신호를 생성한다. 이벤트 개시 신호는 가산기(82)에 의한 가산 결과가 캐리 신호(MSB)를 포함할 때 하나의 기준 클럭 사이클만큼 지연된다. 캐리 신호가 1, 즉 MSB의 배수 비트보다 큰 수를 나타내면, 그 수에 상당하는 기준 클럭 사이클의 지연이 이벤트 개시 신호의 생성 이전에 추가된다.
도 10에서, 레지스터(72)로부터의 스케일 인수는 상술된 이벤트 카운트 스케일링부 및 이벤트 버니어 스케일링부에 제공된다. 이 예에서, 이벤트 카운트 스케일링에 있어서, 스케일 인수의 소수 부분은 가산기(74)(누산기)에 제공되고, 스케일 인수의 정수 부분은 스케일링 카운터(73)에 제공된다. 이벤트 버니어 스케일링에 있어서는 도 9의 예와 달리, 스케일 인수의 소수 부분만이 승산기(105)에 제공된다. 이벤트 버니어 메모리로부터의 버니어 데이터는 스케일 인수의 소수 부분에 의해 승산되도록 승산기(105)에 제공된다. 또한, 버니어 데이터는 각각의 기준 클럭 사이클에서 스케일 인수의 정수 부분에 의해 정해진 횟수만큼 누적되도록 버니어 누산기(가산기(106))에 제공된다.
스케일 인수의 정수 부분은 카운트된 값이 미리 설정된 값에 도달할 때마다 단말 카운트(TC) 펄스가 발생되도록 스케일링 카운터(73)를 미리 설정한다. 예를 들어, 스케일 인수의 정수 부분이 "3"일 때, 스케일링 카운터(73)는 기준 클럭의 펄스를 3회 카운트할 때마다 단말 카운트 펄스를 발생시킨다. 단말 카운트 펄스는 단말 카운트 펄스의 수가 상태 머신(71) 내에 지정된 누적 이벤트 카운트 값에 도달할 때 유효 데이터 인에이블이 생성되도록 클럭 인에이블로서 이벤트 카운트 상태 머신(71)에 제공된다.
스케일링 카운터(73)로부터의 단말 카운트 펄스는 또한 레지스터(75)에 공급된다. 상술된 바와 같이, 레지스터(75) 및 가산기(74)가 누산기를 형성하기 때문에, 스케일 인수의 소수 부분은 단말 카운트 펄스가 레지스터(75)에 의해 수신될 때마다 이전의 소수 부분에 가산된다. 누적된 소수 부분이 "1"(하나의 기준 클럭 사이클)과 같은 정수를 초과하는 경우에, 단말 카운트 펄스를 발생시키기 전에 하나의 기준 클럭 사이클의 추가 지연을 가산하도록 최종 캐리 신호가 스케일링 카운터(73)에 수신된다.
이벤트 버니어 스케일링부에 있어서, 상술된 바와 같이, 이벤트 버니어 메모리로부터의 버니어 데이터는 승산기(105)에 제공되어 스케일 인수의 소수 부분에 의해 승산된다. 승산기(105)가 스케일 인수의 소수 부분만을 다루기 때문에, 승산과 관련된 비트 수는 도 9의 승산기(77)와 비교하여 감소될 수 있다. 버니어 데이터는 또한 가산기(106) 및 레지스터(108)로 구성된 버니어 누산기에 의해 각각의 기준 클럭 사이클에서 누적된다. 버니어 누산기는 정수의 승산은 단순히 정수값의 수만큼 가산함으로써 실시된다는 점에 기초하여 버니어 승산의 정수 부분을 계산한다.
스케일링 카운터(73)로부터의 모드 제어(MODE) 신호는 스케일링 카운터(73) 내에서의 각 스케일 카운트 연산의 개시시에 버니어 누산기를 초기화한다. 즉, 스케일링 카운터(73)로의 스케일 인수의 정수 부분이 "3"인 상기 예에서, 모드 제어 신호는 3개의 기준 클럭 사이클 마다 발생된다. 모드 제어 신호는 버니어 누산기를 리셋한다. 버니어 누산기의 오버플로우(MSB)는 비교기(99)에 제공되며, 스케일링 카운터(73)로부터의 카운트 데이터와 비교된다. 그 비교 결과(정수 지연 인에이블)는 상태 머신(84)에 제공되어 유효 데이터 인에이블의 지연 시간을 판단한다.
누적된 버니어 데이터 및 승산된 버니어 데이터는 가산기(113)에 의해 가산되고, 그 결과는 이벤트 스케일링 출력부 내의 가산기(82)에 제공된다. 이벤트 스케일링 출력부 내의 가산기(82)는 레지스터(75)로부터의 이벤트 카운트 데이터의 누적된 소수 부분을 가산기(113)로부터의 스케일링된 버니어 데이터에 가산한다. 가산기(82)에 의한 가산 결과가 오버플로우, 즉 정수를 생성하는 경우에, 이러한 정수를 나타내는 최상위 비트(MSB)는 상태 머신(84)에 제공되어 정수에 의해 정해진 추가 지연이 가산된다. 비교기(99)의 출력에 의해 정해진 지연 시간 및 MSB에 의해 정해진 추가 지연에 기초하여, 상태 머신(84)은 이벤트 생성기에 제공되는 이벤트 개시 신호를 생성한다.
도 11은 스케일링 인수가 정수 부분만을 포함하는 이벤트 테스트 시스템 내에 구현된 포스트-스케일링 구조의 또 다른 예를 도시한 블록도이다. 도 11의 구현예는 스케일 인수의 소수 부분의 스케일링 동작을 포함하지 않기 때문에 도 10에 비해 간단하다. 도 12의 (a)-(g)는 도 11의 스케일링 동작을 나타내는 타이밍 차트이다.
도 11에서, 스케일 인수가 정수 부분만을 포함하기 때문에, 도 10의 이벤트 카운트 스케일링부 내의 누산기는 이 실시예에서는 포함되지 않는다. 이벤트 카운트 상태 머신(71)은 스케일링 카운터(73)로부터의 단말 카운트(TC) 펄스와 동기하여 증가하고, 이전의 모든 이벤트를 통해 누적된 지연 데이터의 정수 부분에 기초하여 유효 데이터 인에이블을 생성한다. 유효 데이터 인에이블은 플립플롭(79, 91 및 93)을 통해 이벤트 스케일링 출력부 내의 AND 회로(90)로 전송되어, 이벤트 개시 신호를 생성한다.
도 11의 이벤트 카운트 스케일링부에서, 스케일링 카운터(73)는 카운트 데이터 CNT를 이벤트 스케일링 출력부 내의 비교기(99)로 전송한다. 도 11의 이벤트 버니어 스케일링은 가산기(106) 및 레지스터(108)로 구성된 버니어 누산기를 포함한다. 스케일링 카운터(73)는 모드 제어(MODE) 신호를 이벤트 버니어 스케일링부 내의 버니어 누산기로 제공하여 버니어 누산기를 리셋한다. 이벤트 버니어 메모리로부터의 버니어 데이터는 버니어 누산기에 제공된다.
도 11의 이벤트 스케일링 출력부는 스케일링 카운터(73)로부터의 카운트 데이터 및 버니어 스케일링으로부터 누적 버니어 데이터의 캐리 신호(MSB)를 수신하여 이들을 비교하는 비교기(99)를 포함한다. AND 회로(90)는 이벤트 카운트 상태 머신(71)으로부터의 유효 데이터 인에이블 및 비교기(99)의 출력(정수 지연 인에이블)을 수신할 때 이벤트 개시 신호를 생성한다. 이벤트 개시 신호는 가산기(82)에 의한 가산 결과가 캐리 신호(MSB)를 포함할 때 하나의 기준 클럭 사이클만큼 지연된다. 상술된 바와 같이, 캐리 신호가 1, 즉 MSB의 배수 비트보다 큰 수를 나타내면, 클럭 사이클에 상당하는 수가 이벤트 개시 신호 발생 전에 가산된다.
다시 이벤트 카운트 스케일링부를 참조하면, 스케일링 카운터(73)에는 정수만으로 구성된 스케일 인수가 제공된다. 레지스터(72)로부터의 스케일 인수는 스케일링 카운터(73)를 미리 설정하여 카운트된 값이 미리 설정된 정수에 도달할 때마다 단말 카운트(TC) 펄스가 생성되도록 한다. 예를 들어, 스케일 인수가 "3"일 때, 카운터(73)는 기준 클럭의 3개의 펄스를 카운트할 때마다 단말 카운트 펄스를 발생시킨다. 이벤트 카운트 상태 머신(71)은 각각의 단말 카운트 펄스에서 진행하여 단말 카운트 펄스가 내부에 지정된 누적 이벤트 카운트 값에 도달할 때 유효 데이터 인에이블이 생성되도록 한다.
이벤트 버니어 스케일링부에 있어서, 상술된 바와 같이, 가산기(106)와 레지스터(108)로 구성된 누산기는 이벤트 버니어 메모리로부터 버니어 데이터를 수신한다. 버니어 데이터는 스케일 인수의 정수에 의해 정해진 횟수만큼 기준 클럭 사이클 마다 누적된다. 이것은 정수의 승산이 단순히 버니어 데이터를 정수값의 수만큼 가산하는 것으로 이루어지기 때문이다.
이러한 누적은 각 스케일 카운트 연산의 개시 시에 누산기를 초기화하는 스케일링 카운터(73)로부터의 모드 제어(MODE) 신호의 제어에 의해 실행된다. 스케일링 카운터(73)에 대한 정수 부분이 "3"인 상기 예에 있어서, 모드 제어 신호는 3개의 기준 클럭 사이클 마다 발생되어, 누산기를 리셋한다. 결과적으로, 누산기는 버니어 데이터를 3회, 즉 스케일 인수에 의해 지정된 정수값의 수만큼 가산한다. 누적된 버니어의 오버플로우(MSB)는 비교기(99)에 제공되어 스케일링 카운터(73)로부터의 카운트 데이터와 비교된다. 비교 결과는 AND 회로(90)에 제공되어 유효 데이터 인에이블의 지연 시간을 판단한다. 누적된 버니어의 소수 부분은 이벤트 스케일링 출력부의 출력에서 생성된다.
도 11의 실시예에서의 상기 동작을 도 12의 (a)-(g)의 타이밍 차트를 참조하여 더 설명한다. 이 예에서는 스케일 인수가 정수 "3"이고, 즉 현재 이벤트의 원래 델타 시간은 3회 신장된다고 하자. 그러므로, 스케일링 카운터(73)는 도 12의 (a)의 3개의 기준 클럭 마다 단말 카운트 펄스를 생성한다. 또한, 도 11의 이벤트 카운트 상태 머신(71)은 3개의 인에이블 펄스, 즉 3개의 단말 카운트 펄스를 수신할 때 유효 데이터 인에이블을 발생시킨 것으로 가정한다. 따라서, 이벤트 카운트 상태 머신(71)에 의해 도 12의 (f)의 유효 데이터 인에이블이 생성된다. 스케일링 카운터(73)는 또한 기준 클럭과 동기하여 도 12의 (b)의 카운트 데이터(스케일 사이클 카운트)를 생성한다. 카운트 데이터는 도 11에서의 비교기(99)에 제공된다.
이벤트 버니어 스케일링부 내의 버니어 누산기는 도 12의 (c)에 도시된 바와 같이 스케일 인수에 의해 정해진 횟수만큼, 이 경우에는 버니어 데이터를 3회 가산한다. 스케일링 카운터(73)로부터의 모드 제어 신호는 누산 연산을 시작하기 전에 3개의 기준 클럭마다 누산기를 리셋한다. 누산된 버니어 데이터가 스케일링 카운터(73)로부터 단말 카운트 펄스에 의해 레지스터(112) 내에 인에이블되기 때문에, 이벤트 버니어 스케일링부는 도 12의 (d)의 누적된 버니어 데이터를 생성하여 이벤트 생성기에 제공한다. 비교기(99)는 스케일링 카운터(73)로부터의 카운트 데이터(스케일 사이클 카운터) 및 누적된 버니어 데이터의 최상위 비트(MSB)를 비교하여, 2개의 데이터가 서로 일치될 때 도 12의 (e)의 일치 신호(정수 지연 인에이블)를 생성한다. 그러므로, AND 회로(90)는 도 12의 (f)의 유효 데이터 인에이블 및 도 12의 (e)의 일치 신호를 수신하는 타이밍과 동기하여 이벤트 생성기에 대한 도 12의 (g)의 이벤트 개시 신호를 생성한다.
도 13은 도 10에 도시된 바와 같은 소수 포스트-스케일에서의 이벤트 카운트 스케일링의 한 예를 도시한 블록도이다. 이 블록도는 이벤트 카운트 스케일링의 정수 부분이 스케일링 카운터(123)와 비교기(124)로 구성된 것을 나타낸다. 스케일링 카운터(123)는 스케일 인수의 정수 부분의 크기에 기초하여 이벤트 카운트 로직 내로 대기 상태의 정수를 삽입하는 업 카운터이다. 비교기(124)는 레지스터(72)로부터의 스케일 인수의 정수 부분과 카운터(123)로부터의 카운트 데이터를 비교한다. 2개의 데이터가 서로 일치될 때, 비교기(124)는 일치 신호 또는 단말 카운트(TC)를 발생시킨다. 도 10에 도시된 바와 같은 이벤트 카운트 상태 머신은 비교기(124)가 단말 카운트를 발할 때까지 시작할 수 없다. 스케일링 카운터(123)의 카운트 데이터(스케일 사이클 카운트)는 이벤트 스케일링 출력부에 제공되어 정수 지연 인에이블(도 10의 비교기(99)에 의한 일치 신호)을 생성하기 위한 정확한 지연을 판단하는 데 사용된다.
이벤트 카운트 스케일링의 소수 부분은 산술 연산 장치(128)와 레지스터(121)로 구성된 누산기로 구성된다. 누산기는 스케일 인수의 소수 부분을 수신하고, 모든 단말 카운트 펄스에서 소수 부분을 가산한다. 이러한 누산으로부터 얻어진 캐리 신호는 스케일링 카운터(123)로 다시 전송되어 하나의 추가 기준 클럭 지연을 삽입한다. 누적된 데이터는 이벤트 스케일링 출력부에 제공되어 최종 버니어 데이터 계산에 사용된다.
도 14는 도 11에 도시된 바와 같은 정수 포스트-스케일링에 사용될 이벤트 카운트의 또 다른 예를 도시한 블록도이다. 이 예는 스케일 인수가 정수만으로 구성된 이벤트 카운트의 정수 스케일링에 대한 것이다. 도 14의 구조는 소수 이벤트 카운트 스케일링에 관한 점에서 도 13과 유사하다. 기본적인 차이는 지연 연산에 관한 모든 소수 부분을 제거한다는데 있다. 예를 들어, 스케일 인수의 소수 부분에 대한 누산기는 없다.
도 15는 도 10에 도시된 바와 같은 소수 포스트-스케일링에 사용될 이벤트 버니어 스케일링의 한 예를 도시한 블록도이다. 도 15의 기본 구조는 기본적으로 도 10의 이벤트 버니어 스케일링의 것과 동일하다. 블록도는 소수부와 정수부로 구성된다. 버니어 스케일링의 소수부에는 스케일 인수의 소수 부분을 수신하여 이것을 버니어 데이터와 승산하는 승산기(131)가 도시되어 있다. 도 10과 관련하여 전술한 바와 같이, 스케일 인수의 소수 부분만이 승산기(131)에 사용되기 때문에, 관련된 로직은 도 9에 도시된 바와 같은 전체 스케일 승산에 요구된 것보다 작아질 수 있다.
버니어 스케일링의 정수 부분은 산술 연산 장치(134)와 레지스터(135)로 구성된 누산기로 구성된다. 정수 부분은 또한 누산기 인에이블 신호에 의해 제어된 클럭 인에이블된 레지스터(136)를 포함한다. 누산기는 스케일 인수의 각각의 정수(단말 카운트)에서 기준 클럭을 정수회 누적할 수 있다. ALU 제어는 도 10의 각 단말 카운트 또는 모드 제어 신호의 끝에서 누산기를 리셋한다. 누산기 인에이블은 클럭 인에이블 레지스터(136)가 각각의 단말 카운트에서 최종의 스케일링된 버니어 값을 저장할 수 있게 한다.
정수 부분의 버니어 스케일링의 결과는 정수 지연값 및 나머지 소수 지연값을 나타낸다. 정수 지연 값은 기준 클럭의 정수를 나타내고, 소수 지연 값은 기준 클럭의 나머지 소수를 나타낸다. 소수 기준 클럭 지연은 산술 연산 장치(137)에 의해 이벤트 버니어 스케일링의 소수 부분의 결과에 가산되어 버니어 스케일링된 데이터를 생성한다. 누산된 버니어 내의 오버플로우는 도 10의 비교기(99)에 보내진다.
도 16은 도 11의 정수 포스트-스케일링에 사용될 이벤트 버니어 스케일링의 또 다른 예를 도시한 블록도이다. 이 예는 스케일 인수가 정수만으로 구성된 이벤트 버니어 정수 스케일링에 대한 것이다. 도 16의 구조는 소수 이벤트 카운트 스케일링이 도 15와 유사하다. 기본 차이는 지연 연산에 관한 모든 소수 부분이 제거되어 있다는 데 있다. 예를 들어, 스케일 인수의 소수 부분에 대한 승산기가 없다.
본 발명에 따르면, 이벤트에 기초한 반도체 테스트 시스템은 반도체 장치를 평가하기 위해 이벤트 메모리 내에 저장된 이벤트 데이터에 기초하여 여러 가지 타이밍의 이벤트를 생성할 수 있다. 각각의 이벤트의 타이밍은 이전 이벤트로부터의 시간(델타 시간)의 차에 의해 정해진다. 이벤트들 사이의 델타 시간은 또한 기준 클럭 주기의 정수배와 기준 클럭 주기의 소수에 의해 정해진다. 본 발명의 이벤트 테스트 시스템은 스케일 인수에 기초하여 현재 이벤트의 지연 시간을 변경함으로써 현재 이벤트를 생성하기 위한 지연 시간(델타 시간)을 스케일링할 수 있다. 본 발명의 이벤트 테스트 시스템 내의 스케일링 동작은 정수 부분과 소수 부분을 모두 갖는 스케일 인수에 기초하여 실행된다. 다른 실시양태에 있어서, 이벤트 테스트 시스템 내의 스케일링 동작은 정수 부분만을 갖는 스케일 인수에 기초하여 실행된다.
양호한 실시예에 대해서만 구체적으로 도시되고 설명되었지만, 본 발명의 정신과 범위를 벗어나지 않고서 첨부된 청구 범위 내에서 본 발명을 여러 가지로 수정 및 변형할 수 있다는 것을 알 수 있을 것이다.
도 1은 본 발명의 이벤트에 기초한 테스트 시스템의 기본 구조를 개략적으로 도시한 블록도.
도 2는 2개의 인접한 이벤트들 사이의 지연 시간(델타 시간)을 표현하기 위해 이벤트 카운트와 이벤트 버니어(vernier) 사이의 기본적인 타이밍 관계를 도시한 타이밍도.
도 3은 이벤트 테스트 시스템 내의 이벤트 가산 및 스케일링 동작의 개념을 나타내기 위해 기준 클럭에 관련된 여러가지 이벤트들 사이의 타이밍 관계를 도시한 타이밍 차트.
도 4는 본 발명에 따라 가산 기능 전단에 스케일링 기능이 설치되는 프리(pre)-스케일링의 기본적인 구조를 개략적으로 도시한 블록도.
도 5는 본 발명에서의 정수 프리-스케일링 또는 소수 프리-스케일링을 실행하기 위한 회로 구조의 한 예를 개략적으로 도시한 블록도.
도 6은 본 발명에 따라 가산 기능 후단에 스케일링 기능이 설치되는 포스트(post)-스케일링의 기본적인 구조를 개략적으로 도시한 도면.
도 7은 스케일 인수가 정수 부분과 소수 부분을 모두 포함하는 이벤트 테스트 시스템 내에 적용된 정수 포스트-스케일링의 회로 구조의 한 예를 개략적으로 도시한 블록도.
도 8은 스케일 인수가 정수 부분만을 포함하는 이벤트 테스트 시스템 내에 적용된 정수 포스트-스케일링의 회로 구조의 한 예를 개략적으로 도시한 블록도.
도 9는 스케일링 인수가 정수 부분과 소수 부분을 모두 포함하는 이벤트 테스트 시스템의 소수 포스트-스케일링의 더욱 상세한 실시예를 도시한 블록도.
도 10은 스케일링 인수가 정수 부분과 소수 부분을 모두 포함하는 이벤트 테스트 시스템의 소수 포스트-스케일링의 다른 실시예를 도시한 블록도.
도 11은 스케일링 인수가 정수 부분만을 포함하는 이벤트 테스트 시스템 내에 실현된 정수 포스트-스케일링의 실시예를 도시한 블록도.
도 12의 (a)-(g)는 도 11에 도시된 정수 포스트-스케일링의 스케일링 동작을 도시한 타이밍 차트.
도 13은 도 9 및 도 10의 소수 포스트-스케일링에 사용된 이벤트 카운트 스케일링부의 구조 및 연산을 도시한 블록도.
도 14는 도 11의 정수 포스트-스케일링에 사용된 이벤트 카운트 스케일링부의 구조 및 연산을 도시한 블록도.
도 15는 도 9 및 도 10의 소수 포스트-스케일링에 사용된 이벤트 버니어 스케일링부의 구조 및 연산을 도시한 블록도.
도 16은 도 11의 정수 포스트-스케일링에 사용된 이벤트 버니어 스케일링부의 구조 및 연산을 도시한 블록도.
<도면의 주요 부분에 대한 부호의 설명>
12 : 호스트 CPU
13 : 버스 인터페이스
14 : 시스템 버스
15 : 내부 버스
17 : 고장 메모리 로직
18 : 이벤트 어드레스 제어 로직
20 : 이벤트 카운트 메모리
21 : 이벤트 버니어 메모리
22 : 이벤트 가산 및 스케일링 로직
24 : 이벤트 생성기
26 : 핀 전자 부품
30 : 이벤트 지연 메모리
32, 52, 62 : 이벤트 가산 로직
43, 53, 63 : 이벤트 카운트 지연 로직
45, 54, 64 : 이벤트 버니어 지연 로직
56, 66 : 이벤트 지연 스케일링 로직
71 : 이벤트 카운트 상태 머신
72 : 레지스터

Claims (17)

  1. 피 시험 전자 장치(DUT)에 테스트 신호를 공급하여 상기 DUT의 출력을 스트로브(strobe) 신호의 타이밍에 평가함으로써 상기 DUT를 테스트하는 이벤트에 기초한 테스트 시스템(event based test system)에 있어서,
    타이밍 데이터 중 기준 클럭 주기의 정수배 데이터로 구성된 이벤트 카운트 데이터(event count data; 정수부 데이터)를 저장하는 이벤트 카운트 메모리와, 상기 타이밍 데이터 중 상기 기준 클럭 주기의 소수(fraction) 데이터로 구성된 이벤트 버니어 데이터(event vernier data; 소수부 데이터)를 저장하는 이벤트 버니어 메모리로 구성된 이벤트 메모리 - 상기 타이밍 데이터는 2개의 인접한 이벤트들 사이의 시간 차를 나타냄 - ;
    상기 타이밍 데이터를 판독하기 위해 상기 이벤트 메모리를 억세스하기 위한 어드레스 데이터를 생성하는 어드레스 시퀀서;
    소정의 기준점에 대한 현재 이벤트의 전체 시간을 생성하기 위해, 상기 이벤트 메모리로부터의 현재 이벤트와 이전의 이벤트들의 타이밍 데이터를 가산하는 가산 및 스케일링 로직(summing and scaling logic) - 상기 가산 및 스케이링 로직은 상기 타이밍 데이터를 스케일링함으로써 스케일 인수(scale factor)에 비례하여 상기 현재 이벤트의 전체 시간을 변경하고, 상기 가산 및 스케일링 로직은 가산 및 스케일링 동작에 따른 소수부의 합이 상기 기준 클럭 주기를 초과할 때마다 1 기준 클럭 주기에 상당하는 추가 지연을 제공하는 지연 수단을 포함함 -;
    테스트 신호 또는 스트로브 신호를 형성하기 위해 상기 전체 시간에 기초하여 각각의 이벤트를 생성하는 이벤트 생성 회로; 및
    테스트 프로그램을 통해 상기 이벤트에 기초한 테스트 시스템의 전체 동작을 제어하는 호스트 컴퓨터
    를 포함하고,
    상기 이벤트는, 모든 이벤트들에 공통적인 고정 타이밍 시점인 소정의 기준점에 대한 타이밍에 상기 DUT를 테스트하는 상기 테스트 시스템에 의해 생성되는 신호에서 있어서의 임의의 변화로 정의되는 것을 특징으로 하는 이벤트에 기초한 테스트 시스템.
  2. 제1항에 있어서, 상기 가산 및 스케일링 로직은
    상기 스케일 인수에 기초하여 상기 이벤트 카운트 데이터를 스케일링하는 이벤트 카운트 스케일링 로직,
    상기 스케일 인수에 기초하여 상기 이벤트 버니어 메모리로부터의 버니어 데이터를 스케일링하는 이벤트 버니어 스케일링 로직,
    상기 이벤트 카운트 스케일링 로직으로부터 상기 스케일 인수의 정수 부분에 응답하여 생성되는 단말 카운트 펄스에 응답하여 출력 신호를 생성하는 이벤트 카운트 상태 머신, 및
    상기 이벤트 카운트 스케일링 로직으로부터의 스케일링된 데이터와 상기 이벤트 버니어 스케일링 로직으로부터의 스케일링된 데이터와 상기 이벤트 카운트 상태 머신으로부터의 출력 신호에 기초하여, 상기 현재 이벤트의 스케일링된 전체적인 지연을 계산하는 이벤트 스케일링 출력 로직
    을 구비하는 것을 특징으로 하는 시스템.
  3. 제2항에 있어서, 상기 타이밍 데이터를 스케일링하는 상기 스케일 인수는 정수 부분과 소수 부분으로 형성되는 것을 특징으로 하는 시스템.
  4. 제2항에 있어서, 상기 타이밍 데이터를 스케일링하는 상기 스케일 인수는 정수 부분만으로 형성되는 것을 특징으로 하는 시스템.
  5. 제3항에 있어서, 상기 이벤트 카운트 스케일링 로직은
    상기 스케일 인수의 정수 부분이 제공되고, 상기 스케일 인수의 정수 부분에 의해 규정된 횟수만큼 기준 클럭을 카운트하고, 상기 규정된 횟수만큼 기준 클럭을 카운트할 때마다 단말 카운트 펄스를 발생시키는 스케일링 카운터, 및
    상기 스케일 인수의 소수 부분이 제공되고 상기 스케일링 카운터로부터 단말 카운트 펄스를 수신할 때마다 소수 부분을 누적하는 누산기
    로 구성되며,
    상기 누적된 데이터가 상기 기준 클럭의 한 사이클을 초과하는 경우, 상기 단말 카운트 펄스를 발생시키기 전에 추가 지연을 포함하도록 상기 스케일링 카운터에 상기 기준 클럭의 한 사이클의 추가 지연을 제공하기 위한 캐리 신호가 상기 누산기에 의해 생성되는 것을 특징으로 하는 시스템.
  6. 제5항에 있어서, 상기 이벤트 버니어 스케일링 로직은
    상기 이벤트 버니어 메모리로부터의 버니어 데이터가 제공되고 상기 정수 부분과 상기 소수 부분을 모두 구비한 스케일 인수에 의해 상기 버니어 데이터를 승산하기 위한 승산기로 구성되는 것을 특징으로 하는 시스템.
  7. 제6항에 있어서, 상기 이벤트 스케일링 출력 로직은
    상기 이벤트 버니어 스케일링 로직 내의 상기 승산기로부터의 승산된 데이터와 상기 이벤트 카운트 스케일링 로직 내의 누산기로부터의 누적된 데이터를 가산하는 가산기, 및
    상기 이벤트 카운트 상태 머신으로부터의 출력 신호가 제공되고 상기 이벤트 생성기로 전송되는 이벤트 개시 신호를 생성하는 상태 머신
    으로 구성되며,
    상기 가산된 데이터가 상기 기준 클럭의 한 사이클을 초과하는 경우, 상기 이벤트 개시 신호를 생성하기 전에 추가 지연을 포함하도록 상기 상태 머신에 상기 기준 클럭의 한 사이클의 추가 지연을 제공하기 위한 캐리 신호가 상기 가산기에 의해 생성되는 것을 특징으로 하는 시스템.
  8. 제7항에 있어서, 상기 이벤트 카운트 데이터를 스케일링하는 상기 이벤트 카운트 스케일링 로직 내의 누산기는 산술 연산 장치와 레지스터로 구성되고, 상기 이벤트 버니어 데이터를 스케일링하는 상기 이벤트 버니어 스케일링 로직 내의 버니어 누산기는 산술 연산 장치와 레지스터로 구성되는 것을 특징으로 하는 시스템.
  9. 제3항에 있어서, 상기 이벤트 카운트 스케일링 로직은
    상기 스케일 인수의 정수 부분이 제공되고 상기 스케일 인수의 정수 부분에 의해 규정된 횟수만큼 기준 클럭을 카운트하고 상기 규정된 횟수만큼 기준 클럭을 카운트할 때마다 단말 카운트 펄스와 모드 제어 신호를 발생시키고, 상기 기준 클럭과 동기하여 카운트 데이터를 생성하는 스케일링 카운터, 및
    상기 스케일 인수의 소수 부분이 제공되고 상기 스케일링 카운터로부터 단말 카운트 펄스를 수신할 때마다 상기 소수 부분을 누적하는 누산기
    로 구성되며,
    상기 누적된 데이터가 상기 기준 클럭의 한 사이클을 초과하는 경우, 상기 단말 카운트 펄스를 발생시키기 전에 추가 지연을 포함하도록 상기 스케일링 카운터에 상기 기준 클럭의 한 사이클의 추가 지연을 제공하기 위한 캐리 신호가 상기 누산기에 의해 생성되는 것을 특징으로 하는 시스템.
  10. 제9항에 있어서, 상기 이벤트 버니어 스케일링 로직은
    상기 이벤트 버니어 메모리로부터의 버니어 데이터가 제공되며 상기 정수 부분과 소수 부분을 모두 구비한 스케일 인수에 의해 상기 버니어 데이터를 승산하기 위한 승산기,
    상기 스케일 인수의 정수 부분에 의해 규정된 횟수만큼 상기 기준 클럭의 타이밍에서 상기 버니어 데이터를 누적하고, 상기 스케일링 카운터로부터의 모드 제어 신호에 의해 리셋되는 버니어 누산기, 및
    상기 버니어 누산기로부터의 누적된 버니어 데이터와 상기 승산기로부터의 승산된 버니어 데이터를 가산하는 가산기
    로 구성되는 것을 특징으로 하는 시스템.
  11. 제10항에 있어서, 상기 이벤트 스케일링 출력 로직은
    상기 이벤트 카운트 스케일링 로직 내의 누산기로부터의 누적된 데이터와 상기 이벤트 버니어 스케일링 로직 내의 가산기로부터의 가산된 데이터를 가산하는 가산기,
    상기 이벤트 버니어 스케일링 로직 내의 상기 스케일링 카운터로부터의 카운트 데이터가 제공되고, 상기 카운트 데이터와 상기 이벤트 버니어 스케일링 로직 내의 버니어 누산기로부터의 오버플로우(overflow) 데이터를 비교하여, 양자가 일치할 때에는 일치 신호를 생성하는 비교기, 및
    상기 비교기로부터의 일치 신호와 상기 이벤트 카운트 상태 머신으로부터의 출력 신호가 제공되고, 상기 이벤트 생성기에 대한 이벤트 개시 신호를 생성하는 상태 머신
    으로 구성되며,
    상기 가산된 데이터가 기준 클럭의 한 사이클을 초과하는 경우, 이벤트 개시 신호를 생성하기 전에 추가 지연을 포함하도록 기준 클럭의 한 사이클의 추가 지연을 상태 머신에 제공하기 위한 캐리 신호가 가산기에 의해 생성되는 것을 특징으로 하는 시스템.
  12. 제11항에 있어서, 상기 이벤트 카운트 데이터를 스케일링하는 상기 이벤트 카운트 스케일링 로직 내의 누산기는 산술 연산 장치와 레지스터로 구성되고, 상기 이벤트 버니어 데이터를 스케일링하는 상기 이벤트 버니어 스케일링 로직 내의 버니어 누산기는 산술 연산 장치와 레지스터로 구성되는 것을 특징으로 하는 시스템.
  13. 제4항에 있어서, 상기 이벤트 카운트 스케일링 로직은 상기 스케일 인수가 제공되고, 상기 스케일 인수에 의해 규정된 횟수만큼 상기 기준 클럭을 카운트하고, 상기 규정된 횟수만큼 기준 클럭을 카운트할 때마다 단말 카운트 펄스와 모드 제어 신호를 발생시키고, 또한 상기 기준 클럭과 동기하여 카운트 데이터를 생성하는 스케일링 카운터로 구성된 것을 특징으로 하는 시스템.
  14. 제13항에 있어서, 상기 이벤트 버니어 스케일링 로직은 상기 스케일 인수의 정수 부분에 의해 규정된 횟수만큼 상기 기준 클럭의 타이밍에서 상기 버니어 데이터를 누적하는 버니어 누산기로 구성되며, 상기 버니어 누산기는 상기 스케일링 카운터로부터의 모드 제어 신호에 의해 리셋되는 것을 특징으로 하는 시스템.
  15. 제14항에 있어서, 상기 이벤트 스케일링 출력 로직은
    상기 이벤트 카운트 스케일링 로직 내의 스케일링 카운터로부터의 카운트 데이터가 제공되고, 상기 카운트 데이터와 상기 이벤트 버니어 스케일링 로직 내의 버니어 누산기로부터의 오버플로우(overflow) 데이터를 비교하여, 양자가 일치할 때에는 일치 신호를 발생시키는 비교기, 및
    상기 비교기로부터의 상기 일치 신호와 상기 이벤트 카운트 상태 머신으로부터의 상기 출력 신호가 제공되고, 상기 이벤트 생성기에 전송되는 이벤트 개시 신호를 생성하는 AND 회로
    로 구성되는 것을 특징으로 하는 시스템.
  16. 제1항에 있어서, 상기 DUT에 상기 테스트 신호를 인가하고 상기 DUT의 응답 출력을 상기 스트로브 신호의 타이밍에서 기대값과 비교함으로써 검출되는 상기 DUT의 테스트 결과 정보를 저장하는 고장 메모리(failure memory)를 더 구비하는 것을 특징으로 하는 시스템.
  17. 제1항에 있어서, 상기 DUT와 상기 이벤트 생성 회로 사이에 상기 DUT에 상기 테스트 신호를 공급하고 상기 DUT의 출력을 수신하는 핀 전자부품을 더 구비하는 것을 특징으로 하는 시스템.
KR10-2000-0017509A 1999-04-05 2000-04-04 이벤트에 기초한 테스트 시스템의 스케일링 로직 KR100493350B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/286,226 1999-04-05
US09/286,226 US6557133B1 (en) 1999-04-05 1999-04-05 Scaling logic for event based test system

Publications (2)

Publication Number Publication Date
KR20010006949A KR20010006949A (ko) 2001-01-26
KR100493350B1 true KR100493350B1 (ko) 2005-06-07

Family

ID=23097645

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0017509A KR100493350B1 (ko) 1999-04-05 2000-04-04 이벤트에 기초한 테스트 시스템의 스케일링 로직

Country Status (5)

Country Link
US (1) US6557133B1 (ko)
JP (1) JP4471446B2 (ko)
KR (1) KR100493350B1 (ko)
DE (1) DE10016611A1 (ko)
TW (1) TW454379B (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6678643B1 (en) * 1999-06-28 2004-01-13 Advantest Corp. Event based semiconductor test system
US6532561B1 (en) * 1999-09-25 2003-03-11 Advantest Corp. Event based semiconductor test system
US6377065B1 (en) * 2000-04-13 2002-04-23 Advantest Corp. Glitch detection for semiconductor test system
US6404218B1 (en) * 2000-04-24 2002-06-11 Advantest Corp. Multiple end of test signal for event based test system
US6859902B1 (en) * 2000-10-02 2005-02-22 Credence Systems Corporation Method and apparatus for high speed IC test interface
DE50210978D1 (de) * 2001-03-15 2007-11-08 Bosch Gmbh Robert Verfahren und vorrichtung zur bildung von taktimpulsen in einem bussystem mit wenigstens einem teilnehmer, bussystem und teilnehmer
US7171602B2 (en) * 2001-12-31 2007-01-30 Advantest Corp. Event processing apparatus and method for high speed event based test system
WO2003085706A1 (en) * 2002-04-11 2003-10-16 Advantest Corporation Manufacturing method and apparatus to avoid prototype-hold in asic/soc manufacturing
US7089135B2 (en) * 2002-05-20 2006-08-08 Advantest Corp. Event based IC test system
TWI284743B (en) * 2002-07-13 2007-08-01 Advantest Corp Event pipeline and summing method and apparatus for event based test system
US6879927B1 (en) * 2003-07-21 2005-04-12 Credence Systems Corporation Communication interface for virtual IC tester
GB2447981A (en) * 2007-03-30 2008-10-01 Mitsubishi Electric Inf Tech Time delay measurement for global navigation satellite system receivers
US7615990B1 (en) 2007-06-28 2009-11-10 Credence Systems Corporation Loadboard enhancements for automated test equipment
GB2536318B (en) * 2015-09-09 2018-02-14 Imagination Tech Ltd Synchronising devices

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5282213A (en) * 1991-01-02 1994-01-25 Compaq Computer Corporation Computer-based logic analyzer timing and analysis system
US5740086A (en) * 1996-01-11 1998-04-14 Advantest Corp. Semiconductor test system linked to cad data

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6226765B1 (en) * 1999-02-26 2001-05-01 Advantest Corp. Event based test system data memory compression

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5282213A (en) * 1991-01-02 1994-01-25 Compaq Computer Corporation Computer-based logic analyzer timing and analysis system
US5740086A (en) * 1996-01-11 1998-04-14 Advantest Corp. Semiconductor test system linked to cad data

Also Published As

Publication number Publication date
JP2000321340A (ja) 2000-11-24
US6557133B1 (en) 2003-04-29
TW454379B (en) 2001-09-11
KR20010006949A (ko) 2001-01-26
DE10016611A1 (de) 2001-02-08
JP4471446B2 (ja) 2010-06-02

Similar Documents

Publication Publication Date Title
KR100506771B1 (ko) 이벤트 기반 반도체 테스트 시스템
KR100493350B1 (ko) 이벤트에 기초한 테스트 시스템의 스케일링 로직
EP0474274B1 (en) Event sequencer for automatic test equipment
US5768159A (en) Method of simulating AC timing characteristics of integrated circuits
JP3212583B2 (ja) デルタタイムによるイベント型テストシステム
KR20010098552A (ko) 반도체 테스트 시스템을 위한 글리치 검출
KR19990037034A (ko) 테스터 시스템내의 신호 측정 장치
US5592659A (en) Timing signal generator
KR100491460B1 (ko) 이벤트 기반 테스트 시스템 데이터 메모리 압축
US5311486A (en) Timing generation in an automatic electrical test system
US5581699A (en) System and method for testing a clock signal
US7010452B2 (en) Event pipeline and summing method and apparatus for event based test system
JP4330284B2 (ja) テストパターンやストローブ信号の発生装置及びタイミングデータへの遅延時間の挿入方法
US7171602B2 (en) Event processing apparatus and method for high speed event based test system
JP5064610B2 (ja) アナログクロックモジュール
US6829548B2 (en) DLL static phase error measurement technique
JP3693930B2 (ja) Pll回路のシミュレーション方法およびシミュレーション・プログラム
JP3601680B2 (ja) Icテスタ
JPH026769A (ja) テスターのタイミング信号発生回路
JPH07209388A (ja) タイミング信号発生装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20100512

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee