KR101025407B1 - 테스트 데이터 처리 디바이스 및 방법, 테스트 장치 및 컴퓨터 판독가능 매체 - Google Patents

테스트 데이터 처리 디바이스 및 방법, 테스트 장치 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR101025407B1
KR101025407B1 KR1020087022231A KR20087022231A KR101025407B1 KR 101025407 B1 KR101025407 B1 KR 101025407B1 KR 1020087022231 A KR1020087022231 A KR 1020087022231A KR 20087022231 A KR20087022231 A KR 20087022231A KR 101025407 B1 KR101025407 B1 KR 101025407B1
Authority
KR
South Korea
Prior art keywords
test
test data
format
data
memory
Prior art date
Application number
KR1020087022231A
Other languages
English (en)
Other versions
KR20080100259A (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 KR20080100259A publication Critical patent/KR20080100259A/ko
Application granted granted Critical
Publication of KR101025407B1 publication Critical patent/KR101025407B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C29/56008Error analysis, representation of errors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C2029/5606Error catch memory

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

테스트 데이터를 처리하는 디바이스(203)는 피검사 디바이스(202)를 테스트하기 위해 수행되는 테스트를 나타내고 1차 포맷으로 제공되는 1차 테스트 데이터를 수신하도록 구성된 데이터 입력 인터페이스(204)와, 1차 테스트 데이터를 1차 포맷에서 2차 포맷으로 변환하는 좌표 변환을 수행함으로써 2차 포맷의 2차 테스트 데이터를 생성하도록 구성된 처리 유닛(205)과, 2차 테스트 데이터를 다수의 저장 유닛(207a 내지 207c)에 저장하도록 2차 테스트 데이터를 2차 포맷으로 제공하도록 구성된 데이터 출력 인터페이스(206)를 포함한다.

Description

테스트 데이터 처리 디바이스 및 방법, 테스트 장치 및 컴퓨터 판독가능 매체{FORMAT TRANSFORMATION OF TEST DATA}
본 발명은 피검사 디바이스의 테스트 동안 얻어지는 테스트 데이터의 처리에 관한 것이다.
전자 디바이스, 특히 디지털 전기 출력 신호를 제공하는 메모리 디바이스(특히, DRAM)와 같은 집적 전자 회로를 테스트하기 위해, 테스트 또는 자극 신호가 피검사 디바이스의 입력에 공급되고, 자동 테스트 장비가 예를 들어 예상 데이터와의 비교함으로써 피검사 디바이스의 응답 신호가 평가된다. 이러한 자동 테스트 장비는 특정 테스트 기능, 즉 테스트 장비가 수행할 수 있는 테스트 기능 또는 루틴을 포함할 수 있었다. 이 테스트 기능은 실행가능 소프트웨어 코드의 형태로 테스트 장비 내에 포함될 수 있다.
DRAM 어레이와 같은 메모리 디바이스의 테스트 결과로서, 개별 메모리 셀이 테스트를 성공적으로 합격했는지 여부를 나타내는 합격/불합격 정보가 각각의 피검사 메모리 셀에 할당된다. 이러한 테스트 데이터의 방대한 양을 저장하고 신속하 게 관리하는 것은 테스트 장비 및 테스트 결과 데이터 처리 유닛에게는 큰 노력을 요구하는 일이다.
본 발명의 목적은 피검사 디바이스의 테스트 동안 얻어지는 테스트 데이터에 대한 효율적 처리를 제공하는 것이다. 이 목적은 독립 청구항들에 의해 해결된다. 추가의 실시예는 종속 청구항에 개시되어 있다.
본 발명의 예시적인 실시예에 따르면, 테스트 데이터를 처리하는 디바이스가 제공되는데, 이 디바이스는 피검사 디바이스를 테스트하기 위해 수행되는 테스트를 나타내고 1차 포맷(primary format)으로 제공되는 1차 테스트 데이터(primary test data)를 수신하도록 구성된 데이터 입력 인터페이스와, 좌표 변환(coordinate transformation)을 수행하여 1차 테스트 데이터를 1차 포맷에서 2차 포맷으로 변환함으로써 2차 포맷의 2차 테스트 데이터를 생성하도록 구성된 처리 유닛과, 2차 테스트 데이터를 다수의 저장 유닛(또는 일 저장 유닛의 다수의 파티션)에 저장하도록 2차 포맷의 2차 테스트 데이터를 제공하도록 구성된 데이터 출력 인터페이스를 포함한다.
또 다른 예시적인 실시예에 따르면, 테스트 장치가 제공되는데, 이 테스트 장치는 피검사 디바이스를 테스트하기 위한 테스트를 수행하고 그 테스트를 나타내는 1차 테스트 데이터를 생성하도록 구성된 테스트 유닛과, 생성된 1차 테스트 데이터를 처리하는 전술한 특징을 갖는 디바이스를 포함한다.
또 다른 예시적인 실시예에 따르면, 테스트 데이터를 처리하는 방법이 제공되는데, 이 방법은 피검사 디바이스를 테스트하기 위해 수행되는 테스트를 나타내는 1차 포맷으로 제공되는 1차 테스트 데이터를 수신하는 단계와, 좌표 변환을 수행하여 1차 테스트 데이터를 1차 포맷에서 2차 포맷으로 변환함으로써 2차 포맷의 2차 테스트 데이터를 생성하는 단계와, 2차 테스트 데이터를 다수의 저장 유닛(또는 일 저장 유닛의 다수의 파티션)에 저장하도록 2차 포맷의 2차 테스트 데이터를 제공하는 단계를 포함한다.
또 다른 예시적인 실시예에 따르면, 컴퓨터 판독가능 매체가 제공되는데, 이 매체에는 테스트 데이터를 처리하는 컴퓨터 프로그램이 저장되며, 이 컴퓨터 프로그램은 프로세서에 의해 실행되는 경우 전술한 방법을 제어 또는 수행한다.
또 다른 예시적인 실시예에 따르면, 테스트 데이터를 처리하는 프로그램 요소가 제공되는데, 이 프로그램 요소는 프로세서에 의해 실행되는 경우 전술한 방법을 제어 또는 수행한다.
본 발명의 실시예들은 하나 이상의 적절한 소프트웨어 프로그램에 의해 부분적으로 또는 전체적으로 구현 또는 지원될 수 있는데, 이 소프트웨어 프로그램은 임의의 종류의 데이터 캐리어 상에 저장되거나 또는 그 캐리에 의해 제공될 수 있고, 임의의 적절한 데이터 처리 유닛 내에서 또는 그 데이터 처리 유닛에 의해 실행될 수 있다. 소프트웨어 프로그램 또는 루틴은 테스트 신호 처리에 적용될 수 있다. 본 발명의 실시예에 따른 테스트 데이터 변환 기법은 컴퓨터 프로그램에 의해, 즉 소프트웨어에 의해 또는 하나 이상의 특별한 전자 최적화 회로를 사용함으로써, 즉 하드웨어 또는 하이브리드 형태로, 즉 소프트웨어 구성요소와 하드웨어 구성요소를 통해 수행될 수 있다.
"좌표 변환"이라는 용어는 특히 하나 이상의 제 1 좌표에 의해 형성된 제 1 좌표 시스템으로터의 데이터를, 하나 이상의 제 2 좌표에 의해 형성된 제 2 좌표 시스템으로 변환을 지칭하되, 제 1 좌표는 제 2 좌표와는 다르다. 이러한 좌표 변환은 최초의 좌표 시스템에서의 데이터 기술과는 상이한 좌표를 갖는 데이터를 기술하는 것을 포함할 수 있다. 따라서, 좌표 변환은 수정된 순서로 기술될 데이터의 단순한 재정렬 또는 재정리를 포함할 뿐만 아니라, 데이터 구조가 정렬되게 되는 좌표의 변형을 포함한다. 예를 들어, 행 및 열로 정의된 제 1 좌표 시스템으로 정렬된 데이터는 이 공간 내의 영역을 나타내는 번호와 이 영역에 대한 위치를 나타내는 번호로 형성되는 좌표 시스템으로 변환된다.
데이터 항목의 순차적 처리는 좌표 변환에 대한 이 정의에는 적용되지 않는데, 그 이유는 이것은 단지 메모리의 선택이 1차 데이터의 일부분이 아닌 독립 변수(계수기 값)에 의존하도록 하기 때문이다.
예시적인 실시예에 따르면, 피검사 디바이스를 테스트하는 테스트의 결과를 나타내내는 테스트 데이터는 이러한 테스트 결과 데이트의 저장, 사후-처리, 관리 및 액세스를 효율적으로 하기 위해 매우 정교하게 수정된다. 예를 들어, 저장 디바이스 내의 매트릭스 형태의 메모리 셀 배열이 테스트될 수 있고, 특정 테스트 시퀀스가 이들 메모리 셀에 대해 수행될 수 있다. 예를 들어, 이들 셀은 개별적으로 테스트될 수 있고, 프로그램, 소거, 재프로그램, 판독될 수 있으며, 메모리 셀의 매트릭스 형태의 어레이의 행을 따라, 열을 따라 또는 대각선을 따라 테스트될 수 있다.
따라서, 매우 복잡한 구조의 테스트 결과가 하나 또는 다수의 테스트 결과 메모리에 저장될 필요가 있다. 이하에서 보다 자세히 기술되는 바와 같이, 메모리를 다수의 메모리 부분들로 분할하고 테스트 결과 데이터의 포맷/좌표 변환을 수행하는 것은 테스트 데이터의 항목이 분할된 메모리 내에서 용이하고 명확하게 검색될 수 있도록 하고 테스트 결과 저장 용량이 효율적으로 관리 및 사용되도록 함으로써 상이한 메모리 부분 내에서 테스트 결과의 리소스 효율적이고 시간 효율적인 저장을 가능하게 한다. 따라서, 스마트 좌표 변환 또는 포맷 변환은 피검사 전자 디바이스, 특히 메모리 디바이스의 신속하고, 신뢰성 있으며 메모리 효율적인 테스트를 가능하게 한다.
메모리 또는 저장 제품을 테스트하는 경우, (DRAM과 같은) 이러한 메모리 제품의 저장 용량은 상당히 증가하고, 이러한 메모리의 속도 또한 증가하는 경향이 있다. 이러한 저장 제품의 기능에 대한 신뢰성 있는 테스트를 위해, (예를 들어, 테스트 동안 소위 "속도-의존 결함"을 검출함에 있어서) 통상적으로 메모리 제품이 정상 동작 동안 사용되는 속도와 본질적으로 동일한 속도로 메모리 제품을 테스트하는 것이 바람직하다.
예를 들어, DRAM 메모리는 개별 메모리 셀이 행 및 열을 따라 정렬되는 매트릭스 형태의 메모리 셀 배열을 가질 수 있다. 행은 하나 이상의 행 어드레싱 디코더에 의해 어드레스 및 제어되고, 열은 하나 이상의 열 어드레싱 디코더에 의해 어드레스 또는 제어된다. 개별 DRAM 셀이 정상적으로 동작하는지를 테스트하기 위해, 메모리 셀 내에 데이터를 개별적으로 프로그램하고 이후에 그 데이터를 판독하는 것은 다수의 경우에 있어서 충분하지 않지만, 인접 메모리 셀 간의 상호작용으로부터 야기되는 결함을 검출하기 위해, 행에 따른, 열에 따른 및 대각선에 따른 테스트 시퀀스가 수행될 수 있다. 더 나아가, 가외의 메모리 셀이 DRAM에 제공되어 테스트 동안 결함 있는 것으로 판명된 매트릭스 내의 DRAM 셀의 기능을 대체할 수 있다. 이러한 복잡한 메모리 배열은 특히 속도 의존 결함도 검출되어야 하는 상황에서는 매우 정교한 테스트 아키텍쳐를 요구한다.
이와 같은 테스트를 위해, 메모리 셀은 개별적으로 또는 그룹 형태로 테스트될 수 있고, 대응하는 합격/불합격 비트가 에러 셀 맵에 저장될 수 있다. 이러한 맵으로부터, 테스트를 합격한 메모리 셀과 테스트를 합격하지 못한 메모리 셀에 대한 정보가 도출될 수 있다.
예시적인 실시예에 따르면, 예를 들어 피검사 디바이스 내의 매트릭 형태의 배열로부터 합격/불합격 데이터를 에러 셀 맵으로 전달하는 기법이 수행된다.
따라서, 테이블 형태의 저장 구조(ECR, 에러 캐치 RAM)가 제공될 수 있으며, 이로부터 테스트를 합격한 피검사 디바이스의 부분과 테스트를 합격하지 못한 부분에 대한 정보를 얻을 수 있다. 이것은 전체 피검사 디바이스가 테스트를 합격했는지 또는 불합격했는지에 대해 평가하고, 또한 피검사 디바이스의 결함 부분을 수리할 수 있는 방법(예를 들어, 여분의 메모리 구조를 이용함)에 대한 기초로서 취급될 수 있다.
피검사 디바이스로서의 메모리 디바이스 또는 다른 전자 제품은 그 동작 속도가 점진적으로 빨라지고 있기 때문에, 테스트 패턴 또한 빨라져야 한다. 따라서, ECT 저장 기법은 바람직하게는 적어도 피검사 디바이스만큼 빨라야 한다. 그러나, 현재 개발되고 있는 메모리 디바이스는 (다수의 경우 초기의 기술 세대에 따라 구성된) 기존의 메모리 디바이스에 근거하여 테스트되어야 하기 때문에, 보다 낮은 테스트 결과 저장 유닛으로 고속 디바이스를 테스트해야 하는 문제가 발생할 수 있다. 이것은 ECR 메모리 및 DUT 메모리의 성능의 대비로부터 야기되는 대역폭 문제를 포함할 수 있다.
직접적인 접근방식은 테스트 결과 저장 메모리의 수에 의존하는 계수에 따라 테스트 결과 저장 메모리의 대역폭을 증가시키기 위해 ECR에 대해 다수의 메모리를 사용하는 것이다. 그런 다음, 라운드-로빈 방식으로, 테스트 결과 데이터가 예를 들어 디멀티플렉서를 사용하여 다양한 메모리에 저장될 수 있다. 그러나, 테스트될 메모리 제품의 저장 용량 및 속도에 대한 요구가 증가하고 있기 때문에, 테스트 결과 저장 메모리의 크기 및 수가 증가하며, 이는 테스트 장비가 큰 치수를 가지고 하고 고가이도록 한다. 더 나아가, 이러한 시스템의 주변은 매우 복잡해질 수 있다. 이러한 직접적인 방식은 또한 각각의 메모리에서 테스트 결과 데이터가 중복적으로 저장된다는 단점을 또한 가질 수 있다.
이와 달리, 예시적인 실시예에 따르면, 하나의 메모리 또는 다수의 메모리는 피검사 디바이스로부터 제공되는 1차 테스트 데이터와 테스트 결과가 ECR에 저장되게 되는 포맷의 2차 테스트 데이터 간을 변환하는 데이터 포맷 변환 기법과 연계하여 사용된다. 이것은 수정된 포맷을 갖는 테스트 결과를 저장하는 저장 유닛의 치수가 피검사 디바이스의 메모리보다 (많이) 크지 않도록 할 수 있다. 또한, 이러한 실시예는 높은 대역폭을 갖는 것을 허용할 수 있다.
이러한 좌표 변환은, 다수의 물리적 메모리 또는 하나의 물리적 메모리의 다수의 파티션이 서로 논리적으로 연결되도록, 즉 중첩되지 않게 또는 고유하게 링크되도록 수행될 수 있다. 따라서, 초기 미처리 테스트 결과 데이터와 효율적인 저장에 적합하도록 구성된 테스트 결과 데이터 사이에 지능적인 매핑이 수행될 수 있다.
이러한 포맷 변환은, (테스트 패턴에 따른) 모든 관련/발생하는 테스트 데이터가 (특히 본질적으로 동일한 빈도로) 메모리 유닛 부분 각각에 분배되며 상이한 메모리 부분의 ECR 어드레스는 상호관련 되도록 DUT 어드레스가 ECR 어드레스에 매핑되도록, 어드레스를 분배할 수 있다. 이것은 적어도 장기간 또는 평균적으로, 메모리 유닛 부분 각각이 본질적으로 동일한 빈도로 사용되도록 보장할 수 있는데, 이는 수정된 테스트 결과를 저장하는 저장 유닛의 저장 용량을 효율적으로 관리할 수 있도록 해준다.
예시적인 실시예에 따르면, 좌표 변환은 2차 테스트 데이터 시퀀스가 1차 테스트 데이터 시퀀스의 관심 세트에 대한 유한 버퍼와 충돌하지 않도록 수행될 수 있다.
다음으로, 본 발명의 또 다른 예시적인 실시예가 설명될 것이다. 이하에서는, 테스트 데이터를 처리하는 디바이스의 또 다른 예시적인 실시예가 설명될 것이다. 그러나, 이들 실시예는 또한 테스트 장치, 테스트 데이터를 처리하는 방법, 프로그램 요소 및 컴퓨터 판독가능 매체에도 적용된다.
데이터 입력 인터페이스는 피검사 디바이스의 테스트 부분의 어드레스를 나타내고 피검사 디바이스의 테스트 부분의 테스트 결과를 나타내는 1차 포맷의 1차 테스트 데이터를 수신하도록 구성될 수 있다. 따라서, 1차 테스트 데이터 항목 각각은 피검사 디바이스의 어느 부분(예를 들어 DRAM의 어느 메모리 셀)이 테스트되었는지와 이 테스트의 결과가 특히 어떠했는지(특히 피검사 디바이스의 테스트 부분이 테스트를 합격했는지 또는 테스트를 불합격했는지)에 대한 정보를 포함할 수 있다.
어드레스는 피검사 디바이스의 테스트 부분의 행 및 열을 나타낼 수 있다. 이러한 테스트 결과 관리에서는, DRAM 또는 EEPROM과 같은 피검사 메모리 내의 매트릭스 형태의 메모리 셀 배열이 고려될 수 있다.
테스트 결과는 피검사 디바이스의 테스트 부분이 테스트를 합격했는지 또는 테스트를 불합격했는지 나타낼 수 있다. 테스트 부분이 테스트를 합격 또는 불합격했는지에 대한 결정 또는 판정은 테스트 부분으로의 자극 신호의 인가에 대한 응답 데이터와 예상 데이터의 비교에 기초하여 이루어질 수 있다. 실제 테스트 결과가 예상 테스트 결과와 일치하여 적절한 경우, 테스트 부분은 테스트를 합격한 것으로 간주할 수 있고, 그렇지 않은 경우, 테스트 부분은 테스트를 불합격한 것으로 간주할 수 있다.
데이터 출력 인터페이스는 피검사 디바이스의 테스트 부분의 테스트 결과가 저장되는 저장 유닛의 어드레스를 나타내고 피검사 디바이스의 테스트 부분의 테스트 결과를 나타내는 2차 포맷의 2차 테스트 데이터를 제공하도록 구성될 수 있다. 따라서, 2차 테스트 데이터도 테스트 부분의 기능 또는 성능을 판단하는 모든 필요 정보를 포함할 수 있다. 그러나, 2차 테스트 데이터는 메모리 유닛에 저장되는 복잡한 테스트 데이터의 보다 효율적인 저장 및 관리를 가능하게 하는 포맷으로 변환되었다.
특히, 어드레스는 피검사 디바이스의 테스트 부분의 테스트 결과가 저장될 저장 유닛의 파티션을 나타낼 수 있고 피검사 디바이스의 테스트 부분의 테스트 결과가 저장될 저장 유닛의 파티션 내의 어드레스를 나타낼 수 있다. 따라서, 특히, 1차 테스트 데이터 포맷으로서의 행 - 열 - 합격/불합격 정보 구조는 2차 테스트 데이터 포맷으로서의 파티션 번호 - 대응 파티션내의 어드레스 - 합격/불합격 정보 구조로 변환되어, 본래의 포맷과 수정된 포맷으로 저장되는 테스트 데이터의 명료한 할당이 수행될 수 있다.
테스트 결과는 피검사 디바이스의 테스트 부분이 테스트를 합격했는지 또는 테스트를 불합격했는지를 나타낼 수 있다. 이 테스트 결과는 논리 값 "1"(즉, 테스트 합격)을 가지거나 또는 논리 값 "0" (즉, 테스트 불합격)을 가질 수 있거나, 또는 그 반대로 논리 값을 가질 수 있는 테스트 결과 비트로 인코딩될 수 있다.
처리 유닛은 1차 포맷이 2차 포맷과 다르도록 구성될 수 있다. 따라서, 실제 좌표 변환 또는 포맷 변환은 테스트 데이터를 저장하는 테스트 결과 메모리 리소스를 효율적으로 사용하도록 수행될 수 있다.
처리 유닛은 2차 포맷이 1차 포맷의 좌표 변환으로부터 얻어지도록 구성될 수 있다. 특히, 매트릭스 형태의 피검사 메모리 디바이스의 행-열 좌표는 파티션의 번호 및 이러한 파티션 내의 어드레스를 나타내는 좌표 시스템으로 변환될 수 있다.
처리 유닛은 2차 테스트 데이터의 항목들이 평균적으로 본질적으로 동일한 빈도로 저장 유닛의 상이한 파티션에 분배되도록 1차 테스트 데이터를 2차 테스트 데이터에 매핑하는 방식으로 구성될 수 있다. 따라서, 메모리 유닛의 저장 용량 및 개별 파티션의 리소스는 효율적으로 사용되어, 본질적으로 사용되지 않는 메모리 유닛의 메모리 저장 용량은 남아있지 않게 된다.
처리 유닛은 전단사(bijective) 방식으로 1차 테스트 데이터를 2차 테스트 데이터에 매핑하도록 구성될 수 있다. 수학적 용어에서, 단사(injection), 전사(surjection) 및 전단사는 독립변수(arguments) 및 상(images)이 매핑되는 방식으로 구별되는 함수의 종류를 나타낼 수 있다. 단사는 두 개의 구별되는 독립변수를 동일한 상(출력 값)에 매핑시키지 않을 뿐, 모든 가능한 출력 값에 도달할 필요는 없다. 전사는 적어도 하나의 입력을 임의의 가능한 상에 매핑한다. 전단사는 단사이면서 전사인 함수이다. 전단사 함수는 일대일 대응으로도 지칭될 수 있다. 이러한 전단사 테스트 결과 데이터 관리는 메모리 용량이 미사용되는 일 없이 테스트 데이터의 항목들을 용이하게 검색할 수 있도록 해준다.
처리 유닛은 1차 테스트 데이터를 1차 포맷에서 중간 포맷으로 변환함으로써 중간 포맷의 중간 테스트 데이터를 생성하도록 구성될 수 있고 중간 테스트 데이터를 중간 포맷에서 2차 포맷으로 변환함으로써 2차 포맷의 2차 테스트 데이터를 생성하도록 구성될 수 있다. 즉, 제 1 포맷에서 제 2 포맷으로의 좌표 변환은 2 (또는 그 이상의) 단계로 수행될 수 있으며, 이는 이러한 변환을 위해 필요한 수치적 작업을 간단히 할 수 있다.
처리 유닛은 스큐잉 라틴 방격(skewing Latin square), 스크램블 라틴 방격, 인터리브 스크램블링, 인터리브 다항식 스크램블링, 스큐잉 인터리브 스크램블링, 스큐잉 인터리브 다항식 스크램블링 및 이들의 조합으로 구성된 그룹 중 적어도 하나를 사용하여 1차 테스트 데이터를 2차 테스트 데이터에 매핑하도록 구성될 수 있다. 이러한 처리 기법은 예시적인 실시예에 따른 포맷 변환에 유리하게 적용될 수 있다. 이들 기법은 이하에서 보다 자세히 설명될 것이다.
이하에서, 테스트 장치의 또 다른 예시적인 실시예가 설명될 것이다. 그러나, 이들 실시예는 테스트 데이터를 처리하는 디바이스, 테스트 데이터를 처리하는 방법, 프로그램 요소 및 컴퓨터 판독가능 매체에도 적용된다.
이러한 테스트 장치의 아키텍쳐는 워크스테이션과 같은 중앙 제어 유닛과, 접속된 테스트 디바이스를 포함할 수 있다. 또한, 하나 또는 다수의 피검사 디바이스(DUT)는 이러한 테스트 디바이스에 접속되어 테스트될 수 있다. 특히, DUT는 접속 소자를 통해 테스트 디바이스에 접속된 다수의 핀을 포함할 수 있다. 그런 다음, 제어 유닛의 제어 하에서, 테스트 유닛은 자극 신호를 피검사 디바이스에 (순차적으로 또는 동시에) 인가할 수 있다. 특정 핀에서, 피검사 디바이스에 의해 응답 신호가 제공된다. 이러한 응답 신호는 예상 응답 신호와 비교될 수 있고, 응답 신호와 예상 응답 신호 간의 비교는 피검사 개별 디바이스의 개별 부분이 테스트를 합격 또는 불합격했는지에 대한 결과를 제공할 수 있다. 이러한 데이터는 테스트 디바이스 및 워크스테이션에서 ECR로서 효율적으로 저장될 수 있는 포맷으로 변환될 수 있다.
테스트 장치는 특히 피검사 메모리 디바이스를 테스트하는 메모리 테스트 디바이스로 구성될 수 있다. 이러한 테스트되는 메모리 디바이스 제품은 DRAM, EEPROM 또는 플래시 메모리 셀일 수 있다. 다르게는, 이러한 피검사 디바이스는 논리 디바이스, 전자 회로, 집적 회로, 프로세서, 시스템 온-칩, 또는 하이브리드 회로일 수 있다. 그러나, 대체로, 임의의 전자 제품이 본 발명의 예시적인 실시예에 따른 데이터 처리 시스템에 의해 테스트될 수 있다.
테스트 장치는 2차 포맷의 2차 테스트 데이터를 저장하도록 구성된 데이터 출력 인터페이스에 결합된 저장 유닛을 더 포함할 수 있다. 따라서, ECR이 이 저장 유닛에 저장될 수 있어, 저장 유닛의 저장 용량의 효율적인 관리가 가능하여 저장 유닛을 설계하는데 필요한 작업을 가능한 적게 유지할 수 있다. 이것은 본 발명의 실시예의 좌표 변환 기능에 의해 효율적으로 지원될 수 있다.
저장 유닛은 다수의 파티션으로 분할될 수 있는데, 다수의 파티션들 중 각각은 2차 포맷의 2차 데이터를 저장하도록 구성될 수 있다. 저장 유닛을 분할함으로써, 높은 대역폭이 얻어질 수 있고, 다수의 파티션에 저장될 테스트 결과 데이터의 분배를 효율적으로 관리함으로써, 이 높은 대역폭은 높은 데이터 관리 속도, 및 그에 따라 높은 테스트 속도와 결합될 수 있다.
다수의 파티션은 물리 저장 유닛의 물리적으로 분리되는 엔티티 및/또는 부분일 수 있다. 다시 말해, 상이한 파티션들은 논리적으로만 연결되는 물리적으로 분리되는 유닛 또는 디바이스로서 제공될 수 있는데, 그 이유는 개별 파티션들의 어드레스 관리는 중앙에서 제어 또는 조절될 수 있기 때문이다. 다르게는, 다수의 파티션들은 간단히 동일한 저장 유닛의 논리적으로 구별되는 부분일 수 있고, 다만 개별 파티션들의 저장 관리는 상이한 파티션들이 논리적으로 구별되는 방식으로 수행된다.
테스트 장치는 데이터 출력 인터페이스와 저장 유닛 사이에 정렬될 수 있는 (FIFO와 같은) 하나 또는 다수의 버퍼 유닛을 포함할 수 있다. 이러한 버퍼는 테스트 결과 데이터를 대응하는 할당 메모리 부분에 영구적으로 저장하기 전에 이들 데이터를 소정의 기간 동안 저장하는 가외 메모리로서 역할을 할 수 있다. 이러한 버퍼 유닛에 의해 짧은 기간 동안 개별 파티션들의 용량은 고르게 사용되지 않을 수도 있다. 그러나, 장기간 동안, 각각의 파티션들은 본질적으로 동일한 빈도로 사용되는 것이 보장될 수 있다.
테스트 장치는 데이터 출력 인터페이스와 다수의 파티션 사이에 정렬된 디멀티플렉서를 더 포함할 수 있고 2차 테스트 데이터의 개별 항목들을, 2차 테스트 데이터의 제각기의 항목에 포함된 어드레스 정보에 기초하여, 다수의 파티션들 중 제각기의 파티션에 분배하도록 구성될 수 있다. 이러한 디멀티플렉서 유닛은 2차 포맷의 테스트 데이터를 수신할 수 있고 각 테스트 결과 데이터 항목을 정확한 또는 적절한 파티션에 저장하도록 이 데이터를 메모리 유닛의 개별 파티션들로 라우팅할 수 있다. 따라서, 디멀티플렉서 유닛은 분배 유닛으로도 지칭될 수 있다.
본 발명의 다른 목적 및 그에 따른 다수의 장점은 첨부한 도면과 연계하여 후속하는 보다 상세한 실시예의 설명을 참조하면 용이하게 인식될 것이며 보다 잘 이해될 것이다. 실질적으로 또는 기능적으로 동일 또는 유사한 특징부들은 동일한 참조 부호에 의해 지칭될 것이다.
도 1은 테스트 유닛 및 테스트 데이터를 처리하는 디바이스를 포함하는 테스트 장치를 나타내는 도면,
도 2는 본 발명의 예시적인 실시예에 따른 테스트 유닛 및 테스트 데이터를 처리하는 디바이스를 포함하는 테스트 장치를 나타내는 도면,
도 3은 본 발명의 또 다른 예시적인 실시예에 따른 테스트 유닛 및 테스트 데이터를 처리하는 디바이스를 포함하는 테스트 장치를 나타내는 도면,
도 4는 어드레스 확산과 관련하여 스크램블링하는 논리적 아키텍쳐를 나타내는 도면,
도 5는 어드레스 확산과 관련하여 ECR 어드레스 생성을 나타내는 도면,
도 6은 다항식 스크램블링과 관련하여 스크램블링 매트릭스를 나타내는 도면,
도 7은 APG와 ECR 어드레스 간의 매핑을 나타내는 도면,
도 8은 P=8 파티션 대 16*32 APG 어드레스의 일 예에 대한 매트릭스를 나타 내는 도면,
도 9는 도 8의 예에 있어서 파티션 "0" 대 16*32 APG 어드레스를 나타내는 도면.
도면 내의 예시는 개략적인 것이다.
이하에서, 본 발명의 예시적인 실시예에 따른 메모리 테스트 위한 저장 효율적이고, 높은 대역폭의 에러 맵이 설명될 것이다.
예시적인 실시예에 따르면, 테스트 디바이스용으로 다수의 테스트 결과 메모리 및/또는 분할된 테스트 결과 메모리가 사용되어 피검사 디바이스(DUT)로서의 메모리 셀 어레이의 메모리 셀에 관련된 합격/불합격 정보를 저장한다. 특히, DUT의 메모리 셀 어드레스와 테스트 결과 메모리 어드레스 사이에서의 포맷 변환과 관련하여 어드레스 상관이 구현되어, 테스트를 수행하는 동안 짧은 시간에 생성되고 DUT의 품질에 대한 테스트의 결과를 나타내는 대량의 합격/불합격 정보를 관리할 수 있다.
본 발명의 실시예들은 예를 들어 애질런트 테크놀로지스사의 93000 테스트 장치와 같은 자동 테스트 장비(ATE)를 사용하는 메모리 디바이스의 속도 테스트(an at-speed test)와 관련하여 구현될 수 있다.
메모리 디바이스는 2R 행 및 2C 열로 구성될 수 있는데, 이 구성은 몇 기가 바이트의 규모를 가져올 수 있다. 알고리즘 패턴 생성기(APG)는 액세스의 시퀀스(행(r), 열(c))를 생성할 수 있고 판독 액세스에 대한 예상 데이터(dExp)를 생성할 수 있다.
액세스 시퀀스는 대개 행 또는 열 또는 대각선 또는 역-대각선을 따라 한 단계(스트라이드(strides)), 2의 멱승 단계, 또는 흔히 직사각형의 분포 블록으로 제한된는 임의의 정수 단계씩 이동한다.
자동 테스트 장비는 소위 ECR 메모리(Error Catch RAM)를 실시간으로 업데이트할 수 있는데, 이 ECR 메모리는 메모리 셀(a=(c.r))마다의 합격/불합격 엔트리를 포함한다. ECR 정보는 부적절하게 동작하는 것으로 판명난 메모리 셀을 여분의 구조물을 사용하여 수리하는데 사용될 수 있다.
그러나, DUT 메모리와 ECR 메모리 간에는 대역폭 갭이 존재할 수 있다. 특히, 테스트되는 DUT 메모리는 자동 테스트 장비내의 (보다 오래된) ECR 메모리보다 더 고속일 수 있다. 물리적 ECR 메모리는 그 폭이 1비트보다 클 수 있기 때문에, ECR을 업데이트하는 것은 판독-수정-기록 동작(read-modified-write operation)에 대해 적어도 두 번의 액세스를 요구할 수 있다.
메모리 테스트에서, ECR 데이터를 보다 편리한 형식으로 제공하는 것을 돕기 위해 소위 스크램블링 테이블이 사용되어 논리 및 물리 메모리 어드레스 간을 매핑할 수 있다. 이 스크램블링은 개선된 대역폭을 위한 스크램블링과는 구별되어야 한다.
보다 개략적인 사용자 관찰을 제공하기 위해 다른 매핑이 사용되어 에러 정보를 결합할 수 있다. 예시적인 실시예에 따르면, 이러한 매핑은 대역폭을 증가시키는데 또는 크기를 감소시키는데 사용될 수 있다.
이하에서는, 표기가 정의될 것이다.
a=(c,r)는 R 비트의 행 어드레스(r)와 C 비트의 열 어드레스(c)를 포함하는 또는 이들로 구성되는 A 비트의 DUT 어드레스("a")를 나타낼 수 있다.
e=(m,w)는 M개의 메모리들 중 하나를 선택하기 위한 N 비트의 메모리 어드레스(m)와, W 비트의 워드 어드레스(w)를 포함하는 또는 이들로 구성되는 E 비트의 ECR 어드레스(e)를 나타낼 수 있다. 특히, 0≤m≤M-1, M≤2N, N=ceil(log2(M))이다.
B 비트의 ECR 파티션 번호(p)는 P개의 파티션들 중 하나를 선택하는데, P는 M보다 크거나 동일하거나 또는 작을 수 있다. 특히, 0≤p≤P-1, P≤2B, B=ceil(log2(P))이다.
{a(k)}는 어드레스 시퀀스를 나타낼 수 있다. 시작 어드레스(a(0)) 및 스트라이드("s")를 갖는 1차원 선형 어드레스 시퀀스는 a(k)=a(0)+k·s로 주어질 수 있다. 많은 경우 s=2S이거나 s가 2의 제곱의 합 또는 차이(일반화된 대각선)이고, 일부의 경우에는 "s"는 임의의 정수일 수 있다.
Figure 112008064463623-pct00001
Figure 112008064463623-pct00002
어드레스는 양의 정수 값(a)으로서 표현될 수 있고, 0≤a≤2A-1이며, 열 비트 벡터(a)는 A 비트(ak)를 포함하며, 및/또는 다항식(a(x))은 A 계수(ak)를 갖는다.
모듈로 산술(modulo arithmetic)이 적용될 수 있다.
- 정수 나눗셈과 관련하여, a\P, 예를 들어,13\5=2이다.
- 나머지: a mod P=[a]P, 예를 들어 [13]5=3이다.
- a=(a\p)·P+[a]P, 예를 들어 13=2·5+3이다.
- [a+b]P=[[a]P+[b]P]P, 및 [a·b]P=[[a]P·[b]P]P.
기본적으로, 벡터(a)는 열 벡터이고, 벡터(a')는 행 벡터이다.
단사 함수는 두 개의 독립변수가 동일한 상에 매핑되지 않는 함수를 나타낼 수 있다.
gcd(.,.)는 최대 공약수를 나타낸다. ceil(x)은 x보다 큰 또는 동일한 가장 인접한 정수로 버림(rounds to)한다.
통상적으로, 테스트 데이터를 저장하는데 단일 ECR 메모리가 사용될 수 있다. 이러한 ECR은 고속일 수 있지만 고가의 SRAM일 수 있다. 이러한 종래의 접근방식에 있어서, ECR 대역폭은 충분히 높았다.
또 다른 접근방식은 다수의 시간 인터리브된 ECR 메모리를 구현하는 것이다.
이 상황에서, 후속하는 액세스는 라운드-로빈 방식으로 T개의 시간 인터리브된 ECR 메모리 복사본으로 이동된다. 타겟 복사본은 테스트되는 셀 어드레스(a=(c,r))와는 무관하다. 전체 대역폭은 하나의 복사본과 비교할 때 T배 높다. 전체 ECR 메모리 크기는 T배 더 큰데, 그 이유는 각 DUT 셀은 ECR 복사본에 매핑되며, 그에 따라 각 복사본이 모든 어드레스에 대한 공간을 제공할 것을 요구하기 때문이다. 모든 ECR 복사본은 결과를 사용하기 전에 결합된다.
본 발명의 예시적인 실시예에 따르면, 다수의 메모리의 대역폭 장점을 유지하면서 T 메모리 복사본을 피할 수 있다.
도 1은 앞서 설명한 접근방식에 따른 테스트 장치(100)의 블록도이다.
알고리즘 패턴 생성기(101)는 피검사 디바이스(DUT)(102)의 일부분의 어드레스(aDUT)에 기초하여 테스트 시퀀스를 생성한다. 따라서, aDUT는 DUT(102) 및 게이트 유닛(103)에 공급되는 특정 DUT 어드레스이다. 테스트 시퀀스는 자극 신호를 공급 함으로써 DUT에 인가되고, 이러한 자극 신호에 응답하여 응답 데이터(dDUT)가 비교기 유닛(104)에 공급된다. 합격/불합격 신호는 응답 데이터(dDUT)와 알고리즘 패턴 생성 유닛(101)에 의해 제공된 예상 결과 데이터(dExp)의 비교 결과에 기초하여 비교기 유닛(104)에 의해 생성된다. 결과적인 합격/불합격 데이터는 게이트 유닛(103)에 공급되어 결과 데이터(aFail)를 생성한다. 불합격하는 어드레스마다의 트랜잭션은 게이트 유닛(103)과 처리 부분(105) 간에 일어난다.
이 처리 부분(105)에서, 트랜잭션마다 증분되는 카운터 유닛(106)이 제공된다. 제어 신호를 논리 게이트(108)에 전송하는 중앙 처리 유닛(CPU)(107)이 제공된다. 제각기의 논리 유닛(108)은 더 나아가 게이트 유닛(103)으로부터 정보(afail)를 또는 카운터 유닛(106)으로부터 카운터 정보를 수신한다. 디멀티플렉서(109)는 테스트 결과 데이터를 판독-수정-기록(RMW) 유닛(110)을 통해 별도의 메모리 디바이스(111)에 전송함으로써 그 테스트 결과 데이터를 분배한다. 마스터로부터 슬레이브로의 트랜잭션 방향은 (비록 데이터가 도 1에서는 명시적으로 도시되어 있지는 않지만) 도 1에 대해 좌측에서 우측으로 이동한다.
이하에서는, 수퍼 컴퓨터에서의 저장 기법이 설명될 것이다. 수퍼 컴퓨터(SIMD=벡터 컴퓨터, MIMD=멀티-프로세서 컴퓨터)는 다수의 메모리를 사용할 수 있다.
액세스를 병렬화하여 보다 빠른 평균 트랜잭션 레이트를 달성하기 위해 벡터 어드레스가 다수의 메모리에 걸쳐 분배되도록, 다중-요소 구조체 내의 논리 어드레스("a")를, 메모리 내의 선택된 메모리("m") 및 워드 어드레스("w")로 구성된 물리 어드레스("e")에 매핑하는 다수의 상이한 저장 기법이 이용가능하다.
이 문맥에서, e=(m,w)=f(a)이고, f()는 단사 함수이다. 또한, m=fm(a), w=fw(a)이다.
구현될 수 있는 이용가능한 저장 기법은 하위 인터리빙(low order interleaving), 스큐잉, 소수 인터리빙(prime interleaving), 소수 RNS(Residue Number System, 여기서, 수는 모듈로 나눗셈으로부터의 나머지(잔여분)의 세트로서 표현된다), 라틴 방격 및 XOR 스크램블링이다. 이들 기법은 메모리 테스트에 대해, 특히 테스트 결과 데이터를 저장하는 것에 대해, 본 발명의 예시적인 실시예에 따라 구현될 수 있다. 대개, 물리적 메모리의 개수(M)와 파티션의 개수(P) 간에는 차이를 두지 않는데, 즉 P=M인 것을 의미한다. 논리적 어드레스는 행 및 열 어드레스(c,r)와는 달리 단일 스칼라("a")로 구성된다.
불평형 매핑은 감속을 야기할 수 있는 반면, ECR은 에러를 놓칠 수 있으며, 이는 사용불가능을 초래할 수 있다. 이하에서 설명되는 바와 같아, 오직 "완벽한" 기법만이 적용가능할 수 있다. 따라서, 메모리 테스트에 저장 기법을 적용하는 것은 복잡할 수 있다.
액세스되는 데이터 저장소는 통상 작다. 따라서, 종래의 저장 기법은 예를 들어 라틴 방격은 M2 요소까지만 동작할 수 있다.
그와 같이 알려져 있으며 바람직하게 구현될 수 있는 하나의 이용가능한 접근방식은 하위 인터리빙이다. 메모리의 개수가 2의 멱, 즉 M=2N인 경우, N개의 하위 어드레스 비트가 하나의 메모리를 선택할 수 있다. 나머지 비트들은 메모리 내의 워드를 선택할 수 있다.
Figure 112008064463623-pct00003
이것은 다음과 등가이다.
Figure 112008064463623-pct00004
이러한 기법의 특성은 M=2N인 것을 가정한다는 것이다. 명시적인 하드웨어는 필요로 하지 않을 수 있다(2N에 의한 나눗셈 및 모듈로 2N은 단지 비트 선택일 뿐이다). 스트라이드("s")가 M=2N과, 즉 모든 짝수 스트라이드와 공약수를 공유하는 경우, 충돌이 발생할 수 있고, 최악의 경우는 스트라이드가 2N의 배수인 경우이다. gcd(s,M)은 1이어야 한다. 따라서, 그와 같은 하위 인터리빙은 메모리 테스트에는 부적절할 수 있다.
다음으로, 스큐잉(K-방식 스큐잉)이 설명될 것이다.
이러한 기법은 하위 인터리빙와 유사할 수 있지만, 하위 인터리빙에서 발견되는 반복을 차단하기 위해 2N,22N,23N,..,2KN 어드레스마다 매핑을 "스큐잉"한다.
Figure 112008064463623-pct00005
이러한 기법의 특징은 M=2N인 것을 가정한다는 것이다. 이러한 시스템의 하드웨어는 매우 간단하고 소수의 가산기만을 필요로 한다. K가 충분히 큰 경우의 스트라이드(s=2S)에 대해서는 충돌이 발생하지 않는다. 그러나, 일부 대각선 및 역 대각선에 대해서는 충돌이 발생할 수 있다. 그러나, 스큐잉 기법은 메모리 테스트에 적합하도록 하기 위해 소정의 적응을 필요로 할 수 있다.
이하에서는, 소수 인터리빙(prime interleaving)이 설명될 것이다.
메모리의 개수(M)는 홀수 소수(P)이고, M=P, 예를 들어, P=7이다. 공식은 하위 인터리빙과 유사하다.
Figure 112008064463623-pct00006
[a]P는 사전계산된 계수의 가중치 합으로서 계산될 수 있다.
소수 인터리빙 기법의 특성은 (w=a\P에 대한) 소수에 의한 하드웨어 정수 나눗셈이 실행불가능하다는 것이다. 따라서, 소수 인터리빙은 메모리 테스트에 적합하도록 하기 위한 적응을 필요로 할 수 있다.
이 시스템은 s가 P의 정수배인 경우를 제외하면 거의 모든 스트라이드(s)에 대해 충돌이 발생하지 않는데, 즉 gcd(S,P)=1이라면 충돌은 발생하지 않는다.
비교적 작은 P에 대해, 예를 들어 23j-1은 임의의 양의 정수(j)에 대해 7의 배수이므로, 다수의 대각선 및 역-대각선에서 충돌이 발생할 수 있다. 따라서, 소수 인터리빙은 실제 메모리 수(M=P)에 대해 적응을 필요로 할 수 있다. 소수의 메모리는 다루기 어려울 수 있다.
다음으로, 소수 RNS(Residue Number System)이 설명될 것이다.
이러한 기법은 소수에 의한 나눗셈을 불필요하게 한다.
Figure 112008064463623-pct00007
정수론의 중국인 나머지 정리(Chinese Remainder Theorem)는 여전히 단사 매핑(a→(m,w))을 보증한다.
P는 임의의 홀수 정수일 수 있다.
이러한 기법의 특성은 하드웨어 노력이 적당하다는 것이다. 그러나, 소정의 스트라이드식 대각선 및 역-대각선에 대해 "소수 인터리빙"에서와 같은 동일한 충돌이 발생할 수 있다. 따라서, 소수 RNS는 실제적인 메모리 수(M=P)에 대해 소정의 적응을 필요로 할 수 있다. 메모리 내의 분산된 홀은 불편할 수 있다.
이하에서는, 라틴 방격 개념이 설명될 것이다.
(완벽한) 라틴 방격(L)은 0 내지 2N-1까지의 정수 요소를 갖는 (2N,2N) 매트릭스인데, 이러한 요소는 임의의 행 또는 열(또는 대각선 또는 역-대각선)에서 한 번 이상 나타나지 않는다.
행(r) 및 열(c)은 (M,M) 라틴 방격(L)을 탐색하여 메모리(m, M=2N)를 결정한다.
Figure 112008064463623-pct00008
라틴 방격 개념의 특성은 충돌 없는 행, 열, 대각선 및 역-대각선이다. 라틴 방격은 DUT 메모리의 크기를 가져야 하고, 따라서 메모리 테스트에 적합한 적응을 필요로 할 수 있다. 또한, 라틴 방격은 다수의 메모리(M=2N)를 필요로 하고 따라서 메모리 테스트에 사용되기 위해서는 추가적인 적응을 필요로 한다.
이하에서는, 스크램블링이 설명될 것이다.
m 내의 각 비트는 연산자 XOR 및 AND를 갖는 GF(2)에 대해 정칙(non-singular) (N,A) 가중 매트릭스(X)를 이용한, a 내의 어드레스 비트의 가중 XOR 합이다. GF(2)는 연산자로서 XOR 및 AND를 갖는 소수=2개 요소에 대한 갈로아 필드(Galois Field over prime=2 elements)를 나타낸다.
Figure 112008064463623-pct00009
X(M=23 및 A=32에 대해, 296개의 X가 가능하다)를 결정하는 것은 어려울 수 있다.
스크램블링 기법의 특성은 M=2N개의 메모리를 가정하고, 간단한 하드웨어 구 성을 가지며, X의 선택에 따라 충돌을 포함할 수 있고, X를 선택하는 방식에 대한 어려움을 포함할 수 있다는 것이다.
이하에서, 다항식 스크램블링이 설명될 것인데, 이는 "다항식 인터리빙"으로도 지칭될 수 있다.
(N,A) 매트릭스(X)는 차수(order) "N"의 최대 길이 LFSR(Linear Feedback Shift Register)로부터 "A"개의 후속 상태를 포함한다.
그러나, 충돌없는 대각선은 X 내에 "A"개의 고유한 열(LFSR 상태)을 요구할 수 있다. 최대 길이는 2N-1이기 때문에, 이것은 A≤2N-1=M-1, 즉 M>A일 것을 요구한다.
다항식 스크램블링 기법의 특성은 M=2N개의 메모리를 가정하고, 간단한 하드웨어를 포함하며, A≤M-1인 경우 s=2S 스트라이드 또는 2S 스트라이드식 대각선/역대각선에 대해 버퍼 깊이 1으로 충돌이 없을 수 있다는 것이다. 흔히, 다수의 메모리가 요구된다. 그러나, 필요로 하는 메모리의 수는 메모리를 다수의 파티션으로 분할함으로써 감소될 수 있다. 더 나아가, 다양한 정수 스트라이드에 대한 충돌이 발생할 수 있다.
본 발명의 예시적인 실시예에 따르면, ECR 메모리는 총 P>1 파티션을 갖는 M>1의 보다 작은 물리적 메모리로 분할될 수 있다. P는 M보다 크거나 작을 수 있고 또는 M과 동일할 수 있다. 예시적인 실시예에 따르면, 논리적 파티션 및 물리적 메모리는 구별될 수 있다.
예시적인 실시예에 따르면, 중요한(또는 관련) 어드레스 시퀀스({a(k)}={(r(k),c(k))}가 클러스터링(litter clustering)이 거의 없이 모든 P 파티션으로 동일하게 매핑되도록 행/열 어드레스는 파티션(p=fP(c,r))에 매핑될 수 있다. 그런 다음, 파티션(p)은 메모리(m)에 매핑될 수 있다. (c,r)→m,w가 단사이고 구현하기 용이하도록 매핑((c,r)→w))이 결정될 수 있다.
전형적인 부류의 매핑은 다음과 같다.
Figure 112008064463623-pct00010
버퍼링은 동일한 파티션/메모리에 대한 액세스의 단기간 클러스터링을 매끄럽게 할 수 있다.
매핑은 모든 액세스에 대해 사용될 수 있어, 소프트웨어에 대해 투과성(transparent)을 갖게 된다.
이하에서는, 도 2를 참조하여, 본 발명의 예시적인 실시예에 따른 테스트 장치(200)가 설명될 것이다.
테스트 장치(200)는 피검사 디바이스(202)를 테스트하고 테스트를 나타내는 1차 테스트 데이터를 생성하도록 구성된 테스트 유닛(201)을 포함한다. 또한, 테스트 장치(200)는 생성된 1차 테스트 데이터를 처리하는 디바이스(203)를 포함한다.
테스트 데이터를 처리하는 디바이스(203)는 피검사 디바이스(202)를 테스트 한 테스트를 나타내는 1차 테스트 데이터를 수신하도록 구성된 데이터 입력 인터페이스(204)를 포함하되, 1차 테스트 데이터는 1차 포맷(a)으로 제공된다. 처리 유닛(205)은 1차 포맷(a)의 1차 테스트 데이터를 2차 포맷(m,w)으로 변환함으로써 2차 포맷(m,w)의 2차 테스트 데이터를 생성하도록 구성된다. 또한, 2차 테스트 데이터를 저장 디바이스(207)에 저장하기 위해 2차 포맷의 2차 테스트 데이터를 제공하도록 구성된 데이터 출력 인터페이스(206)가 제공된다.
데이터 입력 인터페이스(204)는 피검사 디바이스(202)의 테스트되는 부분의 어드레스를 나타내고 또한 DUT(202)의 테스트되는 부분의 테스트 결과(즉, 지정된 테스트 부분이 테스트를 합격했는지 또는 불합격했는지 여부)를 나타내는 1차 포맷(a)의 1차 테스트 데이터를 수신한다.
기술한 실시예에 따르면, 피검사 디바이스(202)는 DRAM 메모리 제품, 즉 메모리 셀로 이루어진 매트릭스 형태의 구조물이다. 따라서, 어드레스("a")는 메모리 어레이(202)의 테스트되는 메모리 셀의 행("r") 및 열("c")을 나타낸다. 일반적으로, 본 발명의 실시예들은 DRAM 또는 플래시 메모리와 같은 임의의 메모리 디바이스에 적용될 수 있다. 그러나, DRAM이 특히 본 발명의 실시예를 이용하는 테스트에 적합한데, 그 이유는 이러한 유형의 고속 메모리는 특히 대역폭 문제를 겪기 쉽기 때문이다.
데이터 출력 인터페이스(206)는 DUT(202)의 테스트되는 부분의 테스트 결과가 저장되는 저장 유닛(207)의 어드레스를 나타내고 또한 DUT(202)의 테스트되는 부분의 테스트 결과(즉, 테스트 부분이 테스트를 합격했는지 또는 불합격했는지 여 부)를 나타내는 2차 포맷(m,w)의 2차 테스트 데이터를 제공한다.
특히, 어드레스(m)는 피검사 디바이스(202)의 테스트되는 부분의 테스트 결과가 저장되는 저장 디바이스의 메모리 부분(예를 들어, 별도의 물리적 메모리 또는 물리적 메모리의 일부분)(207a 내지 207c)(예를 들어, 메모리 부분(207a))을 나타낼 수 있고, 'w'는 피검사 디바이스(202)의 테스트되는 부분의 테스트 결과가 저장되는 저장 유닛(207)의 메모리 부분 내의 어드레스를 나타낼 수 있다.
따라서, 처리 유닛(205)은 저장 맵(a→(m,w))을 수행할 수 있다. 따라서, 처리 유닛(205)은 1차 포맷의 테스트 데이터에 기초하여 좌표 변환(a→(m,w))을 수행함으로써 테스트 결과 데이터를 2차 포맷으로 변환한다.
처리 유닛(205)은 2차 테스트 데이터의 항목이 평균적으로(즉, 장기적으로) 저장 유닛(207)의 상이한 메모리 부분(207a 내지 207c)에 본질적으로 동일한 빈도로 분배될 수 있도록 1차 테스트 데이터를 2차 테스트 데이터에 매핑한다.
저장 유닛(207)은 데이터 출력 인터페이스(206)에 결합되고 2차 포맷의 2차 테스트 데이터를 저장하도록 구성된다. 특히, 저장 유닛(207)은 다수의 메모리 부분(207a,207b..,207c)으로 분할되며, 다수의 메모리 부분(207a,207b..,207c) 각각은 2차 포맷의 2차 테스트 데이터의 일부분을 저장하도록 구성된다.
또한, 테스트 장치(200)는 저장 유닛(207)의 다수의 메모리 부분(207a,207b,...207c)과 데이터 출력 인터페이스(206) 사이에 배치된 다수의 버퍼 유닛(208a,208b,...,208c)을 포함한다. 이뿐만 아니라, 테스트 장치(200)는 다수의 메모리 부분(207a,207b,...207c)과 데이터 출력 인터페이스(206) 사이에 배치되 고 2차 테스트 데이터의 각각의 항목에 포함된 어드레스 정보에 기초하여 다수의 메모리 부분(207a,207b,...207c) 각각에 2차 테스트 데이터의 개별 항목을 분배하도록 구성된 디멀티플렉서 유닛(209)을 포함한다.
도 2로부터 알 수 있는 바와 같이, 알고리즘 패턴 생성기(210)는 DUT(202) 및 게이트 유닛(211)에 공급되는 어드레스 시퀀스(aDUT)를 생성한다. DUT(202)에 인가된 자극 신호는 비교기 유닛(212)에 제공되는 응답 신호(dDUT)의 생성을 초래한다. DUT(202)의 테스트되는 부분이 테스트를 합격했는지 또는 불합격했는지를 나타내는 합격/불합격 신호는 비교기 유닛(212)이 응답 신호(dDUT)와 예상 데이터(dExp)를 비교함으로써 생성되고 게이트 유닛(211)에 공급된다.
참조 번호(213)로 표시되어 있는 바와 같이, 불합격 어드레스마다의 트랜잭션은 불합격 어드레스(aFail)를 멀티플렉서 또는 선택 유닛(214)의 입력에 제공함으로써 이루어진다. 멀티플렉서(214)의 다른 입력에는 중앙 처리 유닛(CPU)(215)으로부터의 제어 신호가 제공된다. 따라서, 어드레스(a)는 처리 유닛(205)의 입력 인터페이스(204)에 제공된다.
처리 유닛(205) 내에서, 저장 맵(a→(m,w))이 생성되는데, 즉 a에서 (m,w)로의 좌표 변환이 수행된다. 비록 대응하는 데이터가 도 2에 명시적으로 도시되어 있지는 않지만, 마스터에서 슬레이브로의 트랜잭션 방향은 도 2에 있어서는 좌측에서 우측으로이다.
입력(204)에서 제공된 어드레스 신호("a")는 피검사 메모리 디바이스(202)의 특정 메모리 셀의 행(r) 및 열(c)을 나타내는 36비트 신호일 수 있다. 어드레스 신호(m)는 각각의 합격/불합격 정보를 저장할 수 있는 메모리(207)의 메모리 부분(207a 내지 207c) 중 특정 하나의 어드레스를 나타내는 6비트 신호이다. 또한, 30비트 신호(w)는 m에 의해 정의된 상기 메모리 부분(207a 내지 207c) 내의 어드레스를 나타내는데, 이 어드레스에 정보가 저장되어야 한다.
디멀티플렉서 유닛(209)은 신호를 메모리 유닛(207)의 메모리 부분(207a 내지 207c)의 대응하는 부분에 제공하도록 신호(w)를 디멀티플렉싱한다. 그러나, 메모리 부분(207a 내지 207c) 각각은 FIFO 버퍼(208a 내지 208c) 및 대응하는 판독-수정-기록 블록(216a,216b,216c)에 의해 디멀티플렉서 유닛(209)의 대응하는 출력으로부터 분리된다.
따라서, 적절한 매핑이 도 2에 도시된 기법을 통해 얻어질 수 있다.
이러한 매핑은 충돌이 없을 수 있다. 이상적으로, 중요한 어드레스 시퀀스는 그들이 동일한 메모리 부분/파티션을 다시 액세스하기 전에 모든 메모리 부분/파티션을 순환하도록 매핑된다. 장기간 동안, 모든 메모리 부분/파티션은 동일한 메모리 부분/파티션에 대해 클러스터링이 거의 없이 본질적으로 동일한 빈도로 액세스되어야 한다.
매핑은 단사함수이며, 상이한 DUT 어드레스(a=(r,c))는 상이한 ECR 어드레스(e=(m,w))에 매핑되어야 한다.
이상적으로, 매핑은 전단사(일대일 대응(no holes))이다. 대역폭 승수(multiplier)는 M과 동일하거나 유사할 수 있다.
따라서, 도 2에 도시된 시스템은 소프트웨어에 투과성을 가질 수 있고 적은 하드웨어 노력만을 필요로 할 수 있다. 정수 나눗셈은 필요 없다. 전체 ECR 메모리 크기는 DUT 메모리 크기와 동일하거나 유사할 수 있다(즉, 작은 저장 오버헤드만이 있다). 2의 멱승개의 메모리는 디코딩을 간단히 할 수 있고 연속적인 메모리 공간을 달성하는 것을 보다 용이하게 할 수 있다.
큰 소수 RNS(Residue Number System) 기법은 본 발명의 예시적인 실시예에 따른 시스템에서 구현될 수 있다.
P는 모든 관련 스트라이드(스트라이드식 대각선 및 스트라이드식 역-대각선)에 대해 상대적으로 소수(prime)이도록 충분히 크게 선택될 수 있다. P는 메모리의 수가 되기에는 너무 크기 때문에, 두 개의 직렬 모듈로 연산이 수행될 수 있다.
Figure 112008064463623-pct00011
이러한 시스템의 특성은 스트라이드("s")가 P의 정수배가 아니면, 버퍼링이 거의 없이 충돌이 없을 수 있다는 것이다. P가 충분히 큰 경우, 2S 스트라이드 및 2S 스트라이드식 대각선 및 역-대각선과는 충돌이 발생하지 않는다. 일부의 메모리는 다른 메모리보다는 자주 사용되는데, 그 이유는 gcd(P,M)≠M이기 때문이다. 이것은 대역폭 승수가 B보다 약간 작을 수 있음을 의미한다. 메모리 내에 홀이 발생한다.
이하에서는, 스큐잉된 라틴 방격 기법이 본 발명의 예시적인 실시예에 따른 시스템에 구현될 수 있는 방식에 대해 설명할 것이다.
메모리의 수 및 라틴 방격(L)의 크기를 줄이기 위해, 각각 C개 열 비트의 R개 행 어드레스 비트는 (2B,2B) 라틴 방격(L)을 탐색하기 전에 스큐잉을 통해 B 비트로 단축될 수 있다.
Figure 112008064463623-pct00012
이러한 시스템의 특성은 임의의 크기의 DUT 메모리에 대해 동작할 수 있으며, M은 R 및 C와 무관하다는 것이다. 라틴 방격 크기는 단지 (2B,2B)로 구성될 수 있다. 또한, 행 및 열 스트라이드 1로 충돌이 없는 대각선 및 역대각선 동작이 가능하다.
다음으로, 본 발명의 예시적인 실시예에 따른 스크램블링된 라틴 방격 개념이 설명될 것이다.
메모리의 수 및 라틴 방격(L)의 크기를 줄이기 위해, 각각 C개 열 어드레스 비트의 R개 행 어드레스 비트는 (2B,2B) 라틴 방격(L)을 탐색하기 전에 XOR 함수를 통해 B 비트로 단축될 수 있다.
Figure 112008064463623-pct00013
이러한 시스템의 특성은 임의의 크기의 DUT 메모리에 대해 동작할 수 있으며, M은 R 및 C와 무관하다는 것이다. 라틴 방격 크기는 단지 (2B,2B)로 구성될 수 있다. 또한, 행 및 열 스트라이드 1로 충돌이 없는 대각선 및 역대각선 동작이 가능하다.
다음으로, 예시적인 실시예에 따른 인터리브(다항식) 스크램블링을 설명할 것이다.
주어진 (작은) 수의 메모리(M)와의 충돌을 줄이기 위해 또는 제거하기 위해, 어드레스(c,r)는 (B,C+R) 매트릭스(X)를 이용하여 스크램블링되어 파티션(p)을 생성하는데, 0≤p≤P-1, P>M이며, 이는 모듈로(M)에 의해 보다 적은 메모리로 감소된다.
Figure 112008064463623-pct00014
이러한 시스템의 특성은 임의의 크기의 DUT 메모리에 대해 동작할 수 있으며, M은 R 및 C와 무관하다는 것이다. 이러한 시스템은 P 메모리에 대한 종래의 스크램블링과 동일한 충돌 행동을 가지지만, M>P 메모리인 경우로 한정된다.
다음으로, 예시적인 실시예에 따른 스큐잉된 인터리브(다항식) 스크램블링이 설명될 것이다.
먼저 어드레스 "a"가 스큐잉되어 "b"를 생성하고, 그러 다음 스크램블링되어 파티션(p)을 결정하고, 끝으로 모듈로(M)로 감소되어 메모리(m)를 선택한다.
Figure 112008064463623-pct00015
이러한 시스템은 정수 스트라이드에 있어서의 충돌이 깨지는 특성을 가질 수 있다. 그러나, 시스템은 거의 모든 스트라이드에 대해 2P 버퍼 깊이를 필요로 할 수 있다.
예시적인 실시예에 따르면, ATE 또는 DUT 보드 또는 온칩 DFT를 이용한 메모리 테스트 기법이 제공된다. 이러한 시스템은 P=M라는 가정에 기초할 수 있다. ECR은 M>1 메모리 분할될 수 있다. 이러한 시스템은 단사 맵(a=(c,r)→e=(m,w))으로 동작할 수 있다. 또한, m=fm(c,r)은 "c" 및 "r"로부터의 간단한 비트 서브세트 이상일 수 있다.
스트라이드(s=M)를 갖는 어드레스 시퀀스에 대해, M 메모리에 대한 총 대역폭은 단 하나의 메모리보다 높다. 이상적으로, 속도 증가는 M의 팩터(factor)이며, 임의의 경우 팩터는 1보다 크다.
모든 M 메모리의 전체 크기는 단 하나의 메모리에 대해 요구되는 크기의 M배보다 작을 수 있다. 이상적으로, 메모리 감소는 M의 팩터이며, 임의의 경우, 팩터는 1보다 크다.
특히 P≠M인 경우, 예시적인 실시예에 따른 메모리 디바이스가 제공되는데, 이 디바이스에는 ATE 또는 DUT 보드 또는 온칩 DFT가 제공될 수 있다. 이러한 경우, ECR은 M>1 메모리에 걸쳐 P>1 파티션의 집합을 포함할 수 있다. p=fp(c,r), m=fm(p), w=fw(c,r)로 구성되는 단사 맵(a=(c,r)→e=(m,w))을 이용하면, m=fm(fp(c,r))은 "c" 및 "r"로부터의 간단한 비트 서브세트 이상일 수 있다.
스트라이드(s=P)를 갖는 어드레스 시퀀스에 대해, M 메모리에 대한 총 대역폭은 단 하나의 메모리보다 높다. 이상적으로, 속도 증가는 M의 팩터이며, 임의의 경우 팩터는 1보다 크다.
모든 M 메모리의 전체 크기는 단 하나의 메모리에 대해 요구되는 크기의 M배보다 작을 수 있다. 이상적으로, 메모리 감소는 M의 팩터이며, 임의의 경우, 팩터는 1보다 크다.
또한, 이러한 시스템은 프로그램가능 매핑과 결합되어 어드레스 시퀀스의 주어진 세트를 개선하거나 최적화할 수 있다. 또 다른 예시적인 실시예에 따르면, 이것은 버퍼링과 결합되어 매핑되는 파티션 및 메모리의 단기간 클러스터링을 수용할 수 있다. 또 다른 예시적인 실시예에 따르면, 이것은 동일한 매핑을 통한 판독과 결합되어 소프트웨어에는 나타나지 않도록 할 수 있다. 또한, 이러한 시스템은 케스케이드된 다수의 매핑과 결합될 수 있다.
매핑은 "x 모듈로 P"의 계산을 포함할 수 있는데, P는 홀수이다. 이것은 소수 인터리빙, 및 소수 RNS를 포함할 수 있다. 또한, 매핑은 "x mode P" 및 "y mod B"의 계산을 포함할 수 있는데, P는 짝수이고, P≠B이다. 이것은 큰 소수 RNS를 포함할 수 있다.
이 뿐만 아니라, 매핑은 스큐잉을 포함할 수 있는, (c,r) 내의 적어도 두 개의 비트 필드의 합을 포함할 수 있다.
또한, 매핑은 라틴 방격의 룩업을 포함할 수 있다.
이 뿐만 아니라, 매핑은 인덱스들의 계산이 "a" 또는 (c,r)로부터의 적어도 두 개의 비트 필드의 합을 포함할 수 있는 라틴 방격의 룩업을 포함할 수 있다. 이는 스큐잉된 라틴 방격 기법을 포함할 수 있다.
또한, 매핑은 인덱스들의 계산이 "a" 또는 (c,r)의 XOR 함수를 포함할 수 있는 라틴 방격의 룩업을 포함할 수 있다. 이것은 스크램블링된 라틴 방격 개념을 포함할 수 있다.
매핑은 또한 스크램블링을 포함할 수 있는 XOR 테이블을 포함할 수 있다.
매핑은 다수의 연속 열들이 선형 독립인(linearly independent) XOR 테이블을 포함할 수 있다.
이 뿐만 아니라, 매핑은 열 어드레스("c")에 대응하는 다수의 연속 열과의 XOR 연산에 따라 논리적으로 처리되는 행 어드레스("r")에 대응하는 다수의 연속 열이 선형 독립인 XOR 테이블을 포함할 수 있다.
매핑은 콘텐츠가 다항식 분할(LFSR, PRBS, 해밍 코드, BCH 코드, RS 코등 등)을 사용하여 생성되는 XOR 테이블을 포함할 수 있다. 이것은 다항식 스크램블링을 포함할 수 있다.
매핑은 콘텐츠가 N(M=2N)과 동일하거나 더 큰 차수의 다항식으로의 다항식 나눗셈을 사용하여 생성된, XOR 테이블을 더 포함할 수 있다. 이는 스큐잉된 스크램블링을 포함할 수 있다.
이 뿐만 아니라, 매핑은 인덱스가 "a" 또는 (c,r)로부터의 적어도 두 개의 비트 필드의 합으로서 계산되는 XOR 테이블을 포함할 수 있다.
이하에서, 다항식 스크램블링에 기초한 어드레스 확산을 사용한 저장 효율적이고 높은 대역폭의 에러 맵에 대한 보다 상세한 설명이 주어질 것이다.
다항식 스크램블링은 다수의 ECR 메모리에 걸쳐 골고루 APG 어드레스를 확산시킬 수 있다. 총 ECR 대역폭은 메모리의 수로 곱해질 수 있다. 저장 오버헤드는 필요로 하지 않을 수 있는데, 그 이유는 ECR은 단지 분할될 뿐이며 복사본은 필요로 하지 않기 때문이다. 시스템은 모든 타겟 어드레스 시퀀스에 대해 동작할 수 있다. 시스템은 (XOR, FIFO)을 구현하는데 용이할 수 있다. 기법은 소프트웨어에 투과성을 가질 수 있다. 또한, 아키텍쳐는 보다 낮은 비용의 ECR/RA 솔루션을 가능하게 할 수 있다.
통상적으로, 대역폭 문제가 발생할 수 있는데, 그 이유는 필요한 ECR 메모리 대역폭은 DRAM에 의해 이용가능한 것보다 더 높을 수 있기 때문이다. (최근의) 테 스트된 DRAM 메모리는 ATE에서 ECR 메모리용으로 사용된 (보다 오래된) DRAM 칩보다 빠를 수 있다. 물리적 ECR 메모리는 그 폭이 1비트보다 크기 때문에, ECR의 업데이트는 판독-수정-판독 동작을 위해 적어도 두 번의 액세스를 필요로 할 수 있다. 임의의 적은 액세스에 대한 제한된 트랜잭션 밀도가 발생할 수 있다(예를 들어, DDR2의 경우 62%). 따라서, 통상적으로 다수의 ECR 메모리가 필요하다.
예시적인 실시예에 따르면, 결함 어드레스는 다수의 병렬 메모리에 걸쳐 확산될 수 있다. 이러한 경우, 각각이 8개의 뱅크를 갖는 M=2N=8=23개의 메모리에서 ECR을 P=2B=64=26개의 오버래핑되지 않는 파티션으로 분할할 수 있는데, 즉 뱅크마다 하나의 파티션이다. 결함 APG 어드레스("a")는 간단한 XOR을 이용하여 P=64 파티션(p)으로 매핑되어 모든 관련 어드레스 시퀀스는 약간의 일시적 클러스터링을 가진 채 모든 P 파티션에 걸쳐 고르게 확산될 수 있다. 6 비트 파티션 번호("p")는 메모리("m") 및 뱅크("b")를 선택할 수 있다. a(메모리, 뱅크) 내의 6 비트 선택된 워드 수는 간단히 결함 APG 어드레스("a")의 임의의 "All-6" 비트일 수 있다. 파티션에 대한 FIFO는 동일한 파티션에 대한 단기간의 액세스 클러스터링을 매끄럽게 할 수 있다. 매핑은 모든 액세스에 대해 사용되어, 소프트웨어에 투과성을 가질 수 있다.
도 3은 예시적인 실시예에 따른 테스트 장치(300)를 도시한다.
테스트 장치(300)는 단지 몇몇 개별적인 측면에서 테스트 장치(200)와는 구별된다. 예를 들어, 동일한 결함 어드레스를 융합하는 융합 유닛(301)이 테스트 유닛(201)에 제공된다. 이뿐만 아니라, 처리 유닛(205)내의 매핑은 출력(206)에서 세 개의 뱅크 비트(b), 세 개의 비트(m) 및 30개의 워드 비트를 제공한다. 논리 게이트(302)는 디멀티플렉서(209)와 FIFO(303) 사이에 또한 FIFO(303)와 RMW 유닛(216a 내지 216c) 사이에 배치된다.
다음으로, 도 4를 참조하면, 스크램블링을 이용한 어드레스 확산이 설명될 것이다.
파티션 번호("p")의 모든 B=6 비트는 결함 어드레스("a")의 모든 "A"(예를 들어, 36) 비트의 가중치 부여된 XOR 합이다. AND 가중치(xij)는 프로그램가능 레지스터에 저장된다. 이러한 매핑은 스크램블링(논리→물리 어드레스 스크램블링과 동일하지만 다른 목적을 가짐)으로서 지칭될 수 있다. 이러한 매핑은 행 및 열 어드레스를 독립적으로 스크램블링하는 논리→물리 어드레스 스크램블링과 혼동되지 말아야 하며, 스크램블링된 파티션 번호는 행 및 열을 포함하는 모든 어드레스 비트의 함수일 수 있다.
도 4의 기법은 AND 게이트(400) 및 OR 게이트(401)를 포함한다.
Figure 112008064463623-pct00016
도 5는 어드레스 확산에 의한 ECR 어드레스 생성을 나타내고 있다.
a(메모리, 뱅크) 내의 메모리 수("m"), 뱅크 수("b") 및 워드 수("w")는 파티션 번호("p") 및 결함 APG 어드레스("a")로부터의 간단한 비트 선택이다. 예를 들어, 64개의 파티션(B=6), 8개의 메모리(N=3), 8개의 뱅크/메모리 및 A=36 어드레스 비트가 가정될 수 있다.
Figure 112008064463623-pct00017
다음으로, 도 6을 참조하면, 다항식 스크램블링과 관련한 스크램블링 매트릭스(600)를 설명할 것이다.
소프트웨어 구성요소는 B·A 매트릭스 X를, "B" 플립-플롭을 갖는 최대 길이 LFSR의 "A"개의 연속적인 상태로 충진할 수 있다.
후속하는 예는 다항식(q(x)=x3+x2+1)을 사용할 것이다.
이하에서는, 도 7을 참조하여, APG와 ECR 어드레스 사이에서 이루어지는 매핑 기법(700)이 8개의 파티션을 예를 들어 설명될 것이다.
매트릭스(X)의 정칙성은 결함 APG 어드레스("a")와 ECR 어드레스(m,w) 사이에서 1:1 매핑을 야기한다. 이것은 메모리 크기 오버헤드 및 바람직하지 않은 메모리 홀을 방지할 수 있다.
이하에서는, 충돌 작용에 대해 몇몇 가정을 둘 것이다.
달리 표현되어 있지 않는다면, 다음의 최악의 경우의 조건이 가정된다. 즉, APG 클록 싸이클마다, 새로운 판독 어드레스가 존재하고(기록은 없고, 유휴 싸이클 도 없음), 모든 판독 어드레스는 불합격하며, 후속 액세스에 대한 로컬리티(locality)가 없어서 ECR 대역폭을 증가시키고, 최대 ECR 트랜잭션 레이트(리프레시 유휴기간 감산 후의 것)는 APG 어드레스 레이트와 동일하고, 달리 표현되어 있지 않으면, 동일한 파티션의 큰 클러스터링을 다루기 위한 추가적인 대역폭은 존재하지 않는다.
깊이("b")의 유한 버퍼가 이들 조건에서 어드레스 시퀀스를 커버하기에 충분한 경우, 어드레스 시퀀스는 버퍼("b")와 충돌이 없는 것으로 지칭된다.
이 조건은 후속하는 의사 코드를 사용하여 증명될 수 있는데, p(k)는 k번째 1차 데이터 세트에 대응하는 선택된 파티션이다.
Figure 112008064463623-pct00018
그러나, 실제에 있어서, 리프레시는 여러 경우에서 추가적인 버퍼링을 필요로 할 수 있다.
다음으로, 충돌 작용과 관련된 몇몇 결과가 설명될 것이다.
상이한 어드레스 시퀀스가 조사되었는데, 즉 선형 상수 스트라이드, 직사각형 블록, 삼각형 블록 및 버터플라이 패턴이 조사되었다.
일반적으로, 조사된 모든 어드레스 시퀀스는 관련된 스트라이드가 "1" 또는 2의 멱이거나, 또는 2의 멱승개의 열 플러스/마이너스 2의 멱승개의 행의 합/차이이고 블록이 P 열 및 P 행의 배수에서 정렬되는 경우, 적절한 버퍼와 충돌이 없다.
임의의 할당은 2× 또는 4× 버퍼 크기를 필요로 할 수 있다.
도 8은 P=8 대 16·32 APG 어드레스에 대한 기법(800)을 나타낸다.
각각의 P-정렬 P·P 블록에서, 모든 행/열/주(main) 대각선/및 역 대각선은 각각의 파티션을 정확히 한번씩 포함한다.
도 9는 파티션("0") 대 16·32 APG 어드레스에 대한 기법(900)을 나타낸다.
각각의 P-정렬 P·P 블록에서, 모든 행/열/주 대각선/및 역 대각선은 각각의 파티션을 정확히 한번씩 포함한다.
"포함하는"이라는 용어는 다른 요소 또는 특징을 배제하는 것은 아니며, "단수"는 복수를 배제하는 것은 아니다. 또한, 상이한 실시예와 관련하여 기술된 요소들은 결합될 수 있다. 청구항에서의 참조번호는 청구항의 범주를 제한하는 것으로 해석되어서는 안된다.

Claims (24)

  1. 테스트 데이터를 처리하는 디바이스(203)에 있어서,
    피검사 디바이스(202)를 테스트하기 위해 수행되는 테스트를 나타내고 1차 포맷으로 제공되는 1차 테스트 데이터를 수신하도록 구성된 데이터 입력 인터페이스(204)와,
    하나 이상의 제 1 좌표에 의해 형성되는 제 1 좌표 시스템에서 상기 제 1 좌표와는 다른 하나 이상의 제 2 좌표로 형성되는 제 2 좌표 시스템으로 상기 1차 테스트 데이터를 변환하여 상기 1차 테스트 데이터를 상기 1차 포맷에서 2차 포맷으로 변환함으로써 상기 2차 포맷의 2차 테스트 데이터를 생성하도록 구성된 처리 유닛(205)과,
    상기 2차 테스트 데이터를 다수의 저장 유닛(207a 내지 207c)에 저장하기 위해 상기 2차 포맷의 상기 2차 테스트 데이터를 제공하도록 구성된 데이터 출력 인터페이스(206)를
    포함하는 테스트 데이터 처리 디바이스.
  2. 제 1 항에 있어서,
    상기 데이터 입력 인터페이스(204)는, 상기 피검사 디바이스(202)의 테스트되는 부분의 어드레스와 상기 피검사 디바이스(202)의 상기 테스트되는 부분의 테스트 결과를 나타내는 상기 1차 포맷의 상기 1차 테스트 데이터를 수신하도록 구성되는
    테스트 데이터 처리 디바이스.
  3. 제 2 항에 있어서,
    상기 피검사 디바이스(202)의 상기 테스트되는 부분의 상기 어드레스는 상기 피검사 디바이스(202)의 상기 테스트되는 부분의 행 및 열을 나타내는
    테스트 데이터 처리 디바이스.
  4. 제 2 항에 있어서,
    상기 피검사 디바이스(202)의 상기 테스트되는 부분의 상기 테스트 결과는 상기 피검사 디바이스(202)의 상기 테스트되는 부분이 상기 테스트를 합격했는지 또는 상기 테스트를 불합격했는지를 나타내는
    테스트 데이터 처리 디바이스.
  5. 제 1 항에 있어서,
    상기 데이터 출력 인터페이스(206)는, 상기 피검사 디바이스(202)의 테스트되는 부분의 테스트 결과가 저장되는 저장 유닛(207a 내지 207c)의 어드레스를 나타내고 상기 피검사 디바이스(202)의 상기 테스트되는 부분의 테스트 결과를 나타내는 상기 2차 포맷의 상기 2차 테스트 데이터를 제공하도록 구성된
    테스트 데이터 처리 디바이스.
  6. 제 5 항에 있어서,
    상기 저장 유닛(207a 내지 207c)의 상기 어드레스는 상기 피검사 디바이스(202)의 상기 테스트되는 부분의 상기 테스트 결과가 저장되는 파티션(207a 내지 207c)을 나타내고,
    상기 저장 유닛(207a 내지 207c)의 상기 어드레스는 상기 피검사 디바이스(202)의 상기 테스트되는 부분의 상기 테스트 결과가 저장되는 상기 파티션(207a 내지 207c) 내의 어드레스를 나타내는
    테스트 데이터 처리 디바이스.
  7. 제 5 항에 있어서,
    상기 피검사 디바이스(202)의 상기 테스트되는 부분의 상기 테스트 결과는 상기 피검사 디바이스(202)의 상기 테스트되는 부분이 상기 테스트를 합격했는지 또는 상기 테스트를 불합격했는지를 나타내는
    테스트 데이터 처리 디바이스.
  8. 제 1 항에 있어서,
    상기 처리 유닛(205)은 상기 1차 포맷이 상기 2차 포맷과 다르도록 구성되는
    테스트 데이터 처리 디바이스.
  9. 제 6 항에 있어서,
    상기 처리 유닛(205)은, 상기 2차 테스트 데이터의 항목들이 평균적으로 상이한 파티션(207a 내지 207c)에 본질적으로 동일한 빈도로 분배되도록 상기 1차 테스트 데이터를 상기 2차 테스트 데이터에 매핑하도록 구성되는
    테스트 데이터 처리 디바이스.
  10. 제 1 항에 있어서,
    상기 처리 유닛(205)은 상기 1차 테스트 데이터를 전단사 방식(bijective manner)으로 상기 2차 테스트 데이터로 매핑하도록 구성되는
    테스트 데이터 처리 디바이스.
  11. 제 1 항에 있어서,
    상기 처리 유닛(205)은 상기 1차 테스트 데이터를 상기 1차 포맷에서 중간 포맷으로 변환함으로써 상기 중간 포맷의 중간 테스트 데이터를 생성하도록 구성되고,
    상기 처리 유닛(205)은 상기 중간 테스트 데이터를 상기 중간 포맷에서 상기 2차 포맷으로 변환함으로써 상기 2차 포맷의 상기 2차 테스트 데이터를 생성하도록 구성되는
    테스트 데이터 처리 디바이스.
  12. 제 1 항에 있어서,
    상기 처리 유닛(205)은 스큐잉된 라틴 방격(skewed Latin square), 스크램블링된 라틴 방격, 인터리브 스크램블링, 인터리브 다항식 스크램블링, 스큐잉된 인터리브 스크램블링, 스큐잉된 인터리브 다항식 스크램블링, 및 이들의 조합으로 구성된 그룹 중 적어도 하나를 사용하여 상기 1차 테스트 데이터를 상기 2차 테스트 데이터에 매핑하도록 구성된
    테스트 데이터 처리 디바이스.
  13. 피검사 디바이스(202)를 테스트하기 위한 테스트를 수행하고 상기 테스트를 나타내는 1차 테스트 데이터를 생성하도록 구성된 테스트 유닛(201)과,
    상기 생성된 1차 테스트 데이터를 처리하는, 청구항 제 1 항에 따른 디바이스(203)를
    포함하는 테스트 장치(200).
  14. 제 13 항에 있어서,
    하나 또는 다수의 피검사 디바이스(202)를 테스트하는 메모리 테스트 디바이스로서 구성되는 테스트 장치.
  15. 제 13 항에 있어서,
    상기 데이터 출력 인터페이스(206)에 결합되고 상기 2차 테스트 데이터를 상기 2차 포맷으로 저장하도록 구성된 다수의 저장 유닛(207a 내지 207c)를 포함하는 테스트 장치.
  16. 제 15 항에 있어서,
    상기 다수의 저장 유닛(207a 내지 207c)은 다수의 파티션(207a 내지 207c)으로 분할되고, 상기 다수의 파티션(207a 내지 207c) 각각은 상기 2차 포맷의 상기 2차 테스트 데이터를 저장하도록 구성된
    테스트 장치.
  17. 제 16 항에 있어서,
    상기 다수의 저장 유닛(207a 내지 207c) 또는 상기 다수의 파티션(207a 내지 207c)은 물리적으로 분리된 엔티티(entity)인
    테스트 장치.
  18. 제 16 항에 있어서,
    상기 다수의 저장 유닛(207a 내지 207c) 또는 상기 다수의 파티션(207a 내지 207c)은 별개의 어드레스 입력을 갖는
    테스트 장치.
  19. 제 16 항에 있어서,
    상기 다수의 파티션(207a 내지 207c)은 물리적 저장 유닛(207)의 일부분인 테스트 장치.
  20. 제 13 항에 있어서,
    상기 데이터 출력 인터페이스(206)와 상기 저장 유닛(207) 사이에 배치된 하나 또는 다수의 버퍼 유닛(208a 내지 208c)을 포함하는
    테스트 장치.
  21. 제 16 항에 있어서,
    상기 데이터 출력 인터페이스(206)와 상기 다수의 파티션(207a 내지 207c) 사이에 배치되고 상기 2차 테스트 데이터의 각각의 항목에 포함된 어드레스 정보에 기초하여 상기 2차 테스트 데이터의 개별 항목들을 상기 다수의 파티션(207a 내지 207c) 각각에 분배하도록 구성된 디멀티플렉서 유닛(209)을 포함하는
    테스트 장치.
  22. 테스트 데이터를 처리하는 방법에 있어서,
    피검사 디바이스(202)를 테스트하기 위해 수행되는 테스트를 나타내고 1차 포맷으로 제공되는 1차 테스트 데이터를 수신하는 단계와,
    하나 이상의 제 1 좌표에 의해 형성되는 제 1 좌표 시스템에서 상기 제 1 좌표와는 다른 하나 이상의 제 2 좌표로 형성되는 제 2 좌표 시스템으로 상기 1차 테스트 데이터를 변환하여 상기 1차 테스트 데이터를 상기 1차 포맷에서 2차 포맷으로 변환함으로써 상기 2차 포맷의 2차 테스트 데이터를 생성하는 단계와,
    상기 2차 테스트 데이터를 다수의 저장 유닛(207a 내지 207c)에 저장하도록 상기 2차 포맷의 상기 2차 테스트 데이터를 제공하는 단계를
    포함하는 테스트 데이터 처리 방법.
  23. 테스트 데이터를 처리하는 컴퓨터 프로그램이 저장되어 있는 컴퓨터 판독가능 매체에 있어서,
    상기 컴퓨터 프로그램은 프로세서(205)에 의해 실행되는 경우,
    피검사 디바이스(202)를 테스트하기 위해 수행되는 테스트를 나타내고 1차 포맷으로 제공되는 1차 테스트 데이터를 수신하는 단계와,
    하나 이상의 제 1 좌표에 의해 형성되는 제 1 좌표 시스템에서 상기 제 1 좌표와는 다른 하나 이상의 제 2 좌표로 형성되는 제 2 좌표 시스템으로 상기 1차 테스트 데이터를 변환하여 상기 1차 테스트 데이터를 상기 1차 포맷에서 2차 포맷으로 변환함으로써 상기 2차 포맷의 2차 테스트 데이터를 생성하는 단계와,
    상기 2차 테스트 데이터를 다수의 저장 유닛(207a 내지 207c)에 저장하도록 상기 2차 포맷의 상기 2차 테스트 데이터를 제공하는 단계의 방법을
    제어 또는 수행하도록 구성된 컴퓨터 판독가능 매체.
  24. 삭제
KR1020087022231A 2006-03-13 2006-03-13 테스트 데이터 처리 디바이스 및 방법, 테스트 장치 및 컴퓨터 판독가능 매체 KR101025407B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2006/060651 WO2007104355A1 (en) 2006-03-13 2006-03-13 Format transformation of test data

Publications (2)

Publication Number Publication Date
KR20080100259A KR20080100259A (ko) 2008-11-14
KR101025407B1 true KR101025407B1 (ko) 2011-03-28

Family

ID=37420909

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087022231A KR101025407B1 (ko) 2006-03-13 2006-03-13 테스트 데이터 처리 디바이스 및 방법, 테스트 장치 및 컴퓨터 판독가능 매체

Country Status (7)

Country Link
US (1) US8418010B2 (ko)
EP (1) EP1994535B1 (ko)
JP (1) JP2009529756A (ko)
KR (1) KR101025407B1 (ko)
DE (1) DE602006007627D1 (ko)
TW (1) TWI344153B (ko)
WO (1) WO2007104355A1 (ko)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101025407B1 (ko) 2006-03-13 2011-03-28 베리지 (싱가포르) 피티이. 엘티디. 테스트 데이터 처리 디바이스 및 방법, 테스트 장치 및 컴퓨터 판독가능 매체
US8327090B2 (en) * 2007-10-22 2012-12-04 Advantest Corporation Histogram generation with mixed binning memory
US20090119542A1 (en) * 2007-11-05 2009-05-07 Advantest Corporation System, method, and program product for simulating test equipment
RU2608958C2 (ru) * 2012-07-09 2017-01-27 ЗетТиИ Корпорейшн Способ и устройство сохранения данных
CN103678055A (zh) * 2012-09-14 2014-03-26 成都林海电子有限责任公司 Pcie总线设备存储空间性能测试方法
JP5933410B2 (ja) * 2012-10-25 2016-06-08 株式会社日立製作所 データベース分析装置及びデータベース分析方法
GB2515798A (en) * 2013-07-04 2015-01-07 Norwegian Univ Sci & Tech Ntnu Network coding over GF(2)
US9836497B2 (en) * 2014-04-18 2017-12-05 International Business Machines Corporation Enabling testing of production systems without affecting customer data sets system and method
US9805825B1 (en) 2015-08-24 2017-10-31 Apple Inc. Memory error capture logic
US10585809B2 (en) * 2016-04-01 2020-03-10 Intel Corporation Convolutional memory integrity
US11106734B1 (en) 2016-09-26 2021-08-31 Splunk Inc. Query execution using containerized state-free search nodes in a containerized scalable environment
US11250056B1 (en) 2016-09-26 2022-02-15 Splunk Inc. Updating a location marker of an ingestion buffer based on storing buckets in a shared storage system
US11860940B1 (en) 2016-09-26 2024-01-02 Splunk Inc. Identifying buckets for query execution using a catalog of buckets
US11874691B1 (en) 2016-09-26 2024-01-16 Splunk Inc. Managing efficient query execution including mapping of buckets to search nodes
US11416528B2 (en) * 2016-09-26 2022-08-16 Splunk Inc. Query acceleration data store
US10726009B2 (en) 2016-09-26 2020-07-28 Splunk Inc. Query processing using query-resource usage and node utilization data
US11232100B2 (en) * 2016-09-26 2022-01-25 Splunk Inc. Resource allocation for multiple datasets
US10353965B2 (en) 2016-09-26 2019-07-16 Splunk Inc. Data fabric service system architecture
US11126632B2 (en) 2016-09-26 2021-09-21 Splunk Inc. Subquery generation based on search configuration data from an external data system
US20180089324A1 (en) 2016-09-26 2018-03-29 Splunk Inc. Dynamic resource allocation for real-time search
US10776355B1 (en) 2016-09-26 2020-09-15 Splunk Inc. Managing, storing, and caching query results and partial query results for combination with additional query results
US11550847B1 (en) 2016-09-26 2023-01-10 Splunk Inc. Hashing bucket identifiers to identify search nodes for efficient query execution
US10984044B1 (en) 2016-09-26 2021-04-20 Splunk Inc. Identifying buckets for query execution using a catalog of buckets stored in a remote shared storage system
US11243963B2 (en) 2016-09-26 2022-02-08 Splunk Inc. Distributing partial results to worker nodes from an external data system
US11604795B2 (en) 2016-09-26 2023-03-14 Splunk Inc. Distributing partial results from an external data system between worker nodes
US11281706B2 (en) 2016-09-26 2022-03-22 Splunk Inc. Multi-layer partition allocation for query execution
US11321321B2 (en) 2016-09-26 2022-05-03 Splunk Inc. Record expansion and reduction based on a processing task in a data intake and query system
US11461334B2 (en) 2016-09-26 2022-10-04 Splunk Inc. Data conditioning for dataset destination
US11599541B2 (en) 2016-09-26 2023-03-07 Splunk Inc. Determining records generated by a processing task of a query
US11593377B2 (en) 2016-09-26 2023-02-28 Splunk Inc. Assigning processing tasks in a data intake and query system
US11562023B1 (en) 2016-09-26 2023-01-24 Splunk Inc. Merging buckets in a data intake and query system
US10956415B2 (en) 2016-09-26 2021-03-23 Splunk Inc. Generating a subquery for an external data system using a configuration file
US10795884B2 (en) 2016-09-26 2020-10-06 Splunk Inc. Dynamic resource allocation for common storage query
US11003714B1 (en) 2016-09-26 2021-05-11 Splunk Inc. Search node and bucket identification using a search node catalog and a data store catalog
US11023463B2 (en) 2016-09-26 2021-06-01 Splunk Inc. Converting and modifying a subquery for an external data system
US11663227B2 (en) 2016-09-26 2023-05-30 Splunk Inc. Generating a subquery for a distinct data intake and query system
US11314753B2 (en) 2016-09-26 2022-04-26 Splunk Inc. Execution of a query received from a data intake and query system
US11222066B1 (en) 2016-09-26 2022-01-11 Splunk Inc. Processing data using containerized state-free indexing nodes in a containerized scalable environment
US11294941B1 (en) 2016-09-26 2022-04-05 Splunk Inc. Message-based data ingestion to a data intake and query system
US11615104B2 (en) 2016-09-26 2023-03-28 Splunk Inc. Subquery generation based on a data ingest estimate of an external data system
US11269939B1 (en) 2016-09-26 2022-03-08 Splunk Inc. Iterative message-based data processing including streaming analytics
US11567993B1 (en) 2016-09-26 2023-01-31 Splunk Inc. Copying buckets from a remote shared storage system to memory associated with a search node for query execution
US11442935B2 (en) 2016-09-26 2022-09-13 Splunk Inc. Determining a record generation estimate of a processing task
US10977260B2 (en) 2016-09-26 2021-04-13 Splunk Inc. Task distribution in an execution node of a distributed execution environment
US11580107B2 (en) 2016-09-26 2023-02-14 Splunk Inc. Bucket data distribution for exporting data to worker nodes
US11620336B1 (en) 2016-09-26 2023-04-04 Splunk Inc. Managing and storing buckets to a remote shared storage system based on a collective bucket size
US11586627B2 (en) 2016-09-26 2023-02-21 Splunk Inc. Partitioning and reducing records at ingest of a worker node
US11163758B2 (en) 2016-09-26 2021-11-02 Splunk Inc. External dataset capability compensation
US11989194B2 (en) 2017-07-31 2024-05-21 Splunk Inc. Addressing memory limits for partition tracking among worker nodes
US11921672B2 (en) 2017-07-31 2024-03-05 Splunk Inc. Query execution at a remote heterogeneous data store of a data fabric service
US11151137B2 (en) 2017-09-25 2021-10-19 Splunk Inc. Multi-partition operation in combination operations
US10896182B2 (en) 2017-09-25 2021-01-19 Splunk Inc. Multi-partitioning determination for combination operations
US11334543B1 (en) 2018-04-30 2022-05-17 Splunk Inc. Scalable bucket merging for a data intake and query system
WO2020220216A1 (en) 2019-04-29 2020-11-05 Splunk Inc. Search time estimate in data intake and query system
US11715051B1 (en) 2019-04-30 2023-08-01 Splunk Inc. Service provider instance recommendations using machine-learned classifications and reconciliation
US11494380B2 (en) 2019-10-18 2022-11-08 Splunk Inc. Management of distributed computing framework components in a data fabric service system
US11922222B1 (en) 2020-01-30 2024-03-05 Splunk Inc. Generating a modified component for a data intake and query system using an isolated execution environment image
CN115605767A (zh) * 2020-07-21 2023-01-13 爱德万测试公司(Jp) 使用器件特定数据的自动化测试设备和方法
US11704313B1 (en) 2020-10-19 2023-07-18 Splunk Inc. Parallel branch operation using intermediary nodes
CN112363875B (zh) * 2020-10-21 2023-04-07 海光信息技术股份有限公司 一种系统缺陷检测方法、设备、电子设备和存储介质
US11574696B2 (en) * 2021-04-12 2023-02-07 Nanya Technology Corporation Semiconductor test system and method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5644578A (en) 1995-05-17 1997-07-01 Advantest Corporation Failure memory device
US20030046621A1 (en) 2001-08-31 2003-03-06 Finkler Ulrich A. Creation of memory array bitmaps using logical to physical server
US6536005B1 (en) 1999-10-26 2003-03-18 Teradyne, Inc. High-speed failure capture apparatus and method for automatic test equipment
US20050259485A1 (en) 2004-05-22 2005-11-24 Byoung-Sul Kim Apparatus and method for testing a memory device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58104551A (ja) * 1981-12-16 1983-06-22 Mitsubishi Electric Corp デ−タ伝送装置
JPS60193056A (ja) * 1984-03-14 1985-10-01 Nec Corp シングルチツプマイクロコンピユ−タ
GB9725066D0 (en) * 1997-11-28 1998-01-28 Process Intelligence Limited Address transformation means
JP2000195295A (ja) * 1998-12-24 2000-07-14 Advantest Corp メモリデバイス試験装置
JP4161481B2 (ja) * 1999-09-28 2008-10-08 横河電機株式会社 フェイルメモリ回路及びそのインタリーブコピー方法
JP2001101898A (ja) * 1999-09-30 2001-04-13 Ando Electric Co Ltd アドレス制御回路
HU0100956D0 (en) * 2000-03-06 2001-05-28 Bestfoods Bestfoods Freezable low-calorie spoonable dressings and method for their production
JP2001357696A (ja) * 2000-06-16 2001-12-26 Nec Corp 半導体メモリ検査装置と検査方法及び検査プログラムを記録した記録媒体
EP1324235A1 (de) * 2001-12-27 2003-07-02 Sap Ag Bestimmen einer Kennfunktion aus einer Matrix nach vorbestimmtem Schema
JP2005259266A (ja) * 2004-03-11 2005-09-22 Advantest Corp 試験装置及び試験方法
KR101025407B1 (ko) 2006-03-13 2011-03-28 베리지 (싱가포르) 피티이. 엘티디. 테스트 데이터 처리 디바이스 및 방법, 테스트 장치 및 컴퓨터 판독가능 매체

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5644578A (en) 1995-05-17 1997-07-01 Advantest Corporation Failure memory device
US6536005B1 (en) 1999-10-26 2003-03-18 Teradyne, Inc. High-speed failure capture apparatus and method for automatic test equipment
US20030046621A1 (en) 2001-08-31 2003-03-06 Finkler Ulrich A. Creation of memory array bitmaps using logical to physical server
US20050259485A1 (en) 2004-05-22 2005-11-24 Byoung-Sul Kim Apparatus and method for testing a memory device

Also Published As

Publication number Publication date
US8418010B2 (en) 2013-04-09
JP2009529756A (ja) 2009-08-20
DE602006007627D1 (de) 2009-08-13
KR20080100259A (ko) 2008-11-14
WO2007104355A1 (en) 2007-09-20
US20100011252A1 (en) 2010-01-14
EP1994535A1 (en) 2008-11-26
TW200809866A (en) 2008-02-16
EP1994535B1 (en) 2009-07-01
TWI344153B (en) 2011-06-21

Similar Documents

Publication Publication Date Title
KR101025407B1 (ko) 테스트 데이터 처리 디바이스 및 방법, 테스트 장치 및 컴퓨터 판독가능 매체
US6366995B1 (en) System and a method for defining transforms of memory device addresses
US20150270015A1 (en) Memory mapping
US7017089B1 (en) Method and apparatus for testing a content addressable memory device
CN104040499A (zh) 带有基于内部表决的内置自测(bist)的多核心处理器
US7729185B2 (en) Apparatus and method for detection of address decoder open faults
US20160172055A1 (en) Combined rank and linear address incrementing utility for computer memory test operations
JP2007220284A (ja) 改善された冗長性分析のためのメモリデバイスの欠陥サマリデータの削減
KR100760052B1 (ko) 장애 발생 어드레스 저장 방법 및 메모리 장치
CN108140418B (zh) 用于嵌入式存储器的面积有效的并行测试数据路径
US6769083B1 (en) Test pattern generator, a testing device, and a method of generating a plurality of test patterns
JP4889792B2 (ja) 試験装置
US7757133B1 (en) Built-in self-test hardware and method for generating memory tests with arbitrary address sequences
JP3923428B2 (ja) メモリの不良救済解析処理方法及びこの方法を実施するメモリ試験装置
US10998075B2 (en) Built-in self-test for bit-write enabled memory arrays
CN109119126B (zh) 半导体器件和错误管理方法
US7124336B2 (en) Method for the defect analysis of memory modules
JP2020042869A (ja) 半導体装置
US10997087B2 (en) Direct memory access
Hadjitheophanous et al. Utilizing shared memory multi-cores to speed-up the ATPG process
JP4962277B2 (ja) 半導体メモリ試験装置
JP3819056B2 (ja) ベクトル・モジュール・テーブルを用いる自動テスト装置のためのメモリ・アーキテクチャ
KR102668885B1 (ko) 반도체 테스트 방법 및 장치
CN112783805A (zh) 内存芯片,内存模块以及用来假性存取其记忆库的方法
US20170219652A1 (en) Performing on-chip partial good die identification

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
FPAY Annual fee payment

Payment date: 20140226

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150225

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180226

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20200225

Year of fee payment: 10