KR100307664B1 - 고속패턴발생방법및이방법을사용한고속패턴발생기 - Google Patents

고속패턴발생방법및이방법을사용한고속패턴발생기 Download PDF

Info

Publication number
KR100307664B1
KR100307664B1 KR1019970701975A KR19970701975A KR100307664B1 KR 100307664 B1 KR100307664 B1 KR 100307664B1 KR 1019970701975 A KR1019970701975 A KR 1019970701975A KR 19970701975 A KR19970701975 A KR 19970701975A KR 100307664 B1 KR100307664 B1 KR 100307664B1
Authority
KR
South Korea
Prior art keywords
pattern
address
instruction
instruction memory
subpattern
Prior art date
Application number
KR1019970701975A
Other languages
English (en)
Other versions
KR970706507A (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
Priority claimed from JP19051395A external-priority patent/JP3368570B2/ja
Priority claimed from JP19051495A external-priority patent/JP3393567B2/ja
Application filed by 오우라 히로시, 가부시키가이샤 아드반테스트 filed Critical 오우라 히로시
Publication of KR970706507A publication Critical patent/KR970706507A/ko
Application granted granted Critical
Publication of KR100307664B1 publication Critical patent/KR100307664B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/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/31813Test pattern generators
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318307Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/27Built-in tests

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

종래와 동등의 속도로 동작하는 시퀀스 제어부를 사용하여 종래부터도 고속의 패턴신호를 발생시킬 수 있는 고속패턴발생방법과 이 방법을 실현하는 고속패턴발생기를 제공한다. 복수의 서브패턴발생부로부터 다상의 서브패턴을 발생시키고 이 다상의 서브패턴을 다중화회로로 1상씩 취출하여 다중화함으로써 시퀀스 제어부의 동작속도의 다중화수배의 속도의 고속패턴신호를 발생시킨다. 또한, 패턴발생기의 인스트럭션 메모리를 독특한 구성으로서 상기 고속패턴발생방법을 실현한다.

Description

고속패턴 발생방법 및 이 방법을 사용한 고속패턴 발생기{ }
IC 메모리와 같은 반도체장치를 시험하기 위해서 종래부터 사용되고 있는 반도체장치 시험장치의 일례를 도 1에 도시했다. 도시한 것 같이 이 반도체장치 시험장치는 패턴발생기(100), 데이타셀렉터(200), 피시험장치, 예컨대 IC(300) 및 논리비교기(400)를 포함한다. 패턴발생기(100)는 시퀀스 제어부(110)와, 패턴발생부(120)에 의해 구성되어 있다.
시퀀스 제어부(110)는 도 2에 도시한 바와 같이, 프로그램 카운터 콘트롤러(111), 프로그램 카운터(112), 인스트럭션 메모리(113), 루프카운터(114), 및 초기치 격납 레지스터(115)에 의해서 구성되어 있다. 인스트럭션 메모리(113)는 시퀀스 제어명령 기억영역(113A)과, 패턴발생명령 기억영역(113B)을 구비하여, 이들 기억영역(113A, 113B)은 프로그램 카운터(112)로부터 부여되는 어드레스신호에 의해서 억세스된다. 시퀀스 제어명령기억영역(113A)이 억세스되면, 이 시퀀스 제어명령 기억영역(113A)에서 시퀀스 제어명령이 판독되고, 이 시퀀스 제어명령이프로그램 카운터 콘트롤러(111)에 공급되어 해독되고, 다음에 억세스해야 할 어드레스가 결정된다. 이 어드레스는 콘트롤러(111)로부터 프로그램 카운터(112)에 보내어지고, 프로그램 카운터(112)는 이 결정된 어드레스를 억세스하기 위한 어드레스신호를 인스트럭션 메모리(113)에 부여하고, 인스트럭션 메모리(113)로부터 다음에 실행해야 할 시퀀스 제어명령을 판독한다. 이와 같이 하여 인스트럭션 메모리(113)로부터 시퀀스제어명령의 1개가 판독될 때마다, 그 시퀀스 제어명령에 기입하고, 제어명령에 의해 프로그램 카운터 콘트롤러(111)가 다음에 억세스하는 어드레스를 결정하고, 이것이 반복되어 패턴발생명령기억영역(113B)으로부터 패턴발생명령이 판독된다.
이와 같이 시퀀스 제어명령에 따라서 다음에 억세스하는 어드레스를 결정하면서 패턴발생명령을 판독하는 방식을 채용하는 이유의 하나는, 예컨대 패턴발생명령을 1스텝씩 프로그램에 기입하고 패턴신호를 발생시키는 방식을 채용한 경우에는 프로그램이 장대화되어 프로그램의 작성에 많은 수고와 시간을 요하는 불편함이 생긴다.
이 때문에 일반적으로는 루프명령을 사용하여 소정의 시험패턴을 소정의 회수씩 발생시키는 프로그래밍 방식을 채용하고 있다. 이 방식에서는, 패턴발생의 실행개시시에 각 루프명령마다 루프의 회수등을 초기치 격납 레지스터(115)에 격납하고, 1개의 루프명령이 실행되면 루프의 주회수(周回數)를 루프카운터(114)로 계수하여, 루프를 소정의 회수주회하면 그 루프명령의 실행을 종료하고, 다음 루프명령의 실행으로 이행하도록 동작한다.
패턴발생명령기억영역(113B)으로부터 판독된 패턴발생명령은, 패턴발생부(120)에 부여되고, 이 패턴발생명령에 따라서 패턴발생부(120)는 시험패턴신호와 어드레스신호를 발생한다.
데이타셀렉터(200)는 패턴발생부(120)로부터 발생된 신호의 중에서 피시험 IC(300)에 인가하는 어드레스신호, 데이타신호등을 선택하여, 이것을 파형정형한 후, 피시험 IC(300)에 부여한다. 또한, 데이타셀렉터(200)는 시험패턴신호중에서 기대치 데이타를 선택하여 이것을 논리비교기(400)에 부여한다.
논리비교기(400)에서는, 피시험 IC(300)로부터 판독된 데이타와, 데이타셀렉터(200)부터의 기대치 데이타를 논리비교하여, 불일치의 발생을 검출하는 것으로 그 피시험 IC(300)가 불량품인지 결정한다. 따라서, 불일치가 검출되지 않은 경우는 그 피시험 IC(300)는 양품으로 판단할 수 있으며, 피시험 IC(300)의 양부의 시험을 행할 수 있다.
종래의 패턴발생기(100)에서는 인스트럭션 메모리(113)를 패턴발생주파수보다 고속으로 동작시킬 필요가 있기 때문에, 시퀀스 제어부(110)를 고속화하는 것은 곤란한 것으로 되어 있다. 특히, 패턴발생속도를 고속화하기위해서는 인스트럭션 메모리(113), 프로그램 카운터·콘트롤러(111), 프로그램 카운터(112), 루프카운터(114)등을 모두 고속동작가능한 소자로 대체하여 구성하지 않으면 안된다. 또한, 패턴발생부(120)도 고속동작가능한 소자로 대체하여, 더욱이, 초다단의 파이프라인구조를 취하지 않을 수가 없기 때문에 막대한 비용이 들고 실현하였다고해도 고가이고 대형인 것으로 된다고 하는 결점이 있다.
또한, 비용을 들였다해도 고속동작가능인 소자의 동작속도에는 한도가 있다. 따라서, 종래의 기술에서 예컨대 패턴발생속도가 100MHz 이던 것을 수100MHz까지 높이는 것은 어렵다.
본 발명은, 반도체집적회로(IC)로 구성되는 반도체장치, 예컨대 IC 메모리의 양부(良否)를 시험하기 위한 반도체장치 시험장치등에 사용하는 유용한 고속패턴 발생방법 및 이 방법을 사용한 고속패턴 발생기에 관한다.
도 1은 종래의 IC 시험장치의 일례의 구성을 설명하기 위한 블럭도이다,
도 2는 종래의 IC 시험장치에 사용되는 시퀀스 제어부를 설명하기 위한 블럭도이다,
도 3는 본 발명에 의한 고속패턴발생방법의 제1의 실시예를 설명하기 위한 블록도이다,
도 4는 본 발명에 의한 고속패턴발생방법의 제1의 실시예를 설명하기 위한 흐름도이다,
도 5는 본 발명에 의한 고속패턴발생기의 제1의 실시예의 주요부의 동작을 설명하기 위한 타이밍도이다,
도 6는 패턴발생을 위한 프로그램의 일례를 도시한 도면이다,
도 7은 도 6에 도시한 프로그램을 실행한 경우의 시퀀스 제어명령과 패턴, 서브패턴과의 관계를 설명하기 위한 도면이다,
도 8은 본 발명에 의한 고속패턴발생기의 제2의 실시예에 사용되는 시퀀스 제어부의 일구체예를 도시하는 블럭도이다,
도 9는 도 8에 도시한 시퀀스 제어부의 동작을 설명하기 위한 도면이다,
도 10은 도 8에 도시한 어드레스변환부의 일구체예를 도시하는 블럭도이다,
도 11은 본 발명에 의한 고속패턴발생기에 사용되는 다중화회로의 일구체예를 도시하는 회로접속도이다,
도 12는 본 발명에 의한 고속패턴발생기에 사용되는 시퀀스 제어부의 일구체예를 설명하기 위한 블럭도이다,
도 13은 도 12에 도시한 고속패턴발생기에 사용되는 인스트럭션 메모리의 어드레스공간의 구성을 설명하기 위한 도면이다,
도 14는 도 12에 도시한 고속패턴발생기의 어드레스변환동작을 설명하기 위한 도면이다,
도 15는 본 발명에 의한 고속패턴 발생기의 제3의 실시예를 설명하기 위한 블럭도 이다,
도 16는 도 15에 도시한 고속패턴발생기에 사용되는 시퀀스 제어부의 구성을설명하기 위한 블럭도이다,
도 17는 도 16에 도시한 시퀀스 제어부를 동작시키는 프로그램의 일례를 설명하기 위한 도면이다,
도 18은 도 17에 도시한 프로그램을 실행한 경우에 발생하는 패턴발생명령과, 이 패턴발생명령으로 발생하는 패턴의 관계를 설명하기 위한 도면이다,
도 19은 도 15에 도시한 고속패턴발생기의 동작을 설명하기 위한 파형도이다,
도 20는 도 15에 도시한 고속패턴발생기에 사용되는 메인패턴발생부와 서브패턴발생부의 일구체예를 설명하기 위한 블럭도이다,
도 21는 도 15에 도시한 고속패턴발생기에 사용되는 다중화회로의 일구체예를 설명하기 위한 블럭도이다,
도 22는 도 21에 도시한 다중화회로의 동작을 설명하기 위한 파형도이다.
(발명의 개시)
본 발명의 제1의 목적은, 고속동작가능인 소자를 사용하지 않고 종래보다 수배 빠른 고속패턴을 발생할 수 있는 고속패턴발생기를 제공하는 것이다.
본 발명의 제2의 목적은, 고속화하기 위한 특별한 프로그래밍 기술을 필요로 하지 않고, 고속패턴을 발생시키기 위한 프로그램을 용이하게 작성할 수 있는 고속패턴발생기를 제공하는 것이다.
본 발명의 제1의 양태에 의하면 패턴발생순서에 따라서 배열된 패턴발생명령열을 다상의 서브패턴발생명령열로 변환하여, 이 서브패턴발생명령열에 의해 다상의 서브패턴신호를 생성시키고 이 다상의 서브패턴신호를 시분할다중화함에 의해 다중화수배로 고속화된 시험패턴신호를 발생시킬 수 있는 고속패턴발생방법이 제공된다.
본 발명의 제2의 양태에 의하면 상기 제1의 양태에 의한 고속패턴발생방법을 실현하는 고속패턴발생기가 제공된다.
여기서, 특히 상기 제1의 양태에 의한 고속패턴발생방법을 실현하는 경우에는 인스트럭션 메모리의 동일 어드레스에 내용이 다른 서브패턴발생명령을 기입하여야 하는 불편함이 발생한다. 본 발명의 제2의 양태에 의한 고속패턴발생기는 후술하는 것처럼 이 불편함을 해소하고, 상기 제1의 양태에 의한 고속패턴발생방법을 실현하는 것이다.
본 발명의 제3의 양태에 의하면 인스트럭션 메모리로부터 메인패턴에 이어지는 복수의 패턴을 규정하는 인수부(引數付) 패턴발생명령을 출력시키고 이 패턴발생명령에 따라서 메인패턴발생부로부터 메인패턴을 발생시키고 이 메인패턴발생부로부터 발생된 메인패턴을 복수의 서브패턴발생부에 부여하고, 이들 복수의 서브패턴발생부에 있어서, 공급된 메인패턴을 상기 인수에 따라서 변화시키고 또한 메인패턴을 지연시켜 메인패턴에 이어지는 복수의 서브패턴을 메인패턴과 동일위상으로 발생시키고 상기 메인패턴과 복수의 서브패턴을 다중화회로로 시분할다중화하여 취출함으로써 소정의 패턴발생순서에 따라서 변화하는 고속패턴을 발생시킬 수 있는 고속패턴발생방법이 제공된다.
본 발명의 제4의 양태에 의하면 시퀀스 제어명령과, 패턴발생명령을 격납하는 인스트럭션 메모리를 가지고 있고 이 인스트럭션 메모리로부터 판독되는 패턴발생명령에 따라서 피시험장치에 부여하는 시험패턴신호를 생성하는 패턴발생기에 있어서, 상기 인스트럭션 메모리의 패턴발생명령기억영역으로부터 메인패턴발생명령과, 이 메인패턴발생명령에 변화를 부여하고 메인패턴에 이어서 소정의 순서로 발생되어야하는 서브패턴을 규정하기 위한 인수(파라미터)를 발생시키고 상기 메인패턴발생명령을 메인패턴발생부에 부여하고 이 메인패턴발생부로부터 메인패턴을 발생시키고, 이 메인패턴으로부터 복수의 서브패턴발생부에 있어서, 메인패턴에 이어지는 순서를 가지는 복수의 서브패턴을 발생시키고, 이들 메인패턴신호와 서브패턴신호를 시분할다중화함에 의해 고속패턴신호를 발생할 수 있도록 구성한 고속패턴발생기가 제공된다.
이 제4의 양태의 고속패턴발생기에 의하면 시퀀스 제어부로부터 다중화회로 메인패턴신호와 서브패턴신호를 입력하기까지의 사이의 회로는 종래와 동등한 속도로 동작하는 회로로 구성할 수 있다. 또한 이들 회로를 종래와 동등한 속도로 동작시키었다고해도 다중화회로로 시분할다중화함에 의해 패턴발생속도를 다중화수배의 속도로 고속화할 수 있다. 따라서 본 발명에 의하면 염가에 고속패턴발생기를 제공할 수 있는 실익을 얻을 수 있다.
또한, 이 제4의 양태의 고속패턴발생기의 구성에 의하면 메인패턴발생명령에 인수를 붙여 서브패턴을 발생시키는 구성으로 하였기 때문에 프로그램작성자는 메인패턴만을 규정하여 프로그램을 작성하면 되고, 따라서 패턴발생을 위한 프로그램을 용이하게 작성할 수 있다.
(발명을 실시하기 위한 최선의 형태)
우선, 도 3를 참조하여 본 발명에 의한 고속패턴발생방법의 제1의 실시예에 대하여 미리 설명한다.
본 발명으로서는 인스트럭션 메모리(113)에 복수의 서브패턴발생명령기억영역(113B1∼113B4)을 설치한다. 이 예에서는 4개의 서브패턴발생명령기억영역(113B1∼113B4)을 설치하고, 4상(phase)의 서브패턴발생명령을 발생시키도록 구성한 경우를 도시한다. 또, 서브패턴발생명령기억영역(113B1∼113B4)의 상수(相數)는 4에 한정되는 것이 아니고 2이상이면 좋다. 인스트럭션 메모리(113)에는 이 서브패턴발생명령기억영역(113B1∼113B4) 외에 앞에서도 설명한 바와 같이 시퀀스 제어명령기억영역(113A)이 설정되고 이 시퀀스 제어명령기억영역(113A)에 기억된 시퀀스 제어명령이 판독되는 것에따라 인스트럭션 메모리의 다음에 억세스된 어드레스가 결정되고 시퀀스 제어명령에 의해서 패턴발생명령의 판독순서가 제어되는 것은 종래의 기술과 동일하다.
서브패턴발생명령기억영역(113B1∼113B4)에 기억된 서브패턴발생명령은 이 시험장치를 관리하는 상위의 컴퓨터로부터 전송되어 인스트럭션 메모리(113)에 기입한다. 결국, 상위의 컴퓨터에서는 이용자가 의도한 패턴발생순서에 따라서 작성한 패턴 프로그램을 다상화하기 위한 번역 프로그램에 의해서 다상화하고, 그 다상화한 서브패턴발생명령을 시험장치의 인스트럭션 메모리(113)에 전송하고 격납한다.
다음에, 도 4를 참조하여 패턴발생명령과 서브패턴발생명령의 관계를 설명한다. 도 4에 있어서, 10은 이용자가 발생시키고자 하는 패턴을 패턴발생명령으로 1스텝씩 나열한 경우의 예를 표시한다. 이 예에서는, 스텝 1로 X 어드레스패턴을 0에 초기화하는 패턴발생명령 X<0 를 실행하고, 다음 스텝 2로 X 어드레스패턴을 +1하는 패턴발생명령 X<X+1를 실행하고, 이어서 스텝3∼스텝12까지는 모두 <X+1을 실행하는 패턴발생명령으로 하며, 스텝13∼스텝16까지가 X 패턴 어드레스를 순차 -1 하는 패턴발생명령 X<X-1를 실행하고, 스텝17∼스텝24의 사이에서는 다시 X 어드레스패턴을 +1하는 X<X+1를 실행하고, 스텝25∼28으로 X<X-1를 실행하도록 패턴발생명령을 작성한 경우를 도시한다. 11은 이 패턴발생명령(10)을 실행한 경우에 발생하는 X 어드레스패턴의 값(X 어드레스 레지스터의 값)을 도시한다. 이 X 어드레스패턴(11)에 도시한 바와 같이, 스텝1에서 X 어드레스패턴은 X=0이 발생하고, 스텝2∼스텝12까지의 사이에서 X 어드레스패턴은 +1씩 순차증가하며, 스텝12에서 X=11에 도달한 후, 스텝13∼스텝16까지의 사이로 -1씩 감소하여, 스텝16으로 X=7까지 감소하고, 스텝24에서 X=15에 증가하여, 스텝 28에서 X=11로 감소한 상태를 보이고 있다. 도시한 X 어드레스패턴이 각 스텝 1∼28의 순서로 피시험 IC에 부여된다.
이 X 어드레스패턴외에 실제로는 Y 어드레스패턴, Z 어드레스패턴등이 존재하지만, 여기서는 X 어드레스패턴에 관해서만 설명하기로 한다.
도 4에 나타난 12A, 12B, 12C, 12D 는 서브패턴발생명령을 도시한다. 서브패턴발생명령(12A∼12D)로의 변환방법은, 패턴발생명령(10)을 패턴발생순차로 1스텝씩 각 상에 할당함과 동시에 그 할당된 패턴발생명령으로부터 다상화하는 상의 수에 대응하는 스텝수만 거슬러 올라가서 패턴발생명령을 합성(레지스터를 변수라고 간주하고 대수연산을 한다)하여 서브패턴으로 변환한다.
결국, 서브패턴발생명령(12A)을 서브패턴발생명령기억영역(113B1)에 기억하는 것으로 하고, 12B를 서브패턴발생명령기억영역(113B2)에 기억하고, 12C를 서브패턴발생명령기억영역(113B3)에 기억하고, 12D를 서브패턴발생명령기억영역(113B4)에 기억하는 것으로 하고, 다중화회로(130)에서는 서브패턴 발생명령기억영역(113B1, 113B2, 113B3, 113B4)의 순서로 다중화하는 것으로 하면, 스텝1의 패턴발생명령 X<0를 서브패턴발생명령(12A)에 할당한다. 스텝1의 앞에는 패턴발생명령이 존재하지 않으니까 합성한 서브패턴발생명령(12A)은 X<0가 된다.
스텝2의 패턴발생명령 X<X+1를 서브패턴발생명령12B에 할당한다. 이 경우, 스텝2의 앞에 패턴발생명령 X<0가 존재하기 때문에 X<0와 X<X+1를 합성하여 X<1를 서브패턴발생명령으로 한다.
스텝3의 패턴발생명령 X<X+1를 서브패턴발생명령12C에 할당한다. 스텝3의 앞에는 패턴발생명령이 스텝1의 X<0와, 스텝2의 X<X+1가 존재하기때문에 이들과, 스텝3의 X<X+1를 합성하여, X<2를 서브패턴발생명령으로 한다.
스텝4의 패턴발생명령 X<X+1를 서브패턴발생명령12D에 할당한다. 이 스텝4의 앞에는 패턴발생명령이 스텝1의 X<0와, 스텝2의 X<X+1와, 스텝3의 X<X+1의 세가지가 존재하기 때문에 이것들과 스텝4의 X<X+1로 서브패턴발생명령기억영역의 수와 같은 4개의 패턴발생명령을 합성하여, X<3를 서브패턴발생명령으로 한다.
또, 각 서브패턴발생명령의 아래쪽에 괄호를 붙여 가리키는 (X=0),(X=1), (X=2), (X=3)는 각 서브패턴발생명령(12A∼12D)을 각 서브패턴발생부(120A∼120D)에 부여하고 X 어드레스패턴을 발생시킨 결과를 도시한다. 이 X 어드레스패턴은 도 4에 도시한 패턴발생명령(10)을 실행하여 얻게 되는 X 어드레스패턴(11)과 일치하게 된다.
스텝5에서는 패턴발생명령 X<X+1를 서브패턴발생명령(12A)에 할당한다. 이 패턴발생명령 X<X+1에 덧붙여 3 스텝앞까지의 패턴발생명령 X<X+1을 합성한 X<X+4를 스텝5에 있어서의 서브패턴발생명령(12A)으로 한다.
이하 동일하게 하여 스텝12까지는 4개의 스텝분의 패턴발생명령 X<X+1을 가한 것으로 되니까 서브패턴발생명령은 모두 X<X+4로 된다. 스텝13으로서는 패턴발생명령이 X<X-1에 변화하고 있으며, 서브패턴발생명령12A는 X<X+2가 된다. 스텝 14에서는 서브패턴발생명령12B는 X<X+0, 스텝 15에서는 서브패턴발생명령12C은 X<X-2, 스텝16으로서는 서브패턴발생명령12D는 X<X-4로 된다. 스텝17으로부터 스텝20까지는 다시 X<X+1를 4스텝분씩 합성하기 때문에 각 서브패턴발생명령(12A∼12D)은 X<X-2, X<X-0, X<X+2, X<X+4로 된다.
스텝 21∼24로서는 패턴발생명령이 X<X+1의 상태가 이어지므로 서브패턴발생명령(12A∼12D)은 순차로 X<X+4, X<X+4, X<X+4, X<X+4로 된다. 스텝 25∼28로서는 패턴발생명령이 X<X-1에 변화하기 때문에 각 서브패턴발생명령(12A∼12D)은 X<X+2, X<X+0, X<X-2, X<X-4로 변화한다.
서브패턴발생명령기억영역(113B1∼113B4)에 기억된 각 서브패턴발생명령(12A∼12D)를 각 1스텝씩 판독하여 각 서브패턴발생부(120A, 120B, 120C, 120D)에 입력함에 의해 각 서브패턴발생부(120A∼120D)에서 각 서브패턴발생명령을 실행한 X 어드레스패턴을 발생시킬 수 있다.
도 5에 각 서브패턴발생명령기억영역(113B1∼113B4)으로부터 판독되는 서브패턴발생명령과, 그 서브패턴발생명령에 의해서 서브패턴발생부(120A∼120D)에서 발생하는 X 어드레스패턴의 관계를 도시한다. 클록 CP1의 주기 t-1로 각 서브패턴발생명령기억영역(113B1∼113B4)으로부터 서브패턴발생명령 X<0, X<1, X<2, X<3가 판독되어, 이들 서브패턴발생명령 X<0∼X<3가 서브패턴발생부(120A∼120D)에 부여됨에 의해 X 어드레스패턴 X=0, X=1, X=2, X=3이 생성된다. 이 X 어드레스패턴 X=0, X=1, X=2, X=3이 다중화회로(130)에 부여되고, 클록 CP2로 X 어드레스패턴을 X=0, X=1, X=2, X=3의 순서로 시분할다중화함에 의해 도 5d에 나타난 다중화수배된 주파수의 고속패턴신호(HIP)를 얻을 수 있다.
클록 CP1의 주기 t에서는 각 서브패턴발생명령기억영역(113B1∼113B4)으로부터 판독되는 서브패턴발생명령은 모두 X<X+4이다. 이 서브패턴발생명령 X<X+4를 각 서브패턴발생부(120A∼120D)에서 실행하면, 전의 주기 t-1에서 X=0, X=1, X=2, X=3가 대입되어 있으므로 X<X+4를 실행하면, X 어드레스패턴은 X=4, X=5, X=6, X=7로 된다.
이상의 설명으로부터 명백하듯이, 본 발명에 의한 고속패턴발생방법에 의하면 인스트럭션 메모리(113)에 다중화수에 대응한 상수의 서브패턴명령기억영역(113B1∼113B4)을 설치하고, 이 복수의 서브패턴발생명령기억영역(113B1∼113B4)으로부터 서브패턴발생명령(12A∼12D)를 판독하여 서브패턴발생부(120A∼120D)에 부여함으로써 다상의 서브패턴을 발생시키고 이 다상의 서브패턴을 소정의 순서에 따라서 다중화회로(130)로 다중화함에 의해 원래의 피시험 IC에 부여해야 되는 순서에 배열된 고속패턴신호(HIP)를 얻을 수 있다.
따라서, 다중화회로(130)까지의 구성은 종래의 패턴발생기와 동등의 속도로 동작하는 회로에 의해서 구성하였다고해도, 다중화회로(130)로부터 출력되는 고속패턴신호(HIP)는 다중화수배의 속도의 고속패턴신호를 얻을 수 있다. 결국, 상기 한 실시예처럼 다중화수를 N=4로 한 경우에는 4배속의 고속패턴신호를 얻을 수 있고, 인스트럭션 메모리(113)로부터 판독되는 서브패턴발생명령의 판독속도를 100MHz 로 한 경우에는 400MHz의 고속패턴신호를 할수 있다.
그런데, 상술한 서브패턴발생명령을 인스트럭션 메모리(113)에 기입할 때 이하에 설명하는 것 같은 불편함이 생긴다. 결국, 인스트럭션 메모리(113)에는 상기 설명한 바와 같이 서브패턴발생명령기억영역(113B1∼113B4) 외에도 시퀀스 제어명령기억영역(113A)이 존재한다. 이 시퀀스 제어명령기억영역(113A)에는 다음에 이 인스트럭션 메모리(113)를 억세스해야 할 어드레스를 결정하는 시퀀스 제어명령이 기입되어 있고 이 시퀀스 제어명령이 판독되고 다음에 억세스하는 어드레스가 결정된다.
도 6는 시퀀스 제어명령 및 시험패턴발생을 행하기 위한 간단한 패턴 프로그램예를 표시한다. START #0는, 프로그램 카운터(112)(도 2참조)를 #0에 초기화하는 명령이다. PC=#0, PC=#1,···은 프로그램 카운터(112)의 값, 즉 인스트럭션 메모리(113)의 어드레스를 표시하고, 그 오른쪽에 표시된 시퀀스 제어명령이 그 어드레스에 격납되는 것을 나타낸다. 인스트럭션 메모리(113)의 시퀀스 제어명령기억영역(113A)(도 1)의 어드레스 #0 에는 NOP 명령이 기입해 있다. NOP 명령은「프로그램 카운터의 값을 +1하여 다음 행의 명령을 실행하여」라는 명령이다.
따라서, 다음 사이클에서는 프로그램 카운터(112)는 PC=#1을 출력하여, 인스트럭션 메모리(113)의 시퀀스 제어명령기억영역(113A)의 어드레스 #1에 기입되어 있는 LB1:LOOP1 LB1을 실행한다. LB1는 라벨명, LOOP1명령은 명령에 이어서 기술된 라벨로 지정되는 행과의 사이를 지정된 회수만큼 반복실행하는 명령이다. LB1:LOOP1 LB1의 경우, 이 행을 지정회수반복실행한다. 지정회수는 도면에 도시한 초기치 격납 레지스터(115)에 격납되어 있고, 이 초기치 격납 레지스터(115)에 격납되어 있는 수만큼 루프를 실행하면 루프카운터(114)가 그 상태를 검지하여, 프로그램 카운터(112)로부터 출력할 수 있는 어드레스값을 +1 하는 동작을 한다.
초기치 격납 레지스터(115)에 예컨대「2」가 격납되어 있는 것으로 하면, LOOP 1명령을 2회 실행한 후, 프로그램 카운터(112)는 출력하는 어드레스를 +1하여, 다음 행으로 이행한다. 다음 행으로서는 인스트럭션 메모리(113)는 어드레스 #2에 기입되어 있는 LOOP2 LB1 를 실행한다. 이 명령은 LOOP2 를 1회 실행하고, 그 후 라벨 LB1로 표시되는 행으로 되돌아가는 것을 명령하고 있다. 실제상은 LB1:LOOP 1, LB1을 예컨대 수100회 실행하고, 그 후 LOOP2를 1회 실행하는 것이 반복된다.
한편, 도 6a에 나타난 시험패턴발생명령기억영역(113B)에는 패턴발생명령이 기입된다. 시퀀스 제어명령의 실행으로 의해서 결정되는 인스트럭션 메모리(113)의 어드레스 #0,#1,#2···부터 판독되는 패턴발생명령에 의해서 시험패턴을 발생시킨다. 여기서, 어드레스 #0로부터 판독되는 패턴발생명령을 A, 어드레스 #l 으로부터 판독되는 패턴발생명령을 B, 어드레스 #2 로부터 판독되는 패턴발생명령을 C 로 한 경우에 있어서, 시퀀스 제어명령 LOOP 1을 2회 실행하고, LOOP 2를 1회 실행하고, 다시 라벨 LB1에 되돌아가는 동작을 실행하였다고 하면, 각 사이클과 프로그램 카운터(112)가 출력하는 어드레스값(PC값)과 시퀀스 제어명령 및 패턴A∼C의 관계는 도 7에 도시한 바와같이 된다.
패턴 A,B, C, ···가 서로 관련하지 않은 독립한 패턴이라면, 패턴A를 패턴발생명령기억영역(113B)의 어드레스 #0에, 패턴B를 어드레스 #1에, 패턴 C를 어드레스 #2에 기입하기 좋다.
그렇지만, 서브패턴발생명령(12A∼12D)은 도 4에서 설명한 바와같이, 다상화를 위한 처리를 실행하기 위해서, 같은 루프명령으로 판독되는 서브패턴발생명령이더라도, 그 전의 사이클의 패턴에 따라서 다른 서브패턴발생명령을 발생시키지 않으면 안된다. 그 모양을 도 7의 서브패턴란에 도시한다. 사이클1에서는 과거에 이력이 없으므로 서브패턴발생명령A를 어드레스 #0 에 기입할 수 있다. 사이클2에서는 사이클1의 패턴A 와 이 행에 기술되어 있는 패턴 B 로 결정되는 서브패턴A∼B를 어드레스 #1에 기입한다. 이하 동일하게 사이클3의 서브패턴은 B∼B, 사이클4에서는 B∼C, 사이클5 에서는 C∼B, 사이클 6 에서는 B∼B, 사이클 7에서는 B∼C로 된다.
여기에서 명백하듯이 사이클2와 3 및 5과 6에서 발생하는 서브패턴A∼B, B∼B 및 C∼B는 동일한 어드레스 #1에 기입해야한다.
이러한 현상은 도 6b에 도시한 바와 같이 다중화된 루프명령 LOOP2∼LOOP5···로부터 공통의 라벨 LB1로 되돌아가는 동작을 행하게 하는 경우에 다수 발생한다.
또, 도 7에 설명한 서브패턴의 이력표시 A∼B, B∼B, B∼C, ···를 도 4에 맞추면 스텝5∼8에서 발생하는 서브패턴A∼B와, 스텝9∼12에서 발생하는 B∼B는 모두 X<X+4 으로 되어 있기 때문에 동일한 패턴발생명령으로 보이지만, 현실에서는 예컨대 초기설정 X<0을 이용자가 스텝1∼4의 어디에 기술하더라도 정상동작이 행해질수 있도록 구성해야만 하기 때문에 예컨대 스텝2에 X<0로 기술되면 스텝5의 서브패턴발생명령은 X<3로 된다. 따라서, 서브패턴의 이력에 따라 A∼B와 B∼B는 별도의 서브패턴발생명령으로서 취급할 필요가 있다.
이상으로부터 다상화를 위한 처리를 실행한 서브패턴을 인스트럭션 메모리에 기입하는 경우에, 동일 어드레스에 다른 내용의 서브패턴발생명령(이하 이것을 이종패턴발생명령으로 칭하도록 한다)을 기입해야 한다는 것이 이해될수 있다.
본 발명에 의한 고속패턴발생기의 제1의 실시예는 이 불편함을 해결하기 위해서, 어드레스변환부를 설치하고 이종패턴발생명령을 각 다른 어드레스에 격납하여 정상으로 동작하는 고속패턴발생기를 제안하는 것이다.
도 8에 어드레스변환부를 가지는 고속패턴발생기용의 시퀀스 제어부(110)의일구체예를 도시한다. 도 2와 대응하는 부분에는 동일부호를 붙여 표시한다. 도 8에 도시된 시퀀스 제어부(110)의 특징으로 하는 구성은 인스트럭션 메모리(113)를 제1 인스트럭션 메모리(113-1)와 제2 인스트럭션 메모리(113-2)로 분리하고, 제1 인스트럭션 메모리(113-1)에 부여하는 어드레스를 어드레스변환부(140)로 어드레스변환하고, 이 어드레스변환한 어드레스신호를 제2 인스트럭션 메모리(113-2)에 공급하는 구성으로 한 점이다.
제1 인스트럭션 메모리(113-1)에는 도 3에 도시한 시퀀스 제어명령기억영역(113A)이 준비되고, 이 시퀀스 제어명령기억영역(113A)이 프로그램 카운터(112)로부터 출력할 수 있는 어드레스신호 ADR (#0,#1,#2,···)에 의해서 억세스된다.
제2 인스트럭션 메모리(113-2)에는 서브패턴발생명령기억영역(113B1, 113B2, 113B3, 113B4)이 설정된다. 제2 인스트럭션 메모리(113-2)의 어드레스용량을 제1 인스트럭션 메모리(113-1)의 어드레스영역보다 크게, 예컨대 약 2배의 어드레스영역으로 선정한다. 제2 인스트럭션 메모리(113-2)의 어드레스영역을 제1 인스트럭션 메모리(113-1)의 2배로 하여 그 어드레스영역의 전반부에 종래와 같이 프로그램 카운터(112)로부터 출력되는 어드레스 #0,#1,#2,#3,···로 지정되는 어드레스영역을 확보할 수 있다. 이것과 동시에 어드레스 #0,#1,#2,#3,···에 기입할수 없는 이종패턴발생명령은 제2 인스트럭션 메모리(113-2)의 후반의 어드레스영역에 기입하면 된다.
도 10에 어드레스변환부(140)의 구체적인 구성을 나타냈다. 어드레스변환부(140)는 프로그램 카운터(112)가 출력하는 어드레스신호를 1사이클지연시키는 어드레스지연수단(142)과, 이 어드레스지연수단(142)으로 1사이클지연한 어드레스신호와, 지연하지않은 어드레스신호를 선택하여 취출하는 선택수단(143)과, 이 선택수단(143)이 1사이클지연한 어드레스신호를 선택한 때에 프로그램 카운터(112)가 출력하는 어드레스신호에 소정치를 가산하는 가산수단(144)에 의해서 구성할 수 있다. 또, 도 10에 있어서, 141,145 는 리타이밍용의 플립플롭을 도시한다.
선택수단(143)의 제어단자 S에는 제어논리회로(150)로부터 제어신호가 부여되고 지연수단(142)으로 지연한 어드레스신호와, 지연하지 않은 어드레스신호중 어느 한편을 선택한다. 제어논리회로(150)가 출력하는 제어신호는 프로그램 카운터콘트롤러(111)와, 제1 인스트럭션 메모리(113-1)로부터 판독되는 시퀀스 제어명령을 격납하고 프로그램 카운터(112)가 출력하는 어드레스값이 1증가하는 값에 변화한 경우는「0」논리를 출력하여, 프로그램 카운터(112)가 출력하는 어드레스값이 1증가하는 이외의 경우에는「1」논리를 출력한다. 제어로직회로(150)가「0」논리를 출력한 상태에서, 선택수단(143)은 입력단자 A를 선택하여, 프로그램 카운터(112)가 출력하는 어드레스신호를 그대로 선택하여 출력한다. 제어논리회로(150)가「1」논리를 출력한 경우는 선택수단(143)은 입력단자 B를 선택하여, 지연수단(142)으로 1사이클지연한 어드레스신호를 선택하여, 가산수단(144)에 출력한다. 가산수단(144)으로서는 선택수단(143)으로 선택한 어드레스신호의 상위비트에 제어논리회로(150)가 출력하는 제어신호의 1비트를 가하는 것으로써, 프로그램 카운터(112)로부터 출력되는 어드레스신호에 소정치를 가하는 것이 된다. 결국, 프로그램 카운터(112)가 출력하는 어드레스신호의 상위비트에 1비트를 가함으로써, 어드레스영역은 배의 어드레스영역이 된다. 따라서, 배로 확장된 어드레스영역에 프로그램 카운터(112)가 출력하는 어드레스영역에 기입할수 없는 서브패턴발생명령(이종패턴발생명령)을 기입하는 것이 가능하게 된다. 가산수단(144)으로 가하는 값으로서 도 9에 나타난 예에서는 프로그램 카운터(112)가 10비트이기 때문에 #400이다.
도 9에 도 6a의 프로그램예에 있어 LOOP 1명령으로 4회, LOOP2명령으로 2회 반복동작이 행하여진 경우의 어드레스변환수단(140)에 의한 어드레스변환의 동작을나타낸다. 프로그램 카운터(112)의 출력 어드레스(PC)값이 1증가한 경우는 제2 인스트럭션 메모리(113-2) 어드레스 IM2A는 어드레스변환되지 않고 PC=IM2A 가(로)된다. PC값이 1증가하는 이외의 경우는 PC값의 1사이클늦은 값에 十#400의 값이 가산되는 어드레스변환처리가 실행된다. 따라서, 서브패턴이 변화해 가는 과정에서 과도적으로 발생하는 이종패턴발생명령을 빠짐없이 제2 인스트럭션 메모리(113-2)에 격납할수 있다.
여기서, 특히 프로그램 카운터(112)가 출력하는 어드레스값이 1증가하는 이외의 경우에 선택수단(143)은 1사이클 지연한 어드레스신호를 선택하는 구성으로 하였기 때문에 예컨대 도 6b에 도시한 패턴발생 프로그램처럼, 많은 루프명령으로부터 라벨 LB1로 지정되는 LOOP 1에 되돌아가는 경우라도, 앞의 사이클에 실행한 루프명령이 기술되어 있던 어드레스에 소정치 #400를 더하여 어드레스변환하기 때문에 어떤 루프명령으로부터 LOOP1에 되돌아가는 경우에도, 어드레스가 중복하는 상태가 발생하지 않는다.
도 11에 다중화회로(130)의 일구체예를 도시한다. 입력단자(A, B, C, D)에 도 3에 도시한 서브패턴발생기(120)의 각 서브패턴발생부(120A, 120B, 120C, 120D)가 발생하는 서브패턴 X=0, X=1, X=2, X=3 (도 5참조)를 공급한다. 입력단자 A, B, C, D에는 각 플립플롭(F1, F2, F3, F4)이 접속된다. 각 플립플롭(F1∼F4)의 클록입력단자(CK)에는 도 5에 도시한 클록 CP1가 부여되고, 이 클록 CP1의 주기에서 플립플롭(F1∼F4)의 각각에 서브패턴 X=0, X=1, X=2, X=3을 취입한다. 플립플롭(F1∼F4)의 출력은 멀티플렉서(MUX)의 각 입력단자(T0∼T3)에 접속한다. 멀티플렉서(MUX)의 제어입력단자(S)에는 카운터(CTR)로부터 클록 CP2(도 3참조)의 계수출력을 부여하고, 클록 CP2의 주기에 동기하여 4입력단자(T0∼T3)를 순차변환, 출력단자(Q)에서 서브패턴 X=0, X=1, X=2, X=3을 도 5d에 도시한 바와 같이 순차출력하고, 고속패턴신호(HIP)를 출력한다. 클록 CP1의 다음 사이클에서는 플립플롭(F1∼F4)에 서브패턴 X=4, X=5, X=6, X=7가 입력되고, 이것이 다중화되어 출력단자(Q)에 고속패턴신호(HIP)로서 출력할 수 있다. 이하 이것이 반복되고 소망의 순서로 변화하는 고속패턴신호를 발생시킬 수 있다.
도 12는 본 발명에 의한 고속패턴발생기의 제2의 실시예를 도시한다. 이 실시예에서는 10비트의 어드레스를 가지는 제1 인스트럭션 메모리(113-1)와 제2 인스트럭션 메모리(113-2)를 동일 어드레스용량의 메모리에 의해서 구성하고, 이종패턴발생명령이 발생하는 시퀀스에서는, 그 시퀀스 제어명령이 기술되어 있는 어드레스를 제2 인스트럭션 메모리(113-2)의 최종 어드레스측으로부터 순차로 -1씩 변화하는 어드레스로 변환하도록 구성한 경우를 나타낸다.
이 실시예에서는 제1 인스트럭션 메모리(113-1)에 어드레스변환 테이블영역(113-1A)을 설치하고, 이 영역에 어드레스변환 테이블 데이타를 기입한다. 어드레스변환 테이블 데이타는 서브패턴이 변화해 가는 과정에서 과도적으로 발생하는 이종패턴발생명령을 격납하여 두기 위한 어드레스값의 것으로 LOOP 루프 명령등의 프로그램카운터를 1증가시키는 이외의 동작을 행하는 시퀀스명령이 패턴 프로그램에 기술되어 있는 경우, 그 출현순으로 제2 인스트럭션 메모리(113-2)의 최종 어드레스 #3FF로부터 순차로 -1된 값 #3FF, #3FE, #3FD, #3FC, ···가 번역 프로그램에 의해 할당된다.
도 13에 제1 인스트럭션 메모리(113-1)와 제2 인스트럭션 메모리(113-2)의 어드레스의 나누어넣는 상황을 도시한다. 제1 인스트럭션 메모리(113-1)의 선두 어드레스 #0 측에는 시퀀스 제어명령 SA, SB, SC, SD가 시퀀스 제어명령에 의해서 지정된 어드레스 #0 로부터 순차로 시퀀스 제어명령이 기입된다. 루프 명령등의 프로그램 카운터를 1증가시키는 이외의 동작을 행하는 시퀀스 제어명령 SA, SB, SC, SD도 구별없이 기입한다. 이것과 동일한 제2 인스트럭션 메모리(113-2)의 어드레스에 서브패턴발생명령이 기입한다. 또한 루프 명령등의 프로그램 카운터를 1증가시키는 이외의 동작을 행하는 시퀀스 제어명령 SA, SB, SC, SD에 대응하는 이종패턴발생명령을 제2 인스트럭션 메모리(113-2)의 최종 어드레스, 이 예에서는 #3FF에서 #3FE, #3FD, #3FC, ···의 순서로 기입한다.
어드레스변환 테이블영역(113-1A)으로부터 출력되는 변환 어드레스신호와 프로그램 카운터(112)로부터 출력되는 어드레스신호는 선택수단(143)으로 어느 한편을 선택하여 제2 인스트럭션 메모리(113-2)에 부여한다. 어드레스변환 테이블영역(113-1A)으로부터 출력되는 변환 어드레스신호는 어드레스지연수단(142)으로 1사이클지연시키고 선택수단(143)에 입력한다. 선택수단(143)은 도 10에서 설명한 것과 같은 제어논리회로(150)의 제어신호에 의해서 교체(스위칭)제어된다.
도 14에 도 6a의 프로그램예에 있어 LOOP1 명령으로 4회, LOOP2명령으로 2회 반복동작이 행하여진 경우의 어드레스변환한 결과를 도시한다. 이 경우도 사이클(7)에 도시한 바와 같이, 프로그램 카운터가 1증가하는 이외의 변화를 한 경우에 앞의 사이클의 어드레스 #2를 어드레스변환한 #3FE가 어드레스지연수단(142)에 의해서 지연되어 제2 인스트럭션 메모리에 부여되고, 그 이후는 사이클(7)에서 시퀀스 제어명령을 판독한 #1를 어드레스변환한 #3FF가 제2 인스트럭션 메모리에 부여된다. 따라서, 이 동작에 의해서 도 6b에 도시한 바와 같이 많은 루프로부터 동일한 루프로 되돌아가는 경우도 중복하는 어드레스가 발생하지 않는다.
도 14에 나타난 구성에 의해서도 도 10로 설명한 실시예와 같이, 이종패턴발생명령도 제2 인스트럭션 메모리(113-2)에 격납하고 판독될 수 있다.
다음에, 도 15를 참조하여 본발명에 의한 고속패턴발생방법의 제2의 실시예와 본발명에 의한 고속패턴발생기의 제3의 실시예에 대하여 설명한다. 도 15에 도시한 바와 같이, 이 제3의 실시예의 고속패턴발생기(130)는, 시퀀스 제어부(110)와, 패턴발생부(120)와, 이 패턴발생부(120)에서 발생된 시험패턴을 시분할다중화하는 다중화회로(500)에 의해 구성되어 있다. 결국, 이 실시예에서는 다중화하여 고속패턴신호를 얻는 구성을 채용하는 것이므로 패턴신호를 다중화의 수에 대응한 수에 분산하여 발생시키지 않으면 안된다. 이 때문에 이 실시예에서는 시퀀스 제어부(110)로부터 1시퀀스 제어될때에 메인패턴발생명령 MAlN과, 메인패턴에 이어져서 소정의 패턴을 규정하기 위한 인수(파라미터) (P1, P2, P3)를 발생시킨다.
메인패턴발생명령 MAlN은 메인패턴발생부(121)에 입력되고, 메인패턴을 발생시킨다. 한편, 인수(P1, P2, P3)는 대응하는 서브패턴발생부(122,123,124)에 부여되고, 이들 서브패턴발생부(122,123,124)에는 메인패턴발생부(121)로부터 발생된 메인패턴도 공급되어 있고, 이들 서브패턴발생부(122,123,124)는 이 메인패턴으로부터 인수(P1, P2, P3)를 사용하여 메인패턴에 이어지는 순서로 피시험 IC(300)에 부여해야되는 패턴을 발생한다.
이하에 각 부의 구성 및 동작을 상세히 설명한다.
시퀀스 제어부(110)는 도 2에 나타낸 종래의 예와 같이, 프로그램 카운터·콘트롤러(111), 프로그램 카운터(112), 인스트럭션 메모리(113), 루프카운터(114)및 초기치 격납 레지스터(115)에 의해서 구성되어 있지만, 도 16에 도시한 바와 같이, 인스트럭션 메모리(113)의 패턴발생명령기억영역(113B)으로부터 1시퀀스 제어명령될때마다 메인패턴발생명령 MAlN과, 복수의 인수(P1, P2, P3)를 발생하도록 구성되어 있는 점에서 상이한다.
도 17에 이 패턴발생명령을 발생시키기 위한 패턴 프로그램의 일례를 도시한다. START#0는 프로그램 카운터(113)가 출력하는 선두 어드레스로부터 패턴의 발생을 개시하는 것을 의미하고 있다. 어드레스 #0로 NOP가 실행된다. NOP는 어드레스를 +1하는 것을 의미한다. 따라서, 다음 행에서 어드레스는 #1로 변화하고 있다. 2행째에서는 라벨 LB1을 루프명령 LOOP1로 설정된 회수 N만큼 반복하는 것을 실행한다. 이 반복회수 N은 초기치 격납 레지스터(115)에 격납된 설정치에 의해서 규정된다.
1행째 및 2행째에 기재한 X<0(1,2,3) 및 X<X+4(1,2,3) 가 패턴발생명령을 도시한다. 여기서, 특히 X<0, X<X+4는 메인패턴발생명령을 도시한다. X<0는 X 어드레스 레지스터를 0으로 초기화하는 명령, X<X+4는 X 어드레스 레지스터의 값을+4하여 X 어드레스 레지스터에 그 연산결과를 격납하기 위한 명령을 도시한다. (1, 2, 3)는 인수(P1, P2, P3)를 가리키고 서브패턴발생부(122, 123, 124)에 있어서 메인패턴에 가산하는 값을 나타낸다.
도 17에 도시한 패턴 프로그램을 실행한 경우의 메인패턴발생명령 MAlN과, 이 메인패턴발생명령 MAlN으로 생성되는 메인패턴과 서브패턴발생부(122∼124)로 발생되는 서브패턴과의 관계를 도 18에 나타낸다.
메인패턴발생명령을 도 15에 도시한 메인패턴발생부(121)에 부여하고, 각 서브패턴발생부(122,123,124)에 인수(P1, P2, P3)를 부여함에 의해 메인패턴발생부(121)는 X 어드레스패턴으로 하여 X=0를, 서브패턴발생부(122,123,124)는 X=0+1, X=0+2, X=0+3을 각각 출력한다. 도 18는도 17에 도시한 루프명령 LOOP 1을 10회 반복한 경우를 도시한다. 따라서, 도 18에 도시한 스텝2∼11에서 발생하는 패턴발생명령은 루프명령 LOOP 1에 기재한 X<X+4(1,2,3)를 발생시킨다. 이 패턴발생명령 X<X+4를 메인패턴발생부(121)에 부여함에 따라 메인패턴발생부(121)는 메인패턴으로서 X=4를 출력하고, 각 서브패턴발생부(122, 123, 124)는 도 19의 2사이클째t에 도시한 바와 같이패턴 X=4, X=4+1, X=4+2, X=4+3을 출력한다.
이와 같이 하여, 메인패턴발생부(121)와 서브패턴발생부(122,123,124)는 각 스텝될때에 메인패턴 X=0, X=4, X=8···에 이어서 연속한 순서를 가지는 패턴 X=1, X=2, X=3 및 X=5, X=6, X=7와, X=9, X=10, X=11를 출력한다.
도 20에 메인패턴발생부(121)와 서브패턴발생부(122,123,124)가 구체적인 실시예를 표시한다. 메인패턴발생부(121)는 4대의 레지스터(REG1, REG2, REG3, REG4)와, 1대의 가산기(ALU)와, 2대의 멀티플렉서(MUX1, MUX2)와, 1대의 마스크용 게이트 MASK 에 의해 구성할 수 있다.
메인패턴발생부(121)의 레지스터(REG1)에는 시퀀스 제어부(110)로부터 메인패턴발생명령 X<0혹은 X<X+4등이 입력되고, X의 값이 격납된다. 메인패턴발생부(121)의 레지스터(REG2)에는 시퀀스 제어부(110)로부터 인수0 이 격납된다. 멀티플렉서(MUX1)는 당초는 레지스터(REG1)를 선택하여, 레지스터(REG1)에 격납된 X의 값과 레지스터(REG2)에 격납된 값을 가산하고, 그 가산결과를 레지스터(REG3)에 격납한다. 패턴발생명령이 X<0의 경우에는 레지스터(REG1)에는 X가 0로 초기화되어 격납되므로 가산기(ALU)는 X=0+0을 연산하고, 레지스터(REG3)에 X=0를 격납한다. 레지스터(REG3)에 격납된 X의 값은 멀티플렉서(MUX2)와 마스크용 게이트 MASK를 통하여 패턴지연회로(125)에 보내어지고, 적당히 지연되어 출력단자(TA)에 출력된다. 또, 레지스터(RG4)에는, 피시험 IC(300)에 인가하는 패턴의 최대값을 설정한다. 레지스터(REG3)의 값이 레지스터(REG4)의 설정값을 넘은 경우에는 마스크용 게이트 MASK는 레지스터(REG4)의 설정값 이상의 값이 피시험 IC(300)에 인가되는 것을 저지한다. 패턴지연회로(125)는 메인패턴발생부(121)에서 발생된 시험패턴을, 서브패턴발생부(122, 123, 124)에 있어서의 지연시간과 같은 시간지연시키고 각 출력단자(TA∼TD)에 동일위상으로 시험패턴을 출력하기 위해서 설치되어 있다.
메인패턴발생부(121)의 레지스터(REG1)에 패턴발생명령 X<X+4로 입력되면, 이 레지스터(REG1)에는 X=4이 격납된다. 이 결과, 가산기(ALU)는 X=4+0을 연산하고, 그 연산결과를 레지스터(REG3)에 격납한다. 따라서 메인패턴은 X=4이(로)된다.
다음에, 서브패턴발생부(122∼124)의 구성및 동작에 대하여 설명한다. 서브패턴발생부(122∼124)는 동일한 구성이므로, 여기서는 서브패턴발생부(122)에 대해서 설명한다. 이 서브패턴발생부(122)는, 레지스터(REG2, REG3, REG4)의 3대의 레지스터와, 2대의 멀티플렉서(MUX1, MUX2)와, 1대의 마스크용 게이트(MASK)에 의해 서 구성되어 있다. 멀티플렉서(MUX1)에는 메인패턴발생부(121)가 발생하는 메인패턴 X=0, X=4, X=8···이 입력된다. 레지스터(REG2)에는 시퀀스 제어부(110)(도 16)로부터 인수(P1)가 입력된다. 이 예에서는 P1=1의 경우를 도시한다. 이 인수(P1=1)가 레지스터(REG2)에 격납된다. (서브패턴발생부123와 124의레지스터(REG2)에는 인수2와 3가 격납된다). 메인패턴발생부(121)가 메인패턴 X=0을 발생한 경우에는 가산기(ALU)는 X=0+1을 연산하고, 그 연산결과 X=1를 레지스터(REG3)에 격납하다. 따라서, 출력단자 TB에는 서브패턴 X=1이 출력된다. 다음에, 메인패턴발생부(121)가 메인패턴 X=4을 출력하면, 서브패턴발생부(122)의 가산기(ALU)는 X=4+1을 연산하고, 그 연산결과를 레지스터(REG3)에 격납한다. 이 결과, 출력단자 TB에는 서브패턴 X=5이 출력된다. 이와같이 각 서브패턴발생부(122∼124)에 있어서는, 레지스터(REG2)에 격납된 인수(1,2,3)를 메인패턴발생부(121)가 각 스텝 1,2,3···으로 발생하는 메인패턴신호 X=0, X=4, X=8···에 가산하여, 소망의 순서로 배열된 패턴신호 X=0, X=1, X=2, X=3과, X=4, X=5, X=6, X=7 및 X=8, X=9, X=10, X=11를 각 사이클 t-1, t, t+1···마다에 출력단자(TA∼TD)에 출력한다.
출력단자(TA∼TD)에 출력한 패턴은 도 21에 도시된 다중화회로(500)의 입력단자(IA∼ID)에 입력된다. 다중화회로(500)는 각 입력단자(IA, IB, IC, ID)에 플립플롭(501, 502, 503, 504)이 접속되고, 이들 각 플립플롭(501∼504)에 패턴발생부(120)로부터 발생된 패턴, 예컨대 예 X=0, X=1, X=2, X=3를 도 22a에 나타내는 클록 CLK1로 래치한다. 각 플립플롭(501, 504)의 각 래치출력은 4입력 1출력형의 멀티플렉서(506)에 있어서, 도 22c에 나타난 클록 CLK2의 주기로 선택되어 취출되고, 또한 플립플롭(507)으로 정시(整時)하여 출력단자(TQ)에 출력한다. 이 출력단자(TQ)에는 도 22d에 나타난 4배속의 고속패턴신호(HIP)가 소정의 순서에 따라서 출력된다. 또, 도 21에 나타난 505는 클록 CLK2을 계수하는 카운터를 나타내며 이 카운터(505)의 계수출력에 의해 멀티플렉서(506)를 스위칭 제어한다.
이상 설명한 바와 같이, 본 발명에 의하면 종래와 동등의 속도로 동작하는 시퀀스 제어부와 패턴발생부를 이용하여, 그 동작속도의 다중화수배의 속도의 고속패턴신호를 얻을 수 있다. 따라서, 특별히 고속동작하는 소자를 사용하여 회로를 구성하지 않더라도 고속화를 달성할 수 있다. 또한, 초 파이프라인구조를 채용하지 않더라도 고속화할 수 있고, 염가로 또한, 소형인 고속패턴발생기를 제공할 수 있다.
더욱이 이용자는 종래와 같이 패턴발생을 위한 프로그램(패턴 프로그램)을 작성할 뿐으로 다중화를 위한 특별한 프로그램을 만들 필요가 없다. 따라서 고속시험패턴을 발생시키기 위한 프로그램을 용이하게 작성할 수 있다.
그위 본 발명의 제3실시예의 고속패턴발생기에 의하면 시퀀스 제어부(110),패턴발생부(120)와 다중화회로(500)를 구성하는 플립플롭(501∼504)을 종래와 동등의 속도로 동작하는 회로로 구성하더라도 다중화회로(500)의 다중화수배의 속도를 가지는 고속패턴신호를 발생시킬 수 있다. 따라서, 다중화회로(500)로 다중화수 N 을 상술한 실시예처럼 N=4로 선정한 경우, 100MHz에서 동작하는 회로를 사용하여 400MHz의 고속패턴신호를 발생시킬 수 있다. 또한, 다중화수 N 을 더욱 많게 함에 의해 보다 한층 더 고속의 패턴신호를 발생시킬 수 있다.
또한, 본 발명에 의하면 메인패턴발생명령에 인수를 붙여 이 인수에 의해서 다중화하기 위한 서브패턴을 발생시키는 구성으로 하였기 때문에 프로그램작성자는 메인패턴만을 규정하여 프로그램을 작성하기 좋다. 따라서, 고속패턴발생을 위한프로그램을 용이하게 만들 수 있는 이점을 얻을 수 있다.
더욱이 본 발명에 의하면 시퀀스 제어부(110), 패턴발생부(120)등의 주요부분을 종래의 회로와 동등의 회로로 구성하면 좋으므로, 염가에 제조할 수 있다. 또한 초다단 파이프라인 구조를 취하지 않아도 좋으므로 전체를 소형에 만들수 있다는 이점도 있다.

Claims (13)

  1. 시퀀스 제어부에 설치된 인스트럭션 메모리로부터 판독되는 패턴발생명령에 따라서 패턴발생부로부터 시험패턴신호를 발생시키고 이 시험패턴신호를 피시험장치에 부여하여, 이 피시험장치의 동작을 시험하는 패턴발생방법에 있어서,
    상기 인스트럭션 메모리에 N개(N은 2이상의 정수)의 서브 패턴발생명령기억영역을 설치하는 단계;
    이 N개의 서브 패턴발생명령기억영역으로부터 판독되는 N개의 서브 패턴발생명령을 상기 서브 패턴발생명령기억영역과 대응하는 N개의 서브 패턴발생부에 부여하는 단계;
    이들 N개의 서브패턴발생부로부터 각각의 서브 패터발생명령에 따른 N개의 서브 패턴신호를 동시에 발생시키는 단계; 및
    이 N개의 서브 패턴신호를 다중화회로에 의해 시분할다중화하여, 고속패턴을 발생시키는 단계를 포함하는 것을 특징으로 하는 고속패턴발생방법.
  2. 청구항 제 1 항에 기재한 고속패턴발생방법을 사용하는 고속패턴발생기로서,
    상기 인스트럭션 메모리를 시퀀스 제어명령을 기억한 제1 인스트럭션 메모리와, N개의 서브 패턴발생명령기억영역을 구비하여 구성되는 제2 인스트럭션 메모리로 분리함과 동시에,
    상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호를 어드레스 변환부를 통하여 상기 제2 인스트럭션 메모리에 부여하고, 상기 어드레스변환부에서는 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 어드레스값이 1증가하는 방향으로 변화한 경우에는 그 변화후의 어드레스신호를 상기 제2 인스트럭션 메모리에 부여하고, 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 어드레스값이 1증가하는 이외의 변화를 한 경우에는 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 1사이클앞의 어드레스에 소정치를 더한 값을 가지는 어드레스신호로 변환하고, 이 변환한 어드레스신호를 상기 제2 인스트럭션 메모리에 부여하는 구성으로 한 것을 특징으로 하는 고속패턴발생기.
  3. 제 2 항에 있어서, 상기 어드레스변환부는 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호를 1사이클분지연시키는 어드레스지연수단과, 이 어드레스지연수단으로 지연된 지연 어드레스신호와 상기 어드레스지연수단을 통과하지않은 어드레스신호를 선택하여 취출하는 선택수단과, 이 선택수단이 상기 지연수단으로 지연된 지연 어드레스신호를 선택한 경우에, 이 선택된 지연 어드레스신호에 소정치를 가산하는 가산 수단에 의해 구성되어 있는 것을 특징으로 하는 고속패턴발생기.
  4. 제 3 항에 있어서, 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 값이 1증가하는 방향으로 변화한 것을 검출하여 「0」논리의 제어신호를 출력하고, 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 어드레스값이 1증가하는 이외의 변화를 한 것을 검출하여 「1」논리의 제어신호를 출력하고, 이「1」논리의 제어신호에 의해 상기 어드레스변환부를 구성하는 상기 선택수단을 상기 어드레스지연수단으로부터 출력할 수 있는 지연 어드레스신호를 선택하는 상태로 제어함과 동시에 상기 가산수단에서는 선택된 지연 어드레스신호의 상위비트측에 상기 「1」논리의 제어신호를 부가하여 어드레스변환하는 것을 특징으로 하는 고속패턴발생기.
  5. 청구항 제 1 항에 기재한 고속패턴발생방법을 사용하는 고속패턴발생기로서,
    상기 인스트럭션 메모리를 시퀀스 제어명령과 어드레스변환 테이블을 기억한 제1 인스트럭션 메모리와, N개의 서브 패턴발생명령기억영역을 구비하여 구성되는 제2 인스트럭션 메모리로 분리하고,
    상기 어드레스변환 테이블은 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 어드레스값이 시퀀스 제어명령에 의해 1증가하는 이외의 변화를 하는 경우에, 그 시퀀스 제어명령이 격납되어 있는 상기 제1 인스트럭션 메모리의 어드레스값을 상기 제2 인스트럭션 메모리의 최종 어드레스로부터 -1씩 감소한 어드레스값에 변환하여 출력하고, 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 어드레스값이 1증가하는 방향으로 변화한 경우에는 그 어드레스신호를 그대로 제2 인스트럭션 메모리에 부여하고, 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 어드레스값이 1증가하는 이외의 변화를 한 경우에는 상기 변환 테이블로부터 출력할 수 있는 변환 어드레스를 상기 제2 인스트럭션 메모리에 부여하는 구성으로 한 것을 특징으로 하는 고속패턴발생기.
  6. 제 4 항에 있어서, 상기 어드레스변환 테이블로부터 출력되는 변환 어드레스를 1사이클분지연시키는 어드레스지연수단과, 이 어드레스지연수단으로 지연된 지연 어드레스와 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호를 선택하여 상기 제2 인스트럭션 메모리에 부여하는 선택수단을 설치하고, 이 선택수단에 의해서, 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 어드레스값이 1증가하는 방향으로 변화한 경우에는 그 변화후의 어드레스신호를 그대로 상기 제2 인스트럭션 메모리에 부여하고, 상기 제1 인스트럭션 메모리의 어드레스값이 1증가하는 이외의 변화를 한 경우에는 상기 어드레스지연수단으로 지연된 지연 어드레스를 상기 제2 인스트럭션 메모리에 부여하는 구성으로 한 것을 특징으로 하는 고속패턴발생기.
  7. 제 6 항에 있어서, 상기 제1 인스트럭션 메모리를 억세스하는 어드레스신호의 값이 1증가하는 방향으로 변화한 것을 검출하여 상기 선택수단을 제1 인스트럭션 메모리를 억세스하는 어드레스신호를 선택하여 제2 인스트럭션 메모리에 부여하는 상태로 제어하고, 상기 제1 인스트럭션 메모리를 억세스하는 어드레스값이 1증가하는 이외의 변화를 한 경우에는 상기 선택수단을 상기 어드레스변환 테이블로부터 출력할 수 있는 변환 어드레스를 선택하여 상기 제1 인스트럭션 메모리에 부여하는 상태로 제어하는 제어논리회로를 구비하고 있는 것을 특징으로 하는 고속패턴발생기.
  8. 고속으로 시험패턴신호를 발생시키는 고속패턴발생방법에 있어서,
    인스트럭션 메모리로부터 메인패턴에 이이서 복수의 서브패턴을 규정하는 인수부패턴발생명령을 출력시키는 단계;
    이 패턴발생명령에 따라서 메인패턴발생부에서 메인패턴을 발생시키는 단계;
    상기 메인패턴발생부로부터 발생된 상기 메인패턴을 복수의 서브패턴발생부에 부여하는 단계;
    이들 복수의 서브패턴발생부에서 상기 메인패턴을 상기 인수에 따라서 변화시키는 단계;
    상기 메인패턴을 지연시켜 이 메인패턴에 이어져야할 복수의 서브패턴을 상기 메인패턴과 동일위상으로 발생시키는 단계; 및
    상기 메인패턴과 상기 복수의 서브패턴을 다중화회로로 시분할다중화하여 취출함으로써 소정의 패턴 발생순서에 따라서 변환하는 고속패턴을 발생시키는 단계를 포함하는 것을 특징으로 하는 고속패턴발생방법.
  9. 시퀀스 제어부에 설정된 인스트럭션 메모리로부터 판독되는 패턴발생명령에 따라서 패턴발생부로부터 시험패턴신호를 발생시키고 이 시험패턴신호를 피시험장치에 부여하여, 이 피시험장치의 동작을 시험하는 반도체장치시험장치에 사용하는 패턴발생기에 있어서,
    상기 인스트럭션 메모리로부터 메인패턴을 발생시키기 위한 메인패턴발생명령과, 이 메인패턴에 이어서 소정의 순서로 발생해야 할 복수의 패턴을 규정하는 인수를 판독하고, 상기 판독된 메인패턴발생명령에 따라서 상기 메인패턴발생부로부터 메인패턴을 발생시킴과 동시에 상기 메인패턴발생으로부터 발생된 메인패턴을 복수의 서브패턴발생부에 부여하고, 이들 복수의 서브패턴발생부에 있어서 상기 인수에 따라서 상기 메인패턴에 이어지는 소정의 순서로 발생해야 할 패턴에 대응한 복수의 서브패턴을 발생시키고 이들 복수의 서브패턴과 상기 메인패턴을 다중화회로로 시분할다중화하고, 상기 패턴발생명령의 판독속도보다도 상기 다중화회로의 다중화수배 빠른 속도의 고속패턴을 발생하는 것을 특징으로 하는 고속패턴발생기.
  10. 제 9 항에 있어서, 상기 메인패턴발생부가 발생하는 메인패턴에 패턴지연부에 의해서 상기 서브패턴발생부에서의 지연시간과 동등한 지연을 부여하고, 이 지연동작에 의해서 상기 메인패턴과 상기 복수의 서브패턴발생부로부터 출력되는 서브패턴의 위상을 합치시키고 상기 다중화회로에 공급하도록 구성한 것을 특징으로 하는 고속패턴발생기.
  11. 고속으로 시험패턴신호를 발생시키는 고속패턴발생방법에 있어서,
    발생순서에 따라서 스텝을 배열하여 구성한 일련의 패턴발생명령을, 일련의 N개(N은 2이상의 정수)의 서브 패턴발생명령으로 변환하는 단계로서,
    각 서브 패턴발생명령은 상기 패턴발생명령의 일련의 스텝으로부터 N개 간격으로 추출하는 스텝으로서 구성되고,
    상기 N개의 서브 패턴발생명령은 일정의 순서를 갖고, 각 서브 패턴발생명령은 그것보다 이전의 서브 패턴발생명령에 비해 한 스텝만큼 지연된 스텝으로서 구성되는 단계;
    상기 N개의 서브 패턴발생명령을 기초로 하여 N개의 서브패턴신호를 동시에 발생시키는 단계;
    상기 N개의 서브 패턴신호를 상기 순서에 따라 시분할다중화하는 단계; 및
    이에 의해 고속화한 패턴신호를 발생시키는 단계를 포함하는 것을 특징으로 하는 고속패턴신호 발생방법.
  12. 시퀀스제어부와, 패턴발생부를 구비한 고속패턴발생기에 있어서,
    상기 시퀀스제어부는 인스트럭션 메모리와 어드레스변환부를 가지며,
    상기 인스트럭션 메모리는 시퀀스제어명령을 기억한 제 1 인스트럭션 메모리와 복수의 서브·패턴발생명령을 기억하기 위한 복수의 서브·패턴발생명령 기억영역을 구비하여 구성되는 제 2 인스트럭션 메모리로 분리되고,
    상기 제 1 인스트럭션 메모리를 억세스하는 어드레스신호가 상기 어드레스변환부를 통하여 상기 제 2 인스트럭션 메모리에 부여하며,
    상기 어드레스변환부는,
    상기 제 1 인스트럭션 메모리를 억세스하는 어드레스신호의 어드레스값이 1증가하는 방향으로 변화한 경우에는, 상기 어드레스변환부가 그 변화후의 어드레스신호를 상기 제 2 인스트럭션 메모리에 부여하고,
    상기 제 1 인스트럭션 메모리를 억세스하는 어드레스신호의 어드레스값이 1증가하는 이외의 변화를 한 경우에는 상기 어드레스변환부가 어드레스신호를 상기 제 1 인스트럭션 메모리를 억세스하는 어드레스신호의 1 사이클전의 어드레스에 소정치를 더한 값을 가지는 어드레스신호로 변환하고, 이 변환한 어드레스신호를 상기 제 2 인스트럭션 메모리에 부여하는 구성으로 한 것을 특징으로 하는 고속패턴발생기.
  13. 시퀀스 제어부에 설치된 인스트럭션 메모리로부터 판독되는 패턴발생명령에 따라서 패턴발생부로부터 피시험장치의 동작을 시험하기 위한 시험패턴신호를 발생시키는 패턴발생방법에 있어서,
    상기 인스트럭션 메모리로서, N개(N은 2이상의 정수)의 서브 패턴발생명령기억영역을 설치하고,
    이 N개의 서브 패턴발생명령기억영역의 각각에, 피시험장치에 부여해야 할 시험패턴신호의 발생명령으로부터 N개 간격으로 추출한 스텝으로 구성된 서브 패턴발생명령을 미리 격납하고, 이들 N개의 서브 패턴발생명령기억영역은 일정의 순환하는 순서를 갖고, 각 서브 패턴발생명령기억영역에 기억된 서브 패턴발생명령은 그 전의 순서의 서브 패턴발생명령기억영역에 기억된 서브 패턴발생명령에 비해 한 스텝만큼 지연된 스텝으로 구성되는 것으로 하고,
    상기 패턴발생부로서 상기 서브 패턴발생명령기억영역과 대응해서 N개의 서브 패턴발생부를 설치하는 단계;
    이 N개의 서브 패턴발생명령기억영역으로부터 상기 N개의 서브 패턴발생명령을 동시에 판독해서, 각각을 상기 대응하는 N개의 서브 패턴발생부에 동시에 부여하는 단계;
    이들 N개의 서브 패턴발생부로부터 각각의 서브 패턴발생명령에 따른 N개의 서브패턴신호를 동시에 발생시키는 단계; 및
    이 N개의 서브 패턴신호를 다중화회로에 의해 시분할다중화하여 고속패턴신호를 발생시키는 단계를 포함하는 것을 특징으로 하는 고속패턴발생방법.
KR1019970701975A 1995-07-26 1996-07-26 고속패턴발생방법및이방법을사용한고속패턴발생기 KR100307664B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP19051395A JP3368570B2 (ja) 1995-07-26 1995-07-26 高速パターン発生方法及びこの方法を用いた高速パターン発生器
JP95-190514 1995-07-26
JP95-190513 1995-07-26
JP19051495A JP3393567B2 (ja) 1995-07-26 1995-07-26 高速パターン発生器
PCT/JP1996/002104 WO1997005499A1 (fr) 1995-07-26 1996-07-26 Procede et appareil de generation rapide de formes

Publications (2)

Publication Number Publication Date
KR970706507A KR970706507A (ko) 1997-11-03
KR100307664B1 true KR100307664B1 (ko) 2001-10-19

Family

ID=26506139

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970701975A KR100307664B1 (ko) 1995-07-26 1996-07-26 고속패턴발생방법및이방법을사용한고속패턴발생기

Country Status (5)

Country Link
US (1) US6006349A (ko)
KR (1) KR100307664B1 (ko)
DE (1) DE19680782C2 (ko)
TW (1) TW301786B (ko)
WO (1) WO1997005499A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101137536B1 (ko) * 2008-06-02 2012-04-23 가부시키가이샤 어드밴티스트 시험 장치 및 시험 방법

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6178532B1 (en) * 1998-06-11 2001-01-23 Micron Technology, Inc. On-chip circuit and method for testing memory devices
US9664739B2 (en) 1999-11-23 2017-05-30 Mentor Graphics Corporation Continuous application and decompression of test patterns and selective compaction of test responses
US6874109B1 (en) 1999-11-23 2005-03-29 Janusz Rajski Phase shifter with reduced linear dependency
US7493540B1 (en) 1999-11-23 2009-02-17 Jansuz Rajski Continuous application and decompression of test patterns to a circuit-under-test
US6327687B1 (en) 1999-11-23 2001-12-04 Janusz Rajski Test pattern compression for an integrated circuit test environment
WO2001039254A2 (en) 1999-11-23 2001-05-31 Mentor Graphics Corporation Continuous application and decompression of test patterns to a circuit-under-test
US6353842B1 (en) 1999-11-23 2002-03-05 Janusz Rajski Method for synthesizing linear finite state machines
US9134370B2 (en) 1999-11-23 2015-09-15 Mentor Graphics Corporation Continuous application and decompression of test patterns and selective compaction of test responses
US6684358B1 (en) 1999-11-23 2004-01-27 Janusz Rajski Decompressor/PRPG for applying pseudo-random and deterministic test patterns
US8533547B2 (en) 1999-11-23 2013-09-10 Mentor Graphics Corporation Continuous application and decompression of test patterns and selective compaction of test responses
US6557129B1 (en) 1999-11-23 2003-04-29 Janusz Rajski Method and apparatus for selectively compacting test responses
DE10115879C1 (de) * 2001-03-30 2002-10-10 Infineon Technologies Ag Testdatengenerator
DE10122081B4 (de) * 2001-05-07 2004-02-05 Infineon Technologies Ag Verfahren zum Kalibrieren eines Testsystems für eine integrierte Halbleiterschaltung und kalibrierbares Testystem
US20040193986A1 (en) * 2003-03-31 2004-09-30 Canagasaby Karthisha S. On-die pattern generator for high speed serial interconnect built-in self test
US7904905B2 (en) * 2003-11-14 2011-03-08 Stmicroelectronics, Inc. System and method for efficiently executing single program multiple data (SPMD) programs
US7213182B2 (en) * 2005-01-19 2007-05-01 Advantest Corporation Test apparatus and test method
JP4704184B2 (ja) * 2005-10-27 2011-06-15 株式会社アドバンテスト 試験装置及び試験方法
US8607111B2 (en) * 2006-08-30 2013-12-10 Micron Technology, Inc. Sub-instruction repeats for algorithmic pattern generators

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6030973B2 (ja) * 1980-01-18 1985-07-19 日本電気株式会社 高速パタ−ン発生器
JPH0750159B2 (ja) * 1985-10-11 1995-05-31 株式会社日立製作所 テストパタ−ン発生装置
JPH0746127B2 (ja) * 1986-05-20 1995-05-17 三菱電機株式会社 半導体試験装置
DE3752280T2 (de) * 1986-07-30 2000-02-03 Hitachi, Ltd. Mustergenerator
US4959832A (en) * 1988-12-09 1990-09-25 International Business Machines Parallel pseudorandom pattern generator with varying phase shift
JP2956124B2 (ja) * 1990-05-09 1999-10-04 横河電機株式会社 波形発生装置
US5100610A (en) * 1990-11-20 1992-03-31 Westinghouse Electric Corp. Tube plug inspection system
JP2964644B2 (ja) * 1990-12-10 1999-10-18 安藤電気株式会社 高速パターン発生器
JPH04218785A (ja) * 1990-12-19 1992-08-10 Advantest Corp Ic試験装置
US5224125A (en) * 1991-04-05 1993-06-29 National Semiconductor Corporation Digital signed phase-to-frequency converter for very high frequency phase locked loops
JP3323312B2 (ja) * 1993-12-28 2002-09-09 株式会社アドバンテスト 高速化した試験パターン発生器

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101137536B1 (ko) * 2008-06-02 2012-04-23 가부시키가이샤 어드밴티스트 시험 장치 및 시험 방법
US8286045B2 (en) 2008-06-02 2012-10-09 Advantest Corporation Test apparatus and test method

Also Published As

Publication number Publication date
DE19680782T1 (de) 1997-10-02
US6006349A (en) 1999-12-21
WO1997005499A1 (fr) 1997-02-13
KR970706507A (ko) 1997-11-03
TW301786B (ko) 1997-04-01
DE19680782C2 (de) 2002-11-21

Similar Documents

Publication Publication Date Title
KR100307664B1 (ko) 고속패턴발생방법및이방법을사용한고속패턴발생기
EP0255118B1 (en) Pattern generator
JP3636506B2 (ja) 半導体試験装置
JP3605150B2 (ja) アドレスパターン発生器
JP2591716B2 (ja) デジタル集積回路の疑似完全な自己検査方法とその装置及びテストポイントコンパクタ
US6040725A (en) Dynamically configurable variable frequency and duty cycle clock and signal generation
JP2001349930A (ja) イベント型半導体テストシステム
US5872797A (en) Burn-in signal pattern generator
US5150389A (en) Shift register
KR100403639B1 (ko) 파형발생장치
US6490700B1 (en) Memory device testing apparatus and data selection circuit
US6766411B2 (en) Circuit for looping serial bit streams from parallel memory
US6449763B1 (en) High-level synthesis apparatus, high level synthesis method, and recording medium carrying a program for implementing the same
JP3393567B2 (ja) 高速パターン発生器
US5404564A (en) High speed data train generating system with no restriction on length of generated data train
US5751738A (en) Pattern generator cicuit for semiconductor test systerm
JPH0619594A (ja) 制御装置
KR0182068B1 (ko) 반도체 시험 장치
JPH1027497A (ja) メモリ試験装置
JP3502450B2 (ja) パターン発生器
JP3552774B2 (ja) メモリ試験装置及びメモリ試験装置用アダプタ及びメモリ試験方法
KR100220201B1 (ko) 패턴 발생 회로
JP2000162287A (ja) パターン信号を生成するパターン発生器
JPS6336163A (ja) Ic試験装置
JP2004012175A (ja) Pll内蔵回路の評価方法、pll内蔵回路の評価システム、及びpll内蔵回路

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20100811

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee