KR100239015B1 - 직렬 공유 abist 방식에서 가변 데이타 워드 폭 및 어레이 깊이를 처리하는 방법 및 장치 - Google Patents

직렬 공유 abist 방식에서 가변 데이타 워드 폭 및 어레이 깊이를 처리하는 방법 및 장치 Download PDF

Info

Publication number
KR100239015B1
KR100239015B1 KR1019970015606A KR19970015606A KR100239015B1 KR 100239015 B1 KR100239015 B1 KR 100239015B1 KR 1019970015606 A KR1019970015606 A KR 1019970015606A KR 19970015606 A KR19970015606 A KR 19970015606A KR 100239015 B1 KR100239015 B1 KR 100239015B1
Authority
KR
South Korea
Prior art keywords
array
data word
depth
address
data
Prior art date
Application number
KR1019970015606A
Other languages
English (en)
Other versions
KR980003623A (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 KR980003623A publication Critical patent/KR980003623A/ko
Application granted granted Critical
Publication of KR100239015B1 publication Critical patent/KR100239015B1/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

직렬 공유 ABIST 방식에서 가변 데이타 워드 폭 및 어레이 깊이를 처리하는 방법 및 장치
단일 제어기를 사용하여 복수의 메모리 어레이를 검사하기 위한 어레이 내장 자체 검사 시스템(array built-in self-test system)에서 가변 데이타 워드 폭(variable data word width)과 어레이 깊이(array depth)를 처리하기 위한 방법 및 장치에 관한 것이다. 각각의 어레이는 소정의 행 및 열 어드레스 깊이와 데이타 워드 폭을 포함한다. 각각의 어레이는 또한 스캔 레지스터를 포함한다. 범용 검사 데이타 워드는 발생되어 각각의 어레이의 스캔 레지스터로 보내진다. 범용 길이 검사 데이타 워드는 최대 행 어드레스 깊이, 최대 열 어드레스 깊이 및/또는 최대 데이타 워드 폭에 따라 다른 길이를 갖는다. 특정 어레이의 열 어드레스 깊이, 행 어드레스 깊이 및/또는 데이타 워드 폭을 넘는 검사 데이타 워드의 일부는 특정 어레이의 스캔 레지스터의 종단점을 넘어서 시프트된다.

Description

직렬 공유 ABIST 방식에서 가변 데이타 워드 폭 및 어레이 깊이를 처리하는 방법 및 장치
본 발명은 일반적으로 내장 메모리 어레이의자체 검사(built-in self-testing of memory arrays)에 관한 것으로서, 보다 상세하게는 단일 제어기를 사용하여 집적 회로내에 포함된 다수의 어레이에 대한 내장 자체 검사(built-in self-test)에서 가변 데이타 워드 폭(variable data word width)과 어레이 깊이(array depth)를 처리하기 위한 방법 및 장치에 관한 것이다.
집적 회로의 내장 자체 검사는 회로가 그 자신을 검사할 수 있도록 집적 회로에 작은 논리 회로를 부가함으로써 달성된다. 이와같이 검사함으로써 집적 회로를 고속으로 검사할 수 있고, 종래의 방법들보다 철저하게 검사할 수 있게 된다.
메모리 어레이의 내장 자체 검사(ABIST)는 어레이가 칩상의 다른 회로에 의해 둘러싸여 그 칩의 입력 및 출력 패드로부터 그 어레이를 전체적으로 또는 부분적으로 직접 억세스(access)할 수 없을 때 어레이의 자체 검사를 가능하게 해준다. 종래의 ABIST 방식은 어레이의 경계에 배치된 스캐너블 래치(scannable latch)에 의존하고 있다. 이 래치는 기록 데이타, 판독 데이타, 및 기록 데이타와 판독 데이타에 대한 어드레스를 보유하고 있다. 전용 제어기를 사용하여 기록 데이타와 어드레스 데이타를 보내게 되며, 이 기록 데이타와 어드레스 데이타는 각각 어레이의 데이타 워드 폭과 어드레스 깊이에 따라 조정(tailor)된다.
집적 회로 칩 밀도가 증가함에 따라, 더 많은 메모리 어레이가 단일 칩내에 포함된다. 이들 메모리 어레이는 가변 데이타 워드 폭과 어드레스 크기를 가질 수 있다. 일반적으로는, 각각의 어레이에는 전용 제어기가 딸려 있다. 공간을 절약하기 위해, 칩상의 모든 메모리 어레이를 검사하는데 하나의 제어기를 사용하는 것이 바람직하다. 그러나, 종래의 제어기들은 일반적으로 다중 메모리 칩들(multiple memory chips)에 존재하는 가변 데이타 워드 폭과 어레이 크기를 처리할 수 없다.
따라서, 전자 산업에 있어서, 단일 제어기를 사용하여 집적 회로에 포함된 다수의 어레이에 대한 내장 자체 검사에서 가변 데이타 워드 폭과 어레이 깊이를 처리하는 장치 및 방법이 필요하게 되었다. 본 발명은 이것 및 다른 필요성에 대한 것이다.
상기한 종래 기술에서의 한계들을 극복하고, 이하의 기재 내용을 읽어가면서 이해하게 되면 즉시로 분명하게 되는 다른 한계점들을 극복하기 위하여, 본 발명은 단일 제어기를 사용하여 복수의 메모리 어레이를 검사하는 어레이 내장 자체 검사 시스템(array built-in self-test system)에서 가변 데이타 워드 폭 및 어레이 깊이를 처리하는 방법 및 장치에 대해 개시하고 있다.
본 발명은 칩내의 각각의 어레이에 전송되는 범용 길이 검사 데이타 워드(universal length test data word)를 제공함으로써 상기한 문제점들을 해결한다.
본 발명의 원리들에 따르면, 각각의 어레이는 소정의 행과 열 어드레스 깊이 및 데이타 워드 폭을 갖는다. 각각의 어레이는 또한 스캔 레지스터(scan register)를 포함한다. 가변 데이타 워드 폭 및 어레이 깊이를 처리하기 위해, 범용 검사 데이타 워드가 발생되어 각각의 어레이의 스캔 레지스터로 보내진다.
본 발명의 한 측면에 따르면, 검사 데이타 워드는 어레이의 최대 행 어드레스 깊이와 최대 열 어드레스 깊이에 따라 다른 길이를 갖는 어드레스 데이타 블럭을 포함한다.
본 발명의 다른 측면에 따르면, 한 실시예에서는 스캔 레지스터는 어드레스레지스터를 포함하고, 최대 행 어드레스 깊이보다 작은 행 어드레스 깊이 또는 최대 열 어드레스 깊이보다 작은 열 어드레스 깊이를 갖는 더미 래치(dummy latch)가 각각의 어레이의 어드레스 레지스터에 부가되어 있다. 다른 실시예에서는, 어드레스 데이타 블럭은 행 어드레스 레지스터에 부가되어 있다. 다른 실시예에서는, 어드레스 데이타 블럭은 행 어드레스 데이타 블럭과 열 어드레스 데이타 블럭을 포함하며, 스캔 레지스터는 행 어드레스 레지스터와 열 어드레스 레지스터를 포함하고 있다. 행 어드레스 데이타 블럭은 제1 라인을 따라 행 어드레스 레지스터로 보내지며, 열 어드레스 데이타 블럭은 제2 라인을 따라 열 어드레스 레지스터로 보내진다.
본 발명의 또다른 측면에 따르면, 검사 데이타는 어레이의 최대 데이타 워드 폭에 따라 다른 길이를 갖는 기록 데이타 블럭을 포함한다. 각각의 어레이의 스캔 레지스터는 종단점(end)을 갖는 기록 레지스터를 포함하며, 검사 데이타 워드가 각각의 어레이로 보내질 때, 기록 데이타 블럭의 일부가 최대 데이타 워드 폭보다 작은 데이타 워드 폭을 갖는 각각의 어레이내의 기록 레지스터의 종단점을 넘어서게 된다(fall off).
본 발명의 다른 측면에 따르면, 각각의 어레이는 판독 데이타를 보유하기 위한 판독 래치를 갖는다. 판독 데이타는 래치로부터 스캔되어 공지의 데이타와 패딩(pad)된다.
본 발명의 특징을 이루는 이들 및 여러가지 다른 잇점들과 새로운 특성들에 대해서는 여기에 첨부된 특허 청구 범위에서 자세하게 나열하고 있다. 그러나, 본 발명, 본 발명의 사용으로 얻어지는 그의 잇점 및 목적들을 더 잘 이해하기 위해서는, 본 명세서의 일부를 이루는 도면들과, 그에 따른 설명 부분을 참조하기 바라며, 여기에서는 본 발명의 특정 실시예에 대해 도시하였고 기술하고 있다.
제1도는 본 발명의 원리에 따른 어레이 내장 자체 검사 시스템(array built-in self-test system)의 일례를 설명하는 블럭선도.
제2도는 제1도에 도시된 제어기를 보다 상세히 설명하는 블럭선도.
제3a-1도 및 3a-2도는 제1도에 도시된 검사 데이타 워드(test data word)와 메모리 어레이(memory array)를 보다 상세히 설명하는 블럭선도.
제3b도는 제3a-1 및 3a-2도에 도시된 어레이의 메모리 블럭의 다이어그램.
제4a도 내지 4c도는 제1도에 도시된 검사 데이타 워드와 메모리 어레이의 다른 실시예를 설명하는 블럭선도.
제5도는 제1도에 도시된 어레이의 판독 래치(read latch)의 일례를 설명하는 블럭선도.
제6도는 제1도에 도시된 어레이의 판독 래치의 따른 일례를 설명하는 블럭선도.
제7a도 내지 7b도는 제1도의 시스템의 동작을 설명하는 흐름선도.
제8도는 제3a도에 도시된 어레이의 메모리 블럭 구성(memory block configuration)의 다른 일례를 설명하는 다이어그램.
〈도면의 주요부분에 대한 부호의 설명〉
10 : 칩 20 : 제어기
22 : 검사 데이타 발생기 28 : 데이타 비교 회로
30 : 어레이 31, 38 : 스캔 레지스터
35 : 논리 회로 50 : 검사 데이타 워드
이제, 유사한 참조 번호가 대응하는 부분을 나타내는 도면을 참조하면서 설명한다.
예시적인 실시예들에 대한 이하의 설명에서, 본 명세서의 일부를 이루고 있으며 본 발명의 특정 실시예를 설명의 목적상 도시하고 있는 첨부 도면을 참조하고 있다. 본 발명의 범위를 벗어나지 않고 구조를 변경함으로써 다른 실시예들을 사용할 수도 있음을 알아야 한다.
본 발명은 범용 길이 검사 데이타 워드를 발생하여 이 검사 데이타 워드를 칩내의 각각의 어레이에 전송하는 어레이 내장 자체 검사 시스템을 제공한다.
도 1은 본 발명의 어레이 내장 자체 검사(ABIST)을 블럭 형태로 도시한 것으로서, 실리콘으로 제조될 수도 있는 반도체 칩(10)상에 형성된 시스템의 주요 기능 요소를 도시하고 있다. 칩(10)은 자체 검사 제어기(20)과 인터페이스하는 복수의 내장된 어레이(embedded array; 30)을 포함하고 있다. 각각의 메모리 어레이(30)은 다수의 블럭을 포함하며, 각각의 블럭은 셀의 매트릭스(a matrix of cells)로 이루어져 있다. 셀의 어드레스는 행 어드레스와 열 어드레스에 의해 식별된다. 각각의 블럭내의 동일 셀들이 모여서 워드(word)를 형성한다. 이 워드의 폭, 즉 데이타 워드 폭은 이 어레이내의 블럭의 수에 해당한다. 어레이 블럭에서의 행의 수는 행 어드레스 깊이(row address depth)라고 하고, 어레이 블럭에서의 열의 수는 열 어드레스 깊이(column address depth)라고 하기로 한다. 게다가, 각각의 메모리 어레이는 다이나믹 랜덤 억세스 메모리(DRAM)이거나 스태틱 랜덤 억세스 메모리(SRAM)일 수 있다.
제어기(20)은 스캔 레지스터(31)을 통해 어레이(30)과 인터페이스하고 있다. 각각의 스캔 레지스터(31)은 일반적으로 판독/기록 제어 데이타, 어드레스 데이타와 기록 데이타를 보유하는 복수의 시프트 레지스터 래치를 포함하고 있다. 제어기(20)은 기록 데이타, 어드레스 데이타와 판독/기록 제어 데이타를 포함하는 검사 데이타 워드(50)을 발생하는 검사 데이타 발생기(22)를 제어한다. 검사 데이타 워드(50)은 또한 복수의 시프트 레지스터 래치에 보유될 수도 있으며, 라인(72)를 따라 직렬로 스캔 아웃(scan out)되어 병렬로 되어 있는 각각의 어레이의 스캔 레지스터(31)에 의해 직렬로 수신된다.
각각의 어레이(30)은 판독/기록 제어 데이타, 어드레스 데이타와 기록 데이타를 해석하기 위한 논리 회로(35)를 포함한다. 판독/기록 제어 데이타는 판독 동작을 행해야 할지 기록 동작을 행해야 할지를 제어한다. 판독/기록 제어 데이타가 기록 동작을 행해야 한다는 것을 나타내고 있으면, 스캔 레지스터(31)에 보유된 기록 데이타는 어드레스 데이타에 의해 식별된 어드레스로 기록된다. 판독/기록 제어 데이타가 기록 동작을 행해야 한다는 것을 나타내고 있으며, 식별된 어드레스에 저장된 워드가 병렬로 제2 스캔 레지스터(38)로 전송된다. 스캔 레지스터(38)은 그 다음에 데이타 비교 회로(28)로 라인(74)를 따라 스캔될 수도 있으며, 데이타 비교 회로(28)에서는 식별된 워드(identified word)를 검사하기 위해 판독 데이타를 기대된 데이타(expected data)와 비교하게 된다.
어레이 논리 회로(35)는 또한 어레이(30)의 어드레스 깊이보다 더 깊은 어드레스를 검출하기 위한 회로(32)를 더 포함할 수도 있다. 이러한 경계밖 어드레스(out-of-bounds address)가 검출되면, 어레이 논리 회로는 요청된 동작을 무시함으로써 어레이(30)이 식별되지 않은 어드레스(unidentified address)로 기록하거나 그로부터 판독하는 부주의한 일이 없도록 할 수 있다. 데이타 비교 회로(28)은 또한 경계밖 어드레스를 검출하기 위한 논리 회로를 포함하여 경계밖인 경우에 데이타 비교 동작을 무시할 수 있도록 할 수도 있다.
도 2로 가서 보면, 제어기(20)이 데이타 비교 오류(data miscomparison)가 발생한 경우에 어드레스 레지스터를 캡쳐(capture)하기 위한 하나 이상의 레지스터를 포함하는 오류 어드레스 회로(failed address circuit; 24)를 더 포함할 수도 있음을 알 수 있다. 제어기(20)은 또한 특정 어레이(30)이 내장 자체 검사에 합격하였는지 여부를 나타내는 데이타 비트를 보유하는 하나 이상의 래치를 포함하는 합격/불합격 회로(pass/fail circuit; 26)를 포함할 수도 있다. 공지된 바와 같이, 합격/불합격 비트와 오류 어드레스 레지스터(fail address register)는 진단을 위해 스캔 아웃될 수 있다.
도 3a는 도면 중 도 1에 도시된 검사 데이타 워드(50)과 메모리 어레이(30)을 보다 상세히 도시한 블럭선도이다. 간략함을 위해, 칩(10)은 단지 2개의 메모리 어레이만을 가지고 있는 것으로 도시되어 있다 : 메모리 어레이(30a), 8×2 어레이(각각이 2비트의 데이타 워드 폭을 갖는 8개의 워드를 포함하는 것을 의미함)와; 메모리 어레이(30b) 16×4 어레이. 어레이 블럭내의 셀의 매트릭스는 다수의 구성을 가질 수 있음에 주목한다. 도 3b에 도시한 예시적인 실시예에서, 어레이(30a)는 2×4 구성, 따라서 1비트의 행 어드레스 깊이와 2 비트의 열 어드레스 깊이를 가지는 블럭(36a)를 포함하고 있다. 어레이(30b)는 8×2 구성, 따라서 3 비트의 행 어드레스 깊이와 1 비트의 열 어드레스 깊이를 가지는 블럭(36b)를 포함하고 있는 것으로 도시되어 있다. 최대 행 어드레스 깊이, 즉 다른 어떤 어레이의 행 어드레스 깊이보다 크거나 같은 행 어드레스 깊이를 갖는 어레이의 행 어드레스 깊이는 3 비트이다. 최대 열 어드레스 깊이, 즉 다른 어떤 어레이의 열 어드레스 깊이보다 크거나 같은 열 어드레스 깊이를 갖는 어레이의 열 어드레스 깊이는 2 비트이다.
게다가, 이 예시적인 실시예에서, 최대 데이타 워드 폭, 즉 다른 어떤 어레이의 데이타 워드 폭보다 크거나 같은 데이타 워드 폭을 갖는 어레이의 데이타 워드 폭은 4 비트이다. 그러나, 여기에 설명한 어레이의 수 및 크기는 단지 예시적인 것이며 그에 의해 본 발명이 한정되는 것은 아니라는 것에 주목한다. 더 많은 어레이가 집적 회로상에 제공될 수도 있으며, 이 어레이들은 크기가 더 작거나 또는 더 클 수도 있다.
검사 데이타 워드(50)은 기록 데이타 블럭(52), 어드레스 데이타 블럭(54)와 판독/기록 데이타 블럭(56)을 포함하고 있다. 이 예시적인 실시예에서, 어드레스 데이타 블럭(54)는 제1 이진 어드레스 A0와 제2 이진 어드레스 A1을 식별하기 위한 복수의 데이타 비트를 포함하고 있다. 판독/기록 데이타 블럭(56)은 2개의 데이타 비트, 제1 어드레스 A0에 대해 수행할 동작을 가리키기 위한 제1 비트 RWA0와 제2 어드레스 A1에 대해 수행할 동작을 가리키기 위한 제2 비트 RWA1을 포함하고 있다. 어드레스 데이타 블럭(54)는 단지 하나의 이진 어드레스를 보유할 수 있으며, 판독/기록 데이타 블럭(56)은 단지 하나의 판독/기록 비트를 보유할 수 있음에 주목한다. 그러나, 각각의 검사 데이타 워드(50)과 함께 2개의 어드레스와 2개의 판독/기록 데이타 비트를 스캔 아웃(scan out)하는 것이 새로운 검사 데이타 워드(50)을 스캔 인(scan in)하는 것과 동시에 어레이로부터 판독 데이타를 스캔 아웃할 수 있기 때문에 검사 절차를 최적화하게 된다.
검사 데이타 워드(50)은 칩(10)상의 어떤 어레이(30)도 자신을 이용할 수 있도록 하기 위해 범용 길이를 갖는다. 예를 들면, 예시적인 실시예에서, 검사 데이타 워드(50)의 길이는 최대 행 및 열 어드레스 깊이와 최대 데이타 워드 폭에 따라 달라진다.
보다 상세히 말하면, 판독/기록 데이타 블럭(56)의 길이는 검사 데이타 워드(50)에서 보내게 되는 어드레스의 수에 따라 달라진다. 2개의 어드레스를 전송하는 경우에는, 판독/기록 데이타 블럭은 2비트를 포함한다. 어드레스 블럭(54)의 길이는 최대 행 및 열 어드레스 깊이에 따라 다르다. 2개의 어드레스를 전송하는 경우에, 어드레스 블럭(54)는 최대 행 어드레스 깊이와 최대 열 어드레스 깊이의 합의 2배와 등가인 길이를 갖는다. 이와 같이, 예시적인 실시예에서, 판독/기록 데이타 블럭(56)은 10개의 데이타 비트를 포함한다. 5개의 데이타 비트 AOR2-AOR0와 AOC1-AOC0는 제1 이진 어드레스 AO의 행 어드레스와 열 어드레스를 나타내며, 5개의 데이타 비트 A1R2-A1R0와 AlC1-AlC0는 제1 이진 어드레스 A1를 나타낸다. 참고로, 데이타 비트 AOR2, A1R2과 AOC1, A1C1은 각각 최상위 행 및 열 비트이고, 데이타 비트 AOR0, A1R0과 AOC0, A1C0은 각각 최하위 행 및 열 비트이다.
기록 데이타 블럭(52)의 길이는 최대 데이타 워드 길이에 따라 다르다. 이와 같이, 예시적인 실시예에서, 기록 데이타 블럭(52)는 4개의 기록 데이타 비트 W0-W3를 포함하고 있다. 검사 데이타 워드(50)은 기록 데이타 블럭(52)를 먼저 스캔 아웃한 다음에 어드레스 데이타 블럭(54)를, 그 다음에는 판독/기록 데이타 블럭(56)을 스캔 아웃하도록 배열되어 있다.
각각의 스캔 레지스터(31a, 31b)는 기록 레지스터(62a, 62b)에 직렬로 링크되어 있는 어드레스 레지스터(64a, 64b)에 직렬로 링크된 판독/기록 제어 데이타 레지스터(66a, 66b)를 포함하고 있다. 판독/기록 레지스터(66a, 66b)는 스캔 레지스터(31a, 31b)의 입력단쪽에 있고, 기록 레지스터(62a, 62b)는 그 반대쪽에 있다. 각각의 판독/기록 레지스터(66a, 66b)는 판독/기록 데이타 블럭(56) 데이타 비트를 보유하기 위한 2개의 판독/ 기록 래치(67a, 67b)를 포함하고 있다.
각각의 어드레스 레지스터(64a, 64b)는 어레이(30a)와 어레이(30b)에 대한 어드레스를 각각 식별하는데 필요한 어드레스 데이타 비트를 보유하기 위한 어드레스 래치(65a, 65b)를 포함하고 있다. 어레이(30a)만이 그의 어드레스 모두를 식별하기 위해 비트 AOR0, A1R0와 AOC0-AOC1, A1C0-A1C1를 이용할 뿐이고, 따라서 6개의 래치(65a)를 포함하고 있다. 어레이(30b)는 어드레스 비트 AOR0-AOR2, A1R0-A1R2과 AOC0, A1C0를 사용하며, 따라서 8개의 래치(65b)를 포함한다. 따라서, 어드레스 래치(65a, 69b)의 수는 어레이(30b)이 크기가 더 크기 때문에 2개의 어레이(30a, 30b)간에 서로 다르다. 어드레스 레지스터(64a, 64b)의 길이를 같게 함으로써 어드레스 데이타 비트가 기록 래치 레지스터(62a, 62b)내로 시프트되는 것을 방지하기 위해, 더미 래치(69a, 69b)가 어드레스 레지스터(64a, 64b)에 부가된다. 상세히 말하면, 어드레스 레지스터(64a)는 어레이(30a)의 어드레스를 식별하는데는 필요하지 않은 비트 AOR2, AOR1, A1R2과 A1R1를 보유하기 위하여 더미 래치(69a)와 패딩되어 있다. 마찬가지로, 어드레스 레지스터(64b)는 비트 AOC1와 A1C1을 보유하기 위하여 더미 래치(69b)와 패딩되어 있다.
검사 데이타 워드의 길이와 더미 래치의 수 및 위치는 어레이의 구성에 따라 변한다는 것에 주목한다. 예를 들어, 도 8의 다른 실시예에서 도시되어 있는 바와 같이, 어레이(30b)는 도 3b에 도시된 2×8 블럭보다는 오히려 4×4 블럭으로 이루어진 구성을 가질 수 있으며, 어레이(30a)는 여전히 2×4 블럭으로 이루어져 있을 수 있다. 이 실시예에서, 최대 행 어드레스 깊이는 2 비트이고, 최대 열 어드레스 깊이는 2 비트이다. 이와 같이, 2개의 어드레스를 보내기 위해, 검사 데이타 워드는 이 실시예에서는 이전의 실시예에서의 10 비트와는 달리 8 비트로 구성되기만 하면 된다. 게다가, 더미 래치의 수 및 위치는 이전의 실시예와 다르다. 상세히 말하면 어레이(30b)는 더미 래치를 필요로 하지 않으며, 어레이(30a)는 각각의 어드레스에서 최상위 행 어드레스 데이타 비트를 보유하기 위한 더미 래치 하나씩, 단지 2개의 더미 래치를 필요로 할 뿐이다.
다시 도 3a로 되돌아가서, 각각의 기록 레지스터(62a, 62b)는 어드레스에 기록되는 기록 데이타 비트를 보유하기 위한 기록 래치(63a, 63b)를 포함하고 있다. 어레이(30a)는 그의 데이타 워드 폭이 2 비트이기 때문에 검사를 위한 기록 데이타 중 2 비트만을 필요로 한다. 이와 같이, 어레이(30a)는 2개의 기록 래치(63a)를 포함하고 있다. 마찬가지로, 어레이(30b)는 기록 데이타 중 4 비트를 필요로 하며, 따라서 4개의 래치(63b)를 포함하고 있다. 따라서, 기록 래치(63a, 63b)의 수는 어레이(30b)의 데이타 워드 폭이 더 크기 때문에 2개의 어레이(30a, 30b)간에 서로 다르다. 기록 레지스터(62a)를 더미 래치와 패딩하지 않고 가변 데이타 워드 폭을 처리하기 위하여, 기록 래치(63a, 63b)는 각각 스캔 레지스터(31a, 31b)의 종단부에 위치한다. 이러한 배치에서는, 최대 데이타 워드 폭보다 작은 데이타 워드 폭을 갖는 어레이에서, 기록 데이타는 스캔 레지스터의 종단점을 넘어서게 된다. 예를 들어, 검사 데이타 워드(50)이 스캔 레지스터(31a)내로 스캔될 때, 첫번째 2개의 검사 데이타 비트 W3와 W2는 스캔 레지스터(31a)의 종단점을 넘어서게 된다. 기록 데이타 비트 W1와 W0는 여전히 스캔 레지스터(31a)내에 있고 그 어레이를 검사하는데 사용하기 위해 기록 래치(63a)에 의해 보유되어 있다.
어드레스 레지스터(64a, 64b)의 위치가 각각의 스캔 레지스터(31a, 31b)에서 판독/기록 레지스터(66a, 66b)와 교환되기만 하면, 검사 데이타 워드(50)은 판독/기록 데이타 블럭(56)이 어드레스 데이타 블럭(54)이전에 스캔 아웃되도록 배열될 수 있다는 것에 주목한다. 게다가, 스캔 레지스터(31)이 적절히 배열되어 더 작은 어레이의 기록 래치가 더미 기록 래치와 패딩되기만 하면, 기록 데이타 블럭(52)가 먼저 스캔될 필요가 없다. 게다가, 어드레스 데이타 블럭(54)내의 도시된 어드레스 데이타 비트의 배열은 단지 예시적인 것일 뿐이며, 각각의 어레이의 스캔 레지스터가 적절히 와이어링(wire)되고 패딩되어 있는 한 변할 수도 있음에 주목한다.
도 4는 도면 중 도 1에 도시된 검사 데이타 워드(50)과 메모리 어레이(30)의 다른 구성을 도시한 블럭선도이다. 검사 데이타 워드(50)은 3개의 데이타 워드(50a, 50b, 50c)로 나누어져 있다. 데이타 워드(50a)는 기록 데이타 블럭(52)와 판독/기록 데이타 블럭(56)을 포함하고 있다. 어드레스 데이타 블럭(54)는 열 어드레스 데이타 블럭(54')과 행 어드레스 데이타 블럭(54")으로 나누어져 있다. 데이타 워드(50b)는 열 어드레스 데이타 블럭(54')을 보유하며, 데이타 워드(50c)는 행 어드레스 데이타 블럭(54")을 보유하고 있다. 데이타 워드(50a)는 제1 라인(72a)상으로 스캔 아웃되고, 데이타 워드(50b)는 제2 라인(72b)상으로 스캔 아웃되며, 데이타 워드(50c)는 제3 라인(72c)를 따라 스캔 아웃된다. 데이타 워드(50a)는 기록 데이타 블럭(52)가 먼저 스캔 아웃된 다음에 판독/기록 블럭(56)이 스캔 아웃되도록 배열되어 있다. 데이타 워드(50a, 50b, 50c)는 병렬로 스캔 아웃될 수 있으며, 따라서 검사 데이타 워드(50)을 어레이(30)내로 전송하는데 필요한 스캔 시프트이 수(the number of scan shifts)를 짧게 할 수 있다. 예를 들면, 검사 데이타 워드(50)을 단일 라인 상으로 스캔 아웃하기 위하여는, 16개의 스캔 시프트가 요구된다. 그러나, 이 실시예에서는, 단지 6개의 스캔 시프트가 필요하다. 이와 같이, 다중 스캔-출력 라인들은 일반적으로 ABIST 검사를 보다 빠르게 수행할 수 있도록 해준다.
라인(72a-72c)를 수신하기 위해, 각각의 스캔 레지스터(31a, 31b)는 3개의 레지스터로 나누어져 있다. 레지스터(33a, 33b)는 라인(72a)를 수신하며, 판독/기록 레지스터(66a, 66b)와 이 다음에 직렬로 링크된 기록 레지스터(62a, 62b)를 포함하고 있다. 스캔 레지스터(34a, 34b)는 열 어드레스 레지스터(64a', 64b')을 포함하며, 라인(72b)를 수신한다. 스캔 레지스터(35a, 35b)는 행 어드레스 레지스터(64a", 64b")을 포함하며, 라인(72c)를 수신한다.
이전의 실시예와 마찬가지로, 기록 레지스터(62a)는 2개의 래치(63a)를 포함하며, 기록 레지스터(62b)는 4개의 래치(63b)를 포함한다. 게다가, 기록 레지스터(62a, 62b)는 레지스터(33a, 33b)의 종단부에 각각 위치하고 있으며, 따라서 어레이(30a)에서, 기록 데이타는 레지스터(33a)의 종단점을 넘어서게 된다.
열 어드레스 레지스터(64a', 64b')의 4개의 어드레스 래치(65a)와 2개의 어드레스 래치(65b)를 각각 포함하고 있다. 행 어드레스 레지스터(64a", 64b")은 2개의 어드레스 래치(65a)와 6개의 어드레스 래치(65b)를 각각 포함하고 있다. 그러나, 이전의 실시예와는 달리, 어드레스 레지스터(64a', 64b'과 64a", 64b")은 더미 래치와 패딩되어 있지는 않다. 그 대신에, 어드레스 데이타 비트는 어드레스 데이타 블럭(54', 54")내의 비트들이 최상위 비트에서 시작하여 교대로(in an alternating sequence) 스캔 아웃되도록 배열되어 있다. 열 어드레스 데이타 블럭(54')내에서, 제2 어드레스 A1의 최상위 열 어드레스 비트가 먼저 스캔 아웃되고, 그 다음에 제1 어드레스 A0의 최상위 열 어드레스 비트가, 그 다음에는 제2 어드레스 A1의 두번째 최상위 열 어드레스 비트(the second most significant column address bit)가 스캔 아웃되며, 이하도 마찬가지이다. 행 어드레스 데이타 블럭(54")내에서, 제2 어드레스 A1의 최상위 행 어드레스 비트가 먼저 스캔 아웃되고, 그 다음에 제1 어드레스 A0의 최상위 행 어드레스 비트가, 그 다음에는 제2 어드레스 A1의 두번째 최상위 행 어드레스 비트(the second most significant row address bit)가 스캔 아웃되며, 이하도 마찬가지이다.
예를 들어, 예시적인 실시에에서, 열 어드레스 데이타 블럭(54')은 다음과 같이 스캔 아웃되도록 배열되어 있다 : A1C1, A0C1, A1C0, A0C0. 최상위 비트를 먼저 보냄으로써, 더 작은 어레이에서는, 최상위 비트가 어드레스 레지스터의 종단점을 넘어서게 되며, 어드레스를 식별하는데 필요한 어드레스 비트만이 남아있게 된다. 예를 들어, 열 어드레스 레지스터(64b')에서, 비트 A0C0와 A1C0은 래치(65a)에 보유되어 있는 반면, 비트 A0C1와 A1C1은 떨어져 나간다.
다중 스캔 아웃 라인을 사용하는 다른 실시예들에서는, 판독/기록 데이타 블럭(56)을 어드레스 데이타 블럭(54' 또는 54") 중 어느 하나보다 나중에 스캔 아웃될 수 있음에 주목한다. 게다가, 대응하는 기록 레지스터 또는 어드레스 레지스터가 스캔 레지스터(31a, 31b)내에 적절히 배열되고 더미 래치와 패딩되어 있다면, 판독/기록 데이타 블럭(56)은 데이타 블럭(52) 또는 어드레스 데이타 블럭(54' 또는 54")중 어느 하나보다 이전에 스캔 아웃될 수 있다. 게다가, 어드레스 레지스터가 더미 래치를 구비하고 있다면, 어드레스 데이타 블럭(54', 54")내에서 비트들은 임의의 순서로 배열될 수 있음을 알아야 한다.
도 5 및 도 6은 어떻게 판독 데이타가 스캔 레지스터로부터 제어기(20)으로 스캔될 수 있는지를 설명한다. 각각의 어레이(30)은 복수의 판독 래치를 갖는 스캔 레지스터(38)을 포함하며, 그 수는 어레이의 데이타 워드 폭에 해당한다. 판독/기록 제어 데이타가 판독 명령을 나타내고 있을 때는, 어레이 논리 회로(35)는 식별된 어드레스로부터 라인(93)을 거쳐 스캔 레지스터(38)로 판독 데이타를 병렬로 업로드(upload)한다.
스캔 레지스터(38)은 그 다음에 검사 데이타 워드(50)의 스캔 아웃과 동시에 라인(74)를 따라 제어기(20)으로 스캔될 수 있다. 검사 데이타 워드(50)을 스캔 인하는데 필요한 스캔 시프트의 수는 일반적으로 스캔 레지스터(38)의 판독 래치를 스캔 아웃하는데 필요한 스캔 시프트의 수보다 크다는 것을 알아야 한다. 예를 들어, 어레이(30a)는 스캔 레지스터(38)을 스캔 아웃하는데 2개의 스캔 시프트를 요구하지만, 검사 데이타 워드(50)를 한 라인을 따라 스캔 아웃하는 경우에는, 16개의 스캔 시프트가 규칙적으로 보내진다(pulsed).
여분의 스캔 시프트(extra scan shift)를 설명하기 위해, 제어기(20)내로 스캔된 데이타 경로는 공지된 데이타와 패딩될 수 있다. 패딩된 데이타는 도 5에 도시한 바와 같이 피드백 루프(97)을 사용함으로써 제공될 수 있다. 피드백 루프(97)은 라인(74)를 따라 스캔 아웃된 각각의 판독 데이타 비트를 다시 레지스터(38)의 제1 판독 래치내로 입력한다.
도 6에 도시된 바와 같이, 패딩된 데이타는 그 대신에 2개의 입력 라인(242, 243)과 출력 라인(236)을 갖는 멀티플렉서(mux; 240)을 사용하여 제공될 수 있다. 입력 라인(242)는 0에 결합될 수도 있고 입력 라인(243)은 1에 결합될 수도 있다. 어레이(30)으로부터의 제어 신호(241)은 멀티플렉서(240)의 출력 신호(236)을 제어한다. 출력 신호(236)은 직렬로 판독 래치(38)내로 스캔되며, 따라서 판독 데이타를 공지된 데이타와 패딩하게 된다. 0과 1 모두를 사용함으로써 완전한 오류 검사 능력(full fault test capability)이 가능하게 된다. 즉 판독 래치가 적절하게 천이(transition)되도록 한다.
도 7을 참조하면, 본 발명은 한 검사 사이클을 통해 그의 동작에 대해서 더 설명하고 있다. 제어기(20)은 먼저 블럭(98)로 나타낸 바와 같이 검사 데이타 워드(50)을 발생한다. 검사 데이타 워드(50)은 그 다음에 블럭(102)로 나타낸 바와 같이 각각의 어레이의 기록, 어드레스 및 판독/기록 래치로 직렬로 스캔 아웃된다. 그와 동시에 이전에 블럭(114)에서 판독 데이타 래치로 로드된 판독 데이타는 블럭(120)에서 나타낸 바와 같이 제어기로 스캔될 수 있다.
블럭(104)에서, 검사 데이타 워드(50)이 제어기(20)으로부터 스캔되고 판독 래치가 제어기로 스캔된 이후에, 어레이는 제어기(20)에 의해 인에이블된다. 블럭(106)에서, 제어기(20)은 제1 클럭 펄스를 인가한다. 블럭(108)에서 나타낸 바와 같이, 각각의 어레이는 현재의 클럭 펄스 동안에 판독/기록 제어 데이타 블럭(52)와 대응하는 어드레스 데이타 블럭(54)를 다운로드한다.
어드레스 블럭(54)에 의해 식별된 어드레스가 어레이의 최대 어드레스보다 더 큰 경우에는, 검출 회로(32)는 그 어레이에서 판독/기록 동작이 수행되지 않도록 하며, 결정 블럭(110)에서 나타낸 바와 같이 시스템은 블럭(118)로 이동한다. 어드레스가 경계내에 있는 경우에는, 결정 블럭(110, 112)에서 나타낸 바와 같이 어레이는 요청된 동작이 판독 동작인지 기록 동작인지를 결정한다.
판독/기록 비트가 판독 동작을 가리키는 경우에는, 결정 블럭(112)와 블럭(114)에 의해 나타낸 바와 같이 어레이는 특정 어드레스로부터의 판독 데이타를 그의 판독 래치로 로드한다. 판독/기록 비트가 기록 동작을 나타내는 경우에는, 결정 블럭(112)와 블럭(116)에서 나타낸 바와 같이 어레이는 기록 데이타를 특정 어드레스로 기록한다.
판독 또는 기록 동작이 수행된 이후에, 동작은 결정 블럭(118)로 진행하고, 그곳에서 2개의 클럭 펄스가 인가되었는지를 판정한다. 2개의 클럭 펄스가 발생하지 않은 경우에는, 동작은 블럭(106)으로 루프백(loop back)되고, 그곳에서 제2 클럭 펄스가 인가된다. 2개의 클럭 펄스가 인가된 경우에는, 어레이는 디스에이블되고, 동작은 블럭(98)로 루프백되고 그곳에서 새로운 검사 데이타가 발생되고 동작이 반복된다.
상기한 실시예들은 예시적인 것이다. 물론, 본 발명의 범위 또는 정신을 벗어나지 않고 이상에서 논의한 실시예들에 여러가지 변경 및 부가를 행할 수 있음을 알아야 한다. 따라서, 본 발명의 범위는 이상 논의한 특정 실시예들에 한정되지 않으며 첨부된 특허 청구의 범위의 완전하고 정당한 범위에 의해서만 한정되어야 한다.

Claims (30)

  1. 단일 제어기를 사용하여 스캔 레지스터를 각각 포함하고 있는 복수의 메모리 어레이를 검사하기 위한 어레이 내장 자체 검사 시스템에서 가변 데이타 워드 폭과 어레이 깊이를 처리하는 방법(A method for handling variable data word widths and array depth in an array built-in self-test system)에 있어서, (a) 상기 제어기를 사용하여 범용 길이 검사 데이타 워드(universal length test data word)를 발생하는 단계 및; (b) 상기 제어기를 사용하여 상기 검사 데이타 워드를 각각의 어레이의 상기 스캔 레지스터로 전송하는 단계를 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  2. 제1항에 있어서, 상기 각각의 어레이는 선정된 행 어드레스 깊이와 열 어드레스 깊이(a predetermined row address depth and column address depth)를 가지며, 적어도 하나의 어레이는 최대 열 어드레스 깊이를 가지며, 적어도 하나의 어레이는 최대 행 어드레스 깊이를 가지되, 상기 검사 데이타 워드의 길이는 상기 최대 열 어드레스 깊이와 상기 최대 행 어드레스 깊이에 따라 달라지는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  3. 제2항에 있어서, 상기 검사 데이타 워드는 행 어드레스 데이타 블럭과 열 어드레스 데이타 블럭을 포함하고, 각각의 스캔 레지스터는 종단점(end)을 갖는 행 어드레스 레지스터와 종단점을 갖는 열 어드레스 레지스터를 포함하며, 상기 전송 단계 (b)는 상기 최대 행 어드레스 깊이보다 작은 행 어드레스 깊이를 갖는 각각의 어레이에서 상기 행 어드레스 데이타 블럭의 일부를 상기 행 어드레스 레지스터 종단점을 벗어나게 시프트시키고, 상기 최대 열 어드레스 깊이보다 작은 열 어드레스 깊이를 갖는 각각의 어레이에서 상기 열 어드레스 데이타 블럭의 일부를 상기 열 어드레스 레지스터 종단점을 벗어나게 시프트시키는 단계를 더 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  4. 제3항에 있어서, 상기 검사 데이타 워드는 기록 데이타 블럭을 더 포함하고 상기 스캔 레지스터는 기록 레지스터를 더 포함하며, 상기 전송 단계 (b)는 상기 기록 데이타 블럭을 제1 라인을 따라 상기 기록 레지스터로 스캔(scan)하는 단계, 상기 행 어드레스 데이타 블럭을 제2 라인을 따라 상기 행 어드레스 레지스터로 스캔하는 단계, 및 상기 열 어드레스 데이타 블럭을 제3 라인을 따라 상기 열 어드레스 레지스터로 스캔하는 단계를 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  5. 제3항에 있어서, 상기 행 어드레스 데이타 블럭과 열 어드레스 데이타 블럭은 각각 최상위 비트를 포함하고, 상기 행 어드레스 데이타 블럭을 상기 행 어드레스 레지스터로 전송하되 최상위 행 어드레스 비트를 먼저 전송하고, 상기 열 어드레스 데이타 블럭을 상기 열 어드레스 레지스터로 전송하되 최상위 열 어드레스 비트를 먼저 전송하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  6. 제5항에 있어서, 상기 행 어드레스 데이타 블럭내의 데이타와 상기 열 어드레스 데이타 블럭내의 데이타가 교대로(in an alternating sequence) 전송되는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  7. 제1항에 있어서, 각각의 어레이는 선정된 데이타 워드 폭을 가지며, 적어도 하나의 어레이는 최대 데이타 워드 폭을 가지되, 상기 검사 데이타 워드의 길이는 상기 최대 데이타 워드 폭에 따라 달라지는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  8. 제7항에 있어서, 상기 검사 데이타 워드는 기록 데이타 블럭을 포함하고, 각각의 스캔 레지스터는 종단점을 갖는 기록 레지스터를 포함하며, 상기 전송 단계 (b)는 상기 최대 데이타 워드 폭보다 작은 데이타 워드 폭을 갖는 각각의 어레이에서 상기 기록 데이타 블럭의 일부를 상기 종단점을 벗어나게 시프트시키는 단계를 더 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  9. 제2항에 있어서, 각각의 어레이는 선정된 데이타 워드 폭을 가지며, 적어도 하나의 어레이는 최대 데이타 워드 폭을 가지되, 상기 검사 데이타 워드의 길이는 상기 최대 행 어드레스 깊이, 상기 최대 열 어드레스 깊이, 및 상기 최대 데이타 워드 폭에 따라 달라지는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  10. 제9항에 있어서, 상기 검사 데이타 워드는 어드레스 데이타 블럭과 기록 데이타 블럭을 포함하고, 각각의 스캔 레지스터는 어드레스 레지스터에 직렬로 링크된 기록 레지스터를 포함하며, 상기 전송 단계 (b)는 상기 기록 데이타 블럭과 상기 어드레스 데이타 블럭을 단일 입력 라인을 따라 상기 스캔 레지스터로 직렬로 스캔(serially scan)하는 단계를 더 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  11. 제10항에 있어서, 상기 스캔 레지스터는 종단점을 포함하며, 상기 직렬로 스캔하는 단계는 상기 기록 데이타 블럭의 일부분은 상기 최대 데이타 워드 폭보다 작은 데이타 워드폭을 갖는 각각의 어레이의 스캔 레지스터의 종단점을 벗어나게 시프트하는 단계를 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  12. 제10항에 있어서, 각각의 어드레스 레지스터는 길이를 가지며, 상기 최대 행 어드레스 깊이보다 작은 행 드레스 깊이를 갖는 각각의 어레이의 어드레스 레지스터에 더미 래치(dummy latch)를 부가하고, 상기 최대 열 어드레스 깊이보다 작은 열 어드레스 깊이를 갖는 각각의 어레이의 어드레스 레지스터에 더미 래치를 부가하여, 상기 더미 래치가 각각의 어레이에 같은 길이의 어드레스 레지스터(equal length address register)를 제공하게 되는 단계; 및 상기 더미 래치를 채우기(fill) 위해 상기 어드레스 데이타 블럭을 더미 데이타 비트(dummy data bit)와 패딩(pad)하는 단계를 더 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  13. 제1항에 있어서, 각각의 메모리 어레이는 판독 데이타를 보유할 수 있는 판독 래치를 포함하며, 상기 판독 래치로부터 판독 데이타를 스캔하는 단계; 및 상기 판독 데이타를 공지된 데이타와 패딩하는 단계를 더 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  14. 제13항에 있어서, 상기 패딩 단계는 상기 판독 데이타의 적어도 일부를 상기 판독 래치를 통해 반복하는 단계를 더 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  15. 제1항에 있어서, 상기 검사 데이타 워드는 동작을 수행하게 될 해당 어드레스를 식별하고, 각각의 어레이에 대해 상기 식별된 어드레스가 상기 어레이의 어드레스 깊이를 초과하는 지를 판정하는 단계를 더 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 방법.
  16. 단일 제어기를 사용하여 스캔 레지스터(scan register)를 각각 포함하고 있는 복수의 메모리 어레이를 검사하기 위한 어레이 내장 자체 검사 시스템(array built-in self-test system)에서 가변 데이타 워드 폭(variable data word width)과 어레이 깊이(array depth)를 처리하는 장치에 있어서, 범용 길이 검사 데이타 워드(universal length test data word)를 발생하는 검사 데이타 발생기; 및 상기 검사 데이타 워드를 각각의 어레이의 상기 스캔 레지스터로 전송하는 수단을 구비하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  17. 제16항에 있어서, 상기 각각의 어레이는 선정된 행 어드레스 깊이와 열 어드레스 깊이(a predetermined row address depth and column address depth)를 가지며, 적어도 하나의 어레이는 최대 열 어드레스 깊이를 가지며, 적어도 하나의 어레이는 최대 행 어드레스 깊이를 가지되, 상기 검사 데이타 워드의 길이는 상기 최대 열 어드레스 깊이와 상기 최대 행 어드레스 깊이에 따라 달라지는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  18. 제17항에 있어서, 상기 검사 데이타 워드는 행 어드레스 데이타 블럭과 열 어드레스 데이타 블럭을 포함하고, 각각의 스캔 레지스터는 종단점(end)을 갖는 행 어드레스 레지스터와 종단점을 갖는 열 어드레스 레지스터를 포함하며, 상기 전송 수단은 상기 최대 행 어드레스 깊이보다 작은 행 어드레스 깊이를 갖는 각각의 어레이에서 상기 행 어드레스 데이타 블럭의 일부를 상기 행 어드레스 레지스터 종단점을 벗어나게 시프트시키고, 상기 최대 열 어드레스 깊이보다 작은 열 어드레스 깊이를 갖는 각각의 어레이에서 상기 열 어드레스 데이타 블럭의 일부를 상기 열 어드레스 레지스터 종단점을 벗어나게 시프트시키는 시프트 수단을 더 구비하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  19. 제18항에 있어서, 상기 검사 데이타 워드는 기록 데이타 블럭을 더 포함하고 상기 스캔 레지스터는 기록 레지스터를 더 포함하며, 상기 전송 수단은 상기 기록 데이타 블럭을 상기 기록 레지스터로 전송하는 제1 라인, 상기 행 어드레스 데이타 블럭을 상기 행 어드레스 레지스터로 전송하는 제2 라인, 및 상기 열 어드레스 데이타 블럭을 상기 열 어드레스 레지스터로 전송하는 제3 라인을 구비하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  20. 제18항에 있어서, 상기 행 어드레스 데이타 블럭과 열 어드레스 데이타 블럭은 각각 최상위 비트를 포함하고, 상기 행 어드레스 데이타 블럭을 상기 행 어드레스 레지스터로 전송하되 최상위 행 어드레스 비트를 먼저 전송하고, 상기 열 어드레스 데이타 블럭을 상기 열 어드레스 레지스터로 전송하되 최상위 열 어드레스 비트를 먼저 전송하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  21. 제20항에 있어서, 상기 행 어드레스 데이타 블럭내의 데이타와 상기 열 어드레스 데이타 블럭내의 데이타가 교대로(in an alternating sequence) 전송되는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  22. 제16항에 있어서, 각각의 어레이는 선정된 데이타 워드 폭을 가지며, 적어도 하나의 어레이는 최대 데이타 워드 폭을 가지되, 상기 검사 데이타 워드의 길이는 상기 최대 데이타 워드 폭에 따라 달라지는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  23. 제22항에 있어서, 상기 검사 데이타 워드는 기록 데이타 블럭을 포함하고, 각각의 스캔 레지스터는 종단점을 갖는 기록 레지스터를 포함하며, 상기 전송 수단은 상기 최대 데이타 워드 폭보다 작은 데이타 워드 폭을 갖는 각각의 어레이에서 상기 기록 데이타 블럭의 일부를 상기 종단점을 벗어나게 시프트시키는 시프트 수단을 구비하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  24. 제16항에 있어서, 각각의 어레이는 선정된 데이타 워드 폭을 가지며, 적어도 하나의 어레이는 최대 데이타 워드 폭을 가지되, 상기 검사 데이타 워드의 길이는 상기 최대 행 어드레스 깊이, 상기 최대 열 어드레스 깊이, 및 상기 최대 데이타 워드 폭에 따라 달라지는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  25. 제24항에 있어서, 상기 검사 데이타 워드는 어드레스 데이타 블럭과 기록 데이타 블럭을 포함하고, 각각의 스캔 레지스터는 어드레스 레지스터에 직렬로 링크된 기록 레지스터를 포함하며, 상기 전송 수단은 상기 기록 데이타 블럭과 상기 어드레스 데이타 블럭을 상기 스캔 레지스터로 전송하는 단일 입력 라인을 구비하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  26. 제25항에 있어서, 상기 스캔 레지스터는 종단점을 포함하며, 상기 전송 수단은 상기 기록 데이타 블럭의 일부분을 상기 최대 데이타 워드 폭보다 작은 데이타 워드 폭을 갖는 각각의 어레이의 스캔 레지스터의 종단점을 벗어나게 시프트하는 시프트 수단을 구비하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  27. 제23항에 있어서, 각각의 어드레스 레지스터는 길이를 가지며, 상기 최대 행 어드레스 깊이보다 작은 행 어드레스 깊이를 갖는 각각의 어레이의 어드레스 레지스터는 더미 래치(dummy latch)를 구비하고, 상기 최대 열 어드레스 깊이보다 작은 열 어드레스 깊이를 갖는 각각의 어레이에서 어드레스 레지스터는 더미 래치를 구비함으로써, 모든 어드레스 레지스터의 길이가 같도록 하고, 상기 어드레스 데이타 블럭은 상기 더미 래치를 채우기(fill) 위한 더미 데이타 비트(dummy data bit)를 포함하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  28. 제16항에 있어서, 각각의 메모리 어레이는 판독 데이타를 보유할 수 있는 판독 래치를 포함하며, 상기 판독 래치로부터 판독 데이타를 스캔하는 스캔 수단; 및 상기 판독 데이타를 공지된 데이타와 패딩하는 패딩 수단을 더 구비하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  29. 제28항에 있어서, 상기 패딩 수단은 상기 판독 데이타의 적어도 일부를 상기 판독 래치를 통해 반복하는 피드백 수단을 구비하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
  30. 제16항에 있어서, 상기 검사 데이타 워드는 동작을 수행하게 될 해당 이진 어드레스를 포함하고, 각각의 어레이에 대해 상기 식별된 어드레스가 상기 어레이의 어드레스 깊이를 초과하는지를 판정하는 판정 수단을 더 구비하는 어레이 내장 자체 검사 시스템에서의 가변 데이타 워드 폭 및 어레이 깊이 처리 장치.
KR1019970015606A 1996-06-28 1997-04-25 직렬 공유 abist 방식에서 가변 데이타 워드 폭 및 어레이 깊이를 처리하는 방법 및 장치 KR100239015B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/673,258 US5835502A (en) 1996-06-28 1996-06-28 Method and apparatus for handling variable data word widths and array depths in a serial shared abist scheme
US08/673,258 1996-06-28
US8/673,258 1996-06-28

Publications (2)

Publication Number Publication Date
KR980003623A KR980003623A (ko) 1998-03-30
KR100239015B1 true KR100239015B1 (ko) 2000-01-15

Family

ID=24701925

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970015606A KR100239015B1 (ko) 1996-06-28 1997-04-25 직렬 공유 abist 방식에서 가변 데이타 워드 폭 및 어레이 깊이를 처리하는 방법 및 장치

Country Status (3)

Country Link
US (1) US5835502A (ko)
JP (1) JP3873130B2 (ko)
KR (1) KR100239015B1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0837474B1 (en) * 1996-10-17 2005-02-02 STMicroelectronics S.r.l. Method for optimising a memory cell matrix for a semiconductor integrated microcontroller
US6041388A (en) * 1996-12-11 2000-03-21 Cypress Semiconductor Corporation Circuit and method for controlling memory depth
US6694461B1 (en) * 1999-07-26 2004-02-17 Ati International Srl System and method for testing integrated memories
US6675335B1 (en) * 1999-12-29 2004-01-06 Advanced Micro Devices, Inc. Method and apparatus for exercising external memory with a memory built-in self-test
US6658610B1 (en) 2000-09-25 2003-12-02 International Business Machines Corporation Compilable address magnitude comparator for memory array self-testing
US6430096B1 (en) 2000-11-01 2002-08-06 International Business Machines Corporation Method for testing a memory device with redundancy
US6662133B2 (en) * 2001-03-01 2003-12-09 International Business Machines Corporation JTAG-based software to perform cumulative array repair
US6993692B2 (en) * 2003-06-30 2006-01-31 International Business Machines Corporation Method, system and apparatus for aggregating failures across multiple memories and applying a common defect repair solution to all of the multiple memories
US7536613B2 (en) * 2004-05-11 2009-05-19 International Business Machines Corporation BIST address generation architecture for multi-port memories
US7366953B2 (en) 2004-12-09 2008-04-29 International Business Machines Corporation Self test method and apparatus for identifying partially defective memory

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3961254A (en) * 1974-12-20 1976-06-01 International Business Machines Corporation Testing embedded arrays
US4234934A (en) * 1978-11-30 1980-11-18 Sperry Rand Corporation Apparatus for scaling memory addresses
US4675808A (en) * 1983-08-08 1987-06-23 American Telephone And Telegraph Company At&T Bell Laboratories Multiplexed-address interface for addressing memories of various sizes
JPS63197151A (ja) * 1987-02-12 1988-08-16 Hitachi Ltd シリアルデ−タ転送方式
US4873671A (en) * 1988-01-28 1989-10-10 National Semiconductor Corporation Sequential read access of serial memories with a user defined starting address
JP2638091B2 (ja) * 1988-06-24 1997-08-06 ソニー株式会社 データ伝送方法
JPH0242699A (ja) * 1988-08-01 1990-02-13 Oki Electric Ind Co Ltd 半導体メモリ回路
US5237672A (en) * 1989-07-28 1993-08-17 Texas Instruments Incorporated Dynamically adaptable memory controller for various size memories
US5210839A (en) * 1990-12-21 1993-05-11 Sun Microsystems, Inc. Method and apparatus for providing a memory address from a computer instruction using a mask register
US5404474A (en) * 1992-01-10 1995-04-04 Digital Equipment Corporation Apparatus and method for addressing a variable sized block of memory
US5396608A (en) * 1993-06-28 1995-03-07 Analog Devices, Inc. Method and apparatus for accessing variable length words in a memory array
EP0632467A1 (en) * 1993-06-30 1995-01-04 International Business Machines Corporation Integrated circuit with a processor-based abist circuit

Also Published As

Publication number Publication date
KR980003623A (ko) 1998-03-30
JP3873130B2 (ja) 2007-01-24
JPH10106300A (ja) 1998-04-24
US5835502A (en) 1998-11-10

Similar Documents

Publication Publication Date Title
US5568437A (en) Built-in self test for integrated circuits having read/write memory
EP0385591B1 (en) Serial testing technique for embedded memories
KR0174340B1 (ko) 매립 논리 회로 검사 시스템 및 그 검사 방법과 집적 회로 칩
US6668347B1 (en) Built-in self-testing for embedded memory
US6587979B1 (en) Partitionable embedded circuit test system for integrated circuit
US5331643A (en) Self-testing logic with embedded arrays
KR0134751B1 (ko) 테스트 결과 신호를 유지하기 위한 레지스터를 가진 반도체 메모리 장치
US5475815A (en) Built-in-self-test scheme for testing multiple memory elements
JP2525945B2 (ja) メモリのチェッカボ―ド自己試験装置および方法
EP0118704B1 (en) Integrated circuit device and method of diagnosing the same
JPS63102098A (ja) 集積回路
KR100239015B1 (ko) 직렬 공유 abist 방식에서 가변 데이타 워드 폭 및 어레이 깊이를 처리하는 방법 및 장치
EP0469238B1 (en) Reduced delay circuits for shift register latch scan strings
US4912395A (en) Testable LSI device incorporating latch/shift registers and method of testing the same
US6453436B1 (en) Method and apparatus for improving transition fault testability of semiconductor chips
JPH09128998A (ja) テスト回路
US5442640A (en) Test and diagnosis of associated output logic for products having embedded arrays
US7134058B2 (en) Memory circuit scan arrangement
KR940002904B1 (ko) 데이타 처리 시스템 및 이 시스템에 있어서의 다수 메모리 어레이 테스팅 방법
US6327683B1 (en) Device scan testing
KR100301980B1 (ko) 테스트회로
KR100771263B1 (ko) 메모리 어레이 테스트 방법과 이를 구현하기 위해 배열된메모리 기반 디바이스
JP3479653B2 (ja) テスト装置
US6175524B1 (en) Merged memory and logic (MML) integrated circuit devices including buffer memory and methods of detecting errors therein
KR20050041706A (ko) 반도체 테스트 장치

Legal Events

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

Payment date: 20031006

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee