[go: up one dir, main page]

KR0165104B1 - 검사 버퍼/레지스터 - Google Patents

검사 버퍼/레지스터 Download PDF

Info

Publication number
KR0165104B1
KR0165104B1 KR1019890012884A KR890012884A KR0165104B1 KR 0165104 B1 KR0165104 B1 KR 0165104B1 KR 1019890012884 A KR1019890012884 A KR 1019890012884A KR 890012884 A KR890012884 A KR 890012884A KR 0165104 B1 KR0165104 B1 KR 0165104B1
Authority
KR
South Korea
Prior art keywords
output
test
input
data
cells
Prior art date
Application number
KR1019890012884A
Other languages
English (en)
Other versions
KR900005472A (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 KR900005472A publication Critical patent/KR900005472A/ko
Application granted granted Critical
Publication of KR0165104B1 publication Critical patent/KR0165104B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • 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/318541Scan latches or cell details
    • 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)
  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)

Abstract

내용 없음.

Description

검사 버퍼/레지스터
제1도는 내부 응용 논리 회로의 경계(boundary)에 배치된 검사 셀(test cells)을 갖고 있는 집적 회로의 회로도.
제2도는 제1도의 검사 셀의 바람직한 실시예의 회로도.
제3도는 집적 회로상의 검사 셀들간의 상호접속을 나타내는 회로도.
제4a도는 양방향(bidirection) 검사 셀의 바람직한 실시예의 회로도.
제4b도는 집적 회로내에 배치된 제4a도의 양방향 검사 셀의 회로도.
제5도는 본 발명의 검사 셀의 실시예를 도시한 도면.
제6도는 비교 논리 회로(compare logic circuitry)를 갖고 있는 기본 검사 셀(basic test cell)을 포함하는 검사 회로를 도시한 도면.
제7도는 PRPG/PSA 논리 회로를 갖고 있는 기본 검사 셀을 포함하는 검사 회로를 도시한 도면.
제8도는 PRPG/PSA 논리 회로 및 프로그램 가능한 다항 탭 논리 회로(programmable polynomial tap logic circuitry)를 갖고 있는 기본 검사 셀을 포함하는 검사 회로를 도시한 도면.
제9a도 및 제9b도는 프로그램가능한 다항 탭 논리 회로를 갖고 있는 검사 회로들사이의 상호접속을 나타내는 회로도.
제10도는 PRPG/PSA 검사 회로를 갖고 있는 양방향 검사 셀을 도시한 도면.
제11도는 PRPG/PSA 검사 회로 및 프로그램가능한 다항 탭 회로를 갖고 있는 양방향 검사 셀을 도시한 도면.
제12도는 표준 조합 논리 회로(standard combinational logic)로의 입력을 관찰하고, 이로부터의 출력을 제어하기 위한 검사 장치를 사용하는 회로를 도시한 도면.
제13도는 제12도의 검사 장치(test device)의 바람직한 실시예의 회로도.
제14도는 PSA 동작을 수행하는 검사 장치의 회로도.
제15도는 PSA 및 PRPG 동작을 동시에 수행하는 검사 장치의 회로도.
* 도면의 주요부분에 대한 부호의 설명
10 : IC 12,30,240,242 : 검사 셀
14 : 응용 논리부 17 : 제어 버스
18,38,41 : 버퍼 22,28,32,34,36 : 멀티플렉서
24 : 플립-플롭 26 : 래치
40 : I/O 핀
108,110,118,120,128,132,134,150,152,154,162,164,166 : 인버터
142,160,176,178,184,186,190,192 : N 채널 트랜지스터
170,172,184,182,188 : P 채널 트랜지스터 200 : 비교기 논리부
202 : XOR 게이트 204,210,212,218 : NAND 게이트
206 : PSA 논리부 208 : OR 게이트
216 : NOR 게이트 220a-220d : 검사 회로
226,228 : 검사 분할 장치 232,234 : 검사 회로 레지스터
244 : 스캔 바이패스 레지스터 246 : 명령어 레지스터
258 : 카운트 인에이블 논리부
본 발명은 집적 회로에 관한 것으로, 특히 경계 스캔 검사 구조(boundary scan test structure)를 제공하기 위해 집적 회로내에 사용된 검사 셀에 관한 것이다.
기판(board) 상호접속 기술, 표면 장착 패키징(surface mount packaging) 및 IC 밀도의 진보로 인해, 기판 레벨 검사 능력(board level testability)이 점차적으로 복잡해지고 있다. 표면 장착 패키징 기술과 함께 매입 와이어 상호접속 기술(buried wire interconnects) 및 양면(double-sided) 기판과 같은 개량된 기판 상호접속 기술의 조합으로 인해 기판의 인서키트(in-circuit) 검사를 하는데 문제점이 발생하게 되었다. 가장 일반적인 기판 레벨 검사 방법인 인서키트 검사 방법은 회로 기판의 노드를 물리적으로 탐지할(probe) 수 있는 능력에 따라 좌우된다. 기판 밀도(기판상의 IC의 수)가 증가함에 따라, 물리적 액세스(physical access)가 부족해져서 종래의 기술을 사용하여 기판을 탐지하는 공정은 더욱 어려워지게 되었다.
IC 밀도 (칩상의 논리회로의 량)가 증가함에 따라, 적절한 검사에 필요한 검사 패턴의 수도 증가한다. 인서키트(in-circuit) 검사 기술은 회로내의 특정 IC를 검사하기 위해 입력 조건을 강제로 제공하는 역-가동(back-driving) 기술에 의존한다.이러한 검사 기술을 기판상의 하나의 IC에 적용할 때, 출력 버퍼가 동일한 노드에 결합되는 근처의 IC를 손상시킬 수 있다. 근처의 IC를 손상시킬 가능성은 검사 수행에 걸리는 시간에 따라 증가하고, 검사 시간은 적용되는 검사 패턴의 수에 직접적으로 관련되고 따라서, IC 밀도에 관련된다.
그러므로, 기판상의 특정 IC로의 엑세스를 제공하고, 근처의 IC를 손상시키지 않고도 특정 IC를 검사할 수 있는 검사 구조에 대한 요구가 본 기술 분야에서 증가되고 있다.
본 발명에 따르면, 경계 스캔 검사 시스템은 종래의 검사 시스템에 관련된 단점 및 문제점을 거의 제거할 수 있다.
본 발명의 경계 스캔 검사 시스템은 경계 스캔 검사 능력을 갖고 있지 않은 조합 논리부(combinational logic)로의 입력을 관찰하고, 이로부터의 출력을 제어하기 위해 경계 스캔 검사 능력을 갖는 레지스터, 래치, 송수신기(transceiver) 및 버퍼와 같은 분할 장치(partitioning devices)를 제공한다. 각각의 검사 장치는 검사 장치로의 입력을 관찰하고, 내부 논리부 (레지스터, 래치, 버퍼 또는 송수신기)로의 출력을 제어하는 입력 검사 레지스터를 포함한다. 내부 논리부로부터의 출력을 관찰하고, 조합 논리부로의 출력을 제어하기 위해 출력 검사 레지스터가 제공된다. 이와 마찬가지로, 검사 셀은 클럭 신호와 같이 제어 목적으로 검사 장치에 입력되는 신호를관찰하고 제어하는데 사용된다. 검사 장치는 기호 분석(signature analysis), 의사-무작위 패턴 발생(pseudo-random pattern generation), 및 다항 탭 능력(polynomialtap capabilities)과 같은 향상된 기능을 포함할 수 있다.
입력 및 출력 검사 레지스터는 제어 버스에 의해 제공된 제어 신호에 응답하여 다수의 입력을 제1메모리에 접속시키는 제1멀티플렉서를 각각 포함하는 다수의 검사 셀을 포함한다. 제1메모리의 출력은 제2메모리에 접속된다. 제2메모리의 출력은 한개 이상의 다른 입력과 함께 제2멀티플렉서로의 입력에 접속된다. 제2멀티플렉서는 제어 버스상의 다른 제어 신호에 의해 제어된다. 제1메모리의 출력 및 제2메모리의출력은 입력으로서 제1멀티플렉서에 접속된다.
본 발명은 종래 기술보다 우수한 몇가지 기술적 장점을 제공한다. 검사 능력이 버퍼, 래치, 레지스터 및 송수신기와 같은 종래의 부품과 관련하여 제공되기 때문에, 검사 특징이 기존의 설계에 용이하게 이용될 수 있다. 더욱이, 검사 장치는 기존 설계내에서 최소의 오버헤드(overhead)로 사용될 수 있다. 더욱이 검사 장치는 조합 논리부의 정상 동작과 동시에 검사 기능을 수행할 수 있으므로, 검사 시간을 줄일 수 있다.
이하 첨부 도면을 참조하여 본 발명의 장점에 대해서 상세하게 설명하겠다.
유사한 부분에는 유사한 참조 번호를 붙인 제1도 내지 제5도를 참조하면 본 발명의 바람직한 실시예를 쉽게 이해하게 된다.
제1도는 집적 회로(IC; 10)의 응용 논리부(14)를 통과하는 데이타를 제어하고 관찰하기 위해 경계에 배치된 검사 셀(12a 내지 12h)을 갖고 있는 IC(10)의 블럭도이다. 집적 회로(10)은 집적 회로(10)과 다른 집적 회로 사이에 전기적인 접속을 제공하는 다수의 핀(16)으로 구성된다. 집적 회로(10)은 입력 신호(IN1,IN2,IN3 및 IN4)를 수신하는 4개의 핀, 및 출력 신호(OUT1,OUT2,OUT3 및 OUT4)를 수신하는 4개의 핀으로서 도시되어 있다. 칩으로의 다른 신호는 직렬 데이타 입력(SDI), 제어 버스(17), 및 직렬 데이타 출력(SDO)를 포함한다. 입력 신호(IN1-IN4)는 검사 셀(12a-12d)로 각각 출력이 연결되어 있는 입력 버퍼(18)에 접속된다. 각각의 검사 셀(12a-12h)는 직렬 데이타 입력(SDI1-8) 및 직렬 데이타 출력(SDO1-8)을 갖고 있다. 도시된 구조 내에서, IC(10)으로의 SDI 입력은 검사 셀(12a)의 SDI1에 접속되고, 후속 셀(12b-12h)의 SDI 입력은 이전 셀의 SDO를 수신한다. 그러므로, SDO1은 SDI2에 접속되고, SDO2는 SDI3에 접속되고, 다른 데이타 입력들도 이런 식으로 된다. SDO8은 IC(10)의 SDO 핀에 접속된다. 제어 버스(17)은 각각의 검사 셀(12a 내지 12f)에 병렬로 접속된다.
각각의 검사 셀은 데이타 입력(DIN) 및 데이타 출력 (DOUT)을 포함한다. 입력 검사 셀(12a-12d)에 있어서, DIN은 각 버퍼(18)의 출력에 접속되고, DOUT는 응용 논리부(14)의 입력에 접속된다. 응용 논리부(14)의 입력은 입력(IN1-IN4)에 대응하여 참조 번호(IN1'-IN4')를 붙인다. IN1' 내지 IN4'는 제공된 검사 구조로의 입력이 아니라 칩으로의 입력이다.
응용 논리부(14)로부터의 출력에는 참조 번호(OUT1',OUT2',OUT3' 및 OUT4')를 붙인다. 응용 논리부의 출력(OUT1' 내지 OUT4')은 출력 검사 셀(12e-12h)의 데이타 입력(DIN)에 접속된다. 출력 검사 셀 (12e-12h)의 데이타 출력(DOUT)은 출력 신호(OUT1-OUT4)에 대응하는 출력 버퍼(20)에 접속된다.
검사 셀(12a-12h)은 집적 회로(10)내에 검사 기능의 중요한 토대를 제공한다. SDI는 검사 셀(12a)를 통해 IC(10)에 제공되고, 각각의 후속 셀(12b-12h)로 진행하고. 결국 SD08을 통해 검사 셀(12h)로부터 출력된다. 직렬 데이타 경로는 각각의 검사셀(12a-12h)로 또한 검사 셀로부터 데이타를 쉬프트시키는데 사용된다.
제2도 및 제3도에 상세하게 도시된 제어 버스는 검사 중에 각각의 검사 셀(12a-12h)을 동작시키기 위한 신호를 제공한다. 검사 모드인 경우, 검사 셀(12a-12h)은 IC(10)의 내외로 데이타가 정상적으로 흐르지 못하게 한다. 검사 모드에서, 각각의 검사 셀(12a-h)은 출력에 부착된 논리 노드를 제어하고, 입력에 부착된 논리 노드를 관찰한다. 예를 들어, 제1도에서, 4개의 입력(IN1-IN4)에 부착된 검사 셀(12a-12d)는 IN1-IN4 입력상의 논리 레벨을 관찰하고, IN1'-IN4' 출력상의 논리 레벨을 제어한다. 이와 마찬가지로, 4개의 출력에 접속된 검사 셀(12e-12h)는 OUT1'-OUT4' 입력상의 논리 레벨을 관찰하고, OUT1-OUT4 출력상의 논리 레벨을 제어한다.
제2도에는 개별적인 검사 셀(12)의 블록도가 상세하게 도시되어 있다. 검사 셀(12)는 3개의 데이타 입력, 즉 데이타 입력(DIN), 관찰 데이타 입력(ODI), 및 직렬 데이타 입력(SDI)를 갖고 있다. 2개의 데이타 출력으로는 데이타 출력(DOUT) 및 직렬 데이타 출력(SDO)가 제공된다. 제어 버스(17)은 5개의 신호, 즉 데이타 입력 멀티플렉서 선택 신호(A 및 B), 레지스터 클럭 신호(CLK), 래치 인에이블 신호(HOLD), 및 데이타 출력 멀티플렉서 선택 신호(DMX)를 포함한다.
제1멀티플렉서(22)는 D-형 플립 플롭(24)의 출력 및 D-형 래치(26)의 반전된 출력과 함께 ODI 및 SDI 신호를 수신한다. 멀티플렉서(22)의 출력은 플립-플롭(24)의 입력에 접속된다. CLK 신호는 플립-플롭 클럭 입력에 접속된다. 플립-플롭(24)의 출력은 래치(26)의 입력에 접속되어, SDO 신호를 제공한다. 래치(26)의 출력은 DIN 신호와 함께 제2멀티플렉서(28)의 입력에 접속된다. HOLD 신호는 래치 인에이블에 접속된다. 멀티플렉서(28)의 출력은 DOUT 신호를 제공한다. 멀티플렉서(28)은 DMX 신호에 의해 인에이블된다.
동작시에, 4 : 1 멀티플렉서(22)는 플립-플롭(24)의 입력을 4개의 가능한 소스, 즉ODI, SDI, 플립-플롭(24)의 출력 또는 래치(26)의 반전된 출력중 한 소스로부터 선택할 수 있도록 한다. 래치(26)은 HOLD 입력에 의해 인가된 논리 레벨에 따라 플립-플롭(24)의 출력을 전달하거나, 현재 상태를 유지하도록 제어될 수 있다. 2 : 1 멀티플렉서(28)는 DMX 입력에 의해 인가된 논리 레벨에 따라, DOUT 출력이 DIN 입력 또는 래치(26)의 출력에 의해 구동되게 한다. 4 : 1 멀티플렉서(22), 플립-플롭(24), 래치(26) 및 2 : 1 멀티플렉서의 조합에 의해 검사 셀(12)은 4개의 동기 모드(synchronous modes), 즉 로드(load), 쉬프트(shift), 토글(toggle) 및 아이들(idle) 모드로 동작하게 된다.
로드 모드에서, 검사 셀(12)는 멀티플렉서(22)를 통해 ODI 입력의 논리 상태를 D 플립-플롭(24)내로 클럭시킨다. ODI 입력은 검사 중에 관찰될 신호에 결합되어 있고, 대부분의 경우에, ODI 입력은 검사 셀의 DIN 입력에 접속 되는 것과 동일한 경계 신호에 연결될 수 있다. 그러나, ODI는 다른 신호에도 역시 접속될 수 있다. 로드 동작을 발생시키기 위해, ODI 입력이 4 : 1 멀티플렉서(22)를 통해 플립-플롭(24)에 접속될 수 있도록 A 및 B 입력은 선정된 레벨(predetermined level)로 설정된다. 보통, 래치(26)로의 HOLD 입력은 래치 출력이 로드 동작중에 현재 상태를 유지하도록 로우(low) 상태로 된다.
쉬프트 모드에서, 검사 셀은 SDI 입력의 논리 상태를 플립-플롭(24)내로 클럭시키고, 이 논리 상태를 SDO 출력을 통해 출력시킨다. 쉬프트 모드는 경계 스캔 경로 내의 검사 셀(12)이 상호접속되어 직렬 데이타가 경계 스캔 경로의 내외로 쉬프트될 수 있도록 한다. 경계 스캔 구조에서, 검사 셀의 SDI 입력은 제1도에 도시된 바와 같이 선행 검사 셀의 SDO 출력에 결합된다. 쉬프트 동작을 발생시키기 위해, A및 B 입력은 SDI 입력을 4 : 1 멀티플렉서를 통해 플립-플롭(24)에 접속될 수 있도록 선정된 레벨로 셋트된다. 보통, 래치(26)으로의 HOLD 입력은 래치 출력이 쉬프트 동작중에 현재 상태를 유지하도록 로우 상태로 유지된다.
토글 모드에서, 플립-플롭(24)의 출력은 SDI 또는 ODI 입력 조건에 상관없이 CLK입력의 레이트(rate)로 2개의 논리 상태들 사이에서 토글된다. 이 구조에서, HOLD 입력은 래치(26)을 인에이블시키기 위해 하이 논리 레벨로 설정 되고, A 및 B 입력은 래치(26)의 반전된 출력이 플립-플롭(24)으로 진행되도록 설정된다. 제어 입력이 이와 같은 방식으로 설정되면, 피드백 경로는 플립-플롭(24)의 출력에서 래치(26)의 입력까지 또한 래치(26)의 반전된 출력에서 플립-플롭(24)의 입력까지 형성된다. 래치(26)의 반전된 출력에서 데이타가 반전하기 때문에, 각 CLK 입력마다 반대의 논리 상태가 플립-플롭(24)내로 클럭되어, 토글 효과를 발생시킨다.
아이들 모드에서, SDI 또는 ODI 입력 조건에 상관없이 CLK가 액티브 상태인 동안 검사셀의 현재 상태가 유지된다. 이 상태에서, 플립-플롭(24)의 출력은 4 : 1멀티플렉서를 통과하므로, 플립-플롭(24)의 입력은 출력에 접속되어, 플립-플롭(24)의 현재상태가 모든 클럭 입력마다 리프레쉬(refresh)된다.
검사 셀(12)는 정상(normal)모드 또는 검사(test)모드일 수 있다. 정상모드에서, 검사 셀(12)는 입력(IN1-IN4) 및 출력(OUT1-OUT4)가 자유롭게 전달되는 데이타 경로를 제공한다. 정상 모드는 DIN 신호가 멀티플렉서(28)을 통해 DOUT로 통과하도록 DMX 신호를 설정함으로써 달성된다. 정상 모드에서, 검사 셀(12)는 IC(10)의 정상 동작을 방해하지 않고도 4개의 동기 모드(로드,쉬프트,아이들 또는 토글 모드)로 동작할 수 있다.
제어 신호는 검사 셀(12)이 로드 동작을 실행하게 하도록 A 및 B 입력을 통해 발생될 수 있다. 로드 동작은 검사 셀(12)가 ODI 입력상에 나타나는 논리 레벨을 포착(capture)하게 한다. 데이타가 포착되었을 때, 이것을 쉬프트 동작을 수행함으로써 검사 셀(12)의 외부로 쉬프트될 수 있다. 로드 동작은 CLK 입력과 동시에 발생한다. 쉬프트 동작에 이어서 검사 셀(12)는 전형적으로 아이들 모드로 복귀한다. 이 동작은 검사 셀(12)이 IC의 입력 및/또는 출력 경계 신호를 샘플링하고, IC의 정상 동작중에 검사를 위해 샘플 데이타 출력을 쉬프트시키게 한다. 정상 동작중에 경계 데이타를 샘플링하는 능력에 의해 검사 셀(12)이 고가의 검사 장비 및 외부 검사 프로브(probe)를 사용하지 않고도 회로 기판상의 다수의 IC의 기능적인 상호 작용을 변화시킬 수 있다.
또한, 정상 동작중에, 검사 셀(12)이 IC의 정상 입력/출력 경계 경로 내로 선정된 검사 데이타 비트를 삽입시키도록 제어신호가 DMX 입력을 통해 발생될 수 있다. 삽입될 검사 데이타 비트는 쉬프트 동작을 통해 플립-플롭(24)내로 쉬프트된다. 래치(26)로의 HOLD 입력은 플립-플롭내의 검사 데이타가 래치를 통해서, 2 : 1멀티플렉서(28)에 입력될 수 있도록 하이 상태로 설정된다. 검사 데이타를 삽입하기 위해, DMX 입력은 멀티플렉서가 래치(26)의 출력으로부터의 검사 데이타를 DOUT 출력으로 진행시키게 하는 레벨로 설정된다. 검사 데이타가 삽입된 후에, DMX 입력은 2 : 1 멀티플렉서(28)가 정상 데이타를 DOUT로 DIN으로부터의 진행시키도록 스위치된다.
정상 동작중에 검사 데이타를 삽입하는 능력은 검사 셀이 회로내의 한 개 이상의 IC의 정상 동작(normal behavior)을 변형시키게 한다. 삽입 능력의 한가지 특정한 용법은 폴트(fault) 신호가 검출 및 정정될 수 있는지 알기 위해 회로 기판의 한 개이상의 IC의 입력 및/또는 출력 경계내로 폴트 신호를 전달하는 것이다. 정상 동작 중에 샘플 및 삽입 검사 기능을 수행하기 위해서, 검사 셀(12)는 제어 버스(17)을 통해 제어 신호를 적절한 시점에 수신하여야 한다.
또한, 검사 셀(12)는 정상 모드에서 IC(10)의 정상 동작을 방해하지 않고도 자체-검사를 수행될 수 있다. 쉬프트 동작은 플립-플롭(24)을 알려진 상태로 초기화하도록 수행할 수 있다. 쉬프트 동작 다음에, 한 CLK 전이 동안 검사 셀(12)이 토글 모드로 들어가도록 하기 위해 제어신호가 발생된다. 이 전이중에, 플립-플롭은 현 상태의 반대상태로 로드된다. 이 데이타의 반전에 이어, 플립-플롭(24)의 내용을 검색하고(retrieve), 반전 동작을 확인하기 위해 또다른 쉬프트 동작이 수행된다. 이 검사에 의해 전체 경계 스캔 경로의 완전성(integrity)과 함께 각각의 검사 셀의 플립-플롭(24),4 : 1멀티플렉서(22), 및 래치(26) 각각의 결합된 동작이 확인된다.
검사 모드에서, 검사 셀(12)은 DIN 입력으로부터 DOUT 출력으로의 정상적인 데이타의 흐름은 금지시킨다. 검사 모드는 래치(26)의 출력을 DOUT 출력에 접속시키도록 DMX 입력의 레벨을 설정함으로써 진입된다. 보통, 검사 모드로 들어가기 전에, 검사 셀(12)는 쉬프트 패턴을 통해 초기 검사 패턴을 출력시키도록 준비되어 있다. 또한, 검사 셀(12)는 대체로 아이들 상태이고, D 래치로의 HOLD 입력은 현재 출력이 유지되도록 로우 상태로 설정된다.
검사 모드에서, 로드 동작이 수행되어, 검사 셀(12)가 ODI 입력상에 나타나는 논리 레벨을 포착하도록 한다. 로드 동작은 CLK 입력과 동시에 발생한다. 로드 동작 중에, HOLD 입력은 로우 상태로 설정되므로, D 래치는 현재 상태를 유지한다. 이와 마찬가지로, DOUT 출력은 래치 출력에 의해 구동되므로 현재 상태를 유지한다.
로드 동작에 뒤이어, 쉬프트 동작이 수행되어 검사 셀(12)이 플립-플롭(24)을 통해 데이타를 SDI 입력에서 SDO 출력으로 쉬프트시키도록 한다. 쉬프트 동작은 검사 셀이 이전 로드 동작중에 포착된 데이타를 외부로 쉬프트시키고, DOUT 출력으로 인가하기 위해 다음 출력 검사 데이타를 내부로 쉬프트시키도록 한다. 쉬프트 동작은 CLK 입력과 동시에 발생한다. 쉬프트 동작 동안, HOLD 입력은 로우 상태가 유지되므로, 래치(26)의 출력은 현재 상태를 유지한다. 이와 마찬가지로, DOUT 출력은 래치 출력에 의해 구동되므로 현재 상태를 유지한다.
로드 및 쉬프트 동작 순서에 이어, 검사 셀(12)는 아이들 모드로 복귀하고, HOLD 입력은 하이 상태로 설정되므로, 래치(26)은 플립-플롭(24)내에 존재하는 새로운 출력 검사 데이타로 갱신된다. 래치(26)가 갱신되면, 새로운 출력 검사 데이타는 DOUT 출력에 인가된다. 갱신 동작 다음에, HOLD 입력은 로우 상태로 설정되므로, 래치(26)은 후속하는 로드 및 쉬프트 동작 동안 현재 상태를 유지한다.
HOLD,로드,쉬프트, 및 갱신/인가 순서는 IC 검사 회로에 부착된 내부 및 외부 논리 소자의 경계 스캔 검사 동안 반복된다. 출력 검사 제어를 위한 메모리 소자와 [즉, 래치(26)] 및 입력 검사 관찰 및 시프팅을 위한 메모리 소자를 [즉, 플립-플롭 (26)] 별도로 제공함으로써 검사 셀(12)는 IC(10)의 내부 논리 회로 및 IC의 경계에 부착된 외부 논리 회로 및/또는 배선 상호접속 상태를 동시에 검사할 수 있다. 이 특징은 검사 시간을 상당히 감소 시킨다.
검사 모드에서, 검사 셀(12)는 토글 동작을 수행할 수 있다. 래치(26)의 출력이 검사 모드 동안 DOUT 출력에 결합되기 때문에, 토글 동작이 수행될 때 DOUT 출력이 CLK 입력의 레이트로 토글되도록 할 수 있다. 제2의 D 플립-플롭 대신에 D 래치를 사용하면 HOLD 입력을 하이 상태로 설정시킴으로써 D 래치가 D 플립-플롭의 Q-출력을 전달하도록 할 수 있다는 장점이 있다. 토글 모드는 간단한 검사 패턴 발생기로서 사용되거나, IC(10)의 출력 버퍼(20)의 파라메터를 측정하는데 사용될 수 있다.
제3도에는 한 개의 입력(IN), 한 개의 출력(OUT), 응용논리부(14), 및 2개의 검사 셀(12i 및 12j)로 구성된 경계 스캔 경로를 갖고 있는 IC의 개략도가 도시되어 있다. 응용 논리부(14)로의 입력(IN')는 검사 셀(12i)의 2 : 1멀티플렉서(28)을 출력에 접속된다. 응용 논리부의 출력(OUT')는 검사 셀(12j)의 DIN 및 ODI 신호에 접속된다.
IN 입력은 입력 검사 셀(12i)의 DIN 입력으로 들어가고, 2 : 1 멀티플렉서(28)을 통과하여, IN'를 통해 입력 검사 셀 DOUT 출력으로부터 응용 논리부(14)로 출력된다. 이와 마찬가지로, 응용 논리부의 출력(OUT')는 출력 검사 셀(12j)의 DIN 입력에 들어가고, 2 : 1멀티플렉서(28)을 통과하며, OUT를 통해 출력 검사 셀(ODI) 출력으로부터 IC로 출력된다. 입력 검사 셀(12i)의 ODI 입력은 IC 입력(IN)에 부착되고, 출력 검사 셀(12j)의 OD 입력은 응용 논리회로 출력(OUT')에 부착된다. IC의 SDI 입력은 입력 검사 셀의 SDI 입력에 결합되고, IC 직력 데이타 출력(SDO)는 출력 검사 셀의 SDO 출력에 결합된다. 직렬 데이타 경로는 입력 검사 셀(12i)의 출력(SDO)와 출력 검사 셀(12j)의 입력(SDI) 사이에 존재하므로, 데이타를 쉬프트 시키기 위한 검사 셀 사이의 내부 연결이 형성된다. 제어 버스 신호(A,B,CLK,HOLD 및 DMX)는 2개의 검사 셀(12i 및 12j)에 접속되어 쌍방이 동일한 방식으로 함께 동작되도록 한다.
정상 모드에서, 데이타는 IN에서 IN'까지 입력 검사 셀(12i)를 통해 응용 논리부(14)내로 흐르고, OUT'에서 OUT까지 출력 검사 셀(12j)를 통해 응용 논리부로부터 흐른다. 다음의 예는 검사 셀(12i 및 12j)이 정상 동작중에 제3도의 IC의 경계에서 샘플 및 삽입 검사 동작을 수행하도록 제어 버스(17)를 통해 발생된 제어 신호의 순서를 설명한 것이다.
샘플 동작 순서(sample operation sequence)
1) 초기에 2개의 검사 셀은 정상 모드 및 아이들 모드이다.
-제어 버스 : DMX=0,BA=11,HOLD=0,CLK=액티브 상태
-[여기서, BA는 4 : 1멀티플렉서(22)에 발생된 선택 제어 신호와 동일하다]
-응용 논리부의 IN'입력은 IC의 IN입력에 의해 구동된다.
-IC의 OUT출력은 응용 논리부의 OUT'출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
2)입력 및 출력 경계 데이타를 포착하기 위해 일 CLK 동안 로드 모드로 들어간다.
-제어 버스 : DMX=0,BA=01,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT'출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 ODI 입력의 논리 레벨을 클럭한다(clock in).
3)포착된 데이타를 외부로 쉬프트시키기 위해 두 CLK 동안 쉬프트 모드로 들어간다.
-제어 버스 : CMX=0,BA=00,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN'입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT'출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 SDI 입력의 논리 레벨을 클럭한다.
4)아이들 모드로 들어가고, 검사 완료된다.
-제어 버스 : DMX=0,BA=11,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN'입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT' 출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
검사 데이타 삽입 동작 순서
1)초기에 2개의 검사 셀은 정상 모드 및 아이들 모드이다.
-제어 버스 : DMX=0,BA=11,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT'출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
2)삽입시킬 검사 데이타를 로드시키기 위해 두 CLK 동안 모드로 들어간다.
-제어 버스 : DMX=0,BA=00,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT' 출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 SDI 입력의 논리 레벨을 클럭한다.
3)아이들 모드로 들어가서 삽일시킬 검사 데이타를 갖고 있는 두 검사 셀의 D 래치를 갱신한다.
-제어 버스 : DMX=0,BA=11,HOLD=0,1,0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
- IC의 OUT 출력은 응용 논리부의 OUT'출력에 의해 구동된다.
-두 검사 셀의 D 래치는 D 플립-플롭의 논리 레벨로 갱신된다.
-두 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
4)아이들 상태를 유지하고, 검사 데이타를 삽입시키기 위해 DMX를 하이상태로 설정한다.
-제어 버스 : DMX=1,BA=11,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 입력 검사 셀의 D 래치에 의해 구동된다.
-IC의 OUT 출력은 출력 검사 셀의 D 래치에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
5)아이들 모드를 유지하고, 검사 데이타를 제거하기 위해 DMX를 로우 상태로 설정하며, 검사 완료한다.
-제어 버스 : DMX=0,BA=11,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT' 출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
검사 모드 동안, 검사 셀(12i 및 12j)를 통과하는 입력 및 출력 데이타의 정상적인 흐름이 금지된다. 검사 모드에서, 입력 검사 셀(12i)DMS 응용 논리부로의 IN' 입력을 제어하고, IC로의 IN 입력을 관찰하고, 이와 마찬가지로, 출력 검사 셀(12j)는 IC(10)으로부터의 OUT 출력을 제어하고, 응용 논리부로부터 OUT' 출력을 관찰한다. 다음의 예는 검사 셀(12i 및 12j)이 경계 스캔 검사 및 출력 버퍼 토글 동작을 수행하도록 제어 버스를 통해 발생된 제어 순서를 설명한 것이다.
경계 스캔 검사 동작 순서
1)초기에 2개의 검사 셀은 정상 모드 및 아이들 모드다.
-제어 버스 : DMX=0,BA=11,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT' 출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
2)제1출력 검사 패턴을 내부로 쉬프트시키기 위해 두 CLK동안 쉬프트 모드로 들어간다.
-제어 버스 : DMX=0,BA=00,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT출력은 응용 논리부의 OUT' 출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 SDI 입력의 논리 레벨을 클럭한다.
3)아이들 모드로 들어가고, 제1출력 검사 패턴으로 D 래치를 갱신한다.
-제어 버스 : DMX=0,BA=11,HOLD=0,1,0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT' 출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 D 플립-플롭의 논리 레벨로 갱신된다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
4)아이들 모드를 유지하고, 검사 모드로 들어가며, 제1출력 검사 패턴을 적용한다.
-제어 버스 : DMX=1,BA=11,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력이 입력 검사 셀의 D 래치에 의해 구동된다.
-IC의 OUT 출력이 출력 검사 셀의 D 래치에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
5)입력 및 출력 경계 데이타를 포착하기 위해 하나의 CLK 동안 로드 모드로 들어간다.
-제어 버스 : DMX=1,BA=01,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 입력 검사 셀의 D 래치에 의해 구동된다.
-IC의 OUT 출력은 출력 검사 셀의 D 래치에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 ODI 입력의 논리 레벨을 클럭킹한다.
6)포획된 데이타를 외부로 쉬프트시키고, 다음 출력 검사 패턴을 내부로 쉬프트시키기 위해 2개의 CLK 동안 쉬프트 모드로 들어간다.
-제어 버스 : DMX=1,BA=00,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 입력 검사 셀의 D 래치에 의해 구동된다.
-IC의 OUT 출력은 출력 검사 셀의 D 래치에 의해 구동된다.
-2개의 검사 셀 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀 D 플립-플롭은 이들의 SDI 입력 상의 논리 레벨을 클럭킹한다.
7)아이들 모드로 들어가고, 다음 출력 검사 패턴을 인가시키기 위해 D 래치를 갱신한다.
-제어 버스 : DMX=1,BA=11,HOLD=0,1,0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 입력 검사 셀의 D 래치에 의해 구동된다.
-IC의 OUT 출력은 출력 검사 셀의 D 래치에 의해 구동된다.
-2개의 검사 셀의 D 래치는 D 플립-플롭으로의 논리 레벨로 갱신된다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
8)경계 검사가 완료될 때까지 단계(5 내지 7)을 반복, 그후에 정상 모드 및 아이들 모드(스텝 1)로 복귀하도록 제어신호 발생.
출력 버퍼 토글 동작 순서
1)초기에 2개의 검사 셀은 정상 모드 및 아이들 모드이다.
-제어 버스 : DMX=0,BA=11,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT' 출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
2)출력 버퍼 토글 패턴을 내부로 쉬프트시키기 위해 2개의 CLK 동안 쉬프트 모드로 들어간다.
-제어 버스 : DMX=0,BA=00,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력이 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT'출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 SDI 입력의 논리 레벨을 클럭한다.
3)아이들 모드로 들어가고, 출력 검사 패턴으로 D 래치를 갱신한다.
-제어 버스 : DMX=0,BA=11,HOLD=0,1,0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IC의 OUT 출력은 응용 논리부의 OUT' 출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 D 플립-플롭의 논리 레벨로 갱신된다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
4)아이들 모드를 유지하고, 검사 모드로 들어가며, 출력 검사 패턴을 적용한다.
-제어 버스 : DMX=1,BA=11,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 입력 검사 셀의 D 래치에 의해 구동된다.
-IC의 OUT 출력은 출력 검사 셀의 D 래치에 의해 구동된다.
-2개의 검사 셀의 D 래치가 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지한다.
5)토글 모드로 들어가고, HOLD 입력을 하이 상태로 설정하며, 토글 검사를(N클럭 입력 동안)개시한다.
-제어 버스 : DMX=1,BA=10,HOLD=1,CLK=액티브 상태
-응용 논리부의 IN' 입력은 입력 검사 셀의 D 래치에 의해 구동된다.
-IC 의 OUT 출력은 출력 검사 셀의 D 래치에 의해 구동된다.
-2개의 검사 셀의 D 래치는 D 플립-플롭으로부터의 데이타를 DOUT출력으로
통과시킨다.
-2개의 검사 셀의 D 플립-플롭은 Q-D 래치 출력을 클럭한다.
6)아이들 모드로 들어가고, HOLD 및 DMX 입력을 로우 상태로 설정하여, 토글 검사를 완료한다.
-제어 버스 : DMX=0,BA=11,HOLD=0,CLK=액티브 상태
-응용 논리부의 IN' 입력은 IC의 IN 입력에 의해 구동된다.
-IN의 OUT 출력은 응용 논리부의 OUT' 출력에 의해 구동된다.
-2개의 검사 셀의 D 래치는 이들의 현재 상태를 유지한다.
-2개의 검사 셀의 D 플립-플롭은 이들의 현재 상태를 유지하다.
주 : 제3도에서, 토글 검사 동안 입력 검사 셀을 토글시키지 않으려는 경우, 별도의 HOLD 입력을 사용하여 출력 검사 셀이 토글하는 동안 입력 검사 셀의 출력이 고정되도록 할 수 있다. 이와 마찬가지로, 별도의 제어신호(A 및 B)에 의해 출력 검사 셀이 토글하고 있는 동안 입력 검사 셀이 아이들 모드로 들어가도록 할 수 있다.
제4a도를 참조하면, 양방향 검사 셀(30)의 바람직한 실시예의 블럭도가 도시되어 있다. 양방향 검사 셀(30)은 양방향으로 신호가 흐르도록 입력/출력 핀에 접속하여 사용될 수 있다. 양방향 셀(30)은 기본 셀로서 제2도에 도시된 검사 셀(12)를 사용하고 양방향 동작을 제공하기 위해 추가 회로를 추가한다. 특히, 양방향 셀(30)은 3개의 추가 멀티플렉서(32,34 및 36)을 제공한다. 제1멀티플렉서(32)는 2개의 입력 SYSG[시스템 삼상(tristate) 인에이블] 및 TSTG[검사 삼상 인에이블]를 갖고 있다. 멀티플렉서는 SELG(선택 인에이블) 신호에 의해 제어되어 2개의 입력들 중 한 입력을 선택한다. 제1멀티플렉서(32)의 출력은 OBG(출력 버퍼 삼상 인에이블) 신호이다. OBG 신호는 IC의 삼상 출력 버퍼의 출력 상태를 제어한다.
제2멀티프렉서(34)는 2개의 입력 신호, 즉 DINA 신호 및 DINB 신호를 수신한다. 멀티플렉서(34)는 멀티플렉서(32)의 출력 신호, 즉 OBG 신호에 의해 제어 된다. DINA 입력은 IC의 응용 논리부(14)로부터의 출력이고, DINB 입력은 I/O 버퍼로부터의 외부 입력이다. 멀티플렉서(32)로부터의 OBG 신호 출력은 멀티플렉서(34)의 입력들을 선택하는데 사용된다.
제3멀티플렉서(36)은 2개의 입력, 즉 DINA 및 기본 검사 셀(12)의 래치(26)으로부터의 비반전된 출력(LQ)를 갖고 있다. 이 제3멀티플렉서(36)은 DMX 신호에 의해 제어된다.
제2멀티플렉서(34)의 출력은 기본 검사 셀(12)의 ODI입력에 접속된다. 제3멀티플렉서(36)의 출력은 DOUTA로 표시되어 있고, 기본 검사 셀(12)로부터의 DOUT 신호는 DOUTB로 표시되어 있다.
동작시에, OBG 출력은 SELG 입력이 로우 상태일 때 SYSG 입력(정상 모드 삼상 입력)에 의해 구동된다. SELG 입력이 하이 상태일 때, 제1멀티플렉서(32)의 출력은 TSTG 입력(검사 모드 삼상 제어 입력)에 의해 구동된다. 제4a도에서, OBG 신호의 로우 출력은 출력 버퍼가 활성화되게 하고, OBG 신호의 하이 출력은 출력 버퍼가 삼상으로 되게 하는 것으로 가정한다.
제2멀티플렉서(34)는 제1멀티플렉서(32)로부터의 OBG 출력에 의해 제어된다. 제2멀티플렉서의 목적은 로드 동작중에 적합한 신호가 샘플링되도록 2개의 데이타 입력(DINA 또는 DINB) 중 한 입력을 기본 검사 셀의 ODI 입력에 결합시키기 위한 것이다. 제2멀티플렉서(34)로의 DINA 입력은 응용 논리부로부터의 출력이다. 제2멀티플렉서의 선택 입력(OGB)이 응용 논리부로부터의 출력 동작을 나타내는 로우 상태로 설정되면 DINA 신호는 기본 검사 셀(12)의 ODI 입력에 결합되고, 로드 동작중에 샘플될 수 있다. 제2멀티플렉서의 선택 입력(OBG)이 응용 논리부로의 입력 동작을 나태나는 하이 상태로 설정되면, DINB 신호는 검사 셀(12)의 ODI 입력에 결합되고, 로드 동작중에 샘플될 수 있다. 제3멀티플렉서(36)은 검사 셀(12)에도 제공되는 DMX 신호에 의해 제어된다. 검사 셀(12)의 LQ 출력은 검사 셀(12)내부의 D 래치(26)의 출력이다. LQ 출력은 검사 모드에서 DOUTA 출력 신호를 로드 및 쉬프트 동작 동안 일정하게 유지하도록 한다. 검사 셀(12) 및 제3멀티플렉서(36)으로의 DMX 입력이 로우 상태로 설정되면, 양방향 셀(30)은 정상 모드이다. 정상 모드에서, DINA 출력은 제3멀티플렉서(36)을 통과하여, DOUTA 출력을 통해 셀로부터 출력되어, 응용 논리부(14)에서 I/O 버퍼의 출력 버퍼부까지의 정상데이타 출력 경로를 구축한다. 이와 마찬가지로, 정상 모드에서, DINB 입력은 검사 셀(12) 내의 2 : 1 멀티플렉서를 통과하고, DOUTB 출력을 통해 셀로부터 출력되어, I/O 버퍼의 입력 버퍼부에서 응용 논리부(14)까지의 정상 데이타 입력 경로를 구축한다.
검사 셀(12) 및 제3멀티플렉서(36)으로의 DMX 입력이 하이 상태로 설정되면, 양방향 검사 셀(30)은 검사 모드에 놓인다. 검사 모드에서, 검사 셀(LQ) 검사 데이타 출력은 제3멀티플렉서(36)을 통과하고, DOUTA 출력을 통해 스코프 셀로부터 출력되어 검사 셀(12)에서 I/O 버퍼의 출력 버퍼부까지의 검사 데이타 출력 경로를 구축한다. 이와 마찬가지로, 검사 모드에서, 내부 검사 셀의 LQ 검사 데이타 출력은 검사 셀의 내부 2 : 1 멀티플렉서(28)을 통과하고, DOUTB 출력을 통해 검사 셀(12)로부터 출력되어 검사 셀로부터 응용 논리부(14)까지의 검사 데이타 출력 경로를 구축한다.
제4b도에서, 양방향 검사 셀(30)의 블럭도는 양방향 버퍼와 응용 논리부(14)사이에 접속된 상태로 도시된다. 데이타 출력 동작이 수행되면, 출력 버퍼(38)은 OBG에 의해 인에이블된다. 정상 모드에서, 응용 논리부(14)로부터의 데이타는 DINA 입력을 통해 양방향 검사 셀(30)로 들어가고, 양방향 검사 셀(30)을 통과하며, DOUTA출력을 통해 출력 버퍼(38)에 결합된다. DOUTA 출력은 출력 버퍼(38)를 통과하고, I/O 핀(40)에 인가된다. 검사 모드에서, 양방향 검사 셀(30)내에 저장된 검사 데이타는 DOUTA 출력을 통해 출력 버퍼에 공급되고, 출력 버퍼(38)을 통과하며, I/O 핀(40)에 인가된다.
데이타 입력 동작이 수행되면, 출력 버퍼는 OBG 신호에 의해 하이 임피던스 상태로 된다. 정상 모드에서, I/O 핀(40)으로부터의 데이타는 입력 버퍼(41) 및 DINB 입력을 통해 양방향 검사 셀(30)에 입력되고, 검사 셀(30)을 통과하며, DOUTB 출력을 통해 응용 논리부에 인가된다. 검사 모드에서, 검사 셀(30)내에 저장된 검사데이타는 DOUTB 출력에 의해 응용 논리부에 인가된다.
제5도를 참조하면, 검사 셀(12)의 특정 실시예가 개략적으로 도시되어 있다. 이 실시예는 멀티플렉서(22 및 28),D 플립-플롭(24) 및 래치(26)을 포함한다.
제1멀티플렉서(22)는 6개의 독립 입력 신호를 갖고 있다. SDI 신호는 2개의 직렬 인버터(cascaded inverter;108 및 110)에 입력된다. 그 다음에, 인버터(110)으로부터의 최종 출력은 송신 게이트(transmission gate,112)에 입력된다. 송신 게이트는 P 채널 트랜지스터의 소스와 드레인을 N 채널 트랜지스터에 결합함으로써 형성된다. 송신 게이트(112)의 출력은 송신 게이트(114)의 출력 및 송신 게이트(116)로의 입력에 결합된다. 이와 마찬가지로, 송신 게이트(116)의 출력은 송신 게이트(112)의 출력 및 한쌍의 직렬 인버터(118 및 120)으로의 입력에 결합된다. 인버터(120)에서의 출력은 멀티플렉서(22)로부터의 최종 출력을 나타낸다.
멀티플렉서(22)로의 ODI 입력은 송신 게이트(114)에 접속된다. 송신 게이트(114)의 출력은 송신 게이트(112)의 출력 및 송신 게이트(116)로의 입력에 결합된다.
멀티플렉서(22)로의 제3입력은 래치(26)의 반전된 출력이다. 이 신호는 송신 게이트(124)내로 입력된다. 송신 게이트(124)의 출력은 송신 게이트(126)의 출력 및 송신 게이트(122)로의 입력에 결합된다.
멀티플렉서(22)로의 제4입력은 D 플립-플롭(24)의 출력이다. 이 신호는 송신 게이트(126)로 입력된다. 그 다음, 송신 게이트(126)의 출력은 송신 게이트(124)의 출력및 송신 게이트(122)로의 입력에 결합된다. 이때, 송신 게이트(122)의 최종 출력은 출력 송신 게이트(116)에 결합된다.
멀티플렉서(22)의 2개의 나머지 입력 신호는 멀티플렉서(22)내의 여러 가지 송신 게이트용 선택 신호로서 작용한다. 입력 신호(A)는 인버터(128)에 일차적으로 접속된다. 그 다음, 인버터(128)의 출력은 인버터(130)의 입력에 접속된다. 부가적으로, 인버터(128)의 출력은 송신 게이트(114 및 126)의 P 채널 게이트에도 접속된다. 이와 동일한 출력이 송신 게이트(122 및 124)의 N 채널 게이트에 접속된다. 인버터(130)의 출력은 송신 게이트(112 및 124)의 P 채널 게이트 및 송신 게이트(114 및 126)의 N 채널 게이트에 접속된다.
멀티플렉서(22)로의 B 입력은 또한 선택 신호로도 사용된다. B 입력은 인버터(132)에 접속된다. 인버터(132)의 출력은 인버터(134)에 접속된다. 부가적으로, 인버터(132)의 출력은 송신 게이트(122)의 P 채널 게이트 및 송신 게이트(116)의 N 채널 게이트에 접속된다. 인버터(134)의 출력은 송신 게이트(122)의 N 채널 게이트 및 송신 게이트(116)의 P 채널 게이트에 접속된다.
D 플립-플롭(24)는 멀티플렉서(22)의 클럭 입력(CLK)과 출력에 접속된다. D 플립-플롭(24)내에서, 클럭 신호는 인버터(140)에 입력되고, 인버터의 출력 신호는 N 채널 트랜지스터(142)의 게이트를 제어하는데 사용된다. 클럭 신호는 또한 N 채널 트랜지스터(144)의 게이트를 제어하기 위해서도 사용된다. D 플립-플롭(24)의 D 입력은 N 채널 트랜지스터(142)의 제1소스/드레인에 접속된다. 트랜지스터(142)의 제2소스/드레인은 인버터(146)의 입력에 접속된다. 인버터(146)의 출력은 N 채널 트랜지스터(144)의 제1소스/드레인에 접속되고, 인버터(148)의 입력에도 접속된다. 인버터(148)의 출력은 인버터(146)의 입력에 접속된다. 트랜지스터(144)의 제2소스/드레인은 인버터(150)의 입력에 접속된다. 인버터(150)의 출력은 인버터(152)의 입력 및 인버터(154)의 입력에 접속된다. 인버터(154)의 출력은 인버터(150)의 입력에 접속된다. 인버터(150)의 출력은 또한 송신 게이트(126)의 입력에도 접속된다. 인버터(152)의 출력은 D 플립-플롭(24)의 반전된 출력이다. 이때, D 플립-플롭(24)의 반전된 출력은 인버터(156)에 입력된다. 인버터(156)의 출력은 검사 셀의 SDO 출력이다.
D 플립-플롭(24)의 출력 [인버터(150)의 출력] 은 래치(26)의 D 입력에 접속된다.이입력은 N 채널 트랜지스터(160)의 제1소스/드레인에 접속된다. N 채널 트랜지스터(160)의 제2소스/드레인은 인버터(162)의 입력에 접속된다. 래치(26)에서, 인버터(162)의 출력은 인버터(166) 및 인버터(164)의 입력에 접속된다. 인버터(166)의 출력은 인버터(162)의 입력에 접속된다. 또한, 인버터(162)의 출력은 래치(26)의 반전된 출력을 나타낸다. 상술한 바와 같이, 반전된 출력은 송신 게이트(124)를 통해 멀티플랙서(22)에 접속된다. 인버터(164)의 출력은 멀티플렉서(28)에 접속되는 래치(26)의 비반전된 출력을 나타낸다. 또한, 래치(26)는 N 채널 트랜지스터(160)의 베이스에 입력되는 홀드(hold) 전압에 의해 제어된다.
검사 낼 내의 제2멀티플렉서(28)은 3개의 입력 즉,DIN,인버터(164)의 출력 및 DMX를 갖고 있다. DIN신호는 P 채널 트랜지스터(170) 및 N 채널 트랜지스터(172)의 한 게이트에 접속된다. 인버터(164)의 출력은 P 채널 트랜지스터(182) 및 N 채널 트랜지스터(184)의 게이트에 접속된다. DMX 입력은 N 채널 트랜지스터(174,176 및 178)의 게이트에 접속되고, 또한 P 채널 트랜지스터(180)의 게이트에 접속된다. N 채널 트랜지스터(178)의 제1소스/드레인은 Vcc에 접속되는 한편 제2소스/드레인은 노드(196)에 접속된다. 이와 마찬가지로, N 채널 트랜지스터(176)의 제1소스/드레인은 접지선에 접속되고, 제2소스/드레인은 노드(196)에 접속된다. 노드(196)는 P 채널 트랜지스터(188)의 게이트 및 N 채널 트랜지스터(186)의 게이트에도 접속된다. P 채널 트랜지스터(188 및 180)의 제1소스/드레인은 결합되어 Vcc에 접속된다. P채널 트랜지스터(188 및 180)의 제2소스/드레인은 P 채널 트랜지스터(182 및 170)의 제1소스/드레인에 각각 접속된다. P 채널 트랜지스터(182 및 170)의 제2소스/드레인은 결합되어 노드(194)에 접속된다. N 채널 트랜지스터(184 및 172)의 제1소스/드레인은 노드(194)에도 접속된다. N 채널 트랜지스터(184 및 172)의 제2소스/드레인은 N 채널 트랜지스터(174 및 186)의 제1소스/드레인에 각각 접속된다. N 채널 트랜지스터(174 및 186)의 제2소스/드레인 은 접지선에 접속된다. 또한, 노드(196)은 N 채널 트랜지스터(192 및 190)의 게이트에 접속된다. N 채널 트랜지스터(192)의 제1소스/드레인은 Vcc에 접속된다. N 채널 트랜지스터(192)의 제2소스/드레인은 N 채널 트랜지스터(190)의 제1 소오스/드레인에 접속되고, 이 결합된 신호는 검사 셀의 DOUT신호를 나타낸다. N 채널 트랜지스터(190)의 제2 소스/드레인은 접지선에 접속된다.
본 발명은 가관측성 데이타 입력(observability data input, ODI)상의 고속 성능을 보유하고, 쉬프트 데이타 입력(SDI)의 제로(zero) 유지 시간(hold time)을 유지하며, SDI의 설정 시간(setup time)을 증가시키고, 클럭 전이로부터 SDO 출력까지의 전달 지연을 증가시킨다. SDI의 제로 유지 시간은 직렬 구조에서 소정의 불규칙한 데이타 전달 문제점을 제거한다. SDI의 긴 설정 시간과 클럭-Q 지연의 약간의 증가는 클럭 스큐 여유도(margin)을 향상시켜, 검사 셀의 여러 가지 구성 부품들간의 스큐(skew)로 인한 전달 에러를 제거한다.
직렬 데이타 입력 속도를 느리게 하여, 설정 시간을 증가시키기 위해 2개의 약한(weak) 인버터(108 및 110)가 제1멀티플렉서(22)에서 사용된다. 이 인버터들이 SDI 입력에만 적용되므로, ODI 입력의 성능은 본 방법에 의해 전혀 저하되지 않는다. 다른 2개의 인버터(150 및 152)는 클럭-Q 전달 지연 시간을 약간 증가시키기 위해 SDO의 출력 경로내에 삽입된다. SPICE 특성화에 따르면 2/14 nsec(최소/최대)의 SDI의 설정 시간, 제로 SDI 유지 시간 및 0.96/5.96 nsec(최소/최대) 클럭-Q 지연 시간을 갖는다는 것을 알 수 있다. 이 데이타는 2.96/19.96 nsec(최소/최대) 클럭 스큐 여유도에 이른다.
본 발명의 검사 셀은 종래 기술보다 우수한 장점을 제공한다. 첫째, 본 발명의 검사 셀은 전체 검사 시간을 감소시키기 위해 내부 및 외부 경계 검사를 동시에 수행하는데 사용될 수 있다. 둘째, 검사 셀들은 호스트 집적 회로의 정상 동작 동안 경계에서 데이타를 샘플링하거나 삽입시킬 수 있다. 셋째, 검사 셀은 자유 가동(free running)검사 클럭과 동기를 맞추어 동작한다. 넷째, 본 발명은 매개 변수를 측정하고, 경계 검사를 용이하게 하기 위해 IC의 응용 논리부에 무관하게 IC의 출력버퍼를 토글시키는 방법을 제공한다. 다섯째, 검사 셀은 자체-검사 능력을 제공한다.
본 발명의 검사 셀(12)의 기능은 셀 라이브러리(library)의 사용에 의해 향상될 수 있는데, 향상된 검사 회로를 제공하기 위해 IC(10)내에 사용된 1개 이상의 검사 셀(12)에 추가 회로가 제공될 수 있다. 이러한 회로의 라이브러리는 회로 설계자가 특정한 IC(10)을 주문제작할(customize) 수 있도록 제공된다.
제6도를 참조하면, 본 발명의 검사 셀(12)에 연결된 마스크가능한(maskable) 비교기 논리부(200)가 도시되어 있다. 마스크가능한 비교기 논리부(200)는 어떤 조건에 응답하여 검사를 수행하기 위한 비교가능한 검사 특징(comparability test feature)을 추가한다.
마스크가능한 비교기 논리부(200)는 XOR 게이트(202) 및 NAND 게이트(204)를 포함한다. XOR 게이트(202)는 2개의 입력, 즉 검사 셀(12)로의 DIN 및 ODI 입력에 접속된 제1입력 및 예상 데이타(EXPD) 신호에 접속된 제2입력을 갖고 있다. 또한, NAND 게이트(204)는 2개의 입력, 즉 XOR 게이트(202)의 출력에 접속된 제1입력 및 비교 마스크(CMPMSK) 신호에 접속된 제2입력을 갖고 있다. NAND 게이트(204)의 출력은 비교 출력(CMPOUT)신호를 제공한다.
마스크가능한 비교기 논리부(200)는 EXPD 입력에서 나타나는 선정된 논리 레벨에 대해 검사 셀(12)의 DIN 입력에서 나타나는 논리 레벨을 비교하기 위한 수단을 제공한다. DIN 입력 및 EXPD 입력의 논리 레벨이 일치하는 경우, 익스클루시브 OR 게이트의 출력은 로우 상태로 구동된다. DIN 입력 및 EXPD 입력의 논리 레벨이 일치하지 않은 경우, 익스클루시브 OR 게이트의 출력은 하이 상태로 구동된다. 익스클루시브 OR 게이트로부터의 로우 레벨(일치된 상태)의 출력은 NAND 게이트가 CMPOUT 출력을 통해 하이 레벨로 출력되게 한다. 익스클루시크 OR 게이트(202)로부터의 하이 레벨(일치하지 않은 상태)의 출력은 NAND 게이트(204)로의 CMPMSK 입력이 로우 레벨인 경우 외에는 NAND 게이트(204)가 CMPOUT 출력을 통해 로우 논리 레벨로 출력되게 한다.
비교기 논리부(200)의 CMPOUT 출력의 하이 논리 레벨은 이 특정 검사 셀을 통과하고 있는 입력 또는 출력 경계 신호가 예상된 상태와 일치한다는 것을 나타낸다. 여러 가지 검사 셀로부터의 CMPOUT 신호가 모두 하이 상태인 조건을 검출하기 위한 논리부와 함께 집적 회로의 각 입력 및 출력 신호에서 유사한 검사 셀을 가짐으로써, 집적 회로의 입력 및 출력의 전체 범위에 걸쳐 예상된 경계 조건의 발생을 검출하는 것이 가능하다.
소정의 경계 비교 응용에 있어서, 1개 이상의 집적 회로 입력 및/또는 출력의 상태는 부적합할 수 있다. 이 상황에서, 비교기 논리부(200)은 비교 동작을 마스크 오프시키고, 비교 동작의 결과에 상관없이 CMPOUT 출력을 하이 레벨로 출력시킬 수 있다. 이것은 돈트 케어(Don't Care) 비교 조건이 집적 회로의 경계 주변에서 설정되게 할 수 있다. 돈트 케어 조건은 특정 검사 셀의 CMPMSK를 로우 논리 레벨로 설정함으로써 달성된다. CMPMSK 입력에 로우 논리 레벨이 인가된 모든 검사 셀들은 CMPOUT 출력으로부터 하이 상태의 논리 레벨을 출력시킨다. CMPOUT 출력을 하이 상태로 함으로써, 돈트 케어 조건을 갖는 검사 셀을 집적 회로의 경계에서 다른 검사 셀내에 발생하는 전체 비교 결과에 영향을 주지 않는다.
어떤 응용예에서는, 검사 셀들은 검사를 용이하게 하기 위해 집적 회로의 경계에서 의사-무작위(Pseudo-Random) 패턴 발생(PRPG) 및/또는 병렬 기호 분석(parallel signature analysis,PSA) 능력을 제공할 필요가 있다. PRPG 모드에서, 일련의 직렬로 상호접속된 검사 셀들은 DOUT 출력으로부터 의사-무작위 출력 패턴수순(sequence)를 발생시킬 수 있다. PSA 모드에서, 일련의 직렬로 상호접속된 검사 셀들은 DIN 입력에서 나타나는 데이타를 검사하기 위해 기호(signature)로 압축하도록 할 수 있다.
제7도에는 PSA 검사 논리 동작을 실행할 수 있는 라이브러리 셀의 바람직한 실시예가 도시되어 있다. 기본 검사 셀(12)의 입력 및 출력은 제2도에 관련하여 기재된 신호를 포함한다. 부수적으로, PSA 논리부(206)은 2개의 입력 신호, 즉 데이타 마스크(DATMSK) 및 PSA 인에이블 (PSAENA)를 수신한다. DATMSK 및 PSAENA 입력은 제어 버스의 연장선상에 있다.
PSA 논리부(206)는 익스클루시스 OR 게이트(208) 및 2개의 NAND 게이트(210 및212)를 포함한다. NAND 게이트(210)는 DATMSK 신호 및 DIN 입력 신호에 접속된다. NAND 게이트 (212)는 PSAENA 신호 및 SDI 신호에 접속된다. NAND 게이트(210 및 212)의 출력은 익스클루시크 OR 게이트(208)의 입력에 접속된다. 익스클루시브 OR 게이트의 출력은 기본 검사 셀(12)의 ODI 입력에 접속된다.
PSA 논리부(206)가 기본 셀(12)에 부착되면, ODI 입력으로부터 DIN 입력으로의 정상 접속 상태는 더 이상 직접 상호접속되지 않도록 변형된다. 그러나, 로드 동작 동안 ODI 입력을 통해 검사 데이타를 포획하는 기본적인 기능은 계속해서 유효 하지만, PSA 검사 논리부를 통해 로드 동작을 달성하는데 이하에서 기술되는 부수적인 규칙과 신호 라우팅이 필요하다. 셀과 셀간 상호접속에 필요한 모든 다른 기능(아이들, 쉬프트 및 토글)들은 같다.
기본 로드 동작을 달성하기 위해, 논리부(206)으로의 DATMSK 및 PSAENA 입력은 하이 및 로우 상태의 논리 레벨로 각각 설정된다. 이 상태에서, PSA 논리부는 DIN입력으로부터 NAND 게이트(210) 및 익스클루시브 OR 게이트(208)을 통해 기본 검사 셀(12)의 ODI 입력으로의 라우팅 경로를 제공한다. 로드 동작이 발생되면, 검사 셀(12)은 PSA 논리부(206)을 통하는 루팅 채널을 통해 DIN 입력의 논리 레벨을 포착한다.
PSA 동작이 검사 셀에 의해 수행될 때, MSKDAT 및 PSAENA 입력은 하이 논리 레벨로 설정되고, 로드 동작을 수행하기 위해 기본 검사 셀(12)에 제어 신호가 발생된다. 이 방식으로 설정된 MSKDAT 및 PSAENA 입력에 있어서, PSA 논리부(206)은 DIN 및 SDI 입력에 나타나는 논리 레벨에 익스클루시브 OR 동작을 수행하고, 그 결과를 검사 셀(12)의 ODI 입력에 출력시킨다. 로드 동작중에, 검사 셀(12)는 ODI 입력을 샘플링하여, 익스클루시브 OR 동작의 결과를 저장한다. 직렬로 쉬프트를 위해 필요한 셀과 셀간 상호접속 (즉, 다른 SDO에 접속된 한 셀의 SDI) 및 다항(polynomial) 피드백과 함께, 각각의 검사 셀(12)내에서 수행된 국부 익스클루시브 OR 및 로드 동작은 경계 스캔 기호 분석 구조가 실행될 수 있는 기본적인 구조를 형성한다.
PSA 동작중에, PSA 논리부(206)는 익스클루시브 OR 동작시에 대한 DIN 입력 효과를 마스크 오프시키는 수단을 제공했다. PSAENA 입력이 하이일 때 MSKDAT 입력을 로우로 셋팅시킴으로써 마스킹 동작이 달성된다. MSKDAT 입력이 로우로 설정되면, PSA 논리부(206)은 SDI 입력을 검사 셀(12)의 ODI 입력에 결합시키고, 이전 셀의 SDO 출력값만이 샘플되어 검사 셀(12)내에 저장된다. 이 기능에 따라 집적 회로의 경계에서 PSA 동작중에 1개 이상의 검사 셀의 DIN 입력에 제공된 신호를 마스크 아웃(mask out)시킬 수 있다.
PRPG 동작이 검사 셀에 의해 수행하려면, 검사 셀(12)이 SDI 입력으로부터 SDO 출력까지의 쉬프트 동작을 수행하게 하는 제어 신호가 발생된다.
PRPG 동안, 데이타는 의사 무작위 출력 패턴을 발생시키기 위해 일련의 검사 셀(12)을 통해 쉬프트된다. 최종 의사 무작위 패턴 발생 출력은 스캔 경로의 길이 및 스캔 경로내의 검사 셀(12)의 다항 피드백 접속에 의해 결정된다. 또한, 검사 셀로의 HOLD 및 DMX 입력은 발생된 검사 신호가 검사 셀의 DOUT 출력으로부터 외부로 구동될 수 있게 하이 상태로 설정된다.
PRPG 및/또는 PSA 검사 특징을 갖는 검사 셀을 사용하는 응용시에, 집적 회로의 경계에서 검사 셀의 특정 그룹 또는 범위에 적합하게 검사 셀(12) 사이의 다항 피드백 접속 상태를 조정할 수 있도록 프로그램가능한 다항 탭(tap)을 제공하는 것이 유리하다. 이 특징을 포함하는 장점으로는, (1) 집적 회로 설계시에 검사 셀의 구현을 단순화하고, (2) 외부 다항 탭 능력을 추가의 필요성을 제거하여, 및 (3) 필요한 논리부가 각각의 검사 셀(12)에 모두 내재하기 때문에, 집적 회로 배치(layout)시에 검사 셀의 배치 및 신호 라우팅을 개선한다는 것이다.
제8도에는 기본 검사 셀(12), PSA 논리부(206) 및 프로그램 가능한 다항 탭(214)를 포함하는 검사 회로의 바람직한 실시예가 도시되어 있다. 검사 셀(12)로의 입출력 및 PSA 논리부는 제7도에 도시된 바와 같다. 프로그램가능한 다항 탭 논리부(214)는 2개의 추가 입력 신호, 즉 다항 탭 인에이블(PTENA) 및 피드백 입력(FBI)신호, 및 1개의 추가 출력 신호, 즉 피드백 출력(FBO)를 필요로 한다. PTENA 신호는 제어 버스의 연장상에 있다. FBI 및 FBO 신호는 PRPG 및/또는 PSA 검사 동작에 필요한 다항 피드백 네트워크 실행하기 위해 검사 회로들 사이에 상호접속을 제공한다. 프로그램가능한 다항 탭 논리부는 익스클루시브 NOR 게이트(216) 및NAND 게이트(218)을 포함한다. NAND 게이트는 관련된 검사 셀(12)의 SDO 출력및 입력으로서 PTENA 신호를 수신한다. 익스클루시브 NOR 게이트(216)은 NAND게이트(218) 및 FBI 신호의 출력을 수신한다. 익스클루시브 NOR 게이트(216)의 출력은 FBO 신호이다.
PRPG 또는 PSA를 수행하는데 필요한 주요 능력은 스캔 경로내의 검사 회로의 모든 또는 선택된 그룹에서 모든 논리 상태의 익스클루시브 OR에 기초를 두고 있는 피드백 네트워크를 제공하기 위한 것이다. 이 피드백 네트워크의 결과는 피드백 루프(looap)를 폐쇄시키기 위해 스캔 경로내의 제1검사 회로에 입력된다. 제8도에서, NAND 게이트(218) 및 익스클루시브 NOR 게이트(216)의 조합은 피드백 네트워크내의 특정 검사 회로의 논리 상태를 포함하거나, 제외하기 위한 능력을 제공한다.
유사한 프로그램가능한 다항 탭 논리부를 갖고 있는 검사 회로는 제9a도에 도시된 바와 같이 상호접속될 수 있다. PRPG/PSA 논리부 및 프로그램가능한 다항 탭 논리부를 갖고 있는 4개의 검사 회로(220a 내지 220d)는 스캔 경로내에서 주요 직렬 데이타 입력(PSDI)로부터 주요 직렬 데이타 출력(PSDO) 신호에 상호접속된다. 각각의 검사 셀(220a 내지 220d)의 프로그램가능한 다항 탭 논리부는 후행(trailing) 검사 회로의 FBO 출력 신호를 입력 신호를 선행(leading) 검사 회로의 FBI 입력에 공급하는 방식으로 상호접속된다. 예를 들어, 검사 회로(220c)의 FBO는 검사 셀(220b)의 FBI에 접속된다. 각 검사 회로(220a 내지 220d)의 PTENA 입력은 PTENA 버스를 통해 인가된다. [제어 버스(17)의 연장상에 있는] 피드백 선택(FBSEL) 입력은 검사 회로(220a)의 SDI입력을 공급하는 제1검사 회로(220a)의 입력에서 멀티플렉서 (222)를 제어한다. 최종 검사 회로(220d)의 FBI 입력은 최종 검사 회로(220d)의 프로그램가능한 다항 탭 논리부에 전혀 영향을 끼치지 않도록 로우 논리 레벨로 와이어(wire)된다.
정상 쉬프트 동작 동안, 직렬 데이타는 PSDI로 들어가고, 검사 셀을 통해 PSDO 외부로 흐른다. PRPG 또는 PSA 모드에 놓이면, 제1검사 회로(220a)의 입력에서 멀티플렉서(222)는 제1검사 회로(220a)의 SDI 입력에 접속될 피드백 최종(FBR) 신호를 선택한다. FBI 및 FBO 와이어링(wiring) 상호접속과 함께 검사 회로(220a 내지 220d)내의 프로그램가능한 다항 탭 논리부는 PRPG 및 PSA 동작에 필요한 익스클루시브 OR 피드백 네트워크를 형성한다. 검사 회로의 PTENA 입력이 하이인 경우, 검사 회로(220)의 검사 셀(12)의 논리 상태는 피드백 네트워크내에 포함된다. 검사 회로로의 PTENA 입력이 로우인 경우, 이 검사 회로의 검사 셀(12)의 논리 상태는 피드백 네트워크내에 포함되지 않는다.
소정의 응용시에, PRPG/PSA 및 프로그램가능한 다항 논리부를 각각 갖고 있는 일련의 검사 셀(12)로 구성된 주요 스캔 경로를 여러 부분으로 분할하는 것이 필요하다. 주요 스캔 경로의 각 부분은 주요 스캔 경로내로 다수의 국부 PRPG/PSA 검사 기능을 제공하도록 제9b도에 도시된 바와 같이 구성될 수 있다. 스캔 경로의 각 부분은 국부 피드백 네트워크내에 포함된 스캔 경로부내의 적합한 검사 셀(12)를 선택할 수 있도록 제9a도에 도시된 바와 같은 피드백 접속부를 갖고 있다. 각 국부 피드백 네트워크의 피드백 결과(FBR)은 멀티플렉서를 통해 스캔 경로부내의 제1검사 셀(12)에까지 결합된다.
또한, PSA 검사 논리부는 제4도의 양방향 검사 셀내에 포함될 수 있다. PSA 검사 논리부를 포함하면 일방향인 경우와 동일한 양방향 검사 셀의 이점을 제공한다.
제10도에는 기본 검사 셀(12), 양방향 멀티플렉서 논리부 및 PSA 논리부(206)을 포함하는 검사 회로의 바람직한 실시예가 도시되어 있다. 이 검사 회로에 필요한 입력 및 출력 신호는 제4도 및 제7도에 관련하여 사용된 것과 동일하다. PSA 논리부를 갖고 있는 양방향 검사 회로를 형성하기 위해서는 PSA 논리부를 삽입하고, 다음과 같은 와이어링 접속, 즉 (1) 제2멀티플렉서(34)의 SELODI 출력을 제7도에 DIN에 접속된 것으로 도시된 PRPG/PSA NAND 게이트(210)의 입력에까지 접속시키고, (2)제7도에 도시된 바와 같이 검사 셀에 부착된 SDI 입력을 PRPG/PSA NAND 게이트(212)의 입력에까지 접속시키며, (3)PRPG/PSA 익스클루시브 OR게이트(208)의 출력을 검사 셀(12)의 ODI 입력에까지 접속시키는 동작을 행하기만 하면 된다.
제11도에는 PRPG/PSA 논리부(206)과 다항 탭 논리부(214)를 갖고 있는 양방향 검사 회로가 도시되어 있다. 제11도의 회로는 제10도의 회로와 동일한데, 다항 탭논리부(214)가 제8도에 관련하여 기술한 바와 같이 검사 셀(12)에 추가 접속되어 있다. 이와 마찬가지로, 라이브러리 셀의 그밖의 다른 조합은 마스크가능한 비교 논리부를 포함하는 양방향 검사 회로 또는 마스크가능한 비교 논리부, PRPG/PSA 논리부 및 다항 탭 논리부를 포함하는 양방향 검사 셀과 같은 양방향 검사 회로에 대해 이용가능하다.
본 발명의 셀 라이브러리는 제2도의 기본 검사 셀에 관련하여 기술하였지만, 이 개념은 다른 구조를 갖고 있는 기본 검사 셀(12)에 사용될 수 있다. 라이브러리 셀은 집적 회로 설계자에게 여러 가지 상이한 집적 회로 검사 구조를 구성하는데 사용될 수 있는 다양한 비트 슬라이스 검사가능 셀(bit slice testability cells)을 제공한다. 검사 해결 방법을 라이브러리 셀의 형태로 제공할 때의 장점은, (1)직접 회로 설계시에 검사 구조의 실현을 간단히 하고,(2)자동화될 수 있는 구조적 검사 방법을 제공하여,(3)각 새로운 집적 회로 설계를 위해 임기 응변식의 검사 방법(ac-hoc test approach)을 고안하기 위한 필요성을 제거하고,(4)모든 필요한 검사 논리부가 검사 회로에 내장되기 때문에 검사 구조의 배치 및 신호 라우팅의 개선, 및 (5)바람직하게는 검사가능한 특징이 선택될 수 있는 기초를 설계자에게 제공한다는 것이다.
시스템 레벨로 IC를 용이하게 검사하기 위해서는 레지스터, 래치, 버퍼 또는 송수신기와 같은 표준 시판용(off-the-shelf) 구성 부품이 검사 셀(12)로 구성된 검사 인터페이스(interface) 및 경계 스캔 경로를 포함하도록 설계될 수 있다. 하이 레벨의 어셈블리(assembly)에서 검사를 간단화하기 위해 표준 구성 부품에 검사 회로를 구현하는 것은 하드웨어 시스템을 검사 및 유지 보수하는데 소요되는 비용을 줄이기 위한 방법을 제공한다.
현재, 회로 기판 및 시스템을 검사하는 데는 고가의 검사 장비 및 기계적인 접촉검사(probing) 기술의 사용을 필요로 한다. 시스템에 내장된 기판을 검사하기 위해서, 검사 장비에 검사 액세스가 가능하도록 기판이 제거되어야 한다.
직렬 검사 인터페이스를 통해 액세스할 수 있는 삽입된 검사 회로(embedded test circuitry)를 갖고 있는 표준 부품을 검사하는 것은 간단하다. 이러한 부품을 사용하여 기판을 설계하면 직렬 검사 버스를 통해서 시스템내에 있는 채로 검사될 수 있다. 또한, 이러한 장치는 간단하면서 저렴한 검사 장비로 검사를 수행할 수 있다. 부수적으로, 현재의 기판 설계 기술에 있어서, 구성 부품 밀도로 인해 회로를 접촉 시험하는 것은 물리적으로 불가능할 수도 있다. 이 경우에, 구성 부품내에 삽입된 검사 회로를 통해서만이 검사가 수행될 수 있다.
제12도에는 조합 논리부(224)가 검사 분할(partitioning) 장치(226 및 228)에 의해 관찰 및 제어되는 상황이 도시되어 있다. 검사 분할 장치(226 및 228)는 버퍼, 래치, 레지스터 또는 송수신기와 같은 다수의 널리 공지된 장치에 기초를 두고 있다. 분할 장치(226 및 228)은 8-비트 레지스터라고 가정한다. 조합 논리부는 인서 키트 검사 능력을 갖추지 않은 몇 개의 회로로 구성될 수 있다.
입력 검사 레지스터(226)는 만일 입력 검사 레지스터가 없다면 조합 논리부로 보내질 데이타를 관찰하고 조합 논리부(224)를 제어하기 위해 데이타를 출력시킨다. 출력 검사 레지스터(228)는 조합 논리부(224)로부터의 데이타 출력을 관찰하고, 출력감시 레지스터가 없다면 조합 논리부(224)의 출력에 접속될 장치로의 출력을 제어 할 수 있다. 직렬 데이타는 출력 검사 레지스터(228)로 직렬 데이타를 출력시키는 입력 검사 레지스터(226)에 의해 수신된다. 입력을 관찰하고, 출력을 제어함으로써, 검사 레지스터(226 및 228)는 제1도에 관련하여 상술한 것과 동일한 방식으로 조합 논리부(224)를 검사할 수 있다.
제13도에는 검사 장치(226)의 실시예가 도시되어 있다. 데이타 입력(D0-7)은 입력버퍼(230)을 통해 검사 장치(226)에 입력된다. 입력 버퍼(230)의 출력은 입력 검사 회로 레지스터(입력 TCR;232)에 접속된다. 검사 회로 레지스터(232)의 출력은 레지스터(234)에 접속된다. 레지스터(234)의 출력은 출력 검사 회로 레지스터(출력 TCR;236)에 접속된다. 출력 TCR(236)의 출력은 출력 데이타 신고(Q0-7)을 제공하는 출력 버퍼(238)에 접속된다. 검사 셀(240 및 242)는 장치 외부로부터의 제어신호를 수신한다. 이 경우에, 검사 셀(242)은 클럭 입력(CLK)를 수신하고, 검사 셀(240)은 제어 입력(CO)를 수신한다. 검사 셀(240)의 출력은 삼상 동작용 출력 버퍼(238)에 접속된다. 검사 셀(242)의 출력은 레지스터(234)의 클럭 입력에 접속된다. 검사 장치(236) 외부로부터의 SDI 신호는 검사 셀(240), 스캔 바이패스(bypass) 레지스터(244) 및 명령어 레지스터(246)에 의해 수신된다. 스캔 데이타 경로는 검사 셀(240),검사 셀(242),입력 TCR(232) 및 출력 TCR(236)을 통과한다. 출력 TCR의 직렬 데이타 출력은 스캔 바이패스 레지스터(244)의 출력과 함께 멀티플렉서(248)에 접속된다. 멀티플렉서(248)는 명령어 레지스터(246)으로부터의 스캔 경로선택 신호를 수신한다. 멀티플렉서(248)의 출력은 명령어 레지스터(246)으로부터의 출력과 함께 멀티플렉서(250)에 접속된다. 또한, 멀티플렉서(250)은 검사포트(port, 252)로부터의 선택 신호를 수신한다. 검사 포트는 검사 장치(226) 외부로부터의 MODE 및 클럭(CLK) 신호를 수신하고, 스캔 및 검사 제어 신호를 출력시킨다. 또한, 명령어 레지스터(246)는 검사 제어 신호를 검사 셀(240 및 242), 및 TCR(232 및 236)으로 출력시킨다.
검사 레지스터에 입력된 제어 신호(CLK 및 OC)는 예시적인 신호이고, 특정 응용예에서는 다른 신호를 사용할 수 있다는 것에 유의한다. 예를 들어, 클리어(clear) 신호 또는 인에이블 신호는 검사 셀을 통해 적합하게 설계된 레지스터에 접속된다. 또한, 레지스터는 래치, 버퍼, 송수신기 및 다른 장치를 구현하기에 적합한 회로로 대체될 수 있다. 또한, 제어 및 데이타 I/O 신호의 수는 장치의 실시예에 따라 변할 수 있다.
검사 장치(226)의 스캔 구조물은 [검사 셀(240 및 242) 및 TCR(232 및 236)을 통과하는] 경계 스캔 경로, 스캔 바이패스 경로 및 명령어 스캔 경로를 포함한다. MODE 및 SCK 입력을 통해 발생된 스캔 액세스 프로토콜(protocol)은 직렬 데이타가 경계 및 바이패스 스캔 경로 또는 명령어 레지스터내로 스캔될 수 있게 한다. 경계와 바이패스 스캔 경로간의 선택은 멀티플렉스(248)를 향한 스캔 경로 선택 출력을 통해 명령어 레지스터내의 현재 명령에 의해 결정된다.
TCR(232 및 236)은 상술한 바와 같이 검사 셀(12)에 기초를 두고 있는 다수의 검사 회로를 포함한다. 전형적으로, TCR(232 및 236)은 PG/PSA 및/또는 프로그램가능한 다항 탭 논리부를 갖고 있는 다수의 검사 회로로 형성된다. 검사 셀(240 및 242)는 추가 회로가 없는 전형적인 기본 검사 셀(12)이다. 검사 셀(240 및 242)및 TCR(232 및 236)로의 제어 회로는 도시하지 않았지만, 제어 버스는 직렬 데이타 시프팅 및 검사 회로 제어용으로 각 셀에 접속된다.
검사 명령어는 경계 스캔 논리부가 검사 동작을 수행하게 하기 위해 명령어 레지스터(246)내로 스캔될 수 있다. 검사가 수행되지 않을 경우, 정상 동작 명령어는 명령어 레지스터(246)내로 스캔된다. 정상 동작 명령 동안, 경계 스캔 논리부는 정상I/O 및 제어 신호가 경계 스캔 논리부를 자유롭게 통과하게 한다.
경계 스캔 명령어는 [TCR(232 및 236) 및 검사 셀(240 및 242)를 통과하는] 경계 스캔 경로가 내부 I/O 신호를 제어하도록 명령어 레지스터내에 인스톨될(install) 수 있다. 이 제어 동작은 경계 스캔 셀의 DMX 입력을 하이 논리 레벨로 셋팅시킴으로써 달성된다. 이 모드에서, 외부 제어 신호는 경계 스캔 경로가 검사 셀 (240 및 242) 및 TCR(232 및 236)의 DIN 입력의 논리 레벨을 포착하도록 MODE 및 SCK 입력에 의해 발생된다. 포착 동작중에, 검사 셀(240 및 242) 및 입력 TCR(232)는 외부 데이타 출력(DO-7) 및 제어 입력의 상태를 포착한다. 또한, 포착 동작중에, 출력 TCR(236)은 내부 논리부(234)의 상태를 포착한다. 데이타가 포착된 경우에, 추가 외부 제어 신호가 MODE 및 SCK 입력을 통해 입력되어 경계선 스캔 경로가 SDO 핀을 통해 검사용 포착된 데이타를 외부로 쉬프트시키게한다.
포착된 데이타가 외부로 쉬프트되는 동안, 검사 제어 패턴은 SDI 입력을 통해 경계선 스캔 경로내로 쉬프트된다. 포착 및 쉬프트 동작 동안 HOLD 입력이 로우로 설정되므로 DOUT는 이들의 현재 상태를 유지한다. 이 상태가 유지되지 않으면, 출력에서 리플(ripple) 효과가 장치의 출력에 부착된 외부 논리부를 혼란 상태로 만들수 있다.
경계 스캔 경로 내외로 쉬프트시키는 동작이 완료되면, 추가 외부 제어 신호가 MODE 및 SCK 입력을 통해 입력되어 이미 설치된 제어 패턴이 여러 가지 검사 셀 및 TCR(240,242,232, 및 236)의 래치(26)으로부터 인가되게 한다. 경계선 스캔 경로 입력을 포착하는 과정과, 이를 뒤이어 경계 스캔 경로 출력으로부터 인가된 다음 검사 제어 패턴을 내부로 시프팅하는 동안 검사를 위해 포착된 데이타를 외부로 쉬프트시키는 것은 소기의 검사가 완료될 때까지 반복된다. 이 방식으로, 내부 논리부 및 외부 와이어링 상호접속부 및/또는 근처 IC들이 동시에 검사될 수 있다.
경계 데이타 샘플 명령어는 명령어 레지스터(242)내에 인스톨될 수 있다. 경계 데이타 샘플 명령어는 데이타 및 제어 신호가 경계 스캔 경로를 자유롭게 통과하도록 하는 한편,SCK 및 MODE 입력은 경계선 스캔 경로가 이들의 입력에 존재하는 논리 상태를 포착하게 한다. 경계 데이타가 일단 포착되면, 추가 외부 제어 신호가 SCK 및 MODE 입력을 통해 발생되어 경계 스캔 경로가 SDO핀을 통해 검사용 포착된 데이타를 외부로 쉬프트시키게 한다.
출력을 하이 임피던스 상태로 제어하는 명령어는 출력 버퍼(Q0-7)가 하이 임피던스 상태에 놓이게 한다. 출력은 하이 임피던스 상태이지만, 입력은 동작하고 데이타 및 제어 입력이 내부 논리부(234)에 계속해서 영향을 끼친다. 이 명령 동작 중에, 데이타 레지스터 스캔 동작 동안 검사 장치를 통해 단일 비트 스캔 경로를 형성하기 위해 스캔 바이패스 레지스터 (단일 플립-플롭)는 SDI 및 SDO 핀에 결합된다.
이 명령의 이점은 외부 검사 프로브가 인가되어 출력을 논리(1 또는 0)으로 제어하도록 삼상 조건으로 출력을 배치하는 것이다. 또한, 스캔바이패스 플립-플롭을 통과하는 단축(abbreviated) 데이타 스캔 경로는 내부 스캔 경로 길이를 단일 비트로 감소시킬 수 있다.
경계 출력을 논리 1 또는 0으로 제어하는 명령어는 검사 셀(240 및 242) 및 TCR(232 및 236)의 출력으로부터 사전 스캔된 검사 제어 패턴을 적용하도록 경계 스캔 경로가 I/O 신호를 제어할 수 있게 한다. 이 검사 명령을 수행하기 전에, 경계 스캔 경로는 명령에 의해 인가될 검사 제어 출력 패턴을 설치하도록 스캔될 것이다. 이 명령 동작중에, 데이타 레지스터 스캔 동작중에 검사 장치를 통하는 단일 비트 스캔 경로를 형성하기 위해 스캔 바이패스 레지스터는 SDI 및 SDO핀에 결합된다.
이 명령의 이점은 조합 논리부(224)와 같은 조합 논리부(224) 같이 검사 장치 출력에 접속된 다른 장치에 대한 검사가 수행되는 동안 검사 장치가 특정 패턴을 출력시키는 것이다. 또한, 명령 동작중에 스캔 바이패스 플립-플롭을 통과하는 단축 데이타 스캔 경로는 내부 스캔 경로 길이를 단일 비트까지 감소시키게 한다.
입력 및 출력 TCR(232 및 236)은 추가 검사 능력을 제공하기 위해 외부에서 인가된 SCK 입력과 동일하게 동작하도록 명령할 수 있다. 이 검사 동작들의 이점은 스캔 동작이 검사 동작중에 전혀 필요하지 않으므로, 검사 시간을 상당히 단축시킬 수 있다는 것이다.
제7도에 관련하여 PSA 동작에 대해 상세하게 설명하겠다. 입력 TCR(232)는 자체로 또는 출력 TCR(236)와 함께 PSA 동작을 수행할 수 있다. 16-비트 폭 기호(8-비트 TCR이라 가정할 때)를 제공하기 위해 합쳐져서 사용된 입력 및 출력 TCR(232 및 236)의 회로도는 제14도에 도시되어 있다. 데이타 입력에 나타나는 데이타는 입력 TCR(232)의 현재 상태와 합산되고, AND 게이트(253)으로부터 출력된 PSA/PRPG 검사 클럭 신호에 의해 입력 TCR(232)내로 클럭된다. PSA 동작중에, 입력 TCR(232)는 로드 모드로 배치되고, 출력 TCR(236)은 쉬프트 모드로 배치되며, 입력 TCR(232)로의 8-비트 쉬프트 레지스터 연장부로서 작용한다. 출력TCR(236)과 입력 TCR(232)를 조합함으로써, 8-비트 데이타 입력 버스의 16-비트 폭 기호가 유효하게 될 수 있다. 16비트 PSA 회로를 사용함으로써 입력 TCR(232)내에 압축될 수 있는 입력 데이타 패턴의 수는 255에서 65,535로 증가된다. PSA 동작중에, 출력 TCR(236)으로부터의 데이타 출력(Q0-7)은 선정된 패턴으로 고정되므로, PSA중에 데이타의 리플링(rippling)은 조합 논리부(224) 외부로는 전달되지 않는다.
PSA에 대한 클럭킹은 제14도에 도시된 게이팅 회로로부터 나온다. PSA 명령이 인스톨되고, 외부 제어부가 검사 포트(252)를 아이들 상태로 배치하면, 게이트 신호는 AND 게이트(253)가 SCK 입력을 TCR(232 및 236)으로 통과시킬 수 있도록 조정한다. 명령어 레지스터(246)는 명령어가 인스톨될 때 검사 클럭 인에이블 신호를 출력한다. 검사 포트(252)는 논-스캐닝 아이들 상태로 들어갈 때 동기 sync를 신호를 출력시킨다. 양자의 에이블 신호가 하이 상태로 설정되면, 외부 SCK는 PSA/PRPG 검사 클럭을 발생시키기 위해 AND 게이트(252)를 통해 게이트된다.
PSA 명령의 종료시에, 외부 제어신호(SCK 및 MODE)는 검사 포트(252)가 PSA/PRPG 검사 클럭을 억제하게 하고, 새로운 명령이 명령어 레지스터(246)내로 스캔된다. 스캔 경로가 정상 구조로 다시 설정된 후에, TCR(232 및 236)내에 저장된 기호는 후술한 경계 스캔 해독 명령어 레지스터를 통해 검사용으로 외부로 스캔 될 수 있다.
이와 마찬가지로, PRPG 명령은 출력 패턴 발생 동작을 제공하기 위해 명령어 레지스터(246)내에 인스톨될 수 있다. TCR(232 및 236)은 8-비트 출력 패턴의 수를 연장시킬 수 있는 16-비트 폭 패턴 밸생 동작을 제공하도록 다시 조합될 수 있다. 16-비트 구조는 제14도에 도시된 구조와 유사하다. PRPG 동작중에, 2개의 TCR은 쉬프트 모드내에 배치된다. 패턴 발생 신호는 출력 TCR(236)으로부터 출력된다. PRPG를 클럭시키는 동작은 PSA 명령 동작과 동일하다.
이와 마찬가지로, PRPG 명령은 출력 패턴 발생 동작을 제공하기 위해 명령어 레지스터(246)내에 인스톨될 수 있다. TCR(232 및 236)은 8-비트 출력 패턴의 수를 연장시킬 수 있는 16-비트 폭 패턴 발생 동작으 제공하도록 다시 조합될 수 있다. 16-비트 구조는 제14도에 도시된 구조와 유사하다. PRPG 동작중에, 2개의 TCR은 쉬프트 모드내에 배치된다. 패턴 발생 신호는 출력 TCR(236)으로부터 출력된다. PRPG를 클럭시키는 동작은 PSA 명령 동작과 동일하다.
이와 마찬가지로, 검사 클럭 인에이블 비트를 리설정시키고, 경계 스캔 경로를 이것의 정상 라우팅 경로로 재구성하기 위해 새로운 명령이 PRPG 동작의 종료시에 명령어 레지스터내로 스캔될 수 있다.
제15도에 관련하여 도시된 바와 같이, PSA와 PRPG는 동시에 실행될 수 있다. 이 구조에서, 입력 및 출력 TCR(232 및 236)은 조합되지는 않고, 오히려 그들 자신으로 피드백된다. 국부 멀티플렉서(254 및 256)는 요구된 피드백 접속부를 TCR(232 및 236)에 각각 제공한다. 이 구조내에서는 TCR이 함께 결합되지 않았으므로, PSA 및 PRPG 동작은 8-비트로 제한된다. PSA 및 PRPG 동작을 클럭시키는 동작은 PSA 명령어 레지스터에 관련하여 기술한 것과 동일하다.
제15도에 도시된, 동시에 발생하는 PSA 및 PRPG 명령과 구조적으로 유사하게, PSA 및 2진수 카운트 업(count up) 패턴 출력 명령도 동시에 수행될 수 있다. 이 명령 동작 동안, 입력 TCR(232)는 PSA를 수행하고, 출력 TCR(236)은 2진수 카운트 업 패턴을 출력시킨다. PSA 및 2진수 카운트 업 패턴 동작의 클럭킹 동작은 PSA 명령 동작에 관련하여 기술한 것과 동일하다. 2진수 카운트 업 패턴은 메모리 검사중에 2진수 어드레스 패턴을 제공할 때 유용하다. 이 명령 동작중에, 메모리 장치의 어드레스는 한 검사 레지스터의 TCR(236)으로부터의 카운트 업 패턴에 의해 동시에 발생되는 한편, 이것의 데이타 출력은 다른 검사 레지스터의 TCR(232)에 의해 압축된다. 유사한 검사 응용례는 PSA 및 PRPG 명령 동작에 의해 수행된다.
제16도에서, TCR(236)의 검사 셀(12)은 2진수 카운트 업 패턴이 TCR(236)으로부터 출력될 수 있도록 카운트 인에이블 논리부(258)에 부착되어 있다. 카운트 인에이블 논리부(258)는 다수의 AND게이트(260)을 포함한다. 각각의 AND 게이트(260)은 한 입력으로서 이전 AND게이트의 출력을 수신하고 다른 입력으로서 관련된 검사 셀(12)로부터의 DOUT 신호를 수신한다. 제1AND 게이트(260)은 최초의 2개의 검사 셀(12)로부터의 DOUT 신호를 수신한다. 각 AND 게이트(260)의 출력은 다음 검사 셀(12)의 A 선택부에 접속된다. 이와 같은 구조에서, TCR(236)내의 최하위 검사 셀(12)는 토글 모드(AB=01)로 설정되고, 선행 검사 셀(12)은 카운터 인에이블 논리로부터 각 검사 셀(12)의 A 입력에 이르는 논리 레벨 출력에 따라 토글 모드 또는 아이들 모드 중 하나의 모드에서 동작하도록 설정된다. 검사 셀(12)은 모든 후행 검사 셀이 하이 논리 레벨로 설정되는 경우에 PSA/PRPG 검사 클럭이 인가될 때 토글된다. 검사 셀(12)는 소정의 후행 검사 셀이 로우 논리 레벨로 설정되는 경우에 PSA/PRPG 검사 클럭이 인가될 때 그 현재 상태(아이들 상태)를 유지한다.
검사 셀(12)에 관련하여 상술한 다른 기능은 검사 장치에 의해 수행될 수 있다. 검사 장치는 이전 스캔 동작중에 출력 TCR(236)내에 인스톨된 데이타가 각 PSA/PRPG 검사 클럭 싸이클 동안 참(true) 출력 패턴과 이것의 보상(compliment) 출력 패턴 사이에서 토글 동작을 수행하도록 형성될 수 있다. 토글 능력은 장치의 출력 버퍼의 검사 동안, 기판 레벨에서(board level) 간단한 검사 패턴 발생기로서 유용하다. 토글 동작을 클럭시키는 동작은 PSA 명령에서 설명한 것과 동일하다.
또한, 경계 스캔 경로의 내용을 결정하기 위해 판독할 수 있다. 검사 장치는 이 동작 중에 정상 동작 모드 상태를 유지한다. 이 명령어는 포착 동작이 수행되지 않는다는 점에서 경계 스캔 및 경계 데이타 샘플 명령어와는 다르다. 경계 판독 명령어는 PSA 동작의 결과를 추출하는데 사용될 수 있다.
지금까지, 본 발명에 관해 상세하게 설명하였지만, 첨부된 청구 범위내에서 본 발명의 의의 및 범위를 벗어나지 않고 본 발명을 여러 가지로 변화, 대체 및 변경시킬 수 있다.

Claims (24)

  1. 검사 모드와 정상 모드에서 동작가능한 집적 회로에 있어서, 입력 데이타를 수신하기 위한 입력 회로부와; 출력 데이타를 전송하기 위한 출력 회로부와; 상기 입력 회로부와 상기 출력 회로부에 접속되어 있고, 상기 입력 데이타에 대해 기능을 수행하고(performing a function on said input data) 상기 출력 데이타를 발생시키기 위한 응용 논리 회로부와; 상기 입력 회로부에 접속되어 있고, 상기 직접 회로가 상기 검사 모드인 동안 내부적으로 제어되는 검사 동작(internally controlled test operations)을 수행하기 위한 입력 검사 셀들(input test cells)과; 상기 출력 회로부에 접속되어 있고, 상기 집적 회로가 상기 검사 모드인 동안 내부적으로 제어되는 검사 동작을 수행하기 위한 출력 검사 셀들(output test cells)과; 상기 집적 회로를 향해 또한 상기 집적 회로로부터 직렬 데이타를 전달하기 위해 상기 입력 및 출력 검사 셀들에 접속되어 있는 검사 제어 회로부를 포함하고, 상기 집적 회로가 상기 정상 모드인 동안, 선택된 내부적으로 제어되는 검사 동작을 위해 상기 입력 및 출력 검사 셀들을 셋업(setup)하기 위해, 상기 직렬 데이타가 상기 검사 제어 회로부에 의해 상기 검사 셀들로 전달되고, 상기 검사 제어 회로부는 상기 입력 및 출력 셀들에 접속되어 있는 제어 출력을 가지고 있으며, 상기 제어 출력은 상기 셋업이 완료된 후 상기 입력 및 출력 검사 셀들에 의한 상기 내부적으로 제어되는 검사 동작의 수행을 제어하고, 상기 검사 제어 회로부는 상기 내부적으로 제어되는 검사 동작이 완료되고 상기 집적회로가 상기 정상 모드로 되돌아간 후에, 상기입력 및 출력 검사 셀들로부터의 검사 결과를 직렬로 언로드함으로써 (by serially unloading) 상기 집적 회로로부터의 직렬 데이타를 전달하는 집적 회로.
  2. 제1항에 있어서, 상기 응용 논리 회로부는 적어도 하나의 조합 논리 회로(combinational logic circuit)를 포함하는 집적 회로.
  3. 제2항에 있어서, 상기 입력 검사 셀들과 출력 검사 셀들로부터 검사 결과를 언로드하기 위해 상기 집적 회로로부터의 직렬 데이타를 전달하는 상기 동작은 상기 입력 검사 셀들과 상기 출력 검사 셀들 내에 저장된 검사 결과를 변경시키지 않는 집적 회로.
  4. 제1항에 있어서, 상기 응용 논리 회로부는 적어도 하나의 순차 논리 회로 (sequential logic circuit)를 포함하는 집적 회로.
  5. 제1항에 있어서, 상기 입력 검사 셀들은 상기 입력 회로부와 상기 응용 논리 회로부 사이에 접속되어 있는 집적 회로.
  6. 제1항에 있어서, 상기 출력 검사 셀들은 상기 응용 논리 회로부와 상기 출력 회로부 사이에 접속되어 있는 집적 회로.
  7. 제1항에 있어서, 상기 입력 검사 셀들은 상기 검사 제어 회로부로부터의 상기 제어 출력에 응답하여 상기 입력 회로부에 의해 수신되는 입력 데이타를 수신하고 저장하기 위한 회로를 포함하는 집적 회로.
  8. 제1항에 있어서, 상기 출력 검사 셀들은 상기 검사 제어 회로부로부터의 상기 제어출력에 응답하여 상기 응용 논리 회로부로부터의 출력 데이타를 수신하고 저장하기 위한 회로를 포함하는 집적 회로.
  9. 제1항에 있어서, 상기 입력 검사 셀들은 상기 검사 제어 회로부로부터의 상기 제어 출력에 응답하여 상기 입력 데이타에 병렬 기호 분석(parallel signature analysis on said input data)을 수행하기 위한 회로를 포함하는 집적 회로.
  10. 제9항에 있어서, 상기 입력 검사 셀들은 상기 병렬 기호 분석 동작으로부터 상기 입력 데이타 중 선택된 신호를 마스크하기 위한 회로(circuitry to mask selected signals of said input data from said parallel signature analysis operation)를 더 포함하는 집적 회로.
  11. 제9항에 있어서, 상기 입력 검사 셀들은 프로그램 가능한 다항 궤환 논리 회로부(programmable polynomial feedback logic circuitry)를 포함하는 집적 회로.
  12. 제1항에 있어서, 상기 출력 검사 셀들은 상기 검사 제어 회로부로부터의 상기 제어 출력에 응답하여 상기 응용 논리 회로부에 의해 출력되는 데이타에 병렬 기호 분석 (parallel signature analysis)을 수행하고, 상기 출력 검사 셀들 중 적어도 일부는 상기 제어 출력에 응답하여 상기 병렬 기호 분석 동작으로부터 상기 출력 데이타중 선택된 신호를 마스크하기 위한 마스킹 논리 회로부를 더 포함하는 집적 회로.
  13. 제1항에 있어서, 상기 출력 검사 셀들은 상기 출력 데이타를 발생시키기 위해 선택적으로 의사 무작위 패턴 발생(pseudo-random pattern generation)을 행하고, 상기 검사 제어 회로부로부터의 상기 제어 출력에 응답하여 상기 출력 신호의 선택된 그룹에 상기 의사-무작위 패턴을 선택적으로 출력하는 집적 회로.
  14. 제13항에 있어서, 상기 출력 검사 셀들은 프로그램 가능한 다항 궤환 논리 회로부를 더 많이 포함하는 집적 회로.
  15. 제1항에 있어서, 상기 출력 검사 셀들은 상기 검사 회로부로부터의 상기 제어 출력에 응답하여 상기 출력 데이타 신호의 선택된 그룹에 상기 출력 데이타로서 2진 계수 패턴(binary counting patterns)을 선택적으로 출력하기 위한 회로를 포함하는 집적 회로.
  16. 제1항에 있어서, 상기 출력 검사 셀들은 상기 검사 회로부로부터의 상기 제어 출력에 응답하여 상기 출력 데이타 신호의 선택적 그룹에 상기 출력 데이타로서 토글 패턴(toggle patterns)을 선택적으로 출력하기 위한 회로를 포함하는 집적 회로.
  17. 제1항에 있어서, 상기 집적 회로가 상기 검사 모드일 때 상기 입력 검사 셀들과 상기 출력 검사 셀들이 동시에 검사를 수행하여, 상기 검사 제어 회로로부터의 상기 제어 출력에 응답하여 상기 출력 검사 셀들이 검사 데이타를 상기 출력 데이타로서 출력하는 동안, 상기 입력 검사 셀들에 의해 상기 입력 데이타가 검사 데이타로서 수신되는 집적 회로.
  18. 제17항에 있어서, 상기 입력 검사 셀들이 상기 입력 데이타의 선택된 신호로부터 데이타를 수신하고, 상기 출력 검사 셀들이 상기 출력 데이타의 선택된 신호에 검사 데이타를 출력하는 집적 회로.
  19. 제17항에 있어서, 상기 입력 검사 셀들은 상기 입력 데이타에 기호 분석을 행하는 한편 상기 출력 검사 셀들은 동시에 의사-무작위 패턴을 상기 출력 데이타로서 출력하는 집적 회로.
  20. 제17항에 있어서, 상기 입력 검사 셀들은 상기 입력 데이타에 기호 분석을 행하는 한편 상기 출력 검사 셀들은 동시에 2진 계수 패턴을 상기 출력 데이타로서 출력하는 직접 회로.
  21. 제17항에 있어서, 상기 입력 검사 셀들은 상기 입력 데이타에 기호 분석을 행하는 한편 상기 출력 검사 셀들은 동시에 토글 패턴을 상기 출력 데이타로서 출력하는 집적 회로.
  22. 제17항에 있어서, 상기 집적 회로가 상기 검사 모드인 동안, 상기 출력 검사 셀들은 제1클럭 에지에서 출력으로서 검사 데이타를 전송하고, 상기 입력 검사 셀들은 다음 클럭 에지에서 검사 데이타로서 입력 데이타를 저장하고, 상기 입력 검사 셀들은 상기 검사 제어 회로에 응답하여 검사 데이타로서 상기 저장된 입력 데이타를 후속하여 직렬로(subsequently serially) 출력하고, 상기 입력 검사 셀들과 상기 출력 검사 셀들은 상기 직렬 출력이 완료될 때까지 부가의 검사 데이타를 자장하고 전송하는 것이 금지되는 집적 회로.
  23. 제17항에 있어서, 검사 제어 회로부에서 스캔 경로-상기 스캔 경로는 단일한 플립 플롭으로 구성되어 있음-를 통하여 직렬 데이타가 쉬프트되는 동안 (while serial data is shifted through a scan path),상기 집적 회로의 상기 데이타 출력은 각각 3상 상태에 놓여 있는 (each placed in a tristate condition) 집적 회로.
  24. 제17항에 있어서, 검사 제어 회로부에서 스캔 경로-상기 스캔 경로는 단일한 플립 플롭으로 구성되어 있음-를 통하여 직렬 데이타가 쉬프트되는 동안, 상기 집적 회로의 상기 데이타 출력은 선정된 상태에 놓여 있는 (each placed in predetermined states) 집적 회로.
KR1019890012884A 1988-09-07 1989-09-06 검사 버퍼/레지스터 KR0165104B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US24143988A 1988-09-07 1988-09-07
US241439 1988-09-07

Publications (2)

Publication Number Publication Date
KR900005472A KR900005472A (ko) 1990-04-14
KR0165104B1 true KR0165104B1 (ko) 1999-04-15

Family

ID=22910707

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019890012884A KR0165104B1 (ko) 1988-09-07 1989-09-06 검사 버퍼/레지스터

Country Status (5)

Country Link
US (1) US5495487A (ko)
EP (1) EP0358365B1 (ko)
JP (1) JP2948835B2 (ko)
KR (1) KR0165104B1 (ko)
DE (1) DE68928837T2 (ko)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6522985B1 (en) * 1989-07-31 2003-02-18 Texas Instruments Incorporated Emulation devices, systems and methods utilizing state machines
US6304987B1 (en) * 1995-06-07 2001-10-16 Texas Instruments Incorporated Integrated test circuit
EP0358376B1 (en) * 1988-09-07 1995-02-22 Texas Instruments Incorporated Integrated test circuit
EP0382360B1 (en) 1989-02-08 1997-03-19 Texas Instruments Incorporated Event qualified testing architecture for integrated circuits
US5483518A (en) 1992-06-17 1996-01-09 Texas Instruments Incorporated Addressable shadow port and protocol for serial bus networks
JP3005250B2 (ja) * 1989-06-30 2000-01-31 テキサス インスツルメンツ インコーポレイテツド バスモニター集積回路
US6675333B1 (en) 1990-03-30 2004-01-06 Texas Instruments Incorporated Integrated circuit with serial I/O controller
US5550843A (en) * 1994-04-01 1996-08-27 Xilinx, Inc. Programmable scan chain testing structure and method
GB2288666B (en) * 1994-04-12 1997-06-25 Advanced Risc Mach Ltd Integrated circuit control
US5592681A (en) * 1994-06-14 1997-01-07 Texas Instruments Incorporated Data processing with improved register bit structure
JP2654352B2 (ja) * 1994-07-29 1997-09-17 日本電気アイシーマイコンシステム株式会社 半導体集積回路
JP2734394B2 (ja) * 1995-01-27 1998-03-30 日本電気株式会社 半導体集積回路装置
SE504041C2 (sv) * 1995-03-16 1996-10-21 Ericsson Telefon Ab L M Integrerat kretsarrangemang för provning
US5838934A (en) * 1995-06-07 1998-11-17 Texas Instruments Incorporated Host port interface
US5969538A (en) 1996-10-31 1999-10-19 Texas Instruments Incorporated Semiconductor wafer with interconnect between dies for testing and a process of testing
US5648973A (en) * 1996-02-06 1997-07-15 Ast Research, Inc. I/O toggle test method using JTAG
JP3691170B2 (ja) * 1996-08-30 2005-08-31 株式会社ルネサステクノロジ テスト回路
US6028983A (en) * 1996-09-19 2000-02-22 International Business Machines Corporation Apparatus and methods for testing a microprocessor chip using dedicated scan strings
US6260165B1 (en) 1996-10-18 2001-07-10 Texas Instruments Incorporated Accelerating scan test by re-using response data as stimulus data
US6408413B1 (en) 1998-02-18 2002-06-18 Texas Instruments Incorporated Hierarchical access of test access ports in embedded core integrated circuits
US6560734B1 (en) 1998-06-19 2003-05-06 Texas Instruments Incorporated IC with addressable test port
US6519729B1 (en) 1998-06-27 2003-02-11 Texas Instruments Incorporated Reduced power testing with equally divided scan paths
FR2783111B1 (fr) * 1998-09-08 2000-10-13 St Microelectronics Sa Circuit integre comportant une cellule de test modifiee pour resynchroniser ledit circuit integre
US6397374B1 (en) * 1998-09-30 2002-05-28 National Semiconductor Corporation Zero hold time circuit for high speed bus applications
US6158034A (en) * 1998-12-03 2000-12-05 Atmel Corporation Boundary scan method for terminating or modifying integrated circuit operating modes
US7058862B2 (en) * 2000-05-26 2006-06-06 Texas Instruments Incorporated Selecting different 1149.1 TAP domains from update-IR state
KR100337601B1 (ko) * 1999-09-27 2002-05-22 윤종용 내부 상태 모니터링 회로를 가지는 반도체 집적 회로 및 그를 이용한 내부 신호 모니터링 방법
DE60108993T2 (de) * 2000-03-09 2005-07-21 Texas Instruments Inc., Dallas Anpassung von "Scan-BIST"-Architekturen für einen Betrieb mit niedrigem Verbrauch
KR100377488B1 (ko) * 2000-07-20 2003-03-26 백우현 원적외선 황토타일 및 이의 제조방법
JP4228061B2 (ja) * 2000-12-07 2009-02-25 富士通マイクロエレクトロニクス株式会社 集積回路の試験装置および試験方法
KR100384419B1 (ko) * 2000-12-28 2003-05-22 우성세라믹스공업 주식회사 무정형 무늬 점토벽돌의 제조방법
US6904576B2 (en) * 2002-08-09 2005-06-07 Synplicity, Inc. Method and system for debugging using replicated logic
US7213216B2 (en) * 2002-08-09 2007-05-01 Synplicity, Inc. Method and system for debugging using replicated logic and trigger logic
US7398445B2 (en) * 2002-08-09 2008-07-08 Synplicity, Inc. Method and system for debug and test using replicated logic
KR100530831B1 (ko) * 2002-09-26 2005-11-23 우성세라믹스공업 주식회사 고령토(백토·점토), 장석 및 블랙그래눌을 활용한 도자기질 점토 벽돌 및 점토 바닥벽돌과 그 제조방법
US7682416B2 (en) 2004-02-17 2010-03-23 Donaldson Company, Inc. Air cleaner arrangements; serviceable filter elements; and, methods
JP2006329810A (ja) * 2005-05-26 2006-12-07 Nec Electronics Corp 半導体集積回路及びそのテスト方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4023142A (en) * 1975-04-14 1977-05-10 International Business Machines Corporation Common diagnostic bus for computer systems to enable testing concurrently with normal system operation
US4264807A (en) * 1979-04-09 1981-04-28 International Business Machines Corporation Counter including two 2 bit counter segments connected in cascade each counting in Gray code
JPS5618766A (en) * 1979-07-26 1981-02-21 Fujitsu Ltd Testing apparatus for logic circuit
DE3274910D1 (en) * 1982-09-28 1987-02-05 Ibm Device for loading and reading different chains of bistable circuits in a data processing system
US4513418A (en) * 1982-11-08 1985-04-23 International Business Machines Corporation Simultaneous self-testing system
EP0146645B1 (de) * 1983-12-08 1987-09-16 Ibm Deutschland Gmbh Prüf- und Diagnoseeinrichtung für Digitalrechner
EP0151653B1 (fr) * 1983-12-15 1987-09-16 International Business Machines Corporation Dispositif de sérialisation/désérialisation de configuration de bits de longueur variable
US4602210A (en) * 1984-12-28 1986-07-22 General Electric Company Multiplexed-access scan testable integrated circuit
US4710931A (en) * 1985-10-23 1987-12-01 Texas Instruments Incorporated Partitioned scan-testing system
US4701921A (en) * 1985-10-23 1987-10-20 Texas Instruments Incorporated Modularized scan path for serially tested logic circuit
US4710933A (en) * 1985-10-23 1987-12-01 Texas Instruments Incorporated Parallel/serial scan system for testing logic circuits
US4698588A (en) * 1985-10-23 1987-10-06 Texas Instruments Incorporated Transparent shift register latch for isolating peripheral ports during scan testing of a logic circuit
JPH0746120B2 (ja) * 1986-03-10 1995-05-17 株式会社東芝 テスト容易化回路及びテスト方法
JPS6337270A (ja) * 1986-07-31 1988-02-17 Fujitsu Ltd 半導体装置
KR910002236B1 (ko) * 1986-08-04 1991-04-08 미쓰비시 뎅기 가부시끼가이샤 반도체집적회로장치
US4821269A (en) * 1986-10-23 1989-04-11 The Grass Valley Group, Inc. Diagnostic system for a digital signal processor
JPS63182585A (ja) * 1987-01-26 1988-07-27 Toshiba Corp テスト容易化機能を備えた論理回路
JPS63291134A (ja) * 1987-05-22 1988-11-29 Toshiba Corp 論理集積回路
US5084874A (en) * 1988-09-07 1992-01-28 Texas Instruments Incorporated Enhanced test circuit
US5056094A (en) * 1989-06-09 1991-10-08 Texas Instruments Incorporated Delay fault testing method and apparatus
US5056093A (en) * 1989-08-09 1991-10-08 Texas Instruments Incorporated System scan path architecture

Also Published As

Publication number Publication date
EP0358365A3 (en) 1991-06-12
DE68928837T2 (de) 1999-05-12
KR900005472A (ko) 1990-04-14
US5495487A (en) 1996-02-27
DE68928837D1 (de) 1998-11-26
JPH02168176A (ja) 1990-06-28
EP0358365A2 (en) 1990-03-14
EP0358365B1 (en) 1998-10-21
JP2948835B2 (ja) 1999-09-13

Similar Documents

Publication Publication Date Title
KR0165104B1 (ko) 검사 버퍼/레지스터
KR0156547B1 (ko) 집적 회로용 검사셀
US5084874A (en) Enhanced test circuit
US5056094A (en) Delay fault testing method and apparatus
US6304987B1 (en) Integrated test circuit
US4833676A (en) Interleaved method and circuitry for testing for stuck open faults
KR960005606B1 (ko) 저 대역폭 검사 장비 및 프로브 스테이션을 사용하여 디지탈 마이크로회로의 단순 및 정확한 에이씨(ac) 검사를 제공하는 내장 검사 회로 및 속도 검사 방법
US4669081A (en) LSI fault insertion
US4742293A (en) Pseudo-memory circuit for testing for stuck open faults
US4876501A (en) Method and apparatus for high accuracy measurment of VLSI components
KR0165105B1 (ko) 개량된 검사 회로
US5130989A (en) Serial and parallel scan technique for improved testing of systolic arrays
US5793777A (en) System and method for testing internal nodes of an integrated circuit at any predetermined machine cycle
US20030200045A1 (en) Input/output characterization chain for an integrated circuit
Bhuyan et al. Estimating Stuck at Coverage percentage through scan flops during scan
CN119492975A (zh) 用于在固定测试期间测试同步域的方法
EP0286920A2 (en) Method and apparatus for high accuracy measurement of VLSI components
Macii Shift register diagnostics: an architectural solution

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 19890906

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 19940906

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 19890906

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 19971215

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 19980612

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 19980916

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 19980916

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20010728

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20020726

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20030718

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20040719

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20050722

Start annual number: 8

End annual number: 8

PR1001 Payment of annual fee

Payment date: 20060714

Start annual number: 9

End annual number: 9

PR1001 Payment of annual fee

Payment date: 20070718

Start annual number: 10

End annual number: 10

PR1001 Payment of annual fee

Payment date: 20080711

Start annual number: 11

End annual number: 11

PR1001 Payment of annual fee

Payment date: 20090716

Start annual number: 12

End annual number: 12

PR1001 Payment of annual fee

Payment date: 20100827

Start annual number: 13

End annual number: 13

PR1001 Payment of annual fee

Payment date: 20110830

Start annual number: 14

End annual number: 14

FPAY Annual fee payment

Payment date: 20120830

Year of fee payment: 15

PR1001 Payment of annual fee

Payment date: 20120830

Start annual number: 15

End annual number: 15

EXPY Expiration of term
PC1801 Expiration of term

Termination date: 20140316

Termination category: Expiration of duration