KR20110139125A - 메모리 에러 검출 장치 및 메모리 에러 검출 방법 - Google Patents

메모리 에러 검출 장치 및 메모리 에러 검출 방법 Download PDF

Info

Publication number
KR20110139125A
KR20110139125A KR1020110059601A KR20110059601A KR20110139125A KR 20110139125 A KR20110139125 A KR 20110139125A KR 1020110059601 A KR1020110059601 A KR 1020110059601A KR 20110059601 A KR20110059601 A KR 20110059601A KR 20110139125 A KR20110139125 A KR 20110139125A
Authority
KR
South Korea
Prior art keywords
memory
data
address
under test
mirror
Prior art date
Application number
KR1020110059601A
Other languages
English (en)
Other versions
KR101281866B1 (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 KR20110139125A publication Critical patent/KR20110139125A/ko
Application granted granted Critical
Publication of KR101281866B1 publication Critical patent/KR101281866B1/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/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/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • 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/38Response verification devices
    • G11C29/40Response verification devices using compression techniques
    • G11C2029/4002Comparison of products, i.e. test results of chips or with golden chip
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports

Abstract

소프트 에러 등에 의한 일시적인 논리 어드레스와 물리 어드레스와의 오변환에 의한 데이터의 위치 오산출을 방지할 수 있어 신뢰성을 유지할 수 있는 메모리 에러 검출 장치 및 방법을 제공한다. 피시험 메모리의 에러를 검출하는 메모리 에러 검출 장치는, 피시험 메모리에 접속되는 메모리 버스와, 피시험 메모리에 기입되는 데이터와 동일한 데이터를 수신하도록 메모리 버스에 접속되고, 수신한 데이터가 기입되는 미러 메모리와, 피시험 메모리에 대하여 읽기쓰기되는 데이터에 관계되는 어드레스의 취득을 행하는 어드레스 취득부와, 취득된 어드레스에 기초하여 미러 메모리에 대한 데이터의 읽기쓰기 제어를 행하는 미러 메모리 제어부와, 피시험 메모리로부터 읽어내어진 데이터와 미러 메모리로부터 읽어내어진 데이터의 비교를 행하는 비교부와, 비교부에 의한 비교 결과에 기초하여 데이터 에러를 검출하는 에러 검출부를 구비한다.

Description

메모리 에러 검출 장치 및 메모리 에러 검출 방법{MEMORY ERROR DETECTING APPARATUS AND METHOD}
본 건은, 정보 처리 장치에 이용되는 메모리에 있어서, 메모리 에러를 검출하는 장치 및 방법에 관한 것이다.
종래, 퍼스널 컴퓨터 등의 정보 처리 장치에는, 메인 메모리인 DIMM(Dual Inline Memory Module) 등의 메모리 모듈이 탑재된다. 예를 들면, 도 1에 도시한 바와 같이, 정보 처리 장치(500)는, CPU(Central Processing Unit)(510)와, 메모리 컨트롤러(520)와, DIMM(530)을 포함한다.
CPU(510)는, 데이터의 계산ㆍ가공을 행하는 연산 처리 장치이며, 메모리 컨트롤러(520)에 대하여, DIMM(530)에의 데이터 기입이나 읽어내기를 지시한다. 메모리 컨트롤러(520)는, DIMM(530)에 접속되고, CPU(510)로부터의 지시에 따라, DIMM(530)에의 데이터의 기입이나 읽어내기를 행한다. 그리고, DIMM(530)은, 복수의 DRAM(Dynamic Random Access Memory)(531a∼531d)을 갖고, 이 DRAM(531a∼531d)에 각종 데이터를 기억한다.
메모리는, CPU의 어드레스 공간에 대응하여, 물리적으로는 리니어로 배치된다. 최근, CPU는, 프로세스마다 보호된 메모리 공간을 가상적으로 할당하는 가상 기억 방식을 채용하고 있다. 그 때문에, 주기억 장치의 공간을 일정 사이즈의 페이지 단위로 구획하여 관리하는 페이징 방식 등의 메모리 관리 기능이 이용되고 있다. 그 밖의 방식으로서는, 세그먼트 방식을 예로 들 수 있다. 이와 같은 메모리 관리 기능이 퍼스널 컴퓨터용의 CPU에 구성되어 있다.
가상 기억(Virtual Memory)이란, 메모리 관리 방식의 일종이며, 멀티태스크 오퍼레이팅 시스템이 불연속인 메모리 영역을 소프트웨어(프로세스 등)에서 보아 연속으로 되듯이 보이도록 한 것이다. 가상 기억은, 컴퓨터 상에 실장되어 있는 주기억 장치보다도 큰 기억 영역을 가상적으로 확보하기 위한 구조를 제공한다. 이와 같은 가상 기억의 구조를 이용함으로써, 메모리 공간의 일부를 하드디스크 장치 등의 대용량 외부 기억 장치에 확보하여, 메모리의 용량 이상의 메모리 공간의 이용을 가능하게 한다.
가상적으로 부여된 어드레스를 논리 어드레스(logical address), 실제 기억 상에서 유효한 어드레스를 물리 어드레스(physical address)라고 한다. 논리 어드레스의 범위를 논리 어드레스 공간, 물리 어드레스의 범위를 물리 어드레스 공간이라고 한다.
메모리 어드레스는, 컴퓨터에 있어서 CPU나 그 밖의 하드웨어가 데이터를 기입하고, 또한 읽어내는 메모리 상의 위치의 일의의 식별자이다. 전형적으로는 정수로서 표현된다. 바이트 액세스의 컴퓨터에서는, 어드레스는 메모리 중의 1바이트를 식별하기 위해 사용된다. 그 때문에, 1바이트로 격납하기 위해서는 지나치게 큰 데이터는 연속된 어드레스를 차지하는 복수의 바이트로 격납되게 된다. 메모리 어드레스는 논리 메모리와 물리 메모리의 양방에서 사용된다.
이러한 정보 처리 장치의 사용 중에, DIMM(530)에 메모리 에러가 발생한 경우, 정보 처리 장치를 일단 정지한 후, 불량으로 된 DIMM(530)을 교환하지 않으면 안되어, 유저의 부담으로 되어 있다. 메모리 에러는, DRAM(531a∼531d)의 메모리 블록(기억 영역)에, 데이터의 격납이 불가능한 불량 블록(불량 영역)이 생김으로써 일어난다.
또한, 각 DRAM(531a∼531d)의 불량 정보는, 예를 들면, 도 1에 도시한 바와 같이, DIMM(530)에 설치된 불휘발성 메모리(532)에 통합하여 기억된다. 또한, 각 DRAM(531a∼531d)의 불량 정보는, 각 DRAM(531a∼531d) 내에 설치된 불휘발성 메모리 영역에 개별로 기억해도 된다.
도 2에, 메모리 에러 발생시의 처리 수순의 일례를 나타낸다. 도 2에 도시한 바와 같이, 전원이 ON되면, 칩 세트는, DRAM(531a∼531d)의 불량 발생 상황의 감시를 개시한다(S101). 계속해서, 칩 세트는, DRAM(531a∼531d)의 불량 발생을 검출하였는지의 여부를 판정한다(S102). 이 처리에 있어서, DRAM(531a∼531d)의 불량 발생을 검출하지 않았을 때(S102, "아니오"), 처리를 S101로 이행하고, 칩 세트는, 계속해서 DRAM(531a∼531d)의 불량 발생 상황의 감시를 행한다. 한편, DRAM(531a∼531d)의 불량 발생을 검출하였다고 판정하면(S102, "예"), 칩 세트는, 불량 정보를 보존한 후(S103), 전원을 OFF하고(S104), 처리를 종료한다. 그리고, 불량이라고 판정된 DIMM(530)은, 새로운 DIMM(530)으로 교환된다.
메모리 에러란, DRAM의 메모리 블록, 즉 기억 영역에, 데이터의 격납이 불가능한 불량 블록, 즉 불량 영역이 생긴 상태이다. 메모리에 에러가 발생한 경우, 에러가 발생한 메모리를 탑재하고 있는 모듈을 컴퓨터 시스템으로부터 빼내고, 메모리를 교환한 후, 메모리 모듈을 컴퓨터 시스템에 삽입하였다.
여기서, 에러가 발생한 메모리 모듈에 있어서, 메모리의 불량 개소를 해석하고, 특정하는 것이 요구된다. 메모리 진단 시스템으로서, 특허 문헌 1의 해석 방법이 있다.
일본 특허 공개 평11-102328호 공보
메모리 불량을 해석하는 경우, 메모리 모듈의 메모리에 있어서의 에러 어드레스와 에러 비트의 검출이 중요해진다. 그러나, CPU에 의해서 표시되는 에러 어드레스나 에러 비트는 논리적인 어드레스나 비트를 나타내기 때문에, 논리 어드레스로부터 물리 어드레스로의 변환을 행하지 않으면, 어떤 메모리에서 에러가 발생하고 있는지를 특정할 수 없다.
메모리 컨트롤러가 CPU로부터의 지시에 따라 메모리 상의 지시된 개소에 액세스를 행한다. 여기서, 메모리 컨트롤러에 있어서, CPU로부터 지시된 논리 어드레스로부터 물리 어드레스로 변환하기 위한 변환 사양이 이용자에게 공개되어 있지 않은 경우, 메모리 에러와 메모리 모듈을 구성한 시스템의 에러와의 상관을 취하는 것이 곤란하다.
종래의 메모리 에러 해석 방법에서는, 메모리 모듈 내의 어떤 메모리에서 에러가 발생하고 있는지, 메모리 모듈을 하나씩 시험용 시스템에 삽입하여 테스트하지 않으면 안된다. 또한, 물리 어드레스로의 변환 사양을 모르기 때문에, 에러 해석에 시간이 결렸다.
또한, 메모리 모듈을 이용하고 있던 시스템과 다른 시험용 시스템에 의해 해석을 행하는 경우, 시스템 환경에 차이가 생기고, 이 차이에 의해 에러 판정에 차이가 생긴다. 그 때문에, 에러 모드에 따라서는 시험시에 에러로서 인식할 수 없는 경우도 있었다.
메모리의 테스트 커버리지 불량의 상세예를 설명한다. 통상의 메모리 단체 시험에서는 정상적으로 동작하지만, 시스템에서는 동작 불량으로 되는, 간헐적으로, 마진적인 불량이 있다. 1) 특정한 알고리즘으로 피시험체 메모리를 동작시킨 경우만 불량으로 된다. 2) 특정한 기입 데이터에 의존한 경우만 불량으로 된다. 3) 컨트롤러나 전원 공급계의 영향 등으로 그 어플리케이션에서 피시험체 메모리를 이용한 경우만 불량으로 된다. 4) 부하 조건이나 전송계가 영향이 미쳐 그 어플리케이션에서 피시험체 메모리를 이용한 경우만 불량으로 된다. 5) 특정한 타이밍 발생시(비동기적)에 피시험체 메모리를 이용한 경우만 불량으로 된다. 6) 피시험체 메모리에 대한 반복 액세스에 의해 메모리 셀의 동작 변동이 현재화(顯在化)하여 불량으로 된다. 이와 같은 불량은 실제의 시스템 상에서 피시험체 메모리를 이용한 경우만 해석 추구할 수 있다.
따라서, 메모리 컨트롤러의 논리-물리 변환 정보를 몰라도 불량 어드레스나 불량 비트의 물리 위치를 간단히 특정하는 메모리 에러 검출 장치 및 방법을 제공한다.
개시된 메모리 에러 검출 장치는, 피시험 메모리에 접속되는 메모리 버스와, 피시험 메모리에 기입되는 데이터와 동일한 데이터를 수신하도록 메모리 버스에 접속되고, 수신한 데이터가 기입되는 미러 메모리와, 피시험 메모리에 대하여 읽기쓰기되는 데이터에 관계되는 어드레스의 취득을 행하는 어드레스 취득부와, 취득된 어드레스에 기초하여 미러 메모리에 대한 데이터의 읽기쓰기 제어를 행하는 미러 메모리 제어부와, 피시험 메모리로부터 읽어내어진 데이터와 미러 메모리로부터 읽어내어진 데이터의 비교를 행하는 비교부와, 비교부에 의한 비교 결과에 기초하여 데이터 에러를 검출하는 에러 검출부를 구비한다.
개시된 메모리 에러 검출 방법은, 피시험 메모리에 대하여 읽기쓰기되는 데이터에 관계되는 어드레스를 취득하는 공정과, 메모리 버스에 접속된 미러 메모리에 피시험 메모리에 기입되는 데이터와 동일한 데이터를 전송하는 공정과, 취득한 어드레스에 기초하여 미러 메모리에 대하여 데이터의 기입을 행하는 공정과, 피시험 메모리로부터 데이터를 읽어내는 공정과, 취득한 어드레스에 기초하여 상기 미러 메모리로부터 데이터를 읽어내는 공정과, 피시험 메모리로부터 읽어내어진 데이터와 미러 메모리로부터 읽어내어진 데이터를 비교하는 공정과, 비교 결과에 기초하여 데이터 에러를 검출하는 공정을 구비한다.
이상과 같이, 본 건에 개시된 메모리 에러 검출 장치에 따르면, 메모리를 접속한 상태에서, 메모리 에러의 발생 개소를 특정할 수 있기 때문에, 에러의 모드에 관계없이 에러를 검출할 수 있어 신뢰성을 유지할 수 있다.
이상과 같이, 본 건에 개시된 메모리 에러 검출 방법에 따르면, 메모리를 접속한 상태에서, 메모리 에러 발생 개소를 특정할 수 있기 때문에, 에러의 모드에 관계없이 에러를 검출할 수 있어 신뢰성을 유지할 수 있다.
도 1은 종래에 있어서의 정보 처리 장치의 구성의 일례를 도시하는 블록도.
도 2는 종래에 있어서의 메모리 에러 발생시의 처리 수순의 일례를 나타내는 플로우차트.
도 3은 메모리 에러 검출 장치의 블록도.
도 4는 로직 애널라이저의 구성의 블록도.
도 5는 메모리 컨트롤러와 로직 애널라이저의 접속예를 도시하는 도면.
도 6은 로직 애널라이저를 이용한 메모리 에러 검출 장치의 도면.
도 7은 메모리 액세스 플로우를 나타내는 도면.
도 8은 메모리 액세스 플로우를 나타내는 도면.
도 9는 커맨드 테이블(DDR3 SDRAM의 일부를 나타내는 예).
이 실시예에 의해 본 발명이 한정되는 것은 아니다. 예를 들면, 이하의 실시예에서는, 기억 장치의 일례로서, 휘발성 메모리인 DRAM을 이용하여 설명한다. 또한, 개시한 기술은, 플래시 메모리 등의 불휘발성 메모리나 HDD(Hard Disk Drive) 등의 디스크 장치에 대해서도 적용 가능하다. 또한, 이하의 실시예에서는, 메모리 모듈의 일례로서, DRAM을 복수 구비한 DIMM을 이용하여 설명한다. 또한, 이 메모리 모듈을 퍼스널 컴퓨터 등의 정보 처리 장치에 탑재한 경우에 대해서 설명한다.
본 실시예의 메모리 에러 검출 장치 및 메모리 에러 검출 방법은, 예를 들면, 메모리 버스의 신호를 관측하는 로직 애널라이저에 커맨드 분석 기능과 데이터 비교 기능을 마련함으로써, 메모리 컨트롤러의 논리-물리 변환 사양이 불분명하여도, 에러 어드레스, 에러 비트의 물리 위치를 용이하게 특정할 수 있다.
이하에 첨부 도면을 참조하여, 메모리 에러 검출 장치 및 메모리 에러 검출 방법의 실시예를 상세하게 설명한다.
도 3은, 메모리 에러 검출 장치의 블록도이다. 메모리 에러 검출 장치는, 데이터 버스의 프로토콜에 기초하여, 어드레스/라이트/리드 버스의 신호 상태를 분석하여, 물리 어드레스를 관리한다. 또한, 메모리 에러 검출 장치는, 백업 메모리를 미러 메모리로서 이용하여 미러링을 행하고, 메모리의 데이터를 복사한다. 그리고, 메모리 에러 검출 장치는, 미러링하고 있는 피시험체 메모리와 백업 메모리로부터 읽어낸 데이터를 비교하고, 물리적인 에러 어드레스를 검출한다.
메모리 미러링이란, 2개의 메모리에 동일 데이터를 기입함으로써 용장성을 높이는 방법이다. 데이터를 읽어들일 때에는, 메인의 메모리로부터 읽어들인다. 어느 쪽인가의 메모리에 불량이 발생한 경우, 남은 메모리에 읽기쓰기를 행하는 것이 가능하다.
메모리 컨트롤러(1)는 CPU로부터의 명령을 받아, 주기억 장치로서의 메모리 모듈(2)의 제어를 행한다. 메모리 모듈(2)은 피시험체 메모리이다. 메모리 컨트롤러(1)는, 데이터 버스(3)를 통하여 피시험체 메모리 1, 메모리 2, 메모리 3, 미러 메모리(4)(백업 메모리)에 액세스한다. 메모리 컨트롤러(1)로부터의 제어 커맨드는, 이니셜라이즈, 어드레스, 리드, 라이트, 데이터 등이 있다. 또한, 커맨드 분석부/어드레스 분석부(6)는, 어드레스/라이트/리드 버스(5)를 통하여 메모리 1, 메모리 2, 메모리 3에 액세스하고, 커맨드/어드레스의 분석을 한다. 커맨드 분석부/어드레스 분석부(6)는, 커맨드 취득부/어드레스 취득부로서, 커맨드의 종별 및 어드레스를 취득한다. 어드레스 공간을 제어하는 어드레스 스크램블러(7)가, 어드레스 컨버터로서, 분석 결과를 기초로 논리 어드레스로부터 물리 어드레스로의 어드레스 변환을 행한다. 미러 메모리 제어부(4a)는, 얻어진 커맨드 및 물리 어드레스에 기초하여, 메모리에 대한 기입 및 읽어내기와 동일한 동작을 미러 메모리(4)에 실행시키는 제어를 행한다. 또한, 미러 메모리 제어부(4a)는, 데이터 버스(3)를 통하여 전송되어 온 데이터, 즉 각 메모리에의 기입 데이터와 동일한 데이터를 미러 메모리(4)에 기입한다. 데이터 비교부(8)가 각 메모리로부터 읽어내어진 데이터와 미러 메모리(4)로부터 읽어내어진 데이터를 비교한다. 그리고, 메모리 1∼3에 있어서의 에러 어드레스를 메모리 1∼3의 데이터와 미러 메모리(4)의 데이터와의 비교에 의해 검출한 분석 결과를 출력한다.
따라서, 피시험체 메모리(2)가 에러인 경우에 있어서의 에러 어드레스를 메모리 1∼3의 데이터와 미러 메모리(4)의 데이터와의 비교에 의해 검출함으로써, 피시험체 메모리(2)의 물리 에러 어드레스를 특정할 수 있다.
도 4는, 로직 애널라이저의 구성을 도시하는 도면이다. 로직 애널라이저는, 비주기적 신호를 관측하기 위해 파형 기억용 메모리를 갖고, 16∼48 채널 정도의 입력 채널수를 갖는다. 로직 애널라이저는 전송 라인의 신호를 고속으로 샘플링하여 신호 레벨을 시간축에 기억하여 표시하고, 신호의 흐름(타이밍, 스테이트)을 해석하는 툴이다. 로직 애널라이저의 메모리는 이 샘플링 데이터를 기억하기 위해 링 메모리로서 제어되고 있다. 즉, 메모리가 가득차게 되면 오래된 데이터를 덮어 쓰게 된다. 또한, 다수의 채널과 고속 샘플링과 장시간의 트레이스를 위해 대용량의 메모리를 탑재하고 있다. 로직 애널라이저는 복잡한 순서로 이루어지는 이벤트를 트리거로 할 수 있어, 테스트 환경 하에 있는 시스템으로부터 대량의 디지털 데이터를 캡쳐할 수 있다.
피시험체 메모리에 접속한 입력 프로브(9)로부터 입력된 전압과 임계 전압(10)을 비교기(11)에 의해 레벨 비교하고, 비교기(11)로부터의 출력이 래치(12)에 입력된다. 샘플링 클럭(13)이 래치(12)에 더 입력된다. 트레이스 메모리(14)에 래치(12)로부터의 출력이 입력되고, 트리거 검출기(15)로부터의 트리거에 의해서 트레이스 메모리(14)의 트레이스가 개시된다. 데이터 처리부(16)는, 에러 검출부로서, 데이터 처리를 행한다. 표시 장치(17)는 결과를 표시한다. 이와 같은 로직 애널라이저를 본 기술에 이용한다.
도 5는, 메모리 컨트롤러와 로직 애널라이저의 접속예를 도시하는 도면이다. CPU(18)로부터 메모리 컨트롤러(1)에 명령을 송신하고, 메모리 컨트롤러(1)와 피시험체 메모리(2)를 데이터 버스(3)에 의해 접속한다. 관측하는 피시험체 메모리(2)의 데이터 버스(3)의 신호를 로직 애널라이저(19)의 내부 기억 메모리의 신호(어드레스, 데이터, 커맨드 등)와 동일하게 할당하여 피시험체 메모리와 동일한 기입 또는 읽어내기 동작을 실시한다. 그리고, 피시험체 메모리의 읽어내기 데이터와 로직 애널라이저의 메모리의 읽어내기 데이터를 비교하여 에러를 검출함으로써, 에러에 관한 물리 정보를 그대로 취득할 수 있다.
관측한 피시험체의 메모리 버스의 신호를 로직 애널라이저의 내부 기억 메모리의 신호(어드레스, 데이터, 커맨드 등)와 동일하게 할당하여 피시험체 메모리와 동일한 기입 또는 읽어내기 동작을 실시한다. 피시험체 메모리의 읽어내기 데이터와 로직 애널라이저의 내부 기억 메모리의 읽어내기 데이터의 비교를 행하여, 에러를 검출함으로써, 에러의 물리 정보를 그대로 취득할 수 있다.
도 6에, 로직 애널라이저를 이용한 메모리 에러 검출 장치를 도시한다. 도 6에 도시한 로직 애널라이저는, 도 4에서 도시한 로직 애널라이저에 커맨드 분석기(20)와 비교기(21)를 더 설치한 것이다. 메모리 제어부(23)는, 커맨드 분석기(20)에 의해서 얻어진 논리 어드레스를 어드레스 스크램블러(22)로 변환함으로써 물리 어드레스를 취득하여, 그 물리 어드레스에 기초하여 백업 메모리(미러 메모리)인 트레이스 메모리(14)에 트레이스를 행한다. 피시험체 메모리의 읽어내기 데이터와 트레이스한 트레이스 메모리(14)의 데이터를 비교함으로써, 물리 에러 어드레스를 검출할 수 있다.
도 7은, 메모리 액세스 플로우를 나타내는 도면이다. CPU로부터 메모리 컨트롤러에 메모리에의 기입 또는 읽어내기 명령(S201)을 행한다. CPU가 기입 또는 읽어내기 대상으로 되는 메모리의 기억 영역에 대해 논리 어드레스를 지정한다(S202). 메모리 컨트롤러는, CPU로부터 부여된 논리 어드레스를 논리-물리 변환의 사양에 기초하여, 물리 어드레스로 변환하고(S203), 메모리 커맨드 변환을 행하고, 메모리에 대하여 액세스 제어를 행한다(S204). 피시험체와 동형(同型)의 메모리를 백업 메모리로 하고, 커맨드에 기초하여 병렬로 기입 또는 읽어내기를 행하도록 한다. 그리고, 각각의 메모리에 액세스하고, 기입 또는 읽어내기를 행하고(S205a, S205b), 각각의 메모리로부터 읽어낸 데이터를 CPU 또는 메모리 컨트롤러를 포함하는 칩 세트에 출력한다(S206a, S206b). 이것에 기초하여, CPU 또는 메모리 컨트롤러를 포함하는 칩 세트에 있어서, 논리 어드레스에 의해서 지정한 영역에 대한 기입 또는 읽어내기를 할 수 있었는지의 합격 여부 판정을 행한다(S207).
도 8은, 메모리 액세스 플로우를 나타내는 도면이다. CPU로부터 메모리 컨트롤러에 메모리에의 기입 또는 읽어내기 명령을 행한다(S1). CPU가 기입 또는 읽어내기 대상으로 되는 메모리의 기억 영역에 대해 논리 어드레스를 지정한다(S2). 메모리 컨트롤러는, CPU로부터 부여된 논리 어드레스를 논리-물리 변환의 사양에 기초하여, 물리 어드레스로 변환하고(S3), 메모리 커맨드 변환을 행하고, 액세스 제어를 행한다(S4). 메모리 컨트롤러는, 각각의 메모리에 액세스하고, 기입 또는 읽어내기를 행하고(S5), 각각의 메모리로부터 읽어낸 데이터를 CPU 또는 메모리 컨트롤러를 포함하는 칩 세트에 출력한다(S6). 이것에 기초하여, 칩 세트는, 도 7과 마찬가지로, 칩 세트에 있어서, 논리 어드레스에 의해서 지정한 영역에 대한 기입 또는 읽어내기를 할 수 있었는지의 합격 여부 판정을 행한다(S7). 또한, 메모리 커맨드 변환을 행하여 미러 메모리에의 액세스 제어를 행하기 위해, 커맨드 분석부/어드레스 분석부(6)(커맨드 분석기(20))는 메모리 커맨드 해석을 행한다(S8). 데이터 비교부(8)(비교기(21))는, 어드레스/커맨드/데이터의 읽어들이기를 행하고(S9), 데이터 처리부(16)가 에러 어드레스, 에러 데이터를 확인한다. 또한, 미러 메모리 제어부(4a)(메모리 제어부(23))는, 미러 메모리(트레이스 메모리)로의 커맨드 변환을 행하고(S10), 미러 메모리(트레이스 메모리)에 액세스하고(S11), 기입 또는 읽어내기를 행한다. 여기서, 데이터 비교부(8)(비교기(21))는, 메모리로부터 읽어내어진 데이터와 미러 메모리로부터 읽어내어진 데이터를 비교하고, 데이터 처리부(16)가 물리 어드레스에 의해 판정을 행하여(S12), 에러 신호를 표시 장치(17)에 출력한다. 따라서, 이 에러 신호를 기초로 어드레스/커맨드/데이터의 읽어들이기를 행하고, 에러 어드레스, 에러 데이터를 확인할 수 있다.
도 9는, 커맨드 테이블(DDR3 SDRAM의 일부를 나타내는 예)이다. CKE, CS#, RAS#, CAS#, WE#, A10DRAM에 접속되는 데이터 버스의 일부이다.
본 실시예는, 메모리 영역의 액세스 알고리즘이나, 어드레스의 랜덤성, 기입 데이터의 제한이 없으며, 커맨드 테이블을 이용하여 메모리 버스의 프로토콜에 기초하여 메모리 버스의 신호 상태(복수의 버스선의 전압 레벨)로부터 커맨드의 종별을 분석하여 메모리의 기입 데이터를 미러링한다. 즉, 메모리에의 액세스는 고정된 액세스 알고리즘과 데이터에 의한 시험 패턴에 한정되지 않는다.
메모리 에러 검출 방법에 있어서, 피시험체 메모리와는 별도로 또 하나의 메모리를 준비하고, 메모리의 기입 또는 읽어내기를 각각 동시에 행하여 데이터를 비교하고, 일치의 유무로 에러를 검출해도 된다.
개시된 로직 애널라이저는, 미러링한 데이터를 분석하여 에러 어드레스를 알아내는 기능, 미러링하는 논리 어드레스를 스크램블하여 미러 메모리에 있어서의 물리 어드레스에 할당하는 기능, 메모리 버스의 커맨드를 인식하여 로직 애널라이저에의 데이터 기입을 제어하는 기능, 메모리 버스가 수신한 어드레스에 따라서 데이터의 기입을 행하는 기능, 기입 데이터와 읽어내기 데이터를 비교하는 기능, 비교 데이터의 결과로부터 불량 비트, 불량 어드레스를 검출하는 기능을 구비한다.

Claims (6)

  1. 피시험 메모리의 에러를 검출하는 메모리 에러 검출 장치로서,
    상기 피시험 메모리에 접속되는 메모리 버스와,
    상기 피시험 메모리에 기입되는 데이터와 동일한 데이터를 수신하도록 상기 메모리 버스에 접속되고, 수신한 데이터가 기입되는 미러 메모리와,
    상기 피시험 메모리에 대하여 읽기쓰기되는 데이터에 관계되는 어드레스의 취득을 행하는 어드레스 취득부와,
    취득된 어드레스에 기초하여 상기 미러 메모리에 대한 데이터의 읽기쓰기 제어를 행하는 미러 메모리 제어부와,
    상기 피시험 메모리로부터 읽어내어진 데이터와 상기 미러 메모리로부터 읽어내어진 데이터의 비교를 행하는 비교부와,
    상기 비교부에 의한 비교 결과에 기초하여 데이터 에러를 검출하는 에러 검출부
    를 구비하여 이루어지는 것을 특징으로 하는 메모리 에러 검출 장치.
  2. 제1항에 있어서,
    상기 어드레스 취득부에 의해서 취득된 논리 어드레스를 상기 피시험 메모리의 물리 어드레스로 변환하는 어드레스 변환부와,
    메모리 버스의 커맨드 테이블에 기초하여 상기 피시험 메모리에 지시된 커맨드의 종별을 취득하는 커맨드 취득부를 구비하고,
    상기 미러 메모리 제어부는, 취득된 상기 커맨드의 종별과 상기 물리 어드레스에 기초하여 미러 메모리에 대한 데이터의 읽기쓰기 제어를 행하고,
    상기 에러 검출부는, 상기 비교부에 의한 비교 결과에 기초하여 검출된 데이터 에러에 관계되는 물리 어드레스를 검출하는 것을 특징으로 하는 메모리 에러 검출 장치.
  3. 메모리 버스에 접속되는 피시험 메모리의 신호를 감시하는 로직 애널라이저로서,
    상기 피시험 메모리에 기입되는 데이터와 동일한 데이터를 수신하도록 상기 메모리 버스에 접속되고, 수신한 데이터가 기입되는 미러 메모리와,
    상기 피시험 메모리에 대하여 읽기쓰기되는 데이터에 관계되는 어드레스의 취득을 행하는 어드레스 취득부와,
    취득된 어드레스에 기초하여 상기 미러 메모리에 대한 데이터의 읽기쓰기 제어를 행하는 미러 메모리 제어부와,
    상기 피시험 메모리로부터 읽어내어진 데이터와 상기 미러 메모리로부터 읽어내어진 데이터의 비교를 행하는 비교부와,
    상기 비교부에 의한 비교 결과에 기초하여 데이터 에러를 검출하는 에러 검출부
    를 구비하여 이루어지는 것을 특징으로 하는 로직 애널라이저.
  4. 제3항에 있어서,
    상기 어드레스 취득부에 의해서 취득된 논리 어드레스를 상기 피시험 메모리의 물리 어드레스로 변환하는 어드레스 변환부와,
    메모리 버스의 커맨드 테이블에 기초하여 상기 피시험 메모리에 지시된 커맨드의 종별을 취득하는 커맨드 취득부를 구비하고,
    상기 미러 메모리 제어부는, 취득된 상기 커맨드의 종별과 상기 물리 어드레스에 기초하여 미러 메모리에 대한 데이터의 읽기쓰기 제어를 행하고,
    상기 에러 검출부는, 상기 비교부에 의한 비교 결과에 기초하여 검출된 데이터 에러에 관계되는 물리 어드레스를 검출하는 것을 특징으로 하는 로직 애널라이저.
  5. 메모리 버스에 접속되는 피시험 메모리의 에러를 검출하는 메모리 에러 검출 방법으로서,
    상기 피시험 메모리에 대하여 읽기쓰기되는 데이터에 관계되는 어드레스를 취득하는 공정과,
    상기 메모리 버스에 접속된 미러 메모리에 상기 피시험 메모리에 기입되는 데이터와 동일한 데이터를 전송하는 공정과,
    취득한 어드레스에 기초하여 상기 미러 메모리에 대하여 데이터의 기입을 행하는 공정과,
    상기 피시험 메모리로부터 데이터를 읽어내는 공정과,
    취득한 어드레스에 기초하여 상기 미러 메모리로부터 데이터를 읽어내는 공정과,
    상기 피시험 메모리로부터 읽어내어진 데이터와 상기 미러 메모리로부터 읽어내어진 데이터를 비교하는 공정과,
    비교 결과에 기초하여 데이터 에러를 검출하는 공정
    을 구비하여 이루어지는 것을 특징으로 하는 메모리 에러 검출 방법.
  6. 제5항에 있어서,
    상기 취득하는 공정에 의해서 취득된 논리 어드레스를 상기 피시험 메모리의 물리 어드레스로 변환하는 공정과,
    메모리 버스의 커맨드 테이블에 기초하여 상기 피시험 메모리에 지시된 커맨드의 종별을 취득하는 공정과,
    상기 비교하는 공정에 의한 비교 결과에 기초하여 검출된 데이터 에러에 관계되는 물리 어드레스를 검출하는 공정을 구비하고,
    상기 기입을 행하는 공정은, 취득된 상기 커맨드의 종별과 상기 물리 어드레스에 기초하여 상기 미러 메모리에 전송된 데이터를 기입하는 공정을 포함하고,
    상기 읽어내는 공정은, 취득된 상기 커맨드의 종별과 상기 물리 어드레스에 기초하여 상기 미러 메모리로부터 데이터를 읽어내는 공정을 포함하는 것을 특징으로 하는 메모리 에러 검출 방법.
