KR20130133264A - 리던던시 메모리 저장 시스템 및 리던던시 메모리 저장 시스템을 제어하기 위한 방법 - Google Patents

리던던시 메모리 저장 시스템 및 리던던시 메모리 저장 시스템을 제어하기 위한 방법 Download PDF

Info

Publication number
KR20130133264A
KR20130133264A KR1020137020380A KR20137020380A KR20130133264A KR 20130133264 A KR20130133264 A KR 20130133264A KR 1020137020380 A KR1020137020380 A KR 1020137020380A KR 20137020380 A KR20137020380 A KR 20137020380A KR 20130133264 A KR20130133264 A KR 20130133264A
Authority
KR
South Korea
Prior art keywords
memory
repair information
data
data array
error
Prior art date
Application number
KR1020137020380A
Other languages
English (en)
Inventor
존 제이. 우
도날드 알. 바이스
Original Assignee
어드밴스드 마이크로 디바이시즈, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 어드밴스드 마이크로 디바이시즈, 인코포레이티드 filed Critical 어드밴스드 마이크로 디바이시즈, 인코포레이티드
Priority claimed from PCT/US2011/067607 external-priority patent/WO2012094214A1/en
Publication of KR20130133264A publication Critical patent/KR20130133264A/ko

Links

Images

Classifications

    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

데이터를 저장하도록 구성된 복수의 비트셀을 포함하는 제1 메모리(110), 및 제1 메모리 내 대응하는 로케이션에 저장된 데이터의 인덱스를 저장하도록 구성되고 제1 메모리 내 대응하는 로케이션에서의 비트셀 에러를 나타내는 리페어 정보를 저장하도록 더 구성된 제2 메모리(120)를 포함하는 메모리 시스템이 제공된다.

Description

