KR100907254B1 - Ieee 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부지연 테스트 방법 - Google Patents

Ieee 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부지연 테스트 방법 Download PDF

Info

Publication number
KR100907254B1
KR100907254B1 KR1020070087345A KR20070087345A KR100907254B1 KR 100907254 B1 KR100907254 B1 KR 100907254B1 KR 1020070087345 A KR1020070087345 A KR 1020070087345A KR 20070087345 A KR20070087345 A KR 20070087345A KR 100907254 B1 KR100907254 B1 KR 100907254B1
Authority
KR
South Korea
Prior art keywords
clock
test
wrapper
core
capture
Prior art date
Application number
KR1020070087345A
Other languages
English (en)
Other versions
KR20090022209A (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 한국전자통신연구원
Priority to KR1020070087345A priority Critical patent/KR100907254B1/ko
Publication of KR20090022209A publication Critical patent/KR20090022209A/ko
Application granted granted Critical
Publication of KR100907254B1 publication Critical patent/KR100907254B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer

Landscapes

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

Abstract

본 발명에 따른 IEEE 1149.1 규격의 TAP 제어기로부터 생성되는 래퍼 제어 신호(WSC)에 따라 테스트되는 시스템-온-칩은, 하나 이상의 코어 구동 클록을 제공하는 코어 클록 생성 회로; 상기 래퍼 제어 신호(WSC)와 상기 코어 구동 클록에 응답하여 테스트 동작을 수행하기 위한 입력 경계 레지스터, 출력 경계 레지스터 및 스캔 체인을 갖는 IEEE 1500 규격의 하나 이상의 IP 코어를 포함하되, 내부 지연고장 테스트 동작시, 상기 IP 코어는 상기 래퍼 제어 신호(WSC)와 상기 코어 구동 클록에 응답하여 입력 경계 레지스터와 상기 스캔 체인과 출력 경계 레지스터들이 직렬로 연결되도록 제어하고, 상기 스캔 체인으로는 클록 게이팅 방식으로 생성된 앳-스피드 테스트 클록을 제공하는 래퍼 제어 블록을 포함한다.
상술한 구성을 통하여 본 발명의 시스템 온 칩은 IEEE 1149.1 TAP 제어기를 통해서 각 IP 코어들의 내부 지연고장 테스트를 효율적으로 수행할 수 있어 저비용 및 고효율의 시스템 온 칩을 구현할 수 있다.
IEEE 1149.1, TAP 제어기, IEEE P1500, 내부 지연 고장 테스트, At-speed test

Description

IEEE 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부 지연 테스트 방법{SYSTEM-ON-CHIP HAVING IEEE 1500 WRAPPER AND INTERNAL DELAY TEST METHOD THEREOF}
본 발명은 집적 회로에 관한 것으로, 좀 더 구체적으로 IEEE 1500 래퍼를 갖는 SoC 및 그것의 내부 지연 테스트 방법에 관한 것이다.
휴대폰을 비롯한 PDA, 디지털 TV, 스마트폰 등 각종 디지털 정보기기들이 인터넷 접속이나 컴퓨팅 기능을 원활하게 구현하기 위해서는 마이크로프로세서, 네트워킹 칩, 메모리 등의 많은 반도체 칩들을 필요로 한다. 또한, 점차 복합 다양화되는 트랜드(Trend)에 따라, 정보기기의 부품들 간의 융합은 더욱 진전될 것으로 전망된다. 따라서, 정보기기 안에는 보다 많은 반도체 칩이 필요하게 될 것이다.
이처럼 각종 부품을 하나의 반도체 칩에 집적시킴으로써 향후 반도체뿐만 아니라 개별 부품을 모두 원칩화하기 위한 기술로 등장한 것이 시스템 온 칩(System on Chip : 이하 SoC) 기술이다. SoC는 마이크로프로세서와 DSP(Digital Signal Processor), 메모리, 베이스밴드 칩 등을 하나의 칩 안에 집적시켜 칩 자체가 하나의 시스템으로 기능할 수 있도록 한 것이다. 예를 들면, 최근 인텔이 발표한 GSM/GPRS 통합칩 솔루션은 베이스밴드 칩과 DSP, 애플리케이션 구동용 마이크로프로세서, 플래시 메모리를 하나로 통합한 것이다. 통합칩 솔루션에 따라 개별 칩들에 의한 구성에 비해 저렴한 가격과 크기의 축소 및 연장된 배터리 수명 등의 기능을 제공한다. 이 같은 장점 때문에 휴대폰뿐 아니라 PDA, 휴대용 미디어 단말기, 홈 네트워크 서버 등 앞으로 수요가 크게 늘어날 각종 디지털 기기에서 SoC의 채택은 더욱 확대될 것으로 예상되고 있다.
반도체 산업은 물론 IT 산업 전반에 걸쳐 상당한 파급효과를 가져올 것으로 기대되고 있는 SoC는 시스템 구성에 필요한 메모리와 비메모리를 하나로 집적시킴에 따라 칩 제조업체들 간의 기존 영역 구분을 허물고 있다. 따라서, SoC 분야에서 기술 및 시장 확보에 더욱 치열한 경쟁 양상이 나타날 것으로 보인다. 특히, SoC 개발을 위해서는 나노미터(nm)급 초미세(Deep-submicron:DSM) 회로공정 기술 확보가 필수적이다. 따라서, 대규모 투자와 기술개발 능력이 필요하며, 종래 반도체 제조공정 위주의 생산 방식에서 벗어나 앞으로는 IP(Intellectual Property: 이하, IP라 칭함) 확보와 소프트웨어 개발이 중심이 되는 SoC 설계분야에 대한 투자가 쟁점이 될 것으로 전망된다.
반도체 공정기술의 발전으로 고품질의 IP 생산은 가능하게 되었지만, SoC내부에서 이러한 IP들을 테스트하기 위해서는 점점 더 긴 시간이 요구되고 있다. 결과적으로 고가의 테스트 비용이 초래되고 있다. 왜냐하면, 초미세공정으로 인해 노이즈, 신호 지연, 그리고 간섭 등의 문제가 더욱 중요시됨에 따라 기존의 고장 모델과 이에 연관된 테스트 패턴 생성 툴이 적합하지 않게 되기 때문이다. 또한 IP 기반의 설계 경향에서 파생된 IP 제공자와 IP 사용자 계층 간의 테스트를 위한 정보의 원활하지 않은 소통은 SoC의 테스트를 어렵게 한다. 또한, SoC를 테스트하는 데 발생하는 어려움은 칩의 입출력에서 코어의 입출력으로의 테스트에 필요한 접점을 얻기가 용이하지 않다는 점에 있다. 하나의 칩에 여러 개의 코어가 내장된 경우 각각의 코어에 대해서 테스트 용도의 핀을 부여하는 것은 불가능하다. 따라서, 최소한의 핀으로 칩의 각 부분에 존재하는 코어들에 대해서 테스트에 필요한 제어 및 관측이 효과적으로 이루어질 수 있어야 한다.
SoC의 제조 과정에서는 실제 테스트의 과정이 모든 시스템이 구성되고 난 후에 1회에 걸쳐 이루어진다. SoC의 개별 블록인 코어는 코어 제공자에 의해서 설계되어 코어 사용자에게 제공된다. 중요한 것은 이때의 제공되는 코어는 아직 기술 단계일 뿐이고 제조되거나 테스트되지 않는 상태라는 점이다. 그러므로 SoC의 시스템을 테스트할 때는 코어 간의 상호 동작뿐만이 아니라 코어 내부의 테스트 또한 중요한 의미를 갖는다. 따라서, 코어의 내부를 테스트하는데 필요한 테스트 벡터가 상호 연결선을 테스트하는데 필요한 테스트 벡터보다 그 양이 많기 때문에 테스트 시간을 고려하여 효과적인 테스트 벡터를 인가하기 위한 메커니즘이 요구된다. SoC의 테스트는 또한 고장 검출율, 테스트 비용, 시장 진입 시간 등의 전통적인 초미세공정(Deep-submicron) 칩이 갖는 테스트 문제는 여전히 갖고 있다.
SoC를 테스트하기 위해서는 IEEE 1149.1(JTEG)과 비교할 때 독특한 테스트 구조를 필요로 한다. 이는 SoC에 내장된 모든 코어에 대해 별도의 테스트 용도의 입출력을 마련할 수 없는 핀 수의 제약, 칩의 입출력에서 모든 코어의 입출력에 직 접 접근을 얻을 수 없는 코어 접근의 제약 등 SoC가 갖는 특징에 기인한다. 테스트 패턴 소스(Test pattern source)는 내장된 코어에 대한 테스트 벡터를 생산한다. 반대로 테스트 패턴 싱크(Test pattern sink)는 테스트 결과를 예상된 결과값과 비교를 한다. 테스트 패턴 소스와 싱크는 외부의 자동 테스트 장치(Automatic Test Equipment: 이하, ATE)에 의해서, 온 칩의 내장된 자체 테스트 장치(BIST:Built In Self Test)에 의해서 또는 두 가지의 혼용에 의해서 구현될 수 있다. 온 칩, 오프 칩 혹은 두 가지의 혼용 중에 소스와 싱크가 구현되는 형태의 선택은 코어가 갖는 회로적 특성, 미리 정의된 테스트 벡터의 형태, 테스트 비용 등을 고려하여 결정한다.
SoC 테스트를 위한 기본 구조는 IEEE 1500에 근간을 두고 있다. IEEE 1500은 Proceeding of 17th VLSI TEST Syposium, pp. 483-388, 1999에 "Preliminary Outline of the P1500 Scalable Architecture for Testing Embedded Cores"라는 제목으로 게재되어 있으며, 이 출원의 레퍼런스에 포함된다. IEEE 1500은 IEEE 1149.1과 유사한 기능을 SoC 수준에서 수행할 수 있도록 제안되었다. 이 표준화를 바탕으로 테스트를 수행하기 위해서, SoC 내부에는 코어 테스트 래퍼(Core Test Wrapper) 및 TAM(Test Access Mechanism)이 필요하다. 코어 테스트 래퍼는 SoC 내부의 코어와 TAM 사이의 인터페이스 역할을 한다. 그리고 TAM은 칩 외부로부터 테스트 데이터를 입력받아서 코어 테스트 래퍼에 전달해 주는 역할을 한다. 여기서 코어 테스트 래퍼는 표준화가 되어 있는 반면에, TAM은 아직 표준화되지 않았으며 사용자가 정의하여 사용하도록 하고 있다.
도 1은 두 개의 스캔 체인(Scan chain0, Scan chain1)을 포함하는 코어에 대한 IEEE 1500 래퍼 구성을 간략히 보여주는 블록도이다. 도 1을 참조하면, IEEE 1500 랩드 코어(100)는 IEEE 1149.1와 유사한 구조를 갖는다. IEEE 1500 랩드 코어(100)는 스캔 체인을 포함하는 코어(130)와 코어 주변의 래퍼로 구성된다.
IEEE 1500 래퍼가 지원되는 코어(130)는 두 개의 스캔 체인(131, 132)들을 포함한다. 각각의 스캔 체인에 의해 코어(130)의 내부 동작이 테스트 된다. 여기서 SI[0], SI[1]은 코어 내부의 스캔을 위한 테스트 패턴(Test Pattern)의 입력 포트를 나타낸다. SO[0], SO[1] 각각은 스캔 체인들(131,132) 각각의 출력 포트를 나타낸다. 코어의 내부 테스트를 위해서는 스캔 입출력 포드들(SI[0], SI[1], SO[0], SO[1])을 통해서 직렬로 테스트 데이터를 입출력한다. 스캔 체인은 스캔 인에이블 신호(se)와 클록(clk)에 의해서 제어된다. 스캔 체인의 길이가 너무 긴 경우, 여러 개의 스캔 체인들로 나누어 병렬로 데이터를 처리함으로써 테스트 시간을 절약할 수 있음은 이 분야에서 통상의 지식을 습득한 자들에게는 자명하다.
IEEE 1500 래퍼는 래퍼 명령 레지스터(110, Wrapper Instruction Register : 이하, WIR), 래퍼 바이패스 레지스터(120, Wrapper Bypass Register: 이하, WBY), 래퍼 경계 레지스터(Wrapper Boundary Register: 이하, WBR)로 구성되어 있다. 래퍼 경계 레지스터(WBR)는 입력 래퍼 경계 레지스터(140, IWBR)와 출력 래퍼 경계 레지스터(150, OWBR)로 구분될 수 있다. 래퍼 명령 레지스터(110)는 외부로부터 제공되는 명령어(예를 들면, WS_BYPASS, W[S,P]_EXTEST, W[S,P]_INTEST 등)들을 디코딩하여 래퍼의 제반 레지스터들의 동작 모드를 제어한다. 래퍼는 테스트 접근 메카 니즘(TAM)에서 제공되는 테스트 제어 신호(WSC)에 의해서 제어된다.
그러나, WSP(Wrapped Serial Port)에 의한 접근 메카니즘은 IEEE 1500 스펙에서 정의되어 있지는 않다. 따라서, 따라서, IEEE 1500 래퍼를 갖는 IP 코어들로 구성되는 SoC 시스템에서 테스트를 효과적으로 수행할 수 있는 테스트 연결 메카니즘 또는 테스트 연결 장치(TAM)에 대한 요구가 절실한 실정이다.
본 발명에서는 IEEE 1149.1 TAP 제어기를 통하여 IEEE 1500 래퍼를 갖는 IP 코어들의 내부 지연 테스트 장치 및 테스트 방법을 제공한다.
상기 목적을 달성하기 위한 IEEE 1149.1 규격의 TAP 제어기로부터 생성되는 래퍼 제어 신호(WSC)에 따라 테스트되는 시스템-온-칩은, 하나 이상의 코어 구동 클록을 제공하는 코어 클록 생성 회로; 상기 래퍼 제어 신호(WSC)와 상기 코어 구동 클록에 응답하여 테스트 동작을 수행하기 위한 입력 경계 레지스터, 출력 경계 레지스터 및 스캔 체인을 갖는 IEEE 1500 규격의 하나 이상의 IP 코어를 포함하되, 내부 지연고장 테스트 동작시, 상기 IP 코어는 상기 래퍼 제어 신호(WSC)와 상기 코어 구동 클록에 응답하여 입력 경계 레지스터와 상기 스캔 체인과 출력 경계 레지스터들이 직렬로 연결되도록 제어하고, 상기 스캔 체인으로는 클록 게이팅 방식으로 생성된 앳-스피드 테스트 클록을 제공하는 래퍼 제어 블록을 포함한다.
이 실시예에 있어서, 상기 래퍼 제어 블록은, 상기 래퍼 제어 신호(WSC)에 응답하여 내부 지연고장 테스트 신호(WS_DELAYINTEST_SCAN)와 테스트 모드 신호(MODE, IO_FACE)를 생성하는 래퍼 명령어 레지스터; 상기 래퍼 제어 신호(WSC)에 포함된 테스트 클록(WRCK)을 내부 지연 고장 테스트 동작시 비활성화되는 제 1 테스트 클록(GWRCK)으로 전환하고, 상기 래퍼 제어 신호(WSC)로부터 쉬프트 명령어(ShftDR), 업데이트 명령어(UpDR) 및 캡쳐 명령어(CapDR)를 생성하는 디코더; 상기 테스트 모드 신호(MODE, IO_FACE) 및 쉬프트 명령어(ShftDR)에 응답하여 상기 입력 내지 출력 래퍼 경계 레지스터와 스캔 체인 각각에 포함되는 멀티플렉서들을 제어하여 직렬 연결로 구성하기 위한 멀티플렉서 제어기; 상기 캡쳐 명령어(CapDR) 및 상기 업데이트 명령어(UpDR)를 참조하여 상기 제 1 테스트 클록(GWRCK)을 상기 입력 및 출력 경계 레지스터의 구동 클록으로 제공하는 경계 테스트 클록 발생기; 내부 지연 고장 테스트시, 상기 업데이트 명령어(UpDR)의 펄스 구간에 대응하는 상기 코어 구동 클록의 연속하는 2개의 펄스를 상기 앳-스피드 테스트 클록으로 제공하는 스캔 테스트 클록 발생기를 포함한다.
이 실시예에 있어서, 상기 앳-스피드 테스트 클록은 상기 스캔 체인으로 제공되는 런치 펄스 및 캡쳐 펄스를 포함한다.
이 실시예에 있어서, 상기 입력 경계 레지스터 및 출력 경계 레지스터에 포함되는 경계 셀들은 업데이트 레지스터를 포함하지 않는다.
이 실시예에 있어서, 상기 경계 테스트 클록 발생기는 상기 업데이트 명령어(UpDR)에 응답하여 상기 출력 경계 레지스터가 캡쳐 동작을 수행하도록 출력 경계 레지스터 클록을 제공한다.
이 실시예에 있어서, 상기 스캔 테스트 클록 발생기는, 상기 캡쳐 명령어(CapDR)와 상기 업데이트 명령어(UpDR)의 상태에 따라 상기 업데이트 명령어(UpDR)의 상태를 감지하여 런치-캡쳐 클록(LCCLK)을 생성하는 런치-캡쳐 클록 발생기; 상기 런치-캡쳐 클록(LCCLK)과 상기 입력 경계 레지스터로 제공되는 클록(SftCLK)의 논리합 연산을 수행하여 클록 신호(DTCLK)를 생성하는 연산 회로; 및 상기 내부 지연 고장 테스트 명령어(WS_DELAYINTEST_SCAN)에 응답하여 상기 클록 신호(DTCKL)를 상기 앳-스피드 테스트 클록(STCLK)로 제공하는 선택 회로를 포함한다.
이 실시예에 있어서, 상기 런치-캡쳐 클록 발생기는 상기 코어 구동 클록에 의해서 구동된다.
이 실시예에 있어서, 상기 런치-캡쳐 클록 발생기는, 상기 캡쳐 명령어(CapDR)가 로우 레벨인 상태에서 상기 업데이트 명령어(UpDR)가 하이 레벨로 천이할 경우에 인에이블 신호를 생성하는 스테이트 머신; 및 일정 시간 지연된 상기 인에이블 신호의 펄스 구간에 대응하는 코어 구동 클록만을 패스시키는 클록 게이팅 셀을 포함한다.
이 실시예에 있어서, 상기 클록 게이팅 셀은, 상기 코어 클록의 하강 에지에 동기하여 상기 인에이블 신호를 래치하는 래치 회로와; 그리고 상기 래치 회로의 출력과 상기 코어 구동 클록의 논리곱 연산을 수행하여 상기 런치-캡쳐 로직으로 제공하는 논리곱 연산 회로를 포함한다.
이 실시예에 있어서, 상기 코어 클록 생성 회로는 위상 고정 루프(Phase Locked Loop) 회로로 구성된다.
이 실시예에 있어서, 상기 코어 클록 생성 회로는 복수의 IP 코어들 각각의 구동 주파수에 대응하는 코어 구동 클록들을 제공한다.
상기 목적을 달성하기 위한 IEEE 1500 규격의 래퍼를 구비하는 시스템-온-칩의 IP 코어에 대한 내부 지연 고장 테스트를 수행하는 방법은, IEEE 1149.1 규격의 TAP 제어기를 통하여 래퍼 명령어 레지스터(WIR)에 내부 지연 고장 테스트 명령어를 제공하고, PLL을 통해서 코어 구동 클록을 제공하는 단계; 상기 내부 지연 고장 테스트 명령어에 따라 상기 IP 코어에 포함되는 입력 경계 레지스터와 스캔 체인 그리고 출력 경계 레지스터들이 직렬로 연결되도록 상기 입력 경계 레지스터와 스캔 체인 그리고 출력 경계 레지스터들 각각에 포함되는 멀티플렉서들을 제어하는 제어 신호(SC=se, WCI, WCO)와, 스캔 체인의 런치-캡쳐 동작을 지원하는 클록 게이팅 방식으로 생성된 런치-캡쳐 클록(LCCLK)과 그리고 입력 및 출력 경계 레지스터로 제공될 클록 신호들(IWRTCLK, OWRTCLK)을 생성하는 단계; 및 상기 제어 신호(SC=se, WCI, WCO)와 상기 클록 신호들(IWRTCLK, OWRTCLK)을 상기 입력 경계 레지스터 및 출력 경계 레지스터로 그리고 상기 런치-캡쳐 클록을 상기 스캔 체인으로 제공하여 상기 출력 경계 레지스터로부터 캡쳐되는 테스트 결과를 제공받는 단계를 포함한다.
이 실시예에 있어서, 상기 래퍼 명령어 레지스터(WIR)는 상기 내부 지연 고장 테스트 명령어에 대응하는 제어 신호(WS_DELAYINTEST_SCAN)를 더 생성한다.
이 실시예에 있어서, 상기 입력 및 출력 경계 레지스터에 포함되는 래퍼 경계 셀들은 업데이트 레지스터를 갖지 않는다.
이 실시예에 있어서, 상기 런치-캡쳐 클록(LCCK)은 상기 래퍼 명령어 레지스터(WIR)에서 캡쳐 명령어(CapDR)가 비활성화된 상태에서 업데이트 명령어(UpDR)이 활성화되는 시점에 상기 스캔 체인으로 제공된다.
이 실시예에 있어서, 상기 클록 신호(OWRTCLK)는 상기 업데이터 명령어(UpDR)의 활성화시에 상기 상기 출력 래퍼 경계 레지스터가 캡쳐 동작을 수행하도록 활성화된다.
본 발명은 저가의 ATE를 사용함으로써 SoC 테스트 비용을 절감하기 위한 방법을 제시하였다. TAP 제어기를 통하여 IEEE 1500 래퍼를 제어하여 코어를 테스트 함으로써 테스트 핀 수를 줄이고, TAP 제어기를 활용함으로써 별도의 TAM을 추가할 필요가 없고, 널리 알려진 표준이므로 테스트 엔지니어들이 접근하기가 쉽다.
또한, 앳-스피드 런치-캡쳐 클럭 발생기는 각 코어의 동작 클록에 동기 되므로 서로 다른 클럭을 사용하는 코어의 지연고장 테스트를 동시에 수행할 수 있다.
게다가, SoC 내의 모든 입출력 및 스캔 체인이 하나의 경로로 구성되기 때문에 하나의 SoC를 테스트하는데 걸리는 시간은 비교적 오래 걸리지만, 멀티-사이트(multi-site)테스트를 통하여 여러 SoC를 동시에 테스트함으로써 테스트 시간을 단축시킬 수 있다. 이로 하여금 고가의 테스트 장비를 통한 테스트 비용을 절감할 수 있다.
앞의 일반적인 설명 및 다음의 상세한 설명 모두 예시적이라는 것이 이해되어야 하며, 청구된 발명의 부가적인 설명이 제공되는 것으로 여겨져야 한다. 참조 부호들이 본 발명의 바람직한 실시 예들에 상세히 표시되어 있으며, 그것의 예들이 참조 도면들에 표시되어 있다. 가능한 어떤 경우에도, 동일한 참조 번호들이 동일한 또는 유사한 부분을 참조하기 위해서 설명 및 도면들에 사용된다. 이하에서는, IEEE 1149.1가 본 발명의 특징 및 기능을 설명하기 위한 SoC의 TAP의 방식의 한 예로서 사용된다. 이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있도록 본 발명의 실시예를 첨부된 도면을 참조하여 설명한다.
도 2는 본 발명에 따른 SoC(200)의 테스트 접근 장치(TAM)의 구조를 간략히 보여주는 블록도이다. 도 2를 참조하면, SoC(200)는 IEEE 1500 랩드 코어들(230, 240)과 TAP 제어기(210), 글루 로직(220) 및 PLL(250)을 포함한다. 이러한 구성들을 포함하는 본 발명의 SoC(200)는 최소한의 핀을 통해서 내부의 래퍼를 제어할 수 있으며 저비용의 테스트를 수행할 수 있다.
잘 알려진 바와 같이, TAP 제어기(210)는 IEEE 1149.1 코어를 테스트하는데 이용되는 인터페이스이다. TAP 제어기(210)에 대한 자세한 설명은, IEEE Standard 1149.1-1990에 "IEEE Standard Test Access Port and Boundary-Scan Architecture"(IEEE, June 1989)라는 제목으로 기술되어 있으며, 이 출원이 레퍼런스에 포함된다. TAP 제어기(210)는 외부로부터 제공되는 TCK(Test Clock Input), TMS(Test Mode Select), TDI(Test Data Input), TDO(Test Data Output)과 테스트 리셋을 위한 TRST(Test Reset)의 다섯 개의 단자를 기본적으로 포함한다. 이 다섯 개의 단자를 통해서, TAP 제어기(210)는 칩 내부의 전용 경계 레지스터(WBR)들에 의한 테스트 패턴의 입력 및 관측이 가능하다. 여기서, TAP 제어기(210)는 상술한 단자들로부터 제공되는 신호들을 디코딩하여 내부의 레지스터들(미도시됨)에 저장한다. 내부의 레지스터들에 설정된 값에 따라 TAP 제어기(210)는 특정 상태를 갖는 스테이트 머신(State machine)으로 동작하며, 순차적으로 테스트 동작을 제어한다.
글루 로직(220)은 TAP 제어기(210)로부터 제공되는 제어 신호들을 본 발명의 IEEE 1500 코어로 제공되는 래퍼 제어 신호(WSC)의 일부로 변환한다. 글루 로직(220)에 의해서 IEEE 1149.1 명령어가 본 발명에 따른 IEEE 1500 랩드 코어로 제공되는 제어 신호들(ShiftWR, CaptureWR, UpdateWR)로 재생산된다.
IEEE 1500 랩드 코어들(230, 240)은 임베디드 코어를 다양하게 테스트를 할 수 있도록 제안된 IEEE 1500 래퍼를 갖는 코어들이다. 본 발명의 IEEE 1500 랩드 코어들(230, 240)은 테스트 동작시 TAP 제어기(210)에 의해서 제어된다. TAP 제어기(210) 및 글루 로직(220)으로부터 제공되는 래퍼 제어 신호(WSC) 및 PLL(250)으로부터 제공되는 코어 구동 클록들(CoreCLKA, CoreCLKB)에 의해서 테스트 동작을 수행한다. IEEE 1500 랩드 코어들(230, 240) 각각의 구성에 대한 설명은 후술하는 도 4에서 자세히 설명될 것이다.
위상 고정 루프(250, 이하 PLL이라 칭함)는 서로 다른 주파수로 동작하는 코어들 각각으로 코어 구동 클록들을 제공하기 위한 클록 생성 회로이다. PLL(250)에 의하여 제공되는 코어 구동 클록에 의하여 서로 다른 주파수의 코어 클록을 갖는 코어들에 대한 지연 고장 테스트를 동시에 수행할 수 있다.
이상에서 설명된 구성을 통하여 IEEE 1500 랩드 코어들을 IEEE 1149.1 TAP 제어기(210)에 의해서 액세스할 수 있다. 따라서, 추가적인 핀 구성 없이 저가의 테스트 장비로도 복수의 IEEE 1500 래퍼를 갖는 코어들에 대한 제반 테스트가 가능하다.
도 3a는 상술한 도 2의 글루 로직(220)의 구성을 간략히 보여주는 회로도이다. 도 3a를 참조하면, 글루 로직(220)은 TAP 제어기(210)의 레지스터 값들에 따라 래퍼 제어 신호(WSC)의 일부인 ShiftWR, CaptureWR, UpdateWR을 생성한다. 래퍼 쉬프트 신호(ShiftWR)는 TAP 제어기(210)의 레지스터들(Shift-IR Register, Shift-DR Register) 중 어느 하나의 활성화 상태에서 테스트 클록(TCK)의 상승 에지에 동기하여 활성화된다. 즉, OR 게이트(221)에 입력되는 레지스터 상태값들(Shift-IR, Shift-DR)의 논리합이 테스트 클록의 상승 에지(Rising edge)에 동기하여 플립-플롭(224)에 전달되고 그 결과 래퍼 쉬프트 신호(ShiftWR)가 출력된다. 그리고, 래퍼 캡쳐 신호(CaptureWR)는 TAP 제어기(210)의 레지스터들(Capture-IR Register, Capture-DR Register) 중 어느 하나의 활성화 및 테스트 클록(TCK)의 상승 에지에 동기하여 활성화된다. 래퍼 업데이트 신호(UpdateWR)는 TAP 제어기(210)의 레지스터들(Update-IR Register, Update-DR Register) 중 어느 하나가 활성화되는 시점에 활성화된다. 따라서, 테스트 클록(TCK)에 의해서 구동되는 플립-플롭(FF)의 삽입 없이 래퍼 업데이트 신호(UpdateWR)가 생성된다.
도 3b는 본 발명에 따른 TAP 제어기(210) 및 글루 로직(220)의 동작을 간략히 보여주는 타이밍도이다. 도 3b를 참조하면, IEEE 1500 래퍼의 접근 메커니즘은 다음과 같다. 래퍼 클록 신호(WRCK)는 테스트 클록(TCK)에 직접 연결된다. 래퍼 명령 선택 신호(SelectWIR)는 TAP 제어기(210)의 선택 신호(Select)가 직접 연결되며, 이 값에 의해 래퍼 명령 레지스터(WIR, SelectWIR='1') 또는 래퍼 경계 레지스터(WBR, SelectWIR='0')가 선택된다. 따라서, 래퍼 캡쳐 신호(CaptureWR) 및 래퍼 쉬프트 신호(ShiftWR)가 '1'로 유지되는 동안, 래퍼 클록 신호(WRCK)의 상승 에지에 캡쳐(Capture)와 쉬프트(Shift) 동작이 수행된다. 래퍼 업데이트 신호(UpdateWR)가 '1'인 동안에는 래퍼 클록 신호(WRCK)의 하강 에지에 업데이트(Update) 동작이 수행될 것이다.
이상의 본 발명에 따른 TAP 제어기(210) 및 글루 로직(220)에 의해서 SoC 내에서 테스트하고자 하는 코어를 선택하고 테스트 데이터 경로를 설정 및 해제하기 위한 메커니즘은 IEEE 1149.1 명령어 디코더를 사용하여 간단하게 구현될 수 있다.
도 4는 도 2에 도시된 본 발명에 따른 IEEE 1500 규격의 래퍼(Wrapper)를 갖는 코어(230)를 보여주는 블록도이다. 도 4를 참조하면, 본 발명에 따른 IEEE 1500 랩드 코어(230)는 스캔 체인(2391)을 갖는 코어(2390)를 포함한다. 그리고 코어(2390)와 TAP 제어기(210, 도 2 참조) 간의 인터페이스를 제공하는 IEEE 1500 래퍼(2310~2380)로 구성된다. 본 발명에 따른 래퍼 구성에 따라 IEEE 1500 랩드 코어(230)는 IEEE 1149.1 규격을 갖는 TAP 제어기(210, 도 2 참조)로부터 제공되는 래퍼 제어 신호(WSC)와 PLL(250)로부터 제공되는 코어 클록 신호(CoreCLKA)를 제공받는다. 그리고, 각각의 신호에 응답하여 경계 테스트 또는 스캔 체인에 의한 내부 테스트 및 내부 지연고장 테스트 등을 수행할 수 있다.
래퍼 명령어 레지스터(2310)는 래퍼 제어 신호(WSC) 셋에 대응하는 동작 모드를 결정한다. 래퍼 명령어 레지스터(2310)에 쉬프트되는 래퍼 제어 신호(WSC)에 따라 IEEE 1500 랩드 코어(230)의 내부에서 수행되는 테스트 모드가 결정된다. 래퍼 바이패스 레지스터(2320)는 래퍼 명령어 레지스터(2310)에 의해서 선택적으로 동작하는 레지스터 회로이다. 바이패스 명령어(WS_BYPASS)가 입력되는 경우, 래퍼 명령어 레지스터(2310)는 직렬 테스트 입력 신호(WSI)를 저장하여 직접 직렬 테스트 출력 신호(WSO)로 제공한다.
WSC-WBC 디코더(2330)는 래퍼 제어 신호(WSC)를 본 발명에 따른 테스트 동작을 수행하기 위한 테스트 제어 신호(WBC)로 전환한다. 즉, WSC-WBC 디코더(2330)는 래퍼 제어 신호(WSC)를 본 발명에 따른 래퍼 경계 셀 구조에 적합한 제어 신호로 재구성한다. 본 발명에 따른 래퍼 경계 레지스터(2370, 2380)의 래퍼 경계 셀들(WBC) 각각은 업데이트 레지스터(Update register)를 포함하지 않는다. 즉, 본 발명의 경계 셀은 하나의 레지스터만을 이용해서 쉬프트(Shift) 및 캡쳐(Capture) 동작을 수행할 수 있다. 따라서, 이러한 경계 셀들로 이루어진 래퍼 경계 레지스터를 지원하기 위한 제어 신호의 디코딩 과정이 필요하며, WSC-WBC 디코더(2330)가 이러한 역할을 수행한다.
멀티플렉서 제어기(2340)는 입출력 래퍼 경계 셀(WBC)들을 제어하는 제어 신호들(SC, WCI, WCO)을 생성한다. 멀티플렉서 제어기(2340)는 래퍼 명령어 레지스터(2310)로부터의 제어 신호(ShiftDR)와 래퍼 명령어 레지스터(2310)로부터의 모드 신호(MODE) 및 제어 신호(IO_FACE)에 응답하여 제어 신호(SC, WCI, WCO)들을 생성한다. 멀티플렉서 제어기(2340)의 구성은 후술하는 도 6에서 자세히 설명될 것이다. 래퍼 제어 신호들(SC, WCI, WCO)은 아래의 표 1 및 표 2와 같이 구현될 것이다. SC는 쉬프트 시에 '1' 그리고 캡쳐 시에는 '0'이어야 하며, WCI와 WCO는 테스트 모드에 따라서 서로 반대값을 유지해야 한다.
래퍼 경계 셀의 동작 선택 신호(SC)
Mode SC
Test Mode Shift Operation 1
Capture Operation 0
Normal Mode X
래퍼 경계 셀의 제어 신호(WCI, WCO)
Mode WCI WCO
Test Mode Internal Test 1 0
External Test 0 1
Bypass X X
Normal Mode 0 0
경계 테스트 클록 발생기(2350)는 WSC-WBC 디코더(2230)로부터 전달되는 제어 신호들(CapDR, UpDR)과 래퍼 명령어 레지스터(2310)로부터의 내부 지연 고장 테스트 신호(WS_DELAYINTEST_SCAN)에 따라 래퍼 경계 셀들의 입출력 클록을 생성한다. 경계 테스트 클록 발생기(2350)는 내부 지연 고장 테스트 동작시에는 경계 셀들이 쉬프트 동작을 수행하도록 클록 신호(SftCLK)를 생성한다.
스캔 테스트 클록 발생기(2360)는 WSC-WBC 디코더(2230)로부터 전달되는 제어 신호들(CapDR, UpDR)과 래퍼 명령어 레지스터(2310)로부터의 내부 지연 고장 테스트 신호(WS_DELAYINTEST_SCAN)에 따라 코어(2390) 스캔 체인 테스트 클록(STCLK)을 생성한다. 스캔 체인 테스트 클록(STCLK)에 의해서 코어 내부의 스캔 체인(2391)이 구동된다.
입출력 경계 레지스터들(2370, 2380)은 멀티플렉서 제어기(2340)로부터의 래퍼 제어 신호들(SC, WCI, WCO)과 경계 테스트 클록 발생기(2350)로부터의 클록 신호들(IWRTCLK, OWRTCLK)에 응답하여 구동된다. 즉, 입력 경계 레지스터(2370)는 복수의 래퍼 경계 셀들(Wrapper Boundary Cells: WBC)을 포함하고 있다. 입력 경계 레지스터(2370)에 포함되는 경계 셀들은 멀티플렉서 제어기(2340)로부터 제공되는 입력 제어 신호(WCI)와 동작 선택 신호(SC)에 응답하여 테스트 신호를 입력 또는 쉬프트한다. 출력 경계 레지스터(2380)에 포함되는 경계 셀들은 멀티플렉서 제어기(2340)로부터 제공되는 출력 제어 신호(WC0)와 동작 선택 신호(SC)에 응답하여 테스트 결과를 출력하거나 쉬프트한다.
코어(2390)는 스캔 체인(2391)을 포함하는 기능 회로들의 집합체이다. 특히, 코어 내부 동작의 테스트를 위해서 멀티플렉서 제어기(2340)로부터 출력되는 스캔 동작 선택 신호(SC)를 스캔 인에이블 신호(se)로 제공받는다. 또한, 코어(2390)는 스캔 테스트 클록 생성기(2360)로부터 제공되는 클록 신호(STCLK)를 스캔 체인의 구동 클록으로 제공받는다.
이상의 본 발명에 따른 IEEE 1500 랩드 코어(230)는 IEEE1149.1 TAP 제어기(210)를 통한 명령어 입력으로 액세스 될 수 있다. 그리고, 이러한 구성들을 포함하는 복수의 IEEE 1500 랩드 코어(IEEE 1500 Wrapped core)들은 내부 지연 테스트 동작을 각각 독립적으로 수행할 수 있다. 여기서, 코어(230)에 대해서 IEEE 1500 표준에 부합하는 래퍼 구성을 설명하였으나, 시스템 온 칩(SoC)에 포함되는 제반 IP 코어들이 도시된 코어(230)와 동일하게 구성될 수 있음은 이 분야에서 통상의 지식을 습득한 자들에게는 자명하다.
도 5a 및 도 5b는 도 4의 래퍼 경계 레지스터(2370, 2380)를 구성하는 입력 래퍼 경계 셀(Input Wrapper Boundary Cell: 이하, IWBC) 및 출력 래퍼 경계 셀(Output Wrapper Boundary Cell: 이하 OWBC) 각각을 보여주는 도면이다. 도 5a 및 도 5b를 참조하면, 본 발명의 래퍼 경계 셀(Wrapper Boundary Cell: 이하, WBC)들 각각은 동일한 구조를 갖는다. 각 동작 모드에 따른 래퍼 경계 셀들의 동작을 좀더 자세히 설명하면 다음과 같다.
래퍼 경계 셀(WBC)은 개략적으로 테스트 입력(CTI)과 테스트 출력(CTO) 및 기능 입력(CFI) 및 기능 출력(CFO) 단자를 갖는다. 그리고 이러한 단자들을 통해서 데이터를 쉬프트(Shift) 또는 캡쳐(Capture)하기 위한 제어 신호들(SC, WCI, WCO), 클록 신호(CLK)를 제공받는다. 동작 선택 신호(SC)는 쉬프트 동작시 논리 '1'로, 캡쳐 동작시에는 논리 '0'으로 제공된다. 제어 신호(WCI)는 스캔 체인(Scan chain)에 의한 코어 내부 테스트 동작시에는 논리 '1'로, 코어들 간의 연결 관계를 테스트하는 외부 테스트 동작시에는 논리 '0'으로 제공된다. 제어 신호(WC0)는 제어 신호(WCI)와 상보 관계(Complementary)를 유지한다. 결국, 래퍼 경계 셀(WBC)은 쉬프트 모드에서 테스트 입력(CTI)을 각각의 플립-플롭(FFI, FFO)으로 제공받고, 클록 신호(CLK)에 동기하여 저장한다. 각각의 래퍼 경계 셀(WBC)들의 집합체인 래퍼 경계 레지스터(WBR)에서는 동시에 이러한 쉬프트 동작이 발생하여 쉬프트 레지스터와 동일한 작용을 수행한다.
내부 스캔 체인에 의한 테스트 동작시, 논리 '1'로 설정되는 제어 신호(WCI)에 응답하여 입력 래퍼 경계 셀(IWBC)의 멀티플렉서는 플립-플롭(FFI)으로부터 제공되는 테스트 출력(CTO)를 스캔 체인으로 공급한다. 반면에 출력 래퍼 경계 셀(OWBC)은 논리 '0'로 설정되는 제어 신호(WCO)에 응답하여 코어 내부의 스캔 체인으로부터 출력되는 기능 입력(CFI)을 선택한다. 코어들 간의 경로를 테스트하는 외부 테스트 동작시에는 내부 테스트 동작과는 반대로 래퍼 경계 셀(WBC)들이 제어된다.
상술한 회로 구조에 따라, 본 발명의 래퍼 경계 셀(WBC)은 업데이트 레지스터를 포함하지 않고 하나의 레지스터(또는, 플립-플롭)를 포함하면서 쉬프트 및 캡쳐 동작을 수행할 수 있다. 따라서, 간략화된 제어 구조를 지원할 수 있다.
도 6은 본 발명에 따른 스캔 체인 구조를 간략히 보여주는 회로도이다. 도 6을 참조하면, 스캔 체인(2391)은 스캔 플립-플롭들(FF1, FF2) 사이에 스캔 인에이블 신호(se)에 의해서 스캔 경로를 선택하는 멀티플렉서들(2392, 2393)을 포함한다. 스캔 인에이블 신호(se)는 WSC-WBC 디코더(2230)로부터 제공되는 쉬프트 제어 신호(ShftDR)가 멀티플렉서 제어기(2340)를 경유하여 생성된 동작 선택 신호(SC)와 동일하다. 따라서, 스캔 체인(2391)은 동작 선택 신호(SC)에 의해서 구동되는 래퍼 경계 셀(2370, 2380)과 동시에 제어된다. 즉, 스캔 체인(2391)은 스캔 인에이블 신호(se)가 논리 '1'일 때에는 쉬프트 레지스터와 같이 동작한다. 그러나 스캔 인에이블 신호(se)가 논리 '0'을 유지하는 경우, 스캔 체인(2391)은 멀티플렉서들(2392, 2393)에 의해서 캡쳐 동작을 수행하게 될 것이다. 스캔 체인(2391)으로 공급되는 클록 신호(clk)는 내부 지연 고장 테스트시 앳-스피드 테스트를 위한 두 개의 런치-캡쳐(Launch-capture) 펄스들이 제공된다.
도 7은 상술한 도 4의 WSC-WBC 디코더(2330)의 실시예를 간략히 보여주는 논리 회로도이다. 도 7을 참조하면, WSC-WBC 디코더(2330)는 TAP 제어기(210) 및 글루 로직(220)으로부터 제공되는 래퍼 명령어들(ShiftWR, CaptureWR, UpdateWR, SelectWIR)과 클록 신호(WRCK)를 제공받는다. 그리고 WSC-WBC 디코더(2330)는 입력되는 래퍼 명령어들(ShiftWR, CaptureWR, UpdateWR, SelectWIR)과 클록 신호(WRCK)를 참조하여 래퍼 경계 셀들 또는 내부 스캔 체인을 제어하기 위한 명령어들(ShiftDR, CapDR, UpDR)과 클록 신호(GWRCK)를 생성한다. 명령어 레지스터를 선택하기 위한 선택 신호(SelectWIR)가 'LOW'로 설정된 상태에서 캡쳐 명령어(CaptureWR) 또는 쉬프트 명령어(ShiftWR)가 활성화되면, 경계 셀들을 구동하기 위한 클록 신호(GWRCK)가 출력된다. 반면에, 캡쳐 명령어(CaptureWR) 또는 쉬프트 명령어(ShiftWR)가 모두 비활성화된 상태에서는 경계 셀들을 구동하기 위한 클록 신호(GWRCK)의 공급은 차단된다. 경계 셀들 또는 내부 스캔 체인을 제어하기 위한 명령어들(ShiftDR, CapDR, UpDR)은 선택 신호(SelectWIR)가 'LOW'레벨로 설정되면, TAP 제어기(210)로부터 제공되는 랩퍼 제어 신호(WSC)가 그대로 전달된다. 즉, 쉬프트, 캡쳐, 업데이트 동작을 지시하는 명령어가 직접 전달된다.
WSC-WBC 디코더(2330)를 통해서 TAP 제어기(210)에 입력되는 테스트 클록(TCK=WRCK)을 스캔 체인의 내부 지연 고장 테스트를 위해 일차적으로 성형(Re-shape)된 클록 신호(GWRCK)으로 전환된다.
도 8은 도 4의 멀티플렉서 제어기(2340)의 구성을 예시적으로 보여주는 논리 회로도이다. 도 8을 참조하면, 멀티플렉서 제어기(2340)는 래퍼 명령어 레지스터(2310)로부터 제공되는 모드 신호(MODE) 및 제어 신호(I0_FACE)에 응답하여 래퍼 동작 선택 신호(SC)와 경계 셀 제어 신호(WCI, WCO)를 생성한다. 제어 신호(I0_FACE)는 IEEE 1500에서 이미 정의되어 있으며, 코어 내부 테스트 또는 코어들 간의 연결 관계 테스트를 정의한다. 멀티플렉서 제어기(2340)는 제어 신호(IO_FACE) 및 쉬프트 레지스터 제어 신호(MODE)에 응답하여 입력 경계 레지스터(2370)를 활성화하기 위한 제어 신호(WCI)를 생성한다. 멀티플렉서 제어기(2340)는 입출력 제어 신호(IO_FACE) 및 쉬프트 레지스터 제어 신호(MODE)에 응답하여 출력 경계 레지스터(2380)을 활성화하기 위한 제어 신호(WCO)를 생성한다. 여기서, 모드 신호(MODE)는 테스트 모드시에는 논리 '1'을 유지하고, 노말 모드시에는 '0'를 유지한다. 제어 신호(IO_FACE)는 코어들의 내부 테스트(Internal Test) 동작시에는 논리 '1'을 유지하고 코어들 간의 경로 테스트 시에는 논리 '0'을 유지한다. 따라서, 멀티플렉서 제어기(2340)의 출력 신호들(SC, WCI, WCO)은 다음과 같다. 동작 선택 신호(SC)는 쉬프트 또는 캡쳐 동작을 선택한다. 동작 선택 신호(SC)는 쉬프트 시에 '1' 그리고 캡쳐 시에는 '0'이어야 하며, WSC-WBC 디코더(2330)로부터 제공되는 제어 신호(ShftDR)가 직접 제공된다. 내부 테스트 동작시, 경계 셀 제어 신호(WCI)는 논리 '1', 경계 셀 제어 신호(WCO)는 논리 '0'으로 각각 설정된다. 반면에, 코어 간 테스트 동작시에는 경계 셀 제어 신호(WCI)는 논리 '0', 경계 셀 제어 신호(WCO)는 논리 '1'로 각각 설정될 것이다.
도 9는 TAP 제어기(210)의 상태에 대한 WSC-WBC 디코더(2330) 및 멀티플렉서 제어기(2340)의 출력을 간략히 보여주는 타이밍도이다. 도 9의 TAP 제어기(210) 상태는 스캔 체인(2391)을 통한 코어 내부 테스트를 위해 제공되는 제어 신호들을 보여준다. 쉬프트(Shift) 동작과 캡쳐(Capture) 동작이 래퍼 경계 셀과 스캔 체인에서 동시에 수행된다. 결과적으로, IEEE 1500 래퍼를 이용한 내부 테스트 명령어인 WS_INTEST와 래퍼 직렬 제어 신호(WSC)인 WS_INTEST_SCAN에 대해서, 패턴만 다를 뿐 수행되는 테스트 절차는 동일하다. 코어들 간의 테스트 명령어인 WS_EXTEST 시에는 멀티플렉서에 의해 스캔 체인 경로는 제외되고 입력 래퍼 경계 셀과 출력 래퍼 경계 셀이 바로 연결된다.
상술한 타이밍도를 통해서 스캔 체인과 래퍼 경계 셀들을 제어하는 신호들은 모두 TAP 제어기(210)의 상태에 의존함을 알 수 있다. 따라서, IEEE 1149.1 규격을 채택한 저가의 ATE(Automated Test Equipment)로도 본 발명의 SoC(200)의 내부 지연 고장 테스트를 용이하게 수행할 수 있다.
도 10a는 도 4의 경계 테스트 클록 발생기(2350)의 구성을 간략히 보여주는 논리 회로도이다. 도 10a를 참조하면, 경계 테스트 클록 발생기(2350)는 스캔 체인(2391)에 의한 내부 지연 테스트 동작의 여부에 따라 경계 셀들을 구동하기 위한 클록 신호들(IWRTCLK, OWRTCLK) 또는 쉬프트 클록(SftCLK) 중 어느 하나를 제공한다. 여기서, 경계 테스트 클록 발생기(2350)로부터 생성된 쉬프트 클록(SftCLK)은 스캔 테스트 클록 생성기(2360)로 제공되어 스캔 테스트 클록(STCLK)을 생성하는데 사용된다. 여기서, 출력 경계 레지스터(2380)는 런치-캡쳐 클록이 스캔 체인으로 제공되는 시점에 지연 테스트 결과를 캡쳐해야 한다. 이러한 출력 경계 레지스터(2380)로 제공되는 클록 신호(OWRTCLK)는 래퍼 경계 레지스터에서 사용되지 않는 업데이터 제어 신호(UpDR)를 이용하여 제공된다.
전통적으로, 스캔 지연 테스트는 런치-오브-쉬프트(Launch-off-shift) 방식과 브로드 사이드(Broad-side) 방식을 기반으로 한다. 런치-오브-쉬프트(Launch-off-shift) 방식은 브로드 사이드(Broad-side) 방식에 비해 적은 수의 테스트 패턴으로도 더 넓은 테스트 커버리지(Test coverage)를 제공할 수 있다. 그러나, 런치-오브-쉬프트(Launch-off-shift) 방식에서 발생하는 스캔 인에이블 신호(se)의 스큐(Skew) 때문에 브로드-사이드(Broad-side) 방식을 많이 이용하고 있다. 본 발명의 래퍼 명령어 레지스터(2310)는 WS_DELAYINTEST_SCAN 명령어를 포함한다. 그리고 WS_DELAYINTEST_SCAN 명령어에 응답하여 스캔 체인(2391)을 이용한 지연 테스트를 위해 필요한 테스트 클럭 생성 수단들과 테스트 방법을 제공한다. WS_INTEST_SCAN 명령어에 의해 테스트 패턴 입력 후에 스캔 체인과 WBR이 동시에 캡쳐(Capture)를 수행해도 테스트가 가능하지만, 지연 테스트시에는 스캔 체인에서 런치-캡쳐(Launch-capture)가 수행되기 전에 먼저 출력 래퍼 경계 셀에서 프라이머리 출력(Primary Output)을 캡쳐(Capture)해야 한다. 출력 래퍼 경계 셀에서 캡쳐(Capture)를 수행하고 스캔 체인에서 런치-캡쳐(Launch-capture)가 수행되는 동안, 입력 래퍼 경계 셀은 프라이머리 입력(Primary Input) 값을 계속 유지해야 한다. 따라서, 입력 래퍼 경계 셀, 출력 래퍼 경계 셀, 스캔 체인들 각각에 대해서 별도의 테스트 클록의 생성이 필요하다.
도 10b는 상술한 경계 테스트 클록 발생기(2350)의 동작을 간략히 보여주는 타이밍도이다. 도 10b를 참조하면, 지연 테스트 신호(WS_DELAYINTEST_SCAN)가 하이 레벨('H')을 유지하는 내부 지연 테스트 동작시에 경계 테스트 클록 발생기(2350)의 동작이 예시적으로 도시되었다. 지연 테스트 신호(WS_DELAYINTEST_SCAN)가 로우 레벨('L')을 유지하는 경우에는 경계 테스트 클록 발생기(2350)는 클록 신호(GWRCK)를 그대로 출력한다.
내부 지연 테스트 동작시, 제어 신호들(CapDR, UpDR)에 응답하여 경계 테스트 클록들(IWRTCLK, OWRTCLK)의 출력을 살펴보자. 먼저, 제어 신호(ShftDR)가 로우 레벨로 천이되면, 제어 신호(ShftDR)에 직접 연결되는 동작 선택 신호(SC)가 동일한 파형으로 천이된다. 그러면, 제어 신호 (ShftDR) 및 제어 신호(CapDR)가 동시에 로우 레벨을 유지하는 구간에서 클록 신호(GWRCK)는 차단된다. 제어 신호(ShftDR) 및 제어 신호(CapDR)가 동시에 로우 레벨을 유지하는 구간에서, 제어 신호(UpDR)의 레벨이 출력 경계 셀의 테스트 클록으로 제공된다. 따라서, 출력 경계 레지스터(2380)의 경계 셀은 경계 테스트 클록(OWRTCLK)의 상승 에지에 동기되어 입력되는 테스트 결과 데이터를 래치하게 될 것이다.
본 발명의 경계 레지스터(WBR)는 업데이트용 레지스터를 포함하지 않는다. 따라서 내부 지연 고장 테스트시, 제어 신호(UpDR)를 통해서 출력 경계 레지스터(OWBR)의 캡쳐 동작을 제어할 수 있다.
도 11a는 스캔 테스트 클록 생성기(2360)의 구성을 간략히 보여주는 블록도이다. 도 11a를 참조하면, 스캔 테스트 클록 생성기(2360)는 런치-캡쳐 클록(LCCLK)과 쉬프트 클록(SftCLK)의 논리합(OR)을 내부 지연 테스트(At-speed launch capture)에 사용되는 스캔 테스트 클록(STCLK)으로 제공한다.
테스트 모드(MODE='1') 및 내부 지연 테스트(WS_DELAYINTEST_SCAN='1')인 경우에 멀티플렉서들(2363, 2364)에 의해서 클록 신호(DTCLK)가 선택된다. 클록 신호는 쉬프트 클록(SftCLK)과 런치-캡쳐 클록(LCCLK)이 OR 게이트(2362)에 의해서 논리합 연산된 클록 신호이다. 여기서, 런치-캡쳐 클록 발생기(2361)는 일정 시간 지연된 제어 신호(UpDR)의 펄스 구간에 대응하는 코어 클록 펄스들에 해당한다.
도 11b는 상술한 스캔 테스트 클록 생성기(2360)의 동작을 설명하기 위한 타이밍도이다. 도 11b를 참조하면, 내부 지연 테스트 모드(즉, WS_DELAYINTEST_SCAN='1')에서 제어 신호(ShftDR) 또는 스캔 인에이블 신호(se)가 로우 레벨인 구간 동안, 클록 신호(GWRCK)는 차단된다. 결과적으로 스캔 인에이블 신호(se)가 로우 레벨을 유지하는 동안에는 테스트 클록이 제거된 쉬프트 클록(SftCLK)이 생성된다. 그리고 런치-캡쳐 클록 생성기(2361)는 제어 신호(UpDR)가 하이 레벨인 경우를 감지 및 일정 구간 지연하여 코어 클록(CoreCLK) 신호와 논리곱(AND) 연산된 런치-캡쳐 클록(LCCLK)을 생성한다. 다시, 쉬프트 클록(SftCLK)과 런치-캡쳐 클록(LCCLK)은 OR 게이트(2362)에 의한 논리합 연산에 의해 클록 신호(DTCLK)로 출력된다. 클록 신호(DTCLK)는 다시, 테스트 모드(MODE='1') 및 내부 지연 테스트(WS_DELAYINTEST_SCAN='1')인 경우에 멀티플렉서들(2363, 2364)에 의해서 선택되며 스캔 테스트 클록(STCLK)으로 출력된다.
상술한 스캔 테스트 클록 생성기(2360)에 의해서 생성되는 스캔 테스트 클록(STCLK)에 의하면, 스캔 체인에 의한 내부 테스트 동작시에는 TAP 제어기(210)로부터 제공되는 테스트 클록(TCK)이 스캔 체인에 제공된다. 그러나, 내부 지연 테스트(At-speed launch-capture test) 시(즉, se='0' )에는 정확한 런치 펄스(Launch pulse)와 캡쳐 펄스(Capture pulse)를 제공하기 위해 PLL로부터 생성된 클록을 스캔 체인에 제공한다. 따라서, 코어의 상용 주파수에 대한 정확한 앳-스피드 테스트(At-speed test)가 가능하다.
도 12a는 상술한 도 11a의 런치-캡쳐 클록 생성기(2361)의 일예를 보여주는 블록도이다. 도 12a를 참조하면, 런치-캡쳐 클록 생성기(2361)는 제어 신호들(CapDR, UpDR) 및 코어 클록(CoreCLK)의 데이터 상태에 따라 런치-캡쳐 클록의 발생 여부를 결정하는 스테이트 머신(2362)을 포함한다. 그리고, 런치-캡쳐 클록 생성기(2361)는 스테이트 머신(2362)으로부터의 제어 신호(en)에 응답하여 코어 클록과 동일한 클록 주파수의 런치-캡쳐 클록을 생성하기 위한 클록 게이팅 셀(2363)을 포함한다. 클록 게이팅 셀(2363)은 코어 클록(CoreCLK)에 동기하여 스테이트 머신(2362)으로부터 출력되는 제어 신호(en)를 래치하는 래치 회로를 포함한다. 그리고 래치 회로는 코어 클록(CoreCLK)에 의해서 래치된 값을 게이트 제어 신호(gc)로 제공한다. 결국, AND 게이트에 의해서 클록 게이팅 셀(2363)은 게이트 제어 신호(gc)의 펄스 구간에 대응하는 코어 클록(CoreCLK)을 런치-캡쳐 클록(LCCKL)으로 출력한다. 클록 게이팅 셀(2363)의 구성에 따라, 런치 및 캡쳐 동작의 시간차는 코어 클록의 주기에 동기된다. 따라서, 클록 주파수 옵셋에 따른 글리치(Glitch)를 차단할 수 있다.
도 12b는 상술한 도 12a의 스테이트 머신(2362)의 동작을 설명하는 상태 천이도(State diagram)이다. 도 12b를 참조하면, 스테이트 머신(2362)은 제어 신호들(CapDR, UpDR)의 상태에 따라 코어 클록(CoreCLK)에 동기되어 순차적으로 제어 신호의 레벨을 설정한다. 차단 상태(Closed State)로부터 살펴보면, 스테이트 머신(2362)은 제어 신호(CapDR)의 논리값이 '1'인 경우에는 차단 상태를 유지하고, 제어 신호(CapDR)의 레벨이 '0'인 경우에는 제어 신호(UpDR)의 레벨을 검출하는 아이들 상태(Idle State)로 천이한다. 차단 상태(Closed Stage) 동안, 제어 신호(en)는 비활성화('0') 상태를 유지한다. 아이들 상태(Idle State)에 돌입하면, 스테이트 머신(2362)은 제어 신호(UpDR)가 논리값 '1'로 천이되는 순간을 기다린다. 만일 제어 신호(UpDR)가 논리값 '1'로 천이되면, 스테이트 머신(2362)의 상태는 런치 상태(Launch Stage)로 이동한다. 그러나, 제어 신호(UpDR)의 논리값이 '0'인 경우에는 상태는 아이들 상태(Idle State)를 유지하고 제어 신호(en)는 논리 '0'을 유지한다. 런치 상태(Launch Stage)에서는 제어 신호(en)를 논리 '1'로 설정하고 무조건 캡쳐 상태(Capture State)로 천이된다. 캡쳐 상태(Capture State)에서도 제어 신호(en)는 논리 '1'로 설정되며, 상태는 코어 클록(CoreCLK)에 동기하여 무조건 차단 상태(Closed Stage)로 이동한다. 따라서, 스테이트 머신(2362)은 런치-캡쳐 동작을 코어 클록(CoreCLK)과 동일한 주파수의 연속되는 2개 클록에 동기하여 수행하도록 런치-캡쳐 클록(LCCLK)을 생성할 수 있다. 도 9c는 상술한 도 9a에 따른 런치-캡쳐 클록 생성기(2361)의 동작을 보여주는 타이밍도이다.
도 13은 서로 다른 코어 클록을 갖는 IEEE 1500 랩드 코어들에서 동시에 수행되는 앳-스피트 런치-캡쳐(At-speed launch-capture) 테스트를 보여주는 타이밍도이다. 도 13을 참조하면, 각 코어들의 내부 지연 테스트를 위한 TAP 제어기(210)의 입출력 단자들(TCK, TRST, TMS, TDI, TDO)은 도시된 것과 같은 레벨로 설정된다. TAP 제어기(210) 및 글루 로직(220)으로부터 생성되는 제어 신호 및 클록 신호(GWRCK)는 IEEE 1500 래퍼 프로토콜을 갖는 코어들(Core A, Core B)로 제공된다. 이때, 각 코어들로는 PLL(250)로부터 제공되는 서로 다른 코어 구동 클록들(CoreCLKA, CoreCLKB)가 제공된다. 여기서, 테스트 클록(TCK)은 50 MHz, 코어 클록(CoreCLKA)은 125 MHz, 코어 클록(CoreCLKB)은 200 MHz로 제공된 것으로 간주한다.
상술한 래퍼 제어 신호(WSC)에 의해 래퍼 명령어 레지스터(WIR)는 내부 지연 테스트를 위한 제어 신호(WS_DELAYINTEST_SCAN)를 'HIGH' 레벨로 활성화한다. 그리고 스캔 인에이블 신호(se)의 활성화에 동기되어 두 개의 코어들 각각은 앳-스피트 런치-캡쳐 테스트를 수행한다. 두 개의 코어들 각각은 서로 다른 코어 클록(CoreCLK)에 대해서 내부 지연 테스트 동작을 수행한다. 도시된 타이밍도에서 확인할 수 있듯이, 스캔 인에이블 신호(se)가 로우 레벨 '0'로 유지되는 구간 동안, 앳-스피트 런치-캡쳐 테스트가 각각의 코어들에 대해서 원활히 수행됨을 볼 수 있다.
이상에서 설명된 IEEE 1500 래퍼를 갖는 IP 코어들을 IEEE 1149.1 제어기를 통해서 효과적으로 제어할 수 있는 SoC 구성을 제공하였다. 이러한 구성을 통해서 별도의 고비용의 ATE를 사용하지 않고서도 종래와 동일한 제어 스킴의 테스트 장비를 이용하여 고속으로 테스트할 수 있는 SoC를 제공할 수 있다.
아래 표 3은 각각의 SoC들에 대한 핀 수의 절감 효율을 보여준다. 각각의 배이직 표는 테스트를 위해서 구비되어야 하는 기본적인 핀 수(Basic)와 본 발명의 IEEE 1149.1 TAP 제어기에 의해 구현된 핀 수(Proposed)를 보여준다. 대부분의 SoC에서 90% 이상의 핀 수 절감 효과를 갖는다.
테스트 핀수 비교 표
SoC Benchmarks Test Pin Count Reduction Rate (%)
Basic Proposed
u226 56 5 91.07
h953 56 5 91.07
g1023 70 5 92.86
f2126 391 5 98.72
p22810 176 5 97.16
P34392 176 5 97.16
p93791 251 5 98.01
t512505 163 5 96.93
a586710 204 5 97.55
이상에서 살펴본 바와 같이, 본 발명은 기존의 저가 ATE를 사용함으로써 SoC 테스트 비용을 절감할 수 있다. 그리고 TAP 제어기(210)를 통하여 IEEE 1500 래퍼를 제어하여 코어를 테스트함으로써 테스트 핀 수를 줄이고, 앳-스피드 런치-캡쳐(At-speed launch-capture) 클럭 발생기를 구현하여 스캔 기반 지연고장 테스트가 가능하도록 하였다. TAP 제어기을 활용함으로써 별도의 테스트 접근 장치(TAM)를 추가할 필요가 없으며, 널리 알려진 표준이므로 테스트 엔지니어들이 접근이 용이하다. 또한, 엣-스피드 런치-캡쳐 클럭 발생기는 각 코어의 동작 클록에 동기 되므로 서로 다른 클럭을 사용하는 코어의 지연고장 테스트를 동시에 수행할 수 있다. SoC 내의 모든 입출력 및 스캔 체인이 하나의 경로로 구성되기 때문에 하나의 SoC를 테스트 하는데 걸리는 시간은 비교적 오래 걸리지만, 멀티-사이트(Multi-site) 테스트를 통하여 여러 SoC를 동시에 테스트함으로써 테스트 시간을 단축할 수 있다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지로 변형할 수 있다. 그러므로 본 발명의 범위는 상술한 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구범위 뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.
도 1은 IEEE 1500 랩드 코어의 구성을 보여주는 블록도;
도 2는 본 발명에 따른 TAP 제어기를 통한 IEEE 1500 랩드 코어에 대한 테스트 접근 매카니즘을 보여주는 블록도;
도 3a는 도 2의 글루 로직의 구성을 예시적으로 보여주는 블록도;
도 3b는 도 2의 TAP 제어기 및 글루 로직의 동작을 보여주는 타이밍도;
도 4는 본 발명에 따른 IEEE 1500 규격의 래퍼를 갖는 IP 코어를 보여주는 블록도;
도 5a 및 도 5b는 본 발명의 래퍼 경계 셀의 구조를 보여주는 블록도;
도 6은 본 발명에 따른 스캔 체인의 구조를 보여주는 블록도;
도 7은 WSC-WBC 디코더를 보여주는 논리 회로도;
도 8은 멀티플렉서 제어기의 구조를 보여주는 논리 회로도;
도 9는 상술한 WSC-WBC 디코더 및 멀티플렉서 제어기에 의한 래퍼 경계 셀과 스캔 체인의 제어 동작을 보여주는 타이밍도;
도 10a는 도 4의 경계 테스트 클록 발생기의 구성을 보여주는 논리 회로도;
도 10b는 도 10a의 경계 테스트 클록 발생기의 동작을 보여주는 타이밍도;
도 11a는 도 4의 스캔 테스트 클록 발생기의 구성을 보여주는 논리 회로도;
도 11b는 도 11a의 스캔 테스트 클록 발생기의 동작을 보여주는 타이밍도;
도 12a는 도 11a의 런치-캡쳐 클록 발생기의 구성을 보여주는 논리 회로도;
도 12b는 도 12a의 스테이트 머신의 동작을 설명하는 상태 천이도;
도 12c는 도 12a의 런치-캡쳐 클록 발생기의 동작을 설명하는 타이밍도;
도 13은 도 2의 시스템-온-칩의 각 IP 코어에 대한 앳-스피드 테스트 결과를 보여주는 타이밍도.
*도면의 주요부분에 대한 부호의 설명*
110 : 래퍼 명령어 레지스터 120 : 래퍼 바이페스 레지스터
130 : 코어 131, 132 : 스캔 체인
140 : 입력 래퍼 경계 레지스터 150 : 출력 래퍼 경계 레지스터
210 : TAP 제어기 220 : 글루 로직
230, 240 : IEEE 1500 랩드 코어 250 : 위상 고정 루프(PLL)
2310 : 래퍼 명령어 레지스터 2320 : 래퍼 바이패스 레지스터
2330 : WSC-WBC 디코더 2340 : 멀티플렉서 제어기
2350 : 경계 테스트 클록 발생기 2360 : 스캔 테스트 클록 발생기
2361 : 런치-캡쳐 클록 발생기 2362 : 스테이트 머신
2363 : 클록 게이팅 셀(CGC) 2370 : 입력 래퍼 경계 레지스터
2380 : 출력 래퍼 경계 레지스터 2390 : 코어
2391 : 스캔 체인

Claims (16)

  1. IEEE 1149.1 규격의 텝 제어기로부터 생성되는 래퍼 제어 신호(WSC)에 따라 테스트되는 시스템-온-칩에 있어서:
    하나 이상의 코어 구동 클록을 제공하는 코어 클록 생성 회로; 그리고
    상기 래퍼 제어 신호(WSC)와 상기 코어 구동 클록에 응답하여 테스트 동작을 수행하기 위한 입력 경계 레지스터, 출력 경계 레지스터 및 스캔 체인을 갖는 IEEE 1500 규격의 하나 이상의 코어를 포함하되,
    내부 지연고장 테스트 동작시, 상기 코어는 상기 래퍼 제어 신호(WSC)와 상기 코어 구동 클록에 응답하여 입력 경계 레지스터와 상기 스캔 체인과 출력 경계 레지스터들이 직렬로 연결되도록 제어하고, 상기 스캔 체인으로는 클록 게이팅 방식으로 생성된 앳-스피드 테스트 클록을 제공하는 래퍼 제어 블록을 포함하고,
    상기 래퍼 제어 블록은:
    상기 래퍼 제어 신호(WSC)에 응답하여 내부 지연고장 테스트 신호(WS_DELAYINTEST_SCAN)와 테스트 모드 신호(MODE, IO_FACE)를 생성하는 래퍼 명령어 레지스터;
    상기 래퍼 제어 신호(WSC)에 포함된 테스트 클록(WRCK)을 내부 지연 고장 테스트 동작시 비활성화되는 제 1 테스트 클록(GWRCK)으로 전환하고, 상기 래퍼 제어 신호(WSC)로부터 쉬프트 명령어(ShftDR), 업데이트 명령어(UpDR) 및 캡쳐 명령어(CapDR)를 생성하는 디코더;
    상기 테스트 모드 신호(MODE, IO_FACE) 및 쉬프트 명령어(ShftDR)에 응답하여 상기 입력 내지 출력 래퍼 경계 레지스터와 스캔 체인 각각에 포함되는 멀티플렉서들을 제어하여 직렬 연결로 구성하기 위한 멀티플렉서 제어기;
    상기 캡쳐 명령어(CapDR) 및 상기 업데이트 명령어(UpDR)를 참조하여 상기 제 1 테스트 클록(GWRCK)을 상기 입력 및 출력 경계 레지스터의 구동 클록으로 제공하는 경계 테스트 클록 발생기; 그리고
    내부 지연 고장 테스트시, 상기 업데이트 명령어(UpDR)의 펄스 구간에 대응하는 상기 코어 구동 클록의 연속하는 2개의 펄스를 상기 앳-스피드 테스트 클록으로 제공하는 스캔 테스트 클록 발생기를 포함하는 것을 특징으로 하는 시스템-온-칩.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 앳-스피드 테스트 클록은 상기 스캔 체인으로 제공되는 런치 펄스 및 캡쳐 펄스를 포함하는 시스템-온-칩.
  4. 제 1 항에 있어서,
    상기 입력 경계 레지스터 및 출력 경계 레지스터에 포함되는 경계 셀들은 업데이트 레지스터를 포함하지 않는 것을 특징으로 하는 시스템-온-칩
  5. 제 1 항에 있어서,
    상기 경계 테스트 클록 발생기는 상기 업데이트 명령어(UpDR)에 응답하여 상기 출력 경계 레지스터가 캡쳐 동작을 수행하도록 출력 경계 레지스터 클록을 제공하는 시스템-온-칩.
  6. 제 1 항에 있어서,
    상기 스캔 테스트 클록 발생기는,
    상기 캡쳐 명령어(CapDR)와 상기 업데이트 명령어(UpDR)의 상태에 따라 상기 업데이트 명령어(UpDR)의 상태를 감지하여 런치-캡쳐 클록(LCCLK)을 생성하는 런치-캡쳐 클록 발생기;
    상기 런치-캡쳐 클록(LCCLK)과 상기 입력 경계 레지스터로 제공되는 클록(SftCLK)의 논리합 연산을 수행하여 클록 신호(DTCLK)를 생성하는 연산 회로; 및
    상기 내부 지연 고장 테스트 명령어(WS_DELAYINTEST_SCAN)에 응답하여 상기 클록 신호(DTCKL)를 상기 앳-스피드 테스트 클록(STCLK)로 제공하는 선택 회로를 포함하는 시스템-온-칩.
  7. 제 6 항에 있어서,
    상기 런치-캡쳐 클록 발생기는 상기 코어 구동 클록에 의해서 구동되는 것을 특징으로 하는 시스템-온-칩.
  8. 제 6 항에 있어서,
    상기 런치-캡쳐 클록 발생기는,
    상기 캡쳐 명령어(CapDR)가 로우 레벨인 상태에서 상기 업데이트 명령어(UpDR)가 하이 레벨로 천이할 경우에 인에이블 신호를 생성하는 스테이트 머신; 및
    일정 시간 지연된 상기 인에이블 신호의 펄스 구간에 대응하는 코어 구동 클록만을 패스시키는 클록 게이팅 셀을 포함하는 시스템-온-칩.
  9. 제 8 항에 있어서,
    상기 클록 게이팅 셀은,
    상기 코어 클록의 하강 에지에 동기하여 상기 인에이블 신호를 래치하는 래치 회로와; 그리고
    상기 래치 회로의 출력과 상기 코어 구동 클록의 논리곱 연산을 수행하여 상기 런치-캡쳐 로직으로 제공하는 논리곱 연산 회로를 포함하는 시스템-온-칩.
  10. 제 1 항에 있어서,
    상기 코어 클록 생성 회로는 위상 고정 루프(Phase Locked Loop) 회로로 구성되는 것을 특징으로 하는 시스템-온-칩.
  11. 제 10 항에 있어서,
    상기 코어 클록 생성 회로는 복수의 코어들 각각의 구동 주파수에 대응하는 코어 구동 클록들을 제공하는 시스템-온-칩.
  12. IEEE 1500 규격의 래퍼를 구비하는 시스템-온-칩의 코어에 대한 내부 지연 고장 테스트를 수행하는 방법에 있어서:
    IEEE 1149.1 규격의 텝 제어기를 통하여 래퍼 명령어 레지스터(WIR)에 내부 지연 고장 테스트 명령어를 제공하고, PLL을 통해서 코어 구동 클록을 제공하는 단계;
    상기 내부 지연 고장 테스트 명령어에 따라 상기 IP 코어에 포함되는 입력 경계 레지스터와 스캔 체인 그리고 출력 경계 레지스터들이 직렬로 연결되도록 상기 입력 경계 레지스터와 스캔 체인 그리고 출력 경계 레지스터들 각각에 포함되는 멀티플렉서들을 제어하는 제어 신호(SC=se, WCI, WCO)와, 스캔 체인의 런치-캡쳐 동작을 지원하는 클록 게이팅 방식으로 생성된 런치-캡쳐 클록(LCCLK)과 그리고 입력 및 출력 경계 레지스터로 제공될 클록 신호들(IWRTCLK, OWRTCLK)을 생성하는 단계; 및
    상기 제어 신호(SC=se, WCI, WCO)와 상기 클록 신호들(IWRTCLK, OWRTCLK)을 상기 입력 경계 레지스터 및 출력 경계 레지스터로 그리고 상기 런치-캡쳐 클록을 상기 스캔 체인으로 제공하여 상기 출력 경계 레지스터로부터 캡쳐되는 테스트 결 과를 제공받는 단계를 포함하는 내부 지연 고장 테스트 방법.
  13. 제 12 항에 있어서,
    상기 래퍼 명령어 레지스터(WIR)는 상기 내부 지연 고장 테스트 명령어에 대응하는 제어 신호(WS_DELAYINTEST_SCAN)를 더 생성하는 것을 특징으로 하는 내부 지연 고장 테스트 방법.
  14. 제 12 항에 있어서,
    상기 입력 및 출력 경계 레지스터에 포함되는 래퍼 경계 셀들은 업데이트 레지스터를 갖지 않는 것을 특징으로 하는 내부 지연 고장 테스트 방법.
  15. 제 14 항에 있어서,
    상기 런치-캡쳐 클록(LCCK)은 상기 래퍼 명령어 레지스터(WIR)에서 캡쳐 명령어(CapDR)가 비활성화된 상태에서 업데이트 명령어(UpDR)이 활성화되는 시점에 상기 스캔 체인으로 제공되는 것을 특징으로 하는 내부 지연 고장 테스트 방법.
  16. 제 15 항에 있어서,
    상기 클록 신호(OWRTCLK)는 상기 업데이터 명령어(UpDR)의 활성화시에 상기 상기 출력 래퍼 경계 레지스터가 캡쳐 동작을 수행하도록 활성화되는 것을 특징으로 하는 내부 지연 고장 테스트 방법.
KR1020070087345A 2007-08-30 2007-08-30 Ieee 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부지연 테스트 방법 KR100907254B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070087345A KR100907254B1 (ko) 2007-08-30 2007-08-30 Ieee 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부지연 테스트 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070087345A KR100907254B1 (ko) 2007-08-30 2007-08-30 Ieee 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부지연 테스트 방법

Publications (2)

Publication Number Publication Date
KR20090022209A KR20090022209A (ko) 2009-03-04
KR100907254B1 true KR100907254B1 (ko) 2009-07-10

Family

ID=40692112

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070087345A KR100907254B1 (ko) 2007-08-30 2007-08-30 Ieee 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부지연 테스트 방법

Country Status (1)

Country Link
KR (1) KR100907254B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101429583B1 (ko) * 2013-02-18 2014-08-13 한양대학교 에리카산학협력단 Tsv 및 입출력 패드의 천이지연 고장 테스트를 위한 래퍼셀
KR102038414B1 (ko) 2013-06-20 2019-11-26 에스케이하이닉스 주식회사 테스트 장치 및 그의 동작 방법
KR102207562B1 (ko) 2014-03-10 2021-01-27 에스케이하이닉스 주식회사 다양한 경로로 신호 입력이 가능한 적층 반도체 장치 및 반도체 시스템
TWI629493B (zh) 2014-10-29 2018-07-11 南韓商因諾帝歐股份有限公司 積體電路晶片測試裝置,方法及系統
KR101681153B1 (ko) * 2016-02-29 2016-12-01 한밭대학교 산학협력단 회로 성능 모니터링 장치
CN117890753A (zh) * 2022-10-08 2024-04-16 深圳市中兴微电子技术有限公司 芯片测试方法、寄存器、电子设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050060865A (ko) * 2003-12-17 2005-06-22 한국전자통신연구원 신호 단자 단락과 정상 동작 검출을 위하여 에스오씨아이피 코아를 스캔 시험할 수 있는 집적회로 장치 및 그방법
KR20060019921A (ko) * 2004-08-30 2006-03-06 한양대학교 산학협력단 이종 코아를 가진 시스템 온 칩에서의 연결선 지연 고장점검 테스트 제어기 및 이를 구비한 시스템 온 칩

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050060865A (ko) * 2003-12-17 2005-06-22 한국전자통신연구원 신호 단자 단락과 정상 동작 검출을 위하여 에스오씨아이피 코아를 스캔 시험할 수 있는 집적회로 장치 및 그방법
KR20060019921A (ko) * 2004-08-30 2006-03-06 한양대학교 산학협력단 이종 코아를 가진 시스템 온 칩에서의 연결선 지연 고장점검 테스트 제어기 및 이를 구비한 시스템 온 칩

Also Published As

Publication number Publication date
KR20090022209A (ko) 2009-03-04

Similar Documents

Publication Publication Date Title
US10401426B2 (en) Wrapper serial port externally accessible pin providing additional tap control
US9547042B2 (en) IR enabled gating of TAP and WSP shift, capture, transfer
KR100267096B1 (ko) 디버그 및 제조 테스트 목적을 위한 적응적 스캔 체인
US20160349320A1 (en) Remote bus wrapper for testing remote cores using automatic test pattern generation and other techniques
US9274169B2 (en) Asynchronous programmable JTAG-based interface to debug any system-on-chip states, power modes, resets, clocks, and complex digital logic
KR100907254B1 (ko) Ieee 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부지연 테스트 방법
US7380189B2 (en) Circuit for PLL-based at-speed scan testing
US8166358B2 (en) Test access port with address and command capability
KR100694315B1 (ko) 다중 시스템 클럭 및 이종 코어를 포함하는 시스템 온 칩용연결선 지연 고장 테스트 제어기

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee