KR101261671B1 - 메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하기위한 방법 및 장치 - Google Patents

메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하기위한 방법 및 장치 Download PDF

Info

Publication number
KR101261671B1
KR101261671B1 KR1020087016898A KR20087016898A KR101261671B1 KR 101261671 B1 KR101261671 B1 KR 101261671B1 KR 1020087016898 A KR1020087016898 A KR 1020087016898A KR 20087016898 A KR20087016898 A KR 20087016898A KR 101261671 B1 KR101261671 B1 KR 101261671B1
Authority
KR
South Korea
Prior art keywords
page
flash
input data
memory devices
value
Prior art date
Application number
KR1020087016898A
Other languages
English (en)
Other versions
KR20080092364A (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 KR20080092364A publication Critical patent/KR20080092364A/ko
Application granted granted Critical
Publication of KR101261671B1 publication Critical patent/KR101261671B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications

Abstract

실시간 디지털 고대역폭 비디오 신호, 예를 들면 HDTV, HD 프로그레시브(progressive) 혹은 HD 필름 캡처 신호로 기록 및 재생하기 위해, 매우 빠른 메모리들이 요구된다. 스트리밍(streaming) HD 비디오 데이터의 저장소를 위해 NAND 플래시 메모리 기반 시스템들이 이용될 수 있었다. 플래시 메모리 장치들은 페이지 지향 모드(page oriented mode)로 물리적으로 액세스된다. 본 발명에 따르면, 입력 데이터는 멀티플렉스된 방식으로 다수의 플래시 장치들의 매트릭스에 기록된다. 가능한 한 간단하고 빠른 리스트 처리가 수행되어, 싱글 플래시 장치들의 플래시 블록들의 결함 페이지들이 매트릭스 아키텍처 내에서 어드레스된다. 순차적인 방식으로 기록할 때, 그 매트릭스의 모든 플래시 장치들의 현재의 플래시 장치 페이지에 대한 데이터 콘텐트는 또한 부가적인 메모리 버퍼 내의 대응하는 저장 영역에 복사된다. 현재의 일련의 페이지들이 이 플래시 장치들에 에러 없이 기록된 후, 부가적인 메모리 버퍼 내의 대응하는 저장 영역이 다음의 페이지 데이터로 덮어쓰기(overwriting)할 수 있게 된다. 하나 또는 그 이상의 플래시 장치들 내의 현재 페이지에 에러가 발생한 경우, 이 현재 페이지들의 콘텐트는 부가적인 메모리 버퍼 내에 유지된다.
플래시 메모리, 결함, 공통 버스, 메모리 버퍼

Description

메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하기 위한 방법 및 장치{METHOD AND APPARATUS FOR RECORDING HIGH-SPEED INPUT DATA INTO A MATRIX OF MEMORY DEVICES}
본 발명은 메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하기 위한 방법 및 장치에 관한 것이다.
실시간 디지털 고대역폭 비디오 신호(real-time digital high band-width video signals), 예를 들면 HDTV, HD 프로그레시브(progressive) 혹은 HD 필름 캡처 신호로 기록 및 재생하기 위해, 매우 빠른 메모리들이 요구된다. 스트리밍(streaming) HD 비디오 데이터의 저장소를 위해 NAND 플래시(FLASH) 메모리 기반 시스템들이 이용될 수 있었다. 플래시 메모리 장치들은 페이지 지향 모드(page oriented mode)로 물리적으로 액세스되며, 이에 의해 한 '페이지'는 예를 들면 1024 데이터 워드들 및 관련된 에러 정정 코드(error correction code: ecc)를 포함한다. 특정 플래시 메모리 상의 소거 동작들은 특정-크기 데이터 블록들에만 수행될 수 있다. 이 데이터 블록들은 이하 '플래시 블록(flash block)'이란 용어로 표시된다. 플래시 블록은 예를 들면 64 페이지로 구성된다.
NAND 플래시 메모리들은 다음과 같은 두 가지 근본적인 단점들을 갖는다.
- 기록 액세스가 다소 느리다.
- 그들은 마스크되지 않은 제조 결함들을 가지며, 그들의 수명 동안 더 많은 결함들도 얻는다. 필요한 에러 핸들링은 사용자 책임 하에 있다. 이것은 또한 동등한 메모리 타입들에 대해서도 사실이다.
플래시 메모리 장치들(예, NAND 장치들) 내의 결함들의 검출은 예를 들면 소거 동작 동안 발생하기 때문에, 페이지 내의 결함은 전체 플래시 블록을 쓸모없게 만든다. 그러한 결함 있는 플래시 블록들은 파일 시스템에 의해 이용돼서는 안 된다. 그러한 결함들의 핸들링은 완전히 사용자 책임이다.
그러한 에러 처리를 위해 리드-솔로몬(Reed-Solomon)과 같은 리던던시 코드들(redundancy codes)을 이용하는 것이 공지되어 있지만, 그것은 실시간 거동에 대하여 높은 동적 시간 소모와 같은 다른 불리한 점들을 갖는다. 예를 들어, 다음의 NAND 플래시 메모리들이 시중에 나와 있다: Samsung K9K2G16U0M-YCB000 (2Gbit, 16bit 중심(oriented)), K9W4G08U0M-YCB000 (4Gbit, 8bit 중심), Toshiba TH58NVG2S3BFT00 (4Gbit, 8bit 중심), MICRON MT29G08AAxxx (2Gbit, 8bit 중심), MT29G16AAxxx (2Gbit, 16bit 중심), Samsung K9K4G08 (4Gbit, 8bit 중심).
본 발명은 NAND 플래시 메모리 기반 장치들에 고해상도 스트리밍 비디오 데이터의 실시간 기록을 위해 이용될 수 있다. 실시간으로 높은 데이터 쓰루풋(throughput)에서 기록하는 동안 플래시 장치들을 이용하는 것은 큰 파일들이나 또는 테이크들(takes)을 각각 초래할 것이다. 결함 있는(faulty) 플래시 블록들로부터 자유로운(free) 플래시 블록들로 동적인 결함 재맵핑(remapping)을 위한 자원 및 성능 효율적인 처리를 갖는 것이 중요하다. 오늘날의 대부분의 NAND 플래시 애플리케이션들은 리드-솔로몬으로 에러가 방지되고 실시간 능력은 없다.
본 발명에 의해 해결될 과제는 동작 중에 일어나는 플래시 장치들에서의 결함들을 재맵핑하기 위한 자원 및 성능 효율적인 알고리즘을 제공하여, 저전력 소모, 짧은 동작 시간 및 실시간 능력을 지원하는 것이다. 이 과제는 청구항 1에 나타낸 방법에 의해 해결된다. 이 방법을 이용하는 장치는 청구항 2에 나타낸다.
본 발명에 따르면, 고속 입력 데이터는 멀티플렉스된 형태로 다수의 플래시 장치들의 매트릭스에 기록된다. 가능한 한 간단하고 빠른 리스트 처리(list processing)가 수행되어, 싱글 플래시 장치들의 플래시 블록들의 결함 페이지들이 매트릭스 아키텍처 내에서 어드레스된다. 순차적인 방식으로 기록할 때, 그 매트릭스의 모든 플래시 장치들의 현재의 플래시 장치 페이지에 대한 데이터 콘텐트는 또한 부가적인 메모리 버퍼 내의 대응하는 저장 영역에 복사된다. 현재의 일련의 페이지들이 플래시 장치들에 에러 없이 기록된 후, 부가적인 메모리 버퍼 내의 대응하는 저장 영역이 다음의 페이지 데이터로 덮어쓰기(overwriting)할 수 있게 된다. 하나 또는 그 이상의 플래시 장치들 내의 현재 페이지에 에러가 발생한 경우, 이 현재 페이지들의 콘텐트는 부가적인 메모리 버퍼 내에 유지된다.
원칙적으로, 본 발명의 방법은 제1 타입의 메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하기에 적합하고, 상기 매트릭스는 로우(row)마다 적어도 두개의 메모리 장치들과 컬럼(column)마다 적어도 두개의 메모리 장치들을 포함하고, f로우의 메모리 장치들은 공통 버스에 접속되고, 상기 매트릭스의 각각의 로우에는 개별적인 공통 버스가 할당되고, 상기 메모리 장치들은 각각, 입력 데이터가 순차적인 방식으로 기록될 수 있는 다수의 페이지로 내부적으로 배열되고, 상기 제1 타입 메모리 장치들에 기록할 때 결함들은 상기 메모리 장치들 내의 상이한 위치들에서 발생할 수 있으며, 상기 방법은,
A) 상기 공통 버스들을 이용하여, 상기 메모리 장치들의 동일한 현재 페이지 내에서, 메모리 장치들의 제1 컬럼에서 시작하여, 컬럼마다, 입력 데이터의 제1 섹션을 멀티플렉스된 방식으로 기록하고, 상기 제1 타입과 상이한 제2 타입의 부가적인 메모리 장치의 대응하는 섹션에도 입력 데이터의 이 제1 섹션을 기록하는 단계;
B) 입력 데이터의 상기 제1 섹션을 메모리 장치들의 상기 현재 페이지 내에 기록하는 동안 적어도 하나의 메모리 장치에 적어도 하나의 결함이 발생했는지의 여부를 검사하는 단계;
C) 상기 공통 버스들을 이용하여, 메모리 장치들의 다음 페이지에, 메모리 장치들의 제1 컬럼에서 시작하여, 컬럼마다, 입력 데이터의 다음 섹션을 멀티플렉스된 방식으로 기록하고,
앞의 단계에서 결함이 발견되지 않았다면, 입력 데이터의 상기 다음 섹션을 상기 부가적인 메모리 장치의 동일 섹션 내에도 기록하고,
앞의 단계에서 결함이 발견되었다면, 입력 데이터의 상기 다음 섹션을 상기 부가적인 메모리 장치의 다음의 대응하는 섹션에도 기록하는 단계;
D) 입력 데이터의 상기 다음 섹션을 상기 다음 페이지에 기록하는 동안 적어도 하나의 메모리 장치에 적어도 하나의 결함이 발생했는지의 여부를 검사하는 단계;
E) 입력 데이터의 모든 섹션들이 메모리 장치들의 상기 매트릭스에 그리고 상기 부가적인 메모리 장치에 기록될 때까지 단계들 C) 및 D)를 계속하는 단계;
F) 메모리 장치들의 상기 매트릭스의 대응하는 페이지들의 세트들에 저장된 입력 데이터를 - 상기 세트들은 세트에 대해 적어도 하나의 메모리 장치에 적어도 하나의 결함을 포함함 - 아직 상기 입력 데이터로 점유되지 않은 메모리 장치들의 상기 매트릭스 내의 대응하는 페이지들의 세트들에 복사하고,
이에 의해 메모리 장치들의 상기 매트릭스로부터가 아니라 상기 부가적인 메모리 장치 내에 저장된 대응하는 싱글 페이지 데이터로부터 결함 싱글 페이지들의 입력 데이터를 획득하는 단계를 포함한다.
원칙적으로, 본 발명의 장치는 제1 타입의 메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하기에 적합하고, 상기 매트릭스는 로우마다 적어도 두개의 메모리 장치들과 컬럼마다 적어도 두개의 메모리 장치들을 포함하고, 로우의 메모리 장치들은 공통 버스에 접속되고, 상기 매트릭스의 각각의 로우에는 개별적인 공통 버스가 할당되고, 상기 메모리 장치들은 각각, 입력 데이터가 순차적인 방식으로 기록될 수 있는 다수의 페이지로 내부적으로 배열되고, 상기 제1 타입 메모리 장치들에 기록할 때 결함들은 상기 메모리 장치들 내의 상이한 위치들에서 발생할 수 있으며, 상기 장치는 상기 제1 타입과 상이한 제2 타입의 부가적인 메모리 장치, 및 다음의 기능들, 즉
A) 상기 공통 버스들을 이용하여, 상기 메모리 장치들의 동일한 현재 페이지 내에서, 메모리 장치들의 제1 컬럼에서 시작하여, 컬럼마다, 입력 데이터의 제1 섹션을 멀티플렉스된 방식으로 기록하고, 상기 부가적인 메모리 장치의 대응하는 섹션에도 입력 데이터의 상기 제1 섹션을 기록하는 기능;
B) 입력 데이터의 상기 제1 섹션을 메모리 장치들의 상기 현재 페이지 내에 기록하는 동안 적어도 하나의 메모리 장치에 적어도 하나의 결함이 발생했는지의 여부를 검사하는 기능;
C) 상기 공통 버스들을 이용하여, 메모리 장치들의 다음 페이지에, 메모리 장치들의 제1 컬럼에서 시작하여, 컬럼마다, 입력 데이터의 다음 섹션을 멀티플렉스된 방식으로 기록하고,
앞의 기능에서 결함이 발견되지 않았다면, 입력 데이터의 상기 다음 섹션을 상기 부가적인 메모리 장치의 동일 섹션 내에도 기록하고,
앞의 기능에서 결함이 발견되었다면, 입력 데이터의 상기 다음 섹션을 상기 부가적인 메모리 장치의 다음의 대응하는 섹션에도 기록하는 기능;
D) 입력 데이터의 상기 다음 섹션을 상기 다음 페이지에 기록하는 동안 적어도 하나의 메모리 장치에 적어도 하나의 결함이 발생했는지의 여부를 검사하는 기능;
E) 입력 데이터의 모든 섹션들이 메모리 장치들의 상기 매트릭스에 그리고 상기 부가적인 메모리 장치에 기록될 때까지 기능들 C) 및 D)를 계속하는 기능;
F) 메모리 장치들의 상기 매트릭스의 대응하는 페이지들의 세트들에 저장된 입력 데이터를 - 상기 세트들은 세트에 대해 적어도 하나의 메모리 장치에 적어도 하나의 결함을 포함함 - 아직 상기 입력 데이터로 점유되지 않은 메모리 장치들의 상기 매트릭스 내의 대응하는 페이지들의 세트들에 복사하고,
이에 의해 메모리 장치들의 상기 매트릭스로부터가 아니라 상기 부가적인 메모리 장치 내에 저장된 대응하는 싱글 페이지 데이터로부터 결함 싱글 페이지들의 입력 데이터를 획득하는 기능을 수행하도록 적응되는 수단을 포함한다.
본 발명의 유리한 부가적인 실시예들은 각각의 종속 청구항들에 개시된다.
본 발명의 예시적인 실시예들은 다음의 첨부 도면들을 참조하여 설명된다.
도 1 플래시 장치들의 매트릭스;
도 2 결함 있는 플래시 페이지들의 결함 없는 데이터 복사들을 포함하는 여분의 버퍼;
도 3 결함 리스트의 엔트리;
도 4 예시적인 결함 리스트;
도 5 페이지 레지스터 어레이;
도 6 비트맵 레지스터;
도 7 페이지 교체 시퀀스.
실시간 기록이, 도 1에 도시된 바와 같이 몇개의 버스들 BS0, BS1, BS2, ...에 의해 제어 장치 CTRLU에 접속된 매트릭스 내에 구성된 플래시 장치들을 갖는 것 은 유리하다. 몇몇의 플래시 장치들은 동일한 데이터 버스를 공유하고 있는데, 예를 들면, 장치들 DEV0 내지 DEV2는 버스 BS0을 공유한다. 보다 일반적으로, 동일한 데이터 버스를 공유하는 플래시 장치들의 수는 M이다. 매트릭스 내에 몇개의 그러한 플래시 장치/공통 버스 로우들이 있고, 그 로우들의 수는 N이다. 매트릭스는 로우마다 적어도 두개의 메모리 장치들과 컬럼마다 적어도 두개의 메모리 장치들을 포함한다. 제어 장치 CTRLU는 저장될 또는 기록될 고속 입력 데이터를 수신할 수 있다. '소거' 동작과 관련하여, 장치(1)과 같은 NAND 플래시 메모리 내의 최소 어드레스 가능한 단위는 플래시 블록(2)(굵은 테두리로 표시됨, 즉 도면에서 장치(1)는 4개의 플래시 블록들을 가짐)이다.
'기록' 동작과 관련하여, NAND 플래시 메모리 내의 최소 어드레스 가능한 단위는 플래시 페이지(3)(도면에서 각각의 플래시 블록은 4개의 플래시 페이지들을 포함함)이다.
일 실시예에서, 매트릭스 내의 플래시 블록들의 총 수는 예를 들면 4096이다. 각각의 블록은 64 페이지를 포함할 수 있다. 저장될 입력 데이터는 멀티플렉스되고 N 병렬 버스들을 통해 매트릭스의 제1 컬럼 내의 플래시 장치들 각각 내의 동일한 현재 페이지에, 즉 장치 DEV0 및 그 아래에 배열된 장치들에 기록된다. 현재 페이지가 다 채워진 후에, 다음 입력 데이터가 매트릭스의 제2 컬럼 내의 동일한 현재 페이지에, 즉 장치 DEV1 및 그 아래에 배열된 장치들에 기록된다. 이 기록 처리는 매트릭스의 모든 플래시 장치들의 현재 페이지가 입력 데이터로 채워질 때까지 M회 계속된다. 이 상태는 플래시 장치들 내의 제2 페이지의 사선 해 칭(hatching)으로 표시된다. 그 후 기록 처리는 플래시 장치들의 그 다음(즉, 제3) 페이지에서 계속되는데, 제3 페이지는 도 1에 수직 해칭으로 표시된다. 이 페이지들은 페이지들의 세트(set of pages) SOP를 형성한다.
고속 실시간 기록 및 결함 복구를 달성하기 위해, 매트릭스의 모든 플래시 장치들의 현재 플래시 페이지에 대한 데이터 콘텐트는 각각의 경우에 순차적인 방식으로 부가적인 메모리 버퍼 AMB(예를 들어, SRAM)에 복사되는데, 부가적인 메모리 버퍼 AMB는 제어 장치 CTRLU에 또는 버스들에 접속될 수 있으며, 이들 데이터는, 매트릭스의 하나 또는 그 이상의 플래시 장치들 내의 현재 페이지에 하나 또는 그 이상의 결함들이 발생했다면, 버퍼 AMB 내에 남을 것이다.
여분의 버퍼 AMB가 도 2에 더 상세히 도시된다. 도 1에 도시된 매트릭스는 9개의 플래시 장치들을 포함한다. 매트릭스 내의 장치들의 제1 컬럼은 메모리 AMB 내의 제1 컬럼과 관련되고, 매트릭스 내의 장치들의 제2 컬럼은 메모리 AMB 내의 제2 컬럼과 관련되고, 등등이다. 메모리 AMB 내의 라인은 매트릭스 내의 장치들의 로우 내의 페이지와 관련된다.
매트릭스의 플래시 장치들 내의 제3 페이지(수직 해칭으로 표시됨)에 기록할 때, 에러 또는 결함(5)이 발생했다. 따라서, 이 페이지들의 원래 입력 데이터 콘텐트가 메모리 AMB 내의 대응하는 영역(수직 해칭으로 표시됨)에 저장되어 유지되는데, 즉 그것은 결함(5) 없이 AMB에 저장되어 유지된다. 그러므로, 그 다음의 일련의 페이지들(즉, 제4 페이지)이 플래시 장치들에 기록될 때, 원래 입력 데이터는 메모리 AMB 내의 그 다음 섹션(즉, 도 2의 라인 3-6)에 기록된다. 제4 페이지들 중 어느 것에도 결함이 발생하지 않은 경우, 메모리 AMB 내의 이 섹션(라인 3-6)은 그 다음 일련의 페이지들(즉, 제5 페이지)에 의해 덮어쓰기 된다. 제10 페이지에서(즉, 플래시 장치들의 블록 3에서) 3개의 결함(5a, 5b, 5c)이 발생하기 때문에, 이 페이지들의 원래 입력 데이터 콘텐트는 대응하는 위치들(5A, 5B, 5C)에서 결함 없이 메모리 AMB 내의 대응하는 영역(라인 3-6)에 저장되어 유지된다.
사실상, 제어 장치 CTRLU의 제어 하에, 버퍼 AMB는 결함 있는 플래시 페이지들의 결함 없는 데이터 복사들을 저장하지만, 그의 용량은 플래시 매트릭스의 용량보다 훨씬 더 작다. 예를 들어, RAM 메모리 AMB는 매트릭스의 각 장치의 15개까지의 상이한 페이지들의 데이터 콘텐트가 그 안에 저장될 수 있는 용량을 가질 수 있다.
실시간 기록 동안 발생했던 페이지 에러들(예, 5, 5a, 5b 및 5c)은 결함 리스트 내에 표시되는데, 결함 리스트의 엔트리는 도 3에 도시된다. 그 엔트리는 블록 넘버 BLNO(0...B), 페이지 넘버 PGNO(0...P), 및 플래시 매트릭스 내의 장치 컬럼 번호 DEV0, ..., DEVm을 포함할 수 있다. 컬럼 넘버 내의 비트들 BT0, BT1, ..., BTn은 매트릭스의 어느 로우 넘버(=버스 넘버 BS0, BS1, ..., BSn)의 플래시 페이지에 결함 혹은 다수의 결함들이 발생했는지를 지시한다. 결함의 페이지 내의 위치를 저장하는 것은 불필요하다.
도 1에 도시된 9개 플래시 장치에 대한 예시적인 결함 리스트가 도 4에 도시된다. 이 리스트는 제어 장치 CTRLU에 저장될 수 있다. 이 예시적인 결함 리스트는 도 1의 매트릭스 내의 결함 페이지들을 정의한다.
제1 결함(5)은, 제2 버스 BS1에 대하여 제3 장치 컬럼 DEV2 내의 비트맵 파트 BTMP에 따라, 페이지 넘버 PGNO=2 내의 블록 넘버 BLNO=0 내에 위치된다.
제2 결함(5a)은, 제2 버스 BS1에 대하여 제1 장치 컬럼 DEV0 내의 페이지 넘버 PGNO=1 내의 블록 넘버 BLNO=2 내에 위치된다.
제3 결함(5b)은, 제2 버스 BS1에 대하여 제2 장치 컬럼 DEV1 내의 페이지 넘버 PGNO=1 내의 블록 넘버 BLNO=2 내에 위치된다.
제4 결함(5c)은, 제3 버스 BS2에 대하여 제2 장치 컬럼 DEV1 내의 페이지 넘버 PGNO=1 내의 블록 넘버 BLNO=2 내에 위치된다.
그 밖의 결함들은 제3 버스 BS2에 대하여 제1 장치 컬럼 DEV0 및 제2 버스 BS1에 대하여 제2 장치 컬럼 DEV1내의 페이지 넘버 PGNO=3 내의 블록 넘버 BLNO=2 내에 위치된다.
입력 데이터를 플래시 장치들에 기록할 때 혹은 기록하는 동안, 플래시 장치들은 임의의 결함들을 버스들 BS0 내지 BS2를 통해 제어 장치 CTRLU에 보고한다.
각각의 플래시 페이지 복사들은 버퍼되어 남아야 된다. 결함들을 복구할 때, 저전력 소모, 짧은 동작 시간, 및 실시간 거동을 지원하기 위해, 결함 리스트는 자원 및 시간 효율적인 방식으로 분석된다는 것이 유리하다. 목표는, 하나 또는 그 이상의 결함 있는 플래시 페이지들을 포함하는 플래시 블록의 콘텐트가 동일한 플래시 장치 내의 자유로운 플래시 블록 내의 대응하는 자유로운 플래시 페이지들의 세트들 FSOP에 복사되는 것이다. 최후로, 결함 있는 플래시 블록은, 예를 들면 파일 시스템에서 새로운 플래시 블록에 의해 논리적으로 재맵핑되어야 한다.
각각의 결함의 플래시 블록, 플래시 페이지, 장치 및 버스에 관한 정보를 포함하는 결함 리스트를 분석하는 태스크가 하기에 상세히 설명된다. 분석 처리 동안, 블록 내의 적당한 결함 플래시 페이지가 버퍼로부터 새로운 플래시 블록으로 복사될 것이다. 블록 내의 모든 다른 플래시 페이지들은 결함 있는 플래시 블록으로부터 새로운 플래시 블록으로 복사될 것이다.
플래시 블록의 결함 플래시 페이지들을 결정:
a) '페이지' 값들에 대한 레지스터 어레이를 무효 값들로 초기화한다(도 5는 플래시 블록 BLNO=2에 대한 결함 페이지들을 포함하는 대응하는 페이지 레지스터 어레이를 나타내며, 그 페이지 레지스터는 BLNO=2에 관한 로우들에 대한 컬럼 PGNO로부터 대응하는 페이지 넘버 값들을 포함한다);
b) 결함 리스트 중의 제1 유효 '블록' 값 BLNO을 '기준 블록 값'으로 만든다;
c) 결함 리스트로부터 대응하는 '페이지' 값을 페이지 레지스터 어레이 내의 적당한 필드에 복사한다;
d) 그 다음 결함 리스트 엔트리를 분석한다;
e) 현재의 '블록' 값 BLNO가 '기준 블록' 값과 같으면, 단계 c)로 가고, 그렇지 않으면 단계 d)로 간다;
f) 결함 리스트의 끝에 도달될 때까지 단계들 c) 내지 e)를 루프(loop)한다.
도 6은 단계 c)에서 처리되는 페이지 엔트리들에 대한 비트맵들을 저장하기 위한 비트맵 레지스터를 나타낸다. 이 페이지들의 비트맵들은 순차적인 처리 순서 PRO(N 비트들마다)로 처리된다. 비트맵 레지스터는 결함 없는 플래시 장치들을 손쉽게 얻기 위해(to shortcut) 이용된다.
g) 비트맵에 대한 포인터 및 '장치 카운터'를 초기화한다;
h) 페이지 레지스터 어레이에 대한 포인터를 초기화한다. 비트맵 레지스터를 제로들로 초기화한다;
i) 페이지 레지스터 어레이 내의 싱글 셀을 어드레스한다;
j) 그의 엔트리가 유효하면 단계 k)로 가고, 그렇지 않으면 단계 l)로 간다;
k) 대응하는 비트맵(결함 리스트 내에 저장됨)으로부터 N 비트들을 로딩하고 그것을 대응하는 비트맵 레지스터 값들(N= 버스들의 수)과 논리적 OR 연산을 수행한다;
l) 페이지 레지스터 어레이의 끝에 도달될 때까지 페이지 레지스터 어레이 포인터를 증분하고 단계 i)로 간다;
m) 비트맵의 끝에 도달될 때까지, 비트맵 레지스터 값이 제로이면 비트맵 포인터 및 '장치 카운터'를 증분하고, 단계 h)로 간다. 비트맵 레지스터 값이 제로가 아니면 다음의 단계들 n) 내지 u)를 시작한다.
도 7은 비트맵 레지스터 및 비트맵 분석에 따라 페이지 교체 시퀀스를 설명한다. 목적은 결함 플래시 장치 내의 결함 블록에 대한 버스를 결정하고, 대응하는 플래시 페이지들을 복사하는 것이다:
n) 페이지 레지스터 어레이에 대한 포인터 및 '버스 카운트'를 초기화한다;
o) 유효한 값에 대한 페이지 레지스터 어레이(도 5)를 판독한다;
p) '버스 카운트'가 포인팅하는 비트맵 레지스터 내의 비트를 분석한다: 그 비트가 제로이면, '버스 카운트'를 증분하고 단계 o)로 가고, 그 비트가 1이면, 단계 q)로 간다;
q) 제로와, 단계 o)에서 판독된 값 마이너스 1 사이의 모든 페이지 값들에 대해, 결함 있는 플래시 블록으로부터의 플래시 페이지들을 새로운 플래시 블록으로 복사한다. 기준 플래시 장치 넘버는 값 '장치 카운터'에 대응하고, 기준 버스 넘버는 값 '버스 카운트'에 대응한다.
r) 단계 o)에서 판독된 페이지 값에 대해, 부가적인 메모리 버퍼 AMB로부터의 대응하는 플래시 페이지 데이터를 상기 새로운 플래시 블록으로 복사한다. 기준 플래시 장치 넘버는 값 '장치 카운터'에 대응하고, 기준 버스 넘버는 값 '버스 카운트'에 대응한다.
s) 페이지 레지스터 어레이의 끝에 도달될 때까지 페이지 레지스터 어레이에 대한 포인터를 증분하고 단계 o)로 간다.
t) 적당한 장치에 대해 '블록 재맵핑 테이블'을 갱신하고 결함 리스트 내의 대응하는 블록 엔트리를 무효로서 표시한다.
u) 단계 a)로 간다.
상기 레지스터들, 포인터들, 리스트, 및 테이블은 제어 장치 CTRLU에 의해 제어될 수 있다.
본 발명은 수명 동안 결함들에 의해 영향을 받을 수 있는 임의의 블록 지향 저장소에 이용될 수 있다.

Claims (14)

  1. 제1 타입의 메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하는 방법 - 상기 매트릭스는 로우(row)마다 적어도 두개의 메모리 장치들과 컬럼마다 적어도 두개의 메모리 장치들을 포함하고, 하나의 로우의 메모리 장치들(DEV0, DEV1, DEV2)은 공통 버스(BS0)에 접속되고, 상기 매트릭스의 각각의 로우에는 개별적인 공통 버스(BS0, BS1, BS2)가 할당되고, 상기 메모리 장치들은 각각, 입력 데이터가 순차적인 방식으로 기록될 수 있는 다수의 페이지에 내부적으로 배열되고, 상기 제1 타입의 메모리 장치들에 기록할 때 상기 메모리 장치들 내의 상이한 위치들에서 결함들(5, 5a, 5b, 5c)이 발생할 수 있음 - 으로서,
    A) 상기 공통 버스들을 이용하여, 상기 메모리 장치들의 동일한 현재 페이지에, 제1 컬럼의 메모리 장치들(DEV0)에서 시작하여, 컬럼마다, 입력 데이터의 제1 섹션을 멀티플렉스된 방식으로 기록하고, 상기 제1 타입과 상이한 제2 타입의 부가적인 메모리 장치(AMB)의 대응하는 섹션에도 또한 입력 데이터의 상기 제1 섹션을 기록하는 단계;
    B) 입력 데이터의 상기 제1 섹션을 상기 메모리 장치들의 상기 현재 페이지에 기록하는 동안 적어도 하나의 메모리 장치에 적어도 하나의 결함(5, 5a, 5b, 5c)이 발생했는지의 여부를 검사하는(CTRLU) 단계;
    C) 상기 공통 버스들을 이용하여, 상기 메모리 장치들의 다음 페이지에, 제1 컬럼의 메모리 장치들(DEV0)에서 시작하여, 컬럼마다, 입력 데이터의 다음 섹션을 멀티플렉스된 방식으로 기록하고, 앞의 단계에서 결함이 발견되지 않았다면, 입력 데이터의 상기 다음 섹션을 상기 부가적인 메모리 장치의 동일 섹션에 또한 기록하고, 앞의 단계에서 결함이 발견되었다면, 입력 데이터의 상기 다음 섹션을 상기 부가적인 메모리 장치의 다음의 대응하는 섹션에 또한 기록하는 단계;
    D) 입력 데이터의 상기 다음 섹션을 상기 다음 페이지에 기록하는 동안 적어도 하나의 메모리 장치에 적어도 하나의 결함(5, 5a, 5b, 5c)이 발생했는지의 여부를 검사하는(CTRLU) 단계;
    E) 입력 데이터의 모든 섹션들이 메모리 장치들의 상기 매트릭스에 그리고 상기 부가적인 메모리 장치(AMB)에 기록될 때까지 단계들 C) 및 D)를 계속하는 단계; 및
    F) 메모리 장치들의 상기 매트릭스의 대응하는 페이지들의 세트들(SOP) - 상기 세트들은 세트마다 적어도 하나의 메모리 장치 내의 적어도 하나의 결함을 포함함 - 에 저장된 입력 데이터를 아직 상기 입력 데이터로 점유되지 않은 메모리 장치들의 상기 매트릭스 내의 대응하는 페이지들의 세트들(FSOP)에 복사하고, 이에 의해 메모리 장치들의 상기 매트릭스로부터가 아니라 상기 부가적인 메모리 장치(AMB)에 저장된 대응하는 싱글 페이지 데이터로부터 결함 싱글 페이지들의 입력 데이터를 획득하는 단계
    를 포함하는 고속 입력 데이터의 기록 방법.
  2. 제1항에 있어서,
    상기 제1 타입의 메모리 장치들은 플래시(FLASH) 메모리들인 고속 입력 데이터의 기록 방법.
  3. 제1항에 있어서,
    상기 결함들은 각각의 결함에 대한 대응하는 페이지, 대응하는 메모리 장치, 및 대응하는 버스에 관한 정보 아이템들을 포함하는 결함 리스트에 저장되는 고속 입력 데이터의 기록 방법.
  4. 제2항에 있어서,
    상기 결함들은 각각의 결함에 대한 대응하는 블록, 대응하는 페이지, 대응하는 메모리 장치, 및 대응하는 버스에 관한 정보 아이템들을 포함하는 결함 리스트에 저장되는 고속 입력 데이터의 기록 방법.
  5. 제4항에 있어서,
    플래시 블록의 결함 플래시 페이지들은 다음의 단계들:
    a) '페이지' 값들에 대한 레지스터 어레이를 무효 값들로 초기화하는 단계;
    b) 결함 리스트 중의 제1 유효 '블록' 값 BLNO를 '기준 블록' 값으로 만드는 단계;
    c) 결함 리스트로부터 대응하는 '페이지' 값을 상기 페이지 값들에 대한 레지스터 어레이 내의 필드에 복사하는 단계;
    d) 그 다음 결함 리스트 엔트리를 분석하는 단계;
    e) 현재의 '블록' 값 BLNO가 상기 '기준 블록' 값과 같으면, 단계 c)로 계속하고, 그렇지 않으면 단계 d)로 계속하는 단계; 및
    f) 상기 결함 리스트의 끝에 도달될 때까지 단계들 c) 내지 e)를 계속하는 단계
    에 의해 결정되는 고속 입력 데이터의 기록 방법.
  6. 제5항에 있어서,
    상기 단계 c)에서 처리되는 페이지 엔트리들에 대한 비트맵들을 저장하기 위한 비트맵 레지스터가 생성되고, 이 페이지들에 대한 비트맵들의 N 비트들마다 순차적인 처리 순서(PRO)로 처리되고, 상기 비트맵 레지스터는 결함 없는 플래시 장치들을 간단히 얻기(shortcut) 위해 이용되고, 상기 비트맵 레지스터는 다음의 단계들:
    g) 상기 비트맵 및 '장치 카운터'에 대한 포인터를 초기화하는 단계;
    h) 상기 페이지 값들에 대한 레지스터 어레이에 대한 포인터를 초기화하고, 상기 비트맵 레지스터를 제로들로 초기화하는 단계;
    i) 상기 페이지 값들에 대한 레지스터 어레이 내의 싱글 셀을 어드레싱하는 단계;
    j) 그의 엔트리가 유효하면 단계 k)로 계속하고, 그렇지 않으면 단계 l)로 계속하는 단계;
    k) 상기 결함 리스트에 저장된 대응하는 비트맵으로부터 N 비트들을 로딩하고 그것을 대응하는 비트맵 레지스터 값들과 논리적 OR 연산을 수행하는 단계;
    l) 상기 페이지 값들에 대한 레지스터 어레이의 끝에 도달될 때까지 상기 페이지 값들에 대한 레지스터 어레이의 포인터를 증분하고 단계 i)로 계속하는 단계; 및
    m) 비트맵의 끝에 도달될 때까지, 비트맵 레지스터 값이 제로이면 상기 비트맵에 대한 포인터 및 상기 '장치 카운터'를 증분하고, 단계 h)로 계속하는 단계
    에 의해 생성되는 고속 입력 데이터의 기록 방법.
  7. 제6항에 있어서,
    상기 단계 m)에서 상기 비트맵 레지스터 값이 제로가 아니면, 결함 플래시 장치 내의 결함 블록에 대한 버스를 결정하고 대응하는 플래시 페이지들을 복사하기 위해 다음의 단계들:
    n) 상기 페이지 값들에 대한 레지스터 어레이에 대한 포인터 및 '버스 카운트'를 초기화하는 단계;
    o) 유효값에 대해 상기 페이지 값들에 대한 레지스터 어레이를 판독하는 단계;
    p) '버스 카운트'가 가리키는 상기 비트맵 레지스터 내의 비트를 분석하여, 그 비트가 제로이면, '버스 카운트'를 증분하고 단계 o)로 계속하고, 그 비트가 1이면, 단계 q)로 계속하는 단계;
    q) 제로와, 단계 o)에서 판독된 값-1 사이의 모든 페이지 값들에 대해, 결함 있는 플래시 블록으로부터의 플래시 페이지들을 새로운 플래시 블록으로 복사하는 단계 - 이에 의해 기준 플래시 장치 넘버가 값 '장치 카운터'에 대응하고, 기준 버스 넘버가 값 '버스 카운트'에 대응함 - ;
    r) 단계 o)에서 판독된 페이지 값에 대해, 상기 부가적인 메모리 버퍼(AMB)로부터의 대응하는 플래시 페이지 데이터를 상기 새로운 플래시 블록으로 복사하는 단계 - 이에 의해 기준 플래시 장치 넘버가 값 '장치 카운터'에 대응하고, 기준 버스 넘버가 값 '버스 카운트'에 대응함 - ;
    s) 상기 페이지 값들에 대한 레지스터 어레이의 끝에 도달될 때까지 상기 페이지 값들에 대한 레지스터 어레이의 포인터를 증분하고 단계 o)로 계속하는 단계;
    t) 관련 장치에 대해 '블록 재맵핑 테이블'을 갱신하고 상기 결함 리스트 내의 대응하는 블록 엔트리를 무효로서 표시하는 단계; 및
    u) 제5항의 단계 a)로 계속하는 단계
    가 수행되는 고속 입력 데이터의 기록 방법.
  8. 제1 타입의 메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하는 장치 - 상기 매트릭스는 로우마다 적어도 두개의 메모리 장치들과 컬럼마다 적어도 두개의 메모리 장치들을 포함하고, 하나의 로우의 메모리 장치들(DEV0, DEV1, DEV2)은 공통 버스(BS0)에 접속되고, 상기 매트릭스의 각각의 로우에는 개별적인 공통 버스(BS0, BS1, BS2)가 할당되고, 상기 메모리 장치들은 각각, 입력 데이터가 순차적인 방식으로 기록될 수 있는 다수의 페이지에 내부적으로 배열되고, 상기 제1 타입의 메모리 장치들에 기록할 때 상기 메모리 장치들 내의 상이한 위치들에서 결함들(5, 5a, 5b, 5c)이 발생할 수 있음 - 로서,
    상기 장치는 상기 제1 타입과 상이한 제2 타입의 부가적인 메모리 장치(AMB), 및 다음의 기능들:
    A) 상기 공통 버스들을 이용하여, 상기 메모리 장치들의 동일한 현재 페이지에, 제1 컬럼의 메모리 장치들(DEV0)에서 시작하여, 컬럼마다, 입력 데이터의 제1 섹션을 멀티플렉스된 방식으로 기록하고, 상기 부가적인 메모리 장치(AMB)의 대응하는 섹션에도 또한 입력 데이터의 상기 제1 섹션을 기록하는 기능;
    B) 입력 데이터의 상기 제1 섹션을 상기 메모리 장치들의 상기 현재 페이지에 기록하는 동안 적어도 하나의 메모리 장치에 적어도 하나의 결함(5, 5a, 5b, 5c)이 발생했는지의 여부를 검사하는 기능;
    C) 상기 공통 버스들을 이용하여, 상기 메모리 장치들의 다음 페이지에, 제1 컬럼의 메모리 장치들(DEV0)에서 시작하여, 컬럼마다, 입력 데이터의 다음 섹션을 멀티플렉스된 방식으로 기록하고, 앞의 기능에서 결함이 발견되지 않았다면, 입력 데이터의 상기 다음 섹션을 상기 부가적인 메모리 장치의 동일 섹션에 또한 기록하고, 앞의 기능에서 결함이 발견되었다면, 입력 데이터의 상기 다음 섹션을 상기 부가적인 메모리 장치의 다음의 대응하는 섹션에 또한 기록하는 기능;
    D) 입력 데이터의 상기 다음 섹션을 상기 다음 페이지에 기록하는 동안 적어도 하나의 메모리 장치에 적어도 하나의 결함(5, 5a, 5b, 5c)이 발생했는지의 여부를 검사하는 기능;
    E) 입력 데이터의 모든 섹션들이 메모리 장치들의 상기 매트릭스에 그리고 상기 부가적인 메모리 장치(AMB)에 기록될 때까지 기능들 C) 및 D)를 계속하는 기능; 및
    F) 메모리 장치들의 상기 매트릭스의 대응하는 페이지들의 세트들(SOP) - 상기 세트들은 세트마다 적어도 하나의 메모리 장치 내의 적어도 하나의 결함을 포함함 - 에 저장된 입력 데이터를 아직 상기 입력 데이터로 점유되지 않은 메모리 장치들의 상기 매트릭스 내의 대응하는 페이지들의 세트들(FSOP)에 복사하고, 이에 의해 메모리 장치들의 상기 매트릭스로부터가 아니라 상기 부가적인 메모리 장치(AMB)에 저장된 대응하는 싱글 페이지 데이터로부터 결함 싱글 페이지들의 입력 데이터를 획득하는 기능
    을 수행하는 수단(CTRLU, BS0, BS1, BS2)을 포함하는 고속 입력 데이터의 기록 장치.
  9. 제8항에 있어서,
    상기 제1 타입의 메모리 장치들은 플래시(FLASH) 메모리들인 고속 입력 데이터의 기록 장치.
  10. 제8항에 있어서,
    상기 결함들은 각각의 결함에 대한 대응하는 페이지, 대응하는 메모리 장치, 및 대응하는 버스에 관한 정보 아이템들을 포함하는 결함 리스트에 저장되는 고속 입력 데이터의 기록 장치.
  11. 제9항에 있어서,
    상기 결함들은 각각의 결함에 대한 대응하는 블록, 대응하는 페이지, 대응하는 메모리 장치, 및 대응하는 버스에 관한 정보 아이템들을 포함하는 결함 리스트에 저장되는 고속 입력 데이터의 기록 장치.
  12. 제11항에 있어서,
    플래시 블록의 결함 플래시 페이지들은:
    a) '페이지' 값들에 대한 레지스터 어레이를 무효 값들로 초기화하고;
    b) 결함 리스트 중의 제1 유효 '블록' 값 BLNO를 '기준 블록' 값으로 만들고;
    c) 결함 리스트로부터의 대응하는 '페이지' 값을 상기 페이지 값들에 대한 레지스터 어레이 내의 관련 필드에 복사하고;
    d) 그 다음 결함 리스트 엔트리를 분석하고;
    e) 현재의 '블록' 값 BLNO가 상기 '기준 블록' 값과 같으면, 단계 c)로 계속하고, 그렇지 않으면 단계 d)로 계속하고;
    f) 상기 결함 리스트의 끝에 도달될 때까지 단계 c) 내지 e)를 계속하는
    것에 의해 결정되는 고속 입력 데이터의 기록 장치.
  13. 제12항에 있어서,
    상기 단계 c)에서 처리되는 페이지 엔트리들에 대한 비트맵들을 저장하기 위한 비트맵 레지스터가 생성되고, 이 페이지들에 대한 비트맵들의 N 비트들마다 순차적인 처리 순서(PRO)로 처리되고, 상기 비트맵 레지스터는 결함 없는 플래시 장치들을 간단히 얻기 위해 이용되고, 상기 비트맵 레지스터는:
    g) 상기 비트맵 및 '장치 카운터'에 대한 포인터를 초기화하고;
    h) 상기 페이지 값들에 대한 레지스터 어레이에 대한 포인터를 초기화하고, 상기 비트맵 레지스터를 제로들로 초기화하고;
    i) 상기 페이지 값들에 대한 레지스터 어레이 내의 싱글 셀을 어드레싱하고;
    j) 그의 엔트리가 유효하면 단계 k)로 계속하고, 그렇지 않으면 단계 l)로 계속하고;
    k) 상기 결함 리스트에 저장된 대응하는 비트맵으로부터 N 비트들을 로딩하고 그것을 대응하는 비트맵 레지스터 값들과 논리적 OR 연산을 수행하고;
    l) 상기 페이지 값들에 대한 레지스터 어레이의 끝에 도달될 때까지 상기 페이지 값들에 대한 레지스터 어레이의 포인터를 증분하고 단계 i)로 계속하고;
    m) 비트맵의 끝에 도달될 때까지, 비트맵 레지스터 값이 제로이면 상기 비트맵에 대한 포인터 및 상기 '장치 카운터'를 증분하고, 단계 h)로 계속하는
    것에 의해 생성되는 고속 입력 데이터의 기록 장치.
  14. 제13항에 있어서,
    상기 단계 m)에서 상기 비트맵 레지스터 값이 제로가 아니면, 결함 플래시 장치 내의 결함 블록에 대한 버스를 결정하고 대응하는 플래시 페이지들을 복사하기 위해:
    n) 상기 페이지 값들에 대한 레지스터 어레이에 대한 포인터 및 '버스 카운트'를 초기화하고;
    o) 유효값에 대해 상기 페이지 값들에 대한 레지스터 어레이를 판독하고;
    p) '버스 카운트'가 가리키는 상기 비트맵 레지스터 내의 비트를 분석하여, 그 비트가 제로이면, '버스 카운트'를 증분하고 단계 o)로 계속하고, 그 비트가 1이면, 단계 q)로 계속하고;
    q) 제로와, 단계 o)에서 판독된 값-1 사이의 모든 페이지 값들에 대해, 결함 있는 플래시 블록으로부터의 플래시 페이지들을 새로운 플래시 블록으로 복사하고 - 이에 의해 기준 플래시 장치 넘버가 값 '장치 카운터'에 대응하고, 기준 버스 넘버가 값 '버스 카운트'에 대응함 - ;
    r) 단계 o)에서 판독된 페이지 값에 대해, 상기 부가적인 메모리 버퍼(AMB)로부터의 대응하는 플래시 페이지 데이터를 상기 새로운 플래시 블록으로 복사하고 - 이에 의해 상기 기준 플래시 장치 넘버가 값 '장치 카운터'에 대응하고, 상기 기준 버스 넘버가 값 '버스 카운트'에 대응함 - ;
    s) 상기 페이지 값들에 대한 레지스터 어레이의 끝에 도달될 때까지 상기 페이지 값들에 대한 레지스터 어레이에 대한 포인터를 증분하고 단계 o)로 계속하고;
    t) 관련 장치에 대해 '블록 재맵핑 테이블'을 갱신하고 상기 결함 리스트 내의 대응하는 블록 엔트리를 무효로서 표시하고;
    u) 제12항의 단계 a)로 계속하는
    것이 수행되는 고속 입력 데이터의 기록 장치.
KR1020087016898A 2006-01-16 2008-07-11 메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하기위한 방법 및 장치 KR101261671B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP06090010A EP1808863A1 (en) 2006-01-16 2006-01-16 Method and apparatus for recording high-speed input data into a matrix of memory devices
EP06090010.7 2006-01-16
PCT/EP2006/069265 WO2007080031A1 (en) 2006-01-16 2006-12-04 Method and apparatus for recording high-speed input data into a matrix of memory devices

Publications (2)

Publication Number Publication Date
KR20080092364A KR20080092364A (ko) 2008-10-15
KR101261671B1 true KR101261671B1 (ko) 2013-05-06

Family

ID=36763177

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087016898A KR101261671B1 (ko) 2006-01-16 2008-07-11 메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하기위한 방법 및 장치

Country Status (12)

Country Link
US (1) US7802152B2 (ko)
EP (2) EP1808863A1 (ko)
JP (1) JP5160448B2 (ko)
KR (1) KR101261671B1 (ko)
CN (1) CN101361137B (ko)
AT (1) ATE430364T1 (ko)
AU (1) AU2006334660B2 (ko)
CA (1) CA2636237C (ko)
DE (1) DE602006006600D1 (ko)
RU (1) RU2417461C2 (ko)
TW (1) TWI403896B (ko)
WO (1) WO2007080031A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101715145B (zh) 2008-10-06 2012-08-15 辉达公司 利用级联存储器评估处理能力的设备和方法
US7945822B1 (en) * 2009-04-27 2011-05-17 Netapp, Inc. Storing data to multi-chip low-latency random read memory device using non-aligned striping
EP2270662A1 (en) * 2009-06-29 2011-01-05 Thomson Licensing Method and apparatus for dealing with write errors when writing information data into flash memory devices
EP2388706A1 (en) * 2010-05-21 2011-11-23 Thomson Licensing Method and system for real-time streaming and storage
KR102072449B1 (ko) 2012-06-01 2020-02-04 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 리페어 방법
US9026893B1 (en) * 2012-12-13 2015-05-05 Western Digital Technologies, Inc. Dynamically assigning inactive pages not used in Reed-Solomon code in non-volatile solid-state storage array
US9502139B1 (en) 2012-12-18 2016-11-22 Intel Corporation Fine grained online remapping to handle memory errors
US9286176B1 (en) 2013-11-08 2016-03-15 Western Digital Technologies, Inc. Selective skipping of blocks in an SSD
US10120816B2 (en) * 2016-07-20 2018-11-06 Sandisk Technologies Llc Bad column management with data shuffle in pipeline
CN107423159B (zh) * 2017-07-11 2019-06-28 华中科技大学 一种基于闪存错误模式提升ldpc译码性能的方法
CN107395214B (zh) * 2017-07-12 2019-06-28 华中科技大学 一种基于闪存页错误特性降低ldpc译码延迟的方法
CN107391299B (zh) * 2017-07-17 2019-06-18 华中科技大学 一种提升闪存存储系统读性能的方法
US11475102B2 (en) * 2019-02-21 2022-10-18 Samsung Electronics Co., Ltd. Adaptive matrix multiplication accelerator for machine learning and deep learning applications

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5864661A (en) 1994-05-10 1999-01-26 Kabushiki Kaisha Toshiba IC memory card having flash memory
US20030196029A1 (en) 1993-10-01 2003-10-16 Fujitsu Limited Method of writing, erasing, and controlling memory for memory device
US20040030957A1 (en) 2002-08-12 2004-02-12 Sitaram Yadavalli Various methods and apparatuses to track failing memory locations to enable implementations for invalidating repeatedly failing memory locations
US20050169045A1 (en) 1991-11-26 2005-08-04 Hajime Yamagami Storage device employing a flash memory

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3267320B2 (ja) * 1992-03-31 2002-03-18 株式会社東芝 不揮発性半導体メモリ装置及び不揮発性半導体メモリ装置の制御方法
US5708771A (en) * 1995-11-21 1998-01-13 Emc Corporation Fault tolerant controller system and method
KR100389867B1 (ko) * 2001-06-04 2003-07-04 삼성전자주식회사 플래시 메모리 관리방법
KR100532413B1 (ko) * 2002-12-02 2005-12-02 삼성전자주식회사 플래시 메모리 보호 장치 및 방법
US20040153902A1 (en) * 2003-01-21 2004-08-05 Nexflash Technologies, Inc. Serial flash integrated circuit having error detection and correction
KR100543447B1 (ko) * 2003-04-03 2006-01-23 삼성전자주식회사 에러정정기능을 가진 플래쉬메모리장치
US7392436B2 (en) * 2003-05-08 2008-06-24 Micron Technology, Inc. Program failure recovery
US7606993B2 (en) * 2003-06-10 2009-10-20 Tdk Corporation Flash memory controller, memory control circuit, flash memory system, and method for controlling data exchange between host computer and flash memory
JP4595342B2 (ja) * 2004-02-19 2010-12-08 日本電気株式会社 記憶装置のデータ書き込み、読み出し方法およびデータ記憶システム
JP4722839B2 (ja) * 2004-05-19 2011-07-13 パナソニック株式会社 メモリ制御回路、不揮発性記憶装置及びメモリ制御方法
KR100845526B1 (ko) * 2006-10-19 2008-07-10 삼성전자주식회사 플래시 메모리를 포함한 메모리 시스템 및 그것의 프로그램방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050169045A1 (en) 1991-11-26 2005-08-04 Hajime Yamagami Storage device employing a flash memory
US20030196029A1 (en) 1993-10-01 2003-10-16 Fujitsu Limited Method of writing, erasing, and controlling memory for memory device
US5864661A (en) 1994-05-10 1999-01-26 Kabushiki Kaisha Toshiba IC memory card having flash memory
US20040030957A1 (en) 2002-08-12 2004-02-12 Sitaram Yadavalli Various methods and apparatuses to track failing memory locations to enable implementations for invalidating repeatedly failing memory locations

Also Published As

Publication number Publication date
TW200739341A (en) 2007-10-16
AU2006334660A1 (en) 2007-07-19
JP2009524127A (ja) 2009-06-25
EP1974354A1 (en) 2008-10-01
RU2417461C2 (ru) 2011-04-27
ATE430364T1 (de) 2009-05-15
JP5160448B2 (ja) 2013-03-13
TWI403896B (zh) 2013-08-01
CA2636237C (en) 2014-07-08
CA2636237A1 (en) 2007-07-19
KR20080092364A (ko) 2008-10-15
US20090083591A1 (en) 2009-03-26
CN101361137A (zh) 2009-02-04
CN101361137B (zh) 2011-06-22
EP1808863A1 (en) 2007-07-18
AU2006334660B2 (en) 2011-08-25
RU2008133604A (ru) 2010-02-27
DE602006006600D1 (de) 2009-06-10
WO2007080031A1 (en) 2007-07-19
US7802152B2 (en) 2010-09-21
EP1974354B1 (en) 2009-04-29

Similar Documents

Publication Publication Date Title
KR101261671B1 (ko) 메모리 장치들의 매트릭스에 고속 입력 데이터를 기록하기위한 방법 및 장치
US8301825B2 (en) Method and system for storing logical data blocks into flash-blocks in multiple non-volatile memories which are connected to at least one common data I/O bus
KR100327136B1 (ko) 반도체 메모리 장치 및 이 장치의 병렬 비트 테스트 방법
EP0096781B1 (en) System for updating error map of fault tolerant memory
JP5130646B2 (ja) 記憶装置
KR840005869A (ko) 디지탈 데이타를 비디오 형식으로 저장하는 방법 및 장치
JP2009524127A5 (ko)
US20080282120A1 (en) Memory structure, repair system and method for testing the same
CN100492323C (zh) 对缓存内容进行保护的方法和装置以及缓存控制器
JP2001023397A (ja) 半導体メモリのテスト方法及び半導体メモリ
CN101937719A (zh) 将信息数据写入闪速存储器件时处理写错误的方法和装置
JP2014194817A (ja) 記憶装置
CN116665756A (zh) 数据储存装置以及非挥发式存储器控制方法
KR20020060419A (ko) 메모리 접근 방법
SU1566414A1 (ru) Оперативное запоминающее устройство с коррекцией ошибок
CN116665755A (zh) 数据储存装置以及非挥发式存储器控制方法
JPH05151099A (ja) メモリカード装置
JPH0217549A (ja) データ処理装置
WO2008087082A9 (en) Method and apparatus for recording data into a matrix of memory devices
JPH04260150A (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
FPAY Annual fee payment

Payment date: 20160329

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee