KR100318226B1 - 타이밍 발생기 - Google Patents

타이밍 발생기 Download PDF

Info

Publication number
KR100318226B1
KR100318226B1 KR1019997002940A KR19997002940A KR100318226B1 KR 100318226 B1 KR100318226 B1 KR 100318226B1 KR 1019997002940 A KR1019997002940 A KR 1019997002940A KR 19997002940 A KR19997002940 A KR 19997002940A KR 100318226 B1 KR100318226 B1 KR 100318226B1
Authority
KR
South Korea
Prior art keywords
clock
data
timing
generator
subtractor
Prior art date
Application number
KR1019997002940A
Other languages
English (en)
Other versions
KR20000068712A (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 KR20000068712A publication Critical patent/KR20000068712A/ko
Application granted granted Critical
Publication of KR100318226B1 publication Critical patent/KR100318226B1/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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/02Digital function generators
    • G06F1/025Digital function generators for functions having two-valued amplitude, e.g. Walsh functions
    • 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

Abstract

다WAY 방식으로 시험패턴신호를 발생시키는 경우에도, 다음 싸이클에 있어서 타이밍 신호를 발생시키는 데이터 설정을 행할 수 있는 타이밍발생기를 제공한다.
N개(N은 2이상의 정수)의 타이밍발생기의 각 클록데이터 처리회로에, 각 클록데이터 처리회로의 주기데이터메모리로부터 판독된 주기데이터 값을 N배하는 승산기와, 이 승산기에 의해 N배로된 주기데이터와 주제어기로부터 공급되는 클록데이터와의 감산을 실행하는 감산기와, 주기가 일정한 주기데이터가 N이상 연속되는 경우에 한해서, 감산기 출력 단자에서 출력되는 감산값 및 주기데이터 값 쪽이 클 경우에 감산기의 자릿수 올림신호 출력단자에서 출력되고, 다음 싸이클에서의 클록 발생을 나타내는 넥스트플래그를, 대응되는 클록발생기의 메모리에 기억하는 것을 가능하게 하는 제어신호를 클록데이터 처리회로에 부여하는 수단을 설치한다.

Description

타이밍발생기{TIMING GENERATOR}
종래, 반도체 집적회로(이하, IC)는 메모리 부분이 주요한 것을 메모리 IC라 하고, 논리회로부분(로직부분)이 주요한 것을 로직 IC라 하며, 두 종류로 대별된다. 메모리 IC는 최근의 메모리 용량 증대로 인해 그 핀 수(단자 수)가 증대되는 경향이 있다.
메모리 IC와 로직 IC는 시험방법이 전혀 다르기 때문에, 종래에는 메모리 IC시험용 IC테스터(메모리 테스트 시스템)와 로직 IC 시험용 IC 테스터(로직 테스트 시스템)를 별도로 구성하고, 이들 IC 테스터를 사용하여 메모리 IC 및 로직 IC 각각을 시험하고 있다.
본 발명은 가령 반도체 집적회로(IC)와 같은 반도체 디바이스를 시험하기 위한 반도체 디바이스 시험장치(일반적으로 IC 테스터라 함)에 사용하여 적합한 타이밍발생기에 관한 것으로, 상세히 말하면 타이밍발생기에 사용되는 클록데이터 처리회로의 개량에 관한 것이다.
도 1은 본 발명에 의한 타이밍발생기의 일 실시예의 회로구성을 패턴발생기, 파형정형기 및 파형발생기와 함께 도시한 블록도.
도 2는 도 1에 도시된 타이밍발생기에 부여되는 타이밍 세트 정보와 미리 설정된 주기데이터 및 주제어기에서 공급되는 클록데이터와의 대응관계의 한 예와, 미리 설정된 클록데이터메모리 내용을 각각 도시한 도면.
도 3은 도 1에 도시된 타이밍발생기 동작을 설명하기 위한 타이밍도.
도 4는 종래의 IC 테스터의 개략 구성의 설명 블록도.
도 5는 종래의 IC 테스터에 사용된 타이밍발생기의 1회로 구성을 패턴발생기, 파형 정형기 및 파형발생기와 함께 도시한 블록도.
도 6은 도 5에 도시된 타이밍발생기 동작을 설명하기 위한 타이밍도.
도 7은 도 5에 도시된 타이밍발생기에 부여되는 타이밍 세트 정보와 미리 설정된 주기데이터 및 주제어기에서 공급되는 클록데이터와의 대응관계의 일 예와, 미리 설정된 클록데이터메모리 내용을 각각 도시한 도면.
도 8은 종래의 IC 데스터에 사용된 2WAY 방식의 타이밍발생기의 1회로 구성을 패턴 발생기, 파형정형기 및 파형발생기와 함께 도시한 블록도.
도 9는 도 8에 도시된 타이밍발생기에 부여되는 타이밍 세트 정보와 미리 설정된 주기데이터 및 주제어기에서 공급된 클록데이터와의 대응관계의 한 예와, 미리 설정된 클록데이터메모리의 내용을 각각 도시한 도면.
도 10은 도 8에 도시된 타이밍발생기 동작 설명 타이밍도,
도 11은 도 8에 도시된 타이밍발생기 동작을 더욱 상세히 설명하기 위한 타이밍도,
도 12는 도 8에 도시된 타이밍발생기의 결점 설명도.
도 13은 도 8에 도시된 타이밍발생기의 결점 설명을 위한 타이밍도.
도 14는 도 8에 도시된 타이밍발생기에 부여된 타이밍 세트 정보와 미리 설정된 주기데이터 및 주제어기에서 공급되는 클록데이터와의 대응관계의 한 예와, 미리 설정된 클록데이터메모리의 내용을 각각 도시한 도면.
도 4는 종래의 메모리 IC 시험용인 IC 테스터(메모리 테스트 시스템) 일 예의 개략 구성을 도시하는 블록도이다. 예시하는 IC 테스터(TES)는 주제어기(11),패턴발생기(12), 파형정형기(14), 파형발생기(15), 논리비교기(18), 드라이버군(16), 아날로그 비교기군(17), 불량 해석 메모리(19) 및 디바이스전원(PS)으로 구성되어 있다.
주제어기(11)는 일반적으로 컴퓨터 시스템에 구성되고, 이용자(유저)가 작성한 시험 프로그램(PM)에 따라 주로 패턴발생기(12)와 타이밍발생기(13)를 제어한다.
우선 IC의 시험을 개시하기 전에 주제어기(11)에서 각종 데이터를 설정 한다. 예를 들어, 주제어기(11)는 패턴발생기(12)에 패턴정보를 전송하고 이것을 패턴발생기(12)에 설치된 패턴용 메모리(도시안됨)에 기억시키고, 타이밍발생기(13)에는 최초로 주기데이터를 전송하여 타이밍발생기(13)의 한 구성요소인 주기발생기(도시안됨)에 설치된 주기데이터메모리 및 역시 타이밍발생기(13)의 한 구성요소인 클록데이터 처리회로(도시안됨)에 설치된 주기데이터메모리에 각각 주기데이터를 기억시킨다. 다음으로 주제어기(11)는 클록데이터를 클록데이터 처리회로에 전송하고, 클록데이터 처리회로의 주기데이터메모리에 미리 설정한 주기데이터를 판독하여 클록데이터와 연산처리를 시키며, 연산결과 또는 전송한 클록데이터를 역시 타이밍발생기(13)의 한 구성요소인 클록발생기(도시안됨)에 설치된 클록데이터메모리에 기억시킨다. 이 발명에 관계되는 주요한 데이터의 설정은 이것으로 대부분 종료된다.
주제어기(11)에서 이와 같은 각종 데이터의 설정을 순차적으로 행하기위해, 주기데이터가 클록데이터를 설정하기 전에 적어도 클록데이터 처리회로의 주기데이터메모리에 설정될 필요가 있다.
각종 데이터가 설정된 후, IC의 시험이 개시된다. 우선, 주제어기(11)가 패턴발생기(12)에 시험개시명령을 내림으로써, 패턴발생기(12)는 패턴의 발생을 개시한다. 따라서 패턴발생기(12)가 패턴의 발생을 개시하는 시점이 시험의 개시 시점이 된다. 패턴발생기(12)는 시험패턴데이터(PTND)를 파형정형기(14)에 공급하고, 동시에 타이밍 세트 정보(타이밍 세트 데이터라고도 불림)(TS)를 타이밍발생기(13)의 주기발생기 및 클록발생기에 부여한다.
타이밍 세트 정보란, 주기발생기의 주기데이터메모리에 미리 설정된 주기데이터를 선택하는 정보와 클록발생기의 클록데이터메모리에 미리 설정된 클록데이터를 선택하는 정보가 쌍으로 되어 있는 정보를 말한다. 뒤에 상세하게 설명할 주기발생기의 주기데이터메모리에는 타이밍 세트 정보의 번호(TS1, TS2, TS3, …)에 대응하는 주기데이터의 시간이 통상은 ns(나노초)의 단위로 설정되어 있으며(예를 들어, TS1은 90ns, TS2는 130ns, TS3은 80ns,…), 동일하게 클록발생기의 클록데이터메모리에는 타이밍 세트 정보의 번호에 대응하는 클록데이터의 시간이 ns의 단위로 설정되어 있다(예를 들어, TS1은 100ns, TS2는 80ns, TS3은 30ns,…). 따라서 타이밍 세트 정보란, 이 예에서, 패턴 발생 싸이클의 제 1 싸이클은 TS1, 제 2 싸이클은 TS4, 제 3 싸이클은 TS2, 제 4 싸이클은 TS5,…와 같이, 각 싸이클에 대한 타이밍 세트 정보의 번호를 지시하는 정보이며, 유저가 미리 프로그램한다.
타이밍 세트 정보(TS)가 타이밍발생기(13)에 부여됨에 따라, 타이밍발생기(13)로 부터는 파형 정형기(14), 논리비교기(18) 등의 동작 타이밍을제어하는 타이밍신호(클록펄스)가 발생된다.
시험패턴데이터(PTND)는 뒤에 상세히 설명할 파형정형기(14) 및 그 후단의 파형발생기(15)에 의해 실파형을 갖는 시험패턴신호로 변환되고, 이 시험패턴 신호는 드라이버군(16)을 통하여 피시험 IC(20)(일반적으로 DUT라 함)에 인가되고, 이 피시험 IC(20)의 메모리에 기억된다.
한편, 피시험 IC(20)에서 판독된 응답신호는 아날로그 비교기군(17)에 있어서 비교기군 전압원(도시안됨)의 기준전압과 비교되고, 소정의 논리레벨(H논리(고논리)의 전압, L논리(저논리)의 전압)을 가지고 있는지 여부가 판정된다. 소정의 논리레벨을 가지고 있다고 판정된 응답신호는 논리비교기(18)로 보내지고, 여기서 패턴발생기(12)에서 출력되는 기대값 데이터와 비교된다. 기대값 데이터와 응답신호가 불일치할 경우는 그 응답신호가 판독된 피시험 IC(20)의 어드레스의 메모리셀에 불량이 있다고 판정하고, 이 불량 메모리셀의 어드레스를 불량 발생될 때 마다, 불량 해석메모리(19)에 불량 어드레스로서 기억한다. 통상, 불량 메모리셀의 어드레스는 피시험 IC(20)의 어드레스와 같은 불량 해석 메모리(19)의 어드레스에 기억된다. 시험 종료 시점에서 불량 해석 메모리(19)에 기억된 불량 어드레스를 판독하고, 가령 시험된 IC(20)의 불량 메모리셀 구제가 가능한지 아닌지를 판정한다.
상기와 같이, 타이밍발생기(13)는 패턴발생기(12)에서 부여되는 타이밍 세트 데이터 정보(TS)에 따라, 피시험 IC(20)에 인가하는 시험패턴 신호의 파형 상승 타이밍 및 하강 타이밍을 규정하는 타이밍 신호(클록펄스)나 논리비교기(18)에서의 논리비교 타이밍을 규정하는 스트로브펄스 타이밍신호(클록펄스) 등을 발생시킨다.
이들 타이밍 신호를 발생시키는 타이밍이나 주기는 유저가 작성한 시험 프로그램(PM)에 타이밍 세트 정보로서 기재되어 있고, 유저가 의도한 동작 주기와 타이밍으로 피시험 IC(20)에 시험패턴 신호를 인가하여 피시험 IC(20)를 동작시키고, 또, 그 동작이 정상인지 여부를 시험할 수 있게 구성되어 있다.
도 5에 타이밍발생기(13), 파형정형기(14) 및 파형발생기(15)의 구체적 회로구성의 일 예를 도시한다. 타이밍발생기(13)는 주제어기(11)에서 공급되는 주기데이터를 기억하는 주기데이터메모리(도시안됨)를 갖춘 주기발생기(21), 이 주기발생기(21)의 주기데이터메모리에 미리 설정된 주기데이터에 의거하여 발생되는 주기펄스가 공급되는 클록발생기(22), 주제어기(11)에서 공급되는 주기데이터를 기억하는 주기데이터메모리(23)을 갖추고 있으며, 각종 데이터를 미리 설정할 때 동작하고, 클록발생기(22)에 설치된 클록데이터메모리(24)에 클록 발생의 타이밍을 특정짓는 데이터를 공급하는 클록데이터 처리회로(23)에 의해 구성되어 있다. 따라서 클록데이터 처리회로(23)는 IC의 시험을 행할 때에는 어떤 동작도 하지 않는다.
각종 데이터를 설정할 때에, 주제어기(도4 참조)에서 공급되는 주기데이터 (RATDAT)는 타이밍발생기(13)의 입력단자(T1)에 부여되고, 클록데이터(CLDAT)는 타이밍발생기(13)의 입력단자(T2)에 부여된다. 입력단자(T1)는 주기발생기(21) 및 클록데이터 처리회로(23) 양쪽에 접속되어 있으므로, 이 입력단자(T1)에 부여된 주기데이터(RATDAT)는 주기발생기(21) 및 클록데이터 처리회로(23) 양쪽에 공급되어, 그들 주기데이터메모리에 기억된다. 입력단자(T2)는 클록데이터 처리회로(23)에만 접속되어 있으므로, 입력단자(T2)에 부여된 클록데이터 (CLDAT)는 클록데이터 처리회로(23)에만 공급된다. 상기와 같이, 클록데이터(CLDAT)는 주기데이터(RATDAT)가 주기데이터메모리에 기억된 후에 클록데이터 처리회로(23)의 입력단자(T2)에 공급된다.
클록데이터 처리회로(23)의 주기데이터메모리(23M)에 주기데이터가 설정된 후, 클록데이터 처리회로(23)는 입력단자(T2)에 주제어기에서 공급되는 클록데이터(CLDAT)와 타이밍 세트 정보(TS)에 의해 주기데이터메모리(23M)에서 판독된 주기데이터(RATDAT)를 비교하고, 클록데이터(CLDAT)의 값이 주기데이터 (RATDAT)의 값 보다 작을 때는, 이 주기데이터(RATDAT) 값에 대응하는 주기내에서 클록펄스를 발생시키는 것을 나타내는 플래그(SAME)(이하, 세임 플레이그(same flag)라 함)를 발생시키고, 이 세임플래그(SAME)와 수신한 클록데이터(CLDAT)를 그대로 클록발생기(22)에 설치된 클록데이터메모리(24)에 공급한다.
이에 대해, 클록데이터(CLDAT)가 주기데이터(RATDAT) 보다 클때는, 다음 주기로 클록을 발생하는 것을 나타내는 플래그(NEXT)(이하, 넥스트플래그(next flag)라 함)를 발생하고, 이 넥스트플래그(NEXT)와, 수신한 클록데이터(CLDAT)와 판독된 주기데이터(RATDAT)의 차의 값 절대값을 클록발생기(22)에 설치한 클록데이터메모리(24)에 공급한다.
이 때문에, 클록데이터 처리회로(23)는, 상기 주기데이터메모리(23M) 외에, 이 예에서는 감산기(25), 게이트(26)(이 예에서는 AND게이트), 및 멀티플렉서(27)를 포함한다. 감산기(25)는 2개의 입력단자(A, B), 1개의 출력단자 및 1개의 자릿수 올림신호 출력단자(CR)를 구비하고 있으며, 주기데이터메모리(23M)에서 판독된주기데이터(RATDAT)가 입력단자(B)에 공급되고, 클록데이터(CLDAT)가 입력단자(A)에 공급되고, 주기데이터(RATDAT)에서 클록데이터(CLDAT)를 감산한다(B-A).
이 감산 결과가 양((RATDAT) > (CLDAT))일 때는, 자릿수 올림신호 출력단자(CR)가 L논리(「0」)를 출력한 상태로 유지된다. 자릿수 올림신호 출력단자(CR)는 AND게이트(26)의 한쪽 입력단자에 접속되어 있고, AND게이트(26)의 다른쪽 입력단자는 모드설정 입력단자(MT)에 접속되어 있다. 이 모드 설정 입력단자(MT)는 H논리(「1」)로 설정되어 있으나, 자릿수 올림신호 출력단자(CR)가 L논리이므로 AND게이트(26) 출력은 L논리가 되고, 이 L논리가 멀티플렉서(27)의 제어단자(S) 및 클록데이터메모리(24)에 부여된다.
멀티플렉서(27)는, 그 제어단자(S)에 L논리가 인가되면, 입력단자(A)에 입력되는 클록데이터(CLDAT)를 그대로 클록데이터메모리(24)에 공급하고, 기억된다. 또, 클록데이터메모리(24)에 공급된 AND게이트(26)의 출력인 L논리는, 세임플래그(SAME)로서 클록데이터메모리(24)에 기억된다.
한편, 감산 결과가 음 또는 0일 때는, 자릿수 올림신호 출력단자(CR)에는 H논리가 출력된다. 그 결과, AND게이트(26)의 출력단자에서 H논리가 출력되고, 이 H논리가 멀티플렉서(27)의 제어단자(S)와 클록데이터메모리(24)에 각각 공급된다. 멀티플렉서(27)는, 그 제어단자(S)에 H논리가 부여되면 입력단자(B)를 선택하고, 입력단자(B)에 부여되는 감산기(25)의 감산결과의 절대값을 출력하여 클록데이터메모리(24)에 기입한다. 동시에, AND게이트(26)의 출력단자로 부터의 H논리가 클록데이터메모리(24)에 부여되고, 다음 주기에서 클록펄스를 발생하는 것을 나타내는 넥스트플래그(NEXT)로서 이 클록데이터메모리(24)에 기억된다.
도 7은 타이밍 세트 정보(TS)와, 클록데이터 처리회로(23)의 주기데이터메모리(23M)에 미리 설정된 주기데이터(RATDAT)(주기발생기(21)의 주기데이터메모리에도 같은 주기데이터(RATDAT)가 미리 설정된다) 및 주제어기(11)에서 공급되는 클록데이터(CLDAT)와의 관계, 및 이들 주기데이터 및 클록데이터에 의거하여 상기와 같이 클록데이터 처리회로(23)가 연산처리하고, 클록발생기(22)의 클록데이터메모리(24)에 설정한 플래그 및 클록데이터와의 관계의 일 예를 나타낸다. 도7에 도시된 것과 같이, 주기데이터메모리 및 클록데이터메모리에는 타이밍 세트 정보와 주기데이터 및 클록데이터가 각각 대응한 관계로 미리 기억되어 있다.
예를 들어, 패턴 발생기(12)에서 클록데이터 처리회로(23)에 타이밍 세트 정보(TS1)가 부여되면, 이 클록데이터 처리회로(23)의 주기데이터메모리(23M)에서 TS1에 대응하는 200ns의 주기데이터가 판독된다. 타이밍 세트 정보(TS3)가 부여되면 주기데이터메모리(23M)에서 TS3에 대응하는 100ns의 주기데이터가 판독된다. 이에 대해, 패턴발생기(12)에서 주기발생기(21) 및 클록발생기(22)에 타이밍 세트 정보(TS1)가 부여되면, 주기발생기(21)의 주기데이터메모리에서는 TS1에 대응하는 200ns의 주기데이터가 판독되고, 클록발생기(22)의 클록데이터메모리(24)에서는 TS1에 대응하는 100ns의 클록데이터가 세임플래그(SAME)과 함께 판독된다. 타이밍 세트 정보(TS3)가 부여되면, 주기발생기(21)의 주기데이터메모리에서는 TS3에 대응하는 100ns의 주기데이터가 판독되고, 클록데이터메모리(24)에서는 TS3에 대응하는 30ns의 클록데이터가 넥스트플래그(NEXT)와 함께 판독된다.
각종 데이터를 설정할 경우, 타이밍 세트 정보가 TS1 -> TS2 -> TS3 -> TS2의 순으로 패턴발생기(12)에서 발생되어, 클록데이터 처리회로(23)의 주기데이터메모리(23M)에 미리 설정된 주기데이터(RATDAT)가 도 7에 도시한 것과 같으며, 주제어기에서 타이밍발생기(13)의 입력단자(T2)에 공급되는 클록데이터(CLDAT)가 도 7에 도시된 것과 같다.
또한, 도 7에는 3개의 타이밍 세트 정보 TS1~TS3 만을 도시하였는데, 통상은 다수의 타이밍 세트 정보와 그들에 대응하는 주기데이터, 클록데이터, 플래그 등이 미리 설정되어 있다. 또, 타이밍 세트 정보의 발생순서는 유저가 미리 프로그램하는 것이며 다양한 순서가 있다.
우선, 제 1 싸이클에서는 타이밍 세트 정보(TS1)가 패턴발생기(12)에서 발생되어 클록데이터 처리회로(23)에 공급된다. 이에 따라 클록데이터 처리회로(23)의 주기데이터메모리(23M)에서 200ns의 주기데이터가 판독되고 감산기(25)의 한쪽 입력단자(B)에 공급되며, 동시에 주제어기에서 타이밍발생기(13)의 입력단자 T2를 통해서 감산기(25)의 다른쪽 입력단자(A)에 100ns의 클록데이터가 공급된다. 이 경우에는 주기데이터 200ns 쪽이 클록데이터 100ns 보다 크기 때문에, 감산기(25)의 자릿수 올림신호 출력단자(CR)로 부터는 L논리가 출력된다. 그 결과, 클록데이터 100ns는 그대로 100ns로서 클록데이터메모리(24)에 기억되고, 동시에 같은 주기에서의 클록펄스 발생을 나타내는 세임플래그(SAME)가 클록데이터메모리(24)에 기억된다.
제 2 싸이클에서는 타이밍 세트 정보(TS2)가 패턴 발생기(12)에서 발생되어클록데이터 처리회로(23)에 공급되고, 클록데이터 처리회로(23)의 주기데이터메모리(23M)에서 주기데이터 150ns가 판독되어 감산기(25)의 한쪽 입력단자(B)에 공급된다. 동시에 주제어기에서 타이밍발생기(13)의 입력단자(T2)를 통해서 감산기(25)의 다른쪽 입력단자(A)에 80ns의 클록데이터가 공급된다. 이 경우는 주기데이터 150ns 쪽이 클록데이터 80ns 보다 크기 때문에, 감산기(25)의 자릿수 올림신호 출력단자(CR)에서는 같은 L논리가 출력된다. 그 결과, 클록데이터 80ns는 그대로 80ns로서 클록데이터메모리(24)에 기억되고, 동시에 같은 주기에서의 클록펄스 발생을 나타내는 세임플래그(SAME)가 클록데이터메모리(24)에 기억된다.
제 3 싸이클에서는 타이밍 세트 정보(TS3)가 패턴발생기(12)에서 발생되어 클록데이터 처리회로(23)에 공급되고, 클록데이터 처리회로(23)의 주기데이터메모리(23M)에서 주기데이터 100ns가 판독되고 감산기(25)의 한쪽 입력단자(B)에 공급된다. 동시에 주제어기에서 타이밍발생기(13)의 입력단자(T2)를 통해 감산기(25)의 다른쪽 입력단자(A)에 130ns의 클록데이터가 공급된다. 이 경우에는 주기데이터 100ns 쪽이 클록데이터 130ns 보다 작기 때문에, 감산기(25)의 자릿수 올림신호 출력단자(CR)에서 H논리가 출력된다. 그 결과, 클록데이터 100ns는 클록데이터메모리(24)에 공급되지 않고, 그 대신 감산기(25) 출력단자로 부터의 감산 결과의 절대값(30ns)이 멀티플렉서(27)에 의해 선택되어, 클록데이터로서 클록데이터메모리(24)에 기억된다. 동시에 AND게이트(26)의 출력단자에서의 H논리가 클록데이터메모리(24)에 공급되며, 다음 주기에서의 클록펄스의 발생을 나타내는 넥스트플래그(NEXT)로서 클록데이터메모리(24)에 기억된다.
마지막으로 제 4 싸이클에서는 타이밍 세트 정보(TS2)가 패턴발생기(12)에서 발생되어 클록데이터 처리회로(23)에 공급되고, 클록데이터 처리회로(23)의 주기데이터메모리(23M)에서 주기데이터 150ns가 판독되어 감산기(25)의 한쪽 입력단자(B)에 공급된다. 동시에 주제어기에서 타이밍발생기(13)의 입력단자(T2)를 통해 감산기(25)의 다른쪽 입력단자(A)에 80ns 클록데이터가 공급된다. 이 경우에는 주기데이터 150ns 쪽이 클록데이터 80n 보다 크기 때문에, 감산기(25)의 자릿수 올림신호 출력단자(CR)에서는 L논리가 출력된다. 그 결과, 클록데이터 80ns는 그대로 80ns로서 클록데이터메모리(24)에 기억되고, 동시에 같은 주기에서의 클록펄스의 발생을 나타내는 세임플래그(SAME)가 클록데이터메모리(24)에 기억된다.
이와 같이 하여 도 7의 오른쪽 란에 나타낸 플래그 및 클록데이터가 클록발생기(22)의 클록데이터메모리(24)에 미리 설정된다.
도 6은 도 7에 도시된 주기데이터가 주기발생기(21)의 주기데이터메모리에 미리 설정되어, 클록데이터메모리(24)에 도 7에 도시된 클록데이터 및 플래그가 미리 설정되어 있을 경우에 도 5에 도시된 구성의 타이밍발생기(13)의 주기발생기(21) 및 클록발생기(22)가 각각 발생시키는 주기펄스(RT) 및 클록펄스(LC)를, 패턴발생기(12)가 발생시키는 시험패턴데이터(PTND) 및 생성된 시험 패턴 신호(PTNS)와 함께 도시하는 파형도이다. 또한, 이 예에서는 패턴 발생기(12)는 타이밍 세트 정보(TS)를 주기발생기(21) 및 클록발생기(22)에 공급함과 동시에, 1주기 마다 논리 「1」과 논리「0」이 교호하는, 도 6A에 도시된 모두 4 싸이클의 시험 패턴 데이터(PTND)를 발생시키는 것이다.
주기발생기(21)는, 패턴발생기(12)에서 부여되는 타이밍 세트 정보(TS)에 의거하여 그 주기데이터메모리에서 주기펄스를 리얼타임으로 발생하여 클록발생기(22)에 공급한다. 클록발생기(22)는, 주기발생기(21)로부터 주기펄스를 수신하면, 클록데이터메모리(24)에 기억된 클록데이터 및 플래그에 의해 결정되는 시간만 각 주기펄스를 지연시켜서 클록펄스로서 출력한다.
각 싸이클의 타이밍 세트 정보가 TS1 -> TS2 -> TS3 -> TS2의 순서로 패턴 발생기(12)에서 발생되어 주기발생기(21)의 주기데이터메모리에 미리 설정된 주기데이터(RATDAT), 및 클록데이터메모리(24)에 미리 설정된 플래그와 클록데이터가 도 7에 도시한 것과 같다고 하면, 주기발생기(21)는 패턴 발생기(12)에서 공급되는 타이밍 세트 정보 TS1 -> TS2 -> TS3 -> TS2에 의거하여 그 주기데이터메모리에서 판독되는 주기데이터(200ns -> 150ns -> 100ns -> 150ns)에 의해 도 6B에 도시된 주기펄스 RT(RT1 -> RT2 -> RT3 -> RT4)를 순차적으로 발생시킨다.
각 싸이클의 타이밍 세트 정보는 동시에 클록발생기(22)에도 공급되기 때문에 클록발생기(22)의 클록데이터메모리(24)에 미리 설정된 플래그와 클록데이터가 이 타이밍 세트 정보에 의해 판독되어, 클록발생기(22)는 주기발생기(21)에서 주기펄스 RT1, RT2, RT3, RT4가 공급되면 클록데이터메모리(24)에 기억된 플래그와 클록데이터에 의해 결정되는 값에 대응한 시간만 각 주기펄스를 지연시켜서 도 6C에 도시된 클록펄스(CL1, CL2, CL3 및 CL4)를 출력한다.
더욱 자세하게 설명하면, 도 7에 도시된 예에서는 주기발생기(21)의 주기데이터메모리에서 주기데이터가 200ns, 150ns, 100ns, 150ns의 순으로 판독되기 때문에 주기발생기(21)에서 발생되는 주기펄스(RT)는 도 6B에 나타낸 바와 같이, RT1과 RT2의 사이가 200ns, RT2와 RT3의 사이가 150ns, RT3과 RT4의 사이가 100ns, RT4와 RT5의 사이가 150ns의 주기를 갖는다.
주기펄스(RT1)의 제 1 싸이클에서는 타이밍 세트 정보(TS1)에 의해 클록발생기(22)의 클록데이터메모리(24)에서 세임플래그(SAME)와 100ns의 클록데이터가 판독된다. 이러하여 클록발생기(22)로부터의 제 1 클록(CL1)은 도 6C에 도시된 것과 같이 주기펄스(RT1)에서 100ns 지연된 타이밍으로 그리고 같은 주기내에 발생된다.
주기펄스(RT2)의 제 2 싸이클에서는 타이밍 세트 정보(TS2)에 의해 클록발생기(22)의 클록데이터메모리(24)에서 세임플래그(SAME)과 80ns의 클록데이터가 판독된다. 이러하여 클록발생기(22)로부터의 제 2 클록(CL2)은 도 6C에 도시된 것과 같이 주기펄스(RT2)에서 80ns 지연된 타이밍으로 그리고 같은 주기내에 발생된다.
주기펄스(RT3)의 제 3 싸이클에서는 타이밍 세트 정보(TS3)에 의해 클록발생기(22)의 클록데이터메모리(24)로부터 넥스트플래그(NEXT)와 30ns의 클록데이터가 판독된다. 이리하여 클록발생기(22)로 부터의 제 3 클록(CL3)은 도 6C와 같이, 제 3 주기내에는 발생되지 않고 주기펄스(RT3)에서 130ns 지연된 타이밍과 같으나 다음 주기(주기펄스(RT4)의 제4주기)에서 30ns 지연된 타이밍으로 발생된다.
이 주기펄스(RT4)의 제 4 싸이클에서는 타이밍 세트 정보(TS2)에 의해 클록발생기(22)의 클록데이터메모리(24)에서 세임플래그(SAME)와 80ns의 클록데이터가 판독된다. 이리하여 클록발생기(22)로부터의 제 4 클록(CL4)은 도 6C에 도시한 것과 같이 주기펄스(RT4)에서 80ns 지연된 타이밍으로 그리고 같은 주기내에 발생된다.
이상의 설명에서, 도 7에 나타낸 데이터의 예는, 주제어기에서 보내져온 클록데이터(CLDAT)가 클록데이터 처리회로(23)의 주기메모리(23M)에 미리 설정된 주기데이터(RATDAT) 보다도 작을 경우에는, 세임플래그(SAME)가 클록발생기(22)의 클록데이터메모리(24)에 설정되고, 동시에 주제어기에서 보내져온 클록데이터 (CLDAT)가 그대로 클록데이터메모리(24)에 설정되며, 클록데이터(CLDAT)가 미리 설정된 주기데이터(RATDAT) 보다도 클 경우에는 넥스트플래그(NEXT)가 클록발생기(22)의 클록데이터메모리(24)에 설정되어, 동시에 미리 설정된 주기데이터와 주제어기에서 보내져온 클록데이터(CLDAT)와의 차의 값의 절대값이 클록데이터메모리(24)에 설정되는 것이 이해가 될 것이다.
또, 패턴발생기(12)에서 전부 4 싸이클의 시험패턴데이터(PTND)가 발생되고, 세임플래그(SAME)의 경우에는 같은 주기내에 클록펄스가 발생되어, 넥스트플래그(NEXT)의 경우에는 다음 주기에 있어서 클록펄스가 발생되는 것이 이해가 될 것이다.
여기서, 본 발명에는 관련되지 않으나 파형정형기(14) 및 파형정형기(15)에 대하여 간단히 설명한다.
파형정형기(14)는 도 5에 도시된 예에서는 제 1 및 제 2 의 2개의 게이트(141, 142; 이 예에서는 모두 AND게이트)에 의해 구성되어 있다. 제 1 AND게이트(141)의 2개의 입력단자는 모두 비반전 입력단자이나, 제 2 AND게이트(142)의 2개의 입력단자 한쪽은 반전입력 단자이다. 제 1 AND게이트(141)의 한쪽 입력단자와 제 2 AND게이트(142)의 반전입력단자에 패턴발생기(12)에서 시험패턴데이터(PTND)를 부여한다. 또, 이들 AND게이트(141, 142)의 다른쪽 입력단자에는 클록발생기(22)에서 클록펄스(CL1, CL2, CL3 및 CL4)를 부여한다.
패턴발생기(12)에서 출력되는 시험패턴데이터(PTND)가 가령 도 6A와 같이, 제 1 싸이클로 논리「1」, 제 2 싸이클로 논리「0」, 제 3 싸이클로 논리「1」, 제 4 싸이클로 논리「0」과 같이 출력되었다고 하면 제 1 클록(CL1)이 발생되는 타이밍에서는 제 1 게이트(141)가 인에이블상태(온상태)에 있기 때문에 제 1 클록(CL1)은 게이트(141)를 통하여 파형발생기(15)를 구성하는 RS(세트/리세트) 플립플롭(FF)의 세트단자(S)에 부여된다. 따라서, 이 파형발생기(15)의 출력은 제 1 클록(CL1)의 타이밍으로 도 6D와 같이 H논리로 상승한다.
제 2 싸이클에서는 시험패턴데이터(PTND)가 논리「0」이기 때문에 이번에는 제 2 게이트(142)가 인에이블 상태가 되고, 제 2 클록(CL2)은 제 2 게이트(142)를 통하여 RS 플립플롭(FF)이 리세트단자(R)에 부여된다. 이 때문에 파형발생기(15)의 출력 파형은 제 2 클록(CL2)의 타이밍으로 도 6D의 L논리로 하강한다.
제 3 싸이클에서는 시험패턴데이터(PTND)가 논리「1」이기 때문에 제 1 게이트(141)는 인에이블 상태에 있다. 상기와 같이 제 3 클록(CL3)은 제 3 주기에서는 발생되지 않으나 도 5에 도시된 파형발생기(15)는 NRZ파형(nonreturn to zero waveform)을 발생시킬 경우를 예시하고 있다. 따라서, 제 1 게이트(141)는 제 3 클록(CL3)이 발생되기 까지 인에이블 상태로 유지된다. 제 3 클록(CL3)은 제 1 게이트(141)를 통하여 RS 플립플롭(FF)의 세트단자(S)에 부여되고, 파형발생기(15)의출력파형을 제3클록(CL3)의 타이밍으로 도 6D와 같이 H논리로 상승한다.
제 4 싸이클에서는 시험패턴데이터 PTND이 논리「0」이기 때문에 제3클록(CL3)이 발생되어 제 1 게이트(141)를 통과 후, 제 2 게이트(142)가 인에이블 상태가 되고, 제 4 클록(CL4)은 제 2 게이트(142)를 통하여 RS 플립플롭(FF)의 리세트 단자(R)에 부여된다. 이리하여 파형발생기(15) 출력파형을 제4클록(CL4)의 타이밍으로 도 6D와 같이 L논리로 하강시킨다.
이같이 하여 클록발생기(22)에서 출력되는 클록(CL1, CL2, CL3 및 CL4)에 의해 시험패턴 신호(PTDS)가 발생되고, 이 시험패턴신호(PTNS)가 드라이버군(16)을 통하여 피시험(IC20)에 부여된다. 또, 도 5에 도시된 파형발생기(15)는 상기와 같이 NRZ 파형을 발생시킬 경우를 예시하였으나 현실로는 기타 파형 모드를 발생하는 구성도 부가되고 있다.
도 5와 같이, 1대의 타이밍발생기(13)가 출력하는 타이밍 신호(클록펄스)를 사용하여 시험패턴신호를 발생시키는 방식을 이 기술분야에서는 1WAY(1웨이) 방식이라 한다. 이에 대해, 복수대의 타이밍발생기가 출력하는 타이밍 신호(클록펄스)를 다중화하고, 이 다중화 한 타이밍 신호를 사용하여 시험패턴신호를 발생시키는 방식을 이 기술분야에서는 다WAY(다웨이) 방식이라 한다.
도 8은 이 다WAY방식으로 시험패턴신호를 발생시킬 경우에 사용되는 타이밍발생기의 일 예를 나타내는 회로 구성도이다. 이 예에서는 도 5에 도시된 구성의 타이밍발생기(13), 패턴발생기(12) 및 파형정형기(14)로 이루어지는 회로구성을 2조 설치함과 동시에, 파형발생기(15)에 2개의 OR게이트(151, 152)를 추가하고, 각조의 파형 정형기(14A, 14B)의 대응하는 2개의 AND게이트(141A, 142B , 142A 및 142B)의 출력을 각각 OR게이트(151, 152)를 통하여 파형발생기(15)의 RS 플립플롭(FF)의 세트단자(S) 및 리세트 단자(R)에 공급하도록 구성한 것이다.
또, 설명을 간단하게 하기 위하여, 도 8에 있어서, 도 5와 대응하는 회로나 소자에는 동일 부호를 부기함과 동시에, 한쪽 조(도 8 상측 표시의 회로구성)의 소자에는 부호「A」를 다시 부가하고, 또 다른쪽 조(도 8 하측 표시의 구성회로)의 소자에는 부호「B」를 다시 부가하여 도시한다.
도 8에 도시된 것과 같이, 2대의 타이밍발생기(13A, 13B)를 준비하고, 이들 타이밍발생기(13A, 13B)에서 출력되는 타이밍 신호(클록펄스)를 다중화하여 파형발생기(15)에 부여하고, 시험패턴신호를 발생시키는 방식을 2WAY(2웨이) 방식이라 한다.
상기와 같이, 각조의 패턴발생기(12A, 12B)는 유저가 프로그램한 시험패턴데이터(PTND)를 발생시킴과 동시에, 타이밍 세트 정보(TS)를 발생시킨다. 각 패턴 발생 싸이클 마다 시험패턴데이터(PTND)와 타이밍 세트 데이터(TS)가 존재한다.
도 8에 있어서, 각종 데이터를 설정할 때에는, 도 5에 도시된 타이밍발생기의 경우와 같이 주제어기(도4 참조)에서 공급되는 주기데이터(RATDAT)가 타이밍발생기(13A, 13B)의 입력단자(T1A, T1B)에 부여되고, 클록데이터(CLDAT)는 타이밍발생기(13A, 13B)의 입력단자(T2A, T2B)에 부여된다. 입력단자(T1A, T1B)는 주기발생기(21A, 21B) 및 클록데이터 처리회로(23A, 23B)의 양쪽에 접속되어 있기 때문에, 이 입력단자(T1A, T1B)에 부여된 주기데이터 (RATDAT)는 주기발생기(21A, 21B)및 클록데이터 처리회로(23A, 23B)의 양쪽에 공급되어, 그들 주기데이터메모리에 기억된다.
입력단자(T2A, T2B)는 클록데이터 처리회로(23A, 23B)에만 접속되어 있으므로, 이들 입력단자(T2A, T2B)에 부여된 클록데이터(CLDAT)는 클록데이터 처리회로(23A, 23B)에만 공급된다. 상기와 같이, 클록데이터(CLDAT)는 주기데이터 (RATDAT)가 주기데이터메모리에 기억된 후에 클록데이터 처리회로(23A, 23B)의 입력단자(T2A, T2B)에 공급된다.
클록데이터 처리회로(23A, 23B)의 주기데이터메모리(23MA, 23MB)에 주기데이터가 설정된 후, 클록데이터 처리회로(23A, 23B)는 입력단자(T2A, T2B)에 주제어기에서 공급되는 클록데이터(CLDAT)와 주기데이터메모리(23MA, 23MB)에서 판독된 주기데이터(RATDAT)를 비교해서, 클록데이터(CLDAT)의 값이 주기데이터(RATDAT)의 값보다 작을 때에는 이 주기데이터(RATDAT)를 그대로 클록발생기(22A, 22B)의 클록데이터메모리(24A, 24B)에 공급한다.
이에 대해, 클록데이터(CLDAT)가 주기데이터(RATDAT) 보다 클 때에는, 클록데이터 처리회로(23A, 23B)는 다음 주기에서 클록을 발생시키는 것을 나타내는 플래그(NEXT)를 발생시키고, 이 넥스트플래그(NEXT)와 수신한 클록데이터(CLDAT)와, 판독된 주기데이터(RATDAT)와의 차의 값(절대값)을 클록데이터메모리(24)에 공급한다.
또, 각 조의 클록데이터 처리회로(23A, 23B)는 도 5에 도시한 클록데이터 처리회로(23)와 같은 회로구성을 갖는다. 즉, 감산기(25A, 25B), AND게이트(26A,26B) 및 멀티플렉서(27A, 27B)에 의해 구성된다.
또, 2WAY 방식이므로 양 조의 패턴발생기(12A, 12B)에서 교호의 싸이클에 있어서 시험패턴데이터(PTND) 및 타이밍 세트 정보(TS)가 발생되고, 타이밍 세트 정보(TS)는 대응하는 타이밍발생기(13A, 13B)에 공급된다. 그 위에 양 조의 주기발생기(21A, 21B)는 서로 타이밍 세트 정보(TS)를 주고 받을 수 있도록 구성된다.
다음에, 도 8에 도시된 타이밍발생기 동작에 대하여 설명한다.
가령, 유저가 작성한 시험 프로그램이 모두 4 싸이클의 시험패턴데이터 PTND를 발생시키는 프로그램이고, 도 9에 도시된 것과 같이 타이밍 세트 정보(TS1)는 주기발생기(21A, 21B)의 주기데이터메모리 및 클록데이터 처리회로(23A, 22B)의 주기데이터메모리(23MA, 23MB)에 각각 미리 설정된 주기데이터(RATDAT)가 90ns, 각종 데이터를 설정할 때에 주제어기에서 보내져 오는 클록데이터(CLDAT)가 60ns, 클록발생기(22A, 22B)의 클록데이터메모리(24A, 24B)에 미리 설정된 플래그가 SAME, 클록데이터가 60ns에 대응하고, 타이밍 세트 정보(TS2)는 주기 발생기(21A, 22B)의 주기데이터 및 클록데이터 처리회로(23A, 23B)의 주기데이터메모리(23MA, 23MB)에 각각 미리 설정된 주기데이터(RATDAT)가 150ns, 각종 데이터를 설정할 때에 주제어기에서 보내져 오는 클록데이터(CLDAT)가 80ns, 클록발생기(22A, 22B)의 클록데이터메모리(24A, 24B)에 미리 설정된 플래그가 SAME, 클록데이터가 80ns에 대응하고, 타이밍 세트 정보(TS3)는 주기발생기(21A, 21B)의 주기데이터메모리 및 클록데이터 처리회로(23A, 23B)의 주기데이터메모리(23MA, 23MB)에 각각 미리 설정된 주기데이터(RATDAT)가 100ns, 각종 데이터를 설정할 때에 주제어기에서 보내져 오는 클록데이터(CLDAT)가 130ns, 클록발생기(22A, 22B)의 클록데이터메모리(24A, 24B)에 미리 설정된 플래그가 SAME, 클록데이터가 130ns에 대응하는 것으로 한다.
또, 각 싸이클의 타이밍 세트 정보는 TS1, TS2, TS3, TS2의 순서로 대응하는 타이밍발생기(13A, 13B)에 공급되고, 시험패턴데이터(PTND)는 도 10에 도시한 것과 같이, 논리「1」, 논리「0」, 논리「1」, 논리「0」의 순서였다고 한다.
이 경우에는 양쪽 조의 패턴발생기(12A, 12B)에서 발생되는 시험패턴데이터(PTND)와 타이밍 세트 정보(TS)는 도 11A 및 11B와 같이, PTND1, PTND0, PTND1, PTND0 및 TS1, TS2, TS3, TS2가 된다. 타이밍 세트 정보(TS)에 대해서만 주목하면, 도 11C 및 11D에 도시된 것과 같이 된다. 즉, 양쪽 조의 주기 발생기(21A, 21B)는 서로 타이밍 세트 정보(TS)를 주고 받을 수 있도록 구성되어 있으므로, 한쪽 조의 주기발생기(21A)는 도 11C와 같이 TS1의 주기데이터와 TS2의 주기데이터의 합의 주기(TS3 + TS2)와 TS3의 주기데이터와 TS2의 주기데이터의 합의 주기(TS3 + TS2)의 주기로서 주기펄스를 순차 발생시키고, 다른쪽 조의 주기발생기(21B)는 주기발생기(21A) 보다도 TS1의 주기데이터의 값 만큼 늦은 시점에서 도 11D와 같이 TS2의 주기데이터와 TS3의 주기데이터의 합의 주기(TS2 + TS3)의 주기로 주기펄스를 순차발생시킨다.
이것을 구체적으로 도시한 것이 도 11E 및 11F이고, 주기발생기(21A)는 도 11E와 같이 240ns (90ns + 150ns)와 250ns (100ns + 150ns)의 주기로 주기펄스를 순차 발생하고, 주기발생기(21B)는 도 11F와 같이 주기발생기(21A) 보다도 90ns의 시간(TS1의 주기)만큼 늦은 시점에서 250ns (150ns + 100ns)의 주기로 주기펄스를순차 발생시킨다.
양쪽 주기발생기(21A, 21B)는 패턴발생기(12A, 12B)에서 부여 받는 타이밍 세트 정보(TS)에 의거하여, 그 주기데이터메모리에서 주기펄스를 리얼타임으로 발생하여 클록발생기(22A, 22B)에 공급한다. 클록발생기(22A, 22B)는, 주기발생기(21A, 21B)에서 주기펄스를 수신하면, 클록데이터메모리(24A, 24B)에 미리 설정된 클록데이터 및 플래그에 의해 결정되는 시간만 각 주기펄스를 지연시켜서 클록펄스로서 출력한다.
각 싸이클의 타이밍 세트 정보가 TS1 -> TS2 -> TS3 -> TS2의 순으로 패턴 발생기(12A, 12B)에서 발생되어, 주기발생기(21A, 21B)의 주기데이터메모리에 미리 설정된 주기데이터 (RATDAT), 및 클록데이터메모리(24)에 미리 설정된 플래그와 클록데이터가 도 9에 나타낸 바와 같다고 하면, 주기발생기(21A, 21B)는 패턴 발생기(12A, 12B)에서 공급되는 타이밍 세트 정보 TS1 -> TS2 -> TS3 -> TS2에 의거하여 그 주기데이터메모리에서 판독되는 주기데이터(90ns -> 150ns -> 100ns -> 150ns)에 의해, 도 10B에 나타낸 주기펄스 RTA(RT1A, RT2A, RT3A), 도 10E에 나타낸 주기펄스 RTB(RT1B, RT2B)를 각각 발생시킨다. 즉, 주기펄스 RT1A와 RT2A 간의 주기는 240ns이고, 주기펄스 RT2A와 RT3A 간의 주기는 250ns 이다. 또 주기펄스(RT1B와 RT2B)간의 주기는 250ns이다.
각 싸이클의 타이밍 세트 정보는 동시에 클록발생기(22A, 22B)에도 공급되기 때문에, 클록발생기(22A, 22B)의 클록데이터메모리(24A, 24B)에 미리 설정된 플래그와 클록데이터가 이 타이밍 세트 정보에 의해 판독되어, 한쪽 조의클록발생기(22A)는 주기발생기(21A)에서 주기펄스 RT1A, RT2A, RT3A가 공급되면, 클록데이터메모리(24A)에 미리 설정된 플래그와 클록데이터에 의해 결정되는 값에 대응한 시간만 각 주기펄스를 지연시켜서 도 10C에 나타낸 클록펄스(CL1, CL3)를 발생시키고, 다른쪽 조의 클록발생기(22B)는, 주기발생기(21B)에서 주기펄스(RT1B, RT2B)가 공급되면, 클록데이터메모리(24B)에 미리 설정된 플래그와 클록데이터에 의해 결정되는 값에 대응한 시간만 각 주기펄스를 지연시켜서, 도 10F에 도시된 클록펄스(CL2, CL4)를 발생한다.
구체적으로 설명하면, 양 클록데이터메모리(24A, 24B)에는 도 9에 도시된 플래그 및 클록데이터가 미리 설정되어 있으므로, 한쪽 조의 클록발생기(22A)는 도 10C와 같이 주기펄스(RTA)의 제 1 주기펄스(RT1A)에서 60ns 지연한 타이밍으로 클록펄스(CL1)를 발생시키고, 제 2 주기펄스(RT2A)에서 130ns 지연한 타이밍으로 클록펄스(CL3)를 발생시킨다. 이에 비해, 다른 조의 클록발생기(22B)는 도 10F와 같이 주기펄스(RTB)의 제 1 주기펄스(RT1B)에서 80ns 지연된 타이밍으로 클록펄스(CL2)를 발생시키고, 제 2 주기펄스(RT2B)에서 80ns 지연된 타이밍으로 클록펄스(CL4)를 발생시킨다.
이와같이 2WAY 방식에 있어서는 2대의 주기발생기(21A, 21B)는, 프로그램에 의해 지정된 2개의 타이밍 세트 정보에 대응하는 주기데이터의 값을 가산한 합의 값을 그들의 주기로하고, 2대의 주기발생기(21A, 21B)에서 번갈아 주기펄스(RT1A, RT1B, RT2A, RT2B, RT3A)를 출력한다. 따라서, 도 9에 도시된 타이밍 세트 정보(TS3)에 대응하는 데이터에 주목했을 경우, 클록데이터 쪽이 주기데이터 보다도 크나, 이때의 주기 발생기(21A)의 주기는 TS3 + TS2의 250ns이므로, 클록데이터메모리(24A)에 미리 설정되는 플래그는 세임플래그(SAME)가 되고, 클록데이터는 130ns가 된다.
한편, 파형발생기(15)에서 출력되는 시험패턴신호(PTNS)는, 도 10G와 같이 클록(CL1)의 타이밍으로 H논리로 상승하고, 클록(CL2)의 타이밍으로 L논리로 하강하고, 클록(CL3)의 타이밍으로 H논리로 상승하고, 클록(CL4)의 타이밍으로 L논리로 하강하는 파형이 된다.
양 클록데이터 처리회로(23A, 23B)에는 모드 설정 입력단자(MTA, MTB)가 설치되어 있고, 도에 도시된 타이밍발생기를 2WAY 방식으로 동작시킬 경우는, 각종의 데이터를 미리 설정할 때에, L논리의 모드 설정 신호가 이들 모드 설정 입력단자(MTA, MTB)에 부여되고, AND게이트(26A, 26B)를 각각 디스에이블상태(OFF상태)로 유지하고 있다. 그 결과, 주기데이터 보다도 클록데이터 쪽이 크기 때문에 감산기(25A, 25B)의 자릿수 올림신호 출력 단자(CR)에 H논리의 출력신호가 발생하더라도, 이 H논리신호는 AND게이트(26A, 26B)를 통과할 수 없으므로, 멀티플렉서(27A, 27B)의 제어단자(S) 및 클록데이터메모리(24A, 24B)에는 H논리가 부여될 수 없다. 따라서, 멀티플렉서(27A, 27B)는 입력단자(T2A, T2B)에 공급되는 클록데이터((CLDAT)) 만을 각각 클록데이터메모리(24A, 24B)에 공급하고, 감산기(25A, 25B)의 출력단자로 부터의 감산 결과는 클록데이터메모리(24A, 24B)에 공급하지 않는다. 또, 클록데이터메모리(24A, 24B)에는 H논리의 넥스트플래그(NEXT)가 기억되지 않는다.
또, 도 8에 도시된 타이밍발생기를 1WAY 방식으로 동작시킬 경우에는, 도 5를 참조하여 상기와 같이 각종 데이터를 미리 설정할 때에, 모드 설정 입력단자(MTA, MTB)에 H논리가 부여되므로, 감산기(25A, 25B)의 출력단자로 부터의 감산결과 및 넥스트플래그(NEXT)를 클록데이터메모리(24A, 24B)에 미리 설정할 수 있다.
상기와 같이, 주기발생기(21A, 21B)는 타이밍 세트 정보에 의해 그들의 주기데이터메모리에서 판독된 주기데이터에 의거하여 리얼타임으로 주기펄스를 발생시키는 기능을 갖는다. 그러나, 클록발생기(22A, 22B)는 주기 발생기(21A, 21B)에서 공급되는 주기펄스에 의거하여 리얼타임으로 클록펄스를 발생시키는 기능을 갖지 않는다. 그 이유는 다음과 같다.
주기 발생기는 1개의 IC 테스터에 1개 있으면 충분히 목적을 달성할 수 있으나, 클록발생기는 IC 테스터가 갖는 채널수 만큼 설치될 필요가 있다. 최근 IC 테스터가 갖는 채널수는 수백 채널에서 수천 채널에 이르기 때문에 모든 채널에 리얼타임의 연산기능을 갖는 클록발생기를 설치하면, 회로 규모가 상당히 커지기 때문에, IC 테스터 사이즈가 상당히 대형화되고, 소비전력도 현저히 많아지고 또 IC 테스터 가격이 매우 고가가 되는 등의 문제가 발생하기 때문이다.
이 때문에, 주기발생기(21A, 21B)와 클록데이터 처리회로(23A, 23B)의 주기데이터메모리에 미리 주제어기에서 주기데이터를 공급해서 유저가 프로그램한 타이밍 세트 정보(TS)와 함께 기억시키고, 다음으로 타이밍 세트 정보(TS)를 패턴 발생기(12A, 12B)에서 클록데이터 처리회로(23A, 23B)에 공급하고, 이들 클록데이터 처리회로(23A, 23B)의 주기데이터메모리(23MA, 23MB)에 미리 설정된 주기데이터를 판독하고, 동시에 주제어기에서 클록데이터를 클록데이터 처리회로(23A, 23B)에 공급하고, 이 주기데이터와 클록데이터의 연산결과를 플래그와 함께 클록발생기(22A, 22B)의 클록데이터메모리(24A, 24B)에 공급하고, 이들 클록데이터메모리(24A, 24B)에 데이터를 미리 설정하도록 구성하고 있다.
그 결과, 도 8에 도시된 타이밍발생기를 2WAY 방식으로 동작시킬 경우는, 2싸이클을 초과한 타이밍으로 클록을 발생시키는, 가령, 「NEXT(넥스트플래그)」, 「20ns」와 같은 데이터를 클록데이터메모리(24A, 24B)에 설정할 수 없다. 그 이유를 이하에 설명한다.
도 8에 도시된 2WAY 방식 타이밍발생기에 있어서, 상기와 같이 타이밍 세트 정보(TS)가 TS1, TS2, TS3, TS2 순서로 패턴 발생기(12A, 12B)에서 타이밍발생기(13A, 13B)에 공급되고, 클록데이터메모리(24A, 24B)에 미리 설정된 플래그 및 클록데이터의 내용이, 도 12와 같이, 타이밍 세트 정보(TS1)는 플래그가 NEXT, 클록데이터가 20ns에 대응하고, 타이밍 세트 정보(TS2)는 플래그가 SAME, 클록데이터가 80ns에 대응하고, 타이밍 세트 정보(TS3)은 플래그가 SAME, 클록데이터가 130ns에 대응하는 것으로 한다.
「NEXT」, 「20ns」라는 데이터가 도 8의 클록데이터메모리(24A)에 기억시키면 도 13과 같이 클록발생기(22A)는 제2주기펄스(RT2A) 발생후, 20ns 늦게 클록펄스(CL1)를 발생하게 된다.
그러나 「NEXT」,「20ns」라는 데이터는 어디까지나 각종 데이터를 설정할때에 클록데이터 처리회로(23A)의 연산처리에 의해 얻어진 것이다. 따라서 각종 데이터를 설정할 때, 즉, 시험을 개시하기 전에 이 「NEXT」,「20ns」에 대응하는 데이터를 타이밍 세트 정보(TS1)로서 유저가 프로그램 했을 경우, 주기데이터가 도 9에 도시된 주기데이터와 동일하다면, TS1에 대응하는 주기데이터를 예를 들어 90ns로 설정한다. 따라서 TS1과 TS2의 합(240ns)이 주기발생기(21A)의 주기라면, 클록데이터를 260ns로 설정하지 않으면 안된다. 따라서 주기데이터를 240ns, 클록데이터를 20ns로 프로그램하는 일은 없다.
이 프로그램된 타이밍 세트 정보(TS1)에 대응하는 데이터(주기데이터 90ns, 클록데이터 260ns)에서 클록데이터 처리회로(23A)가 연산에 의해 「NEXT」, 「20ns」라는 데이터를 얻을 수 있으면 이 데이터를 클록데이터메모리(24A)에 기억할 수 있다.
그러나, 주기데이터 90ns와 클록데이터 260ns 만으로는, 타이밍 세트 정보(TS2)에 대응하는 주기데이터인 150ns가 아직 판독되지 않기 때문에, 클록데이터 처리회로(23A)는 「NEXT」, 「20ns」라는 데이터를 연산에 의해 얻을 수 없다. 이 때문에, 클록데이터 처리회로(23A)는 「NEXT」, 「20ns」라는 데이터를 클록데이터메모리(24A)에 미리 설정할 수 없다.
환언하면, 클록데이터 처리회로(23A)가 연산처리에 의해 얻을 수 있는 데이터는 「NEXT」, 「170ns」이고, 이 「NEXT」, 「170ns」라는 데이터를 클록데이터메모리(24A)에 미리 설정해 버린다. 이로서는 유저가 설정한 타이밍과는 전혀 다른 타이밍으로 클록이 발생해 버리게 된다.
상기 이유에 의해 도 8에 도시된 타이밍발생기를 2WAY 방식으로 동작시킬 경우는, 상기와 같이, 각종의 데이터를 미리 설정할 때에, 양 클록데이터 처리회로(23A, 23B)에 설치되어 있는 모드 설정 입력단자(MTA, MTB)에는 L논리를 부여하여 AND게이트(26A, 26B)를 디스에이블 상태로 유지하고, 연산기(25A, 25B)에 있어서 주기데이터에서 클록데이터를 감산한 결과가 음이 되어 감산기(25A, 25B)의 자릿수 올림신호 출력단자(CR)에서 H논리의 출력신호가 발생되더라도, 이 H논리신호가 멀티플렉서(27A, 27B) 및 클록데이터메모리(24A, 24B)에 공급되지 않도록 구성하고, 감산기(25A, 25B)의 출력단자로 부터의 감산 결과가 클록데이터메모리(24A, 24B)에 공급되는 것, 및 넥스트플래그(NEXT)가 클록데이터메모리(24A, 24B)에 설정되는 것을 금지할 필요가 있었다.
그 결과, 2WAY 방식으로 시험패턴신호를 발생시킬 경우에 사용되는 타이밍발생기에는 다음 싸이클에 클록을 발생시킬 수 없다는 중대한 결점이 있었다. 또, 유저가 프로그램을 작성할 때에, 클록데이터가 다음 싸이클을 넘지 않도록 주의할 필요가 있었다. 이 결점에 의해, 가령, 판독 지령을 부여한 타이밍의 싸이클에서 다음 싸이클로 옮기고나서 판독 지령 데이터가 출력되는 IC는 시험할 수 없는 문제가 발생한다.
또한, 최근의 메모리 IC는 동기형(클록동기형)의 것이 많아지고 있다. 주지하는 바와 같이, 이 동기형 메모리 IC는 주기가 일정한 클록에 동기하여 모든 동작을 실행한다. 따라서, 이같은 동기형 메모리 IC를 IC 테스터로 시험, 측정한 경우에 미리 설정되는 주기데이터는 항상 일정한 값이 된다.
도 14는 동기형 메모리 IC를 도 8에 도시된 2WAY 방식의 타이밍발생기를 사용하여 시험, 측정할 경우에, 패턴발생기(12A, 12B)에서 발생되는 타이밍 세트 정보(TS)와, 주기데이터메모리에 미리 설정되는 주기데이터 및 각종 데이터를 미리 설정할 때에 주제어기에서 공급되는 클록데이터와의 대응관계와, 타이밍 세트 정보(TS), 클록데이터메모리(24A, 24B)에 기억되는 플래그 및 클록데이터와의 대응관계의 일 예를 각각 나타낸다.
도 14에서 명료한 바와 같이, 주기데이터는 일정값(100ns)이기 때문에, 다음 주기데이터는 기지의 값(100ns)이고, 도 14의 TS1 (주기데이터 100ns, 클록데이터메모리 230ns에 대응한다)이 패턴 발생기(12A)에서 클록데이터 처리회로(23A)에 공급되었을 경우에, 클록데이터 처리회로(23A)는 연산처리에 의해 도 14의 클록데이터메모리 내용란에 도시된 바와 같이, 플래그「NEXT」, 클록데이터「30ns」라는 데이터를 출력하여 클록데이터메모리(24A)에 기억시킬 수 있는 것이다. 즉, 주제어기에서 공급된 클록데이터(230ns)에서 미리 설정되어 있는 주기데이터 100ns를 2배로 한 값을 감산하고, 이 감산 결과와 플래그를 클록데이터메모리(24A)에 기억시키면 된다.
그러나, 상기와 같이, 종래의 2WAY 방식의 타이밍발생기에서는 넥스트플래그「NEXT」를 클록데이터메모리에 기억하는 것을 금지하고 있으므로, 동기형 메모리 IC를 시험, 측정할 경우에도 넥스트플래그「NEXT」를 클록데이터메모리에 기억할 수 없는 중대 결점이 있었다.
상기 결점은 2WAY 방식에 한정되지 않으며, 다른 다WAY 방식(3WAY 방식,4WAY 방식,...)으로 시험패턴신호를 발생시킬 경우에 사용되는 타이밍발생기에도 동일하게 발생한다.
본 발명의 하나의 목적은, 다WAY 방식으로 시험패턴신호를 발생시킬 경우에도 다음 싸이클에 있어서 타이밍 신호를 발생시킨다는 데이터 설정을 행할 수 있는 타이밍발생기를 제공함에 있다.
본 발명의 다른 목적은, 2WAY 방식으로 시험패턴신호를 발생시킬 경우에도, 주기데이터 값이 일정할 경우에는, 주기의 4배후 까지의 싸이클에 있어서 타이밍 신호를 발생시킨다는 데이터 설정을 행할 수 있는 타이밍발생기를 제공함에 있다.
발명의 개시
상기 목적을 달성하기 위하여, 본 발명의 1면에 있어서는, 각각이 클록발생기와, 주기 발생기와, 클록데이터 처리회로를 포함하는 N개(N은 2 이상의 정수)의 타이밍발생기로 구성되고, 각 클록발생기에서 출력되는 클록발생타이밍을 각 클록발생기에 설치된 메모리에 미리 설정한 데이터에 의거해서 제어하여 원하는 타이밍에서 각 클록발생기로부터 클록을 발생시키도록 구성된 타이밍발생기에 있어서, 각 클록데이터 처리회로가, 그 주기데이터메모리에서 판독되는 주기데이터의 값을 N배하는 승산기와, 이 승산기에 의해 N배된 주기데이터 또는 상기 주기데이터메모리에서 판독된 주기데이터와 외부에서 공급되는 클록데이터의 감산을 실행하는 감산기를 포함하고, 주기가 일정한 주기데이터가 N이상 연속하는 경우에 한해서, 상기 주기데이터메모리에서 판독된 주기데이터를 각 승산기에 부여해서 N배하고, 각 감산기 출력단자에서 출력되는 감산값 및 주기데이터의 N배의 값 보다 클록데이터 값쪽이 클 경우에는 각 감산기의 자릿수 올림신호 출력단자에서 출력되고, 다음 싸이클에서의 클록 발생을 나타내는 넥스트플래그를 각 클록발생기의 메모리에 기억할 수 있게 하는 제어신호를 각 클록데이터 처리회로에 부여하는 수단을 다시 포함하고, NWAY 방식으로 타이밍발생기를 동작시켰을 때에, 상기 주기데이터메모리에서 판독된 주기데이터와 함께 다음 싸이클의 원하는 타이밍점에서 클록을 발생시키는 클록데이터가 공급될 경우에, 각 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그와, 상기 각 감산기의 출력단자에서 출력되는 감산값을 각 클록발생기의 메모리에 기억할 수 있게한 타이밍발생기가 제공된다.
바람직한 일 실시예에 있어서는, 상기 타이밍발생기는, 각 클록발생기에서 출력되는 클록의 발생 타이밍을 각 클록발생기에 설치된 메모리에 미리 설정한 데이터에 의거하여 제어해서 원하는 타이밍에서 각 클록발생기에서 클록을 발생시켜, 이들 클록펄스를 다중화하고, 이 다중화된 클록펄스를 사용하여 반도체 디바이스를 시험하기 위한 시험패턴신호를 생성하는 반도체 디바이스 시험장치에 있어서 사용되고, 상기 N개의 타이밍발생기의 각 클록데이터 처리회로는, 그 주기데이터메모리에서 판독되는 주기데이터가 공급되고, 이 공급된 주기데이터의 값을 N배하는 승산기와, 이 승산기에 의해 N배된 주기데이터 또는 상기 주기데이터메모리에서 판독된 주기데이터가 한쪽 입력단자에 공급되고, 다른쪽 입력단자에 외부로부터 공급되는 클록데이터와의 감산을 실행하는 감산기와, 이 감산기에 공급되는 상기 클록데이터 및 이 감산기 출력단자에서 출력되는 감산값의 어느 한쪽을 선택하여 대응하는 클록발생기에 설치된 메모리에 출력하는 선택수단과, 주기데이터의 값 보다 클록데이터 값 쪽이 작을 경우에, 상기 감산기에 공급되는 클록데이터를 선택하도록 상기 선택수단을 제어해서 상기 감산기의 출력단자에서 출력되는 감산값이 상기 대응하는 클록발생기의 메모리에 기억되는 것을 저지하는 제 1 제어수단과, 주기가 일정한 주기데이터가 N 이상 연속될 경우에 한해서, 상기 주기데이터메모리로부터 판독된 주기데이터를 상기 승산기에 부여해서 N배 하고 또 상기 감산기 출력단자에서 출력되는 감산값, 및 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는 다음 싸이클에서의 클록 발생을 나타내는 넥스트플래그가 상기 대응하는 클록발생기의 메모리에 기억되는 것을 가능하게 하는 제 2 제어수단을 구비한다.
상기 제 1 제어수단은, 한쪽의 입력단자가 각 감산기의 자릿수 올림신호 출력단자에 접속되어, 다른쪽 입력단자가 금지신호 공급단자에 접속되고, 출력단자가 각 선택수단의 제어단자 및 각 클록발생기의 메모리에 접속된 게이트를 포함하고, NWAY 방식으로 타이밍발생기를 동작시킬 경우에 상기 게이트의 상기 다른쪽 입력단자에 상기 금지신호 공급단자를 통하여 금지신호를 공급하고, 상기 선택수단이 상기 감산기 출력단자에서 출력되는 감산값을 선택출력하는 것을 금지시키고, 또 상기 게이트에, 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그가 상기 게이트를 통과하는 것을 금지시킨다.
상기 제 2 제어수단은 한쪽의 입력단자가 각 감산기의 자릿수 올림신호 출력단자에 접속되고, 다른쪽 입력단자가 허가신호 공급단자에 접속되고, 출력단자가 각 선택수단의 제어단자 및 각 클록발생기의 메모리에 접속된 게이트를 포함하고, 주기가 일정한 주기데이터가 N이상 연속된 경우에 한해서, 상기 게이트의 상기 다른쪽 입력단자에 상기 허가신호 공급단자를 통하여 허가신호를 공급하고, 상기 선택수단에 상기 감산기의 출력단자에서 출력되는 감산값을 선택출력시키는 동시에, 상기 게이트에, 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그가 이 게이트를 통과하는 것을 허가시킨다.
상기 제 1 제어수단과 상기 제 2 제어수단은 1개의 게이트를 공통으로 사용하고, 이 게이트의 한쪽 입력단자가 각 감산기의 자릿수 올림신호 출력단자에 접속되고, 다른쪽 입력단자가 금지신호공급단자 및 허가신호 공급단자에 접속되고, 출력단자가 각 선택수단의 제어단자 및 각 클록발생기의 메모리에 접속되어 있어서. NWAY 방식으로 타이밍발생기를 동작시킬 경우에는 상기 게이트의 상기 다른쪽의 입력단자에 상기 금지신호 공급단자를 통해서 금지신호를 공급하고, 상기 선택수단에 상기 감산기의 출력단자에서 출력되는 감산값을 선택출력하는 것을 금지시키고, 또한 상기 게이트에, 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그가 상기 게이트를 통과하는 것을 금지시키고, 주기가 일정한 주기데이터가 N 이상 연속된 경우에 한해서, 상기 게이트의 상기 다른쪽 입력단자에 상기 허가신호 공급단자를 통해서 허가신호를 공급하고, 상기 선택수단에 상기 감산기의 출력단자에서 출력되는 감산값을 선택출력시키고, 또한 상기 게이트에, 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그가 이 게이트를 통과하는 것을 허가시킨다.
상기 금지신호 공급단자 및 허가신호 공급단자는 OR게이트를 통하여 상기 게이트의 다른쪽 입력단자에 접속되어도 좋다. 또, 상기 제 1 제어수단과 상기 제 2제어수단이 공통으로 사용하는 상기 게이트는 AND게이트에 의해 구성할 수 있고, 상기 감산기는, 주기가 일정한 주기데이터가 N 이상 연속된 경우에 한해서, 주기데이터의 N배에서 클록데이터를 감산하고, 또 감산결과가 음(마이너스)의 값일 때에 상기 자릿수 올림신호 출력단자에서 논리 H의 넥스트플래그를 출력하고, 상기 금지신호 공급단자에는 논리 L의 금지신호가 공급되고, 상기 허가신호 공급단자에는 논리 H의 허가신호가 공급된다.
각 클록데이터 처리회로의 주기데이터메모리에는 주제어기에서 미리 각종 주기데이터가 설정되어 있어, 각 감산기는 각 주기데이터메모리에서 판독된 주기데이터 또는 각 승산기에서 N배 된 주기데이터와, 상기 주제어기에서 공급되는 클록데이터와의 감산을 실행하고, 주기데이터의 N배의 값보다 클록데이터의 값이 클 경우에 각 감산기의 자릿수 올림신호 출력단자에서 상기 넥스트플래그를 출력한다.
또 각 승산기를 바이패스하는 단락로가 설치되어 있으며 또한 이 단락로를 ON/OFF하는 스위칭수단이 설치되어 있고, 주기가 일정한 주기데이터가 N 이상 연속되는 경우에 한하여, 상기 스위칭 수단이 상기 단락로를 OFF시킨다.
또한, 각 클록데이터 처리회로에 패턴 발생기에서 타이밍 세트 정보가 공급됨에 따라 각 클록데이터 처리회로의 주기데이터메모리에서 타이밍 세트 정보에 대응하는 주기데이터가 판독된다.
발명을 실시하기 위한 최량의 형태
이하, 본 발명에 따른 타이밍발생기의 일 실시예에 대하여 도 1∼도 3 참조로 상세히 설명한다. 또, 도 1에 있어서, 도 8과 대응하는 회로 및 소자에는 동일 부호를 부기하고, 필요 없는 한 그 설명을 생략한다.
도 1은 본 발명에 따른 타이밍발생기의 일 실시예의 회로구성을, 패턴 발생기, 파형 정형기 및 파형발생기와 함께 도시한 블록도이고, 2WAY 방식으로 시험패턴신호를 발생시킬 때에 사용되는 타이밍발생기에 본 발명을 적용한 사례를 나타낸다.
도 8에 도시된 종래의 타이밍발생기와 동일하게, 한쪽 조의 타이밍발생기(13A)는 주기 발생기(21A)와, 클록데이터메모리(24A)를 포함하는 클록발생기(22A)와, 클록데이터 처리회로(23A)에 의해 구성되어 있고, 다른쪽 조의 타이밍발생기(13B)는, 주기 발생기(21B)와 클록데이터메모리(24B)를 포함하는 클록발생기(22B)와, 클록데이터 처리회로(23B)에 의해 구성되어 있다.
본 발명에 있어서는, 양쪽 조의 클록데이터 처리회로(23A, 23B)는 주기데이터메모리(23MA, 23MB)와 2개의 입력단자(A, B)와 1개의 출력단자와 1개의 자릿수올림신호 출력단자(CR)를 구비한 감산기(25A, 25B)와 2개의 입력단자와 1개의 출력단자를 구비한 AND게이트(26A, 26B)와 2개의 입력단자(A, B)와, 1개의 출력단자와 1개의 제어단자(S)를 구비한 멀티플렉서(27A, 27B)와, 1개의 입력단자와 1개의 출력단자를 구비한 승산기(28A, 28B)와, 승산기(28A, 28B)의 단락로를 선택적으로 ON/OFF하는 스위치(30A, 30B)와, 2개의 입력단자와 1개의 출력단자를 구비한 OR게이트(29A, 29B)에 의해 구성되어 있다. 즉, 도 8에 도시된 종래의 타이밍발생기의 클록데이터 처리회로(23A, 23B)의 회로구성에, 다시 승산기(28A, 28B)와, 스위치(30A, 30B)와, OR게이트(29A, 29B)를 가한 것이다.
승산기(28A, 28B)의 입력단자는 주기데이터메모리(23MA, 23MB)를 직렬로 끼워서 타이밍발생기(23A, 23B)의 주기데이터(RATDAT)가 공급되는 입력단자(T1A, T1B)에 접속되고, 승산기(28A, 28B)의 출력단자는 감산기(25A, 25B)의 입력단자(B)에 접속되어 있다. 또 승산기(28A, 28B)의 입력단자 사이를 단락하는 단락로가 설치되어 있어, 이들 단락로 속에 스위치(30A, 30B)가 삽입되어 있다.
스위치(30A, 30B)는, 패턴발생기(12A, 12B)에서 공급되는 타이밍 세트 정보에 의해 주기데이터메모리(23MA, 23MB)에서 판독되는 주기데이터(RATDAT)가 연속하여 일정의 주기를 가질 경우에 한해서, OFF로 유지된다. 따라서, 이 경우에는 승산기(28A, 28B)에 의해 N배된 주기데이터가 감산기(25A, 25B)의 한쪽 입력단자(B)에 공급된다.
여기서, 승산기(28A, 28B)의 배수 N은 다WAY(NWAY) 방식으로 시험패턴신호를 발생시킬 때에 사용되는 클록발생기의 합계수와 같은 2이상의 정수이고, 이 실시예에서는 2개의 클록발생기(22A, 22B)가 사용되고 있으므로 N은 2이다.
따라서, 주기데이터메모리(23MA, 23MB)에서 판독되는 주기데이터 (RATDAT)는, 승산기(28A, 28B)에 의해 N배되고, 또는 승산기(28A, 28B)를 바이패스해서 직접 감산기(25A, 25B)의 한쪽의 입력단자(B)에 공급된다.
클록발생기(22A, 22B)의 클록데이터메모리(24A, 24B)에 데이터(클록데이터 및 플래그)를 미리 설정한 때에, 주제어기에서 공급되는 클록데이터(CLDAT)가 입력되는 타이밍발생기(23A, 23B)의 입력단자(T2A, T2B)는 도 8에 도시된 종래의 타이밍발생기와 동일하게, 감산기(25A, 25B)의 다른쪽 입력단자(A) 및 멀티플렉서(27A, 27B)의 한쪽 입력단자(A)에 각각 접속되고, 감산기(25A, 25B)의 출력단자는 멀티플렉서(27A, 27B)의 다른쪽 입력단자(B)에 접속되고, 그 자릿수 올림신호 출력단자(CR)는 AND게이트(26A, 26B)의 한쪽 입력단자에 접속되어 있다. AND게이트(26A, 26B)의 출력단자는 멀티플렉서(27A, 27B)의 제어단자(S) 및 클록데이터메모리(24A, 24B)에 각각 접속되고, 멀티플렉서(27A, 27B)의 출력단자는 클록데이터메모리(24A, 24B)에 접속되어 있다.
이 실시예에서는 AND게이트(26A, 26B)의 다른쪽 입력단자에는 OR게이트(29A, 29B)의 출력단자가 접속되고, OR게이트(29A, 29B)의 한쪽 입력단자에는 도 8에 도시된 종래의 타이밍발생기와 같이, 1WAY 모드일 때는 논리 H 신호가, 또, 2WAY 모드일 때는 논리 L 신호가 공급되는 모드 설정단자(MTA1, MTB1)가 접속되어 있다.
그 위에, 2WAY 모드라도, 주기데이터(RATDAT)가 연속하여 일정값일 경우에는, 논리 H 신호가 공급되는 제 2 모드 설정단자(MTA2, MTB2)가 OR게이트(29A,29B)의 다른쪽 입력단자에 접속되어 있다. 이 제 2 모드 설정단자(MT2, MTB2)에 논리 H 신호가 공급되고 있는 사이에는 스위치(30A, 30B)는 OFF로 유지된다.
감산기(25A, 25B)는 입력단자(B)에 공급된 데이터에서 입력단자(A)에 공급된 데이터를 감산한다. 이 실시예에서는, 상기와 같이, 주기데이터메모리(23MA, 23MB)에서 판독되는 주기데이터(RATDAT)가 연속적으로 일정한 주기를 갖는 경우에 한해서, 스위치(30A, 30B)는 OFF로 유지되기 때문에, 이 경우에는 승산기(28A, 28B)에 의해 2배가 된 주기데이터가 감산기(25A, 25B)의 한쪽 입력단자(B)에 공급된다. 기타의 경우에는 스위치(30A, 30B)는 ON으로 유지되기 때문에, 주기데이터는 단락로를 통해서 그대로 감산기(25A, 25B)의 한쪽 입력단자(B)에 공급된다. 따라서 감산기(25A, 25B)는 승산기(28A, 28B)에 의해 2배가 된 주기데이터 (RATDAT), 또는 승산기(28A, 28B)를 통하지 않은 채의 크기의 주기데이터(RATDAT)에서 클록데이터 (CLDAT)를 감산하게 된다(B-A).
다음에, 상기 구성의 타이밍발생기 동작에 대하여 설명한다.
종래와 같이, 2WAY 방식으로 타이밍발생기를 동작시킬 경우에는, 모드설정단자(MTA1, MTB1)에 주제어기(도 4참조)에서 논리 L신호 2WAY(L)가 공급된다. 이 논리 L신호 2WAY(L)는 OR게이트(29A, 29B)를 통과하여 AND게이트(26A, 26B)의 다른쪽 입력단자에 인가되기 때문에, AND게이트(26A, 26B)는 항상 디스에이블 상태로 유지되고, 감산기(25A, 25B)의 자릿수 올림신호 출력단자(CR)에 논리 H신호가 발생하여도 이 논리 H신호는 AND게이트(26A, 26B)를 통과할 수 없다.
논리 L신호 2WAY(L)가 모드 설정단자(MTA1, MTB1)에 공급될 때에는,스위치(30A, 30B)는 ON으로 유지되어있기 때문에, 주기데이터메모리(23MA, 23MB)에서 판독된 주기데이터는 승산기(28A, 28B)를 통하지 않고 감산기(25A, 25B)의 입력단자(B)에 직접 공급된다.
또, 1WAY 방식으로 타이밍발생기를 동작시킬 경우에는, 모드설정단자(MTA1, MTB1)에 주제어기에서 논리 H신호 1WAY(H)가 공급된다. 이에 따라 AND게이트(26A, 26B)는 항상 인에이블 상태로 유지되고, 감산기(25A, 25B)의 자릿수 올림신호 출력단자(CR)에 논리 H신호가 발생하면, 이 논리 H신호는 AND게이트(26A, 26B)를 통과하여 멀티플렉서(27A, 27B)의 제어단자(S) 및 클록데이터메모리(24A, 24B)에 각각 부여된다.
논리H신호 1WAY(H)가 모드 설정단자(MTA1, MTB1)에 공급되어 있을 때에도, 스위치(30A,30B)는 ON으로 유지되어 있으므로, 주기데이터메모리(23MA, 23MB)에서 판독된 주기데이터는 승산기(28A, 28B)를 통하지 않고 그대로 감산기(25A, 25B)의 입력단자에 공급된다.
클록발생기(22A, 22B)의 클록데이터메모리(24A, 24B)에 데이터를 미리 설정할 때에는, 패턴 발생기(12A, 12B)에서 타이밍 세트 정보(TS)가 클록데이터 처리회로(23A, 23B)에 공급되어, 거의 동시에, 주제어기에서 클록데이터(CLDAT)가 타이밍발생기(13A, 13B)의 입력단자(T2A, T2B)에 부여된다. 그 결과, 클록데이터(CLDAT)는 감산기(25A, 25B)의 입력단자(A) 및 멀티플렉서(27A, 27B)의 입력단자(A)에 각각 부여된다. 한편, 클록데이터 처리회로(23A, 23B)의 주기데이터메모리(23MA, 23MB)에서 타이밍 세트 정보(TS)에 의해 판독된 주기데이터(RATDAT)는, 승산기(28A, 28B)에 의해 2배가 되고, 또는 승산기(28A, 28B)의 단락로를 통해서 감산기(25A, 25B)의 입력단자(B)에 공급된다.
패턴발생기(12A, 12B)에서 발생되는 타이밍 세트 정보(TS)에 대응하는 주기데이터메모리(23MA, 23MB)에 미리 설정된 주기데이터(RATDAT)와 제어기에서 공급되는 클록데이터(CLDAT)의 값이 도 2에 도시된 것과 같다. 즉, 타이밍 세트 정보(TS1)는 그 주기데이터(RATDAT)가 100ns, 클록데이터(CLDAT)가 60ns이고, 타이밍 세트 정보(TS2)는 주기데이터가 100ns, 클록데이터가 80ns에 대응하고, 타이밍 세트 정보(TS3)는 주기데이터가 100ns, 클록데이터가 320ns에 대응하고, 타이밍 세트 정보(TS4)는 주기데이터가 100ns, 클록데이터가 240ns에 대응하고, 타이밍 세트 정보(TS5)는 주기데이터가 100ns, 클록데이터가 180ns에 대응하고, 타이밍 세트 정보(TS6)는 주기데이터가 100ns, 클록데이터가 90ns에 대응한다.
또, 타이밍 세트 정보(TS)는 TS1 → TS2 → TS3 → TS4 → TS5 → TS6 →...의 순서로 공급되게 한다.
이 경우에는 클록데이터 처리회로(23A, 23B)의 주기데이터메모리(23MA, 23MB)에서 판독되는 주기데이터는 일정한 같은 주기를 갖고 있으므로, 주제어기(11)에서 논리 H신호(RATFIX(H))가 제 2 모드 설정단자(MTA2, MTB2)에 공급되어 스위치(30A, 30B)는 OFF로 유지된다.
2WAY 방식이기 때문에 양 조의 패턴 발생기(12A, 12B)로부터 교호 싸이클에 있어서 시험패턴데이터(PTND) 및 타이밍 세트 정보(TS)가 발생되고, 타이밍 세트 정보(TS)는 대응하는 타이밍발생기(13A, 13B)에 공급된다. 그 위에, 양 조의 주기발생기(21A, 21B)는 서로 타이밍 세트 정보(TS)를 주고 받을 수 있도록 구성되어 있다.
이 경우에는 양 패턴 발생기(12A, 12B)에서 발생되는 타이밍 세트 데이터(TS)는 TS1 + TS2, TS2 + TS3, TS3 + TS4, TS4 + TS5, TS5 + TS6,... 이 된다. 양 주기 발생기(21A, 21B)는 서로 타이밍 세트 정보(TS)를 주고 받을 수 있도록 구성되어 있으므로, 주기 발생기(21A)는, 도 3A와 같이, TS1 + TS2, TS3 + TS4, TS5 + TS6,...의 주기로 주기펄스(RTA)를 순차 발생시키고, 주기 발생기(21B)는, 도 3C와 같이, 주기 발생기(21A) 보다도 TS1의 주기 만큼 늦은 시점에서 TS2 + TS3, TS4 + TS5,...의 주기로 주기펄스(RTB)를 순차 발생시킨다.
더 상세히 설명하면, 주기 발생기(21A)는 200ns(100ns + 100ns), 200ns(100ns + 100ns), 200ns(100ns + 100ns),...의 주기로 주기펄스 RT1A, RT2A, RT3A, RT4A,..를 순차 발생시키고, 주기발생기(21B)는 주기발생기(21A) 보다도 100ns (TS1)의 주기 만큼 늦은 시점에서 200ns(100ns + 100ns), 200ns(100ns + 100ns),...의 주기로 주기펄스(RT1B, RT2B, RT3B,...)를 순차 발생시킨다.
양 클록발생기(22A, 22B)는 전단의 주기 발생기(21A, 21B)에서 공급되는 주기펄스(RTA, RTB)를, 클록데이터메모리(24A, 24B)에 미리 설정된 클록데이터와 플래그(SAME 또는 NXET)에 따라 지연시켜서 도 3B 및 3D에 각각 도시된 클록펄스(CLA, CLB)를 발생시킨다.
2WAY 방식에 있어서는 2대의 주기 발생기(21A, 21B)는, 프로그램에 의해 지정된 2개의 타이밍 세트 정보에 대응하는 2개의 주기데이터를 가산한 합계의 값을그들의 주기로 하여, 2대의 주기 발생기(21A, 21B)에서 교호로 주기펄스(RTA, RTB)를 출력한다.
주기펄스(RTA)의 제 1 싸이클은, 주기데이터 100ns 쪽이 클록데이터 60ns 보다 크기 때문에, 감산기(25A)의 자릿수 올림신호 출력단자(CR)에서는 L논리가 출력된다. 그 결과, 클록데이터 60ns는 그대로 60ns로서 클록데이터메모리(24A)에 기억되고, 동시에 같은 주기에서의 클록펄스의 발생을 나타내는 세임플래그(SAME)가 클록데이터메모리(24A)에 기억된다.
주기펄스(RT1B)의 제 2 싸이클에서는, 주기데이터 100ns 쪽이 클록데이터 80ns 보다 크기 때문에, 감산기(25B)의 자릿수 올림신호 출력단자(CR)에서는 동일한 L논리가 출력된다. 그 결과, 클록데이터 80ns는 그대로 80ns로서 클록데이터메모리(24B)에 기억되고, 동시에 같은 주기에서의 클록펄스 발생을 나타내는 세임플래그(SAME)가 클록데이터메모리(24B)에 기억된다.
주기펄스(RT2A)의 제 3 싸이클에서는 주기데이터 100ns의 2배의 값 쪽이 클록데이터 320ns 보다 작기 때문에(제3 싸이클의 주기는 이 주기데이터 100ns의 2배인 200ns(TS3 + TS4)이다), 감산기(25A)의 자릿수 올림신호 출력단자(CR)에서 H논리가 출력된다.
상기와 같이, 주기데이터는 동일한 100ns이므로, 즉, 동일한 값의 주기데이터가 연속되므로, 제 2 모드 설정단자(MTA2, MTB2)에는 논리 H신호(RATFIX(H))가 공급되어 있고, 스위치(30A, 30B)는 OFF 상태에 있다. 따라서, 논리 H신호 (RATF1X(H))는 OR게이트(29A)를 통과하여 AND게이트(26A)의 다른쪽 입력단자에 인가되기 때문에, AND게이트(26A)는 인에이블 상태로 유지된다.
감산기(25A)는 100ns×2 - 320ns를 연산한다. 감산결과는 -120ns 이므로, 감산기(25A)는 자릿수 올림신호 출력단자(CR)에서 논리 H의 자릿수 올림신호를 출력한다. AND게이트(26A)는 인에이블 상태이기 때문에, 이 논리 H신호는 AND게이트(26A)를 통과하여 멀티플렉서(27A)의 제어단자(S)에 입력된다. 멀티플렉서(27A)는 제어단자(S)에 논리 H가 부여되면 입력단자(B)를 선택하므로 감산기(25A)의 감산값(-120ns)의 절대값이 클록데이터메모리(24A)에 공급된다. 동시에, 논리 H신호는 클록데이터메모리(24A)에도 부여되므로 클록데이터메모리(24A)는 감산기(25A)의 감산값의 절대값(120ns)와 다음 싸이클에서의 클록펄스 발생을 나타내는 넥스트플래그(NEXT)를 기억한다.
주기펄스(RT2B)의 제 4 싸이클에서는 주기데이터 100ns의 2배가 클록데이터(240ns) 보다 작기 때문에 (제 4 주기는 이 주기데이터 100ns의 2배인 200ns (TS4 + TS5)이다), 감산기(25A)의 자릿수 올림신호 출력단자(CR)에서 H논리가 출력된다. 이에 따라 논리 H신호(RATFIX(H))는 OR게이트(29B)를 통과하여 AND게이트(26B)의 다른쪽 입력단자에 인가되기 때문에 AND게이트(26B)는 인에이블 상태로 유지된다.
감산기(25B)는 100ns×2-240ns를 연산한다. 결과결과는 -40ns이므로, 감산기(25B)는 자릿수 올림신호 출력단자(CR)에서 논리 H의 자릿수 올림신호를 출력한다. AND게이트(26A)는 인에이블 상태이기 때문에 이 논리 H신호는 AND게이트(26B)를 통과하여 멀티플렉서(28B)의 제어단자(S)에 입력된다. 멀티플렉서(27B)는 제어단자(S)에 논리 H가 부여되면 입력단자(B)를 선택하기 때문에, 감산기(25B)의 감산값(-40ns)의 절대값이 클록데이터메모리(24A)에 입력된다. 동시에, 논리 H신호는 클록데이터메모리(24B)에도 부여되므로 클록데이터메모리(24B)는 감산기(25B)의 감산값의 절대값(40ns)과 다음 싸이클에서의 클록펄스 발생을 나타내는 넥스트플래그(NEXT)를 기억한다.
동기 펄스(RT3A)의 제 5 싸이클에서는, 동기 데이터 100ns의 2배가 클록데이터 180ns 보다 크기 때문에(제 5 싸이클의 주기는 이 주기데이터 100ns의 2배인 200ns (TS5 + TS6)이다), 감산기(25A)의 자릿수 올림신호 출력단자(CR)에서는 L논리가 출력된다. 그 결과, 클록데이터 180ns는 그대로 180ns로서 클록데이터메모리(24A)에 기억되고, 동시에 같은 주기에서의 클록펄스 발생을 나타내는 세임플래그(SAME)가 클록데이터메모리(24A)에 기억된다.
주기펄스(RT3B)의 제 6 싸이클에서는, 주기데이터 100ns가 클록데이터 90ns 보다 크기 때문에, 감산기(25B)의 자릿수 올림신호 출력단자(CR)에서는 L논리가 출력된다. 그 결과, 클록데이터 90ns는 그대로 90ns로서 클록데이터메모리(24B)에 기억되고, 동시에 같은 주기에서의 클록펄스 발생을 나타내는 세임플래그(SAME)가 클록데이터메모리(24B)에 기억된다.
이와 같이, 타이밍 세트 정보에 의해 클록데이터 처리회로(23A, 23B)의 주기데이터메모리(23MA, 23MB)에서 판독되는 주기데이터가 연속적으로 동일한 주기를 갖는 주기데이터라면, 주제어기에서 논리 H신호(RATFIX(H))가 자동적으로 제 2 모드 설정단자(MTA2, MTB2)에 공급되고, 스위치(30A, 30B)가 OFF로 유지되기 때문에승산기(28A, 28B)에 의해 2배된 주기데이터에서 클록데이터를 감산한 결과가 음(-)일 때에, 감산기(25A, 25B)에서 출력되는 넥스트플래그(NEXT)를 클록발생기(22A, 22B)의 클록데이터메모리(24A, 24B)에 기억할 수 있다. 따라서, 양 클록데이터메모리(24A, 24B)에는 도 2 오른쪽 란에 도시된 플래그 및 클록데이터를 미리 설정할 수있다.
이 도 2 오른쪽 란에 도시된 플래그 및 클록데이터에서, 한쪽 조의 클록발생기(22A)는 도 3B에 도시된 것과 같이 제 1 싸이클 펄스(RT1A)에서 60ns 지연된 타이밍이고, 또 같은 싸이클내에서 클록펄스(CL1A)를 발생시키고, 제 3 싸이클(RT2A)에서 320ns 지연된 타이밍이고, 또 다음 싸이클 내에서 클록펄스(CL2A)를 발생하고, 제 5 싸이클 펄스(RT3A)에서 180ns 지연된 타이밍이고, 또 같은 싸이클내에서 클록펄스(CL3A)를 발생한다.
이에 대해, 다른쪽 조의 클록발생기(22B)는 도 3D와 같이 제 2 싸이클 펄스(RT1B)에서 80ns 지연된 타이밍이고, 또 같은 싸이클내에서 클록펄스(CL1B)를 발생시키고, 제 4 싸이클 펄스(RT2B)에서 240ns 지연된 타이밍이고, 또 다음 싸이클내에서 클록펄스(CL2B)를 발생하고, 제 6 싸이클 펄스(RT3B)에서 90ns 지연한 타이밍이고 또 같은 싸이클내에서 클록펄스(CL3B)를 발생한다.
따라서, 2WAY 방식으로 시험 패턴 신호를 발생시킬 경우에도 다음 싸이클에서 클록을 발생시킬 수 있으므로, 유저가 프로그램을 작성할 때에 있어서, 클록데이터가 다음 싸이클을 넘지 않도록 주의할 필요는 없다. 또, 주기가 일정한 같은 값인 주기데이터가 2개 이상 연속하면, 자동적으로 논리H신호가 제 2 모드 설정단자(MTA, MTB)에 공급되고, 또한 스위치(30A, 30B)가 OFF로 유지되기 때문에, 다음 싸이클 내에서의 클록펄스 발생을 나타내는 넥스트플래그(NEXT)를 클록데이터메모리(24A, 24B)에 기억할 수 있다. 그러므로, 2WAY 방식으로 타이밍발생기를 동작시킬 경우에도, 1WAY 방식으로 타이밍발생기를 동작시킬 경우와 같이, 넥스트플래그「NEXT」를 클록데이터메모리(24A, 24B)에 기억할 수 있으므로, 동기형 메모리 IC와 같이 주기가 일정한 클록에 동기하여 모든 동작을 실행하는 메모리 IC의 시험, 측정도 하등의 문제가 발생하지 않고 행해진다.
또한 도 2에는 타이밍 세트 정보(TS)에 대응하는 주기데이터메모리(23MA, 23MB)의 주기데이터를 모두 100ns로 나타냈는데, 실제로는 각종 길이(ns)의 주기데이터가 미리 설정되어 있어, 유저가 프로그램에 의해 원하는 주기데이터를 선택한다. 따라서, 타이밍 세트 정보(TS)의 발생순서는 유저가 프로그램에 의해 지정하는 것이므로 여러가지 순서가 있다.
상기 실시예에서는 2WAY 방식으로 타이밍발생기를 동작시킬 경우를 예로 들어 설명하였으나, 본 발명은 2WAY 방식으로 시험 패턴 신호를 발생시킬 경우에 한정되지 않고, 다른 다WAY 방식(3WAY 방식, 4WAY 방식,...)으로 시험패턴신호를 발생시킬 경우에 사용되는 타이밍발생기에도 동일하게 적용됨은 말할 나위 없다. 단, 승산기(28A, 28B)의 배수(N)는 사용되는 클록발생기의 합계 수와 대등하게(예를 들어 4WAY 방식의 경우에는 N은 4가 된다)됨은 말할 나위 없다.
또, 동일 주기의 주기데이터가 연속될 경우에, 주기의 2N배를 넘는 싸이클(다음의 다음 싸이클)에서 클록펄스를 발생시키는 것을 나타내는 클록데이터가 클록데이터메모리에 기억되면 오동작할 가능성이 높기 때문에, 이같은 클록데이터는 프로그램 하지 않도록 주의할 필요가 있다.
이상의 설명으로 명백한 바와 같이, 본 발명에 따르면, 주기데이터를 N배하는 승산기를 설치하고, 주기가 일정한 같은 값인 주기데이터가 N이상 연속된 경우에 한해서, 주기데이터를 승산기에서 N배해서 감산기의 한쪽의 입력단자에 공급하고, 이 N배한 주기데이터에서 감산기의 다른쪽 입력단자에 주제어기로부터 공급되는 클록데이터를 감산시키고 또한 감산결과 및 감산기의 자릿수 올림신호 출력단자에서의 신호를 클록데이터메모리에 전송할 수 있도록 구성했기 때문에, 감산기의 자릿수 올림신호 출력단자에서 다음 싸이클에서의 클록 발생을 나타내는 넥스트플래그가 출력되면, 이것을 클록데이터메모리에 기억할 수 있다. 따라서, NWAY 방식으로 시험패턴신호를 발생시킬 경우에도 클록을 다음 싸이클 까지 지연시켜서 발생시킬 수 있다.
따라서, 가령, 판독 지령을 부여한 타이밍의 싸이클에서 다음 싸이클로 옮기고 나서 판독 지령 데이터가 출력되는 IC나 혹은 동기형 메모리 IC와 같이 주기가 일정한 클록에 동기하여 모든 동작을 실행하는 메모리 IC라도, NWAY 방식으로 시험패턴신호를 발생시킬 경우에 사용되는 타이밍발생기를 사용하여 시험, 측정을 행할 수 있는 현저한 이점이 얻어진다.

Claims (13)

  1. 클록 발생기, 주기발생기 및 클록데이터 처리회로를 포함하는 N개(N은 2 이상의 정수)의 타이밍발생기로 구성되고, 각 클록발생기에서 출력된 클록의 발생 타이밍이 각 클록발생기에 설치된 메모리에 미리 설정된 데이터에 의거하여 제어되고 원하는 타이밍으로 각 클록발생기에서 클록이 발생되도록 구성된 타이밍발생기에 있어서,
    각 클록데이터 처리회로는
    주기데이터메모리에서 판독되는 주기데이터가 공급되어, 상기 공급된 주기 데이타 값을 N배로 하는 승산기,
    상기 승산기에 의해 N배된 주기데이터 또는 상기 주기데이터메모리에서 판독된 주기데이터가 한쪽 입력단자에 공급되어, 다른쪽 입력단자에 외부로부터 공급되는 클록데이터와의 감산을 실행하는 감산기, 및
    상기 감산기에 공급된 상기 클록 데이터 및 상기 감산기의 출력단자에서 출력된 감산값 중 어는 것이든 한쪽을 선택하여 대응되는 클록 발생기에 설치된 메모리에 출력하는 선택수단을 포함하고 있으며,
    주기가 일정한 주기데이터가 N 이상 연속되는 경우에 한해서, 상기 주기데이터메모리에서 판독된 주기데이터를 각 승산기에 부여해서 N배 시키고, 상기 주기 데이터의 N 배의 값보다 클록데이타의 값이 큰 경우에 상기 선택수단에 의해 각 감산기의 출력단자에서 출력되는 감산값 및 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는, 다음 사이클에서 클록의 발생을 나타내는 넥스트 플래그를 상기 대응되는 클록발생기의 메모리에 기억시키는 제어수단을 또한 구비하고 있으며,
    NWAY 방식으로 타이밍발생기를 동작시켰을 때, 상기 주기데이터메모리로부터 판독한 주기데이터와 함께 다음 싸이클의 원하는 타이밍점에서 클록을 발생시키는 클록데이터가 공급된 경우, 각 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그와, 상기 각 감산기의 출력단자에서 출력되는 감산값이 각 클록발생기의 메모리에 기억될 수 있도록 한 것을 특징으로 하는 타이밍발생기.
  2. 제 1 항에 있어서, 각 클록데이터 처리회로의 주기데이터메모리에는 주제어기로부터 미리 각종 주기데이터가 설정되어 있고, 각 감산기는 각 주기데이터메모리에서 판독된 주기데이터 또는 각 승산기에서 N배된 주기데이터와, 상기 주제어기에서 공급되는 클록데이터와의 감산을 실행하고, 주기데이터의 N배 값보다 클록데이터의 값이 더 클 경우, 각 감산기의 자릿수 올림신호 출력단자에서 상기 넥스트플래그를 출력하는 것을 특징으로 하는 타이밍발생기.
  3. 제 1 항에 있어서, 각 승산기를 바이패스하는 단락로가 설치되고, 상기 단락로를 ON/OFF시키는 스위칭 수단이 설치되고, 주기가 일정한 주기데이터가 N 이상 연속되는 경우에 한하여, 상기 스위칭 수단이 상기 단락로를 OFF시키는 것을 특징으로 하는 타이밍발생기.
  4. 제 1 항에 있어서, 각 클록데이터 처리회로에 패턴 발생기에서 타이밍 세트 정보가 공급됨에 따라 각 클록데이터 처리회로의 주기데이터메모리에서 타이밍 세트 정보에 대응하는 주기데이터가 판독되는 것을 특징으로 하는 타이밍발생기.
  5. 클록 발생기, 주기 발생기 및 클록데이터 처리회로를 각각 포함한 N개(N은 2 이상의 정수)의 타이밍발생기로 구성된 타이밍발생기이고, 각 클록발생기에서 출력되는 클록발생타이밍을 각 클록발생기에 설치되는 메모리에 미리 설정된 데이터에 의거하여 제어하고, 원하는 타이밍으로 각 클록발생기에서 클록을 발생시켜, 상기 클록펄스를 다중화하며, 상기 다중화된 클록펄스를 사용하여 반도체 디바이스를 시험하기 위한 시험패턴 신호를 생성하는 반도체 디바이스 시험장치에 사용되고,
    상기 N개의 타이밍발생기 각각의 클록데이터 처리회로는,
    그 주기데이터메모리에서 판독되는 주기데이터가 공급되어, 상기 공급된 주기데이터 값을 N배로 하는 승산기와,
    상기 승산기에 의해 N배로된 주기데이터 또는 상기 주기데이터메모리에서 판독된 주기데이터가 한쪽 입력단자에 공급되어, 다른쪽 입력단자에 외부로부터 공급되는 클록데이터와의 감산을 실행하는 감산기와,
    상기 감산기에 공급된 상기 클록데이터 및 상기 감산기의 출력단자에서 출력된 감산값 중 어느 것이든 한쪽을 선택하여 대응되는 클록발생기에 설치된 메모리에 출력하는 선택수단과,
    주기데이터 값보다 클록데이터의 값이 작을 경우, 상기 감산기에 공급되는 클록데이터를 선택하도록 상기 선택수단을 제어하여 상기 감산기의 출력단자에서 출력되는 감산값이 상기 대응되는 클록발생기의 메모리에 기억되는 것을 저지하는 제 1 제어수단과,
    주기가 일정한 주기데이터가 N이상 연속된 경우에 한해서, 상기 주기데이터메모리에서 판독된 주기데이터를 상기 승산기에 부여해서 N배 시키고, 또한 상기 감산기의 출력단자에서 출력되는 감산값, 및 상기 감산기의 자릿수 올림신호 출력단자에서 출력되고, 다음 사이클에서 클록의 발생을 나타내는 넥스트플래그가 상기 대응되는 클록발생기의 메모리에 기억되는 것을 가능하게 하는 제 2 제어수단을 구비하고,
    NWAY 방식으로 타이밍발생기를 동작시켰을 때, 상기 주기데이터메모리에서 판독된 주기데이터와 함께 다음 사이클의 원하는 타이밍점에서 클록을 발생시키는 클록데이터가 공급된 경우, 각 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그와, 각 감산기의 출력단자에서 출력되는 감산값을 각 클록발생기의 메모리에 기억되도록 한 것을 특징으로 하는 타이밍발생기.
  6. 제 5 항에 있어서, 상기 제 1 제어수단은, 한쪽 입력단자가 각 감산기의 자릿수 올림신호 출력단자에 접속되고, 다른쪽 입력단자가 금지신호 공급단자에 접속되며, 출력단자가 각 선택수단의 제어단자 및 각 클록발생기의 메모리에 접속된 게이트를 포함하고,
    NWAY 방식으로 타이밍발생기를 동작시킬 경우, 상기 게이트의 상기 다른쪽 입력단자에 상기 금지신호 공급단자를 통해서 금지신호를 공급하여, 상기 선택수단이 상기 감산기의 출력단자에서 출력된 감산값을 선택 출력하는 것을 금지시키고, 또한 상기 게이트에, 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그가 상기 게이트를 통과하는 것을 금지시키는 것을 특징으로 하는 타이밍발생기.
  7. 제 5 항에 있어서, 상기 제 2 제어수단은, 한쪽 입력단자가 각 감산기의 자릿수 올림신호 출력단자에 접속되고, 다른쪽 입력단자가 허가신호 공급단자에 접속되며, 출력단자가, 각 선택수단의 제어단자 및 각 클록발생기의 메모리에 접속된 게이트를 포함하고,
    주기가 일정한 주기데이터가 N 이상 연속된 경우에 한해서, 상기 게이트의 상기 다른쪽 입력단자에 상기 허가신호 공급단자를 통해서 허가신호를 공급하고, 상기 선택수단에 상기 감산기의 출력단자에서 출력되는 감산값을 선택 출력시키는 동시에, 상기 게이트에, 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트 플래그가 상기 게이트를 통과하는 것을 허가시키는 것을 특징으로 하는 타이밍발생기.
  8. 제 5 항에 있어서, 상기 제 1 제어수단 및 상기 제 2 제어수단은 하나의 게이트를 공통으로 사용하고, 상기 게이트의 한쪽 입력단자가 각 감산기의 자릿수 올림신호 출력단자에 접속되고, 다른쪽 입력단자가 금지신호 공급단자 및 허가신호 공급단자에 접속되고, 출력단자가 각 선택수단의 제어단자 및 각 클록발생기의 메모리에 접속되어있고,
    NWAY 방식으로 타이밍발생기를 동작시킬 경우, 상기 게이트의 상기 다른쪽 입력단자에 상기 금지신호 공급단자를 통해서 금지신호를 공급하고, 상기 선택수단에 상기 감산기의 출력단자에서 출력되는 감산값을 선택 출력하는 것을 금지시키고, 또한 상기 게이트에, 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그가 상기 게이트를 통과하는 것을 금지시키고,
    주기가 일정한 주기데이터가 N 이상 연속된 경우에 한해서, 상기 게이트의 상기 다른쪽 입력단자에 상기 허가신호 공급단자를 통해서 허가신호를 공급하고, 상기 선택수단에 상기 감산기의 출력단자에서 출력되는 감산값을 선택 출력시키고, 또한 상기 게이트에, 상기 감산기의 자릿수 올림신호 출력단자에서 출력되는 넥스트플래그가 상기 게이트를 통과하는 것을 허가시키는 것을 특징으로 하는 타이밍발생기.
  9. 제 8 항에 있어서, 상기 금지신호 공급단자 및 허가신호 공급단자는 OR게이트를 통해서 상기 게이트의 다른 쪽 입력단자에 접속되어 있는 것을 특징으로 하는 타이밍발생기.
  10. 제 8 항에 있어서, 상기 제 1 제어수단 및 상기 제 2 제어수단이 공통으로 사용하는 상기 게이트는 AND게이트이며,
    상기 감산기는, 주기가 일정한 주기데이터가 N 이상 연속될 경우에 한해서, 주기데이터의 N배에서 클록데이터를 감산하고, 또한 감산결과가 음(마이너스)의 값일 경우에 상기 자릿수 올림신호 출력단자에서 논리H의 넥스트플래그를 출력하고,
    상기 금지신호 공급단자에는 논리L의 금지신호가 공급되고,
    상기 허가신호 공급단자에는 논리H의 허가신호가 공급되는 것을 특징으로 하는 타이밍발생기.
  11. 제 5 항에 있어서, 각 클록데이터 처리회로의 주기데이터메모리에는 주제어기에 미리 각종 주기데이터가 설정되어 있고, 각 감산기는 각 주기데이터메모리에서 판독된 주기데이터 또는 각 승산기에서 N배로된 주기데이터와, 상기 주제어기에서 공급되는 클록데이터와의 감산을 실행하고, 주기데이터의 N배의 값보다 클록데이터의 값이 클 경우에는 각 감산기의 자릿수 올림신호 출력단자에서 상기 넥스트플래그를 출력하는 것을 특징으로 하는 타이밍발생기.
  12. 제 5 항에 있어서, 각 승산기를 바이패스하는 단락로가 설치되며, 상기 단락로를 ON/OFF시키는 스위칭 수단이 설치되고, 주기가 일정한 주기데이터가 N이상 연속된 경우에 한해서, 상기 스위칭 수단이 상기 단락로를 OFF시키는 것을 특징으로 하는 타이밍발생기.
  13. 제 5 항에 있어서, 각 클록데이터 처리회로에 패턴발생기에서 타이밍 세트 정보가 공급됨에 의해 각 클록데이터 처리회로의 주기데이터메모리에서 타이밍 세트 정보에 대응되는 주기데이터가 판독되는 것을 특징으로 하는 타이밍발생기.
KR1019997002940A 1997-08-06 1998-08-06 타이밍 발생기 KR100318226B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP97-211834 1997-08-06
JP21183497 1997-08-06

Publications (2)

Publication Number Publication Date
KR20000068712A KR20000068712A (ko) 2000-11-25
KR100318226B1 true KR100318226B1 (ko) 2001-12-22

Family

ID=16612368

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019997002940A KR100318226B1 (ko) 1997-08-06 1998-08-06 타이밍 발생기

Country Status (6)

Country Link
US (1) US6253360B1 (ko)
JP (1) JP3068859B2 (ko)
KR (1) KR100318226B1 (ko)
DE (1) DE19881319C2 (ko)
TW (1) TW376458B (ko)
WO (1) WO1999008123A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6173432B1 (en) 1997-06-20 2001-01-09 Micron Technology, Inc. Method and apparatus for generating a sequence of clock signals
TW428092B (en) * 1998-05-20 2001-04-01 Advantest Corp Semiconductor test system
US6349399B1 (en) 1998-09-03 2002-02-19 Micron Technology, Inc. Method and apparatus for generating expect data from a captured bit pattern, and memory device using same
US6470060B1 (en) * 1999-03-01 2002-10-22 Micron Technology, Inc. Method and apparatus for generating a phase dependent control signal
US6801989B2 (en) 2001-06-28 2004-10-05 Micron Technology, Inc. Method and system for adjusting the timing offset between a clock signal and respective digital signals transmitted along with that clock signal, and memory device and computer system using same
US6934896B2 (en) * 2001-12-31 2005-08-23 Advantest Corp. Time shift circuit for functional and AC parametric test
US7168027B2 (en) 2003-06-12 2007-01-23 Micron Technology, Inc. Dynamic synchronization of data capture on an optical or other high speed communications link
US20060083626A1 (en) * 2004-10-19 2006-04-20 Manole Dan M Compressor and hermetic housing with minimal housing ports
US7499462B2 (en) * 2005-03-15 2009-03-03 Radiospire Networks, Inc. System, method and apparatus for wireless delivery of content from a generalized content source to a generalized content sink
US20060212911A1 (en) * 2005-03-15 2006-09-21 Radiospire Networks, Inc. System, method and apparatus for wireless delivery of analog media from a media source to a media sink
US20060209890A1 (en) * 2005-03-15 2006-09-21 Radiospire Networks, Inc. System, method and apparatus for placing training information within a digital media frame for wireless transmission
US20060209884A1 (en) * 2005-03-15 2006-09-21 Macmullan Samuel J System, method and apparatus for automatic detection and automatic connection between a generalized content source and a generalized content sink
US20060209892A1 (en) * 2005-03-15 2006-09-21 Radiospire Networks, Inc. System, method and apparatus for wirelessly providing a display data channel between a generalized content source and a generalized content sink
TWI339948B (en) * 2007-11-19 2011-04-01 Faraday Tech Corp Pll base timing generator and method of generating timing signal
CN112711295A (zh) * 2019-10-25 2021-04-27 瑞昱半导体股份有限公司 时序产生器、时序产生方法以及控制芯片

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3235739B2 (ja) 1992-06-24 2001-12-04 株式会社アドバンテスト タイミングおよび波形発生器
JP3633988B2 (ja) * 1994-09-19 2005-03-30 株式会社アドバンテスト 半導体ic試験装置のタイミングエッジ生成回路
JP3466774B2 (ja) 1995-05-17 2003-11-17 株式会社アドバンテスト 半導体試験装置における周期発生回路
JP2976276B2 (ja) 1996-05-31 1999-11-10 安藤電気株式会社 タイミング発生器
JP3501200B2 (ja) 1997-02-21 2004-03-02 株式会社アドバンテスト Ic試験装置
JP3701428B2 (ja) 1997-03-25 2005-09-28 株式会社ルネサステクノロジ 半導体試験装置のタイミング発生装置
US6173432B1 (en) * 1997-06-20 2001-01-09 Micron Technology, Inc. Method and apparatus for generating a sequence of clock signals

Also Published As

Publication number Publication date
DE19881319T1 (de) 1999-09-02
TW376458B (en) 1999-12-11
WO1999008123A1 (fr) 1999-02-18
KR20000068712A (ko) 2000-11-25
JP3068859B2 (ja) 2000-07-24
DE19881319C2 (de) 2003-05-28
US6253360B1 (en) 2001-06-26

Similar Documents

Publication Publication Date Title
KR100318226B1 (ko) 타이밍 발생기
WO2003104828B1 (en) VARIABLY PULSE SCAN TEST CIRCUITS AND ASSOCIATED METHOD
US6107818A (en) High speed, real-time, state interconnect for automatic test equipment
KR970011585B1 (ko) 반도체 시험장치의 파형 정형기
EP0918227B1 (en) Automatic circuit tester having a waveform acquisition mode of operation
US6880137B1 (en) Dynamically reconfigurable precision signal delay test system for automatic test equipment
KR19980071586A (ko) 반도체 디바이스 시험장치
KR100514335B1 (ko) 다중 주기 발생기를 구비하는 집적 회로 테스터
KR980003624A (ko) 반도체 디바이스 시험장치
US6892338B2 (en) Analog/digital characteristics testing device and IC testing apparatus
KR100506778B1 (ko) 이벤트 기반 테스트 시스템을 위한 스캔 벡터 지원
JP4041801B2 (ja) 半導体デバイス試験装置
JP2000090693A (ja) メモリ試験装置
KR100336907B1 (ko) 메모리 시험장치
JP3328160B2 (ja) 論理集積回路のテスト装置
JP2004361111A (ja) 半導体試験装置および半導体集積回路の試験方法
JPH0675015A (ja) パターン信号発生器に同期したac測定電圧印加回路
JPH045584A (ja) Ic試験装置
JP2769588B2 (ja) Ic試験装置内のデータ出力タイミング同期方式
JP2002189058A (ja) 半導体デバイス試験装置
JP2539956Y2 (ja) テスターのタイミング発生回路
JP2003156538A (ja) 半導体試験装置
KR19990051367A (ko) 테스트 평가 모드를 갖는 반도체 장치
KR960014957A (ko) 바운더리 스캔 구조의 테스트 데이타 출력 장치
WO2003054563A1 (en) Scan vector support for event based test system

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
G170 Re-publication after modification of scope of protection [patent]
FPAY Annual fee payment

Payment date: 20081201

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee