KR20130031022A - Dut 테스트 방법, dut 및 이에 의한 반도체 소자 테스트 시스템 - Google Patents

Dut 테스트 방법, dut 및 이에 의한 반도체 소자 테스트 시스템 Download PDF

Info

Publication number
KR20130031022A
KR20130031022A KR1020110094680A KR20110094680A KR20130031022A KR 20130031022 A KR20130031022 A KR 20130031022A KR 1020110094680 A KR1020110094680 A KR 1020110094680A KR 20110094680 A KR20110094680 A KR 20110094680A KR 20130031022 A KR20130031022 A KR 20130031022A
Authority
KR
South Korea
Prior art keywords
test
dut
signal
output
cores
Prior art date
Application number
KR1020110094680A
Other languages
English (en)
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 KR1020110094680A priority Critical patent/KR20130031022A/ko
Priority to US13/586,013 priority patent/US9135132B2/en
Publication of KR20130031022A publication Critical patent/KR20130031022A/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/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/318577AC testing, e.g. current testing, burn-in
    • G01R31/31858Delay testing
    • 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/273Tester hardware, i.e. output processing circuits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • 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/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • 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/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • 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/267Reconfiguring circuits for testing, e.g. LSSD, partitioning

Landscapes

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

Abstract

다수의 코어들을 각각 구비한 다수의 DUT(Device Under Test)의 테스트 방법 및 그 테스트 장치가 개시된다. 본 발명에 따른 DUT 테스트 방법은 코어들을 테스트하기 위하여 다수의 레지스터들을 제공하는 단계, 상기 레지스터들과 상기 코어들 각각으로 테스트입력데이터, 테스트모드인풋, 클락신호 및 리셋신호를 인가하는 단계,상기 레지스터들 각각이 상기 클락신호와 상기 리셋신호에 응답하여 상기 테스트입력데이터 및 상기 테스트모드인풋에 기초한 마스터비트, 제1제어값 및 제2제어값을 출력함으로써 상기 제1제어값에 의해 적어도 하나 이상의 상기 코어, 테스트 방법이 선택되고, 상기 마스터비트 또는 상기 제2제어값에 의해 하나의 출력대상 DUT가 선택되는 단계, 및 선택된 상기 코어들을 상기 테스트 방법으로 동시에 테스트 및 디버깅하고, 출력인에이블신호가 인가되면 상기 출력대상 DUT의 테스트출력데이터를 출력하여 테스트결과를 확인하는 단계를 포함한다.

Description

DUT 테스트 방법, DUT 및 이에 의한 반도체 소자 테스트 시스템{METHOD OF TESTING DUT(DEVICE UNDER TEST), DUT OF THE SAME AND SEMICONDUCTOR TEST SYSTEM INCLUDING THE SAME}
본 발명은 반도체 소자 테스트 장치 및 그 제어방법에 관한 것으로, 보다 상세하게는 IEEE 1149.1 및 IEEE 1500 표준에 따르는 코어들 및 DUT들을 내장한 반도체 소자 테스트 장치에 관한 것이다.
ASIC(Application Specific Integrated Circuit) 기술은 칩셋(Chip-set) 체계로부터 내장된 코어(Core)에 기초하는 SoC(System On Chip)의 개념으로 발전해왔다. SoC의 집적회로는 마이크로프로세서, 인터페이스, 메모리 어레이 및 DSP(Digital Signal Processor)와 같은 다양한 기능블록을 포함한다. 이와 같이 설계되어 검증이 끝난 기능 블록을 코어(Core)라고 한다.
그러나 복수개의 코어들 각각이 독자적으로 테스트를 수행하였을 때는 정상적으로 동작하였다 하더라도, SoC 에 내장된 경우 정상적으로 동작하지 않을 수 있다. 따라서 상기 코어들의 동작을 SoC로 제작한 후 다시 테스트하여야 한다.
따라서, SoC와 같은 DUT(Device Under Test)의 테스트 비용을 절감하기 위해 BIST(built-in self test), TDC(test data compression) 및 멀티 사이트 테스트(multi-site test) 등의 방법이 있다. BIST나 TDC는 비교적 큰 디자인 및 ATE(Automatic Test Equipment)의 오버헤드(overhead) 없이는 구현이 불가능하고 특정한 용도의 테스트 방법에만 국한되나, 동시에 N개의 SoC를 테스트하는 멀티 사이트 테스트는 1/N의 비용으로 하나의 SoC를 테스트 할 수 있는 장점이 있다.
멀티 사이트 테스트의 효율을 위해 ATE의 채널 리소스(channel resource)를 효과적으로 사용하여야 하고, 테스트시 추가적으로 필요한 테스트 타임(test time)과 인덱스 타임(index time)과 같은 오버헤드(overhead)를 줄여야 한다.
하나의 방법으로 ATE 채널의 개수를 늘여 테스트할 수 있는 사이트(site)의 개수를 늘림으로써 오버헤드를 줄일 수 있다. 그러나 이는 ATE에 대한 비용이 증가되는 문제점이 있는 바, 테스트시 필요한 SoC 즉, 피시험장치(Device Under Test; 이하 DUT) 입출력핀의 개수를 DFT(Design For Testablitiy) 기법을 도입하여 감소시키는 방법을 고려할 수 있다.
본 발명은 상술한 기술적 과제를 해결하기 위하여, 테스트시 필요한 DUT의 입출력핀의 개수를 줄여 코어 또는 칩 레벨 회로를 테스트 하는 방법을 제공하는 것이다.
상술한 기술적 과제를 해결하기 위하여, 본 발명의 일실시예에 따른 각각이 다수의 코어들을 구비한 다수의 DUT(Device Unter Test)의 테스트 방법은 (a)상기 코어들을 테스트하기 위하여 다수의 쉬프트 레지스터들을 제공하는 단계, (b)상기 쉬프트 레지스터들과 상기 코어들 각각으로 테스트입력데이터, 테스트모드인풋, 클락신호 및 리셋신호를 인가하는 단계, (c)상기 쉬프트 레지스터들 각각이 상기 클락신호와 상기 리셋신호에 응답하여 상기 테스트입력데이터 및 상기 테스트모드인풋에 기초한 마스터비트, 제1제어값 및 제2제어값을 출력하고, 상기 제1제어값에 의해 적어도 하나 이상의 상기 코어 및 테스트 방법이 선택되며 상기 마스터비트 또는 상기 제2제어값에 의해 하나의 출력대상 DUT가 선택되는 단계 및 (d)선택된 상기 코어들을 상기 테스트 방법으로 동시에 테스트 및 디버깅하고, 출력인에이블신호가 인가되면 상기 출력대상 DUT의 테스트출력데이터를 출력하여 테스트결과를 확인하는 단계를 포함한다.
상술한 기술적 과제를 해결하기 위하여, 본 발명의 일실시예에 따른 DUT(Device Unter Test)는 테스트입력데이터신호, 테스트모드인풋신호, 클락신호 및 리셋신호를 인가받는 4개의 입력핀들과 테스트출력데이터를 출력하는 1개의 출력핀, 상기 입력핀들로부터 인가되는 입력신호들을 실행하고 상기 테스트출력데이터를 각각 출력하는 다수의 코어(Core)들, 상기 입력신호들에 기초하여 테스트 명령, 상기 테스트출력데이터 및 출력인에이블신호을 전송하는 등 전체 테스트 과정을 제어하는 칩레벨 탭컨트롤러, 상기 클락신호 및 상기 리셋신호에 응답하여 상기 테스트입력데이터신호 및 상기 테스트모드인풋신호를 선형회귀쉬프트 연산하고, 연산된 제1제어값에 기초하여 상기 다수의 코어들 중 적어도 하나 이상의 테스트할 코어 및 테스트 방법을 선택하여 테스트를 수행하고, 연산된 제2제어값 또는 마스터비트에 기초하여 테스트출력데이터를 출력할 출력대상 DUT를 선택하는 스타컨트롤러 및 상기 출력인에이블 신호에 기초하여 상기 출력대상 DUT의 상기 테스트출력데이터를 출력하는 3상 버퍼를 포함한다.
상기 스타컨트롤러는 상기 클락신호 및 상기 리셋신호에 응답하여 상기 테스트입력데이터신호 및 상기 테스트모드인풋신호를 선형회귀 쉬프트 연산(Linear Feedback Shift Operation) 하는 다수의 쉬프트 레지스터들, 상기 쉬프트 레지스터들 중 적어도 하나의 최상위비트 쉬프트 레지스터로 이루어지고 상기 마스터비트를 출력하는 제1그룹, 적어도 하나 이상의 최하위비트 쉬프트 레지스터들로 이루어지고 상기 제2제어값을 출력하는 제2그룹을 포함하고, 상기 출력인에이블 신호가 인가될 때 상기 제2제어값 또는 상기 마스터비트에 따라 상기 DUT를 선택하는 DUT선택신호를 출력하는 외부컨트롤러 및 상기 쉬프트 레지스터들 중 상기 제1그룹과 상기 제2그룹을 제외한 나머지인 적어도 하나 이상의 쉬프트 레지스터들로 이루어지고 상기 제1제어값을 출력하는 제3그룹, 및 상기 제1제어값을 디코딩하여 M개의 코어선택신호들을 출력하는 디코더를 포함하며, 상기 M개의 코어들 중 적어도 하나 이상의 테스트할 코어 및 테스트 방법을 선택하여 테스트를 수행하도록 제어하는 내부컨트롤러를 포함한다.
상기 내부컨트롤러는 상기 칩레벨 탭컨트롤러 및 상기 M개의 코어들을 연결하는 다수의 제1멀티플렉서들을 더 포함하고, 상기 각 제1멀티플렉서는 상기 코어선택신호에 의해 상기 M개의 코어들 중 적어도 하나 이상의 테스트할 코어 및 테스트 방법을 선택할 수 있다.
상기 외부컨트롤러는 상기 칩아이디를 저장하는 칩 아이디 레지스터 및 상기 출력인에이블 신호가 인가될 때 상기 칩아이디와 상기 제2제어값을 비교하여 DUT선택신호를 출력하는 비교부를 더 포함할 수 있다.
상기 비교부는 상기 출력인에이블신호가 인가될 때 상기 마스터비트에 따라 상기 DUT의 선택여부를 결정하여 상기 DUT선택신호를 출력할 수 있다.
본 발명의 실시예에 따른 DUT는 ATE로 인가되는 출력 채널의 쉐어링(sharing)함으로써 입출력핀 수의 감소 및 멀티 테스트가 가능하게 되어 오버헤드와 테스트 비용, 테스트 시간을 줄어드는 효과가 있다.
도 1은 본 발명의 실시예들에 따른 반도체소자 테스트시스템을 나타낸 블록도이다.
도 2는 도 1의 DUT의 내부 구성를 나타낸 도면이다.
도 3은 도 2의 내부컨트롤러를 나타낸 블럭도이다.
도 4는 도 2의 외부컨트롤러를 나타낸 블럭도이다.
도 5는 도 2의 DUT를 테스트할 경우의 신호 타이밍도이다.
도 6은 본 발명에 따른 테스트 방법을 나타낸 흐름도이다.
도 7은 도 1에 도시된 DUT를 포함하는 반도체 시스템의 일 실시예를 나타낸다.
도 8은 도 1에 도시된 DUT를 포함하는 컴퓨터 시스템의 일 실시예를 나타낸다.
도 9는 도 1에 도시된 DUT를 포함하는 컴퓨터 시스템의 다른 실시예를 나타낸다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 개념에 따른 실시 예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되는 것으로 해석되어서는 아니된다.
본 발명의 개념에 따른 실시 예는 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있으므로 특정 실시 예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예를 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1 및/또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
테스트를 위해 반도체 소자 내 복수개의 코어들 각각은 제이택(JTAG)을 지원하며, IEEE 1149.1 표준에 따라 설계된다. 이때 상기 코어들을 포함하고, 테스트 대상이 되는 SoC(System on Chip)을 DUT(Device Under Test)라 칭하기도 한다.
IEEE 1149.1 표준은 코어(Core)를 테스트/디버그(test/debug) 하기 위하여 4개의 테스트 입력핀들과 1개의 테스트 출력핀을 사용한다. 테스트 입력핀들 각각은 테스트 데이터 입력핀(test data input ; 이하 TDI), 테스트 클럭신호 입력핀(test clock signal input ; 이하 TCK), 테스트 모드 신호 입력핀(test mode signal input; 이하 TMS) 및 테스트 리셋 신호 입력핀(test reset signal input; 이하 TRST)을 말한다. 테스트 출력핀은 테스트 데이터 출력핀(test data out;이하 TDO)을 말한다.
IEEE 1149.1 표준에 의한 코어는 TMS 신호에 의해 동작모드가 설정되고, TRST 신호에 의해 리셋(reset)되고, TCK 신호에 응답하여 테스트 데이터를 입출력한다. 그리고 TDI 핀을 통해 테스트 입력 데이터가 입력되고, TDO 핀을 통해 테스트 출력 데이터가 출력된다. 이 구조를 이용하면 코어의 원래의 신호 핀(Signal pin)을 사용하지 않고도 소수의 입출력핀들(TAP)만을 이용하여 코어의 내부 특정 로직을 동작시키거나 내부 메모리에 데이터를 기록할 수 있다. 이러한 기능은 주로 하드웨어 개발자들이 디버깅(Debuggin)용으로 사용하고 있으며 본 발명에서는 이 기능을 테스트에 이용한다.
설명의 편의를 위해 SoC를 DUT(Device Under Test), 즉, 피시험장치라 하기로 한다. 이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다.
도 1은 본 발명의 실시예들에 따른 반도체 소자 테스트 시스템을 나타낸 블록도이다.
도 1을 참조하면, 반도체 소자 테스트 시스템(1)은 적어도 하나의 ATE(Automatic Test Equipment;이하 ATE,2)와 다수의 DUT(Device Under Test; 이하 DUT,100)들을 포함한다.
ATE(2)는 DUT(100)에 포함되는 복수의 코어들 각각을 그 특성에 따라 정확하게 동작하는지 테스트하는 IEEE 표준 규격에 따른 테스트장치이다. ATE(2)는 5개의 채널로 DUT(100)와 연결되는데, 테스트입력데이터신호(Test Data Input; 이하 TDI), 테스트모드인풋신호(Test Mode Input; 이하 TMI), 클락신호(Test Clock, 이하 TCK) 및 리셋신호(Test Reset, 이하 nTRST)를 인가받는 4개의 입력핀들과 테스트출력데이터(Test Data Output; 이하 TDO)를 출력하는 1개의 출력핀을 포함한다.
DUT(100)는 다양한 기능을 기능을 갖는 복수개의 코어를 포함하는 피시험장치로써, 일례로 SoC(System on Chip),마이크로프로세서, VLSI(Very Large System Ingetration) 등이 있다. DUT(100)는 IEEE 1149.1 규격에 따라 상기 5개의 채널로 ATE(2)와 연결된다.
도 2는 도 1의 DUT의 내부 구성를 나타낸 도면이다.
도 2를 참조하면, DUT(100)는 5개의 입출력핀, 칩레벨 탭 컨트롤러(10), 복수 개,예를 들어 M개의 코어들(20-1 내지 20-M) 및 스타 컨트롤러(30), 및 3상버퍼(40)를 포함한다.
5개의 입출력핀은 ATE(2)와 연결되는 5개의 채널 인터페이스로서, 테스트입력데이터신호(Test Data Input; 이하 TDI), 테스트모드인풋신호(Test Mode Input; 이하 TMI), 클락신호(Test Clock, 이하 TCK) 및 리셋신호(Test Reset, 이하 nTRST)를 인가받는 4개의 입력핀들과 테스트출력데이터(Test Data Output; 이하 TDO)를 출력하는 1개의 출력핀을 포함한다.
TAM(Test Access Mechanism; 이하 TAM)은 테스트 데이터의 전송 경로로 사용되는 채널로서, 적어도 하나의 코어에 연결되어 ATE(2)로부터 테스트 데이터를 입력받아 상기 연결된 코어에 전달한다. TAM의 개수 및 TAM의 폭은 다양한 테스트 스케줄링에 따라 결정될 수 있고, 각 코어의 체인 개수, 최대 체인 길이, 입출력 핀 수/종류 및 테스트 패턴의 수에 따라 결정될 수 있다.
칩레벨 탭컨트롤러(Chip Level TAP Controller,10)는 상기 입력신호들에 기초하여 테스트 명령, 상기 테스트출력데이터(PreTDO) 및 출력인에이블신호(TDO_En)을 전송하는 등 전체 테스트 과정을 제어한다.
코어(20-1)는 ATE(2)와 연결된 입력핀들로부터 인가되는 입력신호들(TCK, nTRST, TMS 및 TDI1 내지 TDIM)을 실행하고 상기 테스트출력데이터(TDOP1 내지 TDOPM)를 출력한다. DUT(100)는 복수 개, 예를 들어 M개의 코어를 포함한다. 이때 코어는 IEEE std. 1500에 따른 코어, IEEE std. 1149.1에 따른 코어 또는 칩레벨 탭 컨트롤러(10)의 제어를 받는 테스트 데이터 레지스터(test data register)일 수 있다.
스타 컨트롤러(30)는 다수의 레지스터들, 내부컨트롤러(200) 및 외부컨트롤러(300)를 포함한다. 스타 컨트롤러(30)는 클락신호(TCK) 및 리셋신호(nTRST)에 응답하여 테스트입력데이터신호(TDI) 및 테스트모드인풋신호(TMI)를 쉬프트 연산하고, 연산된 제1제어값(ISTAR)에 기초하여 상기 M개의 코어들 중 적어도 하나 이상의 테스트할 코어 및 테스트 방법을 선택하여 선택된 코어들의 테스트를 수행하도록 하고, 연산된 제2제어값(ESTAR) 및 상기 출력인에이블 신호(TDO_En)에 기초하여 해당 DUT(100)가 테스트 출력데이터(TDO)를 출력하도록 제어한다.
다수의 레지스터들은 제1그룹(310), 제2그룹(320) 및 제3그룹(220)을 포함하고, 내부컨트롤러(200)와 외부컨트롤러(300)에서 공유된다. 상기 레지스터들은 4개의 입력핀들로부터 인가되는 클락신호(TCK) 및 리셋신호(nTRST)에 응답하여, 상기 테스트입력데이터신호(TDI) 및 상기 테스트모드인풋신호(TMI)를 쉬프트 연산(Shift Operation)하는 다수의 플립플롭으로 이루어진다. 이때 쉬프트 연산은 선형회귀 쉬프트 연산(Linear Feedback Shift)일 수 있다.
제1그룹(310)은 외부컨트롤러(300)에서 공유되고, 쉬프트 레지스터들 중 적어도 하나의 최상위비트(MSB) 쉬프트 레지스터로 이루어지고 마스터비트를 출력한다. 제2그룹(320)은 외부컨트롤러(300)에서 공유되고 적어도 하나 이상의 최하위비트(LSB) 쉬프트 레지스터들로 이루어지고 멀티비트인 제2제어값(ESTAR)을 출력한다. 제3그룹(220)은 내부컨트롤러(200)에서 공유되고 상기 쉬프트 레지스터들 중 상기 제1그룹과 상기 제2그룹을 제외한 나머지 쉬프트 레지스터들로 이루어지고 멀티비트인 제1제어값(ISTAR)을 출력한다. 레지스터들에 대한 상세한 설명은 도 2 및 도 3에서 보다 상세히 설명한다.
내부컨트롤러(Internal Controller, 200)는 상기 M개의 코어들(20-1 내지 20-M) 중 적어도 하나 이상의 테스트할 코어 및 테스트 방법을 선택하여 테스트를 수행하도록 제어한다.
외부컨트롤러(External Controller, 300)는 출력인에이블 신호가 인가될 때 DUT(100)를 선택하여 선택되는 DUT(100)의 테스트출력데이터(TDO)를 ATE(2)로 출력하도록 제어한다.
3상 버퍼(40)는 IEEE std 1149.1에 따른 것으로, 외부컨트롤러(300)로부터 출력되는 DUT선택신호(DUT_Sel)에 응답하여 내부컨트롤러(200)로부터 출력되는 테스트 출력데이터(TDO_0)를 ATE(2)로 출력(TDO)한다.
도 3은 도 2의 내부컨트롤러를 나타낸 블럭도이다.
도 3을 참조하면, 내부컨트롤러(Internal Controller,200)는 상기 제3그룹(220), 디코더(230) 및 멀티플렉서(240)를 포함한다. 제3그룹(220)은 제1제어값을 생성하기 위한 것으로, 다수의 쉬프트 레지스터들 중 외부컨트롤러(300)에서 공유되는 제1그룹(310)과 제2그룹(320)을 제외한 나머지 레지스터들로 이루어진다. 보다 상세히 설명하면 클락신호(TCK) 및 리셋신호(nTRST)에 응답하여, 앞단의 레지스터에서 출력되는 레지스터출력신호(reg0)를 쉬프트 연산(Shift Operation)하여 각 레지스터에서 출력되는 결과 비트들을 하나의 버스인 제1제어값(ISTAR)으로 출력한다.
쉬프트 연산(Shift Operation)은 선형회귀 쉬프트 연산일 수 있다. 선형회귀 쉬프트 연산은 예를 들어, 제(L-2)번째 레지스터단을 살펴보자. 일단의 레지스터단은 제1멀티플렉서(221-1)를 더 포함하여, 제(L-1)번째의 레지스터에서 출력되는 레지스터출력신호 reg(L-1)와 제(L-2)번째 레지스터에서 궤환(feedback)되는 레지스터출력신호 reg(L-2)을 제1멀티플렉서(221-1)로 입력한다. 상기 제1멀티플렉서(221-1)는 리셋신호에 응답하여 앞단의 레지스터출력신호 reg(L-1)과 궤환되는 레지스터출력신호 reg(L-2) 중 어느 하나(m1)를 선택 및 출력하여 제(L-2)번째 레지스터의 입력(m1)으로 한다.
리셋신호(nTRST)는 활성화상태(리셋상태, 예를 들어 Low)일 때, 클락신호(TCK)에 응답하여 앞단의 레지스터출력신호 reg(L-1)을 제(L-2)번째 레지스터로 쉬프트한다. 반면, 리셋신호(nTRST)가 비활성화상태(예를 들어 High)일 때, 클락신호(TCK)에 응답하여 궤환되는 레지스터출력신호 reg(L-2)를 입력하여 제(L-2)번째 레지스터에 유지시킨다. 선형회귀 쉬프트 연산은 각 레지스터단마다 클락신호(TCK)에 응답하여 상기 과정을 반복한다. 이는 제1그룹(310)과 제2그룹(320)에도 공통된다.
디코더(230)는 제1제어값(ISTAR)를 디코딩하여 코어선택신호(CoreSel0 내지 CoreSel(m-1))을 출력한다. 이때 코어선택신호(CoreSel0 내지 CoreSel(m-1))는
Figure pat00001
개일 수 있다.
내부컨트롤러(200)는 M개의 코어들(20-1 내지 20-M)를 적어도 하나 이상 선택하여 테스트하기 위해 제2멀티플렉서(240-1내지 240-M)를 더 포함할 수 있다. 제2멀티플렉서(240-1내지 240-M)는 M개의 코어들(20-1 내지 20-M)를 데이지체인(daisy-chain)으로 연결한다.
보다 상세히 설명하면, 제2멀티플렉서(240-1 내지 240-M)는 코어선택신호(CoreSel)에 응답하여 앞단 코어의 테스트출력데이터를 바이패스(bypass)하거나 현재 단 코어의 입력으로(daisy-chain) 할 수 있다. 이때 코어선택신호는 적어도 하나 이상의 코어를 선택하도록 제2멀티플렉서(240-1)를 제어하므로 코어들 상호간의 동작이 테스트될 수 있다.
내부컨트롤러(200)는 테스트입력데이터(TDI) 및 테스트모드신호(TMS)를 입력받아 클락신호(TCK)와 리셋신호(nTRST)에 응답하여 적어도 하나 이상의 코어를 테스트하고, 테스트결과로 테스트출력데이터(TDO_0)를 출력한다.
도 4는 도 2의 외부컨트롤러를 나타낸 블럭도이다.
도 4를 참조하면, 외부 컨트롤러(300)는 제1그룹(310) 및 제2그룹(320)의 레지스터들, 칩아이디 레지스터(350) 및 비교부(340)를 포함한다.
제1그룹(310)은 내부컨트롤러(200)와 공유되는 다수의 레지스터들 중 최상위비트(MSB)에 해당하는 적어도 하나의 쉬프트 레지스터로 이루어지고, 제1그룹 레지스터(310)는 클락신호(TCK) 및 리셋신호(nTRST)에 응답하여 쉬프트 연산한 마스터비트(Master bit), 즉, 레지스터 신호 reg0를 출력한다. 마스터 비트는 출력 인에이블 신호(TDO_En)가 인가될 때 상기 DUT(100)를 선택여부를 결정한다. 일례로 제2그룹(320)의 레지스터들을 통해 쉬프트 연산된 제2제어값(ESTAR)과 상관없이 DUT(100)를 선택하게 제어할 수 있다. 마스터 비트는 다른 일례로 제2그룹의 레지스터들을 통해 쉬프트 연산된 제2제어값(ESTAR)과 상관없이 DUT를 선택하지 않게 제어할 수 있다.
제2그룹(320)은 내부컨트롤러(200)와 공유되는 다수의 레지스터들 중 최하위비트(LSB)에 해당하는 적어도 하나의 쉬프트 레지스터들로 이루어지고, 제2그룹 레지스터들(320)은 클락신호(TCK) 및 리셋신호(nTRST)에 응답하여 제3그룹 레지스터들(220) 중 마지막 레지스터단에서 레지스터 신호 reg k를 입력받아 쉬프트 연산한 제2제어값(ESTAR)을 출력한다. 제2제어값(ESTAR)는 각 레지스터에서 출력되는 결과비트들을 하나의 버스로 출력한 값이다. 이때 제1그룹(310)과 제2그룹(320)의 쉬프트 연산은 제3그룹(220)의 쉬프트연산과 공통된다.
칩아이디 레지스터(350)는 해당 DUT의 칩아이디(CHIP_ID)를 저장하는데, 일 실시예에 따라 레이저 퓨즈(Laser Fuse) 또는 전기적 퓨즈(Electrical Fuse)로 구현될 수 있다.
비교부(340)는 칩레벨 탭 컨트롤러(10)로부터 출력인에이블 신호(TDO_En)가 인가되면 칩아이디(CHIP_ID)와 제2제어값(ESTAR)을 비교하여 DUT 선택신호(DUT_Sel)를 출력한다. 비교부(340)는 제1비교부(c1, 341)와 제2비교부(c2, 342)를 포함한다.
제1비교부(341)는 칩아이디(CHIP_ID)와 제2제어값(ESTAR)을 비교한다. 즉, 제2제어값(ESTAR)이 칩아이디(CHIP_ID)와 동일하면, 해당 DUT(100)의 테스트출력데이터(TDO_0)가 출력되도록 선택한다. 그러나 제2제어값(ESTAR)이 칩아이디(CHIP_ID)와 동일하지 않으면, 해당 DUT(100)의 테스트출력데이터(TDO_0)가 출력되지 않도록 한다. 일례로, 제1비교부(341)는 XOR게이트 일 수 있다.
제2비교부(342)는 출력인에이블신호(TDO_En)에 응답하여 마스터 비트(Master bit) 또는 상기 제1비교부(341)의 비교결과를 DUT선택신호(DUT_Sel)로 출력한다. 일례로, 제2비교부(342)는 AND게이트일 수 있다.
그 결과, ATE(2)에 하나의 출력핀(TDO핀)이 있더라도, ATE(2)는 상기 DUT선택신호에 따라 다수의 DUT 중 하나의 DUT(100)의 그 테스트출력데이터(TDO)를 수신하여 그 테스트결과를 확인할 수 있다. 이는 ATE(2)의 출력 채널의 쉐어링(sharing)에 따른 입출력핀 수의 감소 및 멀티 테스트가 가능하게 되어 오버헤드와 테스트 비용, 테스트 시간을 줄어드는 효과가 있다.
도 5는 도 2의 DUT를 테스트할 경우의 신호 타이밍도이다.
도 5를 참조하면, ATE(2)로부터 DUT(100)에 4개의 입력신호들이 인가된다. 즉, 클락신호(TCK)에 응답하여, 테스트모드신호(TMS) 및 테스트입력데이터(TDI)가 칩레벨 탭컨트롤러(10)의 제어 하에 코어(20-1) 및 스타컨트롤러(30)로 인가된다.
내부컨트롤러(200)는 클락신호(TCK)에 응답하여 테스트모드신호(TMS) 및 테스트입력데이터(TDI)를 인가받아 제2그룹 레지스터들(220)을 통해 쉬프트 연산하고 각 레지스터들의 결과비트들을 하나의 버스인 제1제어값(ISTAR)으로 출력한다. 도 5에는 제1제어값(ISTAR)이 클락신호(TCK)가 상승할 때마다 쉬프트 연산되는 것을 볼 수 있다.
외부컨트롤러(300)는 제2그룹 레지스터들(220)에서 인가되는 제1제어값(ISTAR) '666666E7'을 제3그룹 레지스터들(320)에서 쉬프트 연산하고 각 레지스터들의 결과비트들을 하나의 버스인 제2제어값(ESTAR)을 출력한다. 이때 칩 아이디(CHIP_ID)와 상기 제2제어값(ESTAR)을 비교하여 동일한 경우, 도시된 실시예에서 제2제어값(ESTAR)이 'h 7333337'인 경우에 매칭되었다는 신호(MATCHED)를 제2비교부(342)를 인가한다.
제2비교부(342)는 출력인에이블신호(TDO_En)를 인가받으면, 상기 매칭되었다는 신호(MATCHED)를 DUT 선택신호(DUT_Sel)로서 3상버퍼(360)에 인가한다. 이때 출력인에이블신호(TDO_En)는 리셋 신호(nTRST)가 비활성화(예를 들어 high)로 바뀐 후 클락신호(TCK)의 일정 사이클이 지난 후 인가(enable, 예를 들어 high)된다.
3상버퍼(360)는 칩레벨 탭컨트롤러(10)로부터 상기 DUT 선택신호(DUT_Sel)를 인가받기 전에는 하이-지(high-z)를 출력하다가, 내부컨트롤러(200)에 의해 선택된 적어도 하나이상의 코어(20)들로부터 테스트출력데이터(TDO_0)를 상기 DUT 선택신호(DUT_Sel)가 인가받으면, 상기 테스트출력데이터를 ATE(2)로 출력한다(TDO).
도 6은 본 발명에 따른 테스트 방법을 나타낸 흐름도이다.
도 6을 참조하면, DUT(100)는 ATE(2)로부터 4개의 입력채널을 통해 입력신호들을 인가받는다(S10).
DUT(100)는 DUT(100)에 포함된 다수의 코어(20)들을 테스트하기 위하여 스타 컨트롤러(30)에 다수의 쉬프트 레지스터들을 제공한다. 그리고 상기 레지스터들과 상기 코어들 각각으로 테스트입력데이터(TDI), 테스트모드인풋(TMS), 클락신호(TCK) 및 리셋신호(nTRST)를 인가한다(S10).
이때 다수의 쉬프트 레지스터들은 상기 쉬프트 레지스터들 중 적어도 하나의 최상위비트(MSB) 쉬프트 레지스터로 이루어지고 마스터비트를 출력하는 제1그룹(310), 적어도 하나 이상의 최하위비트(LSB) 쉬프트 레지스터들로 이루어지고 제2제어값을 출력하는 제2그룹(320), 및 상기 쉬프트 레지스터들 중 상기 제1그룹과 상기 제2그룹을 제외한 나머지인 적어도 하나 이상의 쉬프트 레지스터들로 이루어지고 상기 제1제어값을 출력하는 제3그룹(220)으로 이루어진다.
즉, DUT(100)는 다수의 쉬프트 레지스터들 중 제3그룹의 쉬프트 연산을 통해 제1제어값(ISTAR)을 출력하고(S20), 상기 제1제어값(ISTAR)에 의해 선택된 적어도 하나 이상의 코어들을 선택된 테스트 방법에 따라 테스트 실행 및 디버깅하여(S30) 코어 테스트를 마친 후 그 테스트출력데이터(TDO_0)를 산출한다(S40).
DUT(100)가 상기 테스트출력데이터(TDO_0)를 ATE(2)로 출력하기 위해, 마스터비트 또는 제2제어값(ESTAR)은 제1그룹(310) 또는 제2그룹(320)의 쉬프트 레지스터들의 쉬프트 연산을 통해 출력된다(S50). DUT(100)는 상기 마스터비트 또는 상기 제2제어값에 기초하여 DUT선택신호(DUT_Sel)를 출력한다. DUT(100)는 출력인에이블 신호(TDO_En)가 인가되면, 테스트출력데이터(TDO_0)를 ATE(2)로 출력하여 테스트출력데이터(TDO)에 대한 테스트결과를 확인한다 (S60, S70).
도 7은 도 1에 도시된 DUT를 포함하는 반도체 시스템의 일 실시예를 나타낸다.
도 7을 참조하면, 반도체 시스템(1000)은 도 1에 도시된 DUT(100), 안테나, 무선 송수신기(1100), 입력 장치(1200), 및 디스플레이(1300)를 포함한다. 무선 송수신기(1100)는 안테나를 통하여 무선 신호를 주거나 받을 수 있다. 예컨대, 무선 송수신기(1100)는 안테나를 통하여 수신된 무선 신호를 DUT(100)에서 처리될 수 있는 신호로 변경할 수 있다.
따라서, DUT(100)는 무선 송수신기(1100)로부터 출력된 신호를 처리하고 처리된 신호를 디스플레이(1300)로 전송할 수 있다. 또한, 무선 송수신기(1100)는 DUT(100)로부터 출력된 신호를 무선 신호로 변경하고 변경된 무선 신호를 안테나를 통하여 외부 장치로 출력할 수 있다.
입력 장치(1200)는 DUT(100)의 동작을 제어하기 위한 제어 신호 또는 DUT(100)에 의하여 처리될 데이터를 입력할 수 있는 장치로서, 터치 패드(touch pad)와 컴퓨터 마우스(computer mouse)와 같은 포인팅 장치(pointing device), 키패드(keypad), 또는 키보드로 구현될 수 있다.
도 8은 도 1에 도시된 DUT를 포함하는 컴퓨터 시스템의 일 실시예를 나타낸다.
도 8을 참조하면, 도 1에 도시된 DUT(100)를 포함하는 컴퓨터 시스템(2000)은 PC(personal computer), 네트워크 서버(Network Server), 태블릿(tablet) PC, 넷-북(net-book), e-리더(e-reader), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 또는 MP4 플레이어로 구현될 수 있다.
컴퓨터 시스템(2000)은 DUT(100), 메모리 장치(2400)와 메모리 장치(2400)의 데이터 처리 동작을 제어할 수 있는 메모리 컨트롤러(2300), 디스플레이(2100) 및 입력 장치(2200)를 포함한다.
DUT(100)는 입력 장치(2200)를 통하여 입력된 데이터에 따라 메모리 장치(2400)에 저장된 데이터를 디스플레이(2100)를 통하여 디스플레이할 수 있다. 예컨대, 입력 장치(2200)는 터치 패드 또는 컴퓨터 마우스와 같은 포인팅 장치, 키패드, 또는 키보드로 구현될 수 있다. DUT(100)는 컴퓨터 시스템(2000)의 전반적인 동작을 제어할 수 있고 메모리 컨트롤러(2300)의 동작을 제어할 수 있다.
실시 예에 따라 메모리 장치(2400)의 동작을 제어할 수 있는 메모리 컨트롤러(2300)는 DUT(100)의 일부로서 구현될 수 있고 또한 DUT(100)와 별도의 칩으로 구현될 수 있다.
도 9는 도 1에 도시된 DUT를 포함하는 컴퓨터 시스템의 다른 실시예를 나타낸다.
도 9를 참조하면, 도 1에 도시된 DUT(100)를 포함하는 컴퓨터 시스템(3000)은 이미지 처리 장치(image process device), 예컨대 디지털 카메라 또는 디지털 카메라가 부착된 이동 전화기 또는 스마트 폰으로 구현될 수 있다.
컴퓨터 시스템(3000)은 DUT(100), 메모리 장치(3400)와 메모리 장치(3400)의 데이터 처리 동작, 예컨대 라이트 동작 또는 리드 동작을 제어할 수 있는 메모리 컨트롤러(3300)를 포함한다. 또한, 컴퓨터 시스템(3000)은 이미지 센서(3100) 및 디스플레이(3200)를 더 포함한다.
컴퓨터 시스템(3000)의 이미지 센서(3100)는 광학 이미지를 디지털 신호들로 변환하고, 변환된 디지털 신호들은 DUT(100) 또는 메모리 컨트롤러(3300)로 전송된다. DUT(100)의 제어에 따라, 상기 변환된 디지털 신호들은 디스플레이(3200)를 통하여 디스플레이되거나 또는 메모리 컨트롤러(3300)를 통하여 메모리 장치(3400)에 저장될 수 있다.
또한, 메모리 장치(3400)에 저장된 데이터는 DUT(100) 또는 메모리 컨트롤러(3300)의 제어에 따라 디스플레이(3200)를 통하여 디스플레이된다. 실시 예에 따라 메모리 장치(3400)의 동작을 제어할 수 있는 메모리 컨트롤러(3300)는 DUT(100)의 일부로서 구현될 수 있고 또한 DUT(100)와 별개의 칩으로 구현될 수 있다.
또한 본 발명의 실시예들에 따른 DUT(100)는 TSV(Through Silicon Via), SIP(System In Package) 또는 MCP(Multi-Chip Package) 중 적어도 어느 하나의 방법으로 패키징될 수 있다. TSV란 최근 반도체 메모리(memory) 및 메모리 모듈 각각의 밀도(density)를 크게 하기 위하여, 관통 실리콘 비아(through silicon via(TSV))를 이용하여 복수의 DUT(100)를 수직방향으로 적층하여 접속시킨 3D 칩 제조 공정 기술을 말한다.
멀티-칩 패키지(Multi-Chip Package: MCP)는 복수의 DUT(100)들을 포함하는 패키지로서 응용 제품에 따라 필요한 메모리들을 조합할 수 있고 이동 전화기 등 이동 통신 장치의 공간 효율화에도 크게 기여한다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
1 : 테스트 시스템
2 : Automatic Test Equipment
100 : DUT(Device Under Test)
10 : 칩레벨 탭컨트롤러 20 : 코어
30 : 스타 컨트롤러 40 : 3상 버퍼
200 : 내부 컨트롤러
220 : 제3그룹 쉬프트레지스터들 221 : 멀티플렉서
225 : 플립플롭 230 : 디코더
240 : 멀티플렉서
300 : 외부 컨트롤러
310 : 제1그룹 쉬프트 레지스터들 320 : 제2그룹 쉬프트 레지스터들
350 : 칩아이디 레지스터 340 : 비교부
1000 : 반도체 시스템 2000 : 컴퓨터 시스템
3000 : 컴퓨터 시스템

Claims (10)

  1. 각각이 다수의 코어들을 구비한 다수의 DUT(Device Under Test)의 테스트 방법에 있어서,
    (a)상기 코어들을 테스트하기 위하여 다수의 쉬프트 레지스터들을 제공하는 단계;
    (b)상기 쉬프트 레지스터들과 상기 코어들 각각으로 테스트입력데이터, 테스트모드인풋, 클락신호 및 리셋신호를 인가하는 단계;
    (c)상기 쉬프트 레지스터들 각각이 상기 클락신호와 상기 리셋신호에 응답하여 상기 테스트입력데이터 및 상기 테스트모드인풋에 기초한 마스터비트, 제1제어값 및 제2제어값을 출력하고, 상기 제1제어값에 의해 적어도 하나 이상의 상기 코어 및 테스트 방법이 선택되며 상기 마스터비트 또는 상기 제2제어값에 의해 하나의 출력대상 DUT가 선택되는 단계; 및
    (d)선택된 상기 코어들을 상기 테스트 방법으로 동시에 테스트 및 디버깅하고, 출력인에이블신호가 인가되면 상기 출력대상 DUT의 테스트출력데이터를 출력하여 테스트결과를 확인하는 단계를 포함하는 테스트 방법.
  2. 제1항에 있어서, 상기 다수의 쉬프트 레지스터들은
    상기 쉬프트 레지스터들 중 적어도 하나의 최상위비트 쉬프트 레지스터로 이루어지고 상기 마스터비트를 출력하는 제1그룹; 적어도 하나 이상의 최하위비트 쉬프트 레지스터들로 이루어지고 상기 제2제어값을 출력하는 제2그룹; 및 상기 쉬프트 레지스터들 중 상기 제1그룹과 상기 제2그룹을 제외한 나머지인 적어도 하나 이상의 쉬프트 레지스터들로 이루어지고 상기 제1제어값을 출력하는 제3그룹으로 이루어지는 테스트 방법.
  3. 제2항에 있어서, 상기 (c) 단계는
    상기 코어들을 데이지 체인(daisy-chain)으로 연결하고, 상기 제1제어값을 디코딩한 코어선택신호에 의해 적어도 하나 이상의 상기 코어 및 테스트 방법을 선택하는 테스트 방법.
  4. 테스트입력데이터신호, 테스트모드인풋신호, 클락신호 및 리셋신호를 인가받는 4개의 입력핀들과 테스트출력데이터를 출력하는 1개의 출력핀;
    상기 입력핀들로부터 인가되는 입력신호들을 실행하고 상기 테스트출력데이터를 각각 출력하는 다수의 코어(Core)들;
    상기 입력신호들에 기초하여 테스트 명령, 상기 테스트출력데이터 및 출력인에이블신호을 전송하는 등 전체 테스트 과정을 제어하는 칩레벨 탭컨트롤러;
    상기 클락신호 및 상기 리셋신호에 응답하여 상기 테스트입력데이터신호 및 상기 테스트모드인풋신호를 선형회귀쉬프트 연산하고, 연산된 제1제어값에 기초하여 상기 다수의 코어들 중 적어도 하나 이상의 테스트할 코어 및 테스트 방법을 선택하여 테스트를 수행하고, 연산된 제2제어값 또는 마스터비트에 기초하여 테스트출력데이터를 출력할 출력대상 DUT(Device Under Test)를 선택하는 스타컨트롤러; 및
    상기 출력인에이블 신호에 기초하여 상기 출력대상 DUT의 상기 테스트출력데이터를 출력하는 3상 버퍼를 포함하는 DUT(Device Under Test).
  5. 제4항에 있어서, 상기 스타컨트롤러는
    상기 클락신호 및 상기 리셋신호에 응답하여 상기 테스트입력데이터신호 및 상기 테스트모드인풋신호를 선형회귀 쉬프트 연산(Linear Feedback Shift Operation) 하는 다수의 쉬프트 레지스터들;
    상기 쉬프트 레지스터들 중 적어도 하나의 최상위비트 쉬프트 레지스터로 이루어지고 상기 마스터비트를 출력하는 제1그룹; 적어도 하나 이상의 최하위비트 쉬프트 레지스터들로 이루어지고 상기 제2제어값을 출력하는 제2그룹을 포함하고, 상기 출력인에이블 신호가 인가될 때 상기 제2제어값 또는 상기 마스터비트에 따라 상기 DUT(Device Under Test)를 선택하는 DUT선택신호를 출력하는 외부컨트롤러; 및
    상기 쉬프트 레지스터들 중 상기 제1그룹과 상기 제2그룹을 제외한 나머지인 적어도 하나 이상의 쉬프트 레지스터들로 이루어지고 상기 제1제어값을 출력하는 제3그룹; 및 상기 제1제어값을 디코딩하여 M개의 코어선택신호들을 출력하는 디코더를 포함하며, 상기 M개의 코어들 중 적어도 하나 이상의 테스트할 코어 및 테스트 방법을 선택하여 테스트를 수행하도록 제어하는 내부컨트롤러를 포함하는 DUT(Device Under Test).
  6. 제5항에 있어서, 상기 내부컨트롤러는
    상기 칩레벨 탭컨트롤러 및 상기 M개의 코어들을 연결하는 다수의 제1멀티플렉서들을 더 포함하고,
    상기 각 제1멀티플렉서는 상기 코어선택신호에 의해 상기 M개의 코어들 중 적어도 하나 이상의 테스트할 코어 및 테스트 방법을 선택하는 DUT(Device Under Test).
  7. 제6항에 있어서, 상기 제1멀티플렉서는
    상기 코어선택신호에 따라 상기 각 코어의 테스트출력데이터를 바이패스(bypass)로 연결하거나 데이지체인(daisy-chain)으로 연결하는 DUT(Device Under Test).
  8. 제5항에 있어서, 상기 다수의 쉬프트 레지스터 각각은
    제2 멀티플렉서 및 플립플롭을 포함하고, 선형궤환 쉬프트 연산(Linear Feedback Shift Operation)을 하는 DUT(Device Under Test).
  9. 제5항에 있어서, 상기 외부컨트롤러는
    상기 칩아이디를 저장하는 칩 아이디 레지스터; 및
    상기 출력인에이블 신호가 인가될 때 상기 칩아이디와 상기 제2제어값을 비교하여 DUT선택신호를 출력하는 비교부를 더 포함하는 DUT(Device Under Test).
  10. 제9항에 있어서, 상기 비교부는
    상기 출력인에이블신호가 인가될 때 상기 마스터비트에 따라 상기 DUT의 선택여부를 결정하여 상기 DUT선택신호를 출력하는 DUT(Device Under Test).
KR1020110094680A 2011-09-20 2011-09-20 Dut 테스트 방법, dut 및 이에 의한 반도체 소자 테스트 시스템 KR20130031022A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110094680A KR20130031022A (ko) 2011-09-20 2011-09-20 Dut 테스트 방법, dut 및 이에 의한 반도체 소자 테스트 시스템
US13/586,013 US9135132B2 (en) 2011-09-20 2012-08-15 Method of testing a device under test, device under test, and semiconductor test system including the device under test

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110094680A KR20130031022A (ko) 2011-09-20 2011-09-20 Dut 테스트 방법, dut 및 이에 의한 반도체 소자 테스트 시스템

Publications (1)

Publication Number Publication Date
KR20130031022A true KR20130031022A (ko) 2013-03-28

Family

ID=47881808

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110094680A KR20130031022A (ko) 2011-09-20 2011-09-20 Dut 테스트 방법, dut 및 이에 의한 반도체 소자 테스트 시스템

Country Status (2)

Country Link
US (1) US9135132B2 (ko)
KR (1) KR20130031022A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020197664A1 (en) * 2019-03-28 2020-10-01 Teradyne, Inc. Test system supporting reverse compliance

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2302403A1 (en) * 2009-09-28 2011-03-30 Imec Method and device for testing TSVs in a 3D chip stack
KR20130031022A (ko) * 2011-09-20 2013-03-28 삼성전자주식회사 Dut 테스트 방법, dut 및 이에 의한 반도체 소자 테스트 시스템
US9372227B2 (en) * 2013-03-11 2016-06-21 Taiwan Semiconductor Manufacturing Co., Ltd. Integrated circuit test system and method
US9658949B2 (en) * 2014-02-14 2017-05-23 Samsung Electronics Co., Ltd. Test system of system on chip and test method thereof
CN105242997A (zh) * 2015-08-11 2016-01-13 中国航空工业集团公司西安飞机设计研究所 机载计算机自动测试方法及装置
CN106326059B (zh) * 2016-09-18 2019-01-08 合肥移顺信息技术有限公司 一种嵌入式设备自动化测试***
JP6769490B2 (ja) * 2016-10-05 2020-10-14 富士電機株式会社 集積回路装置
CN109164374B (zh) * 2018-09-28 2024-03-29 长鑫存储技术有限公司 芯片与芯片测试***
TWI703434B (zh) * 2019-01-08 2020-09-01 崛智科技有限公司 半導體裝置
US11313904B2 (en) * 2019-11-24 2022-04-26 Global Unichip Corporation Testing device and testing method

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US6829730B2 (en) * 2001-04-27 2004-12-07 Logicvision, Inc. Method of designing circuit having multiple test access ports, circuit produced thereby and method of using same
KR100448706B1 (ko) 2002-07-23 2004-09-13 삼성전자주식회사 단일 칩 시스템 및 이 시스템의 테스트/디버그 방법
US20050262396A1 (en) * 2004-04-26 2005-11-24 Agilent Technologies, Inc Apparatus and method for automated test setup
US7536597B2 (en) * 2005-04-27 2009-05-19 Texas Instruments Incorporated Apparatus and method for controlling power, clock, and reset during test and debug procedures for a plurality of processor/cores
US8149901B2 (en) 2005-05-27 2012-04-03 Verigy (Singapore) Pte. Ltd. Channel switching circuit
US8015462B2 (en) * 2007-05-11 2011-09-06 Renesas Electronics Corporation Test circuit
JP2008310792A (ja) 2007-05-11 2008-12-25 Nec Electronics Corp テスト回路
JP5095273B2 (ja) * 2007-06-22 2012-12-12 株式会社東芝 制御装置
KR20130031022A (ko) * 2011-09-20 2013-03-28 삼성전자주식회사 Dut 테스트 방법, dut 및 이에 의한 반도체 소자 테스트 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020197664A1 (en) * 2019-03-28 2020-10-01 Teradyne, Inc. Test system supporting reverse compliance
US11415623B2 (en) 2019-03-28 2022-08-16 Teradyne, Inc. Test system supporting reverse compliance

Also Published As

Publication number Publication date
US9135132B2 (en) 2015-09-15
US20130073907A1 (en) 2013-03-21

Similar Documents

Publication Publication Date Title
KR20130031022A (ko) Dut 테스트 방법, dut 및 이에 의한 반도체 소자 테스트 시스템
US10281524B2 (en) Test partition external input/output interface control for test partitions in a semiconductor
US8127187B2 (en) Method and apparatus of ATE IC scan test using FPGA-based system
TWI407122B (zh) 積體電路以及用於測試積體電路的方法與系統
US7908536B2 (en) Testing functional boundary logic at asynchronous clock boundaries of an integrated circuit device
KR102066661B1 (ko) 스캔-체인으로 연결된 플립-플롭들의 값들을 jtag 인터페이스를 이용하여 재구성할 수 있는 집적 회로, 이의 동작 방법, 및 상기 집적 회로를 포함하는 장치들
US9274169B2 (en) Asynchronous programmable JTAG-based interface to debug any system-on-chip states, power modes, resets, clocks, and complex digital logic
US7500164B2 (en) Method for testing an integrated circuit device having elements with asynchronous clocks or dissimilar design methodologies
US20120159274A1 (en) Apparatus to facilitate built-in self-test data collection
US20140101500A1 (en) Circuits and methods for functional testing of integrated circuit chips
US11899063B2 (en) Generating multiple pseudo static control signals using on-chip JTAG state machine
US8819508B2 (en) Scan test circuitry configured to prevent violation of multiplexer select signal constraints during scan testing
US8069386B2 (en) Semiconductor device
EP1763677B1 (en) Circuit arrangement and method of testing an application circuit provided in said circuit arrangement
CN106680688B (zh) 利用并行扫描测试数据输入和输出测试多核集成电路
Han et al. A New Multi‐site Test for System‐on‐Chip Using Multi‐site Star Test Architecture
US9606182B2 (en) System on chip
KR102197068B1 (ko) Soc, soc 테스트 방법 및 테스트 시스템
US10890619B2 (en) Sequential test access port selection in a JTAG interface
Chandra et al. Designing efficient combinational compression architecture for testing industrial circuits
US7644329B2 (en) Integrated circuit testing method and related circuit thereof
Ali et al. Enhancement in IEEE 1500 Standard for at-speed Test and Debug
Deutsch et al. Software-based test and diagnosis of SoCs using embedded and wide-I/O DRAM
US20130173978A1 (en) Multiple input and/or output data for boundary scan nodes
KR20140045119A (ko) 시스템 온 칩의 초기화 장치

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid