KR20030093104A - 반도체집적회로 및 그 테스트방법 - Google Patents

반도체집적회로 및 그 테스트방법 Download PDF

Info

Publication number
KR20030093104A
KR20030093104A KR10-2003-0033559A KR20030033559A KR20030093104A KR 20030093104 A KR20030093104 A KR 20030093104A KR 20030033559 A KR20030033559 A KR 20030033559A KR 20030093104 A KR20030093104 A KR 20030093104A
Authority
KR
South Korea
Prior art keywords
test
memory
information
memories
address
Prior art date
Application number
KR10-2003-0033559A
Other languages
English (en)
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 KR20030093104A publication Critical patent/KR20030093104A/ko

Links

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/26Accessing multiple arrays
    • 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
    • G11C2029/1806Address conversion or mapping, i.e. logical to physical address
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/26Accessing multiple arrays
    • G11C2029/2602Concurrent test
    • 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
    • G11C2029/3202Scan chain

Landscapes

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

Abstract

본 발명은 반도체집적회로 및 그 테스트방법에 관한 것으로, 복수의 온칩 메모리에 대한 마치배턴 등에 의한 메모리 테스트효율을 향상시킨다.
억세스 데이터폭 및 어드레스 디코드 논리의 다른 복수의 메모리(11 ~ 15)에 접속되는 공통테스트버스(31)로부터의 테스트 데이터정보를 각 메모리에 고유의 억세스 데이터폭에 변환하는 것과 동시에, 공통데스트버스로부터의 테스트 어드레스정보를 각 메모리에 고유의 비트배열에 변환해서, 대응 메모리에 공급하는 복수의 브리지회로(21 ~ 25)를 설치한다. 복수의 메모리에 공통테스트버스에서 병렬로 테스트 어드레스정보를 공급해서 병렬테스트가 가능하게 된다. 억세스 데이터폭의 다른 복수의 메모리에 대해 테스트 데이터정보를 병렬로 공급할 수가 있고, 테스트 어드레스정보에 대한 각각의 메모리에 있어서의 어드레스 스캔방향을 고유의 비트배열에 따라 특정방향에 통일할 수가 있는 기술은 제공하는 것이다.

Description

반도체집적회로 및 그 테스트방법{SEMICONDUCTOR INTEGRATED CIRCUIT AND TESTING METHOD THEREOF}
본 발명은 억세스 데이터폭이나 어드레스 디코드논리의 상이하는 복수개의 메모리에 대한 테스트기술에 관하여, 예를 들면 그러한 메모리를 복수개 온칩으로 구비하는 마이크로 컴퓨터 혹은 이른바 시스템LSI와 같은 반동체집적회로에 적용하여 유효한 기술에 관한 것이다.
마이크로 컴퓨터나 시스템LSI 등의 반도체집적회로에 온칩된 복수의 메모리에 대한 테스트기술에 대해 기재된 문헌으로서, 일본특개2000-111618, 일본특개평11-250698이 있다. 그것들 문헌에서는 온칩메모리의 전단에서 테스트 데이터의 비트확장을 행하고 있다.
또, 메모리 테스트에서는 랜덤억세스 등을 보증하기 위한, 메모리셀간 간섭, 워드선 디스터브, 비트선 디스터브에 의한 영향을 고려하는 것이 필요하고, 모든 경우를 검증하려고 하면 방대한 테스트시간을 필요로 하고, 현실적이지 않다. 그래서, 효율적으로 검증을 행하기 위한 수법으로서 마치패턴이나 워킹패턴 등의 수법이 종래로부터 채용되고 있다.
이 종류의 검증방법에서는 메모리셀 어레이에 대해 억세스단위의 메모리셀을 행방향으로 순차적으로 선택하면서 데이터를 소정값에 개서(改書)해나가거나, 열방향으로 순차적으로 선택하면서 데이터를 소정값에 개서해나간다고 하는 메모리셀의 물리적인 배치에 대해 메모리셀의 선택방향을 소정의 규칙에 따라 변화시키는 것이 필요하게 된다.
그렇지만, 종래 기술에서는 억세스 데이터폭이 다른 복수의 메모리에 대해 병렬로 고유의 억세스 데이터폭에 변환하는 것은 고려되어 있지 않다.
또, 종래는 어드레스 디코드논리의 다른 복수의 메모리가 온칩되어 있을 경우, 그것들에 대해 공통적으로 어드레스를 입력해도, 어드레스 디코드논리가 상이함에 따라, 다시 말하자면, 메모리 어드레스공간에 있어서의 메모리셀의 물리적인 메핑의 상이함에 따라, 어드레스 인크리먼트에 의해 메모리셀의 선택을 열방향 혹은 행방향에 통일해서 순차적으로 갱신할 수가 없다. 이로 인하여, 온칩메모리마다 고유의 어드레스 메핑에 따른 어드레스갱신을 행하면서, 마치패턴 등의 수법에 의한 메모리 테스트를 행하지 않으면 안 되었다. 이것에 의해, 온칩 메모리의 테스트시간이 증대한다고 하는 문제가 있었다. 어드레스 데이터폭이 다른 복수의 메모리간에 있어서도 동일한 문제가 있다.
본 발명의 목적은 복수의 메모리에 대한 테스트시간을 단축할 수 있는 반도체집적회로를 제공하는 데에 있다.
본 발명의 다른 목적은 복수의 메모리에 대한 테스트시간을 단축할 수 있는 테스트방법을 제공하는 데에 있다.
본 발명의 상기 및 그 이외의 목적과 신규 특징은 본 명세서의 서술 및 첨부도면에서 명확하게 될 것이다.
본원에 있어서 개시되는 발명 가운데 대표적인 것의 개요를 간단하게 설명하면 아래와 같다.
[1] 억세스 데이터폭이 다른 복수의 메모리 및 상기 메모리를 억세스제어 가능한 논리회로를 포함하는 반도체집적회로에 있어서, 상기 복수의 메모리에 접속되는 공통테스트버스와, 상기 공통테스트버스로부터의 테스트 데이터정보를 각 메모리에 고유의 억세스 데이터폭에 변환해서 대응하는 메모리에 공급하는 복수의 브리지회로를 설치하고, 복수의 메모리에 공통테스트버스로부터 병렬로 테스트 데이터정보를 공급하여 병렬테스트를 가능하게 한다.
상기 수단에 따르면, 억세스 데이터폭이 다른 복수의 메모리에 대해 테스트 데이터정보를 병렬로 공급해도, 브리지회로가 테스트 데이터정보를 대응메모리에 고유의 억세스 데이터폭에 변환할 수가 있다. 억세스 데이터폭이 다른 복수의 메모리에 대해 테스트 데이터정보를 병렬로 공급할 수 있다고 하는 점에 있엉서, 온칩 메모리의 테스트효율을 향상시킬 수가 있다.
어드레스 디코드논리가 다른 복수의 메모리 및 상기 메모리를 억세스제어 가능한 논리회로를 포함하는 반도체집적회로에 있어서, 상기 복수의 메모리에 접속되는 공통테스트버스와, 상기 공통테스트버스로부터의 테스트 어드레스정보를 각 메모리에 고유의 비트배열에 변환하여 대응하는 메모리에 공급하는 복수의 브리지회로를 설치하고, 복수의 메모리에 공통테스트버스에서 병렬로 테스트 어드레스정보를 공급하여 병렬테스트를 가능하게 한다.
상기 수단에 따르면, 어드레스 디코드논리가 다른 복수의 메모리에 대해 테스트 어드레스정보를 병렬로 공급해도, 브리지회로가 테스트 어드레스정보를 대응메모리에 고유의 비트배열로 변환한다. 테스트 어드레스정보에 대한 각각의 메모리에 있어서의 어드레스 스캔방향을 고유의 비트배열에 따라 특정방향에 통일하는 것이 가능하게 된다. 이 점에 대해서 복수의 온칩 메모리에 대한 마치패턴 등에 의한 메모리 테스트 효율을 향상시킬 수가 있다.
상기 테스트 데이터정보에 대한 브리지회로 및 테스트 어드레스정보에 대한 브리지회로의 쌍방을 채용하는 것도 가능하다.
[2] 본 발명의 바람직한 하나의 형태로서, 상기 브리지회로는 변환가능한 비트배열을 테스트제어정보에 따라 선택가능하게 해도 좋다. 마치패턴 등에 의한 어드레스 스캔방향은 적어도 행방향 및 열방향의 쌍방으로 하는 경우가 일반적이고, 그 어느 쪽에도 간단하게 대응할 수 있게 된다.
본원의 바람직한 하나의 형태로서, 상기 브리지회로는 메모리로부터의 독출정보와 공통테스트버스로부터의 기대치정보를 비교하는 비교수단과, 상기 비교수단에 의한 비교결과에 따라 메모리의 불량정보를 보지하는 래치수단을 갖는 것이 좋다. 복수의 메모리에 대한 병렬테스트결과를 래치수단으로부터 순서대로 직렬적으로 얻는 것이 가능하게 된다.
상기 래치수단은 불량 어드레스를 래치하는 어드레스 래치수단과, 불량의 비교결과를 래치하는 불량플래그수단으로부터 구성해도 좋다. 불량발생의 소재도 분명해진다.
상기 브리지회로는 상기 래치수단의 출력을 입력해서 직렬적으로 출력가능하게 하는 스캔패스용의 시프트 레지스터 수단을 가져도 좋다. 병렬테스트결과를 래치수단으로부터 순서대로 직렬적으로 얻는 것이 용이하게 된다.
[3] 본 발명의 바람직한 하나의 형태로서, 상기 브리지회로는 메모리로부터의 독출정보와 공통테스트버스로부터의 기대치정보를 비교하는 비교수단과, 상기 비교수단에 의한 비교결과에 다른 브리지회로로부터의 비교결과출력과의 논리합계를 채택하고 또한 다른 브리지회로에 출력하는 게이트수단을 갖고, 복수의 게이트수단을 상기 게이트수단의 출력이 차단 게이트수단의 입력에 접속하도록 직렬형태에 접속하여 구성하면 좋다.
상기 수단에 따르면, 복수의 메모리에 대해 테스트 데이터정보를 갱신하면서 테스트 어드레스정보를 갱신하고, 어드레스 스캔을 따르는 병렬테스트를 순서대로 진행해나가는데 있어서, 비교불일치에 의한 에러를 어느 하나의 메모리에서 생기면, 최종단 게이트수단의 출력이 변화한다. 이 최종단 출력을 모니터함으로써, 복수메모리에 대한 병렬테스트를 행하면서, 테스트의 계속/중지의 판정(Go/No go판정)을 행할 수 있다.
[4] 본 발명의 바람직한 하나의 형태로서, 상기 복수의 메모리의 적어도 하나는 멀티포트메모리이고, 상기 멀티포트메모리에 대응되는 브리지회로는 상기 공통테스트버스에 접속하는 포트의 선택과, 상기 공통테스트버스에 비접속이 선택된 포트에 디스터브정보를 입력가능하게 하는 것이 좋다. 디스터브정보는 임의의 패턴데이터이라도 좋다. 이것에 의해, 멀티포트를 갖는 경우에는 포트간 간섭의 테스트를 병용할 수 있고, 멀티포트메모리에 대한 테스트의 신뢰성을 향상시킬 수 있다.
[5] 억세스 데이터폭이 다른 복수의 메모리를 공통테스트버스를 통해 병렬로 테스트하는 테스트방법은 테스트 데이터정보를 상기 공통테스트버스에 공급하는 처리와, 상기 공통테스트버스에서 테스트 데이터정보를 입력하여 대응하는 메모리에 고유의 억세스 테이터폭에 변환하는 처리와, 변환된 테스트데이터정보를 대응하는 메모리에 병렬로 기입하는 처리와, 기입된 테스트 데이터정보를 복수의 메모리로부터 독출하는 처리와, 독출된 테스트 데이터정보와 기대치정보를 메모리단위로 비교해서 메모리 에러정보를 생성하는 처리를 포함한다.
이 테스트방법에 따르면, 억세스 데이터폭이 다른 복수의 메모리에 대해 테스트 데이터정보를 병렬적으로 공급해도, 테스트 데이터정보를 대응메모리에 고유의 어드레스 데이터폭에 변환할 수가 있다. 억세스 데이터폭이 다른 복수의 메모리에 대해 테스트 데이터정보를 병렬로 공급할 수 있다는 점에 있어서, 억세스 데이터폭이 다른 복수의 메모리에 대한 테스트효율을 향상시킬 수 있다.
어드레스 코드논리가 다른 복수의 메모리를 공통테스트버스를 통해 병렬적으로 테스트하는 테스트방법은 테스트 어드레스정보를 상기 공통테스트버스에 공급하는 처리와, 상기 공통테스트버스로부터 테스트 어드레스정보를 입력하여 대응하는 메모리에 고유의 비트배열에 변환하는 처리와, 변환된 테스트 어드레스정보를 이용해서 대응하는 메모리에 테스트 데이터를 계열에 기입처리와, 기입된 테스트 데이터를 복수의 메모리로부터 독출하는 처리와, 독출된 테스트 데이터와 기대치정보를 메모리단위로 비교하여 메모리 에러정보를 생성하는 처리를 포함한다.
상기 테스트방법에 따르면, 어드레스 코드논리가 다른 복수의 메모리에 대해 테스트 어드레스정보를 병렬적으로 공급해도, 테스트 어드레스정보를 대응메모리에 고유의 비트배열로 변환할 수가 있다. 따라서, 테스트 어드레스정보에 대한 각각의 메모리에 있어서의 어드레스 스캔방향을 고유의 비트배열에 따라 특정방향에 통일하는 것이 기능하게 된다. 이 점에 있어서 어드레스 디코드논리가 다른 복수의 메모리에 대한 마치패턴 등에 의한 메모리 데스트효율을 향상시킬 수가 있다.
도 1은 본 발명에 관한 반도체집적회로가 갖는 메모리블록의 상세를 예시하는 블록도이다.
도 2는 본 발명에 관한 반도체집적회로의 일례인 마이크로 컴퓨터의 평면적구성 설명도이다.
도 3은 메모리가 다른 디코드논리를 예시하는 설명도이다.
도 4는 싱글포트 메모리용의 브리지회로의 기본적구성을 예시하는 블록도이다.
도 5는 어드레스 변환회로의 일례를 도시하는 회로도이다.
도 6은 테스트 컨트롤러의 입출력정보를 예시하는 설명도이다.
도 7은 듀얼포트용의 브리지회로의 기본적구성을 예시하는 블록도이다.
도 8은 포트간 간섭테스트의 동작모드를 예시하는 설명도이다.
도 9는 메모리블록에 대한 병렬테스트시에 있어서의 하나의 싱글포트 메모리의 동작타이밍차트이다.
도 10은 메모리블록에 대한 병렬테스트시에 있어서의 하나의 듀얼포트 메모리에 있어서의 포트간 간섭동작의 타이밍차트이다.
도 11은 도 1의 마이크로 컴퓨터 등의 반도체집적회로에 대한 테스트방법의 플로차트이다.
도 2에는 본 발명에 관한 반도체집적회로의 일례인 마이크로 컴퓨터의 평면적인 구성이 예시된다. 동도에 도시되는 마이크로 컴퓨터는 예를 들면 단결정실리콘과 같은 1개의 반도체기판에 CMOS집적회로 제조기술에 의해 형성된다.
마이크로 컴퓨터(1)는 반도체기판의 주위에 입출력회로(IO; 2)를 갖고, 그 안쪽에 마이크로 프로세서(MPU; 3), 제 1 로직회로(LOG1; 4), 제 2 로직회로(LOG2; 5), 제 3 로직회로(LOG3; 6) 및 메모리 블록(7)을 갖고, 그것들 회로 블록은 내부버스(8)에 공통적으로 접속된다. 마이크로 컴퓨터는 그 외에 테스트용회로로서 대표적으로 도시된 테스트 컨트롤러(9)를 구비한다. 내부버스(8)는 어드레스, 데이터 및 제어신호를 전파한다. 상기 로직회로(3 ~ 5)는 특별히 제한되지 않지만, MPU3의 액셀러레이터로서 위치를 부여되는 착오 정정회로, ATAPI 등의 인터페이스 컨트롤러, 부호화 복호논리 등으로 된다.
도 1에는 메모리블록(7)의 상세가 예시된다. 메모리블록(7)은 3개의 싱글포트메모리(11 ~ 13)와 2개의 듀얼포트메모리(14, 15)를 갖는다. 메모리(11)는 1KW(킬로ㆍ워드) ×16비트의 기억용량을 갖고 억세스 데이터폭은 16비트이다. 메모리(12)는 2KW ×8비트의 기억용량을 갖고 억세스 데이터폭은 8비트이다. 메모리(13)는 256KW ×16비트의 기억용량을 갖고 억세스 데이터폭은 16비트이다. 메모리(14)는 1KW ×8비트의 기억용량을 갖고 억세스 데이터폭은 8비트이다. 메모리(15)는 704W ×12비트의 기억용량을 갖고 억세스 데이터폭은 12비트이다.
상기 싱글포트메모리(11, 12, 13)는 특별히 제한되지 않지만, SRAM(Static Random Access Memory)로부터 이루고, 도시는 생략하지만, 스태틱 래치형태의 메모리셀이 매트릭스 배치된 메모리 어레이, 메모리셀의 선택단자가 접속되는 워드선을 구동하는 워드 드라이버, 워드 드라이버로 구동하는 워드선을 선택하는 로디코다, 메모리셀의 데이터입출력단자가 접속된 비트선을 선택적으로 공통데이터선에 접속하는 컬럼스위치회로, 컬럼스위치회로의 선택신호를 생성하는 컬럼디코더, 메모리셀로부터 공통데이터선에 독출된 기억정보를 검출해서 증폭하는 센스앰프, 공통데이터선에 대한 기입데이터의 입력 및 센스앰프로 검출된 독출데이터의 출력을 행하는 데이터 입출력 버퍼, 상기 로디코더 및 컬럼디코더에 공급하는 어드레스신호를 받는 어드레스 버퍼, 및 메모리선택신호나 리드ㆍ라이트신호 등의 억세스 제어신호를 받고 메모리동작을 제어하는 타이밍 컨트롤러를 갖는다.
상기 듀얼포트메모리(14, 15)는 메모리셀마다 한쪽의 억세스포트용의 워드선 및 비트선과, 다른쪽의 포트용의 워드선 및 비트선을 갖고, 싱글포트메모리에 있어서의 워드선 선택계 및 컬럼선택계를 포트마다 구비한다.
상기 메모리(11 ~ 15)는 각각 어드레스 디코드논리가 상이된다. 예를 들면,도 3에는 메모리(13)의 디코드논리와 메모리(11)의 디코드논리가 예시된다. 메모리(13)의 디코드논리와 메모리(11)의 디코드논리가 예시된다. 메모리(13)의 디코드논리는 도 3에서 분명한 것과 같이, 어드레스(a)[1] ~ (a)[7]을 +1씩 인크리먼트하면 워드번호는 0에서 순서대로 255까지 승순(昇順)으로 변화하도록 되고, X방향스캔이 된다. 한편, 메모리(11)의 디코드논리는 어드레스(a)[0] ~ (a)[9]를 +1씩 인크리먼트하면 어드레싱되어 메모리셀의 스캔방향은 Y방향으로 최초 움직이고, a[2]보다 상위측의 변화로 X방향스캔이 된다.
도 1에 예시되는 것과 같이, 각각의 메모리(11 ~ 15)는 대응하는 브리지회로(21 ~ 25)를 통해 상기 내부버스(8)에 접속한다. 브리지회로(21 ~ 25)는 테스트컨트롤러(9)와 함께 테스트용의 회로, 즉 BIST(Built In Self Test)회로를 구성한다. 브리지회로(21 ~ 25)는 공통테스트버스(31)를 통해 테스트컨트롤러(9)에서 테스트 데이터정보, 테스트 어드레스정보 및 테스트제어정보 등이 주어지고, 그 동작이 제어된다. 브리지회로(21 ~ 25)는 상기 공통테스트버스(31)에서의 테스트 데이터정보를 각 메모리(11 ~ 15)에 고유의 억세스 데이터폭에 변환해서 대응하는 메모리(11 ~ 15)에 공급하고, 또 상기 공통테스트버스(31)로부터의 테스트 어드레스정보를 각 메모리(11 ~ 15)에 고유의 비트배열에 변환하여 대응하는 메모리(11 ~ 15)에 공급한다.
브리지회로(21 ~ 25)에 의한 억세스 데이터폭의 변경과 테스트 어드레스정보의 비트배열변경에 의해, 복수의 메모리(11 ~ 15)는 나란히 X방향 스캔 등을 행하여 메모리테스트를 병렬로 행하는 것이 가능하게 된다. 브리지회로(21 ~ 25)는 상태송수신용 신호선(32)을 통해 직렬로 접속되고, 메모리(11 ~ 15)의 병렬테스트의 결과는 상태송수신용 신호선(32)을 전파하여 테스트 컨트롤러(9)에 공급된다.
듀얼포트메모리(14, 15)에 대응이 마련된 브리지회로(24, 25)에는 듀얼포트 공통테스트버스(33)가 접속되고, 공통테스트버스(31)를 통해 듀얼포트메모리(14, 15)가 테스트될 때, 테스트 비대상포트에 듀얼포트 공통테스트버스(33)를 통해 테스트대상포트에 대한 디스터브정보를 주거나 하는 것이 기능하게 된다.
또한, 도 1에 있어서 내부버스(8)로서 어드레스버스(ABUS)와 데이터버스(DBUS)가 대표적으로 예시된다. 메모리(11 ~ 15)와 브리지회로(21 ~ 25)는 각각 전용의 신호선군(메모리ㆍ브리지간 버스)(34)에서 접속된다.
도 4에는 싱글포트메모리용의 브리지회로(21; 22, 23)에 기본적인 구성이 예시된다. 메모리 테스트시에 이용하는 공통테스트버스(31)로부터의 입력신호(도에 나타나는 ■의 단자로부터의 입력신호)는 이하와 같다. 즉, te는 보통동작시 입력과 테스트시 입력의 전환을 행하는 전환신호, t_resb는 메모리 리세트신호, t_we는 기입제어신호, t_bs는 모듈선택신호이다. t_ck는 클럭신호, t_d는 4비트에 압축한 테스트데이터 입력신호(테스트 데이터정보), t_a는 어드레스신호(테스트 어드레스정보)이다. br_sm은 어드레스 스캔방식을 선택하는 신호, br_ref는 메모리출력을 판정하기 위한 기대치입력신호, br_en은 브리지의 판정을 행하는가의 여부를 제어하는 신호, br_resb는 브리지회로의 리세트신호, br_sck는 스캔클럭 입력신호이다.
상기 상태송수신용 신호선(32)로부터의 입출력신호(도에 이중의 □로 나타나는 단자로부터의 입출력신호)는 이하와 같다. br_async_in은 에러신호를 비동기에서 입력하는 신호이다. br_async_out는 에러신호를 비동기에서 송신하는 신호이다. br_async_in은 브리지회로의 상태를 신호br_sck와 동기하여 수신하는 입력신호이다. br_async_out는 브리지회로의 상태를 신호br_sck와 동기하여 송신하는 송신신호이다.
메모리ㆍ브리지간 버스(34)를 통해 입출력되는 신호(도의 ×있는 □로 나타나는 단자로부터의 입출력신호)는 이하와 같다. 메모리제어신호, 예를 들면 m_resb는 리세트신호, m_we는 기입제어신호, m_bs는 모듈선택신호이다. m_ck는 클럭신호, m_d는 메모리에의 기입데이터, m_a는 억세스 어드레스신호, m_q는 메모리로부터의 독출데이터이다.
내부버스(8)를 통해 입출력되는 보통 동작시의 신호(도의 □단자로부터의 입출력신호)는 이하와 같다. 메모리신호, 예를 들면 resb는 리세트신호, we는 기입제어신호, bs는 모듈선택신호이다. ck는 클럭신호, d는 입력데이터, a는 어드레스신호, q는 메모리 출력데이터이다.
멀티플렉서(mux)는 내부버스(8) 또는 공통테스트버스(31)중 어느 것을 브리지ㆍ메모리간 버스(34)에 접속하는가를 신호(te)에 의해 선택한다. 셀렉터(sel)는 메모리로부터의 독출데이터를 내부버스(8)에 출력하거나 또는 테스트용의 뒤에 서술하는 비교회로(38)에 공급하는가를 신호(te)에 의해 선택한다.
데이터 전개회로(35)는 공통테스트버스(31)에서 4비트단위로 공급되는 테스트 데이터정보로서의 기입데이터t_d를 대응메모리에 고유의 데이터m_d의 병렬비트수 즉 억세스 데이터폭에 전개하여 후단에 출력한다. 예를 들면 4비트의 테스트 데이터정보를 t_d를 16비트에 데이터전개하는 회로는 테스트 데이터정보t_d의 각 비트를 각각 4비트로 확장하고, 테스트 데이터정보t_d를 4조 병렬시켜서 출력하는 확장경로에 의해 구성하면 좋다. 이것에 의해, 4비트의 테스트 데이터정보를 t_d의 패턴을 반복하는 형태로 데이터전개가 행해진다. 데이터전개를 행할 때의 반복수는 대응메모리의 억세스 데이터폭에 따라 고정적으로 결정하면 충분하다.
어드레스 변환회로(36)는 상기 공통테스트버스(31)로부터의 테스트 어드레스정보t_a를 대응하는 메모리에 고유의 비트배열에 변환하여 후단에 출력한다. 변환하는 비트배열의 종별, 여기서는 어드레스 스캔방향에 따른 비트배열은 신호br_sm으로 지정가능하게 되어 있다. 오버플로체크회로(37)는 어드레스변환회로(36)로 변환된 어드레스가 대응하는 메모리의 어드레스범위를 넘어는가의 여부를 검출하고, 넘은 것을 검출했을 때는 모듈선택신호m_bs를 비선택레벨로 반전시킨다.
메모리테스트에 있어서, 데이터전개회로(35)로 전개된 데이터m_d가 어드레스변환회로(36)로 변환된 어드레스m_a에 기입된다. 기입된 데이터가 메모리로부터 독출되면, 돌아감 데이터m_q로서 브리지회로(21; 22, 23)에 입력된다. 돌아감 데이터m_q는 셀렉터(sel)를 통해 비교회로(38)에 기대치데이터br_ref는 전개회로(39)를 통해 상기 비교회로(38)에 공급되고, 양입력데이터의 일치/불일치가 판별된다. 비교출력은 불일치에서 논리치"0"에서 논리치"1"에 반전된다. 결국, 이것에 의해 테스트 에러의 발생이 검출된다. 테스트 에러의 발생이 검출되면, 불량정보 즉 에러정보로서, 에러에 관한 테스트 어드레스정보t_a가 어드레스 래치회로(40)에 래치되고, 비교결과 래치회로(41)가 세트상태로 되고, 그 출력인 에러플래그(EFLG)가 논리치"1"로 된다. 각각의 래치동작은 테스트용의 클럭신호t_ck에 동기된다.
취득된 불량정보의 외부출력은 스캔패스의 일부를 구성하는 시프트 레지스터(42) 및 논리 합계 게이트(OR; 43)에 의해 행한다.
논리 합계 게이트(43)는 비교회로(38)에 의한 비교결과와 전단 브리지회로에서의 비교회로에 의한 비교결과와의 논리합계를 형성하여 출력한다. 따라서, 복수의 메모리(11 ~ 15)에 대해 테스트 데이터정보를 주면서 테스트 어드레스정보를 갱신하여, 어드레스 스캔을 따른 병렬테스트를 순차적으로 진행시켜 나가는 데에 있어서, 비교회로(38)에 의한 비교불일치의 에러를 어느 하나의 메모리에서 생기면, 그 변화는 최종단 브리지회로(25)의 출력신호br_async_out에 반영된다. 이 최종단 출력을 테스트 컨트롤러(9)를 경유해서 외부의 테스터 등에서 모니터함으로써, 복수메모리에 대한 병렬테스트를 행하면서 테스트의 계속/중지의 판단(Go/No go 판정)을 행할 수가 있다.
상기 시프트 레지스터(42)는 각각 플립플롭이 직렬배치된 직렬접속형태의 제 1FF체인(42A) 및 제 2FF체인(42B)에 의해 구성된다. 제 2FF체인(42B)은 어드레스 래치회로(40)가 래치한 어드레스정보를 병렬로 래치하고, 제 1FF체인(42A)은 에러플래그(EFLG)를 래치한다. 시프트 레지스터(42)에 래치된 불량정보는 스캔클럭br_sck에 동기하여 브리지회로간을 걸쳐 상태송수신용 신호선(32)에서 테스트 컨트롤러(9)에 공급된다. 이 불량정보의 스캔패스 출력동작은 예를 들면, 상기 최종 브리지회로(25)의 출력신호br_async_out에 의해 에러발생을 검출했을 때,테스트 컨트롤러(9)가 테스트의 계속을 정지한 후에 행하면 좋다. 또한, 어드레스 래치회로(40) 및 비교결과 래치회로(41)에서 래치데이터가 시프트 레지스터(42)에 로드되는 타이밍은 스캔클럭br_sck의 최초의 펄스변화에 동기된다. 그 이후 시프트 레지스터(42)는 신호br_resb로 리세트될 때까지 래치회로(40, 41)의 출력을 받아들이지 않고, 스캔클럭br_sck의 변화에 동기해서 데이터 시프트동작을 할 뿐으로 된다.
상기 스캔패스 출력동작에 있어서, 테스트 컨트롤러(9)의 출력을 받는 테스터(미도시)는 스캔클럭br_sck를 계수하면서, br_async_out에서 에러플래그(EFLG)를 감시하고, 논리치"1"를 검출했을 때의 스캔클럭br_sck계수치에서 에러발생원의 메머리를 식별할 수 있다. 각 브리지회로(21 ~ 25)에 있어서의 시프트 레지스터(42)의 시프트단수는 미리 알고 있기 때문이다. 또, 상기 테스터는 논리치"1"의 에러플래그(EFLG)직전의 어드레스정보를 br_sync_out로부터 취득함으로써 에러발생에 관한 메모리 어드레스를 식별할 수가 있다.
도 5에는 어드레스 변환회로(36)의 일례가 도시된다. 이 어드레스 변환회로(36)는 1KW ×16비트의 메모리(11)에 대응하는 브리지회로(21)내장의 회로구성이다. 입력 어드레스신호t_a[9:0]와 m_a[9:0]의 배열변경은 부선논리(44)로 고정적으로 행하고, X스캔, C스캔, Y스캔의 3자지로 배열변경을 행한다. 3형태 가운데 출력형태의 선택은 2비트의 신호br_sm에 따라 셀렉터(45)로 행한다. 도 5의 배열변경논리는 도 3의 메모리(11)에 있어서의 어드레스 디코드논리에 준거하고 있다. 이 경우, X스캔은 어드레스 인크리먼트에 의한 기본적인 스캔방향이 X방향, Y스캔은 어드레스 인크리먼트에 의한 기본적인 스캔방향이 Y방향, C스캔은 어드레스 인크리먼트에 의한 스캔방향이 이전 어드레스에서 참조된 메모리셀과 접하지 않는 방향인 것을 의미한다.
도 6에는 테스트 컨트롤러(9)의 입출력정보가 예시된다. 테스트 컨트롤러(9)에서 마이크로 컴퓨터(1)의 외부에 인출되어 있는 신호는 도시를 생량하는 테스터와 인터페이스된다. 테스트 컨트롤러(9)는 테스트 어드레스정보를 순차적으로 인크리먼트하여 생성하는 어드레스 카운터(47)를 갖는다. 어드레스 카운터(47)의 계수초기치는 테스트 제서신호로 주어진다.
도 7에는 듀얼포트용의 브리지회로(24, 25)의 기본적구성이 예시된다. 도 4와의 상이점은 테스트공통버스(31)를 통해 테스트 대상포트의 선택기능과 듀얼포트테스트 공통버스(33)를 통해 디스터브정보 입력기능을 갖는 점이다.
메모리 테스트시에 사용하는 공통테스트버스(31)로부터의 입력정보(도에 나타나는 ■의 단자로부터의 입력신호)는 도 4와 같다. 상기 상태송수신용 신호선(32)으로부터의 입력신호(도에 이중의 □로 도시되는 단자에서의 입출력신호)는 도 4와 같다. 메모리 테스트시에 사용하는 듀얼포트 공통신호선(33)으로부터의 입력신호(도의 사선 있는 □로 도시되는 단자로부터의 입력신호)는 이하와 같다. 메모리 제어신호, 예를 들면 td_resb는 리세트신호, td_we는 기입제어신호, td_bs는 모듈선택신호이다. td_ck는 클럭신호, td_d는 디스터브정보로서의 테스트 데이터신호, td_a는 1비트의 어드레스신호이다. br_chport는 듀얼포트의 어느 쪽을 공통테스트버스(31)에 대응시켜, 어느 쪽을 듀얼포트 공통테스트버스(33)에 대응시킬까를 제어하는 제어신호이다.
메모리ㆍ브리지간버스(34)를 통해 입출력되는 신호(도의 ×있는 □의 단자로부터의 입출력신호)는 이하와 같다. m_resb는 리세트신호이다. 제 1의 억세스포트에 대응하는 메모리 제어신호, 예를 들면 m_wep(1)는 기입제어신호, m_bsp(1)는 모듈선택신호이다. 또한 제 1의 포트에 대응하여, m_ckp(1)는 클럭신호, m_dp(1)는 데이터, m_ap(1)는 어드레스, m_qp(1)는 메모리로부터 독출데이터이다. 제 2의 억세스포트에 대응하는 메모리제어신호, 예를 들면 m_wep(2)는 기입제어신호, m_bsp(2)는 모듈선택신호이다. 또한 제 2의 억세스포트에 대응하여, m_ckp(2)는 클럭신호, m_dp(2)는 데이터, m_ap(2)는 어드레스, m_qp(2)는 메모리로부터 독출데이터이다.
내부버스(8)를 통해 입출력되는 보통 동작시의 신호(도의 □의 단자로부터의 입출력신호)는 이하와 같다. resb는 리세트신호이다. 제 1의 억세스포트에 대응하는 메모리 제어신호, 예를 들면 wep(1)는 기입제어, bsp(1)는 모듈선택신호이다. 또한 당해 제 1의 억세스포트에 대응해서, ckp(1)는 클럭신호, dp(1)는 기입데이터, ap(1)는 어드레스신호, qp(1)는 독출데이터이다. 제 2의 억세스포트에 대응하는 메모리 제어신호, 예를 들면 wep(2)는 기입제어, bsp(2)는 모듈선택신호이다. 또한 당해 제 2의 억세스포트에 대응해서, ckp(2)는 클럭신호, dp(2)는 기입데이터, ap(2)는 어드레스신호, qp(2)는 독출데이터이다.
포트선택회로(50)는 공통테스트버스(31)를 제 1의 억세스포트와 제 2의 억세스포트의 어느 쪽에 접속하고, 듀얼포트 공통테스트버스(33)를 제 1의 억세스포트와 제 2의 억세스포트의 어느 쪽에 접속할까를 신호br_chport에 따라 선택한다. 멀티플렉서(mux)는 억세스포트를 테스트에 이용하는가 통상동작에 이용하는가를 신호(te)에 기초하여 선택한다. 셀렉터(se1)는 메모리로부터의 독출데이터를 내부버스(8)에 출력하는가 또는 테스트용의 비교회로(38)에 공급하는가를 신호(te)에 의해 선택한다. 포트선택회로(51)는 데이터m_qp(1) 또는 m_p(2)의 어느 쪽을 비교회로(38)에 공급하는가를 신호(te)에 의해 선택한다.
데이터전개회로(52)는 공통테스트버스(31)에서 4비트단위로 공급되는 테스트 데이터정보로서의 기입데이터t_d를 대응메모리에 공유의 데이터m_dp(1), m_dp(2)의 병렬비트수 즉 억세스 데이터폭에 전개한다. 또한 데이터 전개회로(52)는 td_d의 논리치"1"에 대응하여 전개한 데이터t_d의 전비트 반전데이터를 생성한다. 전개된 테스트 데이터정보는 신호br_chort에 의해 포트선택회로로 선택된 한쪽의 억세스포트에 공급되고, 반전데어터는 다른쪽의 억세스포트에 공급된다.
어드레스 변환회로(53)는 상기 공통테스트버스(31)로부터의 테스트 어드레스정보t_a를 대응하는 메모리에 고유의 비트배열로 변환해서 후단에 출력한다. 변환할 비트배열의 종별, 여기서는 어드레스 스캔방향에 응하는 비트배열은 신호br_sm에서 지정가능하게 되어 있다. 또한 어드레스 변환회로(53)는 td_a의 논리치"1"에 대응하여 변환된 어드레스t_a의 최하위비트를 반전하여 인접메모리셀의 어드레스를 생성한다. 비트배열이 변환된 테스트 어드레스정보는 신호br_chport에 의해 포트선택회로에서 선택된 한쪽의 억세스포트에 공급되고, 최하위비트 반전어드레스정보는 다른쪽의 억세스포트에 공급된다.
상기 데이터전개 및 어드레스 변환기능에 의해, 한쪽의 억세스포트를 통해 메모리 테스트가 행해질 때, 다른쪽의 억세스포트에서 테스트 대상메모리셀에 인접하는 메모리셀을 지정하여 디스터브정보를 줄을 수 있고, 듀얼포트메모리에 있어서의 포트간 간섭을 테스트하는 것이 가능하게 된다.
도 8에는 상기 포트간 간섭테스트의 동작모드가 도시된다. 도 8에 있어서 제 1억세스포트의 어드레스(포트(1)어드레스)는 m_ap(1), 제 1 억세스포트의 데이터(포트(1)데이터)는 m_dp(1)를 의미한다. 제 2 억세스포트의 어드레스(포트(2)어드레스)는 m_ap(2), 제 2 억세스포트의 데이터(포트(2)데이터)는 m_dp(2)를 의미한다.
도 7의 듀얼포트메모리용의 브리지회로에 있어서도 리드데이터와 기대치 데이터와의 비교에 의한 에러판정, 에러판정결과에 대한 스캔패스출력 등의 기능은 도 4와 같고, 동일 기능을 갖는 회로블록에는 같은 참조부호를 붙이고 그 상세한 설명을 생략한다.
도 9에는 메모리블록(7)에 대한 병렬테스트시에 있어서의 하나의 싱글포트메모리의 동작타이밍차트가 예시된다. 어드레스(a, a1, a2)에 대해 데이터(d0, d1, d2)가 기입되고, 그 후, 어드레스(a, a1, a2)로부터 데이터가 독출된다. 독출데이터는 기대치 데이터(d0, dx, d2)와 비교된다. 이 때, 기대치 데이터(dx)와의 비교에서 불일치가 검출되고, 신호br_async_out가 변화된다. 이것에 응답해서, 외부의 테스터에서 테스트결과의 스캔아웃이 지시되면, 클럭br_sck에 동기하여 불일치 어드레스정보 등의 에러정보가 br_sync_out로서 출력된다.
도 10에는 메모리블록(7)에 대한 병렬테스트시에 있어서의 하나의 듀얼포트메모리에 있어서의 포트간 간섭동작의 타이밍차트가 예시된다. 어드레스(a, a1, a2)에 대해 포트(1)에서 데이터(d0, d1, d2)가 기입되고, 그 후, 어드레스(a, a1, a2)의 데이터(q0, q1, q2)가 포트(1)에서 독출된다. 독출데이터는 기대치 데이터(r0, r1, r2)와 비교된다. 포트(1)에 대한 기입 및 독출동작에 병행하여 포트(2)에는 i0, i1, i2라는 디스터브정보가 주어진다.
도 11에는 상기 마이크로 컴퓨터(1) 등의 반도체집적회로에 대한 테스트방법의 플로차트가 예시된다. 우선, 브리지회로의 외부회로, 예를 들면 테스터에서 테스트제어정보가 주어진다. 신호(te)에 의해 공통테스트버스에서 주어지는 테스트용 신호가 선택되고(S1), 기입데이터가 테이터전개되고(S2), 기입어드레스에 대한 비트배열이 어드레스변환이 행해진다(S3). 어드레스 변환결과에 대해서는 어드레스의 오버플로체크가 행해진다. 메모리에는 비트배열이 변환된 어드레스신호에 기초하여 기입데이터가 기입된다(S4). 기입 후, 기입을 행한 어드레스로부터 데이터(반환값(q))를 독출하고, 이것을 기대치br_ref와 비교한다(S5). 비교결과가 일치하면 처리를 종료한다(정상종료). 비교결과가 불일치라면, 신호br_async_out=1이 출력되고(S6), 에러플래그(EFLG)가 래치회로(41)에 래치되고(S7), 에러발생어드레스가 래치회로(40)에 래치된다(S8). 그 후, 클럭br_sck가 공급되고(S9), 이것에 동기하여 에러플래그와 에러발생 어드레스가 스캔아웃된다(S10). 마지막으로 스캔레지스터(42) 및 래치회로(40, 41)가 클리어되어(S11), 처리가 종료된다.
이상 설명한 마이크로 컴퓨터(1)에 따르면, 이하의 작용효과를 얻을 수 있다.
[1] 억세스 데이터폭이 다른 복수의 메모리(11 ~ 15)에 대해 테스트 데이터정보를 병렬로 공급해도, 브리지회로(21 ~ 25)의 데이터 전개회로(35, 52)가 테스트 데이터정보를 대응메모리에 고유의 억세스 데이터폭에 변환한다. 또, 어드레스 디코드논리가 다른 복수의 메모리(11 ~ 15)에 대해 테스트 어드레스정보를 병렬로 공급해도, 브리지회로(21 ~ 25)의 어드레스 변환회로(36, 53)가 테스트 어드레스정보를 대응메모리에 고유의 비트배열에 변환한다. 따라서, 억세스 데이터폭이 다른 복수의 메모리에 대해 테스트 데이터정보를 병렬로 공급할 수 있다고 하는 점, 테스트 어드레스정보에 대한 각각의 메모리에 있어서의 어드레스 스캔방향을 고유의 비트배열에 따라 특정방향에 통일하는 것이 가능해진다는 점에 있어서, 복수의 온칩 메모리에 대한 마치패턴 등에 위한 메모리 테스트효율을 향상시킬 수가 있다.
[2] 상기 브리지회로(21 ~ 25)는 메모리(11 ~ 15)로부터의 독출정보와 공통테스트버스(31)로부터의 기대치정보를 비교회로(38)에서 비교하고, 그 비교결과에 따라 메모리의 불량정보를 어드레스 래치회로(40) 및 비교결과 래치회로(41)에 래치한다. 불량어드레스는 어드레스 래치회로(40)에 불량의 비교결과는 에러블래그(EFLG)로서 비교결과 래치회로(41)에 래치된다. 따라서, 복수의 메모리에 대한 병렬 테스트결과를 래치회로(40, 41)에서 순서대로 직렬적으로 얻는 것이 가능하다. 래치회로(40, 41)의 래치정보를 외부에 출력하는 수단으로서 스캔패스용의 시프트 레지스터(42)를 채용하면 병렬테스트결과를 래치회로(40, 41)에서 순서대로 외부출력되는 것이 용이하게 된다.
이 때, 스캔패스의 에러플래그(EFLG)의 래치회로(41)를 에러 어드레스 래치회로(40)보다 스캔패스의 상류측에 배치한다. 따라서, 에러플래그(EFLG)가 나타날 때까지 스캔클럭를 계수해나가면, 그 계수치에 기초하여 에러발생 메모리를 특정할 수 있고, 그 직전의 어드레스정보에 따라 에러발생 메모리에 있어서의 에러발생 어드레스를 특정할 수가 있다. 이와 같이, 불량발생의 소재를 분명히 하는 것이 용이하다.
[3] 상기 브리지회로(21 ~ 25)는 비교회로(38)에 의한 비교결과에 다른 브리지회로로부터의 비교결과출력와의 논리합을 뽑아 또한 다른 브리지회로에 출력하는 논리합 게이트(43)를 갖기 때문에, 복수의 브리지회로(21 ~ 25)에 있어서의 논리합 게이트(43)를 전단 논리합 게이트의 출력이 차단 논리합 게이트의 입력에 접속하도록 직렬형태에 접속하여 구성하면, 복수의 메모리(11 ~ 15)에 대해 테스트 데이터정보를 갱신하면서 테스트 어드레스정보를 갱신해서, 어드레스 스캔을 따른 병렬테스트를 순차적으로 진행해나가는데 있어서, 비교 불일치에 의한 에러가 어느 쪽인가의 메모리에서 생겼을 때, 최종단 논리합 게이트(43)의 출력모니터를 하는 것에 따라, 복수메모리에 대한 병렬테스트를 행하면서, 테스트의 계속/중지의 판정(Go/No go판정)을 행할 수 있다.
[4] 멀티 포트 메모리(14, 15)에 대응되는 브리지회로(24, 25)는 상기 공통테스트버스(31)에 접속하는 포트에 대해 공통테스트버스(31)에 비접속이 선택된 포트에 디스터브정보를 입력가능하기 때문에, 멀티포트를 갖는 경우에는 포트간 간섭의 테스트를 병용할 수 있고, 멀티포트 메모리에 대한 테스트의 신뢰성을 향상시킬 수 있다.
이상 본 발명자에 의해 이루어진 발명을 실시예에 기초하여 구체적으로 설명했지만, 본 발명은 그것에 한정되는 것이 아니라, 그 요지를 일탈하지 않는 범위에서 각가지 변경가능하다는 것은 말할 것도 없다.
예를 들면, 메모리 블록에 포함되는 메모리수, 메모리의 기억용량, 데이터 억세스폭, 정보기억형식 등에 대해 적당히 변경가능하다. 메모리는 SRAM에 한정되지 않고, DRAM이라도, 혹은 불휘발성 메모리라도 좋다. 메모리 이외의 회로블록은 도 2에 도시되는 MPU 등에 한정되지 않고 적당히 변경가능하다. 멀티포트 메모리는 듀얼포트를 갖는 구성에 한정되지 않고, 그것보다 많는 포트를 구비해도 좋다.
발명에 있어서 개시되는 발명 가운데 대표적인 것에 의해 얻을 수 있는 효과를 간단하게 설명하면 하기와 같다.
즉, 억세스 데이터폭의 다른 복수의 메모리에 대해 테스트 데이터정보를 병렬로 공급해도, 브리지회로가 테스트 데이터정보를 대응메모리에 고유의 억세스 데이터폭에 변환할 수가 있다. 또, 어드레스 디코드논리가 다른 복수의 메모리에 대해 테스트 어드레스정보를 병렬로 공급해도, 브리지회로가 테스트 어드레스정보를 대응메모리에 고유의 비트배열에 변환할 수가 있다. 따라서, 억세스 데이터폭이 다른 복수의 메모리에 대해 테스트 데이터정보를 병렬로 공급할 수 있다고 하는 점, 테스트 어드레스정보에 대한 각각의 메모리에 있어서의 어드레스 스캔방향을 고유의 비트배열에 따라 특정방향에 통일하는 것이 가능해진다는 점에 있어서, 복수의 온칩 메모리에 대한 마치패턴 등에 의한 메모리 테스트효율을 향상시킬 수가 있다.복수의 메모리에 대한 테스트시간을 단축할 수가 있다.

Claims (14)

  1. 억세스 데이터폭이 다른 복수의 메모리 및 상기 메모리를 억세스제어가능한 논리회로를 포함하는 반도체집적회로에 있어서,
    상기 복수의 메모리에 접속되는 공통테스트버스와, 상기 공통테스트버스로부터의 테스트 데이터정보를 각 메모리에 고유의 억세스 데이터폭에 변환하여 대응하는 메모리에 공급하는 복수의 브리지회로를 설치하고, 복수의 메모리에 공통테스트버스로부터 병렬적으로 테스트 데이터정보를 공급하여 병렬테스트가 가능하게 되어 이루어지는 것을 특징으로 하는 반도체집적회로.
  2. 어드레스 디코더논리가 다른 복수의 메모리 및 상기 메모리를 억세스제어가능한 논리회로를 포함하는 반도체집적회로에 있어서,
    상기 복수의 메모리에 접속되는 공통테스트버스와, 상기 공통테스트버스로부터의 테스트 어드레스정보를 각 메모리에 고유의 비트배열에 변환하여 대응하는 메모리에 공급하는 복수의 브리지회로를 설치하고, 복수의 메모리에 공통테스트버스로부터 병렬적으로 테스트 어드레스정보를 공급하여 병렬테스트 가능하게 되어 이루어지는 것을 특징으로 하는 반도체집적회로.
  3. 억세스 데이터폭이 다른 복수의 메모리 및 상기 메모리를 억세스제어가능한 논리회로를 포함하는 반도체집적회로에 있어서,
    상기 복수의 메모리에 접속되는 공통테스트버스와, 상기 공통테스트버스로부터의 테스트 데이터정보를 각 메모리에 고유의 억세스 데이터폭에 변환하여 대응하는 메모리에 공급하고, 또, 상기 공통테스트버스로부터의 테스트 어드레스정보를 각 메모리에 고유의 비트배열에 변환하여 대응하는 메모리에 공급하는 복수의 브리지회로를 설치하고, 복수의 메모리에 공통테스트버스로부터 병렬적으로 테스트 데이터정보 및 테스트 어드레스정보를 공급하여 병렬테스트 가능하게 되어 이루어지는 것을 특징으로 하는 반도체집적회로.
  4. 청구항 2 또는 3에 있어서,
    상기 브리지회로는 변환가능한 비트배열을 테스트제어정보에 따라 선택가능한 것을 특징으로 하는 반도체집적회로.
  5. 청구항 2 또는 3에 있어서,
    상기 브리지회로는 메모리로부터의 독출정보와 공통테스트버스로부터의 기대치정보를 비교하는 비교수단과, 상기 비교수단에 의한 비교결과에 따라 메모리의 불량정보를 보지하는 래치수단을 가지고 이루어지는 것을 특징으로 하는 반도체집적회로.
  6. 청구항 5에 있어서,
    상기 래치수단은 불량어드레스를 래치하는 어드레스 래치수단과, 불량의 비교결과를 래치하는 불량플래그수단에서 이루어지는 것을 특징으로 하는 반도체집적회로.
  7. 청구항 5 또는 6에 있어서,
    상기 브리지회로는 상기 래치수단의 출력을 입력해서 직렬적으로 출력가능하게 하는 스캔패스용의 시프트 레지스터수단을 가지고 이루어지는 것을 특징으로 하는 반도체집적회로.
  8. 청구항 2 또는 3에 있어서,
    상기 브리지회로는 메모리로부터의 독출정보와 공통테스트버스로부터의 기대치정보를 비교하는 비교수단과, 상기 비교수단에 의한 비교결과에 다른 브리지회로로부터의 비교결과출력과의 논리합을 뽑아 또한 다른 브리지회로에 출력하는 게이트수단을 갖고, 복수의 게이트수단은 상기 게이트수단의 출력이 차단게이트수단의 입력에 접속하는 직렬형태에 접속되어 이루어지는 것을 특징으로 하는 반도체집적회로.
  9. 청구항 2 또는 3에 있어서,
    상기 복수의 메모리의 적어도 하나는 멀티포트메모리이고, 상기 멀티포트메모리에 대응되는 브리지회로는 상기 공통테스트버스에 접속하는 포트의 선택과, 상기 공통테스트버스에 비접속이 선택된 포트에 디스터브정보를 입력가능하게 하는것이 가능한 것을 특징으로 하는 반도체집적회로.
  10. 억세스 데이터폭이 다른 복수의 메모리를 공통테스트버스를 통해 병렬적으로 테스트하는 테스트방법에 있어서,
    테스트 데이터정보를 상기 공통테스트버스에 공급하는 처리와,
    상기 공통테스트버스에서 테스트 데이터정보를 입력하여 대응하는 메모리에 고유의 억세스 데이터폭에 변환하는 처리와,
    변환된 테스트 데이터정보를 대응하는 메모리에 병렬적으로 기입하는 처리와,
    기입된 테스트 데이터정보를 복수의 메모리로부터 독출하는 처리와,
    독출된 테스트 데이터정보와 기대치정보를 메모리단위로 비교해서 메모리 에러정보를 생성하는 처리를 포함하는 것을 특징으로 하는 테스트방법.
  11. 어드레스 디코드논리가 다른 복수의 메모리를 공통테스트버스를 통해 병렬적으로 테스트하는 테스트방법에 있어서,
    테스트 어드레스정보를 상기 공통테스트버스에 공급하는 처리와,
    상기 공통테스트버스에서 테스트 어드레스정보를 입력하여 대응하는 메모리에 고유의 비트배열로 변환하는 처리와,
    변환된 테스트 어드레스정보를 이용해서 대응하는 메모리에 테스트 데이터를 계열로 기입하는 처리와,
    기입된 테스트 데이터를 복수의 메모리로부터 독출하는 처리와,
    독출된 테스트 데이터와 기대치정보를 메모리단위로 비교해서 메모리 에러정보를 생성하는 처리를 포함하는 것을 특징으로 하는 테스트방법.
  12. 청구항 11 또는 12에 있어서,
    복수의 메모리의 각각에 대해 생성된 메모리 에러정보를 래치하고, 래치한 복수의 메모리 에러정보를 스캔패스를 이용하여 직렬적으로 기억시키는 처리를 더 포함하는 것을 특징으로 하는 테스트방법.
  13. 청구항 11 또는 12에 있어서,
    복수의 메모리의 각각에 대해 생성된 메모리 에러정보에 대해 선두의 메모리에서 순차적으로 차단 메모리의 에러정보와 논리합을 뽑아 후단에 전달하는 처리를 더 포함하는 것을 특징으로 하는 테스트방법.
  14. 청구항 12 또는 13에 있어서,
    상기 복수의 메모리의 적어도 하나는 멀티포트메모리이고, 상기 멀티포트메모리에 대해, 상기 공통테스트버스에 접속하는 포트와는 다른 포트에 디스터브정보를 입력하는 것을 특징으로 하는 테스트방법.
KR10-2003-0033559A 2002-05-29 2003-05-27 반도체집적회로 및 그 테스트방법 KR20030093104A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002155107A JP2003346500A (ja) 2002-05-29 2002-05-29 半導体集積回路及びそのテスト方法
JPJP-P-2002-00155107 2002-05-29

Publications (1)

Publication Number Publication Date
KR20030093104A true KR20030093104A (ko) 2003-12-06

Family

ID=29561400

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0033559A KR20030093104A (ko) 2002-05-29 2003-05-27 반도체집적회로 및 그 테스트방법

Country Status (4)

Country Link
US (2) US7222272B2 (ko)
JP (1) JP2003346500A (ko)
KR (1) KR20030093104A (ko)
TW (1) TW200400514A (ko)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003346500A (ja) * 2002-05-29 2003-12-05 Hitachi Ltd 半導体集積回路及びそのテスト方法
JP2004280924A (ja) 2003-03-14 2004-10-07 Oki Electric Ind Co Ltd メモリテスト回路
JP4381014B2 (ja) 2003-03-18 2009-12-09 株式会社ルネサステクノロジ 半導体集積回路
US20040196060A1 (en) * 2003-04-03 2004-10-07 Taiwan Semiconductor Manufacturing Co., Ltd. Method of identifying physical mapping of IC products
JP4514028B2 (ja) * 2004-05-20 2010-07-28 ルネサスエレクトロニクス株式会社 故障診断回路及び故障診断方法
US7617425B2 (en) * 2005-06-27 2009-11-10 Logicvision, Inc. Method for at-speed testing of memory interface using scan
JP4993175B2 (ja) 2005-12-06 2012-08-08 横河電機株式会社 メモリ検査装置
KR20080069778A (ko) * 2007-01-24 2008-07-29 삼성전자주식회사 멀티칩 테스트를 위한 반도체 메모리 장치의 테스트 회로및 그의 테스트 방법
KR100830959B1 (ko) 2007-04-11 2008-05-20 주식회사디아이 낸드 플래쉬 메모리 소자의 테스트 장치
US7954020B2 (en) * 2007-06-06 2011-05-31 Sony Computer Entertainment Inc. Method and apparatus for testing a circuit
JP5074968B2 (ja) 2008-03-18 2012-11-14 ルネサスエレクトロニクス株式会社 集積回路及びメモリテスト方法
JP2009238256A (ja) * 2008-03-25 2009-10-15 Toshiba Corp 半導体記憶装置
JP2009259329A (ja) * 2008-04-16 2009-11-05 Toshiba Corp 半導体集積回路装置
KR101138201B1 (ko) * 2008-06-02 2012-05-10 가부시키가이샤 어드밴티스트 시험용 웨이퍼, 시험 시스템, 및, 반도체 웨이퍼
US8694845B2 (en) * 2010-04-25 2014-04-08 Ssu-Pin Ma Methods and systems for testing electronic circuits
JP5611916B2 (ja) * 2011-09-16 2014-10-22 株式会社東芝 半導体集積回路
CN103093829A (zh) * 2011-10-27 2013-05-08 迈实电子(上海)有限公司 存储器测试系统及存储器测试方法
US8711645B2 (en) 2012-03-27 2014-04-29 Lsi Corporation Victim port-based design for test area overhead reduction in multiport latch-based memories
KR20170023439A (ko) 2015-08-24 2017-03-06 삼성전자주식회사 메모리 테스트 시스템 및 메모리 시스템
FR3042049A1 (ko) * 2015-10-01 2017-04-07 Upmem
JP6605359B2 (ja) * 2016-03-02 2019-11-13 ルネサスエレクトロニクス株式会社 半導体装置及びメモリアクセス制御方法
KR102647419B1 (ko) * 2016-09-28 2024-03-14 에스케이하이닉스 주식회사 반도체장치
US10408876B2 (en) * 2018-01-29 2019-09-10 Oracle International Corporation Memory circuit march testing
WO2023141013A1 (en) * 2022-01-18 2023-07-27 Texas Instruments Incorporated Methods and apparatus to characterize memory

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4484303A (en) * 1979-06-19 1984-11-20 Gould Inc. Programmable controller
DE69016509T2 (de) * 1989-05-31 1995-06-01 Fujitsu Ltd Integrierte Halbleiterschaltungsanordnung mit Testschaltung.
JP3550295B2 (ja) 1998-03-06 2004-08-04 松下電器産業株式会社 半導体記憶装置の並列テスト回路装置およびテスト回路装置
JP2974313B1 (ja) 1998-09-30 1999-11-10 日本電気アイシーマイコンシステム株式会社 Bist回路および半導体集積回路
US6336088B1 (en) * 1998-12-22 2002-01-01 Unisys Corporation Method and apparatus for synchronizing independently executing test lists for design verification
US6587979B1 (en) * 1999-10-18 2003-07-01 Credence Systems Corporation Partitionable embedded circuit test system for integrated circuit
JP2003346500A (ja) * 2002-05-29 2003-12-05 Hitachi Ltd 半導体集積回路及びそのテスト方法