KR1020110059601A 2010-06-21 2011-06-20 메모리 에러 검출 장치 및 메모리 에러 검출 방법 KR101281866B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2010-140048 2010-06-21
JP2010140048A JP2012003644A (ja) 2010-06-21 2010-06-21 メモリエラー箇所検出装置、及びメモリエラー箇所検出方法。

Publications (2)

Publication Number Publication Date
KR20110139125A true KR20110139125A (ko) 2011-12-28
KR101281866B1 KR101281866B1 (ko) 2013-07-03

Family

ID=45329769

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110059601A KR101281866B1 (ko) 2010-06-21 2011-06-20 메모리 에러 검출 장치 및 메모리 에러 검출 방법

Country Status (3)

Country Link
US (1) US8738976B2 (ko)
JP (1) JP2012003644A (ko)
KR (1) KR101281866B1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8560604B2 (en) 2009-10-08 2013-10-15 Hola Networks Ltd. System and method for providing faster and more efficient data communication
IL210169A0 (en) * 2010-12-22 2011-03-31 Yehuda Binder System and method for routing-based internet security
US9241044B2 (en) 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
GB201315397D0 (en) * 2013-08-29 2013-10-16 Quixant Plc Memory controller and memory access method
FR3022675B1 (fr) * 2014-06-18 2017-10-06 Sagem Defense Securite Procede de protection de memoire
US9753793B2 (en) * 2014-06-30 2017-09-05 Intel Corporation Techniques for handling errors in persistent memory
US11057446B2 (en) 2015-05-14 2021-07-06 Bright Data Ltd. System and method for streaming content from multiple servers
DE102015117977A1 (de) * 2015-10-22 2017-04-27 Knorr-Bremse Systeme für Nutzfahrzeuge GmbH Schaltungsanordnung und Verfahren zur Überwachung eines Mikrocontrollers auf der Grundlage einer Wächterspannung
US9864534B1 (en) 2016-10-27 2018-01-09 International Business Machines Corporation Validation of storage volumes that are in a peer to peer remote copy relationship
US10120598B2 (en) * 2016-10-27 2018-11-06 International Business Machines Corporation Validation of write data subsequent to destaging to auxiliary storage for completion of peer to peer remote copy
KR20180080775A (ko) * 2017-01-05 2018-07-13 에스케이하이닉스 주식회사 동적 미러링이 가능한 메모리 장치, 메모리 모듈 및 반도체 시스템
KR102399490B1 (ko) * 2017-06-20 2022-05-19 에스케이하이닉스 주식회사 다양한 동작 모드를 수행하는 반도체 메모리 장치, 이를 포함하는 메모리 모듈 및 시스템
KR102369402B1 (ko) 2017-09-20 2022-03-02 삼성전자주식회사 스토리지 장치, 이의 동작 방법 및 스토리지 장치를 포함하는 스토리지 시스템
US11599403B2 (en) * 2018-10-03 2023-03-07 SK Hynix Inc. Logging mechanism for memory system
US11010234B2 (en) * 2019-02-01 2021-05-18 Winbond Electronics Corp. Memory device and error detection method thereof
CN110471818B (zh) * 2019-07-15 2023-11-17 深圳市德明利技术股份有限公司 一种对闪存出错物理地址的标记方法和装置以及设备

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04178580A (ja) * 1990-11-14 1992-06-25 Ando Electric Co Ltd 半導体メモリの故障自己診断装置
JPH0588989A (ja) * 1991-09-27 1993-04-09 Yokogawa Electric Corp メモリ装置
JP2001501000A (ja) * 1996-08-16 2001-01-23 東京エレクトロン株式会社 エラー検出および訂正を有する半導体メモリ装置
JPH1125006A (ja) * 1997-06-27 1999-01-29 Fuji Xerox Co Ltd メモリテスト装置
JPH11102328A (ja) 1997-09-25 1999-04-13 Nec Eng Ltd メモリ診断システム
KR200287948Y1 (ko) 1998-06-30 2002-12-12 주식회사 하이닉스반도체 메모리모듈의테스트보드
KR20000015658U (ko) 1999-01-13 2000-08-05 김영환 메모리 테스트 장치
TWI238256B (en) 2000-01-18 2005-08-21 Advantest Corp Testing method for semiconductor device and its equipment
JP2001209589A (ja) * 2000-01-26 2001-08-03 Fujitsu Ltd プロセッサバス上のメモリ診断方法
DE60237433D1 (de) * 2001-02-24 2010-10-07 Ibm Neuartiger massivparalleler supercomputer
US7028147B2 (en) * 2002-12-13 2006-04-11 Sun Microsystems, Inc. System and method for efficiently and reliably performing write cache mirroring
JP3961478B2 (ja) * 2002-12-27 2007-08-22 オムロン株式会社 プログラマブルコントローラ用ユニット及びメモリ自動復旧方法
TW200417851A (en) * 2003-03-07 2004-09-16 Wistron Corp Computer system capable of maintaining system's stability while memory is unstable and memory control method
US20040237001A1 (en) * 2003-05-21 2004-11-25 Sun Microsystems, Inc. Memory integrated circuit including an error detection mechanism for detecting errors in address and control signals
CN1829960A (zh) * 2003-08-05 2006-09-06 皇家飞利浦电子股份有限公司 可扩展标记语言文档的基于概率的确认的方法和系统
US7444540B2 (en) * 2005-06-21 2008-10-28 Hewlett-Packard Development Company, L.P. Memory mirroring apparatus and method
JP4482514B2 (ja) * 2005-11-18 2010-06-16 京セラミタ株式会社 画像形成装置
DE102006016499B4 (de) * 2006-04-07 2014-11-13 Qimonda Ag Speichermodulsteuerung, Speichersteuerung und entsprechende Speicheranordnung sowie Verfahren zur Fehlerkorrektur
KR100845526B1 (ko) * 2006-10-19 2008-07-10 삼성전자주식회사 플래시 메모리를 포함한 메모리 시스템 및 그것의 프로그램방법
US8255783B2 (en) * 2008-04-23 2012-08-28 International Business Machines Corporation Apparatus, system and method for providing error protection for data-masking bits
US8362766B2 (en) * 2009-12-01 2013-01-29 Stanley Jungleib Laboratories Llc Circuit for analyzing and affecting subtle energy resonance
US8381059B2 (en) * 2010-02-17 2013-02-19 Micron Technology, Inc. Error correction and recovery in chained memory architectures

Also Published As

Publication number Publication date
US20110314347A1 (en) 2011-12-22
JP2012003644A (ja) 2012-01-05
KR101281866B1 (ko) 2013-07-03
US8738976B2 (en) 2014-05-27

Similar Documents

Publication Publication Date Title
KR101281866B1 (ko) 메모리 에러 검출 장치 및 메모리 에러 검출 방법
US7506226B2 (en) System and method for more efficiently using error correction codes to facilitate memory device testing
US10824502B2 (en) Enhanced codeword for media persistence and diagnostics
JP2011527064A (ja) 大容量/高帯域幅メモリデバイスを修復するための方法および装置
WO2017209781A1 (en) Integral post package repair
US6985826B2 (en) System and method for testing a component in a computer system using voltage margining
CN116340076B (zh) 硬盘性能测试方法、装置及介质
JPWO2008020555A1 (ja) 試験装置、および試験方法
US9384856B2 (en) Memories having a built-in self-test (BIST) feature
US9256556B2 (en) RAM memory device capable of simultaneously accepting multiple accesses
US20030051193A1 (en) Computer system with improved error detection
US8516310B2 (en) Information processing device equipped with write-back cache and diagnosis method for main memory of the same
JP2005332492A (ja) 故障診断回路及び故障診断方法
US6917991B2 (en) Method of and system for efficiently tracking memory access by direct memory access controller
US9513984B2 (en) Hardware signal logging in embedded block random access memory
JP2004086996A (ja) メモリテスト回路
JP2012008620A (ja) エラー訂正試験方法
US6499119B1 (en) Data inspection method and apparatus
EP3249533A1 (en) Integral post package repair
JP2000065904A (ja) 半導体試験装置
US7487399B2 (en) System and method for testing a component in a computer system using frequency margining
TW201928981A (zh) 記憶體整體測試之系統及其方法
JP2000330875A (ja) キャッシュメモリ、メインメモリ、メモリサブシステム、情報処理装置
US7650537B2 (en) Inspection support apparatus and inspection support method
JP2010211391A (ja) Cpuの動作監視方法および装置

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