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

메모리테스트회로 Download PDF

Info

Publication number
KR19990067519A
KR19990067519A KR1019980703541A KR19980703541A KR19990067519A KR 19990067519 A KR19990067519 A KR 19990067519A KR 1019980703541 A KR1019980703541 A KR 1019980703541A KR 19980703541 A KR19980703541 A KR 19980703541A KR 19990067519 A KR19990067519 A KR 19990067519A
Authority
KR
South Korea
Prior art keywords
output
signal
circuit
memory
address
Prior art date
Application number
KR1019980703541A
Other languages
English (en)
Other versions
KR100364830B1 (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]

Landscapes

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

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(내부로직회로, 로직회로이라고도 칭한다), 제 l의 셀렉터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에 의해 지정한다)에 데이터로서 "l"을 기록한다. 여기서는 주목셀로서 우선, 어드레스가 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가 리셋트된다. 이 상태에 있어서, 제 l의 카운터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는 l만 카운트업된다. 따라서, 제 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에 "l"레벨의 판독 신호 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의 리셋트신호 Rl, 제 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 디코더에는, 서로 같은 데이터가 입력되게 된다. 이 결과, 화살표 I에서 나타난 바와 같이 메모리셀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가 입력된다.
제 l의 출력단자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 true KR19990067519A (ko) 1999-08-25
KR100364830B1 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)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030083488A (ko) * 2002-04-23 2003-10-30 삼성전자주식회사 집적 회로의 동작 테스트 방법
KR100417333B1 (ko) * 1999-09-30 2004-02-05 안도덴키 가부시키가이샤 어드레스 제어회로

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100329767B1 (ko) * 1998-12-24 2002-05-09 박종섭 테스트시간을줄이기위한원형버퍼및그제어방법
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
KR101196492B1 (ko) * 2008-05-21 2012-11-01 가부시키가이샤 어드밴티스트 패턴 발생기

Family Cites Families (10)

* 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
JPH0754346B2 (ja) * 1987-02-05 1995-06-07 株式会社日立製作所 メモリicの試験パターン発生装置
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 沖電気工業株式会社 データ列発生回路及びその回路を用いたメモリテスト装置
JPH033200A (ja) * 1989-05-30 1991-01-09 Nec Corp 半導体記憶装置
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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100417333B1 (ko) * 1999-09-30 2004-02-05 안도덴키 가부시키가이샤 어드레스 제어회로
KR20030083488A (ko) * 2002-04-23 2003-10-30 삼성전자주식회사 집적 회로의 동작 테스트 방법

Also Published As

Publication number Publication date
TW329526B (en) 1998-04-11
WO1998012705A1 (fr) 1998-03-26
KR100364830B1 (ko) 2003-05-01
US6108803A (en) 2000-08-22
JPH1092194A (ja) 1998-04-10

Similar Documents

Publication Publication Date Title
JP3076185B2 (ja) 半導体メモリ装置及びその検査方法
US4300234A (en) Address pattern generator for testing a memory
KR20010037848A (ko) 반도체 메모리 장치 및 이 장치의 병렬 비트 테스트 방법
JPH10187554A (ja) 自己テスト回路を有する半導体メモリ装置
EP0655744B1 (en) Multibit semiconductor memory device
US4969126A (en) Semiconductor memory device having serial addressing and operating method thereof
JPH0378720B2 (ko)
EP0437217B1 (en) Memory tester
US6198669B1 (en) Semiconductor integrated circuit
JP2974313B1 (ja) Bist回路および半導体集積回路
JPH10170607A (ja) 半導体デバイスのテスト装置
US6571364B1 (en) Semiconductor integrated circuit device with fault analysis function
JPH0743429A (ja) 物理アドレス変換回路
US6907385B2 (en) Memory defect redress analysis treating method, and memory testing apparatus performing the method
KR100364830B1 (ko) 메모리테스트회로
US5724367A (en) Semiconductor memory device having scan path for testing
US7386650B2 (en) Memory test circuit with data expander
US5159599A (en) High speed testing for programmable logic devices
KR100371476B1 (ko) 반도체 집적 회로
JPH0512900A (ja) テスト機能を有する半導体記憶装置及びそのテスト方法
JP2000030491A (ja) 不良解析メモリ
JPS63108747A (ja) ゲ−トアレイ集積回路
JPH06102327A (ja) メモリ内蔵型半導体集積回路およびその論理設計方法
US6728155B2 (en) Serial access memory and data write/read method
JP2962032B2 (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