Also Published As

Publication number Publication date
US20030222283A1 (en) 2003-12-04
US20070198880A1 (en) 2007-08-23
US7426663B2 (en) 2008-09-16
US7222272B2 (en) 2007-05-22
TW200400514A (en) 2004-01-01
JP2003346500A (ja) 2003-12-05

Similar Documents

Publication Publication Date Title
KR20030093104A (ko) 반도체집적회로 및 그 테스트방법
US6512709B1 (en) Semiconductor integrated circuit
US7721174B2 (en) Full-speed BIST controller for testing embedded synchronous memories
KR100327136B1 (ko) 반도체 메모리 장치 및 이 장치의 병렬 비트 테스트 방법
US7152192B2 (en) System and method of testing a plurality of memory blocks of an integrated circuit in parallel
US6297997B1 (en) Semiconductor device capable of reducing cost of analysis for finding replacement address in memory array
US7246279B2 (en) Static random access memory (SRAM) unit and method for operating the same
US7526688B2 (en) Parallel bit testing device and method
US7681096B2 (en) Semiconductor integrated circuit, BIST circuit, design program of BIST circuit, design device of BIST circuit and test method of memory
US6256243B1 (en) Test circuit for testing a digital semiconductor circuit configuration
US7552368B2 (en) Systems and methods for simultaneously testing semiconductor memory devices
US7013414B2 (en) Test method and test system for semiconductor device
JPH10188597A (ja) メモリ試験装置
US7640467B2 (en) Semiconductor memory with a circuit for testing the same
US20060242494A1 (en) Output data compression scheme using tri-state
US20080151659A1 (en) Semiconductor memory device
JPH0512900A (ja) テスト機能を有する半導体記憶装置及びそのテスト方法
US6477673B1 (en) Structure and method with which to generate data background patterns for testing random-access-memories
JP3538334B2 (ja) メモリテスト方法、メモリテスト回路及び半導体集積回路
US8310881B2 (en) Semiconductor device testing memory cells and test method
JP2930037B2 (ja) 半導体メモリ及びそのテスト方法
JP2004326893A (ja) 試験回路装置
US20060041798A1 (en) Design techniques to increase testing efficiency
JPH04313900A (ja) 半導体記憶装置
JPH03212900A (ja) 半導体記憶装置及びそのテスト方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid