KR0169736B1 - 데이타 통신 인터페이스 및 이의 통신 방법 - Google Patents

데이타 통신 인터페이스 및 이의 통신 방법 Download PDF

Info

Publication number
KR0169736B1
KR0169736B1 KR1019910005001A KR910005001A KR0169736B1 KR 0169736 B1 KR0169736 B1 KR 0169736B1 KR 1019910005001 A KR1019910005001 A KR 1019910005001A KR 910005001 A KR910005001 A KR 910005001A KR 0169736 B1 KR0169736 B1 KR 0169736B1
Authority
KR
South Korea
Prior art keywords
data
circuit
bus
interface
register
Prior art date
Application number
KR1019910005001A
Other languages
English (en)
Other versions
KR910017300A (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 KR910017300A publication Critical patent/KR910017300A/ko
Application granted granted Critical
Publication of KR0169736B1 publication Critical patent/KR0169736B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • 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/318558Addressing or selecting of subparts of the device under test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C29/32Serial access; Scan testing

Landscapes

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

Abstract

직렬 스캔 경로 통신 아키텍쳐는 다수의 회로(30)를 포함하고, 이 회로들 중 소정의 회로는 메모리(36)를 포함할 수 있다. 메모리 억세스 제어기(38)는 메모리를 갖는 회로들 상에 포함되므로 직렬 데이타가 다중 시프트 동작들을 통해 반복적으로 순환되지 않더라도 메모리들로 기입될 수 있고 이 메모리들로부터 판독될 수 있다.

Description

데이타 통신 인터페이스 및 이의 통신 방법
제1도는 종래의 검사 버스를 도시한 블럭도.
제2도는 검사 억세스 포트(TAP)를 도시한 블럭도.
제3도는 다중 집적 회로를 통하는 시프트 경로를 도시하는 도면.
제4도는 집적 회로 구조내의 목표 집적 회로를 상세하게 도시한 블럭도.
제5도는 메모리 억세스 제어기를 포함하는 제4도의 목표 집적 회로를 도시한 블럭도.
제6도는 메모리 억세스 제어기를 도시한 블럭도.
제7도는 제6도의 메모리 억세스 제어기에 사용될 수 있는 헤더 검출기 회로를 도시하는 블럭도.
제8도는 제6도의 메모리 억세스 제어기에 사용될 수 있는 카운터 회로를 도시하는 블럭도.
* 도면의 주요부분에 대한 부호의 설명
10 : 아키텍쳐 30 : IC
14,16,18,20,34 : 레지스터 32 : 검사 버스 제어기
22,24,40,42 : 멀티플렉서 33 : 목표 IC
26,28 : 제어 버스 36 : 메모리
44 : 헤더 검출기 46 : 카운터
48 : 외부 디바이스 노드 50 : 직렬 입력/출력 제어기
본 발명은 일반적으로 집적 회로에 관한 것으로, 더욱 자세히 말자하면 직렬 데이타 통신 인터페이스 및 아키텍처에 관한 것이다.
회로 설계 기술의 발달에 따라서, 집적 회로와 인쇄 회로 기판과 같은 회로는 전자 설계 레벨면에서 점진적으로 복잡해지는 추세에 있다. 설계 밀도가 더 조밀하고 상호 접속 간격이 줄어듦으로써 불행히도 물리적 접근 가능성이 감소한다. 완제품은 검사 및 결함 제거중에 제어할 수 있고, 그리고 관찰할 수 있는 검사 능력이 필요하다. 제품이 선적되기 전에 소정의 제조 결점은 최종 검사중에 양호하게 검출할 수 있다. 논리 설계 단계에서 검사 가능성을 고려하지 않는다면 이러한 기본적인 필요성을 달성하기란 어려우므로, 자동 검사 장비가 제품을 검사할 수 있다. 예시적인 아키텍쳐는 본 명세서의 참고 문헌으로 사용된 1989년 8월 9일자로 출원되고, 훼트셀(Whetsel)에게 허여된 미합중국 특허 출원 제07/391,751호 및 제07/391,801호 및 텍사스 인스트루먼츠 기술 잡지(Texas Instruments Technical Journal)에 기재되어 있다.
현존하는 소정의 검사 버스 인터페이스는 디바이스 내의 논리 검사를 용이하게 하기 위해 직렬 데이타가 집적회로 내외로 시프트되도록 한다. 이러한 버스들은 단일 패턴의 직렬 데이타를 집적 회로의 선택된 스캔 경로로 한번의 시프트 동작마다 전송하도록 근본적으로 설계되어 있다. 그러나, 소정의 응용에 있어서, 집적 회로내의 국부 메모리(local memory)를 로드(load)하거나 언로드(unload)하기 위해 직렬 검사 버스를 사용하는 것이 요구될 수 있다. 메모리들이 다중 데이타 저장 위치들을 포함하기 때문에, 다중 데이타 패턴은 다중 시프트 동작을 사용하여 입력되어야 한다. 결과적으로, 데이타 패턴을 메모리 내외로 전송하는 것은 다중 시프트 동작 때문에 많은 시간이 소요된다.
따라서, 종래의 방법보다 더 효과적인 방식으로 디바이스를 억세스되도록 하는 직렬 데이타 입력 및 출력 방법에 대한 필요성이 당해 산업분야레서 발생하였다.
본 발명에 따르면, 종래의 인터페이스 디바이스와 관련된 단점 및 문제점을 실질적으로 제거하거나 방지하는 데이타 통신 인터페이스가 제공된다.
본 발명에 있어서, 데이타 통신 인터페이스는 디바이스와의 통신을 위해 제공된다. 데이타 통신 디바이스는 데이타를 전송하기 위한 버스 회로, 디바이스 및 이 버스 회로에 결합된 저장 회로, 및 버스와 다비이스 사이에 데이타를 시프트하도록 동작가능한 검사 인터페이스 회로를 포함한다. 디바이스 억세스 제어 회로는 제어 신호에 응답하여 저장 회로와 디바이스 사이에 데이타를 전송하도록 동작할 수 있다.
본 발명은 디바이스와 효과적으로 통신할 수 있는 기술적 장점을 제공한다. 또한, 본 발명은 현존하는 인터페이스 구조와 호환성이 있고 최소한의 하드웨어만을 추가하고자 한다.
지금부터, 동일 부분에는 동일한 참조 번호를 붙인 제1도 내지 제8도를 참조하여 본 발명의 양호한 실시예에 대하여 상세하게 설명하겠다.
제1도에는 종래의 검사 버스와 아키텍쳐(10)의 블럭도가 도시되어 있다. 아키텍쳐(10)은 TDI(test data input:검사 데이타 입력), TCK(test clock:검사 클럭), 및 TMS(test mode select:검사 모드 선택)입력들과 TDO(test data output:검사 데이타출력)를 포함한다. TCK 및 TMS 입력들은 TAP(test access port:검사 억세스 포트)(12)에 접속된다. TAP(12)의 출력은 데이타 레지스터 DREG1(14)와 DREG2(16), 바이패스 레지스터(18) 및 명령어 레지스터 IREG(20)에 접속된다. DREG1(14), DREG2(16) 및 바이패스 레지스터(18)의 출력은 제1멀티플렉서(22)에 접속된다. 제1멀티플렉서(22)의 출력과 IREG(20)의 출력은 제2멀티플렉서(24)에 접속된다. 또한, IREG(20)은 바이패스 레지스터(18), 및 제1멀티플렉서(22)의 선택포트에 접속된다. TAP(12)의 출력은 IREG(20), 및 제2멀티플렉서(24)의 선택포트에 접속된다. TDI 입력은 DREG1(14), DREG2(16), 바이패스 레지스터(18) 및 IREG(20)에 접속된다. 제2멀티플렉서(24)의 출력은 TDO 출력에 접속된다. TAP(12)과 DREGs(14및16), 바이패스 레지스터(18), IREG(20) 및 멀티플렉서(24) 사이의 접속은 제1제어 버스(26)를 구성한다. IREG(20), 바이패스 레지스터(18)과 제1멀티플렉서(22) 사이의 접속은 제2제어 버스(28)를 구성한다.
제1도에 도시된 아키텍쳐(10)은 IEEE P1149.1 검사 버스에 대응한다. 여러 가지 형태의 데이타 버스들이 있는데, IEEE P1149.1 검사 버스에 대한 설명은 본 발명의 장점을 설명하는데 사용될 수 있다. 이러한 아키텍쳐는 검사를 용이하게 하기 위한 IC 설계시에 직렬 시프트 레지스터들을 연속적으로 억세스하기 위한 표준 방법을 제공하기 위해 개발되었다. 제1도에 도시된 것과 같은 검사 아키텍쳐는 명령어 레지스터(IREG;20), 바이패스(18)에 대해 조회되는 한 셋트의 데이타 레지스터(14), 즉 DREG1(14)와 DREG2(16), 및 검사 억세스 포트(TAP;12)에 대해 조회되는 검사 인터페이스로 구성된다. 아키텍쳐내에서 단지 1개의 IREG(20)만이 실행될 수 있지만, 다수의 DREG들이 포함될 수도 있다. 또한, IEEE P1149.1의 표준에 맞추기 위해서, DREG들 중 한 개의 레지스터는 단일 비트 바이패스 DREG로서 동작하도록 제공되어야 한다. 이 바이패스 DREG는 IC에 의해 1비트만큼 데이타 레지스터 스캔 경로 길이를 단축시킬 수 있다.
IREG(20)과 DREG(14-18)들은 검사 데이타 입력 핀(TDI)와 검사 데이타 출력 핀(TDO) 사이에 병렬로 정열된 분리된 스캔 경로상에 존재한다. IREG 스캔 동작중에, TAP(12)는 TDI 입력으로부터 IREG(20)을 통해 TDO 출력까지 데이타를 시프트시키기 위해, 검사 모드 선택(TMS) 신호와 검사 클럭(TCK) 신호들인 외부 제어신호를 수신하고, 제어버스(26)를 통해 내부 제어 신호를 출력시킨다. 이와 마찬가지로, DREG 스캔 동작은, 선택된 DREG들을 통해 데이타를 시프트시키기 위해 TMS 및 TCK 입력상의 외부 제어신호를 수신하고, 제어버스(26)상의 내부 제어신호를 출력시키는 TAP(12)에 의해 달성된다. DREG들 중 하나의 DREG를 선택하기 위한 제어는 IREG내로 시프트된 명령어를 입력시키고, IREG로부터 제어 버스(28)를 통해 출력된다. 버스(28) 상의 제어 출력신호는 모든 DREG 들에 입력되고, 시프트를 위해 하나의 신호를 선택한다. 또한, 제어버스(28)는 선택된 DREG의 직렬 출력을 TDO 출력에 결합시키기 위해 멀티플렉서(22)에 입력된다.
TAP(12)는 TMS 및 TCK 입력들을 경유하여 스캔 억세스 프로토콜(protocol) 입력신호에 응답하는 유한 상태 머신(finite state machine)이다. TAP(12)의 목적은 IREG(20) 또는 DREG(14내지18)을 통해 데이타를 시프트시키기 위해 입력 스캔 억세스 프로토콜 신호에 응답하기 위한 것이다. TAP는 TCK 입력에 의해 클럭되고 TMS 입력에 기초하여 상태 전이(state transition)가 이루어진다.
16가지 상태들로 구성되는 TAP 상태도(state diagram)는 제2도에 도시되어 있다. 이 16가지 상태들은 검사 논리 리셋(TLRESET), 실행 검사/아이들(RT/IDLE), 선택 데이타 레지스터 스캔(SELDRS), 선택 명령어 레지스터 스캔(SELIRS), 포착 데이타 레지스터(CAPTUREDR), 시프트 데이타 레지스터(SHIFTDR), 출구1 데이타 레지스터(EXIT1DR), 휴지 데이타 레지스터 스캔(PAUSEDR), 출구2 데이타 레지스터(EXIT2DR), 갱신 데이타 레지스터(UPDATEDR), 포착 명령어 레지스터(CAPTUREDR), 시프트 명령어 레지스터(SHIFT1R), 출구1 명령 레지스터(EXIT1IR), 휴지 명령어 레지스터 스캔(PAUSEIR), 출구2명령어 레지스터(EXIT2IR), 및 갱신 명령어 레지스터(UPDATEIR)가 있다.
작동 개시 또는 호스트(host) IC의 정상 동작중에, TAP는 TLRESET 상태에 있을 수 있다. 이 상태에서, TAP는 호스 IC의 정상 동작을 방해하지 않는 조건으로 모든 검사 논리를 발생시키는 리셋 신호를 발생한다. 검사 억세스가 요구되는 경우, 프로토콜 신호는 TMS 및 TCK 입력들을 경유하여 공급되어 TAP가 TLRESET 상태로 배출시키게 하고, RT/IDLE 상태로 들어오게 한다. 제2도에 있어서, TAP 상태들 사이에서 이동을 하게하는 TMS 입력은 논리 0 또는 1로 도시하였다. TCK는 TAP 상태 제어기가 상태간 전이를 발생시키게 하는 클럭이다.
RT/IDLE 상태에 있어서, 명령어 레지스터 스캔 프로토콜은 CAPTUREIR 상태로 들어가기 위해서 SELDRS 및 SELIRS 상태들을 통하여 TAP 전이를 위해 발생될 수 있다. CAPTUREIR 상태는 IREG를 TDO 출력 핀으로 시프트 아웃 될 상태 데이타로 프리로드(preload)하는데 사용된다. CAPTUREIR 상태에 있어서, TAP는 SHIFTIR 또는 EXIT1IR 상태로 전이시킨다. 통상적으로, SHIFTIR이 CAPTUREIR 상태에 종용되므로, 새로운 데이타가 TD1 입력을 경유하여 IREG로부터 프리로드된 데이타가 TDO 출력을 경유하여 검사(inspection)을 위한 IREG의 시프트 아웃 될 수 있고, 새로운 데이타는 TDI 입력을 경유하여 IREG의 시프트 아웃된다. SHIFTIR 상태를 종용하면, TAP는 EXIT1IR 및 UPDATEIR 상태를 경유하여 RT/IDLE 상태로 복귀하거나, EXIT1IR을 경유하여 PAUSEIR 상태로 들어간다. PAUSEIR 상태로 들오가는 이유는 IREG를 통해 데이타의 시프팅을 일시적으로 중지하기 위한 것이다. PAUSEIR 상태에 있어서, 시프팅은 EXIT21R 상태를 경유하여 SHIFTIR 상태로 다시 들어감으로써 다시 점유될 수 있고, 또는 이것은 EXIT2IR 및 UPDATEIR 상태를 경유하여 RT/IDLE 상태로 들어감으로써 종결될 수 있다.
RT/IDLE 상태에 있어서, 데이타 레지스터 스캔 프로토콜은 CAPTUREDR 상태로 들어가기 위해 SELDRS 상태를 통해 TAP 전이 하도록 발생될 수 있다. CAPTUREDR 상태는 선택된 DREG를 TDO 출력 핀으로 시프트 아웃될 데이타로 프르로드하는데 사용된다. CAPTUREDR 상태에 있어서, TAP는 SHIFTDR 또는 EXIT1DR 상태로 전이시킨다. 통상적으로, SHIFTDR은 CAPTUREDR 상태에 종용하므로, 프리로드된 데이타가 TDO 출력을 경유하여 검사를 위한 DREG으로 시프트 아웃 될수 있고, 새로운 데이타가 TDI 입력을 경유하여 DREG로 시프트 된다. SHIFTDR 상태를 종용하면, TAP는 EXIT1IR 및 UPDATEIR 상태를 경유하여 RT/IDLE 상태로 복귀하거나, EXIT1IR을 경유하여 PAUSEIR 상태로 들어간다. PAUSEIR 상태로 들어가는 이유는 IREG를 통해 데이타의 시프팅을 일시적으로 중지하기 위한 것이다. PAUSEIR 상태에 있어서, 시프팅은 EXIT2IR 상태를 경유하여 SHIFTIR 상태로 다시 들어감으로써 다시 점유될 수 있고, 또는 이것은 EXIT2IR 및 UPDATEIR 상태를 경유하여 RT/IDLE 상태로 들어감으로써 종결될 수 있다.
RT/IDLE 상태에 있어서, 데이타 레지스터 스캔 프로토콜은 CAPTURE 상태로 들어가기 위해 SELDRS 상태를 통해 TAP 전이를 위해 발생될 수 있다. CAPTUREDR 상태는 선택된 DREG를 TDO 출력 핀으로 시프트 아웃 될 데이타를 프리로드하는데 사용된다. CAPTUREDR 상태에 있어서, TAP는 SHIFTDR 또는 EXIT1DR 상태로 전이시킨다. 통상적으로, SHIFTDR은 CAPTUREDR 상태에 종용하므로, 프리로드된 데이타가 TDO 출력을 경유하여 검사를 위한 DREG으로 시프트 아웃 될 수 있고, 새로운 데이타가 TDO 출력을 경유하여 검사를 위한 DREG로부터 시프트되며, 새로운 데이타가 TDI 입력을 경유하여 DREG로 시프트된다. SHIFTDR 상태를 종용하면, TAP는 EXIT1DR 및 UPDATEDR 상태를 경유하여 RT/IDLE 상태로 복귀하거나, EXIT1DR을 경유하여 PAUSEDR 상태로 들어간다. PAUSEDR 상태로 들어가는 이유는 DREG를 통해 데이타의 시프팅을 일시적으로 중지하기 위한 것이다. PAUSEDR 상태에 있어서, 시프팅은 EXIT2DR 상태를 경유하여 SHIFTDR 상태로 다시 들어감으로써 다시 점유될수 있고, 또는 이것은 EXIT2DR 및 UPDATEDR 상태를 경유하여 RT/IDLE 상태로 들어 감으로써 종결될 수 있다.
한 응용에 있어서, IEEE P1149.1에 기재된 아키텍쳐를 실시하는 다수의 IC들은 제3도에 도시된 바와 같이 회로 기판 레벨에서 직렬로 함께 접속된다. 이와 마찬가지로, 다수의 회로 기판들은 직렬로 함께 접속된 IC의 수를 더욱 증가시키기 위해 함께 접속될 수 있다. 제3도의 IC(30)은 TDI 입력 및 TDO 출력 핀들을 경유하여 제1의 IC부터 최종 IC까지 직렬로 접속된다. 또한, 각각의 IC는 검사 버스 제어기(32)로부터 입력된 TMS 및 TCK 제어 신호를 수신한다. 또한, 검사 버스 제어기는 직렬 경로내의 제1 IC의 TDI 입력으로 직렬 데이타를 출력시키고, 직렬 경로내의 최종 IC의 TDO 로부터 직렬 데이타를 수신한다. 상술한 TAP 프로토콜에 의하면, 내부 IREG 또는 DREG들을 통해 데이타를 시프트하기 위해서, 모든 IC들이 함께 동작하도록 검사 버스 제어기는 TMS 및 TCK 신호들을 제어할 수 있다.
IREG 시프트 동작중에, 시프트 경로의 전체 길이는 각각 IC의 IREG내의 비트들의 합과 같다. 예를 들면, 100개의 IC들이 제3도의 직렬 경로에 있고 각각의 IC의 IREG의 길이가 8비트라면, IREG 시프트 동작 당 시프트되어야 하는 비트들의 수는 800개이다. 이와 마찬가지로, DREG 시프트 동작중에, 직렬 경로의 총 길이는 각각의 IC의 선택된 DREG내의 비트들의 합과 같다. 바이패스 DREG가 각 IC 내에서 선택되면, DREG 스캔 중에 시프트된 비트들의 총 수는 IC의 수 X 1비트와 동일한데, 그 이유는 바이패스 DREG의 길이가 단지 1비트에 해당되기 때문이다. 각 IC는 IREG내에 상이한 명령어를 로드함으로써 상이한 DREG를 선택할 수 있다. 예를 들어, 제1의 IC는 많은 비트들로서 DREG를 선택할 수 있고, 다른 모든 IC들은 바이패스 DREG를 선택할 수 있다. 전형적으로, IC내에서 검사가 전혀 수행되지 않을 때, 이것의 바이패스 DREG는 IC의 DREG비트 길이를 단일 비트만큼 감소시키도록 선택된다.
제4도에는 제3도에 도시된 IC 장치와 유사한 IEEE의 P1149.1의 검사 버스상에 접속된 IC 장치가 도시되어 있다. 목표(target;33)이라 하는 그룹내의 중간 IC는 검사 버스를 경유하여 DREG(34)로, 또는 DREG(34)로부터 데이타를 로드 및/또는 언로드할 수 있게 하기 위해, 메모리(36)로 도시된 디바이스에 결합되는 DREG(34)를 포함한다. 또한, 제4도에는 목표 IC(33)내부의 DREG 및 메모리가 도시되어 있다. DREG(34)와 관련된 디바이스가 메모리이고, 다른 IC 또는 기판과의 인터페이스로서 데이타 소오스(data source) 및 수신지(destination)는 DREG(34)에 결합된다. 목표 IC의 TDI 입력과 검사 버스 제어기의 TDO 출력 사이에는 n IC들이 있다. 또한, 목표 IC들의 TDO 출력과 검사 버스 제어기의 TDI 입력 사이에는 m IC들이 있다.
메모리 판독 동작중에, 검사 버스 제어기(32)는 제4도의 각 IC의 IREG 내로 명령어들을 로드하기 위해 TMS 및 TCK 상에 제어 신호를 입력한다. 스캔 경로 길이를 최소 길이로 줄이기 위해서, 목표 IC를 제외한 모든 IC들은 바이패스 DREG를 선택하는 명령어로 로드된다. 목표 IC는 내부 메모리에 접속된 DREG를 선택하고 판독 동작을 위해 DREG 및 메모리로 구성되는 명령어로 로드된다.
목표 IC의 메모리(36)으로부터 데이타를 판독할 때, 검사 버스 제어기(32)는 이것의 TDI 입력으로부터 데이타를 입력시키는 데에만 필요하고; 이것은 TDO 출력으로부터 데이타를 출력시키는데에는 필요하지 않다. 검사 버스 제어기에 입력된 직렬 데이타의 비XM 길이는 각IC(T+1....T+m)의 바이패스 레지스터의 비트 플러스 메모리 워드(memory word)내의 비트들의 수에 의해 결정된다. 메모리 워드 폭이 8비트이고, 100개의 IC들이 목표 IC(33)과 검사 버스 제어기(32) 사이에 존재한다고 가정하면, 각 판독 동작을 위해 검사 버스 제어기(32)에 입력되어야 할 비트의 수는 108비트이다.
메모리 판독 동작중에, DREG들이 데이타를 포리로드하도록 하는 버스(26) [제1도참조]상에 내부 제어 신호를 출력하도록 각 IC의 TAP는 검사 버스 제어기(32)로부터의 외부 TMS 및 TCK 제어 신호에 응답한다. 목표 IC의 DREG는 8비트 메모리 데이타 워드로 프리로드하고 , 다른 IC(T+1 내지 T+m)들의 각각의 바이패스 레지스터들은 논리 0으로 프리로드한다. 각IC의 DREG들이 로드된 후에, 각IC의 DREG에 로드된 데이타를 시프트 아웃 시키기 위해 각 IC내의 TAP들이 버스(26)상의 내부 제어신호를 출력하게 하기 위해서 검사 버스 제어기는 TMS 및 TCK를 제어한다.
검사 버스 제어기의 TDI 입력에 입력된 직렬 데이타는 108비트의 스트림(stream)이다. 제1의 100비트는 IC(T+1 내지 T+m)들의 바이패스 레지스터로부터 모두 논리 0이고, 최종 8비트는 목표 IC의 메모리로부터 판독된 데이타이다. 검사 버스 제어기가 108비트를 모두 수신한 후, 각 IC내의 각 TAP가 시프팅 프로세스(shifting process)를 중지하게 하기 위해 TMS 및 TCK 상에 제어 신호를 발생시킴으로써 시프팅 동작을 종결시킨다. 시프트 동작을 중지시킴으로써 종용되는 데이타를 프리로드하여 목표 IC로부터 시프트 아웃 시키는 상술한 처리 방법은 메모리로부터 판독된 각각의 추가 데이타 패턴에 대해 반복되어야 한다.
데이블1은 제4도에 도시된 각 IC 의 TAP가 1개의 메모리 워드를 판독하기 위해 완전히 전이되어야 하는 상태를 나타낸다(제2도와 관련하여 상술하였음). 데이블1은 데이타의 시프팅을 개시하기 전에, 각 판독 동작의 개시시에 3개의 TCK를 취하는 것을 나타낸다. 3개의 TCK들 중 하나의 TCK는 DREG 내에 데이타를 로드하는데 사용되고, IC(T+1 내지 T+m)들의 바이패스 레지스터들은 논리 0으로 로드되며, 목표 IC의 DREG는 8비트 메모리 워드로 로드된다. IC 들의 외부로 및 검사 버스 제어기내로 데이타를 시프팅하는 것은 108개의 추가 TCK를 필요로 한다. 108비트 데이타 패턴이 시프트 아웃 된 후, 메모리 판독 동작을 종결하기 위해서 2개의 추가 TCK가 취해진다. 제4도의 목표 IC로부터 1개의 8-비트 메모리 워드를 판독하는데 필요한 TCK의 수는 총 113개이다. 따라서 메모리가 판독될 1,000개의 워드를 갖고 있는 경우, 테이블1내의 상태 순서(state sequences)는 총 113,000 TCK 사이클을 1,000번 반복해야 한다.
Figure kpo00002
검사 버스 제어기는 메모리 기입 동작중에, 각 IC의 IREG 내에 명령어들을 로드시키기 위해 제4도에 도시된 IC들의 TMS 및 TCK 입력상의 제어 신호를 입력한다. 스캔 경로 길이를 최소 길이로 축소하기 위해서, 목표 IC를 제외한 모든 IC들은 바이패스 DREG를 선택하는 명령어로 로드된다. 목표 IC는 내부 메모리에 접속된 DREG를 선택하고, 기입 동작을 위한 DREG 및 메모리로 구성되는 명령어로 로드된다.
목표 IC의 메모리내에 데이타를 기입할 때, 검사 버스 제어기는 이것의 TDO 출력으로부터의 데이타를 출력하는 데만 필요하고, 이것은 TDI 출력으로부터의 데이타를 입력하는데는 필요하지 않다. 검사 버스 제어기로부터 출력된 직렬 데이타의 비트 길이는 각 IC(1...n)의 바이패스 레지스터의 비트 플러스 메모리 워드 내의 비트들의 수에 의해 결정된다. 메모리 워드 폭이 8비트이고 100개의 IC 들이 검사 버스 제어기와 목표 IC 사이에 존재한다고 가정하면, 각 기입 동작을 위해 목표 IC에 출력되어야 하는 비트의 수는 108비트이다.
메모리 기입 동작중에, DREG 들이 데이타를 프리로드하도록 하는 버스(26) [제1도참조] 상에 내부 제어신호를 출력하도록 각 IC의 TAP는 검사 버스 제어기로부터의 외부 TMS 및 TCK 제어 신호에 응답한다. 논리 0으로 각각 프리로드된 다른 IC(1내지n)들의 바이패스 레지스터들과 메모리 데이타를 판독하지 못하기 때문에 목표 IC의 DREG는 돈트 캐어(don't care) 데이타를 프리로드한다. 각 IC의 DREG들의 로드된 후에, 검사 버스 제어기로부터 출력된 8-비트 데이타 워드를 시프트 인 하기 위해서 IC 내의 TAP 들이 버스(26)상에 내부 제어신호를 출력하도록 검사 버스 제어기는 TMS 및 TCK를 제어한다.
8-비트 데이타 워드의 수신지는 목표 IC의 8-비트 DREG이다. 그러나, 8-비트 데이타 워드가 목표 IC로 들어가기 전에, 이것은 IC(1내지n)들의 바이패스 비트들을 통해 먼저 시프트되어야 한다. 목표 IC의 DREG 내로 8-비트 데이타 워드를 입력시키기 위해서, 데이타의 108비트들이 시프트되도록 하기 위해 검사 버스 제어기는 TMS 및 TCK 신호들을 제어한다. 108 데이타 비트가 시프트된 후, 8-비트 데이타 워드는 IC(1내지m)들의 100개의 바이패스 레지스터 비트들을 통해 목표 IC의 8-비트 DREG로 시프트된다. 데이타 워드가 목표 IC의 DREG내에 로드된 후, 시프팅 프로세서를 중지하고 메모리 내에 데이타 워드를 로드하기 위해서, 검사 버스 제어기 출력은 TMS 및 TCK 신호들을 제어한다. 그 다음에 메모리 내에 데이타를 기입함으로써 종용되는 데이타를 프리로드하고 목표 IC로 데이타를 시프팅하는 상술한 처리 방법은 메모리 내에 기입된 각각의 추가 데이타 워드에 대해 반복되어야 한다.
테이블2는 제4도에 도시된 각 IC(30)의 TAP(12)가 1개의 메모리 워드를 기입하기 위해 완전히 전이되어야 하는 상태를 나타낸다(제2도와 관련하여 상술하였음). 테이블2는 데이타의 시프팅을 개시하기 전에, 각 기입 동작의 개시 시에 3개의 TCK를 취하는 것을 나타낸다. 3개의 TCK들 중 하나의 TCK는 DREG내에 데이타를 로드하는데 사용되고, IC(1내지n)들의 바이패스 레지스터들이 논리 0으로 로드되며, 목표 IC의 DREG가 돈트 캐어(don't care) 데이타 패턴으로 로드된다. 100개의 선행 IC들을 통해 목표 IC의 DREG로 시프팅하는 것은 108개의 추가 TCK들을 필요로 한다. 8-비트 데이타 패턴이 목표 IC 의 DREG로 시프트된 후, 시프트 동작을 중지하고 메모리 내에 데이타를 기입하기 위해서는 2개의 추가 TCK를 취한다. 목표 IC의 메모리 내에 하나의 8-비트 메모리 워드를 기입하는데 필요한 TCK들의 총 수는 113개이다. 메모리가 기입될 1,000개의 워드를 가지면, 테이블2에서의 상태 순서는 총 113,000 TCK 사이클들에 대해 1,000번을 반복해야 한다.
Figure kpo00003
이러한 2가지 예에서, 예외적인 다수의 TCK들이 IEEE의 P1149.1의 TAP 프로토콜을 사용하여 메모리에 데이타를 로드 또는 언로드하는데 필요하다는 것이 명백해졌다. 메모리 억세스 시간이 필요한 TCK들의 수만큼 선형적으로 증가하기 때문에, IEEE의 P1149.1의 TAP 프로토콜을 사용하여 메모리를 로드 또는 언로드하는데 예외적으로 장시간이 소요될 수 있다.
상술한 예들과 1MHz의 TCK 주파수를 사용하면, 1,000개의 위치를 갖는 메모리에 대한 억세스 시간은 다음과 같다:
Figure kpo00004
본발명의 양호한 실시예는 IEEE P1149.1의 아키텍쳐, 또는 스캔 아키텍쳐에 기초한 소정의 다른 직렬 형태와 호환성이 있도록 설계된 제어기를 제공함으로써, 메모리로의 판독/기입 억세스 시간을 단축시킨다. 이 제어기를 메모리 억세스 제어기(MAC)라 하는데 단일 P1149.1 TAP 기입 또는 판독 동작을 사용하여 연속적으로 메모리에 기입하거나 메모리로부터 판독하는데 필요한 내부 시간 및 제어신호를 제공한다. 이러한 방법의 장점은 상술한 바와 같은 다중 TAP 판독 또는 기입 동작을 통해 반복 사이클을 가질 필요성을 제거한다.
제5도에 있어서, 상술한 바와 같은 DREG와 메모리의 조합과 함께 P1149.1 아키텍쳐가 포함되어 있는 양호한 실시예의 MAC가 도시되어 있다. 제5도는 MAC(38)이 검사 버스(28)로부터의 입력 및 TDI 입력을 수신하고, RDO 출력을 멀티플렉서(22)로 출력한다는 점에서 제1도와 다르다. 메모리 억세스 동작이 수행되지 않을 때, MAC(38)은 비활성적이고, 아키텍쳐는 제1도와 관련하여 기술한 바와 같이 동작한다. 그러나, 명령어가 메모리 판독 또는 기입 동작을 인에이블하는 IREG 내에 로드될 때, TAP(12)와 TMS 및 TCK 제어 신호로 동시에 동작하기 위해 MAC는 버스(28)로부터의 제어 입력을 경유하여 인에이블된다.
메모리 억세스 동작 중에, MAC(38)은 제5도에 도시된 DREG 및 메모리를 동작시키는 버스(26) 상의 TAP(12)로부터 출력된 신호들을 제어한다. 판독 및 기입 동작 중에 필요한 기능들을 수행하기 위해서, MAC(38)은 메모리 억세스 중에 TAP와 TMS 및 TCK 입력들을 모니터 하여 버스(26)상에 제어신호를 출력한다. 메모리 판독 동작 중에 MAC는, 메모리 데이타가 검사 버스 제어기 시프트 아웃될 DREG(34)로 로드될 때를 결정한다. 메모리 기입 동작 중에, MAC는 검사 버스 제어기(32)로부터의 DREG(34)로 시프트된 데이타가 메모리 내에 로드될 때를 결정한다. 다음의 예들은, MAC가 상술한 방법에 의해 메모리 판독 및 기입 동작을 제공하는 것을 나타낸다.
제4도에 도시된 목표 IC의 내부 아키텍쳐는 제5도에 도시된 바와 같이 MAC를 포함한다. 메모리 판독 동작 중에, 검사 버스 제어기는 각 IC의 IREG에 명령어를 로드시키기 위해 제4도의 IC들의 TMS 및 TCK 입력들을 제어한다. 목표 IC(33)을 제외한 모든 IC들은 바이패스 DREG를 선택하는 명령어로 로드된다. 목표 IC는 MAC(38)을 인에이블 시키고 판독 동작을 위해 DREG와 메모리로 구성되는 명령어로 로드된다. 목표 IC의 DREG(34)는 길이가 8비트이고, 100개의 IC(T+1 내지 T+m)들은 목표 IC와 검사 버스 제어기 사이에 존재한다.
DREG(34)가 로드되고 메모리 데이타를 시프트 아웃시킬 때 MAC(38)이 제어되기 때문에, 전체 메모리를 판독하는 태스크(task)는 하나의 판독 동작으로 수행될 수 있다. 검사 버스 제어기(32)가 TMS 및 TCK 신호들을 제어함으로써 판독 동작을 개시할 때, IC(T+1 내지 T+m)의 바이패스 레지스터들은 논리 0으로 프리로드하고, MAC(38)은 제1의 8-비트 메모리 데이타 워드로 목표 IC의 DREG를 로드시킨다. 검사 버스 제어기(32)가 시프트 동작을 개시시키기 위해 제어 신호를 출력시킬 때, IC들(T+1 내지 T+m)의 바이패스 레지스터들과 목표 IC의 DREG는 검사 버스 제어기의 RDI 입력을 향해 데이타를 시프트 시키기 시작한다.
데이타 비트의 시프트를 종료시에 목표 IC의 DREG 내에 초기에 로드된 8-비트 데이타 워드는 DREG으로 시프트 아웃되고 제1의 8개의 IC(T+1 내지 T+8)들의 바이패스 비트들로 시프트 인 된다. 최종 데이타 비트(제8비트)가 DREG으로 시프트 아웃될 때, MAC(38)은 메모리(36)으로부터 다음 8-비트 데이타 워드를 로드시키기 위해 버스(26)상에 제어신호를 출력한다. 이 로드 동작은 TCK가 DREG(34)의 최종(제8번째) 비트를 시프트 아웃시키는 중에 발생하므로 다음 워드의 제1비트가 다음 TCK 시프트 사렌클 상에서 시프트 아웃될 수 있다. IC(1 내지 m)의 바이패스 비트들은 검사 버스 제어기의 TDI 입력으로의 메모리 데이타 인루트(memory data enroute)에 대한 임의 저장 위치로서 작용한다. 최종 8-비트 데이타 워드가 로드되고 목표 IC의 메모리를 시프트 아웃될 때까지 MAC(38)은 8개의 TCK마다 이 로드/시프트 동작을 반복한다. 검사 버스 제어기는 IC(T+1 내지 T+m)들의 바이패스 비트들에 임의로 저장된 모든 메모리 데이타 비트들을 수신할 때까지 판독 동작을 지속한다.
메모리 판독 동작 중에, 검사 버스 제어기의 TDI 입력에 입력된 제1의 100 비트들은 IC(T+1 내지 T+m)들 내의 초기 프리로딩 바이패스 레지스터 비트들로부터의 논리 0 스트림이다. 100개의 논리 0들이 바이패스 비트를 시프트 아웃한 후, 검사 버스 제어기(32)는 목표 IC의 메모리로부터 8-비트 직렬 데이타 워드들을 수신한다. 메모리가 1,000개의 8-비트 데이타 워드들을 포함한다고 가정한다면, 검사 버스 제어기는 초기의 100개의 바이패스 비트들이 수신된 후에 8-비트 직렬 데이타 워드들의 1,000개의 패킷들을 수신한다. 검사 버스 제어기(32)가 직렬 메모리 데이타를 수신한 후, 제4도에 도시된 IC(30) 내의 TAP(12)가 시프팅 프로세스를 중지하고 판독 동작을 종료하도록 하기 위해 TMS 및 TCK 신호들을 제어한다.
테이블3은 제4도에 도시된 각 IC의 TAP가 MAC를 사용하여 판독 동작중에 완전히 전이되는 상태를 나타낸다. 테이블3은 데이타의 시프팅을 개시하기 전에 판독 동작을 개시 시에 3개의 TCK를 취하는 것을 나타낸다. 3개의 TCK들중 하나의 TCK는 DREG내에 데이타를 로드하는데 사용되고, IC(T+1 내지 T+m)들의 바이패스 레지스터들이 논리 0으로 로드되며, 목표 IC의 DREG는 제1의 8-비트 메모리 워드로 로드된다. 검사 버스 제어기(32)가 데이타의 수신을 개시하기 전에, 바이패스 레지스터 비트 내에 로드된 100개의 논리 0은 100개의 TCK를 취하는 IC(T+1 내지 T+m)들로부터 모두 시프트 되어야 한다. 100개의 논리 0이 출력된 후, 검사 버스 제어기(32)는 8,000개의 TCK를 필요로 하는 목표 IC의 메모리로부터 1,000개의 8-비트 직렬 데이타 워드를 수신하기 시작한다. 검사 버스 제어기(32)가 메모리로부터 8,000개의 데이타 비트를 수신한 후, 이것은 메모리 판독 동작을 종료하기 위해 2개의 추가 TCK를 수신한다. 제4도에 도시된 목표 IC로부터 1,000개의 8-비트 메모리 워드를 판독하는데 필요한 TCK의 총수는 다음과 같다.
Figure kpo00005
Figure kpo00006
메모리 기입 동작 중에, 검사 버스 제어기(32)은 각 IC의 IREG 내에 명령어들을 로드시키기 위해 제4도에 도시된 IC(30)의 TMS 및 TCK 입력 상에 제어 신호를 입력한다. 목표 IC를 제외한 모든 IC들은 바이패스 DREG를 선택하는 명령어로 로드된다. 목표 IC는 MAC(38)을 인에이블 시키고 기입 동작을 위한 DREG(34) 및 메모리(36)을 구성하는 명령어로 로드된다. 목표 IC(34)의 DREG(34)는 길이가 8비트이고, 100개의 IC(T+1 내지 T+m)들은 검사 버스 제어기(32)와 목표 IC(33) 사이에 있다.
DREG(34)가 데이타로 시프트되고 그것이 메모리(36)내에 기입될 때 MAC(38)가 제어되기 때문에, 전체 메모리를 기입하는 태스크는 한 번의 기입 동작으로 수행될 수 있다. 검사 버스 제어기(32)가 TMS 및 TCK 신호들을 제어함으로써 기입 동작을 개시하면, IC(1 내지 n)의 바이패스 레지스터들은 논리 0들로 로드되고 MAC(38)은 제1데이타 워드를 받아들이기 위한 메모리를 준비한다. 검사 버스 제어기가 시프트 동작을 개시하도록 제어신호를 출력할 때, IC(1 내지 n)들의 바이패스 레지스터들은 논리 0들을 출력하고 검사 버스 제어기(32)로부터 데이타를 입력한다. 목표 IC내의 MAC(38)은 START 신호를 수신할 때까지 메모리 내에 데이타를 기입하는 것을 지연시킨다. START 신호는 모든 논리 0이 IC(1 내지 n)내의 바이패스 비트들을 시프트 아웃하고 바이패스 비트들이 목표 IC 메모리에 로드되는 검사 버스 제어기(32)로부터의 데이타로 채워지는 것을 나타낸다.
MAC(38)이 START 신호를 수신할 때, 이것은 DREG 내에 데이타를 시프트시킨다. IC(1 내지 n)내의 바이패스 비트들은 목표 IC(33)으로의 데이타 인루트에 대한 임의 저장 위치로서 작용한다. DREG가 8비트의 데이타를 수신한 후, MAC(38)은 메모리내에 8-비트 데이타 워드를 기입하도록 제어 신호를 출력한다. 메모리 내에 8-비트 데이타 워드를 기입함으로써 실행되는 DREG 내에 8비트의 데이타를 수신하는 프로세스는 기입동작이 진행중인 동안에도 계속된다. 검사 버스 제어기(32)가 목표 메모리 내에 기입될 모든 데이타를 출력하고, IC(1 내지 n)의 바이패스 비트들을 통해 데이타를 시프트하며, 목표 IC 메모리 내로 데이타를 스프트 한 후, TMS 및 TCK 신호들의 제어신호를 출력함으로써 기입 동작을 종료시킨다.
테이블4는 제4도의 각 IC(30)의 TAP(12)가 기입 동작 중에 완전히 전이되는 상태를 나타낸다(제2도와 관련하여 상술하였음). 이 테이블은 검사 버스 제어기(32)와 목표 IC(33) 사이의 100개의 IC들과, 1,000개의 데이타 워드를 갖는 메모리(36)을 나타낸다. 테이블4는 데이타의 시프팅을 개시하기 전에, 기입 동작의 개시 시에 3개의 TCK를 취하는 것을 나타낸다. 3개의 TCK들중 하나의 TCK는 100개의 IC의 바이패스 레지스터들을 논리 0으로 로드 시키는데 사용된다. MAC(38)이 직렬 데이타를 수신하도록 DREG(34)를 인에이블시키기전에, 100개의 논리 0들 전부는 100개의 TCK를 필요로 하는 100개의 IC의 바이패스 레지스터 비트들을 시프트 아웃 시켜야만 한다. 100개의 논리 0들이 시프트 아웃된 후, MAC는 IC(1 내지 n)내의 바이패스 비트들을 경유하여 검사 버스 제어기(32)로부터 목표 IC에 전송된 1,000개의 8-비트 데이타 워드를 수신하기 시작한다. 이 동작은 8,000개의 TCK가 필요하다. 검사 버스 제어기가 목표 IC의 메모리에 8,000개의 데이타 비트들을 입력시킨 후, 메모리 기입 동작을 종료시키기 위해서는 2개의 추가 TCK를 수신한다. 목표 IC의 메모리 내에 1,000개의 8-비트 메모리 워드를 기입하는데 필요한 TCK들의 총수는 다음과 같다.
Figure kpo00007
Figure kpo00008
이러한 2가지 예에서, 억세스 메모리에 P1149.1 TAP 프로토콜을 사용하는 상기 2개의 예를 비교해 보면, MAC가 억세스 메모리에 필요한 TCK의 수를 현저하게 감소시키는 것을 명백하게 알수 있다. 상술한 2가지 MAC의 예와 1MHz의 TCK 주파수를 사용하면, 1,000개의 위치를 갖는 메모리에 대한 억세스 시간은 다음과 같다.
Figure kpo00009
MAC를 사용하는 8.1x10초의 억세스 시간과 P1149.1 TAP 프로토콜을 사용하는 113x10초의 억세스 시간을 비교하는 것은, MAC가 P1149.1 TAP 프로토콜에 의해 요구된 7%의 시간만을 사용하는 동일한 크기의 메모리를 억세스할 수 있다는 것을 나타낸다.
메모리내에 데이타를 기입하는 MAC에 대한 설명에 있어서, START 신호를 참조한다. START 신호는 바이패스 비트들로부터 데이타를 입력하기 시작하는 시간과 메모리(36)내에 데이타를 저장하는 시간을 MAC(38)에 알려준다. 다음의 4가지 방법은 MAC에 START 신호를 발생시키는데 사용될 수 있다. 다음에 언급된 방법들 이외의 다른 방법들도 기입 동작을 개시하도록 고안될 수 있다.
기입 동작이 개시된 후, IC(30)의 TAP(12)는 SHIFTDR 상태일 수 있다. 검사 버스 제어기가 검사 버스 제어기의 제어기의 출력과 목표 IC의 입력 사이에 다수의 IC(1 내지 n)이 배치되는 여러 가지 방법들이 공지되어 있기 때문에, SHIFTDR 상태로부터의 TAP를 EXIT1DR 상태를 거쳐 PAUSEDR 상태로 전이 시킨다음, EXIT2DR 상태를 거쳐 PAUSEDR 상태로부터 SHIFTDR 상태로 다시 들어감으로써 선행 IC(1 내지 n)의 바이패스 비트들로 데이타가 시프트된 후에 START 신호를 발생할 수 있다. 목표 IC 내의 MAC는 무엇보다 먼저 PAUSEDR 상태로 들어가는 TAP를 감지하는 것에 기초하여 기입 동작을 개시하도록 설계될 수 있다. 기입 동작이 개시됐을 때, MAC는 나머지 기입 동작 중에 소정의 후속 PAUSEDR 상태 엔트리(entry)들을 무시한다.
검사 버스 제어기가 이것의 출력과 목표 IC의 입력 사이에 다수의 IC(1 내지 n)이 배치되는 여러가지 방법들이 공지되어 있기 때문에, 메모리 내에 기입될 수 있는 실제 직렬 데이타 비트들에 선행하는 헤더라고 하는 직렬 비트들을 출력함으로써 START 신호를 발생시킬 수 있다. 목표 IC(33)내의 MAC(38)은 IC(1 내지 n)들의 바이패스 비트들로부터 출력된 직렬 데이타 비트들을 검사함으로써 헤더의 발생 상태를 모니터할 수 있도록 설계될 수 있다. 바이패스 비트들이 초기에 프리로드 동작으로부터 논리 0들을 초기에 출력할 수 있기 때문에, 논리 1은 데이타보다 앞서 출력되고, MAC는 헤더의 개시 비트인 제1논리 1을 모니터한다. 제1논리 1 다음에, 필요하다면, 거짓 헤더 입력상의 기입 동작을 개시하는 확률을 감소시키기 위해서 추가 수의 헤더 비트들이 MAC에 입력될 수 있다. MAC는 헤더 비트 길이 및 패턴 순서를 알게 된다. MAC가 모든 헤더 비트들을 수신한 후, 이것은 기입 동작을 개시한다.
MAC(38)은 기입 동작 이전에 로드될 수 있는 카운터를 포함하도록 설계될 수 있다. 카운터는 목표 IC와 검사 버스 제어기 사이에 배치되는 IC(1 내지 n)들의 수로 로드된다.기입 동작이 개시된 후, MAC(38)은 각 시프트 동작중에 카운터를 감소 시키기 시작한다. 카운터가 최소 카운트에 도달하면, 메모리내에 시프트될 데이타가 목표 IC의 TDI 입력상에 제공되고 MAC(38)은 데이타를 입력시키기 시작하며, 그리고 메모리에 저장하기 시작한다.
MAC(38)은 기입 동작이 개시될 때를 결정하기 위해 IC상의 핀을 모니터할 수 있도록 설계될 수 있다. 이 방법에 있어서, 데이타가 목표 TDI 핀에서 내부 메모리에 입력 및 저장하는데 이용할 수 있는 지를 목표 IC(33)에 지시하기 우해 검사 버스 제어기는 추가 검사 핀을 경유하여 신호를 출력한다. 이 신호는 데이타가 IC(1 내지 n)의 바이패스 비트들을 통해 시프트된 후에 검사 버스 제어기에서 목표 IC로 출력된다.
제6도에는 MAC/TAP의 예시적 실시예가 도시되어 있다. 이 실시예에서, MAC(38)은 상술한 4개의 상이한 형태의 개시 지시자 (Start indicators), 즉 (1) TAP의 PAUSEDR 신호, (2) 헤더 검출기(Header Detector), (3) 카운터 COUNT COMPLETE 신호, 및 (4) EXTERNAL TRIGGER를 수신할 수 있다. TAP(12)는 PAUSEDR 신호선을 경유하여 멀티플렉서(40)에 접속된다. 또한, TAP(12)의 출력은 멀티플렉서(42)의 입력에 접속된다. 헤더 검출기(44)는 TDI 신호를 수신하여 멀티플렉서(40)으로 MATCH 신호를 출력한다. 카운터(46)은 TMS 및 TCK 신호들을 수신하여 멀티플렉서(40)로 COUNT COMPLETE 신호를 출력한다. 외부 디바이스 노드(48)은 EXTERNAL TRIGGER을 경유하며 멀티플렉서(40)에 접속된다. 멀티플렉서(40)의 출력인 SATRT 신호는 TMS 및 TCK 신호들과 함께 직렬 입력/출력 제어기(50)에 접속된다. IREG 제어 버스(28)은 멀티플렉서(40 및 42)의 선택 포트들과 직렬 입력/출력 제어기(50)에 접속된다.
동작시에, IREG 버스(28)로부터의 제어신호는 멀티플렉서(42)를 경유하여 제어 버스(26)을 구동시키기 위해서 TAP(12)의 출력 또는 직렬 입력/출력 제어기(50)의 출력을 선택한다. 이 출력이 선택되면, 활성 START 신호를 발생시키는 개시신호, 즉 PAUSEDR, MATCH, COUNT COMPLETE 또는 EXTERNAL TRIGGER 중의 한 신호가 활성 상태로 될 경우, 직렬 입력/출력 제어기(50)이 인에이블 된다.
개시 지시자가 MAC 기입 동작 중에만 필요하다는 것은 중요한 사실이다. MAC 판독 동작은 개시 지시자를 반드시 필요로 하지는 않는다. 그러나, 필요할 경우, 판독 동작은 개시 지시자도 사용한다. 제6도에 도시된 모든 개시 지시자는 MAC의 설계에 포함될 필요는 없다. MAC는 직렬 입력/출력 제어기에 입력되는 개시 지시자들 중 하나의 지시자만으로 동작되어 멀티플렉서(40)을 필요로 하지 않는다. 또한, 다른 형태의 개시 지시자들이 고안될 수 있고 이 명세서에 기술된 것들 외에 직렬 입력/출력 제어기에 입력될 수 있다.
IC 내의 선택된 DREG를 통해 데이타를 시프트 시키기 위해서 TAP(12)가 버스(26)상의 멀티플렉서(42)로부터의 제어신호를 출력시키도록 보통 선택되는 것이 통상적이다. MAC(38)이 버스(26)상에 제어를 출력하는데 선택되는 시간은 직렬 입력 또는 출력 동작을 위해 MAC(38)을 선택하도록 명령어가 IREG(20)에 로드될 때의 시간이다. MAC 동작 메모리 판독 동작중에, 디바이스로부터 데이타를 출력하기 위해서, 직렬 입력/출력 제어기(50)은 IREG(20)으로부터의 입력에 의해 인에이블될 수 있고 입력(TMS 및 TCK)을 제어한다. 메모리 판독 동작중에, 개시 지시는 필요하지 않고, 직렬 입력/출력 제어기(50)은 데이타를 출력하기 위해서 TMS 및 TCK 입력들에 직접 응답한다.
MAC 동작 메모리 기입 동작 중에, 직렬 입력/출력 제어기(50)은 디바이스에 데이타를 입력시키기 위해 IREG로부터의 입력에 의해 인에이블될 수 있고 입력(TMS 및 TCK)을 제어한다. 기입 동작을 위해 직렬 입력/출력 제어기(50)을 암(arm)하기 위해 IREG로부터의 입력들과 TMS 및 TCK 입력들을 제어할 때, 직렬 입력/출력 제어기(50)이 멀티플렉서(40)으로부터의 START 신호를 수신할 때까지는 기입 동작을 발생시키지 않는다.
제6도에서, 기입 동작이 4개의 상이한 신호들 중 한 신호에 의해 개시할 수 있는 것을 알 수 있다. 이 4개의 상이한 신호들은 TAP(12)로부터 출력된 PAUSEDR 상태, 헤더 검출기(44)로부터 출력된 MATCH 신호, 카운터(46)으로부터의 COUNT COMPLETE 신호, 및 외부 노드 신호이다. IREG(20)내의 명령어는 기입 동작을 개시하기 위해 직렬 입력/출력 제어기(50)에 입력되는 개시 지시자를 선택한다.
기입 동작을 개시하는 한 방법은 TAP의 내부 PAUSEDR 상태를 이용한다. 이 방법이 선택되면, PAUSEDR 상태(제2도 참조)는 TAP(12)로부터 출력되고 멀티플렉서(40)을 경유하여 직렬 입력/출력 제어기(50)에 결합된다. 이 방법이 사용될 때, 검사 버스 제어기(32) [제4도참조]는 데이타 레지스터 스캔 동작을 개시하기 위해서 TMS 및 TCK를 제어한다. 이 제어는 검사 버스 제어기(32)로부터의 데이타가 디바이스(1 내지 n)을 통해 목표 디바이스(33) [제4도참조]을 향해 시프트 되도록 한다. 데이타가 목표 디바이스(33)의 TDI 입력에 도달할 때, 검사 버스 제어기(32)는 모든 디바이스(1+n 및 디바이스)의 TAP들이 PAUSEDR 상태(제2도 참조)로 들어가게 하도록 제어할 수 있다. 직렬 입력/출력 제어기(50)은, 검사 버스 제어기(32)가 SHIFTDR 상태(제2도 참조)로 다시 들어감으로써 시프팅되는 데이타를 재개하기 위해 TMS 및 TCK 상에 제어 신호를 발생시키는 경우 개시 지시자로서 TAP(12)로부터 출력된 제1PAUSEDR 상태를 감지하고 버스(26)상에 제어 신호를 출력시키도록 준비한다. 데이타의 시프팅이 재개된 후, 검사 버스 제어기(32)는 목표 디바이스(33)에 로드될 모든 데이타를 시프티 인 시키게 된다. 검사 버스 제어기(32)가 데이타 레지스터 스캔 동작중에 PAUSEDR 상태로 다시 들어가면, 직렬 입력/출력 제어기(50)은 TAP(12)로부터 입력된 소정의 추가 PAUSEDR 신호를 무시한다. 검사 버스 제어기(32)가 목표 디바이스(33)내에 로드될 최종 데이타 비트를 출력하였을 때, 데이타가 시프트 동작을 종료하기 위해 TMS 및 TCK상에 제어 신호를 발생시키지전에 디바이스(1 내지 n)을 통해서 목표 디바이스내로 데이타가 통과하도록 하기 우해 스캔 경로를 시프트 시키는 것이 계속될 수 있다.
이 방법의 한가지 장점은 기입 동작을 개시하기 위한 논리가 TAP내에 이미 존재하고 추가 논리를 필요로 하지 않는다는 것이다. 후술할 다른 방법은 추가 논리 또는 추가 디바이스 입력을 필요로 한다.
기입 동작을 개시하는 또 하나의 방법은 헤더 검출기 논리(44)를 이용한다. 헤더 검출기 논리(44)의 블럭도는 제7도에 도시되어 있다. 헤더 검출기 논리(44)는 헤더 값을 저장하기 위한 DREG(52), 기입 동작중에 헤더 비트 순서를 수신하기 위한 시프트 레지스터(54), 및 수신된 헤더 비트 순서와 DREG(52)내에 저장된 헤더패턴을 일치시키기 위한 비교기 논리(56)으로 구성된다. 시프트 동작 중에, DREG(52)는 목표 IC(33)의 TDI 및 TDO 팬들에 결합된다.
이 기술은 검사 버스 제어기(32)가 목표 디바이스(33)에 기입될 수 있는 데이타를 출력하기 전에 선행 헤더 비트 순서 (101101)를 출력한다고 가정한다. 기입 동작중에, 헤더 검출기 논리(44)는 직렬 데이타를 시프트 레지스터(54)에 입력시켜 헤더 저장 레지스터 내에 프리로드된 헤더 값에 대해 직렬 데이타를 비교한다. 초기에는, 시프트 레지스터(54)는 모든 0으로 리셋트(reset)되므로, 시프트 레지스터와 헤더 저장 레지스터 사이의 일치가 디스에이블(disable)된다. 기입 동작이 개시되면, 시프트 레지스터(54)가 디바이스(1 내지 n)내의 바이패스 레지스터들로부터 논리 0들을 수신하기 시작한다. 바이패스 레지스터 논리 0들이 수신된 후, 시프트 레지스터(54)는 검사 버스 제어기(32)로부터 출력된 헤더 비트 순서를 수신하기 시작한다. 전체 헤더가 시프트 레지스터(54)에 로드될 때, 시프트 레지스터 내용과 헤더 저장 레지스터(52) 사이에 일치가 발생하게 된다. 이 MATCH 신호는 비교 논리로부터 출력되어 멀티플렉서(40)을 경유하여 직렬 입력/출력 제어기에 입력된다.
직렬 입력/출력 제어기(50)이 헤더 검출기(44)로부터의 MATCH 신호를 감지할 때, 이것은 TDI 입력을 경유하여 목표 디바이스(33)에 입력되는 직렬 데이타를 수신하기 시작하도록 버스(26)상에 제어신호를 출력한다. 검사 버스 제어기(32)가 목표 디바이스(33)에 로드될 최종 데이타 비트를 출력하면, 데이타가 시프트 동작을 종료시키기 우해 TMS 및 TCK상에 제어 신호를 발생시키기 전에 디바이스(1 내지 n)을 통해 목표 디바이스(33)내로 통과하게 되도록 스캔 경로를 지속적으로 시프트 시킨다.
기입 동작을 개시하는 또 다른 방법은 카운터 논리를 이용한다. 카운터 논리(46)의 블럭도는 제8도에 도시되어 있다. 카운터 논리(46)은 다운 카운터(down counter;58)을 실시하는 DREG 및 스캔 경로 상에 시프트된 각 비트에 대한 카운터 감소 클럭(counter decrement clock)을 발생하기 위한 클럭 논리(60)으로 구성된다. 다운 카운터(58)은 요구된 카운트 값을 카운터(58)내에 로드시키기 위해 데이타 레지스터 스캔 동작에 의해 시프트될 수 있다. 시프트 동작중에, 다운 카운터는 목표 디바이스(33)의 TDI 및 TDO 핀들에 접속된다. 이 카운터는 COUNT COMPLETE 신호선을 거쳐 카운터로부터 출력되는 최소 카운트 값을 감지하기 위한 디코드 논리(decode logic)를 포함한다.
이러한 기술은 검사 버스 제어기(32)가 기입동작을 수행하기 전에 카운터(58)을 카운트 값으로 로드 시키는 것을 필요로 한다. 으로드된 카운트 값은 바이패스 레지스터 비트(1 내지 n)의 수와 같고, 데이타는 목표 디바이스에 입력되기 전에 통과해야 한다. 검사 버스 제어기(32)가 기입 동작을 개시하면, 카운터는 데이타 비트가 제어기와 목표 디바이스 사이의 스캔 경로를 통과할 때마다 감소한다. 카운터가 최소 값이 되어 COUNT COMPLETE 신호를 출력하면, 제어기로부터의 데이타는 디바이스(1 내지 n)의 모든 바이패스 레지스터들을 통해 시프트 되어 목표 디바이스의 TDI 입력 핀에 공급된다.
직렬 입력/출력 제어기(50)이 카운터(58)로부터의 COUNT COMPLETE 신호를 감지하면, 제어기는 TDI 입력을 거쳐 목표 디바이스(33)에 입력되는 직렬 데이타를 수신하기 시작하도록 버스(26)상에 제어신호를 출력한다. 검사 버스 제어기(32)가 목표 디바이스(37)내에 로드될 최종 데이타 비트를 출력하면, 제어기는 시프트 동작을 종료시키기 위해 TMS 및 TCK 상에 제어 신호를 발생시키기 전에 데이타가 디바이스(1 내지 n)을 통해 목표 디바이스(33)내로 통과하게 되도록 지속적으로 스캔경로를 시프트 시킨다.
기입 동작을 개시하는 또 다른 방법은 제6도에 도시된 바와 같이, 추가 디바이스 입력 노드(48)을 이용한다. 이러한 핀으로의 입력 소오스는 검사 버스 제어기(32) 또는 MAC가 기입 동작중에 목표 디바이스의 TDI 입력 핀에서 데이타의 수신을 개시하고자 할 때를 지시하기 위한 신호를 출력할 수 있는 다른 디바이스로부터 인입할 수 있다.
직렬 입력/출력 제어기(50)가 디바이스 노드(48)로부터의 외부 트리거 입력신호를 감지하면, 제어기는 TDI 입력을 거쳐 목표 디바이스(33)에 입력되는 직렬 데이타를 수신하기 시작하도록 버스(26)상에 제어신호를 출력한다. 검사 버스 제어기가 목표 디바이스(32)내에 로드될 최종 데이타비트를 출력하면, 제어기는 시프트 동작을 종료시키기 위해서 TMS 및 TCK 상에 제어신호를 발생하기 전에 데이타가 디바이스(1 내지 n)을 통해 목표 디바이스 내로 통과하게 되도록 스캔 경로를 지속적으로 시프트 시킨다.
다수의 집적 회로들을 접속하는 검사 버스를 사용하는 양호한 실시예에 대해 기술하였지만, 마찬가지로, 버스는 단일 집적 회로내의 분회로(Subcircuits)를 접속하는데 사용되거나, 다수의 집적 회로들로 각각 구성되는 회로들을 접속하는데도 사용된다. 또한, 양호한 실시예가 검사 데이타의 전송과 관련하여 기술하였지만 이것은 디바이스들 사이의 소정 형태의 데이타 통신에 사용된다.
지금까지 본 발명의 실시예에 대하여 상세하게 설명하였지만, 본 분야에 숙련된 기술자라면 본 발명을 첨부된 특허 청구 범위 내에서 정의된 발명의 개념과 범위를 벗어나지 않고 다양한 변화, 응용 및 변경시킬 수 있다.

Claims (36)

  1. 디바이스와의 통신에 적한한 데이타 통신 인터페이스에 있어서, 데이타를 전송하기 위한 버스 회로, 상기 디바이스 및 상기 버스에 결합된 저장 회로, 상기 버스와 상기 저장 회로 사이에 데이타를 시프트 시키도록 동작 가능한 인터페이스 회로 및 상기 디바이스와 제어 신호에 응답하는 상기 저장 회로 사이에 데이타를 전송하도록 동작 가능한 디바이스 억세스 제어 회로를 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  2. 제1항에 있어서, 상기 디바이스가 메모리를 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  3. 제1항에 있어서, 상기 저장 회로가 레지스터를 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  4. 제3항에 있어서, 상기 저장 회로가 레지스터를 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  5. 제4항에 있어서, 상기 인터페이스 회로가 상기 버스 회로에서 상기 시프트 레지스터로, 그리고 상기 시프트 레지스터에서 상기 버스 회로로 데이타를 시프트 시키도록 동작 가능한 것을 특징으로 하는 데이타 통신 인터페이스.
  6. 제5항에 있어서, 상기 버스 회로에 결합된 다수의 시프트 레지스터들을 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  7. 제6항에 있어서, 상기 인터페이스 회로가 상기 버스 회로와 상기 시프트 레지스터들 중의 선택된 하나의 레지스터 사이에 데이타를 시프트 시키도록 동작 가능한 것을 특징으로 하는 데이타 통신 인터페이스.
  8. 제1항에 있어서, 상기 디바이스 억세스 제어회로가 상기 디바이스와 상기 인터페이스 회로로부터의 신호에 응답하는 상기 저장 회로와의 사이에 데이타를 전송하도록 동작 가능한 것을 특징으로 하는 데이타 통신 인터페이스.
  9. 제8항에 있어서, 상기 디바이스 억세스 제어회로가 상기 디바이스와 상기 인터페이스 회로로부터의 중지 신호에 응답하는 상기 저장 회로 사이에 데이타를 전송하도록 동작 가능한 것을 특징으로 하는 데이타 통신 인터페이스.
  10. 제1항에 있어서, 상기 디바이스 억세스 제어회로가 상기 디바이스와 선정된 순서에 데이타를 수신하는 것에 응답하는 상기 저장 회로 사이에 데이타를 전송하도록 동작 가능한 것을 특징으로 하는 데이타 통신 인터페이스.
  11. 제10항에 있어서, 상기 디바이스 억세스 제어회로가 데이타를 수신하여 저장하기 위한 제1레지스터, 상기 선정된 순서의 데이타를 저장하기 위한 제2레지스터 및 상기 제1레지스터 내에 저장된 데이타와 제2레지스터 내에 저장된 데이타 사이의 일치 신호에 응답하는 신호를 발생시키기 위한 비교 회로를 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  12. 제1항에 있어서, 상기 디바이스 억세스 제어회로가 상기 디바이스와, 카운터가 선정된 수를 카운트 하는 것을 지시하는 신호에 응답하는 상기 저장 회로 사이에 데이타를 전송하도록 동작 가능한 것을 특징으로 하는 데이타 통신 인터페이스.
  13. 제12항에 있어서, 상기 디바이스 억세스 제어회로가 상기 버스 회로에 결합되어 클럭킹 신호에 응답하는 카운터 내부에 저장된 값을 증가시키는 카운터 및 선정된 값을 저장하는 상기 카운터에 응답하는 제어 신호를 출력하기 위한 회로를 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  14. 제12항에 있어서, 상기 디바이스 억세스 제어회로가 상기 버스 회로에 결합되어 클럭킹 신호에 응답하는 카운터 내부에 저장된 값을 감소시키도록 동작 가능한 카운터 및 선정된 값을 저장하는 상기 카운터에 응답하는 제어 신호를 출력하기 위한 회로를 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  15. 제1항에 있어서, 상기 버스에 결합되어 상기 버스 상에 데이타를 전송시키는 버스 제어기를 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  16. 제15항에 있어서, 상기 버스 제어기가 상기 버스로부터 데이타를 수신하도록 동작 가능한 것을 특징으로 하는 데이타 통신 인터페이스.
  17. 디바이스와의 통신하도록 동작 가능한 데이타 통신 인터페이스에 있어서, 데이타를 전송하기 위한 버스 회로, 상기 버스 회로에 결합되어 선택적으로 상기 버스 회로로부터 데이타를 시프트 인시키고 상기 버스 회로로 데이타를 시프트 아웃시키도록 동작 가능한 저장 회로, 상기 버스 회로와 상기 저장 회로 사이의 전송된 데이타를 제어하도록 동작 가능한 디바이스 인터페이스 회로 및 다중 시프트 동작들을 통해 반복적으로 순환시킬 필요 없이 데이타가 디바이스에 기입되거나 상기 디바이스로부터 판독되도록 상기 버스 회로와 상기 저장 회로 사이에 전송된 데이타를 제어하도록 동작 가능한 디바이스 억세스 제어 회로를 포함하는 것을 특징으로 하는 데이타 통신 인터페이스.
  18. 제17항에 있어서, 디바이스 억세스 제어회로가 하나 이상의 제어 신호에 응답하는 디바이스로 데이타를 기입하도록 동작 가능한 것을 특징으로 하는 데이타 통신 인터페이스.
  19. 제18항에 있어서, 상기 제어 신호들중 하나의 신호가 상기 디바이스 인터페이스 회로에 의해 발생되는 것을 특징으로 하는 데이타 통신 인터페이스.
  20. 제19항에 있어서, 상기 디바이스 인터페이스 회로가 상태 머신을 포함하고, 하나 이상의 상기 제어 신호들이 상기 상태 머신의 선정된 상태와 관련되는 것을 특징으로 하는 데이타 통신 인터페이스.
  21. 제20항에 있어서, 상기 선정된 상태들중 하나의 상태가 중지 상태인 것을 특징으로 하는 데이타 통신 인터페이스.
  22. 제18항에 있어서, 상기 제어 신호들중 하나의 제어 신호가 선정된 순서의 데이타를 인식하는 것에 응답하여 발생되는 것을 특징으로 하는 데이타 통신 인터페이스.
  23. 제18항에 있어서, 상기 디바이스 억세스 제어 회로가 카운터를 포함하고, 상기 제어 신호들 중 하나의 신호가 선정된 값의 카운트에 응답하여 발생되는 것을 특징으로 하는 데이타 통신 인터페이스.
  24. 제18항에 있어서, 상기 제어 신호들 중 하나의 신호가 외부 디바이스로부터 수신되는 것을 특징으로 하는 데이타 통신 인터페이스.
  25. 다수의 인터페이스 회로들에 결합된 직렬 데이타 버스와 관련된 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법에 있어서, 상기 디바이스로부터 상기 목표 인터페이스 회로와 관련된 레지스터 내로 데이타를 전송하는 단계, 상기 레지스터로부터 상기 버스 상에 데이타를 시프트 시키는 단계 및 상기 최종 데이타 비트가 상기 레지스터로 시프트 아웃된 후에 상기 디바이스로부터 상기 레지스터 내로 추가 데이타를 전송하는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  26. 제25항에 있어서, 상기 레지스터로부터 데이타를 시프팅하는 상기 단계가 상기 인터페이스 회로들중 한 회로를 후속적으로 통과하는 데이타를 시프팅 하는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  27. 제26항에 있어서, 상기 레지스터로부터 전송된 데이타 비트들의 수를 카운팅하는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  28. 제26항에 있어서, 상기 레지스터에 저장된 데이타가 상기 버스로 전송된 것을 나타내는 제어 신호를 발생시키는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  29. 제25항에 있어서, 버스 상에 데이타를 시프트 시키고, 목표 인터페이스 회로에 선행하는 각각의 인터페이스 회로를 통해 상기 데이타를 시프트 시키는 단계, 상기 목표 인터페이스 회로에 도달하여 상기 버스 상에 시프트된 상기 데이타를 나타내는 제어 신호를 발생시키는 단계 및 상기 목표 인터페이스 회로와 관련된 레지스터로부터 상기 제어 신호에 응답하는 상기 디바이스로 데이타를 전송하는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  30. 다수의 인터페이스 회로들에 결합된 직렬 데이타 버스 회로와 관련된 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법에 있어서, 버스 상에 데이타를 시프트 시키고, 상기 목표 인터페이스 회로에 선행하는 각각의 인터페이스 회로를 통해 상기 데이타를 순차적으로 시프트시키는 단계, 상기 목표 인터페이스 회로에 도달하는 데이타를 나타내는 제어 신호를 발생하는 단계 및 상기 목표 인터페이스와 관련된 레지스터로부터 상기 제어 신호에 응답하는 상기 디바이스로 데이타를 전송시키는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  31. 제30항에 있어서, 있어서, 상기 목표 인터페이스 회로에 선행하는 상기 인터페이스 회로들과 관련된 레지스터들을 선정된 값으로 로드 시키는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  32. 제30항에 있어서, 디바이스 인터페이스 회로의 제어 하에 목표 인터페이스 회로와 관련된 레지스터를 로드 시키는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  33. 제32항에 있어서, 상기 발생 단계가 상기 디바이스 인터페이스 회로의 상태에 응답하는 제어 신호를 발생시키는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  34. 제30항에 있어서, 상기 발생 단계가 선정된 순서의 데이타를 인식하는 것에 응답하는 제어 신호를 발생시키는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  35. 제30항에 있어서, 상기 발생 단계가 선정된 값의 카운트에 응답하는 제어 신호를 발생시키는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
  36. 제30항에 있어서, 상기 발생 단계가 목표 인터페이스 회로의 외부 회로에 의해 발생된 제어 신호에 응답하는 제어 신호를 발생시키는 단계를 포함하는 것을 특징으로 하는 목표 인터페이스 회로에 결합된 디바이스와 통신하는 방법.
KR1019910005001A 1990-03-30 1991-03-29 데이타 통신 인터페이스 및 이의 통신 방법 KR0169736B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US50247090A 1990-03-30 1990-03-30
US502,470 1990-03-30

Publications (2)

Publication Number Publication Date
KR910017300A KR910017300A (ko) 1991-11-05
KR0169736B1 true KR0169736B1 (ko) 1999-01-15

Family

ID=23997969

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019910005001A KR0169736B1 (ko) 1990-03-30 1991-03-29 데이타 통신 인터페이스 및 이의 통신 방법

Country Status (3)

Country Link
US (3) US5687179A (ko)
JP (1) JP3394542B2 (ko)
KR (1) KR0169736B1 (ko)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5483518A (en) 1992-06-17 1996-01-09 Texas Instruments Incorporated Addressable shadow port and protocol for serial bus networks
US6675333B1 (en) * 1990-03-30 2004-01-06 Texas Instruments Incorporated Integrated circuit with serial I/O controller
US5687312A (en) * 1993-07-30 1997-11-11 Texas Instruments Incorporated Method and apparatus for processor emulation
US5526365A (en) * 1993-07-30 1996-06-11 Texas Instruments Incorporated Method and apparatus for streamlined testing of electrical circuits
JP3610095B2 (ja) * 1993-07-30 2005-01-12 テキサス インスツルメンツ インコーポレイテツド 電気回路のストリームライン化(Streamlined)された同時試験方法と装置
US5677915A (en) * 1993-08-18 1997-10-14 Texas Instruments Incorporated Customized method and apparatus for streamlined testing a particular electrical circuit
US5969538A (en) 1996-10-31 1999-10-19 Texas Instruments Incorporated Semiconductor wafer with interconnect between dies for testing and a process of testing
US5790888A (en) * 1996-08-12 1998-08-04 Seeq Technology, Inc. State machine for selectively performing an operation on a single or a plurality of registers depending upon the register address specified in a packet
DE69734379T2 (de) * 1996-08-30 2006-07-06 Texas Instruments Inc., Dallas Vorrichtung zur Prüfung von integrierten Schaltungen
US6324662B1 (en) * 1996-08-30 2001-11-27 Texas Instruments Incorporated TAP and linking module for scan access of multiple cores with IEEE 1149.1 test access ports
US6260165B1 (en) 1996-10-18 2001-07-10 Texas Instruments Incorporated Accelerating scan test by re-using response data as stimulus data
EP0840223B1 (en) * 1996-10-31 2002-05-15 STMicroelectronics Limited Microcomputer capable of accessing an external memory
US6408413B1 (en) 1998-02-18 2002-06-18 Texas Instruments Incorporated Hierarchical access of test access ports in embedded core integrated circuits
US6405335B1 (en) 1998-02-25 2002-06-11 Texas Instruments Incorporated Position independent testing of circuits
GB9805486D0 (en) 1998-03-13 1998-05-13 Sgs Thomson Microelectronics Adapter
GB9805479D0 (en) 1998-03-13 1998-05-13 Sgs Thomson Microelectronics Microcomputer
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
GB9907254D0 (en) * 1999-03-29 1999-05-26 Sgs Thomson Microelectronics Synchronous data adaptor
US6728915B2 (en) 2000-01-10 2004-04-27 Texas Instruments Incorporated IC with shared scan cells selectively connected in scan path
US6769080B2 (en) 2000-03-09 2004-07-27 Texas Instruments Incorporated Scan circuit low power adapter with counter
US7065675B1 (en) 2001-05-08 2006-06-20 Mips Technologies, Inc. System and method for speeding up EJTAG block data transfers
JP2003045200A (ja) * 2001-08-02 2003-02-14 Mitsubishi Electric Corp 半導体モジュールおよびそれに用いる半導体記憶装置
EP1367598A1 (en) * 2002-05-31 2003-12-03 STMicroelectronics S.r.l. Testing method and device for non volatile memories having a LPC (low pin count) communication serial interface
JP2005004876A (ja) * 2003-06-11 2005-01-06 Toshiba Corp 半導体記憶装置とその評価方法
US7284170B2 (en) * 2004-01-05 2007-10-16 Texas Instruments Incorporated JTAG circuit transferring data between devices on TMS terminals
US7404128B2 (en) * 2004-02-17 2008-07-22 Texas Instruments Incorporated Serial data I/O on JTAG TCK with TMS clocking
KR100721581B1 (ko) * 2005-09-29 2007-05-23 주식회사 하이닉스반도체 직렬 입/출력 인터페이스를 가진 멀티 포트 메모리 소자
US7877653B2 (en) 2007-05-09 2011-01-25 Texas Instruments Incorporated Address and TMS gating circuitry for TAP control circuit
US8392772B2 (en) * 2010-09-16 2013-03-05 Texas Instruments Incorporated On-chip memory testing
US9026872B2 (en) * 2012-08-16 2015-05-05 Xilinx, Inc. Flexible sized die for use in multi-die integrated circuit
US9547034B2 (en) 2013-07-03 2017-01-17 Xilinx, Inc. Monolithic integrated circuit die having modular die regions stitched together

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5698051A (en) * 1980-01-07 1981-08-07 Hitachi Ltd Signal transmitting device of lsi component
US4357703A (en) * 1980-10-09 1982-11-02 Control Data Corporation Test system for LSI circuits resident on LSI chips
US4694293A (en) * 1984-09-18 1987-09-15 Nippon Gakki Seizo Kabushiki Kaisha Data transmission system
US4638313A (en) * 1984-11-08 1987-01-20 Spacelabs, Inc. Addressing for a multipoint communication system for patient monitoring
NL8502476A (nl) * 1985-09-11 1987-04-01 Philips Nv Werkwijze voor het testen van dragers met meerdere digitaal-werkende geintegreerde schakelingen, drager voorzien van zulke schakelingen, geintegreerde schakeling geschikt voor het aanbrengen op zo'n drager, en testinrichting voor het testen van zulke dragers.
US4710933A (en) * 1985-10-23 1987-12-01 Texas Instruments Incorporated Parallel/serial scan system for testing logic circuits
US4931722A (en) * 1985-11-07 1990-06-05 Control Data Corporation Flexible imbedded test system for VLSI circuits
US4866508A (en) * 1986-09-26 1989-09-12 General Electric Company Integrated circuit packaging configuration for rapid customized design and unique test capability
US4903266A (en) * 1988-04-29 1990-02-20 International Business Machines Corporation Memory self-test

Also Published As

Publication number Publication date
KR910017300A (ko) 1991-11-05
US5687179A (en) 1997-11-11
JPH04227560A (ja) 1992-08-17
US6085344A (en) 2000-07-04
US6158035A (en) 2000-12-05
JP3394542B2 (ja) 2003-04-07

Similar Documents

Publication Publication Date Title
KR0169736B1 (ko) 데이타 통신 인터페이스 및 이의 통신 방법
US20230251309A1 (en) Interface to full and reduced pin jtag devices
US20070101217A1 (en) Serial data input/output method and apparatus
US6122762A (en) Memory interface device and method for supporting debugging
US5708773A (en) JTAG interface system for communicating with compliant and non-compliant JTAG devices
US5623500A (en) Event qualified test architecture
KR100248258B1 (ko) 제이택을이용한응용주문형집적회로에서의메가셀테스트방법및장치
WO2006053587A1 (en) Integrated circuit and a method for testing a multi-tap integrated circuit
US5353308A (en) Event qualified test methods and circuitry
KR100694315B1 (ko) 다중 시스템 클럭 및 이종 코어를 포함하는 시스템 온 칩용연결선 지연 고장 테스트 제어기
EP0470802B1 (en) Event qualified test methods and circuitry
JPH10104317A (ja) バウンダリスキャン誤動作防止回路
KR20030010391A (ko) 아이피 코아들로 구성된 시스템 온 칩 테스트를 위한개선된 탭 연결 모듈 장치

Legal Events

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

Payment date: 20100930

Year of fee payment: 13

EXPY Expiration of term