리던던시 메모리 저장 시스템 및 리던던시 메모리 저장 시스템을 제어하기 위한 방법{A REDUNDANCY MEMORY STORAGE SYSTEM AND A METHOD FOR CONTROLLING A REDUNDANCY MEMORY STORAGE SYSTEM}
본 출원은 2011년 1월 5일에 출원된 미국 특허 출원 제12/985,139호에 대한 우선권을 주장한다.
본 발명은 일반적으로 메모리 시스템에 관한 것으로, 더 구체적으로는, 리던던트 메모리(redundant memory)를 갖는 메모리 시스템에 관한 것이다.
고정량의 공간에 저장될 수 있는 데이터량은 최근 상당히 증가하고 있다. 개선된 회로 설계 및 더 나은 제조 기술은 반도체 디바이스상에서 단일 비트의 데이터(즉, 어느 "0" 또는 "1")가 저장될 수 있는 영역의 사이즈를 줄여왔다. 어느 하나의 비트의 데이터가 저장되는 이러한 영역 또는 셀은 비트셀이라 알려져 있기도 하다. 비트셀이 더 작아지면 동일량의 공간에 더 많은 데이터가 저장될 수 있게 된다. 그렇지만, 비트셀이 더 작아질수록, 반도체 재료에서의 어토믹 레벨 불완전부가 비트셀의 기능에 미치는 영향이 증가하여 왔다.
이들 불완전부는 제조 공정 동안 특히 도핑 공정 동안 도입될 수 있다. 도핑은 의도적으로 불순물을 반도체 내로 도입하여 그 전기적 속성을 변경하는 공정이다. 그렇지만, 도핑 공정에서의 변이부 또는 반도체 재료에서의 다른 불완전부는 개개의 랜덤 비트셀이 고장나게 하여 결과적으로 메모리 디바이스 도처에 랜덤 분포의 단일-비트 에러를 초래할 수 있다.
랜덤 분포의 단일-비트 에러를 보상하기 위해 리페어 정보(repair information)를 저장하고 리던던트 저장소 또는 리던던트 영역을 갖는 메모리 시스템이 사용된다.
데이터를 저장하도록 구성된 복수의 비트셀을 포함하는 데이터 어레이, 및 데이터 어레이 내 대응하는 로케이션(location)에 저장된 데이터의 인덱스를 저장하도록 구성되고 데이터 어레이 내 대응하는 로케이션에서의 에러를 나타내는 리페어 정보를 저장하도록 더 구성된 태그 어레이(tag array)를 포함하는 캐시가 제공된다.
데이터를 저장하도록 구성된 복수의 비트셀을 포함하는 제1 메모리, 및 제1 메모리 내 대응하는 로케이션에서의 비트셀 에러를 나타내는 리페어 정보를 저장하도록 구성된 제2 메모리를 포함하는 메모리 시스템이 제공된다.
캐시 시스템 내 태그 어레이로부터 캐시 시스템의 데이터 어레이 내 비트셀의 로케이션에 대응하는 리페어 정보를 검색하는 단계, 및 에러가 비트셀과 연관되어 있음을 검색된 리페어 정보가 나타낼 때 데이터 어레이 내 비트셀을 정정하는 단계를 포함하는 방법이 제공된다.
본 발명이 아래의 도면과 관련하여 이하에 설명될 것이다.
도 1은 일 실시예에 따른 예시적 메모리 시스템을 도시한 도면이다.
도 2는 일 실시예에 따른 또 다른 예시적 메모리 시스템을 도시한 도면이다.
도 3은 메모리 시스템에 있어서 비트셀 에러를 다루기 위한 예시적 방법을 도시한 도면이다.
실시예들의 아래 상세한 설명은 단지 예시일 뿐이고 본 발명 또는 본 발명의 응용 및 사용을 제한하려는 의도는 아니다. 더 나아가, 아래의 상세한 설명 또는 선행의 배경기술에 제시된 어떠한 이론에 의해서라도 얽매이려는 의도는 없다.
도 1은 제1 메모리(110), 제2 메모리(120), 컨트롤러(130) 및 인터페이스(140)를 포함하는 예시적 메모리 시스템(100)을 도시하고 있다. 제1 메모리(110) 및 제2 메모리는 당업계에 알려진 어느 유형의 메모리 아키텍처에라도 기초할 수 있다. 예컨대, 제1 메모리 및 제2 메모리는 프로세서 내에 있는 캐시일 수도 있고, 또는 자립형(standalone) 메모리(즉, 캐시의 일부가 아님)일 수도 있다. 제1 메모리(110)는 위에서 논의된 바와 같이 더 작은 비트셀을 사용하는 고용량 저전압 메모리일 수도 있다. 제1 메모리는 랜덤 단일-비트 도핑 에러가 유발될 수 있는 반면, 작은 공간에 다량의 데이터를 저장할 수 있는 이점을 갖고 데이터 보유에 전압을 덜 사용한다. 제2 메모리(120)는 랜덤 도핑 에러에 덜 민감한 메모리인 것이 바람직하다. 제2 메모리(120)는 제1 메모리(110)에 대응하는 비트셀 에러의 로케이션 및/또는 리페어 정보를 저장한다. 리페어 정보에는 제1 메모리(110) 내 단일-비트 에러의 로케이션 및/또는 대응하는 에러를 바로잡기 위한 명령어가 들어있을 수 있다. 컨트롤러(130) 및 인터페이스(140)는 제1 메모리(110) 및 제2 메모리(120)를 관리하고 제2 메모리(120)에 저장된 리페어 정보에 대해 조작하는 바, 아래에서 더 상세하게 논의된다.
일 실시예에 있어서, 제1 메모리(110)는 예컨대 캐시 내 데이터 어레이일 수 있다. 캐시는 CPU(computer processing unit) 캐시, GPU(graphical processing unit) 캐시, 디스크 캐시(예컨대, 하드 드라이브 캐시), 웹 캐시 또는 당업계에 알려져 있는 바와 같은 어떠한 다른 유형의 캐시일 수도 있다. 캐시 내에 저장되어 있는 데이터는 더 이전에 컴퓨팅되었던 값일 수도 있고 다른 어느 곳에 저장되어 있는 원본 데이터의 복제일 수도 있다. 요청된 데이터가 캐시에 들어있으면(소위 캐시 히트라고도 함), 이러한 요청은 단순히 캐시를 읽음으로써 서빙될 수 있는데, 이는 전통적인 메모리로부터 데이터를 요청하거나 데이터를 재계산하는 것보다 더 빠른 정도이다.
도 1에 도시된 각각의 블록(예컨대, 블록(112) 등)은 제1 메모리(110) 내 단일 비트를 표현한다. 제1 메모리(110)는 라인(예컨대, 로우(row)(114)) 또는 워드, 라인의 소정 부분에 의해 어드레싱될 수 있다. 제1 메모리(110)에서의 각각의 라인은 예컨대 512-비트 또는 1024-비트 폭일 수 있지만, 다른 라인 폭을 갖는 메모리가 사용될 수 있다. 제1 메모리는 당업계에 알려져 있는 바와 같은 어떠한 방식으로든 버스(도시하지 않음)를 거쳐 액세스될 수 있다. 어떤 시스템에 있어서는, 제1 메모리(110)에 액세스하는 버스의 폭은 제1 메모리(110)의 라인 길이보다 더 적은 비트를 가질 수도 있다. 예컨대, 버스 폭은 128-비트 폭일 수도 있지만, 다른 버스 폭이 사용될 수도 있다. 따라서, 제1 메모리(110)는 라인 및 라인의 각자의 부분(예컨대, 128-비트 부분; 이하 "워드"라 일컫는다)에 기초하여 어드레싱될 수 있다.
제1 메모리(110)는 위에서 논의된 바와 같이 단일-비트 에러가 유발될 수 있다. 도 1에 나타낸 바와 같이, 그레이 처리된 블록(예컨대, 블록(118))은 랜덤 도핑 에러가 유발된 비트를 표현한다.
제2 메모리(120)는 제1 메모리(110)에서의 단일-비트 에러에 대응하는 리페어 정보를 저장한다. 제2 메모리는 단일-비트 에러에 덜 민감한 유형의 메모리인 것이 바람직하다. 제2 메모리(120)는 제1 메모리(110)의 일부이거나 별개의 메모리일 수 있다. 제2 메모리(120)가 제1 메모리(110)와 동일한 메모리의 일부이면, 제2 메모리(120)는 랜덤 도핑 에러에 저항력을 더 갖기 위해 더 큰 비트셀을 사용하고/하거나 더 큰 액세스 전압을 갖도록 설계될 수 있다.
일 실시예에 있어서, 예컨대, 제2 메모리(120)는 캐시 내 태그 어레이일 수 있다. 전형적으로 태그 어레이는 캐시의 데이터 어레이에 저장된 데이터의 식별자를 저장하는데 사용된다. 예컨대, 캐시가 또 다른 메모리에도 저장되어 있는 데이터를 저장하고 있으면, 태그는 그 다른 메모리 내 데이터의 로케이션 및 캐시 내에 저장된 데이터의 로케이션을 저장할 수 있다. 예컨대, 캐시가 CPU 캐시이면, 프로세서는, 우선, 데이터가 버스를 거쳐 캐시로부터 프로세서에 전송되도록 요청하기 이전에 캐시의 데이터 어레이 내 데이터의 위치를 찾도록 태그 어레이에 액세스한다. 리페어 정보를 저장하는데 태그 어레이를 사용하는 하나의 이점은, 예컨대, 캐시의 데이터 어레이 내 요청되고 있는 데이터의 위치를 찾도록 캐시 컨트롤러(예컨대, CPU, GPU 등)가 태그 어레이에 이미 액세스하고 있다는 것이다. 따라서, 이러한 실시예에 있어서는, 리페어 정보를 검색하는데 근소량의 부가적 시간만이 요구될 뿐이다.
일 실시예에 있어서, 태그 어레이에서 사용된 비트셀은 캐시의 데이터 어레이에서 사용된 비트셀보다 더 클 수 있다. 더 큰 비트셀이 사용될 때, 그 비트셀은 랜덤 도핑 에러에 덜 민감하다. 더욱, 태그 어레이에 저장된 데이터에 변경을 가하는데 사용된 전압은 데이터 어레이에 저장된 데이터에 변경을 가하는데 사용된 전압보다 더 높을 수도 있다. 태그 어레이(즉, 제2 메모리(120))에 저장된 데이터를 변경하는데 더 큰 전압이 사용되면, 그 더 큰 전압은 비트셀이 받을 수도 있는 어떠한 랜덤 도핑 영향도 극복할 가능성이 더 많다.
또 다른 실시예에 있어서, 제2 메모리(120)는 정적 램(SRAM)일 수도 있다. SRAM은 반도체 메모리의 일유형으로서 정적(static)이라는 단어는, 동적(dynamic) RAM(DRAM)과는 달리, SRAM은 각각의 비트를 저장하는데 바이스테이블 래칭 회로를 사용하므로 주기적으로 리프레싱될 필요가 없음을 나타낸다. SRAM은 데이터 잔류자기를 내보이지만, 메모리가 전력을 공급받지 않을 때 데이터는 결국 손실된다는 관용적 의미에서는 여전히 휘발성이다.
또 다른 실시예에 있어서, 제2 메모리(120)는 제1 메모리(110)의 일부일 수도 있다. 예컨대, 제1 메모리(110)가 캐시 내 데이터 어레이이면, 그 데이터 어레이의 일부분(즉, 제2 메모리(120))은 리페어 정보를 저장하는데 사용될 수 있다.
다른 실시예에 있어서, 제2 메모리(120)는 일련의 플립-플롭, FPGA(field programmable gate array), 동기식 RAM(SRAM)과 같은 RAM(random access memory), 퓨즈, EEPROM, eDRAM 또는 데이터를 저장할 수 있는 어떠한 다른 유형의 논리 회로일 수도 있다.
위에서 논의된 바와 같이, 제2 메모리(120)는 리페어 정보를 저장한다. 저장된 리페어 정보의 사이즈 및 유형은 실시예에 따라 달리될 수 있다. 예컨대, 로케이션은 다수의 라인(2, 3, 4 ... n, n+1 ...), 단일 라인, 라인의 일부분 또는 에러가 위치하는 제1 메모리(110)의 라인 내 단일 비트로 나타낼 수 있다. 다른 실시예들에 있어서는, 비트셀 에러를 시프팅 또는 정정하기 위한 명령어가 저장될 수 있다.
일 실시예에 있어서, 제2 메모리는 에러의 로케이션을 정의하기 위한 인코딩 기법을 저장할 수 있다. 예컨대, 제1 메모리가 복수의 128-비트 워드를 갖는 512-비트 폭 라인(즉, 라인은 4개의 워드를 갖는다)을 사용하면, 제2 메모리는 라인 내 어느 워드에 에러 비트가 들어있는지를 나타내도록 2-비트 인코딩 기법을 사용할 수 있다. 하나의 예시적 인코딩 기법에 있어서는, "01"이 제1 워드에서의 에러를 나타낼 수 있고, "10"이 제2 워드에서의 에러를 나타낼 수 있고, "11"이 제3 워드에서의 에러를 나타낼 수 있고, "00"이 제4 워드에서의 에러를 나타낼 수 있다. 당업자는 여러 다른 인코딩 기법이 사용될 수도 있음을 인식할 것이다. 또한, 인코딩 기법은 제1 메모리(110)의 사이즈 및 제2 메모리(120)에서 에러의 로케이션이 어떻게 (예컨대, 다수의 라인, 단일 라인, 워드, 비트 등에 의해) 경계식별되는지에 의존할 것이다.
제1 메모리(110) 내 데이터를 액세스, 저장 또는 제거하라는 요청이 수신될 때, 컨트롤러(130)는 제2 메모리(120)로부터 저장된 정보를 검색 또는 수신할 수 있다.
일 실시예에 있어서, 제2 메모리(120)에 저장된 정보는 빌트-인 테스트(built-in test)를 사용하여 파워-업(power-up)때 생성될 수 있다. 컨트롤러(130)는 제1 메모리(110)에 일련의 소정 또는 랜덤 비트를 저장하려 시도할 수 있다. 그후 컨트롤러(130)는 각자의 비트의 상태를 읽고 그 읽혀진 상태를 기대 상태에 비교할 수 있다. 빌트-인 테스트의 결과에 기초하여, 컨트롤러는 제2 메모리(120)에 리페어 정보를 저장할 수 있다.
또 다른 실시예에 있어서, 제2 메모리(120)에 저장된 정보는 온 더 플라이로 발생될 수도 있다. 컨트롤러가 제1 메모리(110)에 액세스하고 있는 동안 에러가 일어나면, 컨트롤러(130)는 제2 메모리에 에러의 로케이션을 저장할 수 있다. 따라서, 에러 비트가 위치하는 로케이션에 액세스하라는 후속의 요청 동안, 시스템은 에러를 정정하는데 어떠한 페널티도 겪지 않을 것이다.
또 다른 실시예에 있어서, 제2 메모리(120)가 비휘발성 메모리이면, 제2 메모리(120)에 저장된 리페어 정보는 미리 프로그래밍되거나 한번 생성되어 이후에 참조될 수 있다. 예컨대, 제1 메모리(110)는 상기한 바와 같이 빌트-인 테스트될 수 있다. 그렇지만, 메모리 시스템(100)이 파워 업될 때마다 테스트를 반복하고 그 결과를 저장하는 것보다는 오히려 그 결과는 디바이스가 전력이 풀린 이후에도 메모리에 리페어 정보를 보유하고 있을 비휘발성 메모리에 저장될 수 있다.
제2 메모리(120)에 정보를 저장하기 위한 방법의 어떠한 조합도 사용될 수 있다.
컨트롤러(130) 및 인터페이스(140)는 결함있는 비트셀을 정정 또는 시프팅해내는데 사용될 수 있다. 하나의 예시적 실시예에 있어서, 워드 길이 리던던트 칼럼이 제1 메모리(110)에 들어있을 수 있다, 그렇지만, 어떠한 수의 리던던트 칼럼이라도 사용될 수 있다. 예컨대, 도 1에서 보여지듯이, 마지막 4개의 칼럼(150; 즉, 예시적 실시예에서는 각각의 칼럼에서 마지막 워드)은 리던던트 비트로 지정된다. 이러한 실시예에 있어서는, 제1 메모리(110)가 4개의 워드 길이인 경우에, 처음의 3개의 워드는 데이터를 저장하는데 사용되고 4번째 워드는 에러 정정을 지원하는데 사용된다. 도 1은 각각의 라인에서 4번째 워드를 리페어 비트로 지정되는 것으로 도시하고 있지만, 워드 길이 칼럼 중 어느 것이라도 이러한 목적에 사용될 수 있다.
일 실시예에 있어서, 인터페이스(140)는 일련의 멀티플렉서를 포함할 수 있다. 컨트롤러는, 제2 메모리(120)에 저장된 정보에 기초해, 아래에 더 상세히 논의되는 바와 같은 멀티플렉서를 사용하여 제1 메모리(110)에 쓰거나 읽혀지고 있는 데이터를 정정 또는 시프팅할 수 있다.
다른 실시예들에 있어서는, 제1 메모리(110)의 단일 칼럼, 로우, 워드 또는 어떠한 다른 경계식별이라도 리던던트 비트로 지정될 수 있다. 당업자는 리던던트 비트셀이 어디에 위치하는지에 기초하여 인터페이스(140)가 수정될 수 있음을 인식할 것이다.
도 2는 예시적 캐시(200)를 도시하고 있고 데이터 어레이(210) 및 태그 어레이(220)를 포함하고 있다. 데이터 어레이(210) 및 태그 어레이(220)에서의 각각의 블록(예컨대, 블록(212), 블록(222) 등)은 각자의 어레이 내 단일 비트를 표현한다. 위에서 논의된 바와 같이, 캐시(200)는 라인(예컨대, 로우(214))에 의해 또는 워드에 의해 어드레싱될 수 있다. 캐시에서의 각각의 라인은 예컨대 512-비트 또는 1024-비트 폭일 수 있다, 그렇지만, 다른 버스 폭을 갖는 캐시가 사용될 수 있다. 캐시(200)는 당업계에 알려져 있는 바와 같이 어떠한 방식으로든 버스(도시하지 않음)를 거쳐 액세스될 수 있다. 도 2에 도시된 캐시(200)에 있어서, 각각의 라인은 단순화를 위해 복수의 4-비트 워드를 갖는 16-비트 폭인 것으로 도시되어 있다.
도 2에 도시된 실시예에 있어서, 각각의 라인상의 마지막 워드(230)의 비트셀은 리던던트 워드인 것으로 구성되어 있다. 위에서 논의된 바와 같이, 데이터 어레이(210)의 워드 길이 영역 중 어느 것이라도 리던던트 셀로 지정될 수 있다. 또한, 다른 리던던트 비트셀 구성이 사용될 수 있다. 예컨대, 단일 칼럼이 리던던트 비트셀로 지정될 수 있다. 다른 실시예들에 있어서는, 다수의 칼럼, 단일 라인 또는 다수의 라인이 사용될 수 있다. 또 다른 실시예에 있어서는, 제3 메모리 디바이스가 리던던트 비트셀에 사용될 수 있다. 리던던트 비트셀을 위한 영역은 데이터 어레이(210)에서의 단일-비트 에러의 밀도에 기초하여 선택될 수 있다.
도 2에 도시된 태그 어레이(220)는 2 비트 길이 라인을 갖는 것으로 도시되어 있을 뿐이지만, 각각의 라인의 길이는 제2 메모리에 어떻게 리페어 정보가 저장되고 다른 정보가 저장되는지에 의존할 것이다. 위에서 논의된 바와 같이, 태그 어레이는 또한 데이터 어레이에 저장된 데이터의 인덱스를 저장한다. 태그 어레이는 또한 코히런시 정보(즉, MESI 비트들) 또는 다른 부수 정보를 저장할 수 있다.
캐시는 디코더(240) 및 칼럼 MUX로 구성된 일련의 멀티플렉서(MUX; 242-248)를 포함한다. 일 실시예에 있어서, 예컨대, MUX(242-248)는 어레이에 더 나은 종횡비를 부여하도록 사용될 수 있다. 칼럼 MUX(242-248)는 또한 일세트의 감지 증폭기 및 쓰기 회로가 다수의 비트셀간에 공유되게 할 수 있다.
이러한 예시적 실시예에 있어서, MUX(250)는 제1 워드 및 제2 워드를 입력으로서 수신하고, MUX(252)는 제2 워드 및 제3 워드를 입력으로서 수신하고, MUX(254)는 제3 워드 및 제4 워드를 입력으로서 수신한다. 디코더(240)는, 코딩 기법에 기초하여, MUX(250-254)로부터 어느 입력이 선택되는지를 선택한다.
입력 출력
00 000
01 111
10 011
11 001
표 1은 도 2에 도시된 예시적 인코딩/디코딩 기법을 나타내고 있다. 표 1에서의 입력은 태그 어레이(220)에 저장된 데이터에 대응한다. 표 1에서의 출력은 MUX(250, 252, 254)에 대한 입력 컨트롤에 각자 대응한다.
도 3은 도 2에 도시된 캐시(200)를 제어하기 위한 예시적 방법(300)을 도시하고 있다. 캐시(200)는 처음에 데이터 어레이(210)에 대응하는 읽기 요청을 수신한다(단계 310). 그후 컨트롤러(즉, CPU, GPU 등)는 태그 어레이(220)에 액세스하여 데이터 어레이(210) 내 데이터의 위치를 찾고 읽기 요청에 영향을 미칠 수 있는 어떠한 리페어 정보라도 검색한다(단계 320). 위에서 논의된 바와 같이, 리페어 정보는 예컨대 표 1에 나타낸 인코딩 기법을 사용하여 인코딩될 수 있다. 그후 컨트롤러는 리페어 정보를 디코딩하고, 디코딩된 리페어 정보에 기초하여, 데이터 요청을 알려져 있는 양호한 셀에 라우팅함으로써 데이터 어레이에서의 에러를 정정한다(단계 330). 예컨대, 라인(214) 내 데이터에 대한 읽기 요청이 수신되었다면(단계 310), 프로세서는 태그 어레이(220)의 로우(224) 내 데이터의 인덱스(도시하지 않음)에 기초하여 라인(214)의 위치를 찾을 수 있다. 태그 어레이의 로우(224)에 액세스하는 동안, 프로세서는 또한 거기에 위치한 리페어 정보를 읽을 것이다(단계 320). 도 2에 도시된 예시적 실시예에 있어서, 리페어 정보는 인코딩된 비트 시퀀스 "01"이고, 라인(214)의 제1 워드에 에러를 갖는 비트셀이 존재함을 나타낸다. 프로세서는 그후 리페어 정보를 디코딩하고 어떻게 에러를 정정할지를 결정한다(단계 330). 이러한 예에 있어서, 프로세서는 라인(214)의 제1 워드에서의 비트셀 에러를 정정하도록 데이터 어레이(210)의 라인(214) 내 제2 워드, 제3 워드 및 제4 워드(즉, 리던던트 워드)로부터 데이터를 읽어내는데 MUX(250, 252, 254)를 사용할 것이다.
이상의 상세한 설명에서는 적어도 하나의 예시적 실시예가 제시되었지만, 수많은 변형이 존재함을 알아보아야 한다. 또한, 그 예시적 실시예 또는 여러 예시적 실시예는 예일 뿐이고, 그들 실시예의 범위, 응용성 또는 구성을 어떠한 식으로든 제한하려는 의도가 아님을 알아보아야 한다. 그보다는, 이상의 상세한 설명은 예시적 실시예를 구현하는데 편리한 로드 맵을 당업자에게 제공할 것이다. 첨부된 청구범위에 기술된 바와 같이 본 발명의 범위로부터 벗어남이 없이 예시적 실시예에 설명된 구성요소의 기능 및 배열에 다양한 변경이 이루어질 수도 있다고 이해된다.

Claims (20)

  1. 캐시(cache)로서,
    데이터를 저장하도록 구성된 복수의 비트셀을 포함하는 데이터 어레이; 및
    상기 데이터 어레이 내 대응하는 로케이션(location)에 저장된 상기 데이터의 인덱스를 저장하도록 구성되고 상기 데이터 어레이 내 상기 대응하는 로케이션에서의 에러를 나타내는 리페어 정보(repair information)를 저장하도록 더 구성된 태그 어레이(tag array)를 포함하는 캐시.
  2. 제1항에 있어서,
    상기 태그 어레이에 저장된 상기 리페어 정보를 수신하도록 구성된 컨트롤러를 더 포함하되, 상기 컨트롤러는 상기 리페어 정보에 기초하여 상기 데이터 어레이 내 비트셀을 정정하도록 더 구성된 것인 캐시.
  3. 제2항에 있어서,
    상기 리페어 정보는 상기 대응하는 로케이션에서의 상기 에러의 위치에 기초하여 인코딩되는 것인 캐시.
  4. 제1항에 있어서,
    상기 데이터 어레이는 제2 복수의 비트셀을 포함하는 리던던트 칼럼(redundant column)을 갖도록 구성되는 것인 캐시.
  5. 제4항에 있어서,
    상기 데이터 어레이 내 적어도 2개의 비트셀로부터 입력을 수신하도록 각각 구성된 복수의 멀티플렉서로서, 상기 복수의 멀티플렉서 중 적어도 하나는 상기 리던던트 칼럼 내 비트셀로부터 입력을 수신하도록 구성된 상기 복수의 멀티플렉서; 및
    상기 리페어 정보에 기초하여 상기 복수의 멀티플렉서의 출력을 선택하도록 구성된 컨트롤러를 더 포함하는 캐시.
  6. 제1항에 있어서,
    상기 리페어 정보는 상기 데이터 어레이 내 상기 대응하는 로케이션 중 비트셀 에러가 존재하는 영역을 나타내는 것을 특징으로 하는 캐시.
  7. 제1항에 있어서,
    상기 캐시는 상기 리페어 정보를 결정하고 상기 태그 어레이에 상기 리페어 정보를 저장하도록 파워-업(power-up) 때 빌트-인 테스트(built-in test)를 수행하도록 구성되는 것인 캐시.
  8. 메모리 시스템으로서,
    데이터를 저장하도록 구성된 복수의 비트셀을 포함하는 제1 메모리; 및
    상기 제1 메모리 내 대응하는 로케이션에서의 비트셀 에러를 나타내는 리페어 정보를 저장하도록 구성된 제2 메모리를 포함하는 메모리 시스템.
  9. 제8항에 있어서,
    상기 제2 메모리에 저장된 상기 리페어 정보를 수신하도록 구성된 컨트롤러를 더 포함하되, 상기 컨트롤러는 상기 리페어 정보에 기초하여 상기 제1 메모리 내 비트셀을 정정하도록 더 구성된 것인 메모리 시스템.
  10. 제8항에 있어서,
    상기 리페어 정보는 상기 대응하는 로케이션에서의 상기 에러의 위치에 기초하여 인코딩되는 것인 메모리 시스템.
  11. 제8항에 있어서,
    상기 제1 메모리는 제2 복수의 비트셀을 포함하는 리던던트 영역을 갖도록 구성되는 것인 메모리 시스템.
  12. 제11항에 있어서,
    상기 제1 메모리 내 적어도 2개의 비트셀로부터 입력을 수신하도록 각각 구성된 복수의 멀티플렉서로서, 상기 복수의 멀티플렉서 중 적어도 하나는 상기 리던던트 영역 내 비트셀로부터 입력을 수신하도록 구성된 상기 복수의 멀티플렉서; 및
    상기 리페어 정보에 기초하여 상기 복수의 멀티플렉서의 출력을 선택하도록 구성된 컨트롤러를 더 포함하는 메모리 시스템.
  13. 제8항에 있어서,
    상기 리페어 정보는 상기 제1 메모리 내 상기 대응하는 로케이션 중 상기 비트셀 에러가 존재하는 영역을 나타내는 것을 특징으로 하는 메모리 시스템.
  14. 제8항에 있어서,
    상기 제1 메모리는 상기 리페어 정보를 결정하고 상기 제2 메모리에 상기 리페어 정보를 저장하기 위하여 파워-업 때 빌트-인 테스트를 수행하도록 구성되는 것을 특징으로 하는 메모리 시스템.
  15. 캐시 내 태그 어레이로부터, 상기 캐시의 데이터 어레이 내 비트셀의 로케이션에 대응하는 리페어 정보를 검색하는 단계; 및
    에러가 상기 비트셀과 연관되어 있음을 상기 리페어 정보가 나타낼 때 상기 데이터 어레이 내 상기 비트셀을 정정하는 단계를 포함하는 방법.
  16. 제15항에 있어서, 상기 데이터 어레이 내 상기 비트셀에 대응하는 리페어 정보를 상기 태그 어레이에 저장하는 단계를 더 포함하는 방법.
  17. 제16항에 있어서,
    상기 저장하는 단계는 상기 데이터 어레이 내 상기 비트셀 중 어느 것이 대응하는 에러를 갖는지 결정하도록 빌트-인 파워 업 테스트를 사용하는 단계를 더 포함하는 방법.
  18. 제15항에 있어서,
    상기 리페어 정보는 인코딩되고 상기 검색하는 단계는 상기 리페어 정보를 디코딩하는 단계를 더 포함하는 방법.
  19. 제15항에 있어서,
    상기 데이터 어레이는 복수의 비트셀을 포함하는 리던던트 영역을 갖도록 구성되는 방법.
  20. 제19항에 있어서,
    상기 정정하는 단계는, 상기 데이터 어레이 내 대응하는 워드가 상기 에러가 들어있는 비트셀을 갖고 있을 때, 상기 데이터 어레이 내 상기 리던던트 영역에서 상기 대응하는 워드에 대한 읽기 또는 쓰기 요청을 시프팅하는 단계를 더 포함하는 방법.
KR1020137020380A 2011-01-05 2011-12-28 리던던시 메모리 저장 시스템 및 리던던시 메모리 저장 시스템을 제어하기 위한 방법 KR20130133264A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201113985139A 2011-01-05 2011-01-05
US12/985,139 2011-01-05
PCT/US2011/067607 WO2012094214A1 (en) 2011-01-05 2011-12-28 A redundancy memory storage system and a method for controlling a redundancy memory storage system

Publications (1)

Publication Number Publication Date
KR20130133264A true KR20130133264A (ko) 2013-12-06

Family

ID=49981298

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137020380A KR20130133264A (ko) 2011-01-05 2011-12-28 리던던시 메모리 저장 시스템 및 리던던시 메모리 저장 시스템을 제어하기 위한 방법

Country Status (1)

Country Link
KR (1) KR20130133264A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016032634A1 (en) 2014-08-29 2016-03-03 Cynny Spa Systems and methods to organize a computing system having multiple computers, distribute computing tasks among the computers, and maintain data integrity and redundancy in the computing system
US9823985B2 (en) 2014-08-29 2017-11-21 Cynny Space Srl Systems and methods to organize a computing system having multiple computers

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016032634A1 (en) 2014-08-29 2016-03-03 Cynny Spa Systems and methods to organize a computing system having multiple computers, distribute computing tasks among the computers, and maintain data integrity and redundancy in the computing system
US9823985B2 (en) 2014-08-29 2017-11-21 Cynny Space Srl Systems and methods to organize a computing system having multiple computers
US9928149B2 (en) 2014-08-29 2018-03-27 Cynny Space Srl Systems and methods to maintain data integrity and redundancy in a computing system having multiple computers
US10565074B2 (en) 2014-08-29 2020-02-18 Cynny Space Srl Systems and methods to distribute computing tasks among multiple computers

Similar Documents

Publication Publication Date Title
US20120173921A1 (en) Redundancy memory storage system and a method for controlling a redundancy memory storage system
CN109416666B (zh) 用于存储和读取多个缓存行的装置和方法
US9250997B2 (en) Semiconductor memory device including non-volatile memory, cache memory, and computer system
DE112011100579B4 (de) Verfahren und vorrichtung zum verwenden von cachespeicher in einem system, welches einen niedrigleistungszustand unterstützt
US9858142B2 (en) Semiconductor device
US10481975B2 (en) Memory system
KR20100051804A (ko) 병렬 메모리 어레이들의 블록 어드레싱
US11211142B2 (en) Memory repair scheme
US20160328161A1 (en) Method, apparatus, and storage medium for writing data
US8385140B2 (en) Memory elements having shared selection signals
US10496546B2 (en) Cache memory and processor system
JP3659350B2 (ja) 高性能eDRAM用の新しいマイクロ・セル冗長性方式
CN112466379B (zh) 存储器位映射关系确定方法、装置、处理器芯片及服务器
US9824755B2 (en) Semicondutor memory device and memory system including the same
KR20130133264A (ko) 리던던시 메모리 저장 시스템 및 리던던시 메모리 저장 시스템을 제어하기 위한 방법
US20140195729A1 (en) Memory Having Improved Reliability for Certain Data Types
CN111863059A (zh) 具有动态冗余功能的mram芯片
US11790998B2 (en) Eliminating write disturb for system metadata in a memory sub-system
US9460779B2 (en) Memory sensing method using one-time sensing table and associated memory device
CN111951845B (zh) 一种分级管理冗余存储的mram芯片
US9195607B1 (en) Content matching using a multi-hash function for replacement of a faulty memory cell
CN113643736B (zh) 一种磁性随机存储器及其读操作方法
TWI620115B (zh) 用於寫入資料的方法及設備與儲存媒體
CN110610737B (zh) 存储器的修复方法
Lu et al. Fault Leveling Techniques for Yield and Reliability Enhancement of NAND Flash Memories

Legal Events

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