KR101404887B1 - 멀티―디바이스 시스템을 테스트하는 회로 및 방법 - Google Patents

멀티―디바이스 시스템을 테스트하는 회로 및 방법 Download PDF

Info

Publication number
KR101404887B1
KR101404887B1 KR1020127032081A KR20127032081A KR101404887B1 KR 101404887 B1 KR101404887 B1 KR 101404887B1 KR 1020127032081 A KR1020127032081 A KR 1020127032081A KR 20127032081 A KR20127032081 A KR 20127032081A KR 101404887 B1 KR101404887 B1 KR 101404887B1
Authority
KR
South Korea
Prior art keywords
memory
memory device
signal
test
circuit
Prior art date
Application number
KR1020127032081A
Other languages
English (en)
Other versions
KR20130001338A (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 KR20130001338A publication Critical patent/KR20130001338A/ko
Application granted granted Critical
Publication of KR101404887B1 publication Critical patent/KR101404887B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C29/32Serial access; Scan testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/003Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation in serial memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/40Response verification devices using compression techniques
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/26Accessing multiple arrays
    • G11C2029/2602Concurrent test

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

본 발명은, 멀티-디바이스 시스템에서 메모리를 고속 테스트하는 방법 및 시스템에 관한 것이며, 여기서, 멀티-디바이스 시스템의 개별 디바이스는 직렬로 서로 연결된 구성으로 배치된다. 고속 테스트는, 테스트 패턴 데이터를 멀티-디바이스 시스템의 각 디바이스의 메모리 뱅크에 먼저 기록한 다음에, 각 디바이스에서 이러한 데이터를 로컬 테스트 판독 및 비교함으로써 달성된다. 각 디바이스는, 디바이스에서 고장난 비트 위치의 부재나 존재를 나타내는 로컬 결과 데이터를 생성한다. 각 디바이스의 직렬 테스트 회로는 로컬 결과 데이터를 이전 디바이스로부터의 글로벌 결과 데이터와 비교한다. 테스트 회로는 이러한 비교의 이러한 결과를 압축하고, 이것을 업데이트된 글로벌 결과 데이터로서 그 다음 디바이스에 제공한다. 그러므로 업데이트된 글로벌 결과 데이터는 모든 이전 디바이스의 로컬 결과 데이터를 나타낼 것이다.

Description

멀티―디바이스 시스템을 테스트하는 회로 및 방법{CIRCUIT AND METHOD FOR TESTING MULTI―DEVICE SYSTEMS}
본 발명은 일반적으로 멀티-디바이스 시스템의 테스트에 관한 것이다. 더욱 상세하게는, 본 발명은 서로 연결된 멀티-디바이스 시스템의 테스트에 관한 것이다.
반도체 메모리 디바이스는 현재 이용 가능한 공산품 및 가전제품에서 중요한 소자이다. 예컨대, 컴퓨터, 이동 전화, 및 다른 휴대용 전자장치는 모두 데이터를 저장하는 어떠한 형태의 메모리에 의존한다. 많은 메모리 디바이스가 통상 상용 디바이스(commodity device)로서 이용 가능한 반면, 더 높은 집적도를 필요로 함으로 인해, 내장된 메모리를 개발하게 되었고, 이러한 메모리는 마이크로컨트롤러 및 다른 처리 회로와 같이 시스템에 통합될 수 있다.
불행히도, 상용 메모리의 밀도는 메모리에 대한 더욱더 커지는 요구에 부합할 수 없다. 그러므로 복수의 상용 메모리가 시스템 메모리 요건을 충족하기 위해 함께 사용된다. 도 1은 알려진 멀티-디바이스 메모리 구성을 도시한다. 멀티-디바이스 메모리 시스템은, 단일 패키지(일명 멀티칩 시스템: MCP)나, 인쇄회로기판 상에서 함께 그룹으로 묶인 복수의 메모리 디바이스 패키지에서 함께 그룹으로 묶인 실리콘 칩 세트로서 구현될 수 있다.
도 1은 멀티-드롭, 또는 병렬 구성으로 배치된 종래기술의 멀티-디바이스 시스템의 블록도이다. 멀티-디바이스 시스템(100)은 메모리 제어기(102)와, 메모리 디바이스(104, 106, 108 및 110)를 포함한다. 메모리 제어기(102)는 메모리 디바이스와 시스템(미도시) 사이의 인터페이스인 반면, 메모리 디바이스(104, 106, 108 및 110)는 임의 타입의 메모리 디바이스나, 내장된 메모리를 포함하는 시스템일 수 있다. 4개의 메모리 디바이스가 도시되어있지만, 당업자는, 멀티-디바이스 시스템(100)이 임의의 수의 메모리 다바이스를 포함할 수 있지만, 이들 디바이스 모두가 판독 및 기록 데이터 버스의 공통 세트를 공유한다는 점을 이해할 것이다. 그러므로 메모리 디바이스 중 임의의 하나는, 메모리 제어기(102)를 통해 지시를 받을 때, 판독 데이터 버스의 공통 세트를 통해 판독 데이터를 제공할 수 있다.
당업자는, 도 1에 도시된 것과 같은 멀티-디바이스 시스템이 동작의 로버스트니스(robustness)를 확증하기 위해 개별 소자 레벨 및 시스템 레벨에서 테스트된다는 점을 이해하고 있다. 특히, 메모리 디바이스는 이들의 메모리 셀이 결함이 없음을 확증하기 위해 칩 레벨에서 테스트된다. 결함이 있는 메모리 셀은, 제조 시 또는 메모리 디바이스의 조립 시 발생할 수 있는 제조 결함이나 다른 결함으로 인해, 데이터를 적절히 저장하지 못하는 셀이다.
메모리 디바이스를 테스트하는 하나의 알려진 기술로는, 동일한 테스트 데이터를 두 메모리 뱅크에 기록한 다음, 판독 동작으로부터 판독된 데이터를 비교하는 방식이 있다. 당업자는, 메모리 디바이스가 임의의 수의 메모리 뱅크를 포함할 수 있지만, 두 개의 메모리 뱅크가 본 설명에서는 단지 예로서 사용됨을 이해해야 할 것이다. 만약 메모리 뱅크가 설계 사양에 따라 동작한다면, 하나의 메모리 뱅크로부터의 데이터는 다른 하나의 메모리 뱅크로부터의 데이터에 부합할 것이다. 만약 그렇지 않다면, 결함이 있는 메모리 셀이 있고, 메모리 디바이스는 전체적으로 결함이 있는 것으로 간주된다. 이러한 기술에 대한 개념적 접근을 도 2에 예시하였다. 테스트 패턴 데이터가 먼저 메모리 디바이스의 두 메모리 뱅크(202 및 204)에 기록된다. 이것은, 동일한 데이터가 두 메모리 뱅크(202 및 204)에 동시에 기록될 수 있으므로, 신속하게 이루질 수 있다. 그런 다음, 두 뱅크(202 및 204)의 데이터는 한 번에 한 비트 씩 판독되어, 뱅크(202)로부터의 데이터가 논리 배타적 OR(XOR) 회로(206)에 의해 뱅크(204)로부터의 데이터와 비교된다. 단일 비트 신호(PASS)가 비교의 상태를 지시하기 위해 XOR 회로(206)에 의해 제공된다. 메모리 뱅크의 데이터 내용 사이의 차이가 메모리 셀의 고장을 지시할 것이다. 일단 식별되면, 결함이 있는 셀은, 잘 알려진 리던던시(redundancy) 방식을 사용하여 여분의 셀로 교체될 수 있어, 그 밖의 결함이 있는 메모리 디바이스를 활용할 수 있다.
불행히도, 테스트에 대한 첫 번째 이슈는 시스템의 모든 메모리 디바이스의 모든 메모리 셀을 테스트하는데 필요한 시간이다. 이전 예에서, 메모리 뱅크(202)의 한 메모리 셀의 데이터는 메모리 뱅크(204)의 한 메모리 셀의 데이터와 비교된다. 그러므로 만약 모든 메모리 디바이스가 순차적으로 테스트된다면, 결국 테스트 시간이 오래 걸릴 것이고, 이것은 메모리 디바이스의 생산 사이클에 비용을 추가한다.
"데이터 압축 테스트 기능을 가진 반도체 메모리 디바이스 및 그 테스트 방법"이라는 명칭으로 Uchida에게 허여된 미국특허(제 5,579,272호)는 데이터 압축을 사용하여 테스트 시간 문제를 해결한다. 데이터 압축은 여러 메모리 셀을 동시에 테스트하는 단계와, 테스트된 메모리 셀의 수보다 더 적은 비트 수로 테스트 결과를 나타내는 단계를 수반한다. 데이터 압축에 대한 가장 흔한 접근으로는, 입력 비트 중 적어도 하나가 실패를 지시할 때, 복수의 비트를 실패를 지시하는 단일 비트 출력으로 압축하는 것이 있다. 이러한 접근의 단점은, 비록 이러한 문제가 "리던던시와는 독립적인 데이터 압축 테스트 모드"라는 명칭으로 Morzano에게 허여된 미국 특허(제 5,913,928호)에 의해 예시된 바와 같이 완화할 수 있다하더라도, 단 하나의 셀이 진짜 결함이 있는 경우에도 복수의 메모리 셀이 고장인 것으로 선언된다는 점이다. Morzano 특허에서, 압축된 테스트 결과에서의 실패 지시 다음에는 결함이 있는 셀을 격리하기 위한 개별 테스트가 뒤따른다.
테스트 시간을 줄임으로써 얻을 수 있는 경제성으로 인해, 메모리 셀을 비교하고 테스트 결과를 압축하는데 사용되는 회로를 개선하기 위한 여러 노력이 있어왔다. "전류-모드 데이터 압축 테스트 모드를 갖는 집적 회로 메모리 디바이스"라는 명칭으로 Haukness에게 허여된 미국 특허(제 5,926,422호), "메모리 디바이스에서 데이터 압축하는 방법 및 장치"라는 명칭으로 Keeth에게 허여된 미국 특허(제 6,295,618호 및 제 6,999,361호), 및 "메모리 테스트를 위한 데이터 압축 판독 모드"라는 명칭으로 Santin에게 허여된 미국특허(제 6,930,936호)는 모두, 메모리 디바이스에서 비교 및 압축 회로의 속도를 높이는 것에 관한 특허의 예이다.
이들 잘 알려진 기술을 사용하여, 그 크기 및 복잡도가 증가함에도 불구하고, 단일 칩 패키지에서 개별 메모리 디바이스에 대해 짧은 테스트 시간을 유지하는 것이 가능하게 되었다. 심지어 도 1에 예시한 것과 같은 멀티-드롭 구성으로 배치된 멀티-디바이스 패키지에서도 짧은 테스트 시간을 달성하는 것이 가능하게 되었다. 칩 내부의 메모리 디바이스를 병렬로 테스트할 수 있기 때문에, 짧은 테스트 시간은 여전히 멀티-드롭 구성에서 가능하다.
직렬로 서로 연결된 디바이스를 테스트할 때의 고유한 어려움은 "백플레인 버스 상의 탈착 가능한 회로 기판의 직렬 테스트"라는 명칭으로 Kennedy에게 허여된 미국 특허(제 5,132,635호)에 의해 예시된 바와 같이 오랫동안 알려져 왔고, 이러한 미국 특허는 그러한 테스트의 순차적 속성을 예시한다. 그러한 순차적인 테스트의 결점은, 각 디바이스가 순차적으로 테스트되고, 그러므로 N개의 칩을 포함한 멀티-디바이스 시스템은, N개의 단일-칩 패키지나 동일한 수의 칩을 갖는 멀티-드롭 패키지를 테스트하는 것보다 N배 더 오래 걸린다는 점이다.
대부분의 메모리 디바이스는 멀티-드롭 및 직렬로 구성된 멀티-디바이스 메모리 시스템 둘 다에서, 사용되고 테스트될 만큼 충분히 융통적이어야 함을 주목해야 한다. 앞서 논의한 바와 같이, 멀티-드롭 메모리 시스템의 테스트는 신속히 이뤄질 수 있다. 그러나 추가적인 전용 회로가, 직렬로 서로 연결된 구성에 대한 멀티-디바이스 시스템 레벨 테스트를 실행하기 위해 필요할 수 도 있다. 그러므로 설계, 제조 및 테스트 비용을 계속해서 최소화시키기 위해 테스트 회로의 복잡도 및 크기를 최소화하여야 한다.
그러므로 높은 테스트 속도를 달성할 수 있는 직렬로 서로 연결된 구성으로 배치된 멀티-디바이스 메모리 시스템을 위한 테스트 방식을 제공하는 것이 바람직하다. 그러한 테스트 방식을 구현하는데 필요한 추가적인 테스트 회로의 양을 최소화하는 것이 또한 바람직하다.
본 발명의 목적은, 직렬로 서로 연결된 구성에서 각 디바이스의 테스트 결과를 시스템의 이전 칩의 테스트 결과로 압축함으로써, 이전에 직렬로 서로 연결된 멀티-칩 또는 멀티-디바이스 시스템의 적어도 하나의 단점을 제거 또는 완화하는 것이다.
제 1 구성에서, 본 발명은 직렬 입력 연결 및 직렬 출력 연결을 갖는 메모리 디바이스를 위한 테스트 회로를 제공한다. 테스트 회로는 로컬 비교 회로 및 압축 회로를 포함한다. 로컬 비교 회로는 적어도 두 개의 메모리 셀의 데이터를 서로 비교하고, 만약 적어도 두 개의 메모리 셀 중 하나가 결함이 있다면, 실패 상태(fail status)에 해당하는 로컬 결과 데이터를 제공한다. 압축 회로는 로컬 결과 데이터를 직렬 입력 연결로부터 수신한 글로벌 결과 데이터와 논리적으로 OR 연산하여, 업데이트된 글로벌 결과 데이터를 직렬 출력 연결에 제공한다. 만약 로컬 결과 데이터와 글로벌 결과 데이터 중 적어도 하나가 실패 상태에 해당한다면, 업데이트된 글로벌 결과 데이터는 실패 상태에 해당한다.
본 구성의 실시예에 따라, 테스트 회로는 로컬 결과 데이터와 로컬 메모리 데이터 중 하나를 선택적으로 통과시키기 위한 제 1단 테스트 경로 선택기를 더 포함하며, 이 제 1단 테스트 경로 선택기는 테스트 모드 신호에 응답하여 로컬 결과 데이터를 압축 회로로 통과시킨다. 테스트 회로는 로컬 결과 데이터와 글로벌 메모리 데이터 중 하나를 선택적으로 통과시키기 위한 제 2단 테스트 경로 선택기를 더 포함할 수 있으며, 이 제 2단 스테이지 테스트 경로 선택기는 테스트 모드 신호에 응답하여 로컬 결과 데이터를 직렬 출력 연결로 통과시킨다. 로컬 비교 회로는 적어도 두 개의 메모리 셀로부터 데이터를 수신하기 위한 논리 회로를 포함할 수 있고, 이 논리 회로는, 데이터가 미리 결정된 패턴에 부합하지 않을 때, 실패 상태에 해당하는 로컬 결과 데이터를 제공하도록 구성된다. 로컬 비교 회로는 적어도 두 개의 메모리 셀로부터 데이터를 수신하기 위한 배타적 OR 회로를 포함할 수 있고, 로컬 결과 데이터는 이 배타적 OR 회로에 의해 제공된다.
본 발명의 또 다른 구성에서, 압축 회로는 글로벌 결과 데이터 및 로컬 결과 데이터를 수신하기 위한 OR 회로를 포함하며, 이 OR 회로는 업데이트된 글로벌 결과 데이터를 제공한다. 메모리 디바이스는 로컬 메모리 데이터와 글로벌 메모리 데이터 중 하나를 메모리 데이터로서 선택적으로 통과시키기 위한 디바이스 선택기를 포함하며, 로컬 데이터는 적어도 두 개의 메모리 뱅크 중 하나로부터 수신되고, 글로벌 데이터는 직렬 입력 연결로부터 수신된다. 적어도 두 개의 메모리 셀 각각은 서로 다른 분리된(segregated) 메모리 영역에 위치할 수 있거나, 동일한 분리된 메모리 영역에 위치할 수 있다. 메모리 디바이스는 로컬 결과 데이터를 수신하고 저장하기 위한 병-직렬 레지스터를 포함하며, 병-직렬 레지스터는 n-비트 폭 로컬 결과 데이터를 병렬로 수신하고 n-비트 폭 로컬 결과 데이터 중 1비트를 동시에 클록에 직렬로 출력하기 위해 적어도 n-비트 폭을 갖는다. 메모리 디바이스는, 직렬 입력 연결로부터 수신된 글로벌 결과 데이터를 수신하고, 글로벌 결과 데이터 중 1비트를 동시에 클록에 제공하기 위한 플립-플롭 회로를 포함할 수 있다.
제 2 구성에서, 본 발명은 메모리 시스템을 제공한다. 이 시스템은, 테스트 모드에서 동작할 수 있고 제 1 메모리 디바이스 셀 결함에 해당하는 단일-비트 글로벌 결과 데이터를 제공하기 위한 제 1 메모리 디바이스와, 테스트 모드에서 동작할 수 있고 단일-비트 글로벌 결과 데이터를 수신하기 위한 제 2 메모리 디바이스를 포함하며, 제 2 메모리 디바이스는 적어도 하나의 제 1 메모리 디바이스 셀 결함과 제 2 메모리 디바이스 셀 결함에 해당하는 업데이트된 단일-비트 글로벌 결과 데이터를 제공한다. 본 구성의 실시예에 따라, 이 시스템은 또한, 디폴트 통과 데이터를 제공하고 테스트 동작 모드 동안에, 업데이트된 단일-비트 글로벌 결과 데이터를 수신하기 위한 메모리 제어기를 포함한다. 메모리 제어기는 테스트 회로를 포함할 수 있고, 이 회로는, 디폴트 통과 데이터를 제공하기 위한 제공 회로와 테스트 동작 모드 동안에, 업데이트된 단일-비트 글로벌 결과 데이터를 수신하기 위한 수신 회로를 포함할 수 있다. 제공 회로 및 수신 회로는 전용 회로일 것이다.
본 구성의 다른 실시예에 따라, 제 1 메모리 디바이스는, 제 1 메모리 디바이스 셀 결함을 검출하고 제 1 로컬 결과 데이터를 제공하기 위한 제 1 로컬 비교 회로와, 제 1 로컬 결과 데이터의 상태에 해당하는 단일-비트 글로벌 결과 데이터를 제공하기 위한 제 1 압축 회로를 포함한다. 다른 실시예에서, 제 2 메모리 디바이스는 제 2 메모리 디바이스 셀 결함을 검출하고, 제 2 로컬 결과 데이터를 제공하기 위한 제 2 로컬 비교 회로와, 제 1 메모리 디바이스로부터의 단일-비트 글로벌 결과 데이터와 제 2 로컬 결과 데이터에 논리적인 OR 함수를 수행하기 위한 제 2 압축 회로를 포함한다. 제 2 압축 회로는 논리적인 OR 함수의 출력에 해당하는 업데이트된 단일-비트 글로벌 결과 데이터를 제공한다. 제 1 로컬 비교 회로는 제 1 메모리 디바이스 셀 결함을 검출하기 위한 제 1 배타적 OR 회로를 포함할 수 있고, 제 2 로컬 비교 회로는 제 2 메모리 디바이스 셀 결함을 검출하기 위한 제 2 배타적 OR 회로를 포함할 수 있다. 제 1 압축 회로는 결함 통과 데이터와 제 1 로컬 결과 데이터를 수신하기 위한 제 1 OR 회로를 포함할 수 있고, 제 2 압축 회로는 단일-비트 글로벌 결과 데이터와 제 2 로컬 결과 데이터를 수신하기 위한 제 2 OR 회로를 포함할 수 있다.
제 3 구성에서, 본 발명은 메모리 시스템을 테스트하는 방법을 제공한다. 이 방법은 a) 하나의 메모리 셀 결함을 검출하기 위해 메모리 디바이스에서 적어도 두 개의 메모리 셀을 비교하는 단계; b) 하나의 메모리 셀 결함이 검출될 때 실패 상태에 해당하는 로컬 결과 데이터를 제공하는 단계로서, 이 로컬 결과 데이터는 하나의 메모리 셀 결함의 부재 시에는 통과 상태에 해당하는, 로컬 결과 데이터 제공 단계; c) 로컬 결과 데이터를 글로벌 결과 데이터에 비교하는 단계로서, 글로벌 결과 데이터는 실패 상태 및 통과 상태 중 하나에 대응하는, 로컬 결과 데이터 비교 단계; 및 d) 메모리 디바이스로부터 업데이트된 글로벌 결과 데이터를 제공하는 단계로서, 업데이트된 글로벌 결과 데이터는, 만약 글로벌 결과 데이터와 로컬 결과 데이터 중 적어도 하나가 실패 상태에 해당한다면, 실패 상태에 해당하는 상태를 갖는, 업데이트된 글로벌 결과 데이터 제공 단계를 포함한다.
본 구성의 실시예는 다음과 같다. 로컬 결과 데이터, 글로벌 결과 데이터 및 업데이트된 글로벌 결과 데이터는 단일-비트 신호이다. 적어도 두 개의 메모리 셀을 비교하는 단계 앞에는, 동일한 테스트 데이터를 메모리 디바이스의 모든 메모리 셀에 기록하는 단계가 선행한다. 적어도 두 개의 메모리 셀을 비교하는 단계는 적어도 두 개의 메모리 셀에 해당하는 데이터를 판독하는 단계를 포함하고, 제공하는 단계는, 로컬 결과 데이터를 제공하기 위해 적어도 두 개의 메모리 셀의 데이터에 배타적 OR 연산을 수행하는 단계를 포함한다. 비교하는 단계는 메모리 디바이스로부터 외부에서 글로벌 결과 데이터를 수신하는 단계를 포함한다. 업데이트된 글로벌 결과 데이터를 제공하는 단계는 업데이트된 글로벌 결과 데이터를 제공하기 위해 글로벌 결과 데이터를 로컬 결과 데이터와 논리적으로 OR 연산하는 단계를 포함한다. 글로벌 결과 데이터는 이전의 메모리 디바이스에 의해 제공되거나, 메모리 제어기에 의해 제공되며, 만약 메모리 제어기에 의해 제공된다면, 글로벌 결과 데이터는 통과 상태를 갖도록 프리세트된다. 업데이트된 글로벌 결과 데이터는 후속하는 메모리 디바이스, 메모리 제어기 또는 테스터 시스템에 제공된다.
본 발명의 다른 구성 및 특성은, 수반하는 도면과 연계하여, 본 발명의 특정한 실시예에 대한 다음의 상세한 설명을 고찰하면, 당업자에게 분명하게 될 것이다.
본 발명의 실시예는 이제, 첨부된 도면을 참조하여 단지 예를 들어서만 기재될 것이다.
본 발명에 의하면, 직렬로 서로 연결된 구성에서 각 디바이스의 테스트 결과를 시스템의 이전 칩의 테스트 결과로 압축함으로써, 이전에 직렬로 서로 연결된 멀티-칩 또는 멀티-디바이스 시스템의 적어도 하나의 단점을 제거 또는 완화할 수 있다.
도 1은 멀티-드롭 구성으로 배치된 종래기술의 멀티-디바이스 패키지의 블록도이다.
도 2는 종래기술의 메모리 디바이스 테스트 방식의 블록도이다.
도 3a는 본 발명의 실시예가 적용될 수 있는, 직렬로 서로 연결된 구성으로 배치된 멀티-디바이스 패키지의 블록도이다.
도 3b는 본 발명의 실시예에 따라 압축 테스트 회로를 갖는 메모리 디바이스의 블록도이다.
도 4a는 본 발명의 실시예에 따라 직렬로 서로 연결된 테스트 가능한 메모리 디바이스의 블록도이다.
도 4b는 본 발명의 다른 실시예에 따라 직렬로 서로 연결된 테스트 가능한 메모리 디바이스의 블록도이다.
도 5는 본 발명의 실시예에 따른 메모리 시스템 디바이스 테스트 방법의 흐름도이다.
도 6은 본 발명의 실시예에 따른 메모리 디바이스를 위한 출력 경로 회로 및 압축 테스트 회로의 개략적인 회로도이다.
도 7a는 도 6에서 도시한 압축 테스트 회로를 갖는 직렬로 서로 연결된 메모리 디바이스의 블록도로서, 메모리 디바이스 사이의 정보 흐름을 예시하는 블록도이다.
도 7b는 도 7a의 시스템의 동작을 도시한 타이밍 도이다.
도 8a는 메모리 디바이스에 어떠한 결함도 없을 때 본 발명의 실시예에 따른 예시적인 테스트 방법 동작을 도시한 블록도이다.
도 8b는 메모리 디바이스에 결함이 있을 때 본 발명의 실시예에 따른 예시적인 테스트 방법 동작을 도시한 블록도이다.
도 9는 본 발명의 실시예에 따라 단일 메모리 뱅크 디바이스를 위해 구성된 로컬 비교기 회로를 도시한 블록도이다.
일반적으로, 본 발명은 멀티-디바이스 시스템에서 메모리를 고속 테스트하는 방법 및 시스템을 제공하며, 여기서, 멀티-디바이스 시스템의 개별 디바이스는 직렬로 서로 연결된 구성으로 배치된다. 본 발명의 바람직한 실시예는, 조립되거나 패키징된 멀티-디바이스 시스템의 최종 테스트에 관한 것이다. 이 점에서, 개별 디바이스는 이미 테스트, 확인(validation) 및 이들 경우 필요시 리던던시 구현(redundancy implementation)을 거쳤다. 그러나 멀티-디바이스 시스템의 조작 및 패키징 동안에 수반되는 기계적 및 전기적 스트레스는 추가적인 고장을 야기할 수 있다. 그러므로 디바이스가 조립되거나 패키징되므로, 임의의 개별 디바이스에서 발견한 임의의 메모리 비트 고장은 전체 시스템에 결함을 제공한다.
이러한 관점으로부터 앞으로 진행하면, 멀티-디바이스 시스템에 대한 참조는 단일 패키지 내에 통합된 멀티-디바이스 시스템을 포함할 것이고, 시스템은 인쇄회로기판 상에서 서로 연결된 복수의 분리된 디바이스를 갖거나, 동일한 반도체 칩 내에서 통합된 복수의 디바이스를 갖는다. 메모리 뱅크, 메모리 영역 및 메모리 블록은 분리된 메모리 타입으로 간주될 것이며, 분리된 부분은 판독 및 기록 동작을 위해 어드레스할 수 있다.
도 3a는, 본 발명의 실시예가 적용될 수 있는, 직렬로 서로 연결된 구성으로 배치된 멀티-디바이스 패키지의 블록도이다. 당업자는, 직렬로 서로 연결된 구성이 둘 이상의 디바이스가 서로 직렬로 연결되는 디바이스의 물리적인 배치를 지칭함을 이해할 것이다. 멀티-디바이스 시스템(120)은 메모리 제어기(122)와 메모리 디바이스(124, 126, 128 및 130)를 포함한다. 도 3a에 도시된 소자는 도 1의 멀티-디바이스 시스템(100)에 대해 이전에 기재한 것과 동일할 것이다. 도 3a에서, 메모리 디바이스는 직렬로 연결되어, 하나의 메모리 디바이스의 출력은 그 다음 메모리 디바이스의 입력에 제공되게 된다. 제 1 메모리 디바이스의 입력과 마지막 메모리 디바이스의 출력은 메모리 제어기(122)에 연결된다. 그러므로 지시 및 데이터는 둘 다 메모리 디바이스로부터 메모리 디바이스로 전송된다. 메모리 디바이스의 수는 임의의 수일 것이다. 복수의 디바이스가 직렬로 서로 연결된 구성은, 2005년 12월 30일에 출원되었고 공동 양수인에게 양수되었으며, 그 내용이 참조로서 본 명세서에서 전체적으로 병합되어 있는 미국 특허출원(제 11/324,023호)에 의해 개시된다.
본 발명의 실시예에 따라, 개별 메모리 디바이스가 패키지 내에서 물리적으로나 논리적으로 배치되는 구성의 직렬 속성에 상관없이, 동시 테스트는 직렬로 서로 연결된 구성으로 배치된 멀티-디바이스 패키지에서 가능하다. 직렬로 서로 연결된 때에 결함의 위치가 식별될 경우에, 테스트 시스템이나 테스트 성능을 갖는 메모리 제어기에 고장 위치의 어드레스를 저장하는 것이 바람직하다. 개별 테스트는 그 이후에 따를 수 있다.
본 발명의 실시예에서, 고속 테스트는, 테스트 패턴 데이터를 멀티-디바이스 시스템의 각 디바이스의 메모리 뱅크에 먼저 기록하고, 그 다음에 각 디바이스에서 데이터의 로컬 테스트 판독 및 비교에 의해 달성된다. 각 디바이스는, 디바이스에서 실패한 비트 위치, 즉 결함의 부재나 존재를 나타내는 로컬 결과 데이터를 생성한다. 각 디바이스에서 직렬 테스트 회로는 로컬 결과 데이터를 이전 디바이스로부터의 글로벌 결과 데이터와 비교한다. 테스트 회로는 이 비교의 결과를 압축하고, 이것을 업데이트된 글로벌 결과 데이터로서 그 다음 디바이스에 제공한다. 그러므로 업데이트된 글로벌 결과 데이터는 모든 이전 디바이스의 로컬 결과 데이터를 나타낼 것이다.
본 발명의 실시예에 따라, "통과"에 해당하는 직렬로 서로 연결된 구성에서의 마지막 디바이스로부터 제공된 최종 글로벌 결과 데이터는 메모리 디바이스 중 어떤 것도 결함이 없음을 지시한다. 다른 한편, "실패"에 해당하는 최종 글로벌 결과 데이터는, 모든 디바이스의 메모리 뱅크 중에서 결함이 있는 적어도 하나의 메모리 셀이 있음을 지시한다. 본 발명의 바람직한 실시예에서, 각 로컬 결과 데이터 및 각 글로벌 결과 데이터는 단일-비트 데이터 신호이다. 데이터의 단하나의 비트만이 디바이스 사이에서 전파되므로, 테스트 논리회로는 간단하고, 구현하기 위한 상당한 실리콘 영역을 필요로 하지 않는다.
도 3b는 본 발명의 실시예에 따른 메모리 디바이스의 블록도이다. 더욱 상세하게, 메모리 디바이스(300)는 로컬 메모리 테스트 회로를 포함하는 메모리 회로(302)를 포함한다고 도시되어 있고, 이러한 테스트 회로는 도 2에 예시한 타입일 수 있지만, 또한 그 메모리 뱅크 중 하나가 결함을 갖고 있는지를 지시할 수 있는 임의의 다른 논리 회로일 수 있다. 본 실시예에서, 메모리 회로(302)는 제 1 메모리 뱅크(304)와 제 2 메모리 뱅크(306)를 포함하며, 이들 두 뱅크는 XOR 회로(308)를 포함하는 테스트 회로에 결합된다. 메모리 디바이스(300)는 이전의 디바이스(미도시)에 연결하기 위한 입력 단자(310), 압축 회로(312), 및 그 다음 디바이스(미도시)에 연결하기 위한 출력 단자(314)를 또한 포함한다. 압축 회로(312)는 간단한 OR 논리 회로로 예시되지만, 입력 단자(310)와 메모리 회로(302)로부터 수신된 신호를 결합할 수 있는 임의의 논리 회로나, 회로로 구현될 수 있다. 입력 단자(310)는 시스템의 이전 디바이스의 출력 단자(314)로부터 단일-비트 글로벌 결과 데이터를 수신한다. 테스트 동작 모드 동안에, 압축 회로(312)는 입력 단자(310)로부터 수신한 글로벌 결과 데이터를 현재는 메모리 회로(302)에 있는 XOR 회로(308)로서 구현되어 있는 로컬 비교 회로로부터의 로컬 결과 데이터로 논리적으로 압축하거나, 이 데이터와 결합한다.
만약 입력 단자(310)와 XOR 회로(308)로부터의 데이터 사이의 비교가 실패를 지시한다면, 압축 회로(312)는 출력 단자(314)를 통해 "실패" 신호를 제공할 것이다. 그렇지 않다면, "통과" 신호가 제공된다. 바람직한 실시예에 따라, "통과" 및 "실패" 상태는 단일 비트 데이터로 나타내어진다. 업데이트된 글로벌 결과 데이터라고 불리며 출력 단자(314)로부터 송신된 신호는 시스템의 그 다음 메모리 디바이스(300)의 입력 단자(310)에 제공된다. 그러므로 각 압축 회로(312)는 입력 단자(310)로부터 수신된 글로벌 결과 데이터를 로컬 결과 데이터로 업데이트하여 업데이트된 글로벌 결과 데이터를 제공한다. 테스트 회로에 대한 상세한 실시예는 이후에 논의할 것이다.
도 4a는 직렬로 서로 연결된 메모리 디바이스를 포함하는 멀티-디바이스 시스템의 블록도이다. 본 실시예에서, 멀티-디바이스 시스템(400)은 메모리 제어기(402), 및 메모리 디바이스(404, 406, 408 및 410)를 포함한다. 각 메모리 디바이스(404, 406, 408 및 410)는 바람직하게는 도 3b의 메모리 디바이스(300)로 구현된다. 메모리 제어기(402)는 자체에 테스트 회로를 포함한다. 테스트 회로는 테스트 신호 제공기(418)와 테스트 결과 수신기(420)를 포함한다. 테스트 신호 제공기(418)는 테스트 패턴을 포함하는 테스트 신호를 제 1 메모리 디바이스에 제공한다. 테스트 결과 수신기(420)는 테스트 결과 데이터를 포함하는 테스트 신호를 마지막 메모리 디바이스로부터 수신한다. 당업자는, 메모리 제어기(402)가 메모리 디바이스의 동작을 제어하는 기능을 담당하는 임의의 제어 논리회로일 수 있음을 이해할 것이다.
정상 동작 동안에, 메모리 제어기(402)는 기록 데이터를 특정한 메모리 디바이스에 제공하고, 디바이스 인에이블 신호를 제공함으로써 특정한 메모리 디바이스로부터 판독 데이터를 요청한다. 도면을 간소화하기 위해, 명령, 어드레스 및 판독/기록 데이터를 통신하기 위한 연결은 도시하지 않는다. 그러므로 단지 어드레스된 디바이스는, 디바이스 식별자를 통해서 명령 및 어드레스 정보에 동작하도록 인에이블되는 반면, 이전의 메모리 디바이스는 명령 및 어드레스 데이터가 흘러가게 하며, 다음에 오는 메모리 디바이스는 판독 데이터가 흘러가게 하고, 다시 메모리 제어기(402)로 돌아가게 한다.
본 발명의 실시예에 따른 멀티-디바이스 시스템(400)의 테스트 모드 동작을 이제 더 상세하게 설명한다. 테스트 모드에서, 메모리 제어기(402)는 테스트 패턴 데이터를 가진 기록 명령을 제 1 메모리 디바이스(404)에 전달한다. 고유 코드, 값 또는 숫자에 응답하여, 모든 디바이스는 메모리 제어기(402)로부터의 명령, 어드레스 및 기록 데이터에 대해 동작하도록 인에이블될 것이다. 고유 코드, 값 또는 숫자는 임의의 다른 함수나 테스트 명령에 대해 시스템에 의해 사용되지 않는다. 메모리 디바이스는 서로 직렬로 연결되므로, 명령, 어드레스 및 기록 데이터는, 각 메모리 디바이스에 걸쳐서 데이터를 클로킹(clocking)하는 것과 관련된 프리세트된 지연시간(latency)을 갖고 디바이스 사이에서 전송된다. 일단 기록 데이터가 모든 메모리 디바이스(404, 406, 408 및 410)의 메모리 뱅크 내에 기록되어지면, 본 발명의 실시예에 따른 메모리 테스트를 진행할 수 있다. 대안적으로, 고유 코드, 값 또는 숫자는 메모리 디바이스에 제공할 수 있다. 그 이후, 각 메모리 디바이스는 저장된 프리세트된 테스트 데이터를 판독하여, 임의의 결함이 로컬적으로 존재하는지를 판정할 것이다. 로컬 비교의 결과를 나타내는 로컬 결과 데이터는 이전의 글로벌 결과 데이터와 비교되고, 동일한 비교가 실행되는 그 다음 메모리 디바이스에 공급된다.
도 4a에서, 메모리 디바이스(404)는 직렬로 서로 연결된 구성의 제 1 메모리 디바이스이므로, 그 입력 단자는 메모리 제어기(402)로부터 디폴트 "통과" 데이터를 수신할 것이다. 예컨대, 디폴트 통과 데이터는 하나 이상의 논리 '0'비트가 되도록 프리세트될 수 있다. 메모리 디바이스(404)는 그 출력으로부터 업데이트된 글로벌 결과 데이터(412)를 메모리 디바이스(406)에 제공한다. 그러면 메모리 디바이스(406)는 메모리 디바이스(404)로부터 수신한 이전의 글로벌 결과 데이터를 그 로컬 결과 데이터와 결합하여, 업데이트된 글로벌 결과 데이터(414)를 생성한다. 만약 메모리 디바이스(404)로부터의 로컬 결과 데이터나 메모리 디바이스(406)로부터의 로컬 결과 데이터가 "실패"에 해당한다면, 업데이트된 글로벌 결과 데이터(412 및 414)도 "실패"를 지시할 것이다. 메모리 디바이스(406)는 그 업데이트된 글로벌 결과 데이터(414)를 메모리 디바이스(408)에 송신하고, 메모리 디바이스(408)는 이전에 설명한 내부 비교를 반복한다. 결국, 업데이트된 글로벌 결과 데이터는 직렬로 서로 연결된 구성에서 최종 메모리 디바이스인 메모리 디바이스(410)에 도달하며, 이 디바이스는 최종 글로벌 결과 데이터(416)를 다시 메모리 제어기(402)에 제공한다. 메모리 디바이스(410)에 의해 생성된 최종 글로벌 결과 데이터(416)는, 직렬로 서로 연결된 구성에서 임의의 디바이스의 메모리 셀 중 심지어 하나에 결함이 있는 경우에도, "실패" 상태에 해당할 것이다.
도 4b는 본 발명의 다른 실시예에 따라 직렬로 서로 연결된 멀티-메모리 디바이스를 도시한다. 이 예는 도 4a의 예와 유사하지만, 테스트 신호 제공기(418) 및 테스트 신호 수신기(420)가 메모리 제어기나, 유사한 타입의 제어기 외부에 있는 논리 회로로서 구현될 수 있다는 점은 예외이다. 도 4b를 참조하면, 테스트 신호 제공기(422) 및 테스트 결과 수신기/판정기(424)는 서로 분리되어 구성된다. 이 예에서, 4개의 메모리 디바이스는 직렬로 서로 연결된다. 직렬로 서로 연결된 디바이스(404, 406, 408 및 410)는 테스트 신호 제공기(422)와 테스트 결과 수신기/판정기(424)에 연결된다. 테스트 신호 제공기(422) 및 수신기/판정기(424)는 테스트 신호 제공기(418)의 동일한 기능을 실행한다. 테스트 결과 수신기/판정기(424)는 테스트 신호 제공기(418)의 동일한 기능을 실행하고, 또한 메모리 디바이스(410)에 의해 생성된 최종 글로벌 결과 데이터(416)로부터의 "실패"나 "통과"를 판정하는 기능을 실행한다.
도 5는, 본 발명의 실시예에 따라 직렬로 서로 연결된 멀티-디바이스 메모리 시스템을 테스트하는 방법을 도시하는 흐름도이다. 본 예를 위해, 비록 당업자가, 임의의 수의 메모리 뱅크가 존재할 수 있음을 이해할지라도, 각 메모리 디바이스는 두 개의 메모리 뱅크를 갖는 것으로 가정한다. 더 나아가, 당업자는 본 발명의 실시예가 단일 메모리 어레이를 갖도록 구성된 디바이스에 적용될 수 있음을 이해할 것이다. 단일 메모리 어레이 디바이스에 적용된 메모리 테스트 방식에 대한 상세한 설명은 도 9를 참조하여 기재될 것이다.
이 테스트 방법은 단계(500)에서 각 메모리 디바이스의 모든 뱅크에 프리세트된 테스트 데이터를 기록함으로써 시작한다. 각 메모리 디바이스의 모든 메모리 뱅크를 기록하는데 필요한 시간을 최소화하기 위해, 프리세트된 테스트 데이터는 바람직하게는 각 메모리 뱅크에서 동일하다. 사용될 수 있는 프리세트된 테스트 데이터의 한 예는 체커보드 패턴(checkerboard pattern), 또는 모두 논리"0"인 데이터 또는 모두 논리"1"인 데이터이다. 본 발명의 실시예에 따라, 기록 명령은, 시스템의 임의의 디바이스에 해당하지 않는 고유 코드, 값 또는 숫자를 갖고 모든 메모리 디바이스에 제공될 것이다. 이 고유 코드에 응답하여, 버추얼 테스트 모드에 들어가고, 각 메모리 디바이스의 모든 메모리 블록은 프리세트된 테스트 데이터를 동시에 수신하도록 세팅된다. 그러한 제어는, 당업자에게 잘 알려져 있는 바와 같이, 디바이스의 명령 디코더에 의해 제공될 것이다. 그렇지 않다면, 특정한 테스트 명령이 메모리 디바이스 각각에 제공되어, 시스템을 테스트 동작 모드에 있게 할 것이다.
일단 모든 메모리 뱅크가 프리세트된 테스트 데이터로 기록되면, 제 1 메모리 디바이스(j)의 두 개의 메모리 뱅크의 제 1 비트 위치(i)를 단계(502)에서 판독한다. 단계(502)에서 변수(i 및 j)는 0에서 시작한다. 도 3b의 XOR 회로(308)와 같은 테스트 회로는 그러면, 두 개의 메모리 뱅크의 비트 위치(i=0)의 통과나 실패 상태를 나타내는 단일-비트 로컬 결과 데이터를 생성하기 위해 사용된다. 단계(504)에서, 비트 위치(i=0)에 대한 로컬 결과 데이터는 이전의 메모리 디바이스(j-1)로부터의 이전의 글로벌 결과 데이터의 비트 위치(i=0)와 비교된다. 제 1 메모리 디바이스(j=0)는 메모리 제어기로부터 디폴트 "통과" 결과 데이터를 수신할 것이며, 이는 시스템에서 이전에는 어떠한 메모리 디바이스도 없기 때문이다. 이러한 비교는 예컨대 도 3b의 OR 회로(312)에 의해 수행될 것이다. 이러한 비교의 결과는 단계(506)에서 현재의 메모리 디바이스(j)에 대해 업데이트된 글로벌 결과 데이터로서 제공된다.
현재의 메모리 디바이스(j)가 시스템에서 마지막 메모리 디바이스인지에 대한 판정은 단계(508)에서 이뤄진다. 만약 현재의 메모리 디바이스(j)가 시스템에서 마지막 메모리 디바이스가 아니라면, 그 다음 메모리 디바이스는 비트 위치(i=0)에 대해서 단계(502 내지 508)를 수행한다. 이것은, 본 방법에서 단계(510)에서 j를 증분하고(j=j+1) 단계(502)로 복귀하는 것으로 표현된다. 단계(502 내지 510)는, 최종 업데이트된 글로벌 결과 데이터가 마지막 메모리 디바이스에 의해 제공될 때까지 반복되며, 이 마지막 메모리 디바이스 지점에서, 이 방법은 단계(512)로 진행하며, 이것은 모든 메모리 뱅크에 대한 비트 위치(i=0)의 테스트가 완료되었음을 지시한다. 최종 업데이트된 글로벌 결과 데이터의 통과/실패 상태에 대한 판정은 단계(512)에서 이뤄진다. 만약 비트 상태가 실패에 해당한다면, 이 방법은 단계(514)에서 종료하며, 시스템은 전체적으로 테스트에 실패한 것으로 간주되어, 메모리 뱅크의 추가 비트를 테스트할 필요를 제거한다. 다른 한편, 만약 비트 상태가 통과에 해당한다면, 이 방법은 단계(516)로 계속되며, 여기서, 메모리 뱅크의 마지막 비트 위치에 대한 판정이 이뤄진다. 만약 최종 업데이트된 글로벌 결과 데이터가 마지막 비트 위치에 해당한다면, 이 방법은 단계(518)에서 종료하며, 시스템은 전체적으로 테스트를 통과한다.
그렇지 않다면, 테스트를 거치도록 남아 있는 비트 위치가 더 있다. 이 방법은 그러면, 단계(502)로 복귀하여, 메모리 뱅크의 그 다음 비트 위치가 테스트될 것이고, 시스템의 제 1 메모리 디바이스로부터 시작한다. 이것은, 본 방법에서, 단계(520)에서 i를 증분시키고(i=i+1), 단계(522)에서 j=0으로 리셋시키며, 단계(502)로 복귀하는 것으로 표현된다. 만약 메모리 뱅크 중 어느 것에도 결함이 없다면, 이 방법은 502 내지 510 루프를 반복하고, 502 내지 522 루프를 반복하여 모든 메모리 디바이스의 메모리 뱅크의 모든 비트 위치를 테스트한다.
도 6은 도 3b에 예시된 메모리 디바이스(300)의 상세하고 개략적인 실시예이다. 메모리 디바이스(600)는 표준 출력 경로 회로와 테스트 회로(602)를 포함한다. 표준 출력 경로 회로는, 이전의 메모리 디바이스로부터 판독/기록 데이터를 수신하기 위한 플로우-쓰루(flow-through) 출력 경로, 로컬 판독 데이터를 제공하기 위한 로컬 출력 경로, 및 플로우-쓰루 출력 경로 및 로컬 출력 경로 중 어느 하나로부터 수신한 데이터를 드라이빙하기 위한 공유 출력 드라이버 경로로 더 세분될 것이다. 플로우-쓰루 출력 경로는 입력 단자(604), 입력 버퍼(606), 및 D-타입 플립-플롭(608)을 포함한다. 로컬 출력 경로는 메모리 뱅크 선택기(610)와, n-비트의 병-직렬 레지스터(612)를 포함한다. 공유 출력 드라이버 경로는 디바이스 선택기(614), 출력 버퍼(616), 및 직렬 출력 단자(618)를 포함한다.
출력 경로 회로의 일반적인 동작은 당업자에게 잘 알려져 있다. 예컨대, 메모리 뱅크 선택기(610)는, 메모리 디바이스가 정상 동작 모드로 기능하고 있을 때, 개별 메모리 뱅크가 데이터 판독을 위해 선택되게 한다. (디바이스 ID 넘버와 관련된) 디바이스 선택 신호(D_SEL)에 따라, 디바이스 선택기(614)는 로컬 출력 경로에 의해 제공된 로컬 데이터나 플로우-쓰루 출력 경로로부터 제공된 글로벌 데이터를 통과시킬 것이다. 일반적으로, 디바이스 선택기(614)로부터 통과된 로컬 데이터 및 글로벌 데이터는 정상 동작 모드 동안에 메모리 데이터로서 간주된다. D-타입 플립-플롭 및 병-직렬 레지스터(612)는, 출력 데이터가 데이터의 소스에 상관없이 시스템과 적절히 동기화됨을 확증하기 위해, 동일한 신호(CLK)로 클록킹된다. 플로우-쓰루 동작에서, 데이터는 그러므로 단일 클록 사이클 지연시간을 겪게 되며, 이는 이것이 메모리 디바이스 사이에서 전송되기 때문이다.
도 6에서, 로컬 출력 경로 및 공유 출력 드라이버 경로는, 본 발명의 직렬 테스트 방식 실시예를 인에이블시키기 위해 최소 논리 회로 및 회로로 맞춰진다. 추가 직렬 테스트 회로(602)는 로컬 비교기 회로(620), n-비트의 제 1단 테스트 경로 선택기(622), 글로벌 비교 회로로 또한 지칭되는 압축 회로(624), 및 제 2단 테스트 경로 선택기(626)를 포함한다. 압축 회로(624)는 현재 예컨대 OR 회로로서 구현되어 있지만, 당업자는, 기능적으로 등가인 임의의 회로를 사용할 수 있음을 이해해야 한다. 메모리 셀 내용을 비교함으로서 결함의 존재나 부재를 논리적으로 검출할 수 있는 한은, 비록 기능적으로 등가인 임의의 회로가 사용될 수 있을지라도, 로컬 비교기 회로(620)는 예컨대 XOR 회로로서 구현된다. 더욱 상세하게, 임의의 논리 회로가, 메모리 셀 내용이 미리 결정된 패턴이나 다른 예상한 출력에 부합하지 않는지를 기록된 테스트 패턴을 기반으로 해서 판정하는데 사용될 수 있다. XOR 회로(620)는 하나의 뱅크(뱅크 0)로부터 데이터 비트를 수신하기 위한 제 1 입력과, 다른 뱅크(뱅크 1)로부터 데이터 비트를 수신하기 위한 제 2 입력을 갖는다. 본 예에서, 뱅크 0 및 뱅크 1로부터의 두 비트가 논리적으로 동일한 한은, XOR 회로(620)는 논리 "0" 결과를 출력할 것이고, 이것은 "통과" 결과에 해당한다.
제 1단 테스트 경로 선택기(622)는, 선택 신호(TEST_MODE)에 응답하여, 메모리 어레이로부터의 로컬 메모리 데이터를 제공하는 메모리 뱅크 선택기(610)의 출력이나 XOR 회로(620)의 출력을 선택적으로 통과시키는데 사용된다. 테스트 동작 모드에서, XOR 회로(620)의 단일-비트 출력이 병-직렬 레지스터(612)로 통과된다. 이 출력이, 이전의 메모리 디바이스로부터의 이전의 글로벌 결과 데이터에 후속하여 비교될 로컬 결과 데이터이다. 본 예에서, 뱅크 0과 뱅크 1로부터의 n-비트는 동시에 서로 비교될 것이고, 그리하여 병-직렬 레지스터(612)에 저장되는 n개의 로컬 결과 데이터 비트가 있다. 따라서 메모리 뱅크 선택기(610), 로컬 비교기 회로(620) 및 제 1단 테스트 경로 선택기(622)는 n-비트 폭 워드를 수용하도록 구성된다.
일단 로딩되면, 병-직렬 레지스터(612)는 하나의 단일-비트 로컬 비교 결과를 각 클록 사이클에서 압축 회로(624)에 제공하며, 이 회로(624)에서, 이것은 D-타입 플립-플롭(608)으로부터 수신된 이전의 글로벌 결과 데이터의 해당 비트에 비교된다. 예컨대, 압축 회로(624)는, 병-직렬 레지스터(612)의 출력에 연결된 제 1 입력과 D-타입 플립-플롭(608)의 출력에 연결된 제 2 입력을 갖는 OR 논리 회로로서 구현된다. OR 논리 회로(624)의 단일-비트 출력은 이전의 메모리 디바이스로부터의 이전의 글로벌 결과 데이터를 병-직렬 레지스터(612)에 포함된 로컬 결과 데이터와 결합한다. 제 2단 테스트 경로 선택기(626)는 신호(TEST_MODE)에 응답하여 OR 논리 회로(624)의 출력을 선택적으로 통과시킨다. 테스트 동작 모드에서, OR 논리 회로(624)의 출력은 그 다음 메모리 디바이스나, 메모리 제어기로 송신하기 위해 출력 버퍼(616)로 통과된다. 정상 동작 모드에서, 제 2단 테스트 경로 선택기(626)는 디바이스 선택기(614)에서 수신한 글로벌 메모리 데이터를 통과시킨다.
이제 다음에서는, 메모리 디바이스(600)의 표준 출력 경로 회로와 추가 직렬 테스트 회로(602)에 대해 논의한다. 테스트 동작 모드 동안에, 제어 신호(TEST_MODE)는, 제 1단 테스트 경로 선택기(622)가 그 "1"입력 단자로부터의 데이터를 통과시키고, 제 2단 테스트 경로 선택기(626)가 그 "1"입력 단자로부터의 데이터를 통과시키도록 세팅된다. 제 1단 테스트 경로 선택기(622)는, 로컬 비교기 회로(620)에 의해 실행된 뱅크 0 및 뱅크 1의 비교 결과를 병-직렬 레지스터(612)로 통과시킨다. 본 예에서, 각 뱅크로부터의 8비트 데이터는 동시에 판독되어 서로 비교될 것이다. 그러므로 8개의 비교 결과가 병-직렬 레지스터(612)에 로딩된다. 각 능동 클록 에지(active clock edge)에서, D-타입 플립-플롭(608)과 병-직렬 레지스터(612)는 단일 데이터 비트를 압축 회로(624)에 송신하고, 이 회로(624)는 이들을 결합하여 압축된 결과를 출력한다. 압축된 결과는 제 2단 테스트 경로 선택기(626)를 통과하며, 출력 버퍼(616) 및 출력 단자(618)를 통해 직렬로 상호 연결된 구성에서 그 다음 메모리 디바이스에 전달된다. 디바이스 선택기(614)의 출력이 제 2단 테스트 경로 선택기(626)에서 차단되므로, 선택 신호(D_SEL)의 상태는 관련 없음을 여기에서 주목해야 한다.
도 7a는, 디바이스 사이에서 정보 흐름을 예시하기 위한, 직렬로 서로 연결된 메모리 디바이스(700, 702, 704 및 706)의 블록도이다. 각 메모리 디바이스는 도 6에 도시된, 이전에 설명한 직렬 테스트 회로 실시예를 포함한다. 각 메모리 디바이스는 다음의 입력 포트를 갖는다: 직렬 입력 포트(SI), 입력 인에이블 포트(IPE), 출력 인에이블 포트(OPE) 및 클록 입력 포트. 각 메모리 디바이스는 다음의 출력 포트를 갖는다: 직렬 출력 포트(SOP), 입력 인에이블 포트(IPEQ) 및 출력 인에이블 포트(OPEQ). 출력 포트(IPEQ 및 OPEQ)는, IPE 및 OPE 입력 포트에서 각각 수신한 신호를 시스템의 그 다음 디바이스에 송신하는 플로우-쓰루 포트이다.
도 7b는, 본 발명의 메모리 테스트 방식 실시예를 사용하여, 도 7a의 직렬로 서로 연결된 멀티-디바이스 시스템의 동작을 도시한 타이밍 도이다. 이 타이밍 도는 시스템 클록(CLK)과, 각각 SIP[0], IPE[0] 및 OPE[0]로 표기된, 메모리 디바이스(700) "디바이스 0"에 대한 포트(SIP, IPE 및 OPE)와, SOP[0], SOP[1], SOP[2] 및 SOP[3]으로 표기된, 모두 4개의 디바이스에 대한 직렬 출력 포트에 대한 신호 트레이스를 도시한다. 테스트 기록 데이터가 메모리 디바이스(700, 702, 704 및 706)의 모든 메모리 뱅크에 기록되었고, 메모리 디바이스의 시스템이 테스트받을 준비를 하고 있다고 가정한다.
도 7b로부터 알 수 있듯이, 메모리 디바이스(700)는 테스트 동작에서 입력 인에이블 신호(IPE)를 수신한다. 이전에 언급한 바와 같이, 고유 코드, 값 또는 숫자는 각 디바이스가 제어 신호에서 동작할 수 있게 할 것이다. 입력 인에이블 신호(IPE[0])는 메모리 디바이스(700 내지 706)를 거쳐 전송되어, 이들 디바이스 각각을 차례로 인에이블시킨다. 다음으로, 메모리 디바이스(700)는 직렬 입력 포트(SIP[0])를 거쳐 테스트 판독 명령을 수신하며, 이것은 선택 신호(TEST_MODE)를 필요한 테스트 상태로 세팅하는 단계를 포함할 수 있다. 예컨대, 신호(TEST_MODE)는 고유 코드를 동반하는 판독 명령에 응답하여 테스트 상태로 세팅될 수 있거나, 디바이스가 테스트 동작 모드에 들어갈 때 명백히 세팅될 수 있다. 이전에 언급한 바와 같이, 적절한 기록 회로는, 고유 코드에 응답하여 하나 이상의 메모리 뱅크의 메모리 셀 내로의 테스트 데이터의 동시 기록을 인에이블하기 위해 활성화될 것이다. 비록 도 7a에 예시되지 않을지라도, 메모리 디바이스(700, 702, 704 및 706)각각에서의 래칭 회로는 시스템에서 하나의 메모리 디바이스의 판독 동작의 시작과, 그 다음 메모리 디바이스의 판독 동작의 시작 사이에서 하나의 클록 사이클의 지연을 초래할 것이다. 이것을 하나의 클록 사이클 지연이라고 한다. 판독 테스트 명령에 응답하여, 각 디바이스는, 그 메모리 뱅크의 셀 사이에서 데이터의 로컬 판독 및 비교를 개시할 것이고, 로컬 비교 결과를 그 병-직렬 레지스터(612)에 로딩할 것이다.
일단 충분한 수의 클록 사이클이 로컬 비교를 완료하기 위해 경과하였다면, 출력 인에이블 신호(OPE)가 메모리 디바이스(700)에서 수신되며, 이것은 메모리 디바이스(700, 702, 704 및 706)를 거쳐서 전송된다. 시스템의 제 1 메모리 디바이스(700)는 출력 인에이블 신호(OPE)를 수신하고, 메모리 제어기로부터 디폴트 "통과" 데이터를 수신한다. 이 디폴트 "통과"데이터는 이전의 메모리 디바이스로부터의 "통과" 상태를 갖는 이전의 글로벌 결과 데이터를 시뮬레이트하고, OR 회로(624)에 의해 사용되어 로컬 결과 데이터와 비교된다. OPE 신호에 응답하고, 시스템 클록(CLK)의 제 1 상승 에지를 통해, 메모리 디바이스(700)의 병-직렬 레지스터(612)로부터의 로컬 결과 데이터 비트가 그 해당하는 OR 회로(624)에 제공된다. 또한, 제 1 상승 에지에서, 메모리 디바이스(700)의 D-타입 플립 플롭 회로는 디폴트 "통과" 데이터의 한 비트를 OR 회로(624)에 제공할 것이다. 도 7b에서, 최종 제 1 업데이터된 글로벌 결과 데이터 비트가 클록 에지(708)에서 SOP[0] 상에 제공된다.
한 클록 사이클 후에, 메모리 디바이스(702)는 SOP[0]로부터 이 제 1 업데이트된 글로벌 결과 데이터 비트를 래치하고, 그런 후 이것을 그 자신의 병-직렬 레지스터(612)로부터의 제 1 비트와 비교하여 SOP[1]로부터 제 2 업데이트된 글로벌 결과 데이터 비트를 생성한다. 만약 SOP[0]나 메모리 디바이스(702)로부터의 로컬 결과 데이터 중 어느 하나로부터의 데이터 비트가 결함을 지시한다면, SOP[1]도 또한 결함을 지시할 것이다. 이러한 프로세스는 계속되어, 메모리 디바이스(704)는 메모리 디바이스(702)의 SOP[1]로부터 제 2 업데이트된 글로벌 결과 데이터 비트를 수신하고 이것을 그 자신의 로컬 결과 데이터와 결합하여 SOP[2]로부터 제 3 업데이트된 글로벌 결과 데이터 비트를 생성한다. 마찬가지로, 메모리 디바이스(706)는 SOP[3]로부터 제 4 및 최종 업데이트된 글로벌 결과 데이터 비트를 제공할 것이며, 이것은 메모리 제어기로 반환된다. 도 7b로부터 알 수 있는 바와 같이, 메모리 디바이스(700, 702, 704 및 706) 각각에서의 래칭 회로는 시스템에서 각 메모리 디바이스의 출력의 시작과 그 다음 메모리 디바이스로부터의 출력의 시작 사이에서 하나의 클록 사이클의 지연을 초래한다. 시스템에서 마지막 메모리 디바이스(706)로부터의 최종 업데이트된 글로벌 결과 데이터 비트는 멀티-디바이스 시스템의 모든 디바이스로부터의 비교 결과의 압축된 표현이다.
그러므로 모든 메모리 디바이스의 한 메모리 위치의 통과/실패 상태를 나타내는 최종 글로벌 결과 데이터의 제 1 비트가 4 클록 사이클 이후 제공된다. 그 이후 각 클록 사이클에 대해, 연속되는 최종 글로벌 결과 데이터 비트를 제공한다. 메모리 제어기는, 제 1 "실패" 비트가 수신되자마자 테스트 프로세스를 중지하도록 구성될 것이며, 이는 임의의 메모리 디바이스에서의 임의의 단일 비트 실패가 전체 시스템에 결함을 제공할 것이기 때문이다.
도 8a 및 도 8b는 본 발명의 실시예에 따른, 세 개의 직렬로 서로 연결된 메모리 디바이스의 예시적인 동작을 개념적으로 예시한다. 각 메모리 디바이스는 뱅크 0 및 뱅크 1로 표기된 두 개의 메모리 뱅크, OR 회로 및 XOR 회로를 포함한다. XOR 회로는, 두 개의 메모리 뱅크의 내용이 동일한지를 판정하는, 도 6의 로컬 비교기 회로(620)에 해당한다. OR 회로는 도 6의 압축 회로(624)에 해당하며, 이 회로(624)는 XOR 회로에 의해 산출된 로컬 결과 데이터를 시스템에서 이전의 메모리 디바이스의 업데이트된 글로벌 결과 데이터와 결합한다. OR 회로의 출력은 업데이트된 글로벌 결과 데이터이다. 도 8a 및 도 8b에서, 뱅크 0 및 뱅크 1의 8비트는 동시에 테스트된다.
도 8a는 메모리 디바이스(800, 802 및 804)의 16개의 메모리 셀 중 임의의 셀에서 어떠한 결함도 없는 예시적인 상황을 도시한다. 예시용으로, 동일한 테스트 데이터 00101101이 디바이스(800, 802 및 804)의 메모리 뱅크(뱅크 0 및 뱅크 1)에 기록되었다. 디바이스(800, 802 및 804)의 메모리 뱅크가 결함이 없으므로, 모든 메모리 뱅크는 동일한 바이트의 정보를 보유할 것이다. 그러므로 각 디바이스에 의해 실행된 로컬 비교 동작 동안에, 각 메모리 디바이스의 XOR 회로에 의해 생성된 결과는 00000000일 것이다. 메모리 디바이스(800)는 그 XOR 게이트에 의해 생성된 테스트 결과를 메모리 제어기로부터의 디폴트 "통과" 데이터와 결합하며, 이는 디바이스(800)가 시스템의 제 1 디바이스이기 때문이다. 어떠한 결함도 검출되지 않으므로, 최종 압축된 데이터 결과는, 모든 메모리 디바이스의 각 메모리 셀 위치에 대해 "통과" 조건을 지시하는 "0"논리 상태의 스트링일 것이다.
도 8b는, 메모리 디바이스(806)의 뱅크 0에 하나의 결함이 있고, 메모리 디바이스(808)의 뱅크 1에 하나의 결함이 있는 예시적인 상황을 도시한다. 더욱 구체적으로는, 테스트 데이터 00101101이 메모리 디바이스의 모든 뱅크에 기록된 이후, 메모리 디바이스(806)의 뱅크 0에 남아 있는 것으로부터 제 3 비트 위치는 기록된 "1"논리 상태로부터 "0"논리 상태로 상태를 바꿨다. 유사하게, 메모리 디바이스(808)의 뱅크 1에 남아 있는 것으로부터 제 8 비트 위치는 기록된 "1"논리 상태로부터 "0"논리 상태로 상태를 바꿨다. 그에 따라 메모리 디바이스(806)의 XOR 회로가 뱅크 0의 8개의 비트를 뱅크 1의 해당하는 8개의 비트에 비교할 때, 이 회로는 00100000이라는 다음의 출력 바이트를 생성할 것이다. 유사하게, 메모리 디바이스(808)의 XOR 회로가 뱅크 0의 8개의 비트를 뱅크 1의 해당하는 8개의 비트에 비교할 때, 이 회로는 00000001이라는 다음의 출력 바이트를 생성할 것이다. "1"논리 비트는 두 개의 메모리 뱅크 중 하나의 해당하는 비트 위치에 대해 "실패"를 지시한다. 메모리 디바이스(806)가 시스템의 제 1 메모리 디바이스이기 때문에, 그 OR 회로는 단순히 그 XOR 회로의 출력을 메모리 디바이스(808)에 송신한다. 메모리 디바이스(808)는 그러면 메모리 디바이스(806)로부터 수신한 업데이트된 글로벌 결과 데이터를 그 XOR 회로에 의해 생성된 로컬 결과 데이터와 결합한다. 메모리 디바이스(808)로부터의 업데이트된 글로벌 결과 데이터는 이제 두 개의 에러 지시: 00100001을 포함한다. 디바이스(808)의 OR 회로의 출력은 그 다음에 디바이스(810)에 송신되고, 이 디바이스(810)는 이것을 그 로컬 결과 데이터와 결합한다. 디바이스(808)로부터 수신된 데이터가 에러 지시를 포함하고 있기 때문에, 디바이스(810)의 OR 게이트로부터의 업데이트된 최종 압축 데이터 결과는, 비록 디바이스(810)가 어떠한 결함도 갖고 있지 않을지라도, 동일한 에러 지시를 포함할 것이다.
이전에 기재한 실시예는 두 개의 메모리 뱅크를 갖는 메모리 디바이스를 사용하여 예시하였다. 대안적인 실시예에서, 메모리 디바이스는 다수의 메모리 뱅크를 포함할 수 있고, 메모리 뱅크로부터의 데이터를 비교하기 위한 XOR 회로는 다수의 메모리 뱅크 각각으로부터 한 비트의 데이터를 수신하도록 구성될 것이다. 단일-비트 XOR 회로 출력은 여전히, 다수의 메모리 뱅크에서의 적어도 하나의 결함에 대한 지시를 제공할 것이며, 이는 이 회로가 모든 메모리 뱅크 중에서 적어도 하나의 결함을 식별하고 있기 때문이다. 도 6의 변형으로, 예컨대, 메모리 뱅크 선택기(610)는 4개의 뱅크로부터 데이터를 수신하도록 구성될 것이고, XOR 회로(620)는 그리하여 4개의 뱅크로부터 동일한 데이터를 수신하도록 적절히 구성될 것이다.
대안적으로, 종래의 메모리 디바이스의 이전 글로벌 결과 데이터를 비교하기 위한 OR 회로는 동시에 하나 보다 많은 병-직렬 레지스터로부터 로컬 결과 데이터 비트를 수신하도록 구성될 것이다. 도 6의 변형으로, 예컨대, 소자(610, 620, 622 및 612)는 메모리 디바이스에서 메모리 뱅크 각 쌍에 대해 중복될 것이다.
이전에 기재한 멀티-디바이스 시스템은 메모리 디바이스를 사용하여 기재되었다. 그러나 본 발명의 실시예는 메모리 뱅크로 구성된 메모리를 내장하고 있는 임의의 타입의 디바이스에서 사용될 수 있다. 이전에 기재한 실시예는 적어도 두 개의 메모리 뱅크를 갖는 디바이스와 함께 사용되는 것으로 도시되었다. 당업자는, 도시된 회로가 추가적인 메모리 뱅크를 수용하도록 크기 조정될 수 있음을 이해할 것이다. 본 발명의 다른 실시예에 따라, 단일 메모리 어레이를 가진 디바이스는 동일한 방식으로 테스트될 것이다.
도 9는 단일 메모리 뱅크 디바이스에 대한 로컬 비교기 회로의 회로 구성을 도시하는 블록도이다. 메모리 디바이스(900)는 워드라인 행과 비트라인 열을 갖는 단일 메모리 뱅크(902)를 갖도록 구성된다. 비트라인에 연결되는 것은 열 액세스 회로(904)이며, 이 회로(904)는 비트라인의 전압 레벨을 감지하기 위한 비트라인 감지 증폭기와, 감지된 전압을 판독 데이터버스 라인(906) 상에 결합하기 위한 열 선택 디바이스를 포함할 수 있다. 판독 데이터버스 라인(906)은 DB0 내지 DB7이 표기된다. 현재 도시된 예에서, 메모리 디바이스(900)는 8비트의 데이터를 동시에 각 판독 사이클에서 판독 데이터버스 라인(906)에 제공하도록 구성된다. 본 실시예에서, 로컬 비교기 회로는 두 개의 서로 다른 판독 데이터버스 라인 상의 데이터를 비교하기 위한 하나의 배타적 OR(XOR) 회로를 포함한다. 그러므로 8개의 판독 데이터버스 라인(906)의 본 예에서, 총 4개의 XOR 회로(908, 910, 912 및 914)가 있다. XOR 회로(908 내지 914) 각각으로부터의, LRD0, LRD1, LRD2 및 LRD3으로 표기는 로컬 결과 데이터는 그리하여, 이전 메모리 디바이스로부터의 글로벌 결과 데이터와 비교하기 위해 도 6의 실시예에 도시된 것과 유사하게 다운스트림 회로에 제공될 것이다.
이처럼, 단위 메모리 어레이나, 둘 이상의 별개의 메모리 블록이나 뱅크로 분리된 메모리 어레이를 갖는 디바이스를 테스트할 수 있다. 분리된 메모리 어레이는, 그 위치가 판독 또는 기록 동작을 위해 어드레스 가능한 어레이이다.
이전에 도시한 실시예는, 디바이스에서 메모리 셀의 로컬 비교를 수행하기 위해 단일 단의 XOR 회로를 사용하는 것으로 도시되었다. 도 6의 실시예에서, n개의 로컬 비교 데이터 비트를 병렬로 제공하기 위한 n개의 XOR 회로(620)가 있다. 도 9의 실시예에서, 병렬로 제공되는 4개의 로컬 비교 데이터가 있다. 대안적인 실시예에서, 로컬 비교 회로는 단들로 구성될 수 있고, 그리하여 최종 로컬 비교 회로로부터의 하나의 단일 출력이 제공될 것이다. 이 최종 출력은 그러면 한 판독 사이클 동안에 테스트되고 있는 모든 메모리 셀의 로컬 비교 결과를 나타낼 것이다. 도 9의 실시예에 대한 변형에서, 예컨대, 출력(LRD0 및 LRD1)은 제 5 XOR 게이트에 제공될 것인데 반해, 출력(LRD2 및 LRD3)은 제 6 XOR 게이트에 제공될 것이다. 그러면 제 5 및 제 6 XOR 게이트의 출력은 제 7 및 최종 XOR 게이트에 제공될 것이다.
전술한 설명에서, 설명을 목적으로, 본 발명의 실시예를 철저히 이해시키기 위해 많은 상세한 사항들을 제기하였다. 그러나 이들 특정한 상세한 사항들은 본 발명을 실행하는데 필요하지 않음이 당업자에게 명백할 것이다. 다른 경우에, 잘 알려진 전기 구조 및 회로가, 본 발명을 불명료하게 하지 않기 위해 블록도로 도시되었다. 예컨대 여기에 기재한 본 발명의 실시예가 소프트웨어 루틴, 하드웨어 회로, 펌웨어, 또는 이들의 결합으로서 구현되는지에 대한 특정한 상세한 사항은 제공하지 않았다. 회로 구조에서, 디바이스 및 소자는 직접 또는 간접적으로 서로 연결되거나 결합될 수 있다.
본 발명의 실시예는 기계로 판독 가능한 매체(컴퓨터로 판독 가능한 매체, 프로세서로 판독 가능한 매체, 또는 컴퓨터로 판독 가능한 프로그램 코드를 그 내부에 통합하고 있는 컴퓨터에서 사용 가능한 매체로도 지칭됨)에 저장된 소프트웨어 제품으로서 나타내어질 것이다. 기계로 판독 가능한 매체는, 디스켓, CD-ROM(Compact Disk-Read Only Memory), 메모리 디바이스(휘발성 또는 불-휘발성), 또는 유사한 저장 메커니즘을 포함하는, 자기, 광학 또는 전기 저장 매체를 포함하는 임의의 적절한 유형의 매체일 것이다. 기계로 판독 가능한 매체는, 실행될 때 프로세서로 하여금 본 발명의 실시예에 따른 방법의 단계들을 실행하게 하는 다양한 세트의 지시, 코드 시퀀스, 구성 정보 또는 기타 데이터를 포함할 수 있다. 당업자는, 기재한 발명을 구현하는데 필요한 다른 지시 및 동작이 또한 기계로 판독 가능한 매체 상에 저장될 수 있다는 점을 인식할 것이다. 기계로 판독 가능한 매체로부터 실행되는 소프트웨어는 회로와 인터페이스하여 기재한 임무를 실행할 수 있다.
본 발명의 전술한 실시예는 단지 예를 든 것이다. 첨부된 청구항에 의해서만 한정된 본 발명의 범주에서 벗어나지 않고, 당업자는 특정한 실시예에 대한 변경, 변형 및 변동을 행할 수 있다.

Claims (18)

  1. 메모리 디바이스로서,
    데이터를 저장하도록 구성되는 메모리 셀들;
    N(N은 정수)개의 메모리 셀 쌍 사이에서 부합하지 않는 내용들(mismatching contents)을 동시에 판정함으로써 결함들에 대해 상기 메모리 셀들을 테스트하고, 상기 N개의 메모리 셀 쌍 중 하나의 결함 상태나 비결함 상태를 각각 나타내는 N개의 제1 신호를 제공하도록 구성되는 테스트 회로; 및
    해당하는 N개의 제1 신호에 기초하여 상기 메모리 디바이스에 의해 수신된 N개의 제2 신호를 업데이트하도록 구성되는 출력 회로를 포함하고,
    상기 테스트 회로는 판독 데이터 및 상기 업데이트된 제2 신호 중 하나를 출력 단자에 선택적으로 제공하기 위한 경로 선택기를 포함하고,
    상기 경로 선택기는, 상기 판독 데이터로서, 다른 메모리 디바이스에 의해 제공된 외부 판독 데이터나, 상기 메모리 디바이스에 의해 제공된 로컬 판독 데이터를 제공하는, 메모리 디바이스.
  2. 청구항 1에 있어서, 상기 출력 회로는, 상기 제2 신호가 비결함 상태에 해당하고, 상기 제1 신호가 결함 상태에 해당할 경우에만, 상기 제2 신호를 업데이트하는, 메모리 디바이스.
  3. 청구항 1에 있어서, 상기 출력 회로는, 상기 제2 신호가 상기 제1 신호와 상관없이 결함 상태에 해당할 경우, 상기 제2 신호를 통과시키는, 메모리 디바이스.
  4. 청구항 1에 있어서, 상기 메모리 셀들 모두는 동일한 논리 상태를 저장하도록 기록되는, 메모리 디바이스.
  5. 청구항 1에 있어서, 상기 출력 회로는 상기 N개의 제1 신호를 저장하기 위한 레지스터를 포함하는, 메모리 디바이스.
  6. 청구항 5에 있어서, 상기 레지스터는 상기 N개의 제1 신호를 병렬로 수신하기 위한 병-직렬 레지스터를 포함하며, 상기 병-직렬 레지스터는 클록 신호에 응답하여 상기 N개의 제1 신호 각각을 직렬로 제공하도록 구성되는, 메모리 디바이스.
  7. 삭제
  8. 삭제
  9. 청구항 1에 있어서, 상기 출력 회로는, 상기 외부 판독 데이터와 상기 제2 신호 중 하나를 수신하기 위한 입력 단자를 포함하는, 메모리 디바이스.
  10. 청구항 1에 있어서, 상기 출력 회로는 상기 외부 판독 데이터와 상기 로컬 판독 데이터 중 하나를 선택적으로 통과시키기 위한 디바이스 선택기를 포함하는, 메모리 디바이스.
  11. 청구항 1에 있어서, 상기 제1 신호는 로컬 결함 신호에 해당하며, 상기 제2 신호는 글로벌 결함 신호에 해당하는, 메모리 디바이스.
  12. 메모리 디바이스로서,
    데이터를 저장하도록 구성되는 메모리 셀들;
    제1 메모리 셀과 제2 메모리 셀의 내용들을 비교함으로써 결함들에 대해 상기 메모리 셀들을 테스트하고, 결함 상태나 비결함 상태를 나타내는 제1 신호를 제공하도록 구성되는 논리 회로를 포함하는 테스트 회로- 상기 제1 신호는 상기 제1 메모리 셀과 상기 제2 메모리 셀의 내용들이 부합하지 않을 경우 제공됨 -; 및
    상기 제1 신호에 기초하여 상기 메모리 디바이스에 의해 수신된 제2 신호를 업데이트하도록 구성되는 출력 회로를 포함하고,
    상기 테스트 회로는 판독 데이터 및 상기 업데이트된 제2 신호 중 하나를 출력 단자에 선택적으로 제공하기 위한 경로 선택기를 포함하고,
    상기 경로 선택기는, 상기 판독 데이터로서, 다른 메모리 디바이스에 의해 제공된 외부 판독 데이터나, 상기 메모리 디바이스에 의해 제공된 로컬 판독 데이터를 제공하는, 메모리 디바이스.
  13. 청구항 12에 있어서, 상기 논리 회로는, 상기 제1 메모리 셀의 내용을 수신하기 위한 제1 입력과 상기 제2 메모리 셀의 내용을 수신하기 위한 제2 입력을 갖는 배타적 OR 논리를 포함하는, 메모리 디바이스.
  14. 메모리 디바이스로서,
    데이터를 저장하도록 구성되는 메모리 셀들;
    결함들에 대해 상기 메모리 셀들을 테스트하고, 결함 상태나 비결함 상태를 나타내는 제1 신호를 제공하도록 구성되는 테스트 회로; 및
    상기 제1 신호에 기초하여 상기 메모리 디바이스에 의해 수신된 제2 신호를 업데이트하도록 구성되며, 상기 제1 신호 및 상기 제2 신호에 응답하여 상기 업데이트된 제2 신호를 제공하기 위한 압축 회로를 포함하는 출력 회로- 상기 업데이트된 제2 신호는, 상기 제2 신호 및 상기 제1 신호 중 적어도 하나가 각각 검출된 결함에 해당하는 경우에, 검출된 결함에 해당함 -를 포함하고,
    상기 테스트 회로는 판독 데이터 및 상기 업데이트된 제2 신호 중 하나를 출력 단자에 선택적으로 제공하기 위한 경로 선택기를 포함하고,
    상기 경로 선택기는, 상기 판독 데이터로서, 다른 메모리 디바이스에 의해 제공된 외부 판독 데이터나, 상기 메모리 디바이스에 의해 제공된 로컬 판독 데이터를 제공하는, 메모리 디바이스.
  15. 청구항 14에 있어서, 상기 테스트 회로는, 메모리 셀들의 쌍들 사이에서 부합하지 않는 내용들을 판정하여, 상기 메모리 셀들의 쌍들 중 적어도 하나가 결함이 있음을 나타내도록 구성되는, 메모리 디바이스.
  16. 청구항 14에 있어서, 상기 압축 회로는 상기 제1 신호를 수신하기 위한 제1 입력과 상기 제2 신호를 수신하기 위한 제2 입력을 갖는 OR 논리를 포함하는, 메모리 디바이스.
  17. 청구항 14에 있어서, 상기 압축 회로는 상기 출력 회로로부터 상기 제2 신호를 수신하며, 상기 제2 신호는 다른 메모리 디바이스에 의해 제공되는, 메모리 디바이스.
  18. 메모리 디바이스로서,
    데이터를 저장하도록 구성되는 메모리 셀들을 갖는 제1 메모리 뱅크 및 제2 메모리 뱅크;
    상기 제1 메모리 뱅크로부터의 셀 데이터를 상기 제2 메모리 뱅크의 셀 데이터에 비교함으로써 결함들에 대해 상기 메모리 셀들을 테스트하고, 결함 상태나 비결함 상태를 나타내는 제1 신호를 제공하도록 구성되는 테스트 회로; 및
    상기 제1 신호에 기초하여 상기 메모리 디바이스에 의해 수신된 제2 신호를 업데이트하도록 구성되는 출력 회로를 포함하고,
    상기 테스트 회로는 판독 데이터 및 상기 업데이트된 제2 신호 중 하나를 출력 단자에 선택적으로 제공하기 위한 경로 선택기를 포함하고,
    상기 경로 선택기는, 상기 판독 데이터로서, 다른 메모리 디바이스에 의해 제공된 외부 판독 데이터나, 상기 메모리 디바이스에 의해 제공된 로컬 판독 데이터를 제공하는, 메모리 디바이스.
KR1020127032081A 2006-11-30 2007-11-29 멀티―디바이스 시스템을 테스트하는 회로 및 방법 KR101404887B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/565,327 2006-11-30
US11/565,327 US7508724B2 (en) 2006-11-30 2006-11-30 Circuit and method for testing multi-device systems
PCT/CA2007/002148 WO2008064479A1 (en) 2006-11-30 2007-11-29 Circuit and method for testing multi-device systems

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020097013534A Division KR101445889B1 (ko) 2006-11-30 2007-11-29 멀티―디바이스 시스템을 테스트하는 회로 및 방법

Publications (2)

Publication Number Publication Date
KR20130001338A KR20130001338A (ko) 2013-01-03
KR101404887B1 true KR101404887B1 (ko) 2014-06-10

Family

ID=39467574

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020127032081A KR101404887B1 (ko) 2006-11-30 2007-11-29 멀티―디바이스 시스템을 테스트하는 회로 및 방법
KR1020097013534A KR101445889B1 (ko) 2006-11-30 2007-11-29 멀티―디바이스 시스템을 테스트하는 회로 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020097013534A KR101445889B1 (ko) 2006-11-30 2007-11-29 멀티―디바이스 시스템을 테스트하는 회로 및 방법

Country Status (6)

Country Link
US (4) US7508724B2 (ko)
EP (1) EP2102869A4 (ko)
JP (1) JP2010511229A (ko)
KR (2) KR101404887B1 (ko)
TW (1) TWI462108B (ko)
WO (1) WO2008064479A1 (ko)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7508724B2 (en) * 2006-11-30 2009-03-24 Mosaid Technologies Incorporated Circuit and method for testing multi-device systems
US7554855B2 (en) * 2006-12-20 2009-06-30 Mosaid Technologies Incorporated Hybrid solid-state memory system having volatile and non-volatile memory
KR100850270B1 (ko) * 2007-02-08 2008-08-04 삼성전자주식회사 페일비트 저장부를 갖는 반도체 메모리 장치
US7913128B2 (en) 2007-11-23 2011-03-22 Mosaid Technologies Incorporated Data channel test apparatus and method thereof
US8880970B2 (en) * 2008-12-23 2014-11-04 Conversant Intellectual Property Management Inc. Error detection method and a system including one or more memory devices
US8386867B2 (en) 2009-07-02 2013-02-26 Silicon Image, Inc. Computer memory test structure
US8369166B2 (en) 2009-07-27 2013-02-05 Sidense Corp. Redundancy system for non-volatile memory
US9123429B2 (en) 2009-07-27 2015-09-01 Sidense Corp. Redundancy system for non-volatile memory
US8543873B2 (en) * 2010-01-06 2013-09-24 Silicon Image, Inc. Multi-site testing of computer memory devices and serial IO ports
US20110280092A1 (en) * 2010-05-11 2011-11-17 Qualcomm Incorporated Multi-Bank Read/Write To Reduce Test-Time In Memories
TW201225529A (en) * 2010-12-03 2012-06-16 Fortune Semiconductor Corp Test mode controller and electronic apparatus with self-testing thereof
US9336342B2 (en) 2011-09-23 2016-05-10 Synopsys, Inc. Memory hard macro partition optimization for testing embedded memories
US8782475B2 (en) * 2012-11-01 2014-07-15 Futurewei Technologies, Inc. PRBS test memory interface considering DDR burst operation
US9092333B2 (en) 2013-01-04 2015-07-28 International Business Machines Corporation Fault isolation with abstracted objects
KR102077073B1 (ko) 2013-07-26 2020-02-14 에스케이하이닉스 주식회사 반도체 장치
US9476938B2 (en) * 2013-09-27 2016-10-25 Novachips Canada Inc. Method and apparatus for testing surface mounted devices
CA2941639C (en) * 2014-01-23 2018-11-27 Sidense Corp. Redundancy system for non-volatile memory
KR102094406B1 (ko) 2014-07-11 2020-03-27 주식회사 아이에스시 테스트 인터페이스 유닛
CN104133749A (zh) * 2014-07-23 2014-11-05 浪潮电子信息产业股份有限公司 一种服务器的硬盘掉盘及硬盘乱序的验证方法
CN104392748A (zh) * 2014-10-28 2015-03-04 浪潮电子信息产业股份有限公司 一种linux***下测试硬盘读取速度的方法
KR102336458B1 (ko) 2015-07-30 2021-12-08 삼성전자주식회사 고속으로 결함 비트 라인을 검출하는 불휘발성 메모리 장치 및 그것의 테스트 시스템
US20170125125A1 (en) 2015-10-30 2017-05-04 Texas Instruments Incorporated Area-efficient parallel test data path for embedded memories
KR20170060297A (ko) * 2015-11-24 2017-06-01 에스케이하이닉스 주식회사 반도체 장치 및 그를 포함하는 반도체 시스템
US11074988B2 (en) 2016-03-22 2021-07-27 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US10388393B2 (en) * 2016-03-22 2019-08-20 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US12014788B2 (en) * 2022-04-29 2024-06-18 Changxin Memory Technologies, Inc. Memory array detection circuit and detection method, and memory

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010004221A (ko) * 1999-06-28 2001-01-15 김영환 다양한 데이터를 이용한 내장형 메모리 테스트 회로
JP2006114147A (ja) * 2004-10-15 2006-04-27 Sony Corp 半導体集積回路

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL192801C (nl) 1986-09-10 1998-02-03 Philips Electronics Nv Werkwijze voor het testen van een drager met meerdere digitaal-werkende geïntegreerde schakelingen, geïntegreerde schakeling geschikt voor het aanbrengen op een aldus te testen drager, en drager voorzien van meerdere van zulke geïntegreerde schakelingen.
US4876685A (en) 1987-06-08 1989-10-24 Teradyne, Inc. Failure information processing in automatic memory tester
US5185722A (en) 1989-11-22 1993-02-09 Sharp Kabushiki Kaisha Semiconductor memory device having a memory test circuit
US5315130A (en) 1990-03-30 1994-05-24 Tactical Fabs, Inc. Very high density wafer scale device architecture
US5132635A (en) * 1991-03-05 1992-07-21 Ast Research, Inc. Serial testing of removable circuit boards on a backplane bus
US5311520A (en) 1991-08-29 1994-05-10 At&T Bell Laboratories Method and apparatus for programmable memory control with error regulation and test functions
JP3076185B2 (ja) * 1993-12-07 2000-08-14 日本電気株式会社 半導体メモリ装置及びその検査方法
JP3361648B2 (ja) * 1995-03-15 2003-01-07 富士通株式会社 データ圧縮試験機能を備えた半導体記憶装置及びその試験方法
JPH09161476A (ja) * 1995-10-04 1997-06-20 Toshiba Corp 半導体メモリ及びそのテスト回路、並びにデ−タ転送システム
JPH1021150A (ja) * 1996-07-05 1998-01-23 Matsushita Electric Ind Co Ltd メモリテスト回路
JPH10289597A (ja) * 1997-04-14 1998-10-27 Advantest Corp メモリ試験装置
US5913928A (en) * 1997-05-09 1999-06-22 Micron Technology, Inc. Data compression test mode independent of redundancy
US5926422A (en) * 1997-10-02 1999-07-20 Texas Instruments Incorporated Integrated circuit memory device having current-mode data compression test mode
US6072737A (en) * 1998-08-06 2000-06-06 Micron Technology, Inc. Method and apparatus for testing embedded DRAM
US6295618B1 (en) * 1998-08-25 2001-09-25 Micron Technology, Inc. Method and apparatus for data compression in memory devices
US6185708B1 (en) 1998-11-27 2001-02-06 Advantest Corp. Maintenance free test system
KR100399435B1 (ko) * 2001-02-27 2003-09-29 주식회사 하이닉스반도체 반도체 메모리 장치와 그의 리페어 해석 방법
ITRM20010104A1 (it) * 2001-02-27 2002-08-27 Micron Technology Inc Modo di lettura a compressione di dati per il collaudo di memorie.
JP2002323537A (ja) * 2001-04-25 2002-11-08 Fujitsu Ltd Ram用機能試験容易化回路及びこれを備えた集積回路装置
US6611469B2 (en) * 2001-12-11 2003-08-26 Texas Instruments Incorporated Asynchronous FIFO memory having built-in self test logic
US7137049B2 (en) * 2003-04-29 2006-11-14 Infineon Technologies Ag Method and apparatus for masking known fails during memory tests readouts
US6894524B1 (en) * 2003-10-23 2005-05-17 Lsi Logic Corporation Daisy chain gang testing
US7177211B2 (en) 2003-11-13 2007-02-13 Intel Corporation Memory channel test fixture and method
US7254763B2 (en) * 2004-09-01 2007-08-07 Agere Systems Inc. Built-in self test for memory arrays using error correction coding
US7395476B2 (en) 2004-10-29 2008-07-01 International Business Machines Corporation System, method and storage medium for providing a high speed test interface to a memory subsystem
US7139673B1 (en) * 2004-11-05 2006-11-21 Xilinx, Inc. Method of and circuit for verifying a data transfer protocol
US7284167B2 (en) * 2005-01-24 2007-10-16 Spansion Llc Automated tests for built-in self test
JP4859402B2 (ja) * 2005-07-04 2012-01-25 株式会社アドバンテスト 試験装置、及び製造方法
US20070022349A1 (en) 2005-07-07 2007-01-25 Agilent Technologies, Inc. Test apparatus with tester channel availability identification
KR100648288B1 (ko) * 2005-07-22 2006-11-23 삼성전자주식회사 불 휘발성 메모리 장치의 리던던시 선택 회로
US7508724B2 (en) * 2006-11-30 2009-03-24 Mosaid Technologies Incorporated Circuit and method for testing multi-device systems
KR20100005088A (ko) * 2007-03-23 2010-01-13 가부시키가이샤 어드밴티스트 시험 장치 및 전자 디바이스
US7890811B2 (en) 2007-06-29 2011-02-15 Intel Corporation Method and apparatus for improved memory reliability, availability and serviceability

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010004221A (ko) * 1999-06-28 2001-01-15 김영환 다양한 데이터를 이용한 내장형 메모리 테스트 회로
JP2006114147A (ja) * 2004-10-15 2006-04-27 Sony Corp 半導体集積回路

Also Published As

Publication number Publication date
EP2102869A4 (en) 2009-12-30
US20110141835A1 (en) 2011-06-16
WO2008064479A1 (en) 2008-06-05
KR101445889B1 (ko) 2014-10-06
US8081529B2 (en) 2011-12-20
US20100135092A1 (en) 2010-06-03
KR20090086616A (ko) 2009-08-13
TWI462108B (zh) 2014-11-21
EP2102869A1 (en) 2009-09-23
TW200837769A (en) 2008-09-16
US20080130386A1 (en) 2008-06-05
US7911860B2 (en) 2011-03-22
US7508724B2 (en) 2009-03-24
US7679976B2 (en) 2010-03-16
US20090161458A1 (en) 2009-06-25
JP2010511229A (ja) 2010-04-08
KR20130001338A (ko) 2013-01-03

Similar Documents

Publication Publication Date Title
KR101404887B1 (ko) 멀티―디바이스 시스템을 테스트하는 회로 및 방법
US7814385B2 (en) Self programmable shared bist for testing multiple memories
KR101075091B1 (ko) 반도체 메모리 장치 및 그 테스트 방법
US7325173B2 (en) Semiconductor memory having error correction
US7428662B2 (en) Testing a data store using an external test unit for generating test sequence and receiving compressed test results
US8902673B2 (en) Method of testing a semiconductor memory device
US7213186B2 (en) Memory built-in self test circuit with full error mapping capability
US9390815B1 (en) Semiconductor system and method for testing semiconductor device
US6807116B2 (en) Semiconductor circuit device capable of accurately testing embedded memory
JP2008059711A (ja) 半導体記憶装置
US20050102595A1 (en) Method and apparatus for testing semiconductor memory device and related testing methods
US8824227B2 (en) Parallel test circuit and method of semiconductor memory apparatus
US7461306B2 (en) Output data compression scheme using tri-state
US7451368B2 (en) Semiconductor device and method for testing semiconductor device
JPH10106297A (ja) 半導体メモリ装置の並列ビットテスト回路
US9941020B2 (en) Semiconductor system and method for testing semiconductor device
KR100772718B1 (ko) 반도체메모리 장치의 데이터 압축 테스트 방법
US8310881B2 (en) Semiconductor device testing memory cells and test method
JP2006085770A (ja) 半導体記憶装置
JPS61192100A (ja) 半導体記憶装置
KR20140086630A (ko) 반도체 메모리 장치 및 그의 동작 방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee