KR101456976B1 - 메모리 테스트 디바이스 및 메모리 테스트 방법 - Google Patents
메모리 테스트 디바이스 및 메모리 테스트 방법 Download PDFInfo
- Publication number
- KR101456976B1 KR101456976B1 KR1020080053786A KR20080053786A KR101456976B1 KR 101456976 B1 KR101456976 B1 KR 101456976B1 KR 1020080053786 A KR1020080053786 A KR 1020080053786A KR 20080053786 A KR20080053786 A KR 20080053786A KR 101456976 B1 KR101456976 B1 KR 101456976B1
- Authority
- KR
- South Korea
- Prior art keywords
- register
- memory
- test
- test pattern
- written
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/56—External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/56—External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
- G11C29/56004—Pattern generation
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
본 발명은 메모리 테스트 디바이스 및 메모리 테스트 방법에 관한 것이다. 본 발명에 따른 메모리 테스트 디바이스는 소정의 일반 명령어에 의한 연산을 수행하기 위한 일반 레지스터와; 상기 일반 레지스터보다 큰 용량을 가지며, 소정의 확장 명령어에 의한 연산을 수행하기 위한 확장 레지스터와; 상기 확장 명령어를 이용하여 외부 메모리에 소정의 테스트 패턴을 라이트하고, 상기 메모리에 라이트된 테스트 패턴을 리드하고, 라이트된 테스트 패턴과 리드된 테스트 패턴의 동일성을 판단하고, 상기 일반 명령어를 이용하여 상기 메모리의 오류 여부를 판단하는 제어부를 포함한다. 이에 의해 테스트 시간을 단축시킬 수 있는 메모리 테스트 디바이스 및 메모리 테스트 방법이 제공된다.
MMX, SSE, 레지스터
Description
본 발명은 메모리 테스트 디바이스 및 메모리 테스트 방법에 관한 것으로서, 보다 상세하게는 확장 레지스터를 포함하는 메모리 테스트 디바이스 및 메모리 테스트 방법에 관한 것이다.
메모리 생산 업체와 생산된 메모리를 제품에 적용하여 판매하는 전자장치 생산 업체에서 메모리의 오류를 검출하고 불량률을 감소시키는 것은 중요한 공정이다. 예전에는 메모리 용량이 작았기 때문에 다른 생산 공정과 비교하여 메모리 테스트 시간이 공정에서 차지하는 비율이 높지 않았다.
하지만, 최근 하드웨어 기술의 발전으로 인하여 메모리의 저장용량이 기하 급수적으로 증가함에 따라 메모리 오류 검사는 당 업계의 생산성과 직결되어 중요한 이슈가 되고 있다. 예를 들어, 128MB 메모리 오류 검사에 20분이 소요된다고 가정할 때, 1GB 메모리에 대한 테스트 시간을 단순히 계산하면 160분이 소용된다. 예전과 비교하여 CPU 성능 및 메모리 접근 시간(memory access time), 대역폭(bandwidth) 등이 증가하였기 때문에 단순히 8배의 시간이 소요된다고 단정할 수 는 없으나. 대체로 2-5배 이상의 테스트 시간이 소요된다.
한편, 현재까지 널리 쓰이거나 상용화되어 있는 메모리 테스트는 대체로 32비트(4바이트) 단위로 수행된다. 32비트 테스트는 가장 일반화된 컴퓨터 명령어 및 데이터 처리 단위와 같기 때문에 호환성과 범용성이 우수하다. 메모리 테스트 시간을 단축시키기 위하여 테스트 비트수를 증가시킬 경우, 증가된 데이터 및 명령어를 지원할 수 있는 별도의 테스트 디바이스가 지원되어야 하는 문제점이 있다.
따라서, 본 발명의 목적은 테스트 시간을 단축시킬 수 있는 메모리 테스트 디바이스 및 메모리 테스트 방법을 제공하는 것이다.
또한, 본 발명의 다른 목적은 호환성 및 범용성이 우수한 메모리 테스트 디바이스 및 메모리 테스트 방법을 제공하는 것이다.
상기 목적은, 본 발명에 따라, 메모리 테스트 디바이스에 있어서, 소정의 일반 명령어에 의한 연산을 수행하기 위한 일반 레지스터와; 상기 일반 레지스터보다 큰 용량을 가지며, 소정의 확장 명령어에 의한 연산을 수행하기 위한 확장 레지스터와; 상기 확장 명령어를 이용하여 외부 메모리에 소정의 테스트 패턴을 라이트하고, 상기 메모리에 라이트된 테스트 패턴을 리드하고, 라이트된 테스트 패턴과 리드된 테스트 패턴의 동일성을 판단하고, 상기 일반 명령어를 이용하여 상기 메모리의 오류 여부를 판단하는 제어부를 포함하는 메모리 테스트 디바이스에 의해 달성 된다.
상기 일반 레지스터는 소정 N바이트(N은 정수) 용량을 가지며, 이때 보다 빠른 테스트를 위하여 상기 제어부는 N*M바이트(M은 정수) 테스트 패턴을 라이트 및 리드하는 것이 바람직하다.
상기 제어부는 상기 라이트된 테스트 패턴과 상기 리드된 테스트 패턴의 동일성 여부를 N바이트 단위로 판단하고, 판단된 동일성 여부를 나타내는 레지스터값을 N바이트 단위로 상기 확장 레지스터에 라이트 할 수 있다.
이 때, 메모리 테스트 과정에 발생하는 작업량을 감소시키기 위하여 상기 제어부는 N바이트 단위로 라이트된 상기 레지스터값을 기초로 상기 라이트된 테스트 패턴과 상기 리드된 테스트 패턴의 동일성 여부에 대한 정보를 상기 일반 레지스터에 라이트 하는 것이 바람직하다.
이 경우, 상기 제어부는 라이트된 N바이트의 상기 레지스터값 중 어느 한 비트의 레지스터값을 상기 일반 레지스터에 라이트 할 수 있다.
상기 제어부는 상기 일반 레지스터에 라이트된 상기 레지스터값에 기초하여 오류가 발행한 상기 메모리의 어드레스를 판단한다.
상기 확장 명령어는 SIMD 연산을 구현하는 것이 바람직하다.
이러한 상기 확장 명령어는 MMX(multimedia extension), SSE(Streaming SIMD Extensions), SSE2, SSE3 중 적어도 하나를 포함할 수 있다.
또한, 상기 확장 레지스터는 MMX 레지스터 및 XMM(eXtended Memory Manager)레지스터 중 적어도 하나를 포함한다.
한편, 상기 목적은, 본 발명에 따라, 소정의 일반 명령어에 의한 연산을 수행하기 위한 일반 레지스터와, 상기 일반 레지스터보다 큰 용량을 가지며, 소정의 확장 명령어에 의한 연산을 수행하기 위한 확장 레지스터를 갖는 메모리 테스트 디바이스를 이용한 메모리 테스트 방법에 있어서, 상기 확장 명령어를 이용하여 외부 메모리에 소정의 테스트 패턴을 라이트하는 단계와; 상기 확장 명령어를 이용하여 상기 메모리에 라이트된 테스트 패턴을 리드하는 단계와; 라이트된 테스트 패턴과 리드된 테스트 패턴의 동일성을 판단하는 단계와; 상기 일반 명령어를 이용하여 상기 메모리의 오류 여부를 판단하는 단계를 포함하는 메모리 테스트 방법에 의해서도 달성될 수 있다.
이상 설명한 바와 같이, 본 발명에 따르면 테스트 시간을 단축시킬 수 있는 메모리 테스트 디바이스 및 메모리 테스트 방법이 제공된다.
또한, 본 발명에 따르면 호환성 및 범용성이 우수한 메모리 테스트 디바이스 및 메모리 테스트 방법이 제공된다.
그리고, 본 발명의 다른 실시예에 따르면 단순한 작업을 통하여 메모리 테스트를 진행할 수 있는 메모리 테스트 디바이스 및 메모리 테스트 방법이 제공된다.
한편, 본 발명에 따르면 큰 용량을 갖는 메모리의 오류를 용이하게 검출할 수 있는 메모리 테스트 디바이스 및 메모리 테스트 방법이 제공된다.
이하, 첨부한 도면을 참고로 하여 본 발명의 실시예들에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예들에 한정되지 않는다. 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조부호를 붙이도록 한다.
도 1은 본 발명의 일 실시예에 따른 메모리 테스트 디바이스 및 메모리의 제어블럭도이다.
본 실시예에 따른 메모리 테스트 디바이스(100)는 처리장치(processing unit) 또는 중앙처리장치(central processing unit, CPU)와 같이 컴퓨터 시스템에 포함되어 일정한 명령어를 기반으로 하여 데이터를 처리할 수 있는 연산 디바이스를 포함한다. 메모리 테스트 디바이스(100)는 다양한 크기를 갖는 기억수단 즉, 레지스터(register)를 포함하고 있다. 도시된 바와 같이, 메모리 테스트 디바이스(100)는 N바이트(byte)를 갖는 일반 레지스터(110)와 일반 레지스터(110)보다 큰 용량을 갖는 확장 레지스터(120)를 포함한다. 일반 레지스터(110)는 일반 명령어에 의한 데이터 연산을 수행하기 위하여 일반 명령어의 비트수 보다 큰 비트수를 가진다. 현재 범용으로 사용되는 컴퓨터 명령어는 32비트, 즉 4바이트이며, 본 실시예에 따른 일반 레지스터(110)는 4바이트 레지스터에 해당한다.
본 실시예에 따른 확장 레지스터(120)의 크기는 N*4바이트, 즉 128비트 이며, 확장 명령어에 의한 연산을 수행한다. 확장 명령어란 범용으로 사용되는 일반 명령어보다 많은 데이터를 보다 빠르게 처리하기 위한 명령어로서 미국 인텔사가 개발한 MMX(multimedia extension), SSE(Streaming SIMD Extensions), SSE2, SSE3 중 어느 하나를 포함한다. 이러한 확장 명령어는 게임, 동화상, 3차원 영상 등과 같이 멀티 미디어 기능을 보다 효과적으로 구현하기 위하여 개발된 것으로 데이터의 빠른 처리를 위하여 SIMD 연산을 구현한다. SIMD(Single Instruction Multiple Data) 연산이란 하나의 명령어로 복수의 데이터를 처리하는 기술을 의미하며 SIMD 연산을 수행할 경우 보다 많은 데이터를 한번에 처리할 수 있는 장점이 있다. SIMD 연산을 수행하기 위해서는 일반 레지스터가 아닌 확장 레지스터가 사용되어야 한다. 본 실시예에 따른 확장 레지스터(120)는 MMX 레지스터 및 XMM(eXtended Memory Manager) 레지스터 중 적어도 하나로 구현될 수 있다.
도시되지는 않았지만, 메모리 테스트 디바이스(100)는 N*4바이트 확장 레지스터(120) 이외에 N*2 바이트 레지스터 또는 더 큰 바이트 레지스터를 포함할 수 있다.
메모리(200)는 복수의 어드레스(210)로 구획되어 있으며, 메모리 테스트를 위하여 소정의 데이터 패턴들이 라이트 된다. 메모리(200)의 용량이 증가할수록 많은 데이터 패턴들이 라이트 되어야 하고, 이에 따라 메모리 테스트에 많은 시간이 소요된다. 테스트 시간을 감소시키기 위하여 한번에 라이트 되는 데이터 패턴의 크기가 큰 것이 바람직하다.
제어부(130)는 확장 명령어를 이용하여 메모리(200)에 소정의 테스트 패턴을 라이트 및 리드하고, 라이트 및 리드된 테스트 패턴의 동일성을 판단한다. 또한, 제어부(130)는 일반 명령어를 이용하여 오류가 발생한 메모리(200)의 어드레 스(210)를 판단한다. 제어부(130)는 메모리 테스트를 위하여 명령어를 제어 및 실행시킴으로써 데이터를 처리하는 추상적인 주체를 의미한다.
도 2는 도 1에 따른 메모리 테스트 디바이스의 레지스터를 도시한 개략도이고, 도 3은 데이터 패턴의 라이트 과정을 설명하기 위한 제어흐름도이며, 도 4는 데이터 패턴의 리드 과정을 설명하기 위한 제어흐름도이다. 이하 상기 도면들을 이용하여 메모리 테스트 과정에 대하여 상세히 설명한다.
제어부(130)는 확장 레지스터(120) 중 특정 레지스터에 데이터 패턴을 설정한다(set)(S10). 이때 데이터 패턴은 N*4바이트, 즉 N바이트가 32비트이므로 128비트이다. 확장 레지스터(120) 중 테스트 패턴이 저장되어 있는 레지스터를 소스 레지스터(source register; s.r)로 지칭하며, 소스 레지스터가 물리적인 위치 또는 이름이 정해져 있는 특정 레지스터를 지칭하는 것은 아니다.
제어부(130)는 설정된 데이터 패턴을 SIMD 연산을 이용하여 메모리(200)의 가장 낮은 어드레스(210)에 라이트 한다(S20). 즉, 일반 명령어가 아닌 확장 명령어를 이용하여 보다 많은 양의 데이터를 한꺼번에 메모리(200)에 라이트 한다. 본 실시예와 같이 확산 명령어를 통한 SIMD 연산을 이용하여 데이터 패턴을 라이트할 경우 종래의 일반 명령어를 이용할 때와 비교하여 최대 4배의 시간을 절약할 수 있다.
그런 후, 제어부(130)는 일반 명령어를 이용하여 메모리(200)의 어드레스(210)를 N*M바이트, 즉 128비트 증가시킨다(S30).
메모리(200)의 어드레스(210)가 가장 높은 값을 갖는 최고 어드레스인지 여 부를 판단하여(S40), 어드레스(210)가 최고 어드레스인 경우에는 데이터 패턴의 라이트를 종료한다. 반면, 어드레스(210)가 최고 어드레스 이하인 경우에는 다시 S20 단계로 돌아가 증가된 어드레스(210)에 데이터 패턴을 라이트 한다. 어드레스(210)에 한 번에 저장되는 데이터 패턴은 각각 상이할 수도 있고 동일할 수도 있다. 제어부(130)는 복수의 데이터 패턴을 메모리(200)에 순차 반복적으로 라이트 할 수 있다. 제어부(130)는 도 3과 같이 메모리(200)의 가장 낮은 어드레스부터 최고 어드레스까지 데이터 패턴을 라이트 한 후, 도 4와 같은 리드 과정을 수행한다.
한편, 다른 실시예에 따르면, 제어부(130)는 모든 어드레스가 아닌 소정 단위의 어드레스마다 데이터 패턴(이 경우, 데이터 패턴은 128비트 또는 128비트의 정수배를 가질 수 있다)을 라이트 한 후, 리드 과정을 거칠 수도 있다. 즉, 데이터 패턴의 라이트 및 리드가 반복된다. 이때, 제어부(130)는 도 3의 S20 단계 이후 도 4와 같이 데이터 패턴을 리드한 다음, 메모리(200)의 어드레스를 증가시킨다.
데이터 패턴의 라이트가 종료되면, 제어부(130)는 확장 명령어를 이용하여 메모리(200)에 라이트된 데이터 패턴을 제1데스티네이션 레지스터(destination register; d.r1)로 리드한다(도 4의 S50).
그런 다음, 제어부(130)는 확장 명령어를 이용하여 라이트된 테스트 패턴, 즉 도 3의 S10에서 설정되었던 테스트 패턴과 제1 데스티네이션 레지스터(d.r1)에 리드된 데이터 패턴의 동일성 여부를 N바이트 단위, 즉, 32비트 단위로 판단한다(S61). 제어부(130)는 판단 결과에 따라 데이터 패턴의 동일성 여부를 나타내는 레지스터값을 제2 데스티네이션 레지스터(d.r2)에 라이트 한다(S63).
도시된 바와 같이, 첫 번째 32비트의 경우 소스 레지스터(s,r)와 제1데스티네이션 레지스터(d.r1)의 데이터는 동일하다. 이런 경우, 제2데스티네이션 레지스터(d.r2)의 첫 번째 32비트에는 레지스터값 “1”이 라이트 된다. 반면, 두 번째 32비트와 같이 소스 레지스터(s.r)와 제1데스티네이션 레지스터(d.r1)의 데이터가 동일하지 않는 경우(점선 안의 데이터값) 제2데스티네이션 레지스터(d.r2)의 두 번째 32비트에는 레지스터값으로 “0”이 라이트 된다. 이런 방식으로 N비트 단위로 데이터 패턴의 동일성이 비교되고 비교 결과가 N비트 단위로 동일한 레지스터값이 라이트 된다. 물론, 동일성에 따라 라이트되는 레지스터값은 변경 가능하다.
그런 다음, 제어부(130)는 N바이트, 즉 32비트 단위로 라이트된 레지스터값 중 한 비트에 대응하는 레지스터값을 일반 레지스터(g.r)에 라이트 한다(S70).
현재의 확장 명령어는 레지스터값을 이용하여 오류를 파악하는 작업(task)을 지원하지 않는다. 따라서, 일반 명령어에 의한 작업을 위하여 확장 레지스터에 라이트된 레지스터값은 32비트 단위로 일반 레지스터에 라이트 되어야 하고, 이런 경우 기존에 작업보다 실제 4-8배의 추가 작업이 수행되어야 한다. 이는 곧 테스트 시간의 증가를 가져온다.
본 실시예에서는 확장 레지스터(120)를 이용하여 데이터 패턴을 라이트 및 리드할 때 발생할 수 있는 추가 작업을 줄이기 위하여 제2 데스티네이션 레지스터(d.r2)에 라이트된 레지스터값 중 한 비트 레지스터값만 일반 레지스터(g.r)에 라이트 한다. 이때, MSB(most significant bit) 또는 LSB (least significant bit)의 레지스터값이 라이트 될 수 있다. 이러한 작업을 통하여 32비트 단위마다 개별 적으로 레지스터값을 라이트 했던 작업이 한번의 라이트로 대체되므로 단순한 작업을 통하여 메모리 테스트의 효율을 증가시킬 수 있다.
그런 다음, 제어부(130)는 일반 명령어를 이용하여 메모리(200)에 오류가 발생했는지 여부를 판단하고 오류가 발생한 어드레스(210)를 파악한다(S80). 판단 결과, 레지스터값이 “0”으로 오류가 발생한 것으로 판단되는 경우 오류를 보고하고(S90), 레지스터값이 “1”인 경우, 메모리(200)의 어드레스(210)를 N*M바이트, 즉 128비트를 증가시킨다(S100). 제어부(130)는 오류가 발생한 어드레스(210)를 사용자가 인식할 수 있도록 표시하거나 오류 발생을 알리는 음향 또는 이미지를 출력할 수도 있다.
그런 다음 도 3의 S40과 같이 메모리(200)의 어드레스(210)가 가장 높은 값을 갖는 최고 어드레스인지 여부를 판단하여(S110), 어드레스(210)가 최고 어드레스인 경우에는 데이터 패턴의 리드를 종료한다. 반면, 어드레스(210)가 최고 어드레스 이하인 경우에는 다시 S50 단계로 돌아가 증가된 어드레스(210)에 데이터 패턴을 리드 한다.
도 5는 도 3 및 도 4에 따른 메모리 테스트 방법에 따른 효과를 나타낸 표이다.
이는 Intel Core 2 Duo E6750 2.66GHz 사양에 따른 중앙처리장치를 메모리 테스트 디바이스로 사용하여, 삼성전자에서 제조된 DDR 2 PC5300, 1024MB*1 메모리를 테스트한 결과이다.
테스트 내용을 살펴보면, 제1테스트는 메모리에 테스트 패턴을 라이트하는 “라이트” 테스트를 의미하고, 제2 및 제3테스트는 라이트된 테스트 패턴을 리드하는 “리드” 테스트에 해당한다. 제2테스트는 중앙처리장치와 메모리 사이에 보조기억장치인 캐시를 사용한 경우이고, 제3테스트는 캐시를 사용하지 않고 리드한 경우이다. 라이트 시간을 비교하면 32비트 단위로 테스트 패턴을 라이트할 경우 1.87초가 소요되는 것에 비하여 64비트의 경우에는 1.22초, 128비트의 경우에는 0.98초로 감소한다. 도시된 바와 같이 32비트 일 때보다 128비트일 경우에는 라이트 시간 개선율이 47.6%이고, 속도 개선율은 90.8%에 달한다. “리드” 테스트의 경우에도 캐시를 이용할 경우 32비트에 비하여 시간은 61.1%까지 개선되고, 속도 역시 157.1%가 증가 된 것을 알 수 있다. 테스트 패턴의 비트수가 증가할수록 테스트 시간 및 테스트 속도가 증가하는 것을 알 수 있다.
제4 내지 제7테스트는 메모리에 라이트 되는 테스트 데이터의 종류 또는 라이트 방식에 따라 구분한 것으로 메모리에 테스트 데이터를 라이트하고 라이트된 테스트 데이터를 리드하여 오류 검사를 종료할 때까지 시간을 측정한 것이다. 각 테스트 마다 테스트 과정에 수반되는 알고리즘 및 작업이 상이하기 때문에 메모리 테스트에 소요되는 시간은 각각 다를 수 있다. 제4테스트는 상술한 바와 같이 특정 패턴을 라이트 및 리드한 것이고, 제5테스트의 “어드레스 라인 테스트”는 메모리에 특정 테스트 패턴을 라이트 및 리드하는 것이 아니라 메모리의 어드레스값을 낮은 어드레스부터 높은 어드레스까지 순차적으로 라이트 및 리드하는 것을 의미하며, 제6테스트인 “워킹 1/0테스트”는 “1000000000000…”, “010000000000..”, “00100000000..”와 같이 “1” 또는 “0” 한 비트씩 이동하는 테스트 패턴을 라 이트 및 리드하는 테스트를 의미한다. 마지막 제7테스트는 서양 장기판의 체크보드와 같이 격자 형태의 패턴을 라이트 및 리드하는 것을 일컫는다. 제4 내지 제7테스트는 모두 표준화된 테스트이다. 테스트 시간이 가장 적게 소요되는 어드레스 라인 테스트의 경우, 시간 개선율은 64비트일 때 약 37%이며 128인 경우에는 약 66%이다. 128비트인 경우 32비트일 때 보다 속도는 무려 200%이상 개선된다. 표에 나타난 것처럼, 32비트가 아닌 64 또는 128 비트 레지스터를 이용하여 메모리 테스트를 수행할 경우 엄청난 시간 및 속도 개선을 얻을 수 있다.
본 발명은 메모리 테스트 디바이스(100)에서 지원되는 확장 명령어를 이용하여 테스트 데이터가 반복적으로 라이트 및 리드되는 시간을 감소시킨다. 또한, 오류 검출에 수행되는 작업을 감소시킴으로써 메모리 테스트 알고리즘을 단순화시킨다. 이로써 큰 용량의 메모리를 보다 용이하게 테스트할 수 있으며, 추가적인 구성을 요구하지 않기 때문에 메모리 테스트의 호환성 및 범용성을 유지할 수 있다.
비록 본 발명의 몇몇 실시예들이 도시되고 설명되었지만, 본 발명이 속하는 기술분야의 통상의 지식을 가진 당업자라면 본 발명의 원칙이나 정신에서 벗어나지 않으면서 본 실시예를 변형할 수 있음을 알 수 있을 것이다. 발명의 범위는 첨부된 청구항과 그 균등물에 의해 정해질 것이다.
도 1은 본 발명의 일 실시예에 따른 메모리 테스트 디바이스 및 메모리의 제어블럭도이고,
도 2는 도 1에 따른 메모리 테스트 디바이스의 레지스터를 도시한 개략도이고,
도 3은 도 1에 따른 메모리 테스트 디바이스의 데이터 패턴 라이트 과정을 설명하기 위한 제어흐름도이고,
도 4는 도 1에 따른 메모리 테스트 디바이스의 데이터 패턴 리드 과정을 설명하기 위한 제어흐름도이고,
도 5는 도 3 및 도 4에 따른 메모리 테스트 방법에 따른 효과를 나타낸 표이다.
* 도면의 주요 부분에 대한 부호의 설명
100 : 메모리 테스트 디바이스 110 : 일반 레지스터
120 : 확장 레지스터 200 : 메모리
210 : 어드레스
Claims (13)
- 메모리 테스트 디바이스에 있어서,메모리 테스트에 관한 연산을 수행하기 위한 일반 레지스터와;상기 일반 레지스터보다 큰 테스트 패턴의 크기의 배수의 용량을 가지며, 상기 테스트 패턴에 관한 연산을 수행하기 위한 제1, 제2 및 제3확장 레지스터와;상기 제1확장 레지스터를 이용하여 테스트할 메모리에 한번에 복수의 상기 테스트 패턴을 라이트하고, 상기 제2확장 레지스터를 이용하여 상기 메모리에 라이트된 상기 복수의 테스트 패턴을 한번에 리드하고, 상기 제1확장 레지스터를 이용하여 라이트된 상기 복수의 테스트 패턴과 상기 제2확장 레지스터를 이용하여 리드된 상기 복수의 테스트 패턴의 동일성 여부를 비교하여, 비교 결과에 기초하여 상기 테스트 패턴의 크기 단위 별로 동일한 레지스터값을 상기 제3확장 레지스터에 라이트하고, 상기 일반 레지스터를 이용하여 상기 제3확장 레지스터에 라이트된 상기 테스트 패턴의 크기 단위 별로 동일한 비교 결과값 중 어느 하나를 리드하여 상기 메모리의 오류 여부를 판단하는 제어부를 포함하는 것을 특징으로 하는 메모리 테스트 디바이스.
- 제1항에 있어서,상기 일반 레지스터는 소정 N바이트(N은 정수) 용량을 가지며,상기 제어부는 N*M바이트(M은 정수) 테스트 패턴을 라이트 및 리드하는 것을 특징으로 하는 메모리 테스트 디바이스.
- 제2항에 있어서,상기 제어부는 상기 라이트된 테스트 패턴과 상기 리드된 테스트 패턴의 동일성 여부를 N바이트 단위로 판단하고, 판단된 동일성 여부를 나타내는 레지스터값을 N바이트 단위로 상기 제3확장 레지스터에 라이트 하는 것을 특징으로 하는 메모리 테스트 디바이스.
- 제3항에 있어서,상기 제어부는 N바이트 단위로 라이트된 상기 레지스터값을 기초로 상기 라이트된 테스트 패턴과 상기 리드된 테스트 패턴의 동일성 여부에 대한 정보를 상기 일반 레지스터에 라이트 하는 것을 특징으로 하는 메모리 테스트 디바이스.
- 제4항에 있어서,상기 제어부는 라이트된 N바이트의 상기 레지스터값 중 어느 한 비트의 레지스터값을 상기 일반 레지스터에 라이트 하는 것을 특징으로 하는 메모리 테스트 디바이스.
- 제5항에 있어서,상기 제어부는 상기 일반 레지스터에 라이트된 상기 레지스터값에 기초하여 오류가 발생한 상기 메모리의 어드레스를 판단하는 것을 특징으로 하는 메모리 테스트 디바이스.
- 제1항에 있어서,상기 제어부는 SIMD 연산을 구현하는 것을 특징으로 하는 메모리 테스트 디바이스.
- 제1항에 있어서,상기 제어부는 MMX(multimedia extension), SSE(Streaming SIMD Extensions), SSE2, SSE3 중 적어도 하나를 포함하는 명령어를 이용하는 메모리 테스트 디바이스.
- 제1항에 있어서,상기 확장 레지스터는 MMX 레지스터 및 XMM(eXtended Memory Manager)레지스터 중 적어도 하나를 포함하는 것을 특징으로 하는 메모리 테스트 디바이스.
- 메모리 테스트에 관한 연산을 수행하기 위한 일반 레지스터와, 상기 일반 레지스터보다 큰 테스트 패턴의 크기의 배수의 용량을 가지며, 상기 테스트 패턴에 관한 연산을 수행하기 위한 제1, 제2 및 제3확장 레지스터를 갖는 메모리 테스트 디바이스를 이용한 메모리 테스트 방법에 있어서,상기 제1확장 레지스터를 이용하여 테스트할 메모리에 한번에 복수의 상기 테스트 패턴을 라이트하는 단계와;상기 제2확장 레지스터를 이용하여 상기 메모리에 라이트된 상기 복수의 테스트 패턴을 한번에 리드하는 단계와;상기 제1확장 레지스터를 이용하여 라이트된 상기 복수의 테스트 패턴과 상기 제2확장 레지스터를 이용하여 리드된 상기 복수의 테스트 패턴의 동일성 여부를 비교하여, 비교 결과에 기초하여 상기 테스트 패턴의 크기 단위 별로 동일한 레지스터값을 상기 제3확장 레지스터에 라이트하는 단계와;상기 일반 레지스터를 이용하여 상기 제3확장 레지스터에 라이트된 상기 테스트 패턴의 크기 단위 별로 동일한 비교 결과값 중 어느 하나를 리드하여 상기 메모리의 오류 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 메모리 테스트 방법.
- 제10항에 있어서,상기 일반 레지스터는 소정 N바이트(N은 정수) 용량을 가지며,상기 테스트 패턴을 라이트하는 단계는 N*M바이트(M은 정수) 테스트 패턴을 라이트 및 리드하는 것을 특징으로 하는 메모리 테스트 방법.
- 제11항에 있어서,상기 테스트 패턴의 동일성을 판단하는 단계는,상기 라이트된 테스트 패턴과 상기 리드된 테스트 패턴의 동일성 여부를 N바이트 단위로 판단하는 단계와;판단된 동일성 여부를 나타내는 레지스터값을 N바이트 단위로 상기 제3확장 레지스터에 라이트 하는 단계를 포함하는 것을 특징으로 하는 메모리 테스트 방법.
- 제12항에 있어서,상기 메모리의 오류 여부를 판단하는 단계는,N바이트 단위로 라이트된 상기 레지스터값을 기초로 상기 라이트된 테스트 패턴과 상기 리드된 테스트 패턴의 동일성 여부에 대한 오류 정보를 상기 일반 레지스터에 라이트 하는 단계와;상기 일반 레지스터에 라이트된 상기 오류 정보에 기초하여 오류가 발생한 상기 메모리의 어드레스를 판단하는 것을 특징으로 하는 메모리 테스트 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080053786A KR101456976B1 (ko) | 2008-06-09 | 2008-06-09 | 메모리 테스트 디바이스 및 메모리 테스트 방법 |
US12/331,701 US7979761B2 (en) | 2008-06-09 | 2008-12-10 | Memory test device and memory test method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080053786A KR101456976B1 (ko) | 2008-06-09 | 2008-06-09 | 메모리 테스트 디바이스 및 메모리 테스트 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090127689A KR20090127689A (ko) | 2009-12-14 |
KR101456976B1 true KR101456976B1 (ko) | 2014-11-03 |
Family
ID=41401407
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080053786A KR101456976B1 (ko) | 2008-06-09 | 2008-06-09 | 메모리 테스트 디바이스 및 메모리 테스트 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7979761B2 (ko) |
KR (1) | KR101456976B1 (ko) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8307180B2 (en) | 2008-02-28 | 2012-11-06 | Nokia Corporation | Extended utilization area for a memory device |
US8874824B2 (en) | 2009-06-04 | 2014-10-28 | Memory Technologies, LLC | Apparatus and method to share host system RAM with mass storage memory RAM |
US9417998B2 (en) | 2012-01-26 | 2016-08-16 | Memory Technologies Llc | Apparatus and method to provide cache move with non-volatile mass memory system |
US9311226B2 (en) | 2012-04-20 | 2016-04-12 | Memory Technologies Llc | Managing operational state data of a memory module using host memory in association with state change |
KR101522292B1 (ko) | 2013-07-31 | 2015-05-21 | 주식회사 유니테스트 | 메모리 테스트 동시 판정 시스템 |
US11031091B2 (en) | 2013-07-31 | 2021-06-08 | Unitest Inc. | Apparatus and method for measuring round-trip time of test signal using programmable logic |
US9472270B2 (en) * | 2014-10-24 | 2016-10-18 | Sandisk Technologies Llc | Nonvolatile storage reflow detection |
CN110782941B (zh) * | 2019-09-12 | 2021-05-04 | 深圳市德明利技术股份有限公司 | 一种存储设备测试和自动分bin的方法、装置以及设备 |
CN110865909B (zh) * | 2019-09-23 | 2023-08-04 | 瑞芯微电子股份有限公司 | 一种基于fpga的emmc接口测试设备与方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6516410B1 (en) | 2000-02-17 | 2003-02-04 | Compaq Information Technologies Group, L.P. | Method and apparatus for manipulation of MMX registers for use during computer boot-up procedures |
US6807616B1 (en) | 2001-08-09 | 2004-10-19 | Advanced Micro Devices, Inc. | Memory address checking in a proccesor that support both a segmented and a unsegmented address space |
US20050188288A1 (en) * | 2004-02-25 | 2005-08-25 | Larson Mark A. | System and method for accelerated information handling system memory testing |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6862563B1 (en) * | 1998-10-14 | 2005-03-01 | Arc International | Method and apparatus for managing the configuration and functionality of a semiconductor design |
US7293207B2 (en) * | 2002-10-02 | 2007-11-06 | American Megatrends, Inc | Method for testing memory in a computer system utilizing a CPU with either 32-bit or 36-bit memory addressing |
-
2008
- 2008-06-09 KR KR1020080053786A patent/KR101456976B1/ko not_active IP Right Cessation
- 2008-12-10 US US12/331,701 patent/US7979761B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6516410B1 (en) | 2000-02-17 | 2003-02-04 | Compaq Information Technologies Group, L.P. | Method and apparatus for manipulation of MMX registers for use during computer boot-up procedures |
US6807616B1 (en) | 2001-08-09 | 2004-10-19 | Advanced Micro Devices, Inc. | Memory address checking in a proccesor that support both a segmented and a unsegmented address space |
US20050188288A1 (en) * | 2004-02-25 | 2005-08-25 | Larson Mark A. | System and method for accelerated information handling system memory testing |
US7325176B2 (en) | 2004-02-25 | 2008-01-29 | Dell Products L.P. | System and method for accelerated information handling system memory testing |
Also Published As
Publication number | Publication date |
---|---|
US20090307544A1 (en) | 2009-12-10 |
US7979761B2 (en) | 2011-07-12 |
KR20090127689A (ko) | 2009-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101456976B1 (ko) | 메모리 테스트 디바이스 및 메모리 테스트 방법 | |
US7971112B2 (en) | Memory diagnosis method | |
US7404137B2 (en) | Method and related apparatus for performing error checking-correcting | |
US8307259B2 (en) | Hardware based memory scrubbing | |
US7506226B2 (en) | System and method for more efficiently using error correction codes to facilitate memory device testing | |
US7376887B2 (en) | Method for fast ECC memory testing by software including ECC check byte | |
US20080016415A1 (en) | Evaluation system and method | |
JP4373615B2 (ja) | 初期不良ブロックのマーキング方法 | |
CN112420117B (zh) | 测试sram的方法、装置、计算机设备及存储介质 | |
US7484147B2 (en) | Semiconductor integrated circuit | |
US20100146224A1 (en) | Request processing device, request processing system, and access testing method | |
US20070297237A1 (en) | Memory control circuit, microcomputer, and data rewriting method | |
US11176988B2 (en) | Control method for memory and non-transitory computer-readable media | |
US8032720B2 (en) | Memory access monitoring apparatus and related method | |
US20110296086A1 (en) | Flash memory having test mode function and connection test method for flash memory | |
US20130124925A1 (en) | Method and apparatus for checking a main memory of a processor | |
US7240267B2 (en) | System and method for conducting BIST operations | |
US7210007B2 (en) | Method of verifying a system in which a plurality of master devices share a storage device | |
JPH1040130A (ja) | マイクロコンピュータ | |
CN116820860A (zh) | 处理器及其测试方法 | |
JPH0863406A (ja) | メモリアクセス制御装置 | |
CN118277175A (zh) | 神经网络处理器及其测试方法、设备及存储介质 | |
JP2008242592A (ja) | メモリ監視回路、情報処理装置、及びメモリ監視方法 | |
JP2004334707A (ja) | メモリ検査装置およびメモリ検査方法 | |
JPH02252043A (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 |