KR100364830B1 - 메모리테스트회로 - Google Patents

메모리테스트회로 Download PDF

Info

Publication number
KR100364830B1
KR100364830B1 KR10-1998-0703541A KR19980703541A KR100364830B1 KR 100364830 B1 KR100364830 B1 KR 100364830B1 KR 19980703541 A KR19980703541 A KR 19980703541A KR 100364830 B1 KR100364830 B1 KR 100364830B1
Authority
KR
South Korea
Prior art keywords
output
signal
circuit
address
memory
Prior art date
Application number
KR10-1998-0703541A
Other languages
English (en)
Other versions
KR19990067519A (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 KR19990067519A publication Critical patent/KR19990067519A/ko
Application granted granted Critical
Publication of KR100364830B1 publication Critical patent/KR100364830B1/ko

Links

Classifications

    • 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
    • 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/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/20Address generation devices; Devices for accessing memories, e.g. details of addressing circuits using counters or linear-feedback shift registers [LFSR]

Abstract

메모리 회로에서, 메모리부10의 복수의 메모리셀로부터 주목셀의 어드레스신호를 순차로 지정하는 제 1의 출력데이터 Q1을 출력하는 제 1의 카운터72와, 하나의 주목셀의 어드레스 신호가 지정될 때마다, 메모리부10의 각 메모리셀의 어드레스 신호를 순차로 지정하기 위해서 사용되는 제 2의 출력데이터 Q2를 출력하는 제 2의 카운터74와, 제어신호 INH에 따라서 제 2의 출력데이터 Q2를 제 3의 출력데이터 Q3으로 해서 선택적으로 출력하는 출력제어회로76과, 제 1의 출력데이터 Q1과 제 3의 출력데이터 Q3에 따라서 연산을 행하고, 어드레스 신호 Q4를 발생하는 연산회로78을 갖고 구성된 어드레스 신호발생수단70을 구비하고 있다.
이에 의해, 테스트 패턴에 의거하는 어드레스 신호를 격납한 메모리를 준비하여, 이 메모리로부터 순차 어드레스 신호를 입력할 필요도, 메모리의 테스트전용의 테스터를 사용할 필요도 없다.

Description

메모리 테스트 회로
종래, DRAM 등의 RAM을 테스트하기 위해서 메모리 테스트 회로가 사용되고 있다. RAM의 테스트는 RAM이 가지는 복수의 메모리셀이 격납하는 각 비트(여기서는 메모리셀)사이의 상호연결이나 메모리 회로에 내장되고 있는 디코더의 동작을 고려하여 행하여진다. 그 때문에, RAM의 테스트에 있어서는, RAM이 가지는 메모리셀을 지정하는 어드레스 신호를 특정한 순서로 잇달아 입력함으로써 각 메모리셀을 지정하여, 각 메모리셀을 테스트한다. 각 메모리셀의 어드레스를 지정하는 순차패턴(이하, 테스트 패턴이라 칭한다)에는, 많은 종류가 있다. 예컨대, "CHECKERBOARD", "MARCHING", "GALLOPING"등의 테스트 패턴이 있다.
여기서, RAM을 테스트하는 종래의 메모리 테스트 회로를 도 8에 나타낸다. 이 메모리 회로1은 메모리부10, 내부로직 제어회로12(내부로직회로, 로직회로라고도 칭한다), 제 1의 셀렉터14, 제 2의 셀렉터16, 및 제 3의 셀렉터18을 구비하고 있다.
메모리부10은 RAM으로 되고, 어드레스입력단자20, 판독 신호 입력단자22, 기록 신호 입력단자24 및 데이터 입출력단자26을 구비하고 있다. 어드레스입력단자20에서는 메모리 회로1의 외부의 메모리테스트 전용테스터(도시하지 않음)에서 어드레스 신호 An이 입력된다. 판독신호 입력단자22에는 판독신호가 입력된다. 기록신호 입력단자24에는 기록신호가 입력된다.
내부로직 제어회로12는 통상동작시에 메모리부10을 구동하기 위해 설치되어 있다. 내부로직 제어회로12는 테스트신호 입력단자28, 어드레스 신호 출력단자30, 판독신호 출력단자32, 기록신호 출력단자 34, 및 데이터단자36을 구비하고 있다.
내부 로직 제어회로12의 어드레스 신호 출력단자30에는 제 1의 셀렉터14를 개재해서 메모리부10의 어드레스 신호 입력단자20에 접속된다. 통상동작시에는 어드레스 신호 출력단자30에서 출력된 어드레스 신호에 의해 메모리부10내의 메모리 셀이 지정된다.
내부로직 제어회로12의 판독신호 출력단자32는 제 2 셀렉터16을 개재해서 메모리부10의 판독신호 입력단자22에 접속되어 있다. 통상동작시에는 판독신호 출력단자32에서 판독신호가 출력된다.
내부로직 제어회로12의 기록신호 출력단자34는 제 3셀렉터18을 개재해서 메모리부10의 기록신호 입력단자24에 접속되어 있다. 통상동작시에는 기록신호 출력단자34에서 기록신호가 출력된다.
내부로직 제어회로12의 데이터단자36은 외부데이터버스38 및 메모리부10의 데이터 입출력단자26에 접속되어 있다. 통상동작시에는 데이터단자36에서 출력된데이터가 기록신호 출력단자34에서 출력된 기록신호에 따라서(예를 들면, 이 기록신호가 고전위레벨일 때)데이터 입출력단자26에서 메모리부10으로 입력된다. 또, 통상동작시에는 판독신호 출력단자32에서 출력되는 판독신호에 따라서(예컨대, 이 판독신호가 고전위레벨일 때) 메모리부10의 데이터 입출력단자26로부터 출력된 데이터가, 데이터단자36로부터 내부로직 제어회로12로 입력된다.
내부로직 제어회로12의 테스트신호 입력단자28에는 테스트신호 RAMTEST가 입력된다. 테스트신호 RAMTEST의 전위레벨은, 통상동작시에는 저전위레벨(이하, "0"레벨이라 칭한다)이며, 테스트시에는 고전위레벨(이하, "1" 레벨이라 칭한다)이다. 또한, 테스트시에는 이 테스트신호 RAMTEST에 따라서, 내부로직 제어회로12와 데이터단자36의 출력이, 3스테이트("1" 레벨/"0" 레벨/고임피던스상태)중, 고임피던스상태(Hi-Z 상태)로 된다. 그 결과, 테스트일 때에는 내부로직 제어회로12는 메모리부10로부터 접속이 끊어지게 된다.
제 1의 셀렉터14는 제 1의 입력단자40, 제 2의 입력단자42, 전환단자44, 및 출력단자46을 구비하고 있다. 제 1의 입력단자40은 내부로직 제어회로12의 어드레스 신호 출력단자30에 접속되어 있다. 또, 제 2의 입력단자42에는 메모리부10의 외부에서 어드레스 신호An이 입력된다. 또, 전환단자44에는 메모리 회로1의 외부에서 테스트신호 RAMTEST가 입력된다. 출력단자46은 메모리부 10의 어드레스 신호 입력단자20에 접속되어 있다.
제 1의 셀렉터14는 통상동작시(테스트신호 RAMTEST가 "0" 레벨일 때)에는, 제 1의 입력단자40로부터 입력된 어드레스 신호An를 출력단자46로부터 출력한다.또, 제 1의 셀렉터14는 테스트때(테스트신호 RAMTEST가 "1" 레벨일 때)에는 제 2의 입력단자42로부터 입력된 어드레스 신호An을 출력단자46로부터 출력한다.
제 2의 셀렉터16은 제 1의 입력단자50, 제 2의 입력단자52, 전환단자54, 및 출력단자56을 구비하고 있다. 제 1의 입력단자50은 내부로직 제어회로12의 판독신호 출력단자32에 접속되어 있다. 제 2의 입력단자52는 메모리 회로1의 외부에서 판독신호 RD가 입력된다. 전환단자54는 메모리 회로1의 외부에서 테스트신호 RAMTEST가 입력된다. 출력단자56은 메모리부10의 판독 신호 입력단자22에 접속되어 있다.
제 2의 셀렉터16은 통상동작시(테스트신호 RAMTEST가 "0" 레벨일 때)에는 제 1의 입력단자50로부터 입력된 판독신호를 출력단자56로부터 출력한다. 한편, 테스트때(테스트신호 RAMTEST가 "1" 레벨일 때)에는, 제 2의 입력단자52로부터 입력된 판독 신호 RD를 출력단자56로부터 출력한다.
제 3의 셀렉터18은 제 1의 입력단자60, 제 2의 입력단자62, 전환단자64, 및 출력단자66을 구비하고 있다. 제 1의 입력단자60은 내부로직 제어회로12의 기록신호 출력단자34에 접속되어 있다. 제 2의 입력단자62는 메모리 회로1의 외부에서 기록 신호 WR가 입력된다. 전환신호64는 메모리 회로1의 외부에서 테스트신호 RAMTEST가 입력된다. 출력단자66은 메모리부10의 기록신호 입력단자24에 접속되어 있다.
제 3의 셀렉터18은 통상동작시(테스트신호 RAMTEST가 "0" 레벨일 때)에는, 제 1의 입력단자60로부터 입력된 기록 신호를 출력단자66로부터 출력한다. 한편, 테스트때(테스트신호 RAMTEST가 "1" 레벨일 때)에는, 제 2의 입력단자62로부터 입력된 기록신호WR를 출력단자66로부터 출력한다.
이 메모리 회로1의 동작에 관해서 이하에 설명한다. 또, 테스트동작으로서는 "GALLOPING"의 테스트 패턴을 사용한 경우로서 설명한다. 또, 메모리부10은 N개(N은 정(+)의 정수)의 메모리셀을 구비하고 있는 것으로 한다. 또한, 여기서는 메모리셀의 수 N은 워드수와 같게(결국, 워드수는 N) 한다.
메모리 회로1에 대한 테스트 시에는 테스트신호 RAMTEST를 "1" 레벨로 한다. 이에 따라, 내부로직 제어회로12의 데이터단자36의 출력은 고임피던스상태가 된다. 또한, 제 1의 셀렉터14는 제 2의 입력단자42에 입력되는 어드레스 신호An을 출력단자46로부터 출력하도록 설정된다. 또한, 제 2의 셀렉터16은 제 2의 입력단자52에 입력되는 판독 신호RD를 출력단자56로부터 출력하도록 설정된다. 또한, 제 3의 셀렉터18은 제 2의 입력단자62에 입력되는 기록 신호WR를 출력단자66로부터 출력하도록 설정된다. 따라서, 테스트 시에는 메모리부10은 메모리 회로1의 외부에서 입력되는 신호에 의해서 구동되게 된다.
이 상태에 있어서, "GALLOPING"의 테스트는 다음 수순으로 행하여진다.
(a) 우선, 메모리부10의 외부에서 기록 신호WR를 입력하고, 어드레스 신호 An에서 메모리부10의 N개의 메모리셀을 순차 지정하여, 외부데이터 버스38로부터 데이터로서 "0"을 전송한다. 이에 따라, 메모리부10의 N개의 메모리셀모두에 데이터 "0"을 기록한다.
(b) 다음에, 외부데이터 버스38에 데이터로서 "1"을 전송한다.
또한, 메모리 회로1의 외부에서 기록 신호 WR를 입력하여, 메모리셀중의 주목셀(테스트의 대상으로 된 셀이며, 어드레스 신호 An에 의해 지정한다)에 데이터로서 "1"을 기록한다. 여기서는 주목셀로서 우선, 어드레스가 0번지의 메모리셀을 최초의 메모리셀로 한다.
(c) 다음에, 메모리셀중의 0번지의 주목셀에만 데이터로서 "1"이 기록된 상태로, 각 메모리셀에 격납되어 있는 데이터를 순차 판독한다.
결국, 주목셀의 어드레스(0번지)의 다음의 어드레스인 1번지의 메모리셀에 격납된 데이터를 판독한다. 이 판독은 어드레스 신호 An에 의해 1번지를 지시함과 동시에, 판독신호RD를 입력함으로써 행하여진다. 1번지의 메모리셀에는, 상술의 (a)의 동작에 의해서, 데이터로서 "0"이 기록되어 있다. 따라서, 메모리부10이 정상이면, 1번지의 메모리셀로부터는 데이터로서 "0"이 판독된다.
다음에, 0번지의 주목셀에 격납된 데이터를 판독한다. 0번지의 주목셀에는 상술의 (b)의 동작에 의해서, 데이터로서 "1"이 기록되고 있다. 따라서, 메모리부10이 정상이면, 0번지의 주목셀로부터는 데이터로서 "1"이 판독된다.
다음에, 주목셀의 다음 어드레스인 1번지의 메모리셀에 격납된 데이터를 다시 판독한다. 1번지의 메모리셀에는 상술의 (a)의 동작에 의해서 데이터로서 "0"이 기록되어 있다. 따라서, 메모리부10이 정상이면, 1번지의 메모리셀로부터는 데이터로서 "0"이 판독된다.
다음에, 1번지의 다음 어드레스인 2번지의 메모리셀에 격납된 데이터를 판독한다. 2번지의 메모리셀에도 상술의 (a)의 동작에 의해서, 데이터로서 "0"이 기록된다. 따라서, 메모리부10이 정상이면, 2번지의 메모리셀로부터는 데이터로서 "0"이 판독된다. 다음에, 0번지의 주목셀에 격납된 데이터를 판독한다. 0번지의 주목셀에는, 상술의 (b)의 동작에 의해서 데이터로서 "1"이 기록되어 있다. 따라서, 메모리부10이 정상이면, 0번지의 주목셀로부터는 데이터로서 "1"이 판독된다.
다음에, 2번지의 메모리셀에 격납된 데이터를 다시 판독한다. 2번지의 메모리셀에는 상술의 (a)의 동작에 의해서, 데이터로서 "0"이 기록되고 있다. 따라서, 메모리부10이 정상이면, 2번지의 메모리셀로부터는 데이터로서 "0"이 판독된다.
다음에, 3번지의 메모리셀에 격납된 데이터를 판독한다. 3번지의 메모리셀에는, 상술의 (a)의 동작에 의해서, 데이터로서 "0"이 기록되어 있다. 따라서, 메모리부10이 정상이면, 3번지의 메모리셀로부터는 데이터로서 "0"이 판독된다.
이하, 같은 모양으로 해서 어드레스가 0번지, 3번지, 4번지, 0번지, 4번지, 5번지 ···의 순으로 N번지의 메모리셀까지에 대해서, 각 메모리셀에 격납된 데이터가 판독된다.
도 9에, "GALLOPING"에서의 테스트 패턴을 나타낸다.
도 9에 있어서, 숫자는 메모리셀의 어드레스를 나타내고, "W"는 기록을 나타내며, "R"은 판독을 나타낸다. 또한, "W" 및 "R"의 좌측의 숫자는 기록 또는 판독되는 데이터 값을 나타낸다. 주목셀이 0번지인 경우에, 도 9에 나타낸 바와 같이, 1번지의 메모리셀을 일단 판독한 후는, 0번지, 1번지, 2번지, 0번지, 2번지, 3번지, 0번지, 3번지, 4번지, 0번지, ···0번지, N-1번지, N번지의 순으로 메모리셀을 지정하여, 순차 판독하여 가는 것이다. 어드레스가 루프로 간주되면, 메모리부10의 메모리셀의 수가 전부로 N개의 경우, N 번지의 메모리셀은, 주목셀인0번지의 메모리셀의 하나 앞의 어드레스로 된다. 또, N+1번지는 0번지에 해당하게 된다.
(d) 다음에, 주목셀인 0번지의 메모리셀에 데이터로서"0"을 기록한다.
(e) 다음에, 1번지의 메모리셀에 데이터로서 "1"을 기록한다. 이에 따라, 1번지의 메모리셀을 주목셀로 한다.
여기서, 주목셀의 지정순서를 제10도에 나타낸다. 메모리셀은 메모리부10내의 도시하지 않은 X 디코더 및 Y 디코더에 의해서 지정된다.
결국, 입력되는 어드레스 신호 An에서 X 디코더에 의해 X 좌표(제 10도에서의 종방향)를 지정하여, Y 디코더에 의해 Y 좌표(제 10도에서의 횡방향)를 지정함으로써 각 메모리셀을 지정한다. 제 10도의 경우, Y 디코더의 출력(결국, Y 좌표)이 고정되어 있는 사이에, X 디코더의 출력(결국, X 좌표)을 시점에서 종점까지 변화시키고 나서, Y 디코더의 출력을 순차 변화시킨다. 이 Y 디코더의 변화마다, X 디코더의 출력을 시점에서 종점까지 변화시키는 것이다.
(f) 다음에, 1번지의 메모리셀을 주목셀로 한 경우, 상술한 (c)의 동작과 같이 하여, 테스트 패턴에 따라서 각 메모리셀을 순차 판독한다. 이 경우, 1번지, 2번지, 3번지, 1번지, 3번지, 4번지, 1번지, 4번지, 5번지, ···, 1번지, N번지, 0번지의 순으로 메모리셀을 지정하여, 순차 판독하여 가는 것이다.
(g) 이하, 주목셀의 번지를 하나씩 순차로 증가시켜, 주목셀로서 N번지의 메모리셀까지, 상술의 (c)의 동작과 같이 하여, 테스트 패턴에 따라서, 각 메모리셀에 격납된 데이터를 순차 판독한다. 주목셀이 N 번지인 경우에는, 주목셀의 어드레스의 하나 앞의 어드레스인 N-1번지의 메모리셀에 격납된 데이터까지를 순차 판독한다.
상기 판독에 있어서, 주목셀에 격납된 데이터로서 "1"이 판독되고, 주목셀 이외의 메모리셀에 격납된 데이터로서 "0"이 판독된 경우는, 메모리부10은 정상인 것이 확인된다. 이것에 대하여, 주목셀에 격납된 데이터로 해서 "0"이 판독하거나, 주목셀이외의 메모리셀에 격납된 데이터로서 "1"이 판독된 경우는, 메모리부10은 이상인 것으로 확인된다.
(h) 다음에, 상술한 (a)~(g)의 동작에 있어서, 데이터로서 "1"과 "0"을 반전시킨 보수 패턴에 관해서도 같은 동작을 행한다. 이 경우는, 메모리부10이 정상이면, 주목셀로부터는 데이터로서 "0"이 판독되고, 주목셀이외의 메모리셀은 데이터로서 "1"이 판독된다.
이와 같이, "GALLOPING"의 테스트 패턴의 경우는 하나의 주목셀에 관해서, 그 주목셀 및 2연의 메모리셀(예컨대, 2번지, 3번지의 메모리셀)에서 되는 3개의 메모리셀을 1조로 한 판독을 모든 2열의 연속 메모리셀에 관해서 행한다. 이 때문에, 메모리셀의 수를 N개로 하면, 하나의 주목셀에 관해서 3×N의 테스트 패턴이 필요하게 된다. 여기서 N개의 메모리셀 모두를 순차 주목셀로 하기 때문에, 3×N2의 테스트 패턴이 필요해진다. 또한, 보수 패턴으로서 주목셀에 데이터로서 "1"과 "0"을 각각 기록하여 테스트를 행하기 때문에, "GALLOPING"의 테스트 패턴으로서는 3×N2×2의 테스트 패턴이 필요하게 된다.
이와 같이, 종래의 메모리 회로 1에서는 예컨대, "GALLOPING"의 테스트 패턴으로서 3×N2×2의 테스트 패턴을 필요로 한다. 어느 쪽의 종류의 테스트 패턴에 있어서도, 테스트 패턴, 즉, 어드레스의 지정회수는 메모리셀의 2승에 비례하는 것이다. 따라서, 메모리 회로1이 대규모화(메모리셀의 수가 증가)하면, 테스트 패턴의 수는 메모리셀의 2승에 비례하여 증가하기 때문에, 테스트 패턴의 수가 방대한 양으로 되어 버린다. 따라서, 이 테스트 패턴의 어드레스데이터를 메모리에 격납해 놓고, 메모리 회로1에의 테스트에 따라서 순차 어드레스데이터를 출력하는 회로를 준비하면, 어드레스데이터격납용의 메모리용량은 방대한 것으로 되어 버리는 문제점이 있다.
또한, 이러한 메모리의 용량을 축소하기 위해서는 테스트 패턴을 생성하는 연산기능을 가지는 테스트용의 테스터가 필요하게 된다. 그렇지만, 테스트전용의 테스터로서, 메모리부10과 로직회로가 1칩화된 LSI 칩을 테스트하는 경우에는, 메모리부10을 테스트하는 메모리부전용의 테스터와, 로직회로전용의 테스터가 필요하게 된다. 이 때문에, 메모리부와 로직회로를 1칩화한 경우에는, 1기종의 테스터로서는 테스트를 할 수 없게 되는 문제점이 있었다.
따라서, 본 발명의 목적은 테스트 패턴의 어드레스데이터를 메모리에 격납해 놓고, 메모리 회로1에의 테스트에 따라서, 순차 어드레스데이터를 출력하는 회로를 준비한 경우, 어드레스데이터격납용의 메모리용량을 축소하는 것이 가능한 메모리 회로를 제공하는 것이다.
또한, 본 발명의 다른 목적은 메모리부전용의 테스터를 사용하지 않는 메모리 회로를 제공하는 것이다.
본 발명은, 판독 및 기록 가능한 반도체 기억장치(이하, RAM이라 칭한다) 또는, RAM을 내장한 제품의 RAM에 대한 테스트를 행하는 메모리 테스트 회로에 관한 것이다.
도 1은 본 발명의 제 1의 실시의 형태를 나타내는 메모리 회로의 구성블럭도.
도 2는 본 발명의 제 1의 실시의 형태의 메모리 회로에서의 동작을 설명하기 위한 타이밍 차트.
도 3은 본 발명의 제 2의 실시의 형태를 나타내는 메모리 회로의 구성블럭도.
도 4는 도 3에서의 메모리 회로를 구성하는 출력제어회로의 구성블럭도.
도 5는 도 4의 출력제어회로의 동작을 설명하는 주목셀을 지정방향을 나타내는 메모리셀의 레이아웃도.
도 6은 본 발명의 제 3의 실시의 형태를 나타내는 메모리 회로의 구성블럭도.
도 7은 본 발명의 제 4의 실시의 형태를 나타내는 메모리 회로의 구성블럭도.
도 8은 종래의 메모리 회로의 구성블럭도.
도 9는 "GALLOPING"의 테스트 패턴에 의한 메모리셀의 지정순서를 설명하는 도면.
도 10은 "GALLOPING"의 테스트 패턴에 의한 주목셀의 지정순서를 설명하는 메모리셀의 레이아웃도.
본 발명의 대표적인 것은, 복수의 메모리셀을 가지는 메모리 회로에 대하여, 입력되는 어드레스 신호로 지정된 메모리셀에 대한 소정의 테스트를 실행하는 메모리 테스트 회로에서, 제 1의 클럭신호가 입력되고, 제 1의 클럭신호에 응답하여, 메모리 회로의 복수의 메모리셀에 대하여 테스트대상의 메모리셀을 지정하기 위한 어드레스 신호를 순차 생성하여, 제 1의 출력데이터로서 출력하는 제 1의 어드레스 생성회로와 제 2의 클럭신호가 입력되고, 제 2의 클럭신호에 응답하여, 테스트에 따르는 메모리 회로의 각 메모리셀을 지정하기 위한 어드레스 신호를 순차 생성하여, 제 2의 출력데이터로서 출력하는 제 2의 어드레스생성회로와 제어신호가 입력되며, 제어신호에 응답해서, 제 2의 출력데이터의 전송을 제어하여 제 3의 출력데이터로서 출력하는 출력제어회로와, 제 1 및 제 3의 출력데이터가 입력되어 제 1의 출력데이터 및 제 3의 출력데이터에 따라서 연산을 행하고, 이 연산결과를 출력어드레스 신호로서 출력하는 연산회로를 가지는 것이다.
본 발명의 메모리 회로는 도면을 이용하여 이하에 설명한다. 또, 참조하는 도면은 본 발명이 이해할 수 있는 정도의 각 구성성분의 크기, 형상 및 배치관계를 개략적으로 나타내어 놓은 것에 불과하다. 따라서, 본 발명은 도시예에만 한정되는 것이 아니다. 또한, 도 8에 나타내는 메모리 회로1과 같은 구성에 대하여는 같은 부호를 부착하고 있다. 제 1도는 본 발명의 제 1의 실시의 형태를 나타내는 메모리회로의 구성블럭도이다.
제 1도에서의 메모리 회로500은 메모리부10, 내부로직 제어회로12, 제 1의 셀렉터14, 제 2의 셀렉터16, 및 제 3의 셀렉터18을 구비하고 있다. 이것들의 각 구성의 동작은, 종래의 메모리 회로1과 같다.
또한, 메모리 회로500은 어드레스 신호발생수단70을 구비하고 있다. 어드레스 신호발생수단70의 출력은 어드레스 신호가 입력되는 제 1의 셀렉터14의 제 2의 입력단자42에 접속하고 있다. 또한, 어드레스 신호발생수단70에는 제 1의 리셋트신호 R1, 제 1의 클럭신호 CK1, 제어신호 INH, 제 2의 리셋트신호 R2, 제 2의 클럭신호 CK2가 입력되어 있다. 이것들의 신호는 메모리 회로500의 외부의 로직회로전용의 테스터(도시하지 않음)에 의해 생성되는 것이다.
어드레스 신호발생수단70은 제 1의 어드레스생성회로인 제 1의 카운터72, 제2의 어드레스생성회로인 제 2의 카운터74, 출력제어회로76, 및 연산회로78을 구비하고 있다.
제 1의 카운터72는 메모리부10에서의 주목셀을 지정하는 어드레스 신호를 제 1의 출력데이터 Q1로서 순차로 출력하는 것이다. 제 2의 카운터74는 하나의 주목셀의 어드레스가 지정될 때마다 메모리부10의 각 메모리셀을 지정하는 어드레스 신호를 제 2의 출력데이터 Q2로 해서 순차로 출력하는 것이다. 출력제어회로76은 제어신호 INH에 따라서, 제 2의 출력데이터 Q2를 제 3의 출력데이터 Q3으로 해서 선택적으로 출력하는 것이다. 연산회로78은 제 1의 출력데이터 Q1과 제 3의 출력데이터 Q3에 따라서 연산을 행하는 것이다. 이 연산결과 Q4가 어드레스 신호발생수단70의출력으로 된다. 제 1의 카운터72는 제 1의 리셋트신호 입력단자80, 제 1의 클럭신호 입력단자82, 및 출력단자84를 구비하고 있다. 제 1의 리세트신호 입력단자80에는 제 1의 리셋트신호 R1이 입력된다. 제 1의 클럭신호 입력단자82에는 제 1의 클럭신호 CK1이 입력된다. 출력단자84는 연산회로78에 접속되어 있다.
제 1의 카운터72는 제 1의 클럭신호 CK1로 해서 입력되는 펄스신호가 1펄스 입력될 때마다 1카운트하여, 제 1의 리셋트신호 R1에 따라서 카운트 값을 리셋트하는 것이다. 이에 의해, 제 1의 카운터72는 메모리부10에서의 주목셀을 지정하는 어드레스를 제 1의 출력데이터 Q1로해서 순차 출력하는 것이다.
제 2의 카운터74는 제 2의 리셋트신호 입력단자86, 제 2의 클럭신호 입력단자88, 및 출력단자90을 구비하고 있다. 제 2의 리셋트신호 입력단자86에는 제 2의 리셋트신호 R2가 입력된다. 제 2의 클럭신호 입력단자88에는 제 2의 클럭신호 CK2가 입력된다. 출력단자90은 출력제어회로76에 접속되어 있다.
제 2의 카운터 74는 제 2의 클럭신호 CK2로서 입력되는 펄스신호가 1펄스 입력될 때마다 1카운트하여, 제 2의 리셋트신호 R2에 따라서 카운트 값을 리셋트하는 것이다. 이에 따라, 제 2의 카운터 74는 하나의 주목셀을 지정하는 어드레스가 생성될 때마다 메모리부10의 각 메모리셀의 어드레스를 지정하기 위해서 사용되는 제 2의 출력데이터 Q2를 순차 출력하는 것이다.
출력제어회로76은 입력단자92, 제어단자94, 및 출력단자96을 구비하고 있다.입력단자92는 제 2의 카운터74의 출력단자90에 접속되어 있다. 제어단자94에는 제어신호 INH가 입력된다. 출력단자96은 연산회로78에 접속되어 있다.
출력제어회로76은 제어단자94에 입력된 제어신호 INH에 따라서, 입력단자92로부터 입력된 제 2의 출력데이터 Q2를 제 3의 출력데이터 Q3으로 해서 선택적으로 출력하는 것이다. 결국, 제어신호 INH가 "0"레벨일 때에는 제 2의 출력데이터 Q2를 출력하고, "1"레벨일 때에는 제 2의 출력데이터 Q2를 출력하지 않는다(이 경우는, 데이터로 해서 "0"이 출력되는 것과 같다).
연산회로78은 제 1의 입력단자98, 제 2의 입력단자100, 및 출력단자102를 구비하고 있다. 제 1의 입력단자98은 제 1의 카운터72의 출력단자84에 접속되어 있다. 제 2의 입력단자100은 출력제어회로76의 출력단자96에 접속되어 있다. 출력단자102는 제 1의 셀렉터14의 제 2의 입력단자42에 접속되어 있다.
연산회로78은 제 1의 출력데이터 Q1과 제 3의 출력데이터 Q3에 기초를 둔 연산을 행하고, 이 연산결과 Q4를 어드레스 신호로서 출력단자102로부터 출력한다.
이와 같이 구성된 본 발명의 제 1의 실시의 형태인 메모리 회로500의 동작에 관해 설명한다. 도 2는 메모리 회로500에서의 동작을 설명하기 위한 타이밍차트이다. 도 2는 메모리 회로500의 "GALLOPING"의 테스트 패턴에서의 것이다. 또, 이하의 (b)~(r)의 표제의 알파벳은, 도 2중의 타이밍을 나타내는 b~r의 알파벳에 각각 대응하고 있다.
(a) 우선, 메모리부10의 테스트에 있어서, 테스트신호 RAMTEST를 "1"레벨로 한다. 그 결과, 내부로직 제어회로12의 데이터단자36의 출력은 고임피던스상태(Hi-Z 상태)로 된다. 따라서, 메모리부10의 입출력단자26로는 외부데이터 버스38로부터의 데이터가 입력된다.
또, 제 1의 셀렉터14는 제 2의 입력단자42에 입력된 어드레스 신호 Q4를 출력단자46로부터 출력한다. 제 2의 셀렉터16은 제 2의 입력단자52에 입력된 판독 신호RD를 출력단자56로부터 출력한다. 제 3의 셀렉터18은 제 2의 입력단자62에 입력된 기록 신호 WR를 출력단자66로부터 출력한다. 따라서, 메모리부10의 테스트 시에는, 메모리부10은 메모리 회로500 외부의 로직회로용 테스터로부터의 신호에 의해서 구동되게 된다.
또, 메모리 회로500의 외부의 로직회로전용의 테스터로부터의 신호, 즉, 제 1의 리셋트신호 R1, 제 1의 클럭신호 CK1, 제 2의 리셋트신호 R2, 제 2의 클럭신호 CK2 및 제어신호 INH는 각각, 외부의 로직회로전용의 테스터에서 프로그램으로 지정된 타이밍으로 입력되는 것이다.
우선, 제 1의 카운터72의 제 1의 리셋트신호 입력단자80 및 제 2의 카운터의 제 2의 리셋트신호 입력단자86에 각각, "1"레벨의 제 1의 리셋트신호 R1 및 리셋트신호 R2를 입력한다. 이 결과, 제 1의 카운터72 및 제 2의 카운터74가 리셋트된다. 이 상태에 있어서, 제 1의 카운터72 및 제 2의 카운터74는 동시에 0번지를 지시하는 출력데이터를 출력한다.
다음에, 메모리부10의 모든 메모리셀에 데이터로서 "0"을 기록한다. 이 데이터의 "0"의 기록에 있어서는, 우선, 외부데이터 버스38을 "0"레벨로 한 채로, 기록신호 WR을 "1"레벨로 한다. 이 기록 신호 WR는 제 3의 셀렉터18을 통해 메모리부10의 기록 신호 입력단자24로 입력된다. 그 결과, 이 시점에서 어드레스가 지정되어 있는 메모리부10의 0번지의 메모리셀에, 데이터로 해서 "0"이 기록된다.
다음에, 제 1의 카운터72의 제 1의 클럭신호 입력단자86에, "1"레벨의 제 1의 클럭신호 CK1을 1펄스 입력한다. 이것에 의해, 제 1의 카운터72의 제 1의 출력데이터 Q1을 1만 카운트업한다. 그 결과, 지정되는 메모리셀의 어드레스는 1번지로 된다.
다음에, 외부 데이터버스38을 "0"레벨로 한 채로, "1"레벨의 기록 신호 WR를 입력한다. 이에 따라, 1번지의 메모리셀에 데이터로서 "0"이 기록된다. 이하, "1"레벨의 제 1의 클럭신호 CK1과 "1"레벨의 기록신호 WR를 교대로 입력하여, 모든 메모리셀에 대하여, 데이터로서 "0"을 기록한다.
(b) 다음에, "1"레벨의 제 1의 리셋트신호 R1을 다시 제 1의 카운터72의 제 1의 리셋트신호 입력단자80으로 입력한다. 그 결과, 제 1의 카운터72의 출력인 제 1의 출력데이터 Q1은 초기화된다(결국, 0번지를 지시하는 출력데이터로 된다). 이 0번지를 지시하는 제 1의 출력데이터 Q1은 연산회로78의 제 1의 입력단자98로 입력된다.
또한, "1"레벨의 제 2의 리셋트신호 R2를 제 2의 카운터74의 제 2의 리셋트 신호 입력단자86에 입력한다. 그 결과, 제 2의 카운터74의 출력인 제 2의 출력데이터 Q2도 초기화된다(결국, 0번지를 지시하는 출력데이터로 된다).
또한, 출력제어회로 76의 제어단자94에는 "0"레벨의 제어신호 INH가 입력된다. 이 때문에, 입력단자92에 입력된 제 2의 출력데이터 Q2는 출력제어회로76의 출력단자96로부터 제 3의 출력데이터 Q3으로 해서 출력된다. 이 제 3의 출력데이터 Q3은 연산회로78의 제 2의 입력단자100에 입력된다.
연산회로78에는 제 1의 입력단자98로부터 0번지를 지시하는 제 1의 출력데이터 Q1이 입력되고, 제 2의 입력단자100로부터 0번지를 지시하는 제 3의 출력데이터 Q3이 입력된다. 따라서, 이 연산회로78은 0번지와 0번지를 가산한 가산결과(이 경우는 0번지가 된다)를 어드레스 신호 Q4로 해서, 출력단자102로부터 출력한다. 이 어드레스 신호 Q4는 제 1의 셀렉터14를 통해 메모리부10의 어드레스입력단자20으로 입력된다. 그 결과, 메모리부10의 0번지의 메모리셀이 주목셀로 해서 지정된다.
(c) 다음에, 외부데이터 버스38을 "1"레벨로 하고, 기록 신호 WR를 "1"레벨로 한다. 이 기록 신호 WR는 제 3의 셀렉터18을 통해, 메모리부10의 기록 신호 입력단자24에 입력된다. 그 결과, 이 시점에서 어드레스가 지정되어 있는 주목셀인 메모리부10의 0번지의 메모리셀에 데이터로 해서 "1"이 기록된다.
(d) 다음에, 0번지를 주목셀로 한 경우의, 본 주목셀에 대한 각 메모리셀의 판독 동작을 테스트한다. 이 때문에, 우선 제 2의 카운터74의 제 2의 클럭신호 입력단자88에 "1"레벨의 제 2의 클럭신호 CK2를 1펄스 입력한다. 이 결과, 제 2의 카운터74의 제 2의 출력데이터 Q2는 1만 카운트업된다. 따라서, 제 2의 출력데이터 Q2는 1번지를 지시하게 된다. 이 제 2의 출력데이터 Q2는 출력제어회로76의 입력단자92에 입력된다. 출력제어회로76의 제어단자94에는, "0"레벨의 제어신호 INH가 입력된다. 이 때문에, 제 2의 출력데이터 Q2는 제 3의 출력데이터 Q3으로 해서, 출력제어회로76의 출력단자96로부터 연산회로78의 제 2의 입력단자100에 입력된다.
연산회로78은 제 1의 입력단자98로부터 입력되어 있는 0번지를 지시하는 제 1의 출력데이터 Q1과, 제 2의 입력단자100로부터 입력된 1번지를 지시하는 제 3의출력데이터 Q3을 가산한다. 이 가산의 결과로서, 1번지를 지시하는 어드레스 신호 Q4를 출력단자102로부터 출력한다. 이 어드레스 신호 Q4는 제 1의 셀렉터14를 통해 메모리부10의 어드레스입력단자20에 입력된다. 이 결과, 메모리부10의 1번지의 메모리셀이 지정된다.
(e) 다음에, 1번지의 메모리셀이 지정되어 있을 때에, 제 2의 셀렉터16을 통해, 메모리부10의 판독 신호 입력단자22에 "1"레벨의 판독 신호 RD를 입력한다. 이에 따라, 메모리부10이 정상이면, 어드레스 신호로 지정되어 있는 1번지의 메모리셀에 격납된 데이터의 "0"이 데이터 입출력단자26로부터 외부데이터 버스38로 판독된다.
(f) 다음에, 출력제어회로76의 제어단자94에 "1"레벨의 제어신호 INH를 입력한다. 이에 따라, 출력제어회로76은 그 출력이 금지상태로 된다.
따라서, 연산회로78에는 제 1의 입력단자98로부터의 0번지의 어드레스만이 입력된다. 이 때문에, 연산회로78은 출력단자102로부터 0번지의 어드레스 신호 Q4를 출력한다. 이에 따라, 제 1의 셀렉터14를 통해 메모리부10의 어드레스입력단자20에 어드레스 신호 Q4가 입력되어, 메모리부10의 0번지의 메모리셀(주목셀)이 다시 지정된다.
(g) 다음에, 0번지의 주목셀이 지정되어 있을 때에, 메모리부10의 판독 신호 입력단자22에 제 2의 셀렉터16을 통해 "1"레벨의 판독 신호 RD를 입력한다. 그 결과, 메모리부10이 정상이면, 어드레스 신호로 지정되어 있는 0번지의 메모리셀에 격납된 데이터의 "1"이 데이터 입출력단자26에서 외부데이터 버스38에 판독된다.
(h) 다음에, 출력제어회로76의 제어단자94에 "0"레벨의 제어신호 INH를 입력한다. 이 결과, 출력제어회로76은 입력단자92로부터 입력된 1번지를 지시하는 제 2의 출력데이터 Q2를 제 3의 출력데이터 Q3으로 해서 출력단자96로부터 출력한다.
따라서, 연산회로78은 제 1의 입력단자98로부터 입력되는 0번지를 지시하는 제 1의 출력데이터 Q1과, 제 2의 입력단자100로부터 입력되는 1번지를 지시하는 제 3의 출력데이터 Q3을 가산한다. 이 가산의 결과로 해서, 1번지를 지시하는 어드레스 신호 Q4를 출력단자102로부터 출력한다. 이 어드레스 신호 Q4는 제 1의 셀렉터 14를 통해 메모리부10의 어드레스입력단자20에 입력된다. 이 결과, 메모리부10의 1번지의 메모리셀이 다시 지정된다.
(i) 다음에, 1번지의 메모리셀이 지정되어 있을 때에, 제 2의 셀렉터16을 통해 메모리부10의 판독 신호 입력단자22에 "1"레벨의 판독 신호 RD를 입력한다. 이에 따라, 메모리부10이 정상이면, 어드레스 신호로 지정되어 있는 1번지의 메모리셀에 격납된 데이터의 "0"이, 데이터 입출력단자26로부터 외부데이터 버스38에 판독된다.
(j) 다음에, 제 2의 카운터74의 제 2의 클럭신호 입력단자88에 "1"레벨의 제 2의 클럭신호 CK2를 1펄스 입력한다. 이에 따라, 제 2의 카운터74의 제 2의 출력데이터 Q2는 1만 카운트업된다. 따라서, 제 2의 출력데이터 Q2는 2번지를 지시하게 된다. 이 제 2의 출력데이터 Q2는 제 2의 카운터74의 출력단자90로부터 출력제어회로76의 입력단자92에 입력된다. 출력제어회로76의 제어단자96에는 "0"레벨의 제어신호 INH가 입력되어 있다. 이 때문에, 2번지를 지시하는 제 2의 출력데이터 Q2는출력제어회로76의 출력단자96로부터 연산회로78의 제 2의 입력단자100에 입력된다.
연산회로78은 제 1의 입력단자98로부터 입력되는 0번지를 지시하는 제 1의 출력데이터Q1과 제 2의 입력단자100로부터 입력되는 2번지를 지시하는 제 3의 출력 데이터 Q3을 가산한다. 이 가산의 결과로서 2번지를 지시하는 어드레스 신호 Q4를 출력단자102로부터 출력한다. 이 어드레스 신호 Q4는 제 1의 셀렉터14를 통해 메모리부10의 어드레스입력단자20에 입력된다. 이 결과, 메모리부10의 2번지의 메모리셀이 지정된다.
(k) 다음에, 2번지의 메모리셀이 지정되어 있을 때에, 제 2의 셀렉터16을 통해, 메모리부10의 판독 신호 입력단자22에 "1"레벨의 판독 신호 RD를 입력한다. 이에 따라, 메모리부10이 정상이면, 어드레스 신호로 지정되어 있는 2번지의 메모리셀에 격납된 데이터의 "0"이 데이터 입출력단자26로부터 외부데이터 버스38에 판독된다.
(l) 다음에, 출력 제어회로76의 제어단자94에 "1"레벨의 제어신호 INH를 입력한다. 이에 따라, 출력제어회로76은 그 출력이 금지상태로 된다.
따라서, 연산회로78에는 제 1의 입력단자98로부터의 0번지의 어드레스만이 입력된다. 이 때문에, 연산회로78은, 출력단자102로부터 0번지의 어드레스 신호 Q4를 출력한다. 이에 따라, 제1의 셀렉터14를 통해 메모리부10의 어드레스입력단자20에 어드레스 신호 Q4가 입력되며, 메모리부10의 0번지의 메모리셀(주목셀)이 다시 지정된다.
(m) 다음에, 0번지의 주목셀이 지정되어 있을 때에, 메모리부10의 판독 신호입력단자22에, 제 2의 셀렉터16을 통해, "1"레벨의 판독신호 RD를 입력한다. 이 결과, 메모리부10이 정상이면, 어드레스 신호 Q4로 지정되어 있는 0번지의 메모리셀에 격납된 데이터의 "1"이 데이터 입출력단자26로부터 외부데이터 버스38에 판독된다.
(n) 다음에, 출력제어회로76의 제어단자94에, "0"레벨의 제어신호 INH를 입력한다. 이 결과, 출력제어회로76은 입력단자92로부터 입력된 2번지를 지시하는 제 2의 출력데이터 Q2를, 제 3의 출력데이터 Q3으로 해서 출력단자96로부터 출력한다.
따라서, 연산회로78은 제 1의 입력단자98로부터 입력되는 0번지를 지시하는 제 1의 출력데이터 Q1과, 제 2의 입력단자100로부터 입력되는 2번지를 지시하는 제 3의 출력데이터 Q3을 가산한다. 이 가산의 결과로 해서, 2번지를 지시하는 어드레스 신호 Q4를 출력단자102로부터 출력한다. 이 어드레스 신호 Q4는 제 1의 셀렉터14를 통해 메모리부10의 어드레스입력단자20에 입력된다. 이 결과, 메모리부10의 2번지의 메모리셀이 다시 지정된다.
(o)다음에, 2번지의 메모리셀이 지정되어 있을 때에, 제 2의 셀렉터16을 통해, 메모리부10의 판독신호 입력단자22에 "1"레벨의 판독 신호 RD를 입력한다. 이에 따라, 메모리부10이 정상이면, 어드레스 신호로 지정되어 있는 2번지의 메모리셀에 격납된 데이터의 "0"이 데이터 입출력단자26로부터 외부데이터 버스38에 판독된다.
이하, 같은 모양으로 해서 N 번지의 메모리셀까지 "GALLOPING"의 테스트 패턴에 따라서, 도 9와 같이 순차로 메모리셀을 지정하여 판독하여 간다. 요컨대, 주목셀이 0번지의 메모리셀의 경우는, 1번지의 메모리셀을 일단 판독한 후는, 0번지, 1번지, 2번지, 0번지, 2번지, 3번지, 0번지, 3번지, 4번지, 0번지, ···, N-1번지, N번지의 메모리셀이 순차 판독된다. 메모리부10의 메모리셀이 전부 N 개인 경우, 어드레스가 루프로 되어 있다고 간주하면, N 번지의 메모리셀은 주목셀인 0번지의 메모리셀의 하나 앞의 어드레스로 된다. 또한, N+1번지는 0번지에 해당한다.
(p) 다음에, 데이터로 해서 "1"이 격납되어 있는 0번지의 주목셀에, 데이터로 해서 "0"을 입력한다. 이 시점에서는, 모든 메모리셀의 데이터는 "0"이 된다.
(q) 다음에, 제 1의 카운터72의 제 1의 클럭신호 입력단자82에, "1"레벨의 제 1의 클럭신호 CK1을 1펄스 입력한다. 이에 따라, 제 1의 카운터72의 제 1의 출력데이터 Q1이 1만 카운트업된다. 따라서, 제 1의 출력데이터 Q1은 1번지를 지시하게 된다. 또한, 제 2의 카운터74의 제 2의 리셋트신호 입력단자86에, "1"레벨의 제 2의 리셋트신호 R2를 1펄스 입력한다. 그 결과, 제 2의 카운터74의 제 2의 출력데이터 Q2가 초기화된다(결국 0번지를 지시하는 어드레스 신호가 된다).
(r) 다음에, 외부데이터 버스38을 "1"레벨로 하여, 기록 신호 WR를 "1"레벨로 한다. 이 기록 신호 WR는, 제 3의 셀렉터18을 통해, 메모리부10의 기록 신호 입력단자24에 입력된다. 그 결과, 이 시점에서 어드레스가 지정되어 있는 주목셀인 메모리부10의 1번지의 메모리셀에 데이터로 해서 "1"이 기록된다.
1번지의 메모리셀을 주목셀로 해서 상술한 (d)~(p)와 같은 동작을 행하여, 주목셀에 대한 각 메모리셀의 판독 동작을 테스트한다.
이와 같이, 제 1의 실시의 형태의 메모리 회로500에 의하면, 테스트 시에 메모리부10에 대하여 지정하는 어드레스 신호를 어드레스 신호발생수단70에 의해서 발생하고 있다. 이 어드레스 신호를 발생하기 위해서, 어드레스 신호발생수단70의 외부의 로직회로전용 테스터로부터 입력되는 신호, 예컨대, 제 1의 리셋트신호 R1, 제 2의 리셋트신호 R2, 제 1의 클럭신호 CK1, 제 2의 클럭신호 CK2, 및 제어신호 INH는 어느 것이나 주기성을 가지는 신호이다. 이와 같이, 주기성을 가지는 신호에 따라서 어드레스 신호를 발생시키기 때문에, 메모리 테스트전용의 테스터로 복잡한 어드레스 신호의 계산을 행할 필요가 없다. 따라서, 이것들의 주기성을 가지는 신호를 입력하기 위해서 사용하는 테스터로 해서 로직회로전용의 테스터를 사용할 수 있다. 따라서, 메모리 회로500에 의하면, 테스트턴(test turn)에 근거하는 어드레스 신호를 격납한 메모리를 준비하여, 이 메모리로부터 순차 어드레스 신호를 입력할 필요도, 메모리의 테스트전용의 테스터를 사용할 필요도 없다.
다음에, 본 발명의 제 2의 실시의 형태의 메모리 회로에 대해서 도면을 사용하여 이하에 설명한다. 도 3은 본 발명의 제 2의 실시의 형태를 나타내는 메모리회로의 구성블럭도이다.
도 3의 메모리 회로600에서는 출력제어회로104의 구성이 도 1의 제 1의 실시의 형태에서의 출력제어회로76의 구성과 상이한 점을 제외하고는 상술한 제 1의 실시의 형태의 메모리 회로500과 같은 구성이다. 따라서, 제 2의 실시의 형태에 있어서는, 제 1의 실시의 형태와 같은 구성에 대하여는 같은 부호를 부착하여, 그 상세한 설명을 생략한다.
출력제어회로104는 입력단자106 및 출력단자108을 구비하고 있다.입력단자106에는, 제 2의 카운터74의 출력단자90로부터 제 2의 출력데이터 Q2가 입력된다. 출력단자108로부터는 연산회로78의 제 2의 입력단자100에 제 3의 출력데이터 Q3이 출력된다. 도 4에, 출력제어회로104의 구성블럭도면을 나타낸다. 출력제어회로104는 제 1의 비트제어회로인 제 1의 게이트회로110, 선택회로인 셀렉터112, 및 제 2의 비트제어회로인 제 2의 게이트회로114를 구비하고 있다.
제 1의 게이트회로110은 입력단자116, 제어단자118, 및 출력단자120을 구비하고 있다. 입력단자116은 출력제어회로104의 입력단자106에 접속되어 있다. 입력단자116에는, 제 2의 출력데이터 Q2를 구성하는 어드레스 신호의 일부가 입력된다. 예컨대, 어드레스 신호 n 비트로 구성되어 있으면, 하위 측의 m 비트가 입력단자116에 입력된다. 제어단자118에는 메모리 회로600의 외부의 테스터에서, 제 1의 게이트제어신호 INHX가 입력된다. 출력단자120은 출력제어회로104의 출력단자108에 접속되어 있다.
제 1의 게이트회로110의 출력단자120로부터는, 제 1의 게이트제어신호 INHX에 따라서, 제 1의 게이트출력신호 G1로 해서 하위 측의 m 비트가 선택적으로 출력된다. 제 1의 게이트출력신호 G1은 제 3의 출력데이터 Q3의 일부를 구성하게 된다.
셀렉터112는 제 1의 입력단자122, 제 2의 입력단자124, 선택단자126, 및 출력단자128을 구비하고 있다. 제 1의 입력단자122는 출력제어회로104의 입력단자106에 접속되어 있다. 제 1의 입력단자122에는 제 2의 출력데이터 Q2를 구성하는 어드레스 신호의 일부가 입력된다. 예컨대, 어드레스 신호 n비트로 구성되어 있으면, 상위 측의 q비트가 제 1의 입력단자122에 입력된다(요컨대, n = m + q). 제 2의 입력단자124는 출력제어회로104의 입력단자106에 접속되어 있다. 제 2의 입력단자124에는 제 2의 출력데이터 Q2를 구성하는 하위 측의 m 비트중의 하위 q비트가 입력된다. 요컨대, m ≥ q의 경우는, 셀렉터112의 제 2의 입력단자124에 입력되는 q 비트의 하측어드레스는 하위측 m 비트의 하측에서, q 비트와 같은 값으로 한다. 또, m < q의 경우는, 모자라는 분(상위 측의 m-q 비트분)은, 예컨대, "0"데이터로 해서 놓으면 좋다. 선택단자126에는 메모리 회로600의 외부의 테스터로부터 선택신호 DIA가 입력된다. 셀렉터112의 출력단자128은, 제 2의 게이트회로114에 접속되어 있다. 요컨대, m비트의 제 1의 게이트출력신호 G1과 q비트의 제 2의 게이트출력신호 G2에서 n 비트의 제 3의 출력데이터를 구성하고 있다. 셀렉터112는 선택신호 DIA에 따라서, 제 1의 입력단자122로부터 입력된 상위 측의 q 비트 또는 제 2의 입력단자124로부터 입력된 하위 측의 q 비트를 출력단자128로부터 선택적으로 출력한다. 제 2의 게이트회로114는, 입력단자130, 제어단자132, 및 출력단자134를 구비하고 있다. 입력단자130은 셀렉터112의 출력단자128에 접속되어 있다. 또한, 입력단자130에는 셀렉터112로부터 제어신호 DIA에 응한 셀렉터112의 출력이 입력된다. 제어단자132에는 메모리 회로600의 외부의 테스터로부터, 제 2의 게이트제어신호 INHY가 입력된다. 출력단자134는 출력제어회로104의 출력단자108에 접속되어 있다.
제 2의 게이트회로114의 출력단자134로부터는, 셀렉터112로부터 입력된 상위측의 q비트 또는 하위 측의 q비트가, 제 2의 게이트출력신호 G2로서, 제 2의 게이트제어신호 INHY에 따라서, 선택적으로 출력된다. 제 2의 게이트출력신호 G2는, 제 3의 출력데이터 Q3의 일부를 구성하게 된다. 요컨대, m비트의 제 1의 게이트출력신호 G1과 q비트의 제 2의 게이트출력신호 G2로 n비트의 제 3의 출력데이터를 구성하고 있다.
이와 같이 구성된 본 발명의 제 2의 실시의 형태인 메모리 회로600의 출력제어회로104의 동작에 관해서 설명한다.
(i) 우선, 출력제어회로104에 입력된 제 2의 출력데이터 Q2가, 그대로 제 3의 출력데이터 Q3로서 출력되는 경우에 대해서 설명한다. 이 경우는, 우선, 제 1의 게이트제어신호 INHX를 "1"레벨로 한다. 이에 따라, 제 1의 게이트회로110의 출력단자120로부터, 제 2의 출력데이터 Q2의 하위 측의 m 비트가, 제 1의 게이트출력신호 G1로서 출력된다. 또한, 선택신호 DIA를 "0"레벨로 한다. 이 결과, 셀렉터112의 제 1의 입력단자122로부터 입력된 제 2의 출력데이터 Q2의 상위 측의 q 비트가 출력단자128로부터 출력된다. 또한, 제 2의 게이트제어신호 INHY를 "1"레벨로 한다. 이 결과, 셀렉터112의 출력단자128로부터 출력되어 있는 제 2의 출력데이터 Q2의 상위 측의 q비트가, 제 2의 게이트회로114의 출력단자134로부터, 제 2의 게이트출력신호 G2로서 출력된다. 따라서, 이 경우는, 출력제어회로104에 입력된 제 2의 출력데이터 Q2의 하위 측의 m 비트 및 상위 측의 q 비트가 각각 그대로 제 3의 출력데이터 Q3의 하위 측의 m 비트 및 상위 측의 q 비트로 이루어지는 n 비트의 어드레스 신호로서 출력된다. 이 어드레스 신호 중 상위 측의 비트는 X 디코더에 입력되고, 하위 측의 비트는 Y 디코더에 입력된다. 이 X 디코더 및 Y 디코더에 의해서 소정의 메모리셀이 지정된다. 요컨대, 도 10에 나타내는 것 같은 레이아웃으로 배치된 복수의 메모리셀중, 어드레스 신호에 대응한 메모리셀의 위치가 X 디코더 및 Y디코더에 의해 지정되는 것이다. 이 결과, 이 경우의 메모리 회로600은 상술한 제 1의 실시의 형태인 메모리 회로500과 같은 동작을 실행하는 것이 가능해진다.
(ii) 다음에, 메모리부10의 X 디코더 및 Y 디코더에 서로 동일한 변화량을 주는 어드레스 신호를 발생시키는 경우에 대해서 설명한다. 이 경우는, 제 1의 게이트제어신호 INHX 및 제 2의 게이트제어신호 INHY를 각각 "1"레벨로 한 채로, 선택신호 DIA를 "1"레벨로 한다. 이에 따라, 셀렉터112의 제 2의 입력단자124로부터 입력된 제 2의 출력데이터 Q2 하위 측의 m 비트중의 하로부터 q 비트가 출력단자128로부터 출력된다. 따라서, 이 경우는 제 1의 게이트출력신호 G1과 같은 하위 측의 q 비트가, 제 2의 게이트 출력신호 G2로 해서 출력된다. 또, m > q의 경우, X 디코더로 입력되는 m 비트의 상위 측의 나머지(m-q)비트가 카운트업되어 있는 사이는, Y디코더의 입력은 0~2q-1의 사이를 반복하게 된다.
여기서, 도 5에 도 4의 출력제어회로104의 동작을 설명하는 주목셀을 지정방향을 나타내는 메모리셀의 레이아웃도면을 나타낸다. 도 5에 있어서는 모식적으로 16개(4×4)의 메로리셀의 레이아웃을 나타내고 있다. 도 5에서의 종방향의 위치는 X 디코더에 의해서 지정되고, 횡방향은 Y 디코더에 의해서 지정되어 있다. 또한, 도 4의 출력제어회로104에 의해, X 디코더 및 Y 디코더에는, 서로 같은 데이터가 입력되게 된다. 이 결과, 화살표 1에서 나타난 바와 같이 메모리셀CE 에서, 도 5에서의 메모리셀의 레이아웃의 오른쪽 밑으로 향해서 대각선방향으로, 메모리셀의 지정위치를 이동할 수 있다.
또한, 선택신호 DIA를 "1"레벨로 해서, 제 1의 게이트제어신호 INHX를 "0"레벨로 하면, 제 3의 출력데이터 Q3으로 해서, Y 디코더에 입력되는 상위 측의 비트만을 출력할 수 있다. 이 결과, X 디코더를 고정하여, Y 디코더로 지정되는 방향(도 5에서의 횡방향)의 메모리셀에 대한 테스트를 용이하게 행할 수 있다. 또한, 반대로, 제 1의 게이트제어신호 INHY를 "0"레벨이라고 하면, 제 3의 출력데이터 Q3으로 해서, X 디코더로 입력되는 하위 측의 비트만을 출력할 수 있다. 이 결과, Y 디코더를 고정하여 X 디코더로 지정되는 방향(도 5에서의 종방향)의 메모리셀에 대한 테스트를 용이하게 행할 수 있다.
다음에, 본 발명의 제 3의 실시의 형태의 메모리 회로에 대해서 도면을 사용하여 이하에 설명한다. 도 6은 본 발명의 제 3의 실시의 형태를 나타내는 메모리회로의 구성블럭도면이다.
도 6의 메모리 회로700에 있어서는, 메모리부10에 대한 테스트를 위한 테스트 패턴을 출력한다. 패턴출력회로인 테스트 패턴기억회로136 및 비교회로(비교기)138을 구비하고 있는 점을 제외하고는 상술한 제 1의 실시의 형태의 메모리 회로500과 같은 구성이다. 따라서, 제 3의 실시의 형태에서는, 제 1의 실시의 형태와 같은 구성에 대하여는 같은 부호를 부착하여, 그 상세한 설명을 생략한다.
테스트 패턴기억회로136은 메모리부10에서의 각 메모리셀에 대한 데이터의 설정값, 및 메모리 테스트의 결과, 메모리부10이 정상인 경우에는, 설정 값이 설정된 메모리부10로부터 출력되어야 하는 데이터인 기대값 데이터가 격납되어 있는 것이다. 비교 회로138은 메모리의 테스트 시에 설정 값이 설정된 메모리부10로부터 실제로 출력된 출력데이터와, 테스트 패턴기억회로136로부터 출력된 기대값 데이터가 입력되어, 비교제어신호에 따라서, 이 출력데이터와 기대값 데이터와의 비교의 결과를 출력하는 것이다.
테스트 패턴기억회로136은, 전환단자140, 제 1의 제어단자142, 제 2의 제어단자144, 제 1의 출력단자146, 및 제 2의 출력단자148을 구비하고 있다.
전환단자140에는, 메모리 회로700의 외부의 테스터로부터 테스트 패턴의 지정을 바꾸기 위한 테스트 패턴전환신호 PT가 입력되어 있다. 요컨대, 테스트 패턴기억회로136이 복수종류, 예컨대 4종류의 테스트 패턴에 대한 기대값 데이터를 격납하고 있는 경우는 테스트 패턴전환제어신호 PT는 2비트의 신호로 된다.
제 1의 제어단자142에는 테스트신호 RAMTEST가 입력된다. 제 2의 제어단자144는 제 3의 셀렉터18의 출력단자66에 접속되어 있다. 따라서, 제 2의 제어단자144에는 제 3의 셀렉터66을 통해, 기록신호 WR가 입력된다.
제 1의 출력단자146은 데이터 버스150을 통해, 비교회로138에 접속되어 있다. 또한, 테스트 패턴전환신호 PT에 의해 지정된 테스트 패턴의 기대값 데이터가 제 2의 출력단자148로부터 상시 출력되고 있다.
비교회로138은 제 1의 입력단자154, 제 2의 입력단자156, 제어단자 158, 및 출력단자160을 구비하고 있다. 제 1의 입력단자154는 데이터 버스152를 통해, 테스트 패턴기억회로136의 제 2의 출력단자148에 접속되어 있다.
제 2의 입력단자156은 데이터 버스150을 통해, 메모리부10의 데이터 입출력단자26에 접속되어 있다. 이 제 2의 입력단자156에는 테스트 패턴의 설정 값이 설정된 메모리부10의 출력데이터가 입력된다. 제어단자158은 제 2의 셀렉터16의 출력단자56에 접속되어 있다. 따라서, 제어단자158에는 제 2의 셀렉터16을 통해 판독신호 RD가 입력된다. 출력단자160은 예컨대, 메모리 회로700의 외부 테스터에 접속되어 있다. 이 출력단자160은 제 1의 입력단자154로부터 입력된 출력데이터와 제 2의 입력단자156로부터 입력된 기대값 데이터와의 비교결과 CMP를 출력한다.
이와 같이 구성된 본 발명의 제 3의 실시의 형태인 메모리 회로700의 동작에 대해서 설명한다.
우선, 테스트 패턴전환신호 PT에 의해서, 테스트 패턴의 설정 값을 지정한다. 이 설정 값에 대한 기대값 데이터는 테스트 패턴기억회로136의 제 2의 출력단자148로부터 비교회로138의 제 1의 입력단자154로 상시 입력되어 있다. 또한, 제 1의 제어단자142에 "1"레벨의 테스트신호 RAMTEST를 입력하여, 제 2의 제어단자144에 "1"레벨의 기록 신호 WR를, 제 3의 셀렉터18을 통해 입력한다. 이들에 의해, 테스트 패턴전환신호 PT에 의해서 지정된 설정 값이, 테스트 패턴기억회로136의 제 1의 출력단자146로부터 출력된다. 그리고, 제 1의 출력단자146로부터 출력된 설정값은, 데이터 버스150을 통해, 메모리부10의 데이터 입출력단자26으로 입력되어 메모리도10에 기록된다. 또, 제 1의 출력단자146로부터는, 테스트신호 RAMTEST 및 기록 신호 WR가, 동시에 "1"레벨의 경우에만 설정 값이 출력된다. 또한, 메모리부10 메모리셀을 지정하는 어드레스 신호는 제 1의 셀렉터14를 통해 어드레스단자20에 입력된다.
다음에, 제 2의 제어단자144에 "0"레벨의 기록 신호 WR를 입력한다. 이 결과, 테스트 패턴기억회로136의 제 1의 출력단자146로부터의 설정 값의 출력이 정지된다.
다음에, 메모리부10의 판독 신호 입력단자22에, "1"레벨의 판독 신호 RD를, 제 2의 셀렉터16을 통해 입력한다. 이에 따라, 테스트 패턴전환신호 PT에 의해서 지정된 설정 값의 출력데이터가 메모리부10의 데이터 입출력단자26에서 출력되어 판독된다. 이 출력데이터는 데이터 버스150을 통해, 비교회로138의 제 2의 입력단자156에 입력된다. 다음에, 판독 신호 RD에 따라서 활성화한 비교회로138에 있어서, 제 1의 입력단자154로부터 입력된 기대값 데이터와 제 2의 입력단자156로부터 입력된 테스트 패턴의 설정 값을 비교한다. 이 비교결과 CMP는 비교회로138의 출력단자160로부터 출력된다. 비교결과 CMP는 여기서는, 출력데이터와 기대값 데이터가 일치한 경우에는 "0"레벨의 신호로서, 출력데이터와 기대값 데이터가 일치하지 않은 경우에는, "1"레벨의 신호로서 출력한다. 따라서, 제 3의 실시의 형태의 메모리회로700에 의하면, 비교결과 CMP가 "1"레벨이 되는 경우만을 테스터로써 체크함에 의해, 메모리의 테스트를 용이하게 행할 수 있다.
여기서, 상술의 제 1의 실시의 형태에 있어서는, 메모리부10의 데이터 입출력단자26에서의 데이터의 입력 및 출력을 어느 것이나 외부의 데이터 버스를 통해 행하고 있었다. 이 경우, 메모리 회로의 외부에서의 설정 값의 입력 때문에 세트업시간 및 홀드시간을 얻을 필요가 있다. 또한, 데이터의 출력도 "0"레벨과 "1"레벨이 몇번이라도 교체하기 때문에, 메모리부10로부터 외부에의 출력을 위한 안정시간을 얻을 필요가 있다.
이것에 대해서, 제 3의 실시의 형태에 있어서는, 설정 값을 테스트 패턴 기억회로136로부터 메모리부10으로 입력하고, 출력데이터를 메모리부10로부터 비교회로138로 입력한다. 이 때문에, 제 3의 실시의 형태에 있어서는, 세트업시간 및 홀드시간으로서 필요한 시간을 감소할 수 있다. 또한, 비교회로138로부터 출력되는 비교결과 CMP는 비교결과가 일치하지 않은 경우만(예컨대, "1"레벨의 신호의 경우만)을 검출하면 된다. 따라서, 데이터 출력의 안정시간으로서 필요한 시간을 감소할 수 있다. 즉, 메모리부10의 최대동작속도에 보다 가까운 속도로 메모리의 테스트를 행할 수 있다.
다음에, 본 발명의 제 4의 실시의 형태의 메모리 회로에 대해서 도면을 사용하여 이하에 설명한다. 도 7은 본 발명의 제 4의 실시의 형태를 나타내는 메모리회로의 구성블럭도이다.
도 7의 메모리 회로800에 있어서는, 테스트 패턴기억회로136의 대신에, 제1의 전송회로인 제 1의 레지스터162, 버퍼164, 제 2의 전송회로인 제 2의 레지스터166, 및 AND 게이트182를 구비하고 있는 점을 제외하고는, 상술한 제 3의 실시의 형태의 메모리 회로700과 같은 구성이다. 따라서, 제 4의 실시의 형태에서는, 제 3의 실시의 형태와 같은 구성에 대하여는 같은 부호를 부착하여, 그 상세한 설명을 생략한다.
제 4의 실시의 형태의 메모리 회로800은 제 1의 레지스터162, 버퍼164, 제 2의 레지스터166, 및 비교회로138을 구비하고 있다. 제 1의 레지스터162는입력단자168, 클럭단자170, 및 출력단자172를 구비하고 있다. 입력단자168에는, 메모리 회로800의 외부의 테스터로부터 데이터 버스174를 통해 메모리부10의 각 메모리셀의 데이터인 테스트 패턴의 설정 값이 입력된다. 클럭 단자170에는 제 1의 레지스터제어신호 DW1이 입력된다. 출력단자172는 버퍼164에 접속되어 있다.
이 제 1의 레지스터162는 제 1의 레지스터 제어신호 DW1에 따라서, 입력단자168로부터 설정 값을 입력한다.
버퍼164는 입력단자176, 제어단자178, 및 출력단자180을 구비하고 있다. 입력단자176에는 제 1의 레지스터162의 출력단자172로부터 설정 값이 입력된다. 제어단자178에는, AND게이트182의 출력신호가 입력된다. 이 AND게이트182에는 테스트신호 RAMTEST 및 기록 신호 WR가 입력된다. 따라서, 각각의 신호가 "1"레벨의 경우, 즉, 메모리의 테스트시에 "1"레벨의 기록 신호 WR가 입력된 경우에, AND 게이트182로부터 제어단자178에 "1"레벨의 출력신호가 입력된다. 또한, 출력단자180은 메모리부10의 데이터 입출력단자26에 접속되어 있다. 이 버퍼164는 입력단자176로부터 입력된 설정 값을 AND 게이트182의 출력신호에 따라서, 출력단자180로부터 출력한다. 제 2의 레지스터166은 입력단자184, 클럭단자186, 및 출력단자188을 구비하고 있다. 입력단자184에는 데이터 버스174를 통해, 메모리 테스트의 결과, 메모리부10이 정상이 경우에 설정 값이 설정된 메모리 회로800로부터 출력되는 데이터인 기대값 데이터가 입력된다.
클럭단자186에는 제 2의 제어신호 DW2가 입력된다. 또한 이 출력단자188은 비교회로138의 제 1의 입력단자154에 접속되어 있다. 이 제 2의 레지스터166은 제2의 제어신호 DW2에 따라서, 입력단자184로부터 기대값 데이터를 입력한다.
또한, 비교회로138은 제 1의 입력단자154, 제 2의 입력단자156, 제어단자158, 및 출력단자160을 구비하고 있다. 제 1의 입력단자154는 데이터 버스152를 통해, 제 2의 레지스터166의 출력단자188에 접속되어 있다. 제 2의 입력단자156은 데이터 버스150을 통해, 메모리부10의 데이터 입출력단자26에 접속되어 있다. 이 제 2의 입력단자156에는 테스트 패턴의 설정 값이 설정된 메모리부10의 출력데이터가 입력된다. 제어단자158은 제 2의 셀렉터16의 출력단자56에 접속되어 있다. 이 제어단자158에는 판독 신호 RD가 입력된다. 출력단자160은 예컨대, 메모리 회로800의 외부의 테스터에 접속되어 있다. 이 비교회로138은 제 1의 입력단자154로부터 입력된 출력데이터와 제 2의 입력단자156로부터 입력된 기대값 데이터와의 비교결과, CMP를 출력단자160로부터 출력한다.
이와 같이 구성된 본 발명의 제 4의 실시의 형태인 메모리 회로800의 동작에 대해서 설명한다. 메모리 회로800로서는, 설정 값 및 이 설정 값에 대한 기대값 데이터를 메모리 회로800의 외부에서 설정한다.
우선, 메모리의 테스트에 앞서서, 제 1의 레지스터162의 클럭단자170에 "1"레벨의 제 1의 제어신호 DW1을 입력하여, 제 1의 레지스터162의 입력단자168에 데이터 버스174로부터 설정 값을 입력한다. 이 설정 값은 제 1의 레지스터 162의 출력단자172로부터 버퍼164의 입력단자178로 입력된다. 버퍼164는 이것을 격납하여 출력한다.
또한, 메모리의 테스트에 앞서서 제 2의 레지스터166의 클럭단자186에 "1"레벨의 제 2의 제어신호 DW2를 입력하여, 제 2의 레지스터166의 입력단자184에 데이터 버스174로부터 기대값 데이터를 입력한다. 버퍼166은 이것을 격납하여 출력한다. 따라서, 기대값 데이터는 제 2의 레지스터166의 출력단자188로부터 비교회로138의 제 1의 입력단자154에 입력된다. 다음에, "1"레벨의 테스트신호 RAMTEST 및 "1"레벨의 기록 신호 WR를 각각 AND 게이트182에 입력한다. 이들에 의해, AND 게이트182로부터 버퍼164의 제어단자178에 "1"레벨의 출력신호가 입력된다. "1"레벨의 출력신호가 입력된 버퍼164는 설정 값을 출력단자180로부터 출력한다. 출력단자180로부터 출력된 설정 값은 메모리부10의 데이터 입출력단자26에 입력되어, 메모리부10에 기록된다.
다음에, 메모리부10의 판독 신호 입력단자22에 "1"레벨의 판독 신호 RD를 입력한다. 이 결과, 설정 값의 출력데이터가 메모리부10의 데이터 입출력단자26로부터 출력되어 판독된다. 이 출력데이터는 데이터 버스150을 통해, 비교회로138의 제 2의 입력단자156으로 입력된다. 또, AND 게이트182는 "0"레벨의 출력신호로 되기 때문에, 버퍼164로부터의 출력이 금지된다.
다음에, 비교회로138에서 제 1의 입력단자154로부터 입력된 기대값 데이터와 제 2의 입력단자156로부터 입력된 테스트 패턴의 설정 값을 비교한다. 이 비교결과 CMP는 비교회로138의 출력단자160로부터 출력된다. 비교결과 CMP는 여기서는 출력데이터와 기대값 데이터가 일치한 경우에는 "0"레벨의 신호로 해서, 출력데이터와 기대값 데이터와가 일치하지 않은 경우에는 "1"레벨의 신호로 해서 출력한다.
따라서, 제 4의 실시의 형태의 메모리 회로800에 의하면, 비교결과 CMP가"1"레벨이 되는 경우만을 테스터로써 체크함에 의해, 메모리의 테스트를 용이하게 행할 수 있다.
이와 같이, 제 4의 실시의 형태의 메모리 회로800에 의하면, 제 1의 레지스터162 및 제 2의 레지스터166을 사용하여, 설계자가 상황에 따라서 임의의 테스트패턴으로 메모리의 테스트를 행할 수도 있다. 상술한 각 실시의 형태로서는, 본 발명을 특정한 재료를 사용하여, 특정한 조건으로 구성한 예에 대해서만 설명하였지만 각 실시의 형태에 나타내는 본 발명은 많은 변경 및 변형을 행할 수 있다. 예컨대, 상술의 실시의 형태에서는, "GALLOPING"의 테스트 패턴의 경우에 대해서 설명하였지만, 본 발명으로서는, "CHECKERBOARD" 및 "MARCHING"을 비롯한 여러 가지의 테스트 패턴을 사용할 수 있다. 또한, 본 발명에 있어서는, 신호의"0"레벨과 "1"레벨을 교체하여 동작하더라도 좋다.
이와 같이, 본 발명은 메모리 회로의 테스트로 해서, 특히 주기적으로 메모리셀을 지정할 필요성이 있는 테스트를 행하는 메모리 회로에 사용하는 데 적합한다.

Claims (9)

  1. 복수의 메모리셀을 가지는 메모리 회로에 대해, 입력되는 어드레스 신호로 지정된 메모리셀에 대한 소정의 테스트를 실행하는 메모리 테스트 회로에 있어서,
    제 1의 클럭신호가 입력되고, 해당 제 1의 클럭신호에 응답하여, 상기 메모리 회로의 복수의 메모리셀에 대하여, 테스트대상의 메모리셀을 지정하기 위한 어드레스 신호를 순차 생성하여, 제 1의 출력데이터로 해서 출력하는 제 1의 어드레스생성 회로와,
    제 2의 클럭신호가 입력되고, 상기 제 2의 클럭신호에 응답하여, 상기 테스트에 따르는 상기 메모리 회로의 각 메모리셀을 지정하기 위한 제 2 어드레스 신호를 순차 생성하고, 제 2의 출력데이터로서 출력하는 제 2의 어드레스생성회로와,
    제어신호가 입력되고, 상기 제어신호에 응답하여, 제 2의 출력데이터의 전송을 제어하여, 제 3의 출력데이터로서 상기 제 2의 출력 데이터를 출력하는 출력제어회로와,
    상기 제1 및 상기 제 3의 출력데이터가 입력되어, 상기 제1 및 제 3의 출력데이터에 따라서 연산을 행하고, 이 연산결과를 출력어드레스 신호로 해서 출력하는 연산회로를 가지는 것을 특징으로 하는 메모리 테스트 회로.
  2. 제 1 항에 있어서,
    상기 연산회로는 가산처리를 행하는 것을 특징으로 하는 메모리 테스트 회로.
  3. 제 1 항에 있어서,
    상기 제 1 및 상기 제 2 어드레스생성회로는 카운터로부터 형성된 것을 특징으로 하는 메모리 테스트 회로.
  4. 제 3 항에 있어서,
    상기 제 1 및 상기 제 2의 어드레스생성회로는 리셋트기능을 가지는 것을 특징으로 하는 메모리 테스트 회로.
  5. 제 1 항에 있어서,
    상기 출력제어회로는 상기 제 2의 출력데이터의 상위 q 비트의 데이터를 n 비트중의 하위측 q 비트로 대체하는 기능을 가지는 것을 특징으로 하는 메모리 테스트 회로.
  6. 제 5 항에 있어서,
    상기 제어신호는 제 1 및 제 2의 제어신호로 되고, 상기 출력제어회로는 상기 제 1의 제어신호에 응답하여, 상기 제 2의 출력데이터의 하위 m비트의 출력을 제어하는 제 1의 비트제어회로와,
    상기 제 2의 제어신호에 응답하여, 상위 q비트 또는 상기 n비트중의 하위측q 비트를 선택적으로 출력하는 선택회로와,
    상기 제 2의 제어신호에 응답하여, 상기 선택회로의 출력을 제어하는 제 2의 비트제어회로로 구성되는 것을 특징으로 하는 메모리 테스트 회로.
  7. 제 1 항에 있어서,
    상기 출력어드레스 신호에 의해 지정된 메모리셀로부터 판독된 데이터와 해당 메모리셀에 대한 기대값 데이터를 비교하여, 그 비교결과를 출력하는 비교회로를 더 가지는 것을 특징으로 하는 메모리 테스트 회로.
  8. 제 7 항에 있어서,
    상기 복수의 메모리셀에 대한 상기 기대값 데이터를 출력함과 동시에, 전환신호에 응답하여, 고정의 테스트 패턴데이터를 상기 메모리 회로로 전송하는 출력회로를 더 가지는 것을 특징으로 하는 메모리 테스트 회로.
  9. 제 7 항에 있어서,
    상기 테스트 제 1의 전송신호에 응답하여, 외부에서 입력되는 상기 복수의 메모리셀에 대한 상기 기대값 데이터를 출력하는 제 1의 전송회로와, 제 2의 전송신호에 응답하여 외부에서 입력되는 임의의 테스트 패턴데이터를 상기 메모리 회로로 전송하는 제 2의 전송회로를 더 가지는 것을 특징으로 하는 메모리 테스트 회로.
KR10-1998-0703541A 1996-09-17 1997-07-24 메모리테스트회로 KR100364830B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP245194 1996-09-17
JP8245194A JPH1092194A (ja) 1996-09-17 1996-09-17 メモリテスト回路

Publications (2)

Publication Number Publication Date
KR19990067519A KR19990067519A (ko) 1999-08-25
KR100364830B1 true KR100364830B1 (ko) 2003-05-01

Family

ID=17130028

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1998-0703541A KR100364830B1 (ko) 1996-09-17 1997-07-24 메모리테스트회로

Country Status (5)

Country Link
US (1) US6108803A (ko)
JP (1) JPH1092194A (ko)
KR (1) KR100364830B1 (ko)
TW (1) TW329526B (ko)
WO (1) WO1998012705A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100329767B1 (ko) * 1998-12-24 2002-05-09 박종섭 테스트시간을줄이기위한원형버퍼및그제어방법
JP2001101898A (ja) * 1999-09-30 2001-04-13 Ando Electric Co Ltd アドレス制御回路
KR20030083488A (ko) * 2002-04-23 2003-10-30 삼성전자주식회사 집적 회로의 동작 테스트 방법
US6886119B2 (en) * 2002-09-04 2005-04-26 Agere Systems Inc. Method and apparatus for improved integrated circuit memory testing
US7747901B2 (en) * 2005-07-20 2010-06-29 Texas Instruments Incorporated Auxiliary link control commands
US8423840B2 (en) * 2008-05-21 2013-04-16 Advantest Corporation Pattern generator

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63191977A (ja) * 1987-02-05 1988-08-09 Hitachi Ltd メモリicの試験パターン発生装置
JPH033200A (ja) * 1989-05-30 1991-01-09 Nec Corp 半導体記憶装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4429389A (en) * 1981-05-26 1984-01-31 Burroughs Corporation Test pattern address generator
US4876685A (en) * 1987-06-08 1989-10-24 Teradyne, Inc. Failure information processing in automatic memory tester
JPH0812230B2 (ja) * 1988-09-06 1996-02-07 株式会社日立製作所 Ic試験装置
JPH02202640A (ja) * 1989-02-01 1990-08-10 Seiko Epson Corp パターン発生装置
EP0382246A3 (en) * 1989-02-09 1991-09-11 Nec Corporation Bit addressing system
JP2568268B2 (ja) * 1989-02-23 1996-12-25 沖電気工業株式会社 データ列発生回路及びその回路を用いたメモリテスト装置
US5321701A (en) * 1990-12-06 1994-06-14 Teradyne, Inc. Method and apparatus for a minimal memory in-circuit digital tester
US5386523A (en) * 1992-01-10 1995-01-31 Digital Equipment Corporation Addressing scheme for accessing a portion of a large memory space

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63191977A (ja) * 1987-02-05 1988-08-09 Hitachi Ltd メモリicの試験パターン発生装置
JPH033200A (ja) * 1989-05-30 1991-01-09 Nec Corp 半導体記憶装置

Also Published As

Publication number Publication date
US6108803A (en) 2000-08-22
WO1998012705A1 (fr) 1998-03-26
TW329526B (en) 1998-04-11
JPH1092194A (ja) 1998-04-10
KR19990067519A (ko) 1999-08-25

Similar Documents

Publication Publication Date Title
US3961252A (en) Testing embedded arrays
US5938784A (en) Linear feedback shift register, multiple input signature register, and built-in self test circuit using such registers
US4300234A (en) Address pattern generator for testing a memory
US4969126A (en) Semiconductor memory device having serial addressing and operating method thereof
EP0655744B1 (en) Multibit semiconductor memory device
EP1251520B1 (en) Random access memory
US6198669B1 (en) Semiconductor integrated circuit
JPS621200A (ja) 半導体メモリ
US4326290A (en) Means and methods for monitoring the storage states of a memory and other storage devices in a digital data processor
KR100890413B1 (ko) 자기 진단 기능을 내장한 반도체 기억 장치
EP1231608A1 (en) Built-in test circuit and method for an integrated circuit
US6078637A (en) Address counter test mode for memory device
KR100364830B1 (ko) 메모리테스트회로
US6907385B2 (en) Memory defect redress analysis treating method, and memory testing apparatus performing the method
US5724367A (en) Semiconductor memory device having scan path for testing
KR0135231B1 (ko) 고속 테스트 기능을 갖는 메모리 소자
KR100276504B1 (ko) 오류 데이터 저장 시스템
US5159599A (en) High speed testing for programmable logic devices
JPS63108747A (ja) ゲ−トアレイ集積回路
JPH06102327A (ja) メモリ内蔵型半導体集積回路およびその論理設計方法
JP2962032B2 (ja) アドレス・データ発生器
JP4113711B2 (ja) 半導体記憶装置
JPH06223597A (ja) 半導体装置
KR950001425B1 (ko) 반도체 메모리 장치
JP3254781B2 (ja) 半導体装置

Legal Events

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