KR20060092963A - 내부 정속 로직-bist를 이용한 로직 블록의 자동 오류테스트 - Google Patents

내부 정속 로직-bist를 이용한 로직 블록의 자동 오류테스트 Download PDF

Info

Publication number
KR20060092963A
KR20060092963A KR1020050095184A KR20050095184A KR20060092963A KR 20060092963 A KR20060092963 A KR 20060092963A KR 1020050095184 A KR1020050095184 A KR 1020050095184A KR 20050095184 A KR20050095184 A KR 20050095184A KR 20060092963 A KR20060092963 A KR 20060092963A
Authority
KR
South Korea
Prior art keywords
test
logic block
logic
flip
signature
Prior art date
Application number
KR1020050095184A
Other languages
English (en)
Other versions
KR101268611B1 (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 KR20060092963A publication Critical patent/KR20060092963A/ko
Application granted granted Critical
Publication of KR101268611B1 publication Critical patent/KR101268611B1/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/3177Testing of logic operation, e.g. by logic analysers
    • 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/3187Built-in tests
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • 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/318552Clock circuits details

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)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Detection And Correction Of Errors (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

칩 내장형의 정속 로직-BIST를 이용하여, 칩 내부의 로직 게이트로 매크로의 인터페이스 및 로직 블록의 자동 오류 테스트를 실행하는 시스템 및 방법이 제시된다. 내부 스토리지 소자들의 초기화에 이어, 한 세트의 테스트 신호가 발생되어 로직 블록에 의해 처리된다. 이 로직 블록의 출력을 한개의 시그너처로 누적시키고, 이를 기준 시그너처와 비교하여 오류를 검출한다. 테스트는 간단한 테스트 벡터를 이용하여 ATE(자동 테스트 장비) 상에서 실행될 수도 있고, 칩을 포함하는 실제 보드에 대해 현장 엔지니어에 의해 실행될 수도 있다.

Description

내부 정속 로직-BIST를 이용한 로직 블록의 자동 오류 테스트{AUTOMATIC FAULT-TESTING OF LOGIC BLOCKS USING INTERNAL AT-SPEED LOGIC BIST}
도 1은 본 발명의 한 실시예에 따른 비디오 디코더 집적 회로를 도시하는 블록도표.
도 2는 본 발명의 한 실시예에 따라, 입력 클럭 트리와 리셋 라인들을 가진 한 세트의 플립-플롭을 도시하는 가상 도면.
도 3은 본 발명의 한 실시예에 따른 플립-플롭의 초기화를 도시하는 시간 다이어그램.
도 4는 본 발명의 한 실시예에 따른 메모리 초기화를 도시한 시간 다이어그램.
도 5는 본 발명의 한 실시예에 따른 로직 블록의 정속 오류 테스트 방법에 대한 순서도.
본 발명은 하드웨어 테스트에 관한 발명으로써, 로직-BIST(Built-In Self Test; 내장형 자체 테스트) 회로를 이용한 로직 블록들의 자동 정속 오류 테스트에 관한 발명이다.
디지털 로직 블록들의 테스트는 디지털 로직 블록의 스캔-체인들과, 자동 테스트 장비(ATE)를 이용하여 실행되는 것이 일반적이다. 이러한 접근법이 적용되지만, 테스트 하에서는 디지털 로직 블록의 의도한 동작 속도보다 느린 속도에서 테스트가 실행된다. 따라서, 정속이나 요망 속도에선 실패하고 저속에선 성공하는 로직은 검출되지 않는다. 추가적으로, 이러한 테스트들은 디지털 로직에 대한 매크로 인터페이스를 테스트하지 않는다. 따라서, 매크로와 로직 간 인터페이스들이 개별적으로 테스트되는 것이 일반적이기 때문에, 이러한 연결성의 실패가 검출되지 않을 수 있다. 더우기, 복합 ATE 인터페이스의 경우엔 현장 엔지니어가 현장에서 칩을 편리하게 테스트할 수 없다.
따라서, 간단한 ATE 인터페이스를 이용하여 전체 로직 블록의 정속 테스팅을 위한 시스템 및 방법이 필요하다.
내장형의 정속 로직-BIST 회로를 이용한 반도체 소자(칩)의 인터페이스와 로직 블록의 자동 오류 테스트를 위한 시스템 및 방법이 제공된다. 플립-플롭이나 SRAM같은 내부 스토리지 소자의 초기화에 이어, 한 세트의 테스트 신호들이 발생되어 로직 블록에 의해 처리된다. 로직 블록의 출력은 테스트 시그너처로 누적되고, 기준 시그너처와 비교되어 오류를 검출한다. 테스트는 간단한 테스트 벡터를 이용하여 ATE 상에서 실행될 수 있고, 칩을 포함하는 실제 보드 상에서 현장 엔지니어에 의해 실행될 수 있다. ATE 벡터는 간단한다. 왜냐하면, 외부적인 시간 제약없이 로직-BIST 회로를 트리거링하기만 하면 되기 때문이다.
반도체 소자에 내장형으로 배치된 정속 로직-BIST(Bulit-In Self Test) 회로를 이용하여 자동 오류 테스트를 실행하는 시스템 및 방법이 제공된다. 본 발명은 간단한 테스트 벡터를 이용하여 ATE 사에서 테스트를 실행할 수 있다. 본 발명에 따르면, 칩 기능에 대해 의심이 생길때마다 칩을 포함하는 실제 보드에 대해 현장 엔지니어가 시스템-레벨 테스트를 실행할 수 있다. ATE 벡터는 간단하다. 왜냐하면, 로직-BIST 회로가 칩 내장형이기 때문에 외부적인 시간 제약없이 로직-BIST 회로를 트리거링하기만 하면 되기 때문이다.
다음은 비디오 디코더 로직 블록을 테스트하는 내용에 관하여 발명을 기술한다. 그러나 본 실시예는 예시적인 사항에 불과하며, 본 발명의 기술은 오디오 디코더, DSP, 그리고 그외 다른 데이터 파이프들과 같은 임의의 종류의 디지털 로직 블록에 적용될 수 있다.
도 1은 본 발명의 한 실시예에 따른 비디오 디코더 집적 회로를 도시하는 블록도표이다. 집적 회로 패키지(101)(이하 "칩"이라 함)는 디지털 입력 신호(109)에 대해 비디오 디코딩 동작을 실행하는 기능 로직을 제공하는 비디오 디코더 로직 블록(102)을 포함한다. 디지털 입력 신호(109)들은 한개 이상의 A/D 컨버터(106)에 의해 칩(101)의 아날로그 입력 신호(110)로부터 변환된다.
비디오 디코더(102)에 대한 테스트 신호(112)를 발생시키기 위해 패턴 발생기(103)가 제공된다. 내부 패턴 발생기(103)에 의해 발생된 테스트 신호(112)와, 변환된 입력 신호(110)를 멀티플렉서(108)가 멀티플렉싱하는 것이 바람직하다. 비디오 디코더(102)의 출력을 누적시키기 위해, 그리고 요망 시간에 비디오 디코더(102)에 내재된 임의의 요망 신호들을 누적하기 위해 시그너처 어큐뮬레이터(104)가 제공된다. 패턴 발생기(103), 비디오 디코더(102), 그리고 시그너처 어큐뮬레이터(104), 그리고 테스트를 위한 그외 다른 칩 부분(가령, PLL(113))을 프로그래밍하기 위해 상기 칩(101)에 내장형으로 로직-BIST 회로(105)가 제공된다. 로직-BIST 회로(105)는 패턴 발생기(103)를 프로그래밍하여, 경계 조건들 및 코너 케이스들을 포함하는 테스트 신호들을 발생시킨다. 그래서, 비디오 디코더(102)의 기능을 요망하는 바대로 실행 및 테스트할 수 있고, 따라서, 게이트의 오류 및 정속 오류들과 같은 로직 오류들을 검출할 가능성을 증가시킨다.
패턴 발생기(103)에 의해 발생되는 주어진 세트의 입력(112) 값들에 따라 지정 세트의 비디오 디코더 출력(111) 값들을 발생시키기 위해, 비디오 디코더(102)에 내장된 메모리 및 플립-플롭같은 피드백 로직 소자들이 먼저 초기화된다. 비디오 디코더(102)는 데이터 파이프로 이해할 수 있다. 파이프의 시작점에서 이러한 플립-플롭 및 메모리들이 기입되는 조건으로 상기 비디오 디코더(102)를 유도함으로서, 그리고 상기 소자들에 대한 리셋 신호를 반복적으로 발생시킴으로서, 초기화가 구현된다. 이에 따라 이 소자들이 공지된 값을 가지게 된다. 이러한 기술을 반복적으로 적용함으로서, 로직에서 파이프까지 역시 지정된 값을 가지게 된다. 모든 요망 플립-플롭과 메모리들이 초기화될 때까지 이 과정이 계속된다. 이 기술을 적용하기 위해 비디오 디코더(102)의 리셋불가능한 플립-플롭 일부 대신에 리셋가능 한 플립-플롭을 사용할 수 있다.
(PLL(113)에 의해 발생된) 입력 클럭 신호(114)의 비대칭성을 관리하기 위해, 그리고 도 2에 개략적으로 도시되는 바와 같이, 플립-플롭(116) 일부는 버터 트리를 형성하는 한 세트의 버퍼들(117)을 통해 클럭 신호(114)를 수신할 수 있다. 이때, 버퍼 트리가 플립-플롭(116)에 도달하는 경우에, 버퍼 트리는 공지된 시간 윈도를 제공하며, 이 시간 윈도 동안에, 모든 플립-플롭(116)들이 클럭 에지를 만난다. 그러나, 클럭들이 버퍼 트리를 통해 플립-플롭(116)에 연결된 경우, 하지만 리셋 라인(115)들이 버퍼 트리를 통해 플립-플롭(116)에 도달하지 않고 대신에 직접 공급될 경우에, 클럭 에지들은 서로 다른 시기에 서로 다른 플립-플롭(116)에 도달할 수 있다. 더우기, 어떤 시기에는 특정 플립-플롭(116)이 클럭 에지 이전에 리셋 신호(115)를 수신할 수 있고, 또다른 시기에는 클럭 에지 이후에 리셋 신호(115)를 수신할 수 있다. 리셋 신호(115)가 파워-온 상태에서 공급되는 것이 일반적이기 때문에, 그 결과는 여러 다른 파워-온 상태에서 서로 다른 플립-플롭 값들로 나타난다.
스캔-체인이 플립-플롭들을 공지 값들로 채우는 데 사용될 수 있지만, 내부적 스캔-체인 타이밍의 견고성은 어려움을 제시할 수 있다. 따라서, 스캔 체인에 관련없이, 비디오 디코더(102)의 기능 모드에서 플립-플롭 값들의 초기화를 처리하는 것이 바람직하다. 리셋 신호를 단순히 공급하는 것은 적정한 플립-플롭 초기화를 구현하지 못한다. 왜냐하면, 리셋 신호가 동일한 클럭 에지에서 모든 플립-플롭에 도달하는 것이 아니기 때문이다. 이로 인해, 일부 플립-플롭들은 다른 플립-플 롭 이전에 한개 이상의 클럭 사이클들을 리셋하게 되며, 먼저 리셋된 플립-플롭들은 피드백 로직으로 인해(한 예임), 다른 플립-플롭들이 리셋되는 시간만큼 자체 값들을 변경시킨다. 가령, 무한 임펄스 응답(IIR) 필터를 포함하는 경우처럼 피드백을 포함하는 일부 로직 서브블록에서, 출력은 현 입력에만 좌우되는 것이 아니라 이전 출력 값들에 따라서도 좌우된다.
이를 처리하기 위해, 로직-BIST 회로(105)는 본 발명의 한 실시예에 따라 도 3에 도시된 바와 같이, 클럭 신호(114)를 게이팅한다. 클럭 신호(114)를 게이팅함으로서, 클럭 신호(114)가 리셋 신호(115)로부터 분리되며, 그래서, 리셋 신호(115)의 활성화 시간의 부정확성이나 리셋 신호(115)의 전파 지연으로 인해 리셋 신호(115)가 여러 다른 클럭 사이클에서 여러 다른 소자에 도달하지 않게 한다. 이는 미지의 값들이 기-리셋된 메모리나 플립-플롭으로 전파되는 것을 방지한다.
클럭 신호(114)는 몇 클럭 사이클(118)에 대응하는 시간동안 게이팅된다. 이 시간동안 리셋 신호(115)가 활성화되어 있다. 리셋 신호(115)를 이용하여 초기화될 모든 소자에 리셋 신호(115)가 전파하는 데 충분한 시간동안 클럭 신호(114)가 게이팅된다. 리셋 신호(115)가 활성화 상태로 유지되면서, 클럭(114)은 다수의 사이클(119)동안 재개된다. 이에 따라, 리셋 신호(115)가 도달하는 상기 소자들이 리셋된다. 본 예에서, 4~20 클럭 사이클이 정상적인 동작을 한다고 판명되었으며, 이는 테스트 대상인 특정 로직 블록에 대해 조정될 수 있다. 클럭 신호(114)는 리셋 신호(115)가 동작정지된 구간인 몇 클럭 사이클(120)에 해당하는 시간동안 다시 게이팅된다. 이에 따라, 모든 리셋 소자들이 다음 클럭 에지에서 비활성(inactive) 리 셋 신호(115)를 만날 수 있다.
로직 블록을 완전하게 초기화시키는 데 필요한 클럭 사이클의 수에 대한 특정한 상한은 로직 블록(102)의 동작을 시뮬레이팅하는 소프트웨어 시뮬레이터를 이용하여 결정될 수 있다. 이 시뮬레이터의 플립-플롭이나 메모리의 미지의 비트 값들이 "미지값" 또는 "초기화되어 있지 않음"으로 지정되어, 공지 값으로 바뀔때까지 로직 블록(102)을 통해 전파될 수 있다. 미지 값이 없을 때까지 클럭 사이클들의 수가 증가할 수 있고, 로직 블록(102)을 테스트하는 데 결과적인 클럭 사이클 수가 사용될 수 있다.
플립-플롭 초기화에 추가하여, 테스트 이전에 공지값을 가정하도록 메모리들에 기입된다. 비디오 디코더(102)에서, 대부분의 메모리들은 임의적 액세스용이 아니라 지연용으로 사용된다. 이때, 메모리 소자는 n-지연으로 기능하는 n개의 메모리 위치들을 포함한다. 이러한 n-지연에 대한 입력들은 n개의 메모리 위치들을 통해 순차적으로 이동하며, 이때, 각각의 입력은 n개의 시프트 지연 후 판독되게 된다. 따라서, 한 세트의 공지 값들을 가진 공지 상태로 n-지연을 유도하기 위해, 총 n개의 공지 값이 n-지연에 공급된다.
특정 n-지연이 플립-플롭으로부터의 입력을 수신할 수 있기 때문에(이때, 플립-플롭의 값은 m 클럭 사이클마다 업데이트됨), 이러한 n-지연을 공지 상태로 유도하는 데는 m·n 의 클럭 사이클이 필요하다. 이를 위해, 로직-BIST 회로(105)는 리셋 신호(115)가 활성화된 구간인 몇 클럭 사이클(121) 동안 입력 클럭 신호(114)를 게이팅한다. 이는 본 발명의 한 실시예에 따라 도 4에 도식적으로 전개되어 있 다. 리셋 신호(115)를 액티브 상태로 유지하면서, 클럭(114)은 n·m 클럭 사이클(122)동안 재개되어, n-지연에 대한 입력을 리셋하고 따라서 n-지연을 마감한다. 클럭 신호(114)는 리셋 신호(115)가 동작정지된 몇 클럭 사이클(123)동안 다시 게이팅되며, 이에 따라, 모든 리셋 소자들이 비활성 리셋 신호(115)를 다음 클럭 에지에서 만날 수 있다. 이 프로세스는 반복되어(도 4 참조), 파이프를 따라 아래로 n-지연을 마감할 수 있다. 플립-플롭을 초기화함에 관련하여, 소프트웨어 시뮬레이션을 사용하여, 이러한 이론적 n·m 구성을 표현하는 적절한 수치를 결정할 수 있고, 또한, 이러한 초기화의 종료시 n-지연에 저장된 값들을 결정할 수 있다.
플립-플롭 및 메모리를 초기화시킨 후, 로직-BIST 회로(105)는 패턴 발생기(103)를 활성화시킨다. 패턴발생기(103)는 패턴 발생기(103)의 동작 모드를 표시하도록, 그리고 발생될 테스트 신호 세트를 선택하도록, 로직-BIST 회로(105)에 의해 프로그래밍될 수 있는 한개 이상의 레지스터를 포함하는 것이 바람직하다. 패턴 발생기에 의해 발생된 신호들(112)은 NTSC(National Television Standards Committee), PAL(Phase Alternation Line), SECAM(Systeme Electronique Couleur avec Memoire), 컴포지트 비디오, S-비디오("Separate" Video), 컴포넌트 비디오, 또는 그외 다른 이와 유사한 표준을 따를 수 있다. 패턴 발생기는 테스트 커버영역을 증가시킬 수 있는 비-표준 신호들(가령, 램덤 신호, 의사-랜덤 신호, 등등)을 또한 발생시킬 수 있다. 입력 신호의 특정 형태에 따라, 비디오 디코더(102)의 일부분은 테스트받지 않은 상태로 유지될 수 있다. 왜냐하면, 비디오 디코더(102)의 모든 부분이 모든 입력 신호(109)를 디코딩할 필요는 없기 때문이다. 따라서, 비디 오 디코더(102)를 완전하게 테스트하기 위해, 패턴 발생기(103)는 필요에 따라 비디오 디코더의 여러 부분 및 기능들을 결합하고 테스트하기 위해 적절한 신호 패턴들을 발생시킨다. 비디오 디코더들이 디스플레이에서 관찰하도록 테스트 신호들을 제공하기 위해 일부 내부 로직을 가지는 것이 일반적이기 때문에, 본 발명의 패턴 발생기(103)는 특별나게 추가된 테스트-관련 게이트 오버헤드를 나타내지 않는다.
로직-BIST 회로(105)를 트리거링하고 비디오 디코더(102)의 테스트를 초기화하는 데 ATE 또는 그외 다른 외부 메커니즘이 사용될 수 있다. 이에 따르면, 비디오 디코더(102)에 가용한 동작 모드들의 세트로부터 선택된 동작 모드를 명시한다. 로직-BIST 회로(105)는 패턴 발생기(103)를 프로그래밍하여 비디오 디코더(102)에 대한 한 세트의 테스트 데이터를 발생시키고, 비디오 디코더(102)를 프로그래밍하여 발생된 테스트 데이터를 처리하기 위한 요망 동작 모드에서 동작하도록 하며, 시그너처 어큐뮬레이터(104)를 프로그래밍하여 비디오 디코더(102)로부터의 출력을 수거할 수 있다. 로직-BIST 회로(105)는 프로그래밍 인터페이스에 따라 버스(107)를 통한 상호통신에 의해 패턴 발생기(103), 비디오 디코더(102), PLL(113), 그리고 시그너처 어큐뮬레이터(104)를 프로그래밍한다.
시그너처 어큐뮬레이터(104)는 CRC(cyclic redundancy check) 메커니즘을 이용하여 전체 디코더 출력을 한 시그너처에 누적시킨다. 비디오 디코더(102) 출력 값들은 "테스트 시그너처"라 불리는 단일 값(또는 단일 세트의 값들)으로 압축된다. CRC는 테스트 시그너처가 디코더(102) 출력의 작은 변화 시에도 정확한 기준 시그너처와 다름을 보장한다. 시그너처 어큐뮬레이터(104)가 비디오 디코더(102)의 일련의 출력들을 판독하는 실제 시기를 로직-BIST 회로(105)가 결정한다. 테스트 종료시, CRC 출력 레지스터에 저장된 최종 값(시그너처)는 테스트 중 비디오 디코더(102)에 의해 생성된 출력들의 시퀀스의 함수이다.
주어진 특정 테스트 하에서, 비디오 디코더(102)에 의한 오류없는 처리를 나타내는 기준 시그너처가 소프트웨어 시뮬레이션을 이용하여 연산될 수 있다. 로직-BIST 회로(105)는 최종 값을 레지스터에 기입시킬 수 있고, 이 값은 나중에 판독되어 소프트웨어 시뮬레이션에 의해 예측된 값과 비교될 수 있다. 두 값이 일치하면 양호한 칩(즉, 정확하게 기능하는 로직 블록)을 의미하고, 두 값이 일치하지 않으며 비디오 디코더 로직 블록에 오류가 있다는 것이다. 이때, 시그너처가 일치하지 않는다는 것은 테스트 하에 있는 로직 블록에 결함이 있다는 것을 의미하는 것이지, 로직 블록에 의해 구현되는 하부 알고리즘에 버그가 있다는 것은 아니다. 왜냐하면, 로직 블록을 시뮬레이팅함으로서 기준 시그너처를 얻기 때문이다. 또한, 비디오 디코더(102)의 직접 출력(111)에 부가하여, CRC에 의해 한개의 테스트 시그너처로 수거되는 비트들은 비디오 디코더(102)의 그외 다른 내부 신호 라인들을 포함할 수 있다. 이로 인해 특정 서브 블록들을 테스트할 수 있고, 비디오 디코더(102)의 특정 영역들에 대해 고장 범위를 좁혀갈 수 있다.
도 5는 본 발명의 한 실시예에 따른 로직 블록의 정속 오류-테스트 방법을 도시하는 순서도이다. 단계 201에서, 로직 블록(102)의 플립-플롭 및 메모리를 초기화한다. 단계 202에서, 로직 블록(102)에 의한 처리를 위해 테스트 신호를 발생시키도록 내부 로직-BIST 제어를 트리거링한다. 단계 203에서, 로직 블록(102)의 출력으로부터 테스트 시그너처를 생성한다. 단계 204에서, 로직 블록(102)이 테스트를 통과하였는 지, 실패하였는지를 결정하기 위해 테스트 시그너처를 기준 시그너처에 비교한다.
본 발명이 비디오 디코더 로직 블록의 내용을 참고하여 설명되고 있지만, 한 세트의 입력 신호들을 수신하여 한 세트의 출력 신호들을 결정론적으로 발생시키는 다른 종류의 로직 블록을 테스트하는 데도 본 발명이 적용될 수 있다. 이러한 로직 블록의 예로는 오디오 디코더, DSP, 그리고 그외 다른 데이터 타입들이 있다.
본 발명의 한가지 장점은 정확한 위상으로 클럭 및 테스트 데이터를 공급하기 위해 복합 ATE를 이용할 필요없이, 로직 블록의 의도한 동작 속도에서 로직 블록의 오류 테스트를 수행할 수 있다는 점이다.
본 발명의 또한가지 장점은 현장에서 주어진 로직 블록을 테스트할 수 있다는 점이다. 칩으로 패키징되어 집적 회로 보드의 일부분으로 제작된 로직 블록은 테스트 모드 진입을 위해 칩을 단순히 리프로그래밍함으로서 현장 엔지니어에 의해 테스트될 수 있다. 이에 따라, 복잡하거나 전용화된 테스트 장비를 가진 테스터에 상기 보드나 칩을 가져가야 하는 작업 등에 관련된 비용을 절감할 수 있다.
본 발명의 또하나의 장점은 스캔 체인 테스트 방법을 이용할 때보다 더 많은 게이트 및 매크로(가령, 메모리 및 PLL)를 테스트할 수 있다는 점이다. 스캔-체인 기반의 테스트 접근법에 참여하는 일부 로직 블록들은 두 종류의 입력을 메모리에 공급하는 멀티플렉서를 포함한다. 즉, 한가지 입력은 로직 블록 기능의 일부분을 제공하기 위한 한 세트의 게이트를 포함하며, 또한가지 입력은 메모리용 테스트 입력을 발생시키기 위한 한 세트의 게이트를 포함한다. 전형적인 스캔-체인 기반의 접근법은 게이트와 메모리들을 개별적으로 테스트하기 때문에, 멀티플렉서들은 테스트되지 않으며, 로직 블록 기능을 포함하는 오류들을 잠복시킬 수 있다. 이와는 대조적으로, 본 발명은 완전히 기능적인 모드로 로직 블록을 테스트하여, 로직 블록의 일부분을 개별적으로 테스트할 때 검출되지 않았던 오류들을 노출시킨다.
본 발명의 또한가지 장점은 간단한 ATE 인터페이스를 제공하는 데 있다. 거의 모두가 칩 내에서 내부적으로 실행되고 로직-BIST 회로는 클럭 및 리셋 라인의 게이팅에 의해 칩을 제어하기 때문에, ATE 인터페이스는 간단하게 유지되고 로직-BIST 회로를 단순히 프로그래밍하는 방식만을 제공한다. 그래서, 테스트 모드를 선택하고, 테스트를 실행하여, 테스트 결과를 수거할 수 있다.
본 발명의 또다른 장점은 다른 로직-BIST 회로 접근법들과는 달리, 필요에 따라 로직 블록의 수많은 특징부들을 테스트하도록 설계되었고, 결코 임의적이지 않다는 점이다. 이 기능은 대부분의 게이트에서 발생된 오류들을 감지할 가능성을 증가시킨다.

Claims (20)

  1. 반도체 소자에 있어서, 상기 소자는,
    - 클럭 신호 및 리셋 신호에 연결된 한 세트의 플립-플롭 및 메모리들을 구비한 로직 블록,
    - 상기 로직 블록에 의한 처리를 위해 한 세트의 테스트 신호들을 발생시키는 패턴 발생기,
    - 상기 테스트 신호들을 처리함에 따라, 상기 로직 블록에 의해 생성되는 한 세트의 출력들을 바탕으로 테스트 시그너처를 생성하는 시그너처 어큐뮬레이터, 그리고
    - 상기 플립-플롭 및 메모리들을 초기화하고 상기 로직 블록의 테스트를 개시하는 내장형 자체 테스트(로직-BIST) 회로
    를 포함하며,
    이때, 플립-플롭 및 메모리들 간에 리셋 신호의 전파 지연이나 타이밍 변화에도 불구하고, 플립-플롭 및 메모리들의 상기 초기화에 의해, 상기 플립-플롭 및 메모리들이 동시에 공지 값들을 저장할 수 있는 것을 특징으로 하는 반도체 소자.
  2. 제 1 항에 있어서,
    a) 상기 클럭 신호를 게이팅하는 동작,
    b) 상기 리셋 신호를 활성화시키는 동작,
    c) 상기 리셋 신호를 활성 상태로 유지하면서 상기 클럭 신호를 재개하는 동작,
    d) 상기 클럭 신호를 다시 게이팅하는 동작, 그리고
    e) 상기 리셋 신호를 동작정지시키는 동작
    을 실행함으로서 상기 로직-BIST 회로가 상기 플립-플롭 및 메모리들을 초기화시키는 것을 특징으로 하는 반도체 소자.
  3. 제 2 항에 있어서, 상기 로직-BIST 회로는 상기 테스트 시그너처를 기준 시그너처에 비교하는 동작을 추가로 실행하며, 이때, 상기 기준 시그너처는 상기 로직 블록에 의한 상기 테스트 신호 세트의 오류없는 처리 결과를 나타내는 것을 특징으로 하는 반도체 소자.
  4. 제 3 항에 있어서, 상기 테스트 신호 세트에 대한 상기 로직 블록의 오류없는 동작을 시뮬레이션함으로서 상기 기준 시그너처가 연산되는 것을 특징으로 하는 반도체 소자.
  5. 제 2 항에 있어서, 상기 로직 블록은 비디오 신호들을 디코딩하기 위한 비디오 디코더 로직 블록을 포함하고,
    상기 패턴 발생기는 NTSC, PAL, SECAM, 컴포지트 비디오, S-비디오, 그리고 컴포넌트 비디오 중에서 선택된 표준에 따라, 또는, 오류 커버 영역을 증가시키기 위해 비-표준 입력에 따라, 상기 테스트 신호 세트를 발생시키는 것을 특징으로 하는 반도체 소자.
  6. 제 2 항에 있어서, 상기 시그너처 어큐뮬레이터는 상기 로직 블록에 의해 생성된 상기 출력 세트를 증분방식으로 압축함으로서 상기 테스트 시그너처를 생성하는 CRC(cyclic redundancy check)를 포함하는 것을 특징으로 하는 반도체 소자.
  7. 제 2 항에 있어서, 상기 로직-BIST 회로는 상기 로직 블록에 의해 생성된 상기 출력 세트를 상기 시그너처 어큐뮬레이터가 판독하는 시기를 결정하는 것을 특징으로 하는 반도체 소자.
  8. 제 1 항에 있어서, 상기 로직 블록은 한개의 메모리 소자를 가지며, 상기 로직-BIST는 상기 메모리 소자를 공지 값들로 구성함으로서 상기 메모리 소자를 초기화시키는 것을 특징으로 하는 반도체 소자.
  9. 클럭 신호와 리셋 신호에 연결된 한 세트의 플립-플롭을 가진 로직 블록을 테스트하는 방법으로서, 상기 방법은,
    - 상기 플립-플롭 세트를 초기화하고,
    - 상기 로직 블록에 의한 처리를 위해 한 세트의 테스트 신호들을 발생시키며, 그리고
    - 상기 테스트 신호를 처리함에 따라, 상기 로직 블록에 의해 생성되는 한 세트의 출력들을 바탕으로 하여 테스트 시그너처를 생성하는
    단계를 포함하며, 플립-플롭 및 메모리들 간에 리셋 신호의 전파 지연이나 타이밍 변화에도 불구하고, 플립-플롭 및 메모리들의 상기 초기화에 의해, 상기 플립-플롭 및 메모리들이 동시에 공지 값들을 저장할 수 있는 것을 특징으로 하는 로직 블록 테스트 방법.
  10. 제 9 항에 있어서, 상기 플립-플롭의 초기화 단계는,
    a) 상기 클럭 신호를 게이팅하고,
    b) 상기 리셋 신호를 활성화시키며,
    c) 상기 리셋 신호를 활성 상태로 유지시키면서 상기 클럭 신호를 재개하고,
    d) 상기 클럭 신호를 다시 게이팅하며, 그리고
    e) 상기 리셋 신호를 동작정지시키는
    단계들의 시퀀스로 구성되는 것을 특징으로 하는 로직 블록 테스트 방법.
  11. 제 10 항에 있어서, 상기 방법은,
    - 상기 테스트 시그너처를 기준 시그너처에 비교하는
    단계를 추가로 포함하고, 이때, 상기 기준 시그너처는 상기 로직 블록에 의한 상기 테스트 신호 세트의 오류없는 처리 결과를 나타내는 것을 특징으로 하는 로직 블록 테스트 방법.
  12. 제 11 항에 있어서, 상기 테스트 신호 세트에 대한 로직 블록의 오류없는 동작을 시뮬레이션함으로서 상기 기준 시그너처가 연산되는 것을 특징으로 하는 로직 블록 테스트 방법.
  13. 제 10 항에 있어서, 상기 로직 블록은 비디오 신호들을 디코딩하기 위한 비디오 디코더 로직 블록을 포함하고, 상기 테스트 신호 세트는 NTSC, PAL, SECAM, 컴포지트 비디오, S-비디오, 그리고 컴포넌트 비디오 중에서 선택된 표준에 따라 발생되는 것을 특징으로 하는 로직 블록 테스트 방법.
  14. 제 10 항에 있어서, 테스트 시그너처를 생성하는 상기 단계는, 상기 로직 블록에 의해 생성되는 상기 출력 세트를 증분식으로 압축하는 단계를 포함하는 것을 특징으로 하는 로직 블록 테스트 방법.
  15. 제 14 항에 있어서, 상기 출력 세트의 증분식 압축은 선형 피드백 시프트 레지스터(LFSR)를 이용하는 단계를 포함하는 것을 특징으로 하는 로직 블록 테스트 방법.
  16. 제 10 항에 있어서, 한 세트의 테스트 신호들을 발생시키는 상기 단계는, 상기 로직 블록과 동일한 반도체 소자에 위치한 패턴 발생기에 의해 실행되는 것을 특징으로 하는 로직 블록 테스트 방법.
  17. 제 10 항에 있어서, 테스트 시그너처를 생성하는 상기 단계는, 상기 로직 블록과 동일한 반도체 소자에 위치한 시그너처 어큐뮬레이터에 의해 실행되는 것을 특징으로 하는 로직 블록 테스트 방법.
  18. 제 10 항에 있어서, 상기 플립-플롭 세트의 초기화는, 상기 로직 블록과 동일한 반도체 소자에 위치한 내장형 자체 테스트 회로(로직-BIST)에 의해 실행되는 것을 특징으로 하는 로직 블록 테스트 방법.
  19. 제 9 항에 있어서, 상기 로직 블록은 한개의 메모리 소자를 가지며, 상기 방법은,
    - 상기 메모리 소자를 공지 값들로 구성함으로서 상기 메모리 소자를 초기화시키는
    단계를 포함하는 것을 특징으로 하는 로직 블록 테스트 방법.
  20. 제 19 항에 있어서, 상기 메모리 소자를 공지 값들로 구성하는 상기 단계는,
    a) 상기 클럭 신호를 게이팅하고,
    b) 상기 리셋 신호를 활성화시키며,
    c) 상기 리셋 신호를 활성 상태로 유지시키면서 상기 클럭 신호를 재개하고,
    d) 상기 클럭 신호를 다시 게이팅하며, 그리고
    e) 상기 리셋 신호를 동작정지시키는
    단계의 시퀀스로 구성되는 것을 특징으로 하는 로직 블록 테스트 방법.
KR1020050095184A 2004-10-15 2005-10-11 내부 정속 로직-bist를 이용한 로직 블록의 자동 오류테스트 KR101268611B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US61920104P 2004-10-15 2004-10-15
US60/619,201 2004-10-15
US11/141,763 2005-05-31
US11/141,763 US7398443B2 (en) 2004-10-15 2005-05-31 Automatic fault-testing of logic blocks using internal at-speed logic-BIST

Publications (2)

Publication Number Publication Date
KR20060092963A true KR20060092963A (ko) 2006-08-23
KR101268611B1 KR101268611B1 (ko) 2013-05-29

Family

ID=35708890

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050095184A KR101268611B1 (ko) 2004-10-15 2005-10-11 내부 정속 로직-bist를 이용한 로직 블록의 자동 오류테스트

Country Status (8)

Country Link
US (1) US7398443B2 (ko)
EP (1) EP1647828B1 (ko)
JP (1) JP5336692B2 (ko)
KR (1) KR101268611B1 (ko)
AT (1) ATE378608T1 (ko)
DE (1) DE602005003302T2 (ko)
SG (1) SG121944A1 (ko)
TW (1) TWI370907B (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7769558B2 (en) * 2006-07-10 2010-08-03 Asterion, Inc. Digital waveform generation and measurement in automated test equipment
KR20080019078A (ko) * 2006-08-22 2008-03-03 삼성전자주식회사 순환 중복 검사를 이용한 테스트 방법 및 이를 이용하는디지털 장치
TWI312076B (en) 2006-10-19 2009-07-11 Via Tech Inc Apparatus and related method for chip i/o test
TWI304889B (en) 2006-10-26 2009-01-01 Via Tech Inc Method and related apparatus for testing chip
US8675076B2 (en) * 2009-07-21 2014-03-18 Qualcomm Incorporated System for embedded video test pattern generation
US20110029827A1 (en) * 2009-07-29 2011-02-03 International Business Machines Corporation Method, apparatus, and design structure for built-in self-test
US9222971B2 (en) * 2013-10-30 2015-12-29 Freescale Semiconductor, Inc. Functional path failure monitor
US9665934B2 (en) * 2014-10-28 2017-05-30 Texas Instruments Incorporated Apparatus for detecting faults in video frames of video sequence
KR102549438B1 (ko) * 2016-09-27 2023-06-29 삼성전자주식회사 순차 회로, 이를 포함하는 스캔 체인 회로 및 집적 회로
US20190197929A1 (en) * 2017-12-26 2019-06-27 Novatek Microelectronics Corp. Driving apparatus of display panel and operation method thereof
CN111782448A (zh) * 2020-07-01 2020-10-16 长沙景嘉微电子股份有限公司 芯片自检测方法、装置、芯片、显示系统及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4513318A (en) * 1982-09-30 1985-04-23 Allied Corporation Programmable video test pattern generator for display systems
US5416784A (en) * 1991-10-28 1995-05-16 Sequoia Semiconductor Built-in self-test flip-flop with asynchronous input
JP3192225B2 (ja) * 1992-07-15 2001-07-23 松下電工株式会社 クロック信号・同期リセット信号発生回路
EP0642083A1 (en) * 1993-09-04 1995-03-08 International Business Machines Corporation Test circuit and method for interconnect testing of chips
KR19990069337A (ko) * 1998-02-06 1999-09-06 윤종용 복합 반도체 메모리장치의자기 테스트 회로 및 이를 이용한 자기 테스트 방법
JP2001074811A (ja) * 1999-09-03 2001-03-23 Hitachi Ltd 半導体集積回路
US6684358B1 (en) * 1999-11-23 2004-01-27 Janusz Rajski Decompressor/PRPG for applying pseudo-random and deterministic test patterns
JP4883850B2 (ja) * 2001-06-29 2012-02-22 ルネサスエレクトロニクス株式会社 半導体装置
US20030074619A1 (en) * 2001-10-12 2003-04-17 Dorsey Michael C. Memory bist employing a memory bist signature
US20030074618A1 (en) * 2001-10-12 2003-04-17 Dorsey Michael C. Dual mode ASIC BIST controller
JP2003302448A (ja) * 2002-04-09 2003-10-24 Kawasaki Microelectronics Kk テスト回路
CN1299502C (zh) * 2002-06-20 2007-02-07 索尼株式会社 解码设备和解码方法
US8621304B2 (en) * 2004-10-07 2013-12-31 Hewlett-Packard Development Company, L.P. Built-in self-test system and method for an integrated circuit

Also Published As

Publication number Publication date
JP2006113058A (ja) 2006-04-27
ATE378608T1 (de) 2007-11-15
US20060107151A1 (en) 2006-05-18
US7398443B2 (en) 2008-07-08
DE602005003302T2 (de) 2008-03-06
DE602005003302D1 (de) 2007-12-27
EP1647828B1 (en) 2007-11-14
EP1647828A1 (en) 2006-04-19
TWI370907B (en) 2012-08-21
SG121944A1 (en) 2006-05-26
TW200624843A (en) 2006-07-16
JP5336692B2 (ja) 2013-11-06
KR101268611B1 (ko) 2013-05-29

Similar Documents

Publication Publication Date Title
KR101268611B1 (ko) 내부 정속 로직-bist를 이용한 로직 블록의 자동 오류테스트
US6574762B1 (en) Use of a scan chain for configuration of BIST unit operation
US6564347B1 (en) Method and apparatus for testing an integrated circuit using an on-chip logic analyzer unit
US5475624A (en) Test generation by environment emulation
US5708773A (en) JTAG interface system for communicating with compliant and non-compliant JTAG devices
KR100502128B1 (ko) 시스템 온-칩에서의 내장 코아를 테스트하기 위한 방법 및 구조
US8386866B2 (en) Methods for implementing variable speed scan testing
US8578226B2 (en) Apparatus and system for implementing variable speed scan testing
US5982681A (en) Reconfigurable built-in self test circuit
US10496506B2 (en) Self-test capable integrated circuit apparatus and method of self-testing an integrated circuit
US7533309B2 (en) Testing memories using algorithm selection
US10997343B1 (en) In-system scan test of chips in an emulation system
US7228262B2 (en) Semiconductor integrated circuit verification system
US7493434B1 (en) Determining the value of internal signals in a malfunctioning integrated circuit
US7146551B2 (en) Method and system of modifying data in functional latches of a logic unit during scan chain testing thereof
JP2000163279A (ja) マイクロプロセサをテストするための回路構成とテスト方法
Ulbricht et al. A new hierarchical built-in self-test with on-chip diagnosis for VLIW processors
US7913136B2 (en) Method for performing a logic built-in-self-test in an electronic circuit
US5568407A (en) Method and system for the design verification of logic units and use in different environments
US6260166B1 (en) Observability register architecture for efficient production test and debug
US7089473B2 (en) Method and apparatus for testing a circuit using a die frame logic analyzer
US8296703B1 (en) Fault modeling for state retention logic
US20030056161A1 (en) Memory circuit scan arrangement
Nacif et al. The Chip is Ready. Am I done? On-chip Verification using Assertion Processors.
Glokler et al. Enabling large-scale pervasive logic verification through multi-algorithmic formal reasoning

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
AMND Amendment
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180329

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190327

Year of fee payment: 7