KR100366833B1 - 집적회로용 테스트 패턴을 발생시키는 방법 - Google Patents

집적회로용 테스트 패턴을 발생시키는 방법 Download PDF

Info

Publication number
KR100366833B1
KR100366833B1 KR10-1999-0007765A KR19990007765A KR100366833B1 KR 100366833 B1 KR100366833 B1 KR 100366833B1 KR 19990007765 A KR19990007765 A KR 19990007765A KR 100366833 B1 KR100366833 B1 KR 100366833B1
Authority
KR
South Korea
Prior art keywords
output
pattern
noise
test pattern
value
Prior art date
Application number
KR10-1999-0007765A
Other languages
English (en)
Other versions
KR19990077716A (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 KR19990077716A publication Critical patent/KR19990077716A/ko
Application granted granted Critical
Publication of KR100366833B1 publication Critical patent/KR100366833B1/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
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318544Scanning methods, algorithms and patterns
    • G01R31/318547Data generators or compressors
    • 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/318321Generation of test inputs, e.g. test vectors, patterns or sequences for combinational circuits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation

Landscapes

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

Abstract

본 발명은, 회로의 규모가 증대되는 것을 방지하며, 출력 버퍼에서 값이 동시에 변화함에 따라 잡음이 발생하는 것을 방지하는 방법으로서,
경계 스캔 셀 (boundary scan cell, 13E 내지 13H) 이 입력 패턴을 출력하는 경우, 출력값이 변화하는 출력 버퍼 (15A 내지 15D) 의 개수를 체크하는 제 1 처리과정; 제 1 처리과정에서 체크된 출력 버퍼로부터의 모든 출력값들이 변화하는 경우 출력값의 변화에 의해 발생된 잡음값을 체크하는 제 2 처리과정; 제 2 처리과정에서 체크된 잡음값이 허용잡음값의 범위내로 되도록 제 1 처리과정에서 체크된 버퍼로부터 출력 버퍼를 선택하는 제 3 처리과정; 및 제 3 처리과정에서 선택된 출력 버퍼의 출력값이 변화될 수 있도록 입력 패턴을 수정하여 얻은 패턴을 테스트 패턴으로서 출력하는 제 4 처리과정을 포함한다.

Description

집적회로용 테스트 패턴을 발생시키는 방법 {METHOD OF GENERATING PATTERN FOR INTEGRATED CIRCUIT}
본 발명은 집적회로용 테스트 패턴을 발생시키는 방법에 관한 것으로, 더 자세하게로는, 경계 스캔 시스템 (boundary scan system) 을 이용하여 테스트를 행하는데 사용되는 테스트 패턴을 발생시키는 방법에 관한 것이다.
도 19 는 경계 스캔 시스템을 이용하는 집적회로의 일례를 나타낸 것이다.
도 19 의 집적회로 (100) 에서는, 입력 단자 (101A 내지 101D) 에 인가된 공통 데이터가 입력 버퍼 (102A 내지 102D) 및 경계 스캔 셀 (103A 내지 103D) 을 통해 내부회로 (104) 에 인가된다. 내부회로 (104) 는 각종의 게이트 등으로 구성된 논리회로이다. 내부회로 (104) 로부터의 데이터는 경계 스캔 셀 (103E 내지 103H) 및 출력 버퍼 (105A 내지 105D) 를 통해 출력 단자 (106A 내지 106D) 에 인가된다.
이러한 경계 스캔 시스템에서, 각 집적회로 (100) 가 보드상에 구현된 후 집적회로들 (100) 사이의 접속상태가 용이하게 테스트될 수 있다. 테스트는 다음과 같이 수행될 수 있다. 즉, 테스트가 수행되는 경우, 경계 스캔 셀 (103A 내지 103H) 이 시프트 모드 (shift mode) 로 설정된다. 그 후, 테스트 데이터가 입력 단자 (107A) 에 인가되게 된다. 테스트 데이터는 연속적으로 입력 버퍼 (108A) 를 통해 경계 스캔 셀 (103A 내지 103H) 의 시프트 동작으로 전달되게 된다. 따라서, 테스트 데이터가 집적회로 (100) 의 출력측의 경계 스캔 셀 (103E 내지 103H) 내에 최초로 설정되게 된다.
테스트 데이터의 설정이 완료될 때, 테스트 클록이 경계 스캔 셀 (103E 내지 103H) 에 인가된다. 따라서, 경계 스캔 셀 (103E 내지 103H) 이 테스트 데이터를 출력 버퍼 (105A 내지 105D) 를 통해 출력 단자 (106A 내지 106D) 에 인가하게 된다. 출력 단자 (106A 내지 106D) 에 인가된 출력 데이터는, 다음 단계에서, 보드상의 배선을 통해 집적회로의 입력 단자에 도달되게 된다. 다음 단계의 집적회로에서, 입력 단자에 의해 수신된 테스트 데이터가 대응되는 경계 스캔 셀에 기억되게 된다. 다음 단계의 집적회로는 기억된 테스트 데이터를 집적회로 (100) 에서의 시프트 동작으로 전달하여, 데이터를 출력 단자로부터 직렬로 출력 (serial output) 한다.
출력 데이터가 집적회로 (100) 에 인가된 테스트 데이터와 일치하는 경우, 이는 집적회로 (100) 와 보드상의 다음 단계의 집적회로 사이에 무결함 배선이 설정되었음을 의미하게 된다. 한편, 출력 데이터가 집적회로 (100) 에 인가된 테스트 데이터와 일치하지 않는 경우, 이는 집적회로 (100) 와 보드상의 다음 단계의 집적회로 사이의 배선에 결함이 있음을 의미하게 된다. 따라서, 경계 스캔 시스템에서, 각 집적회로가 보드상에 구현된 후, 집적회로 (100) 내의 내부회로 (104) 의 형태에 무관하게, 집적회로 사이의 접속상태가 용이하게 테스트될 수 있다.
보드상의 집적회로 사이의 결함 배선은, 출력측의 집적회로의 출력값에 무관하게 접지전위에 고정된 입력측의 집적회로의 입력값 또는 출력측의 집적회로의 출력값에 무관하게 전원공급 전위에 고정된 입력측의 집적회로의 입력값일 수 있다. 따라서, 전술한 테스트에서 2 개 형태의 테스트가 수행되어야 함을 쉽게 이해할 수 있을 것이다. 즉, "모두 0" 의 출력이 정확하게 전달되었는지, 그리고 "모두 1" 의 출력이 정확히 출력되었는지가 판정된다.
그러나, "모두 0" 의 출력이 정확히 전달되었는지에 대한 판정 직후에, "모두 1" 의 출력의 정확히 전달되었는지를 판정하는 경우에는 다음의 문제가 발생된다. 즉, 대부분의 경우, 각 경계 스캔 셀은 출력값이 시프트 모드에서 변화되지 않도록 설계되므로, 각 경계 스캔 셀 (103E 내지 103H) 의 출력이 "0" 을 유지한 상태에서 시프트 동작시 경계 스캔 셀 (103E 내지 103H) 에 "1" 이 입력되게 되면, 제어가 시프트 모드를 벗어나는 경우 출력 버퍼 (105A 내지 105D) 는 동시에 반전되게 된다. 이 때, 대전류가 출력 버퍼 (105A 내지 105D) 를 통해 흐르게 되어, 전원 및 접지에 잡음을 발생시키게 된다. 출력 버퍼 (105A 내지 105D) 의 동시 반전은 정상적인 동작에서는 발생되지 않는다. 정상적인 동작에서는 발생되지 않는 이러한 잡음이 이러한 대전류에 의해 발생되게 되면, 결함이 있는 테스트 데이터를 발생시키게 되어, 정확한 테스트를 방해하게 된다.
이 문제를 해결하기 위한 방법으로서, 경계 스캔 셀 (103E 내지 103H) 로부터의 데이터를 상이한 지연시간만큼 지연시키는 방법이 일본 특허공개 평5-129912 호에 개시되어 있다. 이 기술에 따르면, 경계 스캔 셀 (103E 내지 103H) 로부터의 테스트 결과 데이터가 동시에 변화하더라도, 각 출력 버퍼 (105A 내지 105D) 는 지연시간에 따라서 이 데이터를 경계 스캔 셀 (103E 내지 103H) 로부터 출력 단자 (106A 내지 106D) 에 연속적으로 전달한다. 그 결과, 출력 버퍼 (105A 내지 105D) 를 통해 대전류가 흐르지 않게 되어, 전원 및 접지에서 잡음이 발생되는 문제가 해결될 수 있게 된다.
그러나, 전술한 종래기술은 다음과 같은 문제가 있다. 즉, 경계 스캔 셀 (103E 내지 103H) 로부터 데이터를 지연시키기 위해, 상이한 지연시간을 갖는 지연소자를, 경계 스캔 셀 (103E 내지 103H) 과 출력 버퍼 (105A 내지 105D) 사이에 삽입시켜야 한다. 그 결과, 집적회로 (100) 가 커지게 되어 바람직하지 않게 된다.
본 발명은 전술한 문제를 해결하기 위해 개발된 것으로서, 출력 버퍼의 동시 변화에 의해 잡음이 발생하는 것을 회로규모의 증대없이 방지할 수 있는 집적회로용 테스트 패턴을 발생시키는 방법을 제공하는 것을 목적으로 한다.
전술한 문제를 해결하기 위하여, 본 발명의 일 태양은, 논리회로의 m 개의 출력이 스캔 플립플롭 및 출력 버퍼를 통해 m 개의 출력 단자에 인가되는 경우 m 개의 스캔 플립플롭에 설정되는 집적회로용 테스트 패턴을 발생시키는 방법에 관한 것이다. 이 방법은, 상기 m 개의 스캔 플립플롭이 입력 패턴을 출력하는 경우 출력값이 변화된 출력 버퍼의 개수를 카운트하는 제 1 처리과정; 상기 제 1 처리과정에서 카운트된 출력 버퍼로부터의 모든 출력값이 변화한 경우 발생된 잡음값을 체크하는 제 2 처리과정; 상기 제 2 처리과정에서 체크된 잡음값을 허용잡음값의 범위이내로 되도록 상기 제 1 처리과정에서 체크된 출력 버퍼를 선택하는 제 3 처리과정; 및 상기 제 3 처리과정에서 선택된 출력 버퍼의 출력값들이 변화하도록 입력 패턴을 수정하여 얻은 패턴을 테스트 패턴으로서 출력하는 제 4 단계를 구비한다.
본 발명의 또 다른 태양은, 논리회로의 m (임의의 자연수) 개의 출력이 스캔 플립플롭 및 출력 버퍼를 통해 m 개의 출력 단자에 인가되는 동시에, 상기 논리회로로부터의 n (임의의 자연수) 개의 출력이 출력 버퍼를 통해 m 개의 출력 단자에 인가되는 경우, m 개의 스캔 플립플롭에 설정되는 집적회로용 테스트 패턴을 발생시키는 방법에 관한 것이다. 이 방법은, 상기 m 개의 스캔 플립플롭이 입력 패턴을 출력하는 경우 출력값이 변화된 출력 버퍼의 개수를 카운트하는 제 1 처리과정; 상기 제 1 처리과정에서 카운트된 출력 버퍼로부터의 모든 출력값이 변화한 경우 발생된 잡음값을 체크하여, 이 체크된 잡음값에 상기 출력 버퍼로부터의 n 개의 출력값이 변화하는 경우 발생된 잡음값을 가산하여 새로운 잡음값을 계산하는 제 2 처리과정; 상기 제 2 처리과정에서 체크된 잡음값을 허용잡음값의 범위이내로 되도록 상기 제 1 처리과정에서 체크된 출력 버퍼를 선택하는 제 3 처리과정; 및 상기 제 3 처리과정에서 선택된 출력 버퍼의 출력값들이 변화하도록 입력 패턴을 수정하여 얻은 패턴을 테스트 패턴으로서 출력하는 제 4 처리과정을 구비한다.
본 발명의 또 다른 태양은, 논리회로의 m 개의 출력이 스캔 플립플롭 및 출력 버퍼를 통해 m 개의 출력 단자에 인가되는 경우 m 개의 스캔 플립플롭에 설정되는 집적회로용 테스트 패턴을 발생시키는 방법에 관한 것이다. 이 방법은, 특정 그룹에 속하는 상기 출력 버퍼로부터의 모든 출력이 변화하는 경우 잡음값이 허용잡음값의 범위이내로 되도록 상기 스캔 플립플롭을 그룹화하는 제 1 처리과정; 상기 제 1 처리과정에서 발생된 그룹들 중에서 1 개의 그룹을 선택하는 제 2 처리과정; 상기 n 개의 스캔 플립플롭이 입력 패턴을 출력하는 경우, 상기 제 2 처리과정에 의해 선택된 그룹에 속하는 출력 버퍼의 출력값만이 변화하며 상기 제 2 처리과정에서 선택되지 않은 그룹에 속하는 출력 버퍼의 출력값은 그대로 한 패턴을, 테스트 패턴으로서 출력하는 제 3 처리과정; 및 상기 제 3 처리과정이 완료될 때 상기 제 2 처리과정에서 선택되지 않은 그룹에 대하여 상기 제 2 내지 제 3 처리과정을 반복하는 제 4 처리과정을 구비한다.
도 1 은 본 발명의 제 1 실시형태에 따른 집적회로용 테스트 패턴을 발생시키는 방법을 나타낸 순서도.
도 2 는 집적회로용 테스트 패턴을 발생시키는 방법을 나타낸 순서도.
도 3 은 집적회로용 테스트 패턴을 발생시키는 방법을 구현한 시뮬레이션 장치의 구성개요를 나타낸 블록도.
도 4 는 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴이 사용된 LSI 의 구성개요를 나타낸 블록도.
도 5 는 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴이 사용된 LSI 내의 경계 스캔 셀 (boundary scan cell) 의 구성개요를 나타낸 블록도.
도 6 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 처리된 테스트 패턴의 일례를 나타낸 도면.
도 7 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴의 일례를 나타낸 도면.
도 8 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트패턴이 사용된 또 다른 LSI 의 구성개요를 나타낸 블록도.
도 9 는 집적회로용 테스트 패턴을 발생시키는 방법에 의해 처리된 테스트 패턴의 또 다른 일례를 나타낸 도면.
도 10 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴의 또 다른 일례를 나타낸 도면.
도 11 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴이 사용된 또 다른 LSI 의 구성개요를 나타낸 블록도.
도 12 는 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴이 사용된 또 다른 LSI 내의 경계 스캔 셀의 구성개요를 나타낸 블록도.
도 13 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 처리된 테스트 패턴의 또 다른 일례를 나타낸 도면.
도 14 는 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴의 일례를 나타낸 도면.
도 15 는 본 발명의 제 2 실시형태에 따른 집적회로용 테스트 패턴을 발생시키는 방법을 나타낸 순서도.
도 16 은 집적회로용 테스트 패턴을 발생시키는 방법을 나타낸 순서도.
도 17 은 집적회로용 테스트 패턴을 발생시키는 방법에서의 그룹 처리를 나타낸 도면.
도 18 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴의 일례를 나타낸 도면.
도 19 는 경계 스캔 시스템을 이용한 집적회로의 구성개요를 나타낸 도면.
* 도면의 주요 부분에 대한 부호의 설명 *
11A 내지 11D : 입력 단자 12A 내지 12D : 입력 버퍼
13A 내지 13H : 경계 스캔 셀 14 : 내부회로
15A 내지 15D : 출력 버퍼 16A 내지 16D : 출력 단자
17 : 입력 단자 18 : 입력 버퍼
이하, 본 발명의 실시형태를 첨부된 도면을 참조하여 설명한다.
(제 1 실시형태)
도 1 은 본 발명의 제 1 실시형태에 따른 집적회로의 패턴을 발생시키는 방법을 나타낸 순서도이다. 도 2 는 집적회로용 테스트 패턴을 발생시키는 방법을 나타낸 순서도이다. 도 3 은 집적회로용 테스트 패턴을 발생시키는 방법을 구현한 시뮬레이션 장치의 구성개요를 나타낸 블록도이다. 도 4 는 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴이 사용된 LSI 의 구성개요를 나타낸 블록도이다. 도 5 는 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴이 사용된 LSI 내의 경계 스캔 셀의 구성개요를 나타낸 블록도이다. 도 6 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 처리된 테스트 패턴의 일례를 나타낸 도면이다. 도 7 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴의 일례를 나타낸 도면이다. 도 8 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴이 사용된 또 다른 LSI 의 구성개요를 나타낸 블록도이다. 도 9 는 집적회로용 테스트 패턴을 발생시키는 방법에 의해 처리된 테스트 패턴의 또 다른 일례를 나타낸 도면이다. 도 10 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴의 또 다른 일례를 나타낸 도면이다. 도 11 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴이 사용된 또 다른 LSI 의 구성개요를 나타낸 블록도이다. 도 12 는 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴이 사용된 또 다른 LSI 내의 경계 스캔 셀의 구성개요를 나타낸 블록도이다. 도 13 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 처리된 테스트 패턴의 또 다른 일례를 나타낸 도면이다.
집적회로용 테스트 패턴을 발생시키는 방법을 구현한, 도 1 및 도 2 에 나타낸 테스트 패턴 발생 기구는, 예를들어, 도 3 에 나타낸 시뮬레이션 장치일 수 있다. 도 3 에 나타낸 시뮬레이션 장치는 입력부 (1), 기억부(2), 중앙처리장치 (3), 출력부 (4) 및 데이터베이스 (5) 를 구비한다.
입력부 (1) 는 오퍼레이터 (operator) 에 의해 조작되며, LSI (large-scale integrated circuit) 의 테스트시에 사용되는 테스트 패턴 등을 수신한다. 출력부 (4) 는 중앙처리장치 (3) 에 의해 발생된 테스트 패턴을 출력한다.
데이터베이스 (5) 는 각종의 LSI 회로를 기억하고 있다. 이 LSI 는 테스트 데이터에 의해 테스트된다. 데이터베이스 (5) 에 기억된 LSI 는 경계 스캔 시스템을 이용한 것이다. 도 4 는 경계 스캔 시스템이 적용된 LSI를 나타낸 것이다. 도 4 에 나타낸 LSI (10) 는 입력 단자 (11A 내지 11D), 입력 단자 (17), 입력 버퍼 (12A 내지 12D), 입력 버퍼 (18), 경계 스캔 셀 (13A 내지 13H), 내부회로 (14), 출력 버퍼 (15A 내지 15D) 및 출력 단자 (16A 내지 16D) 를 구비한다.
입력 단자 (11A 내지 11D) 는 공통 데이터를 입력하기 위해 사용된다. 출력 단자 (16A 내지 16D) 는 공통 데이터를 출력하기 위해 사용된다. 입력 단자 (17) 는 테스트 데이터를 입력하기 위해 사용된다.
입력 버퍼 (12A 내지 12D) 는 입력 단자 (11A 내지 11D) 에 입력된 데이터를 경계 스캔 셀 (13A 내지 13D) 에 각각 전달한다. 출력 버퍼 (15A 내지 15D) 는 경계 스캔 셀 (13E 내지 13H) 로부터의 출력 데이터를 출력 단자 (16A 내지 16D) 에 각각 전달한다.
내부회로 (14) 는 각종의 게이트 등으로 구성된 논리회로이다.
경계 스캔 셀 (13A 내지 13D) 은 공통 데이터를 내부회로 (14) 에 전달한다. 또한, 테스트가 수행되는 경우, 테스트 데이터가 경계 스캔 셀 (13A 내지 13D) 내에 설정된다. 도 5 는 이 경계 스캔 셀 (13A 내지 13H) 의 일례를 나타낸 것이다. 도 5 에 나타낸 경계 스캔 셀은 MODE 단자 (21A), IN 단자 (21B), SDR 단자 (21C), SIN 단자 (21D), CDR 단자 (21E), UDR 단자 (21F), SOT 단자 (21G), OUT 단자 (21H), 선택기 (22 및 23) 및 플립플롭 (24 및 25) 을 구비한다.
선택기 (22 및 23) 는 G 단자에 "0" 의 선택신호가 인가되는 경우 영 (0) 단자에 인가된 데이터를 출력하며, G 단자에 "1' 의 선택신호가 인가되는 경우 일 (1) 단자에 인가된 데이터를 출력한다.
플립플롭 (24 및 25) 은 D 플립플롭이며, C 단자에 인가된 클록신호가 "0" 에서 "1" 로 변할 때 D 단자에 인가된 값을 판독하여, 이 판독된 값을 Q 단자를 통해 출력한다.
IN 단자 (21B) 에 입력된 데이터가 도 5 에 나타낸 경계 스캔 셀을 이용하여 OUT 단자 (21H) 로부터 출력되는 경우, 즉, 경계 스캔 셀 (13A 내지 13H) 이 정상 모드에서 사용되는 경우, MODE 단자 (21A) 의 선택신호는 "0" 으로 설정된다. 따라서, IN 단자 (21B) 에 인가된 데이터가 선택기 (22) 를 통해 OUT 단자 (21H) 에 출력되게 된다.
테스트 데이터가 경계 스캔 셀 (13A 내지 13H) 에 설정된 경우, 즉, 경계 스캔 셀 (13A 내지 13H) 이 시프트 모드에서 사용된 경우, SDR 단자 (21C) 의 선택신호가 "1" 로 설정된다. 따라서, 이전 단계에서 경계 스캔 셀로부터 SIN 단자 (21D) 에 인가된 테스트 데이터가 CDR 단자 (21E) 에 인가된 테스트 클록에 따라서 선택기 (23) 및 플립플롭 (24) 을 통해 SOT 단자 (21G) 로 출력되게 된다. 그 결과, 테스트 데이터가 경계 스캔 셀 (13A 내지 13H) 의 플립플롭 (24) 에 기억되므로, 테스트 데이터가 경계 스캔 셀 (13A 내지 13H) 에 설정되게 된다.
경계 스캔 셀 (13A 내지 13H) 에 설정된 테스트 데이터가 출력되는 경우, MODE 단자 (21A) 의 선택신호가 "1" 로 설정되게 된다.
그 후, UDR 단자 (21F) 의 테스트 클록이 그 값을 변화하는 경우, 플립플롭 (24) 의 테스트 데이터가 플립플롭 (25) 및 선택기 (22) 를 통해 OUT 단자 (21H) 에 출력되게 된다.
중앙처리장치 (3) 는 집적회로용 테스트 패턴을 발생시키는 방법에서 즉, 기억부 (2) 에 기억된 절차에 따라서 도 1 및 도 2 에 나타낸 처리시, LSI (10) 의 테스트 패턴을 발생시킨다. 중앙처리장치 (3) 는 도 1 및 도 2 에 나타낸 바와 같은 초기의 패턴 처리를 수행한다 (단계 S1). 단계 S1 에서, 테스트 데이터로부터의 초기 패턴은 경계 스캔 셀 (13A 내지 13H) 에 설정된다. 초기 패턴은 출력 버퍼 (15A 내지 15D) 의 변동에 따라서 전원 또는 접지에 잡음을 발생시키지 않거나, 또는 내부회로 (14) 내의 값에 영향을 미치지 않는 것일 수 있다. 즉, 초기 패턴에 따라서 출력 버퍼가 활성화되는 경우, 출력 버퍼가 잡음을 발생시키게 되면, 본 발명의 특성인 패턴의 변화에 따른 잡음이 감소되는 특성이 무효화 된다. 전술한 초기 패턴은 최종적으로 경계 스캔 셀 (13A 내지 13H) 의 플립플롭 (25) 에 기억되게 된다.
초기 패턴을 설정하는 방법은 시프트 동작이외에 다음과 같은 방법을 사용할 수도 있다. 즉, 경계 스캔 셀 (13A 내지 13H) 이 정상 모드에서 작동되며, IN 단자 (21B) 의 값이, 플립플롭 (24) 에 기억된 값을 사용하지 않고, 선택기 (23) 및 플립플롭 (24) 을 통해 플립플롭 (25) 에 기억된다. 따라서, 초기 패턴이 경계 스캔 셀 (13A 내지 13H) 에 설정될 수 있다.
초기 패턴을 설정하는 또 다른 방법은 다음과 같다. 즉, 인접하는 출력 버퍼에 상이한 출력값을 설정함으로써 잡음이 감소될 수 있다고 미리 판정된 경우, 경계 스캔 셀 (13A 내지 13H) 은 상이한 값들이 출력 버퍼 (15A 내지 15D) 에 출력될 수 있도록 하는 초기 패턴을 이용하는 시프트 모드로 설정된다. 이러한 초기 패턴을 이용함으로써, 초기 패턴의 설정에 의해 잡음이 갑자기 발생하게 되는 불이익이 없게 된다.
단계 S1 에서 초기 패턴의 설정이 완료될 때, 최초에 처리될 패턴의 번호로부터 "1" 을 감산함해서 얻은 값으로 변수 K 가 설정된다. 즉,
K = 시작 패턴 번호 - 1 이며,
여기서, 변수 K 는 현재 처리되는 테스트 패턴의 번호를 나타낸다. 중앙처리장치 (3) 에 의해 처리되는 테스트 패턴이 도 6 과 같은 경우, 중앙처리장치 (3) 는 3 개의 테스트 패턴을 처리한다. 패턴 번호 "0" 의 제 1 테스트 패턴은 "0000" 이다. 패턴 번호 "1" 의 제 2 테스트 패턴은 "1111" 이다. 패턴 번호 "2"를 갖는 제 3 테스트 패턴은 "0101" 이다.
단계 S2 에서의 처리 후, 중앙처리장치 (3) 는 단계 S2 에서의 변수 K를다음과 같이 설정한다 (단계 S3).
K = K + 1
단계 S3 에서의 처리 후, 중앙처리장치 (3) 는 단계 S3 의 변수 K 가 다음의 최종 테스트 패턴의 번호보다 큰지 작은지를 판정한다 (단계 S4). 단계 S4 에서, 변수 K 가 최종 테스트 패턴의 번호보다 더 큰 경우에는, 중앙처리장치 (3) 가 처리를 종료한다.
변수 K 가 최종 테스트 패턴의 번호 이하인 경우에는, 중앙처리장치 (3) 는 경계 스캔 셀 (13A 내지 13H) 의 시프트 모드를 이용하여 변화후의 테스트 패턴을 설정한다 (단계 S5). 도 6 에 나타낸 경우, 패턴 번호 "1" 의 테스트 패턴 "1111" 이 변화 후의 테스트 패턴으로 설정된다.
단계 S5 의 처리가 완료될 때, 중앙처리장치 (3) 는 경계 스캔 셀 (13A 내지 13H) 의 시프트 모드를 이용하여 변화전의 테스트 패턴을 설정한다 (단계 S6). 도 6 에 나타낸 경우, 패턴 번호 "0" 의 테스트 패턴 "0000" 이 변화전의 테스트 패턴으로 설정된다.
단계 S6 의 처리가 완료될 때, 중앙처리장치 (3) 는 출력이 변화된 출력 단자 (16A 내지 16D) 를 추출한다 (단계 S7). 도 6 에 나타낸 경우, 변화후의 테스트 패턴이 "1111" 이며 변화전의 테스트 패턴이 "0000" 이므로, 출력이 변화된 단자는 출력 단자 (16A 내지 16D) 이다.
단계 S7 에서의 처리 이후에, 중앙처리장치 (3) 는 테스트 패턴을 발생시키는 방법에서 사용되는 변수 m을 m = 0 으로 설정한다 (단계 S8). 변수 m은 출력이 변화된 출력 단자의 개수를 나타낸다. 예를들어, 변수가 "2" 인 경우, 제 1 및 제 2 출력 단자의 값이 변화되게 된다.
단계 S8 에서의 처리 이후에, 중앙처리장치 (3) 는 변수를 m = m + 1 로 설정한다 (단계 S9). 단계 S9 에서의 처리 이후에, 중앙처리장치 (3) 는 변수 m 이 단계 S7 에서 추출되어 변화된 값을 갖는 출력 단자의 개수보다 더 큰지를 판정한다 (단계 S10). 변수 m 이 단계 S10 에서 변화된 값을 갖는 출력 단자의 개수 이하인 경우에는, 중앙처리장치 (3) 는 출력 버퍼 (15A 내지 15D) 에서 규정된 잡음값으로부터 m 번째 출력 단자 (m 은 변수) 의 값이 변화된 경우 발생된 잡음의 값을 얻게 된다 (단계 S11). 도 6 에 나타낸 경우, 중앙처리장치 (3) 는 출력 버퍼 (15A 내지 15D) 의 값이 "0" 으로부터 "1" 로 변화된 경우 및 "1" 로부터 "0" 으로 변화된 경우, 각 잡음값을 10 으로 설정한다.
단계 S11 에서의 처리가 완료될 때, 중앙처리장치 (3) 는 단계 S11 에서 얻은 소정의 잡음값이 잡음값의 허용값보다 더 큰지를 판정한다 (단계 S12). 도 6 에 나타낸 경우, 중앙처리장치 (3) 는 단계 S12 에서 사용된 잡음에 대한 허용값을 "20" 으로 설정한다.
전술한 잡음값이 허용값 이하인 경우에는, 중앙처리장치 (3) 는 단계 S9 로 제어를 복귀시킨다. 잡음값이 단계 S12 에서 전술한 허용값보다 더 큰 경우에는, 값이 변화된 출력 단자의 제 1 내지 제 m-1 번째 출력 단자의 값이 변화된 테스트 패턴을 발생시키며, 이 테스트 패턴을 출력부 (4) 로 출력한다 (단계 S13). 그 후, 중앙처리장치 (3) 는 단계 S6 으로 제어를 복귀시킨다.
단계 S10 에서 변화된 출력을 갖는 출력 단자의 개수보다, 값 m 이 더 큰 경우에는, 중앙처리장치 (3) 는 값이 변화된 출력 단자의 제 1 내지 제 m-1 번째 출력 단자의 값이 변화된 테스트 패턴을 발생시키며, 이 테스트 패턴을 출력부 (4) 로 출력한다 (단계 S14). 그 후, 중앙처리장치 (3) 는 단계 S3 로 제어를 복귀시킨다.
도 6 에 나타낸 경우에, 단계 S10 내지 S13 의 처리시, 중앙처리장치 (3) 는 값이 변화된 출력 단자의 제 1 내지 제 m-1 번째 출력 단자의 값이 변화된 테스트 패턴을 발생시킨다. 즉, 중앙처리장치 (3) 는 도 6 에 나타낸 패턴 번호 "0" 의 테스트 패턴의 수정으로서 제 1 및 제 2 출력 단자 (16A 및 16B) 의 값이 변화된 테스트 패턴을 발생시키며, 이 발생된 패턴을 출력부 (4) 를 통하여 도 7 에 나타낸 패턴 번호 "1-1" 의 테스트 패턴으로 출력시킨다.
중앙처리장치 (3) 가 패턴 번호 "1-1" 를 갖는 테스트 패턴을 발생시킨 다음, 중앙처리장치 (3) 는 마찬가지로 단계 S6 내지 S14 에서 패턴 번호 "1-2"를 갖는 테스트 패턴을 발생시키며, 이 테스트 패턴을 최종적으로 단계 S14 에서 출력부 (4) 를 통해 출력시킨다.
다음으로, 중앙처리장치 (3) 는 단계 S3 로 제어를 복귀하며, 동시에 패턴번호 "1" 및 " 2"를 갖는 테스트 패턴을 처리한다. 그 결과, 패턴이 "0000" 에서 "1111" 로 변화되더라도, "1100" 의 테스트 패턴이 패턴들 사이에 개재된다. 따라서, 출력 버퍼가 동시에 변화하는 경우에 잡음이 발생되지 않도록 방지되게 된다. 또한, 지연소자 등이 회로에 추가되지 않으므로, 회로의 오버헤드 (overhead) 가 방지될 수 있다.
도 8 에 나타낸 LSI (30) 는 데이터베이스 (5) 내에 기억된 LSI 일 수 있다. 도 8 에서, 도 4 에서도 나타낸 부재에 대해서는 도 4 에서와 동일한 참조번호로 지칭하며, 그에 대한 상세한 설명은 생략하기로 한다. 도 8 에 나타낸 LSI (30) 는 도 4 에 나타낸 LSI 로부터 경계 스캔 셀 (13H) 을 제거함으로서 얻어지며, 이 LSI (30) 는 내부회로 (14) 로부터의 데이터를 출력 버퍼 (15D) 를 통해 출력 단자 (16D) 에 전달한다.
중앙처리장치 (3) 는 다음과 같이 LSI (30) 의 테스트 패턴을 발생시킨다. 즉, 전술한 경계 스캔 셀이 내부회로 (14) 와 출력 버퍼 (15D) 사이에 개재되지 않으므로, 중앙처리장치 (3) 는 출력 단자 (16A) 로부터의 출력값이 항상 변하는 것으로 가정하며, 도 1 및 도 2 에 나타낸 테스트 패턴 발생처리를 수행한다. 이 때, 중앙처리장치 (3) 가 테스트 패턴 발생처리를 수행하는 경우, 출력 단자 (16D) 는 배제되며, 도 1 및 도 2 에 나타낸 처리에서 출력 버퍼 (15D) 로부터의 잡음값은 단계 S12 에서의 허용값에서 제외된다.
예를들어, 도 9 에 나타낸 테스트 패턴이 처리되는 경우, 도 6 의 경우와 마찬가지로, 출력 버퍼 (15A 내지 15D) 의 출력값이 "0" 에서 "1" 로 변화하는 경우 및 이들이 "1" 에서 "0" 으로 변화하는 경우에, 중앙처리장치 (3) 는 단계 S11 에서 각 잡음값을 "10" 으로 설정한다. 또한, 중앙처리장치 (3) 는 단계 S12 에서의 허용잡음값을 "20" 으로 설정한다. 이러한 조건 및 출력 단자(16A) 의 출력값이 항상 변하는 조건하에서, 출력값이 반전될 수 있는 버퍼의 개수는 1 개이다.
따라서, 중앙처리장치 (3) 는 도 10 에 나타낸 바와 같이 값들이 하나씩 변화하는 "1-2" 의 패턴번호를 갖는 패턴 "110" 및 "1-1" 의 패턴번호를 갖는 패턴 "100"를, 도 9 에 나타낸 "1" 의 패턴번호를 갖는 패턴 "111" 과 "0" 의 패턴번호를 갖는 패턴 "000" 의 사이에 삽입한다. 또한, 중앙처리장치는 도 10 에 나타낸 바와 같이 "2-1" 의 패턴번호를 갖는 패턴 "011" 을, 도 9 에 나타낸 바와 같이 "2" 의 패턴번호를 갖는 패턴 "010" 과 "1" 의 패턴번호를 갖는 패턴 "111" 의 사이에 삽입시킨다.
따라서, 경계 스캔 셀이 출력 단자에 접속되지 않은 경우에도, 출력값이 반전될 수 있는 버퍼의 개수가 허용잡음값에 의해 제한되게 되어, 전원 및 접지에서 잡음이 발생되는 것이 방지되게 된다.
도 11 에 나타낸 LSI (40) 는 데이터베이스 (5) 내에 기억된 LSI 일 수 있다. 도 11 에 나타낸 LSI (40) 는 입력 단자 (11A 내지 11D), 입력 버퍼 (12A 내지 12D), 경계 스캔 셀 (13A 내지 13D), 입력 단자 (17), 입력 버퍼 (18), 경계 스캔 셀 (41A 내지 41D), 내부회로 (42), 쌍방향 버퍼 (43A 내지 43D) 및 쌍방향 단자 (44A 내지 44D) 를 구비한다. 도 11 에서, 도 4 에서도 나타낸 부재에 대해서는 도 4 에서와 동일한 참조번호로 지칭하며, 그에 대한 상세한 설명은 생략하기로 한다.
경계 스캔 셀 (41A 내지 41D) 의 EN 단자가 "1" 인 경우, 쌍방향 버퍼 (43A 내지 43D) 는 각기 경계 스캔 셀 (41A 내지 41D) 의 OUT 단자로부터 쌍방향 단자(44A 내지 44D) 로 데이터를 출력한다. 한편, 경계 스캔 셀 (41A 내지 41D) 의 EN 단자가 "0" 인 경우, 쌍방향 버퍼 (43A 내지 43D) 는 각기 경계 스캔 셀 (41A 내지 41D) 의 쌍방향 단자 (44A 내지 44D) 로부터 경계 스캔 셀 (41A 내지 41D) 로 데이터를 출력한다.
경계 스캔 셀 (41A 내지 41D) 은 쌍방향 단자 (44A 내지 44D) 로부터 쌍방향 버퍼 (43A 내지 43D) 를 통해 데이터를 입력 및 출력한다. 도 12 는, 경계 스캔 셀 (41A 내지 41D) 의 일례를 나타낸다. 도 12 에 나타낸 경계 스캔 셀은 MODE1 단자 (51A), INE 단자 (51B), SDR 단자 (51C), CDR 단자 (51D), UDR 단자 (51E), CHIPB 단자 (51F), INO 단자 (51G), SIN 단자 (51H), MODE2 단자 (51I), EXTB 단자 (51J), OUT1 단자 (51K), SOUT 단자 (51L), EN 단자 (51M), OUT 단자 (51N), INIO 단자 (51P), 선택기 (52A, 52B, 52C, 52D, 52E 및 52F), 플립플롭 (53A, 53B, 53C 및 53D) 및 AND 게이트 (54A) 를 구비한다.
도 12 에 나타낸 경계 스캔 셀을 이용하여, 내부회로 (42) 로부터 데이터가 쌍방향 버퍼로 출력되는 경우, MODE1 단자 (51A) 의 선택신호가 "0" 으로 설정된다. 따라서, INE 단자 (51B) 로부터의 인에이블 신호가 선택기 (52A) 를 통해 AND 게이트 (54A) 에 인가된다. 이 때, INE 단자 (51B) 의 인에이블 신호 및 CHIPB 단자 (51F) 의 모드신호에 따라서, AND 게이트 (54A) 는 EN 단자 (51M) 로부터 쌍방향 버퍼로 "1" 을 출력한다. 그 후, 이는 INO 단자 (51G) 에 인가된다. 내부회로 (42) 로부터의 데이터는 OUT 단자 (51N) 로부터 선택기 (52C) 를 통해 쌍방향 버퍼에 출력되게 된다.
쌍방향 버퍼 (43A 내지 43D) 로부터 데이터가 내부회로 (42) 에 출력되는 경우, EN 단자 (51M) 로부터 "0" 이 출력되며, MODE2 단자 (51I) 의 선택신호가 "0" 으로 설정되며, EXTB 단자 (51J) 의 모드신호가 "1" 로 설정된다. 따라서, INIO 단자 (51P) 에 인가된 쌍방향 버퍼로부터의 데이터가 OUT1 단자 (51K) 로부터 선택기 (52F) 및 AND 게이트 (54B) 를 통해 내부회로 (42) 에 출력되게 된다.
테스트 데이터가 경계 스캔 셀 (41A 내지 41D) 에 설정되는 경우, SDR 단자 (51C) 의 선택신호가 "1" 로 설정된다. 따라서, 이전 단계에서 경계 스캔 셀로부터 SIN 단자 (51H) 에 인가된 테스트 데이터가, CDR 단자 (51D) 에 인가된 테스트 클록에 따라서, 선택기 (52E), 플립플롭 (53C), 선택기 (52B) 및 플립플롭 (53A) 를 통해 SOUT 단자 (51L) 에 출력되게 된다. 따라서, 테스트 데이터가 경계 스캔 셀에 설정되게 된다.
테스트 데이터가 쌍방향 버퍼를 통해 쌍방향 단자에 출력되는 경우, MODE1 단자 (51A) 의 선택신호가 "1" 로 설정되며, 인에이블 신호 "1" 가 EN 단자 (51M) 로부터 출력되게 된다. 따라서, UDR 단자 (51E) 의 테스트 클록이 변화하더라도, 플립플롭 (53C) 의 테스트 데이터는 플립플롭 (53D) 및 선택기 (52C) 를 통해 OUT 단자 (51N) 에 출력되게 된다.
LSI (40) 의 경우, 중앙처리장치 (3) 는 LSI (40) 의 테스트 패턴을 다음과 같이 발생시킨다. 즉, 중앙처리장치 (3) 는, 도 1 및 도 2 에 나타낸 바와 같이, 쌍방향 버퍼 (43A 내지 43D) 가 쌍방향 단자 (44A 내지 44D) 에 데이터를 출력할 수 있는 경우에 테스트 패턴을 발생시킨다.
즉, 중앙처리장치 (3) 는 LSI (40) 의 테스트 패턴을 다음과 같이 발생시킨다. 쌍방향 버퍼 (43A 내지 43D) 는 각기 경계 스캔 셀 (41A 내지 41D) 의 OUT 단자로부터 쌍방향 단자 (44A 내지 44D) 에 데이터를 출력하며, 도 1 및 도 2에 나타낸 테스트 패턴 발생처리가 수행된다. 이 때, 경계 스캔 셀 (41A 내지 41D) 의 EN 단자가 "0" 에서 "1" 로 변화하는 경우, 변화 직전에 얻은 최종값에 기초하여 테스트 패턴 발생처리가 수행된다.
예를들어, 도 13 에 나타낸 테스트 패턴 발생처리가 수행되는 경우에 패턴번호가 "1" 에서 "0" 으로 변화하게 되면, 경계 스캔 셀 (41A 내지 41D) 의 EN 단자는 "0" 에서 "1" 로 변화된다. 이 때, 중앙처리장치 (3) 는, 패턴 번호가 "1" 인 경우에 경계 스캔 셀 (41A 내지 41D) 에 의해 수신된 값 "1111" 을 초기 패턴으로 이용하여, 도 1 및 도 2 에 나타낸 처리를 시작한다. 즉, 중앙처리장치 (3) 는, 도 14 에 나타낸 바와 같이, 패턴번호 "1" 이후에 패턴번호 "2-1" 의 "1111" 을 입력하여, 패턴번호 "2-1"부터 처리를 시작한다.
따라서, 중앙처리장치 (3) 는 패턴번호 "2-1" 이후에 패턴번호 "2-2" 및 "2-3" 으로서 각기 "0011" 및 "0000" 를 삽입한다. 이 처리후의 처리는 도 7 에 나타낸 처리와 동일하므로, 상세한 설명은 여기서 생략하기로 한다. 최종 패턴 "0101" 을 발생시킨 후, 쌍방향 단자 (44A 내지 44D) 의 값을 유지하기 위하여 EN 단자가 "0" 으로 변화되는 경우, 기억부 (2) 는 패턴번호 "5-1" 의 "0101" 를 입력한다.
따라서, 경계 스캔 셀 (41A 내지 41D) 이 사용된 경우에도, 출력값이 반전될 수 있는 버퍼의 개수는 허용잡음값에 의해 제한되게 되어, 전원 및 접지에서 잡음이 발생되는 것이 방지될 수 있다.
(제 2 실시형태)
이하, 본 발명의 제 2 실시형태에 대해 설명한다.
도 15 는 본 발명의 제 2 실시형태에 따른 집적회로용 테스트 패턴을 발생시키는 방법을 나타낸다. 도 16 은 집적회로용 테스트 패턴을 발생시키는 방법을 나타낸 순서도이다. 도 17 은 집적회로용 테스트 패턴을 발생시키는 방법의 그룹 처리과정을 나타낸다. 도 18 은 집적회로용 테스트 패턴을 발생시키는 방법에 의해 발생된 테스트 패턴의 일례이다.
제 2 실시형태는, 제 1 실시형태에 비해, 기억부 (2) 에 기억된 처리절차만 상이하므로, 여기서는 이점에 대해서만 설명한다. 이 실시형태의 기억부 (2) 에 기억된 절차에서, 중앙처리장치 (3) 는 다음과 같은 처리를 수행한다. 즉, 중앙처리장치 (3) 는 출력 단자를 그룹화한다 (단계 S21). 그룹내의 모든 출력 단자가 동시에 변화되더라도, 중앙처리장치 (3) 는 이 변화로부터 발생된 잡음값을 허용값의 범위내로 설정한다. 단계 S21 에서, 중앙처리장치 (3) 는, 예를들어, 도 4 에 나타낸 출력 단자 (16A 내지 16D) 를 도 17에 나타낸 바와 같이 제 1 및 제 2 그룹으로 그룹화한다.
단계 S21 의 처리가 완료될 때, 중앙처리장치 (3) 는 단계 S22 내지 S26 의 처리를 수행한다. 단계 S22 내지 S26 의 처리는 도 1 에 나타낸 단계 S1내지 S5 의 처리와 동일하므로, 여기서 설명은 생략한다.
단계 S26 의 처리가 완료될 때, 중앙처리장치 (3) 는 그룹을 지칭하는 변수 g 를 초기값 즉, g = 0 으로 설정한다 (단계 S27). 그 후, 중앙처리장치 (3) 는 단계 (S27) 의 변수 g 를 g = g + 1 로 설정한다 (단계 S28). 도 17 에 나타낸 경우, 단계 S28 에서, 변수 g 가 처리의 개시시 "1" 이므로, 제 1 그룹이 처리되게 된다.
단계 S28 의 처리가 완료될 때, 중앙처리장치 (3) 는 단계 S28 의 변수 g 가 단계 S21 에서 결정된 그룹의 개수보다 더 큰지를 판정한다 (단계 S29). 단계 S29 에서 그룹의 개수보다 변수 g 가 더 작은 경우에는, 중앙처리장치 (3) 는 단계 S26 에서 g 번째 그룹의 패턴을 변화 후의 패턴으로 대체시키며, 제 2 그룹의 패턴은 잔존시킨다 (단계 S30). 도 17 에 나타낸 경우, 중앙처리장치 (3) 는 "1" 의 패턴번호를 갖는 제 1 그룹의 패턴 "00" 을 패턴 "11" 으로 대체시키며, 제 2 그룹의 패턴 "00" 은 유지하여, 도 18 에 나타낸 바와 같이, "2-1" 의 패턴번호를 갖는 테스트 패턴 "1100" 을 발생시킨다.
단계 S30 의 처리가 완료될 때, 중앙처리장치 (3) 는 단계 S30 에서 발생된 테스트 패턴을 변화 이전에 설정된 패턴으로 설정하며 (단계 S31), 단계 S28 로 제어를 복귀시킨다. 도 17 에 나타낸 경우, 중앙처리장치 (3) 는, 도 18 에 나타낸 바와 같이, "2-1" 의 패턴번호를 갖는 테스트 패턴 "1100" 이후에 "2-2" 의 패턴번호를 갖는 테스트 패턴 "1111" 을 발생시킨다.
단계 S29 에서, 변수 g 가 그룹의 개수보다 더 커진 경우, 중앙처리장치 (3) 는 단계 S23 으로 제어를 복귀시킨다. 도 17 의 경우, 도 18 에 나타낸 바와 같이, 중앙처리장치 (3) 는 "3-1" 의 패턴번호를 갖는 테스트 패턴 "0111" 및 "3-2" 의 패턴번호를 갖는 테스트 패턴 "0101" 을 발생시킨다.
따라서, 본 발명에 따르면, 각 그룹마다 허용잡음값이 설정되며, 출력값도 각 그룹에 따라 변화되게 된다. 그 결과, 종래의 지연소자는 불필요하게 되며, 회로의 오버헤드가 감소되며, 출력 버퍼의 동시변화에 의해 발생되는 잡음이 발생되지 않게 된다.
이상 본 발명을 첨부된 도면을 참조하여 제 1 실시형태 및 제 2 실시형태에 대하여 설명하였다. 그러나, 구체적인 구성은 전술한 실시형태에 한정되는 것이 아니라, 본 발명의 특징의 범주내에서 설계상의 변경이 가해질 수도 있다. 예를들어, 도 14 에서, 모드의 전환시에 쌍방향 버퍼 (43A 내지 43D) 의 값의 변화에 문제가 없다면, "5-1" 의 패턴번호를 삽입시킬 필요는 없다.
전술한 바와 같이, 본 발명의 구성에 따르면, 허용값을 이용하여 출력 단자의 변화를 제한하여, 그룹내의 출력 단자의 변화만을 허용함으로써 테스트 패턴이 발생된다. 그 결과, 출력 버퍼의 동시변화에 의한 잡음의 발생이 방지될 수 있게 된다. 또한, 종래기술에서와 같은 지연소자는 전혀 불필요하게 되므로, 회로의 오버헤드의 발생이 방지될 수 있다.

Claims (5)

  1. 논리회로의 m (임의의 자연수) 개의 출력이 스캔 플립플롭 및 출력 버퍼를 통해 m 개의 출력 단자에 인가되는 경우 m 개의 스캔 플립플롭에 설정되는 테스트 패턴을 생성하는 집적회로용 테스트 패턴 생성방법에 있어서,
    상기 m 개의 스캔 플립플롭이 입력 패턴을 출력하는 경우 출력값이 변화된 출력 버퍼의 개수를 카운트하는 제 1 처리과정;
    각 출력버퍼의 출력값의 변화에 대하여 미리 정한 잡음값을 근거로, 상기 제 1 처리과정에서 카운트된 출력값이 변화하는 출력버퍼에 대한 잡음값의 총합을 구함으로써 총 잡음량을 구하는 제 2 처리과정;
    상기 제 2 처리과정에서 구한 총 잡음량이 허용잡음값의 범위이내로 되도록 상기 제 1 처리과정에서 체크된 것 중에서 출력 버퍼를 선택하는 제 3 처리과정; 및
    상기 제 3 처리과정에서 선택된 출력 버퍼의 출력값들이 변화하도록 입력 패턴을 수정하여 얻은 패턴을 테스트 패턴으로서 출력하는 제 4 처리과정을 구비하는 것을 특징으로 하는 집적회로용 테스트 패턴의 발생방법.
  2. 논리회로의 m (임의의 자연수) 개의 출력이 스캔 플립플롭 및 출력 버퍼를 통해 m 개의 출력 단자에 인가되는 동시에, 상기 논리회로의 n (임의의 자연수) 개의 출력이 스캔 플립플롭을 통하지 않고 출력 버퍼를 통해 n 개의 출력 단자에 인가되는 경우, m 개의 스캔 플립플롭에 설정되는 집적회로용 테스트 패턴을 발생시키는 방법에 있어서,
    상기 m 개의 스캔 플립플롭이 입력 패턴을 출력하는 경우 출력값이 변화된 출력 버퍼의 개수를 카운트하는 제 1 처리과정;
    각 출력버퍼의 출력값의 변화에 대하여 미리 정한 잡음값을 근거로, 상기 제 1 처리과정에서 카운트된 출력값이 변화하는 출력버퍼에 대한 잡음값의 총합 1 을 구하고, 또한 각 출력버퍼의 출력값의 변화에 대하여 미리 정한 잡음값을 근거로, 상기 n 개의 출력버퍼의 출력값이 변화하는 경우의 잡음값의 총합 2 를 구하고, 잡음값의 총합 1 에 잡음값의 총합 2 를 가산하여, 총 잡음량을 구하는 제 2 처리과정;
    상기 제 2 처리과정에서 체크된 총 잡음량을 허용잡음값의 범위이내로 되도록 상기 제 1 처리과정에서 체크된 출력 버퍼를 선택하는 제 3 처리과정; 및
    상기 제 3 처리과정에서 선택된 출력 버퍼의 출력값들이 변화하도록 입력 패턴을 수정하여 얻은 패턴을 테스트 패턴으로서 출력하는 제 4 처리과정을 구비하는 것을 특징으로 하는 집적회로용 테스트 패턴의 발생방법.
  3. 제 1 항에 있어서,
    상기 제 2 내지 제 4 처리과정은, 상기 제 4 처리과정이 완료될 때 상기 제 3 처리과정에서 선택되지 않은 상기 출력 버퍼에 대해 반복되는 것을 하는 집적회로용 테스트 패턴의 발생방법.
  4. 논리회로의 m (임의의 자연수) 개의 출력이 스캔 플립플롭 및 출력 버퍼를 통해 m 개의 출력 단자에 인가되는 경우 m 개의 스캔 플립플롭에 설정되는 집적회로용 테스트 패턴을 발생시키는 방법에 있어서,
    상기 스캔 플립플롭을 그룹으로 나누는 경우, 각 출력버퍼의 출력값의 변화에 대하여 미리 정한 잡음값을 근거로, 상기 그룹에 속하는 상기 출력버퍼의 출력치가 전부 변화하는 경우의 잡음값의 총합을 구함으로써 총 잡음량을 구하고, 상기 총 잡음량이 잡음의 허용치내에 들어 가도록, 상기 스캔 플립플롭을 그룹으로 나누는 제 1 처리과정;
    상기 제 1 처리과정에서 발생된 그룹들 중에서 1 개의 그룹을 선택하는 제 2 처리과정;
    상기 n 개의 스캔 플립플롭이 입력 패턴을 출력하는 경우, 상기 제 2 처리과정단계에 의해 선택된 그룹에 속하는 출력 버퍼의 출력값만이 변화하며 상기 제 2 처리과정에서 선택되지 않은 그룹에 속하는 출력 버퍼의 출력값은 그대로 한 패턴을, 테스트 패턴으로서 출력하는 제 3 처리과정; 및
    상기 제 3 처리과정이 완료될 때 상기 제 2 처리과정에서 선택되지 않은 그룹에 대하여 상기 제 2 내지 제 3 처리과정를 반복하는 제 4 처리과정을 구비하는 것을 특징으로 하는 집적회로용 테스트 패턴의 발생방법.
  5. 제 2 항에 있어서,
    상기 제 2 내지 제 4 처리과정은, 상기 제 4 처리과정이 완료될 때 상기 제 3 처리과정에서 선택되지 않은 상기 출력 버퍼에 대해 반복되는 것을 특징으로 하는 집적회로용 테스트 패턴의 발생방법.
KR10-1999-0007765A 1998-03-10 1999-03-09 집적회로용 테스트 패턴을 발생시키는 방법 KR100366833B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP05818898A JP3199019B2 (ja) 1998-03-10 1998-03-10 集積回路のテストパターン生成方法及びテストパターン生成プログラムを記録した機械読取り可能な記録媒体
JP98-58188 1998-03-10

Publications (2)

Publication Number Publication Date
KR19990077716A KR19990077716A (ko) 1999-10-25
KR100366833B1 true KR100366833B1 (ko) 2003-01-06

Family

ID=13077056

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0007765A KR100366833B1 (ko) 1998-03-10 1999-03-09 집적회로용 테스트 패턴을 발생시키는 방법

Country Status (4)

Country Link
US (2) US20020046376A1 (ko)
JP (1) JP3199019B2 (ko)
KR (1) KR100366833B1 (ko)
CN (1) CN1117989C (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101476676B (zh) 2002-06-20 2011-04-06 永备电池有限公司 发光二极管照明装置
KR100645043B1 (ko) 2004-09-08 2006-11-10 삼성전자주식회사 테스트용 버퍼를 구비한 불휘발성 메모리 장치 및 그것의테스트 방법
US10345338B2 (en) * 2015-09-21 2019-07-09 Biosense Webster (Israel ) LTD. Test cap for a cable
CN109581206B (zh) * 2018-12-19 2020-12-11 天津大学 基于部分扫描的集成电路故障注入攻击模拟方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3949162A (en) * 1974-02-25 1976-04-06 Actron Industries, Inc. Detector array fixed-pattern noise compensation
JP2646673B2 (ja) 1988-06-23 1997-08-27 日本電気株式会社 テストパターン作成方式
JPH0259679A (ja) 1988-08-25 1990-02-28 Fujitsu Ltd メモリ内蔵lsi用制御回路の試験方法
US5831990A (en) * 1996-06-19 1998-11-03 Hewlett-Packard Company Test-mode control for dynamic logic gates
US5812561A (en) * 1996-09-03 1998-09-22 Motorola, Inc. Scan based testing of an integrated circuit for compliance with timing specifications
JP2996213B2 (ja) * 1997-08-28 1999-12-27 日本電気株式会社 テスト容易化設計方法および装置、情報記憶媒体、集積回路装置
JP3944298B2 (ja) * 1998-02-16 2007-07-11 株式会社ルネサステクノロジ 半導体集積回路

Also Published As

Publication number Publication date
JP3199019B2 (ja) 2001-08-13
US20040153930A1 (en) 2004-08-05
CN1117989C (zh) 2003-08-13
JPH11258314A (ja) 1999-09-24
US7024606B2 (en) 2006-04-04
CN1228539A (zh) 1999-09-15
KR19990077716A (ko) 1999-10-25
US20020046376A1 (en) 2002-04-18

Similar Documents

Publication Publication Date Title
US4635261A (en) On chip test system for configurable gate arrays
US5090035A (en) Linear feedback shift register
US6070260A (en) Test methodology based on multiple skewed scan clocks
JP2000507702A (ja) プログラム可能な遅延を与える装置および方法
US6484294B1 (en) Semiconductor integrated circuit and method of designing the same
EP0855651A2 (en) Method of design for testability and method of test sequence generation
US4829237A (en) Circuit device having a self-testing function and a testing method thereof
US5703884A (en) Scanning pass test circuit
KR100366833B1 (ko) 집적회로용 테스트 패턴을 발생시키는 방법
US5043985A (en) Integrated circuit testing arrangement
US6687890B2 (en) Method for layout design and timing adjustment of logically designed integrated circuit
US5790439A (en) Reduced test time finite impulse response digital filter
US6654939B2 (en) Method of designing logic circuit, and computer product
US6370663B1 (en) Semiconductor integrated circuit
US6075936A (en) Logic circuit simulation apparatus having cycle-based simulator for simulating circuits including multi-cycle paths
US5726998A (en) Partial scan path test of a semiconductor logic circuit
US5410247A (en) Circuit device having a test function for checking circuit operation
EP1061375A1 (en) Semiconductor device including macros and its testing method
US20020199145A1 (en) Semiconductor integrated circuits built therein scan paths
US6757877B2 (en) System and method for identifying and eliminating bottlenecks in integrated circuit designs
US5793777A (en) System and method for testing internal nodes of an integrated circuit at any predetermined machine cycle
US20060242507A1 (en) Achieving Desired Synchronization at Sequential Elements While Testing Integrated Circuits Using Sequential Scan Techniques
US6898748B1 (en) Test circuit method and apparatus
US6553528B1 (en) Test circuit for semiconductor integrated circuit
JP3022017B2 (ja) 集積回路

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: 20111118

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20121121

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee