KR20050070092A - 블록 내 페이지들을 그룹짓기 위한 방법 및 장치 - Google Patents
블록 내 페이지들을 그룹짓기 위한 방법 및 장치 Download PDFInfo
- Publication number
- KR20050070092A KR20050070092A KR1020057007311A KR20057007311A KR20050070092A KR 20050070092 A KR20050070092 A KR 20050070092A KR 1020057007311 A KR1020057007311 A KR 1020057007311A KR 20057007311 A KR20057007311 A KR 20057007311A KR 20050070092 A KR20050070092 A KR 20050070092A
- Authority
- KR
- South Korea
- Prior art keywords
- physical
- group
- block
- available
- page
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Read Only Memory (AREA)
- Supplying Of Containers To The Packaging Station (AREA)
- Memory System (AREA)
- Crystals, And After-Treatments Of Crystals (AREA)
Abstract
Description
Claims (52)
- 비휘발성 메모리와 연관된 제 1 블록 내로 데이터를 기록하는 방법으로서,상기 제 1 블록은 복수 개의 페이지들을 포함하고, 상기 복수 개의 페이지들은 복수 개의 그룹들로 그룹지어지며, 여기서, 상기 복수 개의 그룹들 중 각각의 그룹은 2 이상의 페이지들을 포함하며,상기 방법은,상기 복수 개의 그룹들 중 제 1 그룹이 상기 데이터를 수신하기 위해 이용가능한 때를 결정하는 단계;상기 제 1 그룹이 상기 데이터를 수신하기 위해 이용가능함이 결정된 때 상기 제 1 그룹에 포함된 제 1 페이지 내로 상기 데이터를 기록하는 단계;상기 제 1 그룹이 상기 데이터를 수신하기 위해 이용가능하지 않음이 결정된 때, 상기 복수 개의 그룹들 중 제 2 그룹이 상기 데이터를 수신하기 위해 이용가능한 때를 결정하는 단계; 및상기 제 2 그룹이 상기 데이터를 수신하기 위해 이용가능함이 결정된 때 상기 제 2 그룹에 포함된 제 2 페이지 내로 상기 데이터를 기록하는 단계;를 포함하는 데이터 기록 방법.
- 제 1항에 있어서,상기 제 2 그룹이 상기 데이터를 수신하기 위해 이용가능하지 않음이 결정된 때, 제 2 블록이 상기 데이터를 수신하기 위해 이용가능한 때를 결정하는 단계를 더 포함하는 데이터 기록 방법.
- 제 1항에 있어서,상기 제 1 그룹이 상기 데이터를 수신하기 위해 이용가능한 때를 결정하는 단계는 상기 제 1 페이지가 상기 데이터를 수신하기에 적절한 때를 결정하는 단계를 포함하는 데이터 기록 방법.
- 제 1항에 있어서,상기 데이터는 논리적 페이지와 연관되고, 상기 제 1 블록은 제 1 물리적 블록인 데이터 기록 방법.
- 제 1항에 있어서,상기 제 1 그룹은 그룹 식별자에 의해 식별되고, 상기 그룹 식별자는 상기 제 1 그룹과 연관된 여분 영역에 저장되며, 상기 제 1 그룹이 상기 데이터를 수신하기 위해 이용가능한 때를 결정하는 단계는 상기 그룹 식별자를 획득하는 단계를 포함하는 데이터 기록 방법.
- 제 1 블록을 포함하는 비휘발성 메모리 - 여기서, 상기 제 1 블록은 복수 개의 페이지들을 포함하고, 상기 복수 개의 페이지들은 복수 개의 그룹들로 그룹지어지며, 상기 복수 개의 그룹들 중 각각의 그룹은 2 이상의 페이지들을 포함함 -;상기 복수 개의 그룹들 중 제 1 그룹이 데이터 세트를 수신하기 위해 이용가능한 때를 결정하기 위한 코드 장치들;상기 제 1 그룹이 상기 데이터 세트를 수신하기 위해 이용가능함이 결정된 때 상기 제 1 그룹에 포함된 제 1 페이지 내로 상기 데이터 세트를 기록하기 위한 코드 장치들;상기 제 1 그룹이 상기 데이터 세트를 수신하기 위해 이용가능하지 않음이 결정된 때, 상기 복수 개의 그룹들 중 제 2 그룹이 상기 데이터 세트를 수신하기 위해 이용가능한 때를 결정하기 위한 코드 장치들; 및상기 제 2 그룹이 상기 데이터 세트를 수신하기 위해 이용가능함이 결정된 때 상기 제 2 그룹에 포함된 제 2 페이지 내로 상기 데이터 세트를 기록하기 위한 코드 장치들;을 포함하는 메모리 시스템.
- 제 6항에 있어서,상기 제 2 그룹이 상기 데이터 세트를 수신하기 위해 이용가능하지 않음이 결정된 때, 제 2 블록이 상기 데이터 세트를 수신하기 위해 이용가능한 때를 결정하기 위한 코드 장치들 - 여기서, 상기 제 2 블록은 상기 비휘발성 메모리에 포함됨 -;을 더 포함하는 메모리 시스템.
- 제 7항에 있어서,상기 제 2 블록이 상기 데이터 세트를 수신하기 위해 이용가능함이 결정된 때, 상기 제 2 블록 내로 소정의 상기 복수 개의 페이지들의 내용들을 복사하기 위한 코드 장치들; 및상기 제 2 블록이 상기 데이터 세트를 수신하기 위해 이용가능함이 결정된 때, 상기 제 2 블록 내로 상기 데이터 세트를 기록하기 위한 코드 장치들;을 더 포함하는 메모리 시스템.
- 제 6항에 있어서,상기 제 1 그룹을 결정하기 위한 코드 장치들; 및상기 제 2 그룹을 결정하기 위한 코드 장치들;을 더 포함하는 메모리 시스템.
- 제 6항에 있어서,상기 제 1 그룹이 상기 데이터 세트를 수신하기 위해 이용가능한 때를 결정하기 위한 상기 코드 장치들은 상기 제 1 페이지가 상기 데이터 세트를 수신하기에 적절한 때를 결정하기 위한 코드 장치들을 포함하는 메모리 시스템.
- 제 6항에 있어서,상기 데이터는 논리적 페이지와 연관되고, 상기 제 1 블록은 제 1 물리적 블록인 메모리 시스템.
- 제 1항에 있어서,상기 제 1 그룹은 그룹 식별자에 의해 식별되고, 상기 그룹 식별자는 상기 제 1 그룹과 연관된 여분 영역에 저장되며, 상기 제 1 그룹이 상기 데이터 세트를 수신하기 위해 이용가능한 때를 결정하기 위한 상기 코드 장치들은 상기 그룹 식별자를 획득하기 위한 코드 장치들을 포함하는 메모리 시스템.
- 제 6항에 있어서,상기 코드 장치들을 저장하기 위한 메모리; 및상기 코드 장치들을 프로세싱하기 위한 프로세서;를 더 포함하는 메모리 시스템.
- 제 6항에 있어서,상기 비휘발성 메모리는 플래시 메모리인 메모리 시스템.
- 제 14항에 있어서,상기 플래시 메모리는 NAND 플래시 메모리인 메모리 시스템.
- 제 6항에 있어서,상기 코드 장치들은 소프트웨어 코드 장치들인 메모리 시스템.
- 제 6항에 있어서,상기 코드 장치들은 펌웨어 코드 장치들인 메모리 시스템.
- 비휘발성 메모리에 포함된 메모리 블록으로서,제 1 페이지들 세트 및 제 2 페이지들 세트를 포함하는 복수 개의 페이지들;상기 제 1 페이지들 세트를 포함하는 제 1 그룹 - 여기서, 상기 제 1 그룹은 상기 제 1 그룹을 식별하는 제 1 그룹 식별자를 구비하고, 상기 제 1 그룹 식별자는 상기 제 1 그룹에 저장됨 -; 및상기 제 2 페이지들 세트를 포함하는 제 2 그룹 - 여기서, 상기 제 2 그룹은 상기 제 2 그룹을 식별하는 제 2 그룹 식별자를 구비하고, 상기 제 2 그룹 식별자는 상기 제 2 그룹에 저장됨 -를 포함하는 메모리 블록.
- 제 18항에 있어서,상기 제 1 페이지들 세트에 포함된 페이지들의 순서는 상기 제 1 그룹의 시작에 대해 고정되고, 상기 제 2 페이지들 세트에 포함된 페이지들의 순서는 상기 제 2 그룹의 시작에 대해 고정되는 메모리 블록.
- 제 18항에 있어서,상기 메모리 블록은 물리적 블록이고, 상기 비휘발성 메모리는 플래시 메모리인 메모리 블록.
- 비휘발성 메모리와 연관된 제 1 물리적 블록 내로 데이터를 기록하는 방법으로서,상기 제 1 물리적 블록은 복수 개의 물리적 페이지들을 포함하고, 상기 복수 개의 물리적 페이지들은 복수 개의 물리적 그룹들로 그룹지어지며, 상기 복수 개의 물리적 그룹들의 각각의 물리적 그룹은 2 이상의 물리적 페이지들을 포함하며,상기 방법은,제 1 논리적 페이지와 연관된 제 1 데이터 세트를 식별하는 단계 - 여기서, 상기 제 1 논리적 페이지는 논리적 블록의 제 1 논리적 그룹에 포함된 복수 개의 논리적 페이지들 중 하나임 -;상기 복수 개의 물리적 그룹들 중 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관되는 때를 결정하는 단계;상기 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관됨이 결정된 때, 상기 제 1 물리적 그룹에 포함된 제 1 물리적 페이지가 상기 제 1 데이터 세트를 수용하기 위해 이용가능한 때를 결정하는 단계; 및상기 제 1 물리적 페이지가 상기 제 1 데이터 세트를 수용하기 위해 이용가능함이 결정된 때, 상기 제 1 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하는 단계;를 포함하는 데이터 기록 방법.
- 제 21항에 있어서,상기 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관되지 않음이 결정되는 때, 상기 제 1 물리적 그룹이 이용가능한 때를 결정하는 단계;상기 제 1 물리적 그룹이 이용가능함이 결정되는 때, 상기 제 1 물리적 그룹을 상기 제 1 논리적 그룹과 연관시키는 단계; 및상기 제 1 물리적 그룹과 연관된 제 2 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하는 단계;를 더 포함하는 데이터 기록 방법.
- 제 22항에 있어서,상기 제 1 논리적 그룹과 연관된 제 2 데이터 세트를 식별하는 단계; 및상기 제 1 물리적 그룹과 연관된 제 3 물리적 페이지 내로 상기 제 2 데이터 세트를 기록하는 단계;를 더 포함하는 데이터 기록 방법.
- 제 23항에 있어서,상기 제 3 물리적 페이지가 상기 제 2 데이터 세트를 수용하기 위해 이용가능한 때를 결정하는 단계 - 여기서, 상기 제 2 데이터 세트는, 상기 제 3 물리적 페이지가 상기 제 2 데이터 세트를 수용하기 위해 이용가능함이 결정되는 때, 상기 제 3 물리적 페이지 내로 기록됨 -;를 더 포함하는 데이터 기록 방법.
- 제 21항에 있어서,상기 제 1 물리적 페이지가 상기 제 1 데이터 세트를 수용하기 위해 이용가능하지 않음이 결정된 때, 상기 복수 개의 물리적 그룹들에 포함된 제 2 물리적 그룹이 이용가능한 때를 결정하는 단계; 및상기 제 2 물리적 그룹과 연관된 제 2 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하는 단계;를 더 포함하는 데이터 기록 방법.
- 제 25항에 있어서,상기 제 2 물리적 그룹이 이용가능함이 결정되는 때, 상기 제 2 물리적 그룹을 상기 제 1 논리적 그룹과 연관시키는 단계;를 더 포함하는 데이터 기록 방법.
- 제 25항에 있어서,상기 제 2 물리적 그룹이 이용가능하지 않음이 결정된 때, 상기 비휘발성 메모리와 연관된 제 2 물리적 블록이 상기 제 1 데이터 세트를 수용하기 위해 이용가능한 때를 결정하는 단계;를 더 포함하는 데이터 기록 방법.
- 제 27항에 있어서,상기 제 2 물리적 블록이 이용가능함이 결정되는 때, 상기 방법은,상기 제 1 물리적 블록에 포함된 상기 복수 개의 물리적 페이지들의 소정 내용들을 상기 제 2 물리적 블록에 포함된 물리적 페이지들 내로 복사하는 단계; 및상기 제 2 물리적 블록과 연관된 제 3 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하는 단계;를 더 포함하는 데이터 기록 방법.
- 제 28항에 있어서,상기 제 1 물리적 블록을 소거하는 단계;를 더 포함하는 데이터 기록 방법.
- 제 28항에 있어서,상기 제 2 물리적 블록과 연관된 상기 제 3 물리적 페이지는 상기 제 2 물리적 블록에 포함된 제 3 물리적 그룹의 일 부분이고, 상기 제 3 물리적 그룹은 2 이상의 물리적 페이지들을 포함하는 데이터 기록 방법.
- 제 30항에 있어서,상기 제 3 물리적 그룹을 상기 제 1 논리적 그룹과 연관시키는 단계;를 더 포함하는 데이터 기록 방법.
- 제 21항에 있어서,상기 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관되는 때를 결정하는 단계는,상기 제 1 물리적 그룹으로부터 그룹 식별자를 획득하는 단계 - 여기서, 상기 그룹 식별자는 상기 제 1 물리적 그룹을 식별하도록 배열됨 -; 및상기 그룹 식별자가 상기 제 1 논리적 그룹과 연관되는지 여부를 결정하는 단계;를 포함하는 데이터 기록 방법.
- 복수 개의 물리적 페이지들을 구비한 제 1 물리적 블록을 포함하는 비휘발성 메모리 - 여기서, 상기 복수 개의 물리적 페이지들은 복수 개의 물리적 그룹들로 그룹지어지고, 상기 복수 개의 물리적 그룹들의 각각의 물리적 그룹은 2 이상의 물리적 페이지들을 포함함 -; 및제 1 논리적 페이지와 연관된 제 1 데이터 세트를 식별하도록 배열된 모듈 - 여기서, 제 1 논리적 페이지는 논리적 블록의 제 1 논리적 그룹에 포함된 복수 개의 논리적 페이지들 중 하나이며, 상기 모듈은 부가하여 상기 복수 개의 물리적 그룹들 중 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관되는 때를 결정하도록, 그리고 상기 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관됨이 결정된 때, 상기 제 1 물리적 그룹에 포함된 제 1 물리적 페이지가 상기 제 1 데이터 세트를 수용하기 위해 이용가능한 때를 결정하도록, 그리고 상기 제 1 물리적 페이지가 상기 제 1 데이터 세트를 수용하기 위해 이용가능함이 결정된 때, 상기 제 1 데이터 세트를 상기 제 1 물리적 페이지 내로 기록하도록 배치됨 -;을 포함하는 메모리 시스템.
- 제 33항에 있어서,상기 모듈은 부가하여, 상기 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관되지 않음이 결정된 때, 상기 제 1 물리적 그룹이 이용가능한 때를 결정하도록, 그리고 상기 제 1 물리적 그룹이 이용가능함이 결정된 때 상기 제 1 물리적 그룹을 상기 제 1 논리적 그룹과 연관시키도록, 그리고 상기 제 1 물리적 그룹과 연관된 제 2 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하도록 배치되는 메모리 시스템.
- 제 34항에 있어서,상기 모듈은 부가하여, 상기 제 1 논리적 그룹과 연관된 제 2 데이터 세트를 식별하도록, 그리고 상기 제 1 물리적 그룹과 연관된 제 3 물리적 페이지 내로 상기 제 2 데이터 세트를 기록하도록 배치되는 메모리 시스템.
- 제 35항에 있어서,상기 모듈은 부가하여, 상기 제 3 물리적 페이지가 상기 제 2 데이터 세트를 수용하기 위해 이용가능한 때를 결정하도록 배치되고, 여기서, 상기 제 2 데이터 세트는, 상기 제 3 물리적 페이지가 상기 제 2 데이터 세트를 수용하기 위해 이용가능함이 결정된 때, 상기 제 3 물리적 페이지 내로 기록되는 메모리 시스템.
- 제 33항에 있어서,상기 모듈은 부가하여, 상기 제 1 물리적 페이지가 상기 제 1 데이터 세트를 수용하기 위해 이용가능하지 않음이 결정되는 때, 상기 복수 개의 물리적 그룹들에 포함된 제 2 물리적 그룹이 이용가능한 때를 결정하도록, 그리고 상기 제 2 물리적 그룹이 이용가능함이 결정된 때, 상기 제 2 물리적 그룹을 상기 제 1 논리적 그룹과 연관시키도록, 그리고 상기 제 2 물리적 그룹과 연관된 제 2 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하도록 배치되는 메모리 시스템.
- 제 37항에 있어서,상기 메모리 시스템은 부가하여 제 2 물리적 블록을 포함하고,상기 모듈은 부가하여, 상기 제 2 물리적 그룹이 이용가능하지 않음이 결정된 때, 상기 비휘발성 메모리와 연관된 상기 제 2 물리적 블록이 상기 제 1 데이터 세트를 수용하기 위해 이용가능한 때를 결정하도록, 그리고 상기 제 2 물리적 블록이 이용가능함이 결정되는 때, 상기 제 1 물리적 블록에 포함된 상기 복수 개의 물리적 페이지들의 소정의 내용들을 상기 제 2 물리적 블록에 포함된 물리적 페이지들 내로 복사하도록, 그리고 상기 제 2 물리적 블록이 이용가능함이 결정되는 때, 상기 제 2 물리적 블록과 연관된 제 3 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하도록 배치되는 메모리 시스템.
- 제 38항에 있어서,상기 모듈은 부가하여 상기 제 1 물리적 블록을 소거하도록 배치하는 메모리 시스템.
- 제 33항에 있어서,상기 모듈은 상기 제 1 물리적 그룹으로부터 그룹 식별자를 획득함으로써, 그리고 상기 그룹 식별자가 상기 제 1 논리적 그룹과 연관되는지 여부를 결정함으로써 상기 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관되는 때를 결정하도록 배치되고, 여기서, 상기 그룹 식별자는 상기 제 1 물리적 그룹을 식별하도록 배치되는 메모리 시스템.
- 제 33항에 있어서,상기 비휘발성 메모리는 NAND 플래시 메모리인 메모리 시스템.
- 비휘발성 메모리와 연관된 제 1 물리적 블록 내로 데이터를 기록하는 시스템으로서,상기 제 1 물리적 블록은 복수 개의 물리적 페이지들을 포함하고, 상기 복수 개의 물리적 페이지들은 복수 개의 물리적 그룹들로 그룹지어지며, 상기 복수 개의 물리적 그룹들의 각각의 물리적 그룹은 2 이상의 물리적 페이지들을 포함하며,상기 시스템은,제 1 논리적 페이지와 연관된 제 1 데이터 세트를 식별하는 수단 - 여기서, 상기 제 1 논리적 페이지는 논리적 블록의 제 1 논리적 그룹에 포함된 복수 개의 논리적 페이지들 중 하나임 -;상기 복수 개의 물리적 그룹들 중 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관되는 때를 결정하는 수단;상기 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관됨이 결정된 때, 상기 제 1 물리적 그룹에 포함된 제 1 물리적 페이지가 상기 제 1 데이터 세트를 수용하기 위해 이용가능한 때를 결정하는 수단; 및상기 제 1 물리적 페이지가 상기 제 1 데이터 세트를 수용하기 위해 이용가능함이 결정된 때, 상기 제 1 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하는 수단;을 포함하는 데이터 기록 시스템.
- 제 42항에 있어서,상기 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관되지 않음이 결정되는 때, 상기 제 1 물리적 그룹이 이용가능한 때를 결정하는 수단;상기 제 1 물리적 그룹이 이용가능함이 결정되는 때, 상기 제 1 물리적 그룹을 상기 제 1 논리적 그룹과 연관시키는 수단; 및상기 제 1 물리적 그룹과 연관된 제 2 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하는 수단;을 더 포함하는 데이터 기록 시스템.
- 제 43항에 있어서,상기 제 1 논리적 그룹과 연관된 제 2 데이터 세트를 식별하는 수단;상기 제 1 물리적 그룹과 연관된 제 3 물리적 페이지 내로 상기 제 2 데이터 세트를 기록하는 수단;상기 제 3 물리적 페이지가 상기 제 2 데이터 세트를 수용하기 위해 이용가능한 때를 결정하는 수단 - 여기서, 상기 제 2 데이터 세트는, 상기 제 3 물리적 페이지가 상기 제 2 데이터 세트를 수용하기 위해 이용가능함이 결정되는 때, 상기 제 3 물리적 페이지 내로 기록됨 -;을 더 포함하는 데이터 기록 시스템.
- 제 42항에 있어서,상기 제 1 물리적 페이지가 상기 제 1 데이터 세트를 수용하기 위해 이용가능하지 않음이 결정된 때, 상기 복수 개의 물리적 그룹들에 포함된 제 2 물리적 그룹이 이용가능한 때를 결정하는 수단; 및상기 제 2 물리적 그룹과 연관된 제 2 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하는 수단;을 더 포함하는 데이터 기록 시스템.
- 제 45항에 있어서,상기 제 2 물리적 그룹이 이용가능함이 결정되는 때, 상기 제 2 물리적 그룹을 상기 제 1 논리적 그룹과 연관시키는 수단;을 더 포함하는 데이터 기록 시스템.
- 제 45항에 있어서,상기 제 2 물리적 그룹이 이용가능하지 않음이 결정된 때, 상기 비휘발성 메모리와 연관된 제 2 물리적 블록이 상기 제 1 데이터 세트를 수용하기 위해 이용가능한 때를 결정하는 수단;을 더 포함하는 데이터 기록 시스템.
- 제 47항에 있어서,상기 제 2 물리적 블록이 이용가능함이 결정되는 때, 상기 제 1 물리적 블록에 포함된 상기 복수 개의 물리적 페이지들의 소정 내용들을 상기 제 2 물리적 블록에 포함된 물리적 페이지들 내로 복사하는 수단; 및상기 제 2 물리적 블록이 이용가능함이 결정된 때, 상기 제 2 물리적 블록과 연관된 제 3 물리적 페이지 내로 상기 제 1 데이터 세트를 기록하는 수단;을 더 포함하는 데이터 기록 시스템.
- 제 48항에 있어서,상기 제 1 물리적 블록을 소거하는 수단;을 더 포함하는 데이터 기록 시스템.
- 제 48항에 있어서,상기 제 2 물리적 블록과 연관된 상기 제 3 물리적 페이지는 상기 제 2 물리적 블록에 포함된 제 3 물리적 그룹의 일 부분이고, 상기 제 3 물리적 그룹은 2 이상의 물리적 페이지들을 포함하는 데이터 기록 시스템.
- 제 50항에 있어서,상기 제 3 물리적 그룹을 상기 제 1 논리적 그룹과 연관시키는 수단;을 더 포함하는 데이터 기록 시스템.
- 제 42항에 있어서,상기 제 1 물리적 그룹이 상기 제 1 논리적 그룹과 연관되는 때를 결정하는 상기 수단은,상기 제 1 물리적 그룹으로부터 그룹 식별자를 획득하는 수단 - 여기서, 상기 그룹 식별자는 상기 제 1 물리적 그룹을 식별하도록 배열됨 -; 및상기 그룹 식별자가 상기 제 1 논리적 그룹과 연관되는지 여부를 결정하는 수단;을 포함하는 데이터 기록 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/281,855 | 2002-10-28 | ||
US10/281,855 US7254668B1 (en) | 2002-10-28 | 2002-10-28 | Method and apparatus for grouping pages within a block |
PCT/US2003/028047 WO2004040453A2 (en) | 2002-10-28 | 2003-09-10 | Method and apparatus for grouping pages within a block |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050070092A true KR20050070092A (ko) | 2005-07-05 |
KR100886520B1 KR100886520B1 (ko) | 2009-03-02 |
Family
ID=32228778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020057007311A KR100886520B1 (ko) | 2002-10-28 | 2003-09-10 | 블록 내에서 페이지들을 그룹화하는 방법 및 장치 |
Country Status (10)
Country | Link |
---|---|
US (1) | US7254668B1 (ko) |
EP (1) | EP1576478B1 (ko) |
JP (1) | JP4611024B2 (ko) |
KR (1) | KR100886520B1 (ko) |
CN (1) | CN100454273C (ko) |
AT (1) | ATE466337T1 (ko) |
AU (1) | AU2003268530A1 (ko) |
DE (1) | DE60332394D1 (ko) |
TW (1) | TWI262388B (ko) |
WO (1) | WO2004040453A2 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101947286B1 (ko) * | 2017-11-29 | 2019-02-12 | 울산과학기술원 | 메모리 컨트롤 장치 및 방법 |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6426893B1 (en) | 2000-02-17 | 2002-07-30 | Sandisk Corporation | Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
EP1556868B1 (en) * | 2002-10-28 | 2007-09-05 | SanDisk Corporation | Automated wear leveling in non-volatile storage systems |
JP4261892B2 (ja) * | 2002-12-12 | 2009-04-30 | キヤノン株式会社 | データ処理装置および制御方法および記憶媒体 |
JP4661086B2 (ja) * | 2004-05-24 | 2011-03-30 | パナソニック株式会社 | 不揮発性記憶装置および不揮発性メモリの消去方法と書込み方法 |
JP3942612B2 (ja) * | 2004-09-10 | 2007-07-11 | 東京エレクトロンデバイス株式会社 | 記憶装置、メモリ管理方法及びプログラム |
US9104315B2 (en) | 2005-02-04 | 2015-08-11 | Sandisk Technologies Inc. | Systems and methods for a mass data storage system having a file-based interface to a host and a non-file-based interface to secondary storage |
KR100706242B1 (ko) * | 2005-02-07 | 2007-04-11 | 삼성전자주식회사 | 메모리 시스템 및 그것의 런 단위 어드레스 매핑 테이블 구성 방법 |
US7669003B2 (en) | 2005-08-03 | 2010-02-23 | Sandisk Corporation | Reprogrammable non-volatile memory systems with indexing of directly stored data files |
US7949845B2 (en) | 2005-08-03 | 2011-05-24 | Sandisk Corporation | Indexing of file data in reprogrammable non-volatile memories that directly store data files |
WO2007019155A1 (en) * | 2005-08-03 | 2007-02-15 | Sandisk Corporation | Reclaiming data storage capacity in flash memory systems |
US7409489B2 (en) * | 2005-08-03 | 2008-08-05 | Sandisk Corporation | Scheduling of reclaim operations in non-volatile memory |
US7480766B2 (en) * | 2005-08-03 | 2009-01-20 | Sandisk Corporation | Interfacing systems operating through a logical address space and on a direct data file basis |
ATE493707T1 (de) * | 2005-08-03 | 2011-01-15 | Sandisk Corp | Nichtflüchtiger speicher mit blockverwaltung |
US7814262B2 (en) | 2005-10-13 | 2010-10-12 | Sandisk Corporation | Memory system storing transformed units of data in fixed sized storage blocks |
US7769978B2 (en) | 2005-12-21 | 2010-08-03 | Sandisk Corporation | Method and system for accessing non-volatile storage devices |
US7793068B2 (en) | 2005-12-21 | 2010-09-07 | Sandisk Corporation | Dual mode access for non-volatile storage devices |
US7747837B2 (en) | 2005-12-21 | 2010-06-29 | Sandisk Corporation | Method and system for accessing non-volatile storage devices |
KR100806343B1 (ko) * | 2006-10-19 | 2008-02-27 | 삼성전자주식회사 | 플래시 메모리를 포함한 메모리 시스템 및 그것의 맵핑테이블 관리 방법 |
US8073648B2 (en) * | 2007-05-14 | 2011-12-06 | Sandisk Il Ltd. | Measuring threshold voltage distribution in memory using an aggregate characteristic |
JP5087347B2 (ja) * | 2007-09-06 | 2012-12-05 | 株式会社日立製作所 | 半導体記憶装置及び半導体記憶装置の制御方法 |
KR101433860B1 (ko) * | 2007-10-10 | 2014-08-26 | 삼성전자주식회사 | 파일을 효율적으로 관리할 수 있는 정보 처리 장치 |
US7613045B2 (en) * | 2007-11-26 | 2009-11-03 | Sandisk Il, Ltd. | Operation sequence and commands for measuring threshold voltage distribution in memory |
CN101632068B (zh) | 2007-12-28 | 2015-01-14 | 株式会社东芝 | 半导体存储装置 |
TWI485563B (zh) * | 2008-09-17 | 2015-05-21 | Silicon Motion Inc | 快閃記憶裝置及其運作方法 |
TWI394161B (zh) * | 2008-12-15 | 2013-04-21 | Silicon Motion Inc | 快閃記憶體裝置及其資料管理方法 |
US9201824B2 (en) * | 2009-01-22 | 2015-12-01 | Intel Deutschland Gmbh | Method and apparatus for adaptive data chunk transfer |
KR101586047B1 (ko) | 2009-03-25 | 2016-01-18 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 방법 |
EP2417524A4 (en) * | 2009-04-10 | 2013-03-06 | Kaminario Tehnologies Ltd | MASS STORAGE SYSTEM USING AN AUXILIARY SEMICONDUCTOR STORAGE SUBSYSTEM |
TWI453747B (zh) * | 2009-09-02 | 2014-09-21 | Silicon Motion Inc | 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器 |
TWI450271B (zh) * | 2009-09-02 | 2014-08-21 | Silicon Motion Inc | 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器 |
US8463983B2 (en) * | 2009-09-15 | 2013-06-11 | International Business Machines Corporation | Container marker scheme for reducing write amplification in solid state devices |
US9104546B2 (en) * | 2010-05-24 | 2015-08-11 | Silicon Motion Inc. | Method for performing block management using dynamic threshold, and associated memory device and controller thereof |
TWI451439B (zh) * | 2010-12-10 | 2014-09-01 | Phison Electronics Corp | 記憶體儲存裝置、其記憶體控制器與資料寫入方法 |
TWI553654B (zh) * | 2010-12-16 | 2016-10-11 | 群聯電子股份有限公司 | 資料管理方法、記憶體控制器與記憶體儲存裝置 |
US10089017B2 (en) * | 2011-07-20 | 2018-10-02 | Futurewei Technologies, Inc. | Method and apparatus for SSD storage access |
CN104536906B (zh) * | 2011-08-02 | 2017-10-10 | 群联电子股份有限公司 | 数据写入方法、存储器控制器与存储器储存装置 |
KR20130043445A (ko) * | 2011-10-20 | 2013-04-30 | 삼성전자주식회사 | 인터페이스 관리 방법 및 이를 이용한 저장 장치에서의 매핑 처리 방법 |
TWI486766B (zh) | 2012-05-11 | 2015-06-01 | Phison Electronics Corp | 資料處理方法、記憶體控制器與記憶體儲存裝置 |
US9116792B2 (en) * | 2012-05-18 | 2015-08-25 | Silicon Motion, Inc. | Data storage device and method for flash block management |
CN103425594B (zh) * | 2012-05-23 | 2016-09-14 | 群联电子股份有限公司 | 数据处理方法、存储器控制器与存储器存储装置 |
US9076545B2 (en) | 2013-01-17 | 2015-07-07 | Sandisk Tecnologies Inc. | Dynamic adjustment of read voltage levels based on memory cell threshold voltage distribution |
US9825884B2 (en) | 2013-12-30 | 2017-11-21 | Cavium, Inc. | Protocol independent programmable switch (PIPS) software defined data center networks |
US9927996B2 (en) | 2014-02-05 | 2018-03-27 | Hitachi, Ltd. | Information processing device |
US10616144B2 (en) | 2015-03-30 | 2020-04-07 | Cavium, Llc | Packet processing system, method and device having reduced static power consumption |
US9747226B2 (en) * | 2015-03-30 | 2017-08-29 | Cavium, Inc. | Packet processing system, method and device to optimize packet buffer space |
US9898202B2 (en) | 2015-11-30 | 2018-02-20 | Samsung Electronics Co., Ltd. | Enhanced multi-streaming though statistical analysis |
US9880780B2 (en) | 2015-11-30 | 2018-01-30 | Samsung Electronics Co., Ltd. | Enhanced multi-stream operations |
CN106293521B (zh) * | 2016-08-02 | 2019-04-12 | 华中科技大学 | 一种映射粒度自适应的闪存转换层管理方法 |
US10785301B2 (en) * | 2017-08-03 | 2020-09-22 | Toshiba Memory Corporation | NVM express over fabrics |
US11294580B2 (en) * | 2017-12-22 | 2022-04-05 | Samsung Electronics Co., Ltd. | Nonvolatile memory device |
KR102469539B1 (ko) | 2017-12-22 | 2022-11-22 | 삼성전자주식회사 | 비휘발성 메모리 장치, 비휘발성 메모리 장치의 동작 방법 및 저장 장치 |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2685173B2 (ja) | 1986-05-31 | 1997-12-03 | キヤノン株式会社 | メモリ書き込み制御方法 |
JPH07109717B2 (ja) | 1986-05-31 | 1995-11-22 | キヤノン株式会社 | メモリ書き込み制御方法 |
US5268870A (en) | 1988-06-08 | 1993-12-07 | Eliyahou Harari | Flash EEPROM system and intelligent programming and erasing methods therefor |
US5095420A (en) | 1988-11-21 | 1992-03-10 | International Business Machines | Method and system for performing virtual address range mapping in a virtual storage data processing system |
DE69033262T2 (de) | 1989-04-13 | 2000-02-24 | Sandisk Corp | EEPROM-Karte mit Austauch von fehlerhaften Speicherzellen und Zwischenspeicher |
US5222109A (en) | 1990-12-28 | 1993-06-22 | Ibm Corporation | Endurance management for solid state files |
EP0508577A1 (en) | 1991-03-13 | 1992-10-14 | International Business Machines Corporation | Address translation mechanism |
US5438573A (en) | 1991-09-13 | 1995-08-01 | Sundisk Corporation | Flash EEPROM array data and header file structure |
US6230233B1 (en) | 1991-09-13 | 2001-05-08 | Sandisk Corporation | Wear leveling techniques for flash EEPROM systems |
CA2285096C (en) | 1991-11-12 | 2000-05-09 | Ibm Canada Limited-Ibm Canada Limitee | Logical mapping of data objects using data spaces |
JP3641280B2 (ja) | 1992-10-30 | 2005-04-20 | インテル・コーポレーション | フラッシュeepromアレイのクリーン・アップすべきブロックを決定する方法 |
JP2856621B2 (ja) | 1993-02-24 | 1999-02-10 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 一括消去型不揮発性メモリおよびそれを用いる半導体ディスク装置 |
US5404485A (en) | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
JP3078946B2 (ja) * | 1993-03-11 | 2000-08-21 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | 一括消去型不揮発性メモリの管理方法及び半導体ディスク装置 |
US5388083A (en) | 1993-03-26 | 1995-02-07 | Cirrus Logic, Inc. | Flash memory mass storage architecture |
JP3507132B2 (ja) * | 1994-06-29 | 2004-03-15 | 株式会社日立製作所 | フラッシュメモリを用いた記憶装置およびその記憶制御方法 |
US5845313A (en) | 1995-07-31 | 1998-12-01 | Lexar | Direct logical block addressing flash memory mass storage architecture |
US5907856A (en) | 1995-07-31 | 1999-05-25 | Lexar Media, Inc. | Moving sectors within a block of information in a flash memory mass storage architecture |
US5835935A (en) | 1995-09-13 | 1998-11-10 | Lexar Media, Inc. | Method of and architecture for controlling system data with automatic wear leveling in a semiconductor non-volatile mass storage memory |
US6125435A (en) | 1995-09-13 | 2000-09-26 | Lexar Media, Inc. | Alignment of cluster address to block addresses within a semiconductor non-volatile mass storage memory |
JPH09185551A (ja) * | 1996-01-08 | 1997-07-15 | Mitsubishi Electric Corp | 半導体記憶装置 |
JPH09212411A (ja) * | 1996-02-06 | 1997-08-15 | Tokyo Electron Ltd | メモリシステム |
US5860082A (en) | 1996-03-28 | 1999-01-12 | Datalight, Inc. | Method and apparatus for allocating storage in a flash memory |
US6139177A (en) * | 1996-12-03 | 2000-10-31 | Hewlett Packard Company | Device access and control using embedded web access functionality |
US5937425A (en) * | 1997-10-16 | 1999-08-10 | M-Systems Flash Disk Pioneers Ltd. | Flash file system optimized for page-mode flash technologies |
GB9801373D0 (en) * | 1998-01-22 | 1998-03-18 | Memory Corp Plc | Memory system |
KR100297986B1 (ko) | 1998-03-13 | 2001-10-25 | 김영환 | 플래쉬 메모리 셀 어레이의 웨어 레벨링 시스템 및 웨어 레벨링 방법 |
US6260156B1 (en) | 1998-12-04 | 2001-07-10 | Datalight, Inc. | Method and system for managing bad areas in flash memory |
US6426893B1 (en) | 2000-02-17 | 2002-07-30 | Sandisk Corporation | Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
US6772274B1 (en) | 2000-09-13 | 2004-08-03 | Lexar Media, Inc. | Flash memory system and method implementing LBA to PBA correlation within flash memory array |
US6684289B1 (en) * | 2000-11-22 | 2004-01-27 | Sandisk Corporation | Techniques for operating non-volatile memory systems with data sectors having different sizes than the sizes of the pages and/or blocks of the memory |
US6763424B2 (en) * | 2001-01-19 | 2004-07-13 | Sandisk Corporation | Partial block data programming and reading operations in a non-volatile memory |
US6522580B2 (en) * | 2001-06-27 | 2003-02-18 | Sandisk Corporation | Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states |
US6823526B2 (en) * | 2001-07-05 | 2004-11-23 | Hewlett-Packard Development Company, L.P. | Computer-based system and method for automatic configuration of an external device |
-
2002
- 2002-10-28 US US10/281,855 patent/US7254668B1/en not_active Expired - Fee Related
-
2003
- 2003-09-10 DE DE60332394T patent/DE60332394D1/de not_active Expired - Lifetime
- 2003-09-10 AU AU2003268530A patent/AU2003268530A1/en not_active Abandoned
- 2003-09-10 KR KR1020057007311A patent/KR100886520B1/ko not_active IP Right Cessation
- 2003-09-10 EP EP03749499A patent/EP1576478B1/en not_active Expired - Lifetime
- 2003-09-10 CN CNB038247704A patent/CN100454273C/zh not_active Expired - Fee Related
- 2003-09-10 WO PCT/US2003/028047 patent/WO2004040453A2/en active Application Filing
- 2003-09-10 AT AT03749499T patent/ATE466337T1/de not_active IP Right Cessation
- 2003-09-10 JP JP2004548307A patent/JP4611024B2/ja not_active Expired - Fee Related
- 2003-09-18 TW TW092125809A patent/TWI262388B/zh not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101947286B1 (ko) * | 2017-11-29 | 2019-02-12 | 울산과학기술원 | 메모리 컨트롤 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
US7254668B1 (en) | 2007-08-07 |
TWI262388B (en) | 2006-09-21 |
KR100886520B1 (ko) | 2009-03-02 |
EP1576478B1 (en) | 2010-04-28 |
TW200413916A (en) | 2004-08-01 |
EP1576478A2 (en) | 2005-09-21 |
WO2004040453A3 (en) | 2006-02-16 |
WO2004040453A2 (en) | 2004-05-13 |
JP4611024B2 (ja) | 2011-01-12 |
DE60332394D1 (de) | 2010-06-10 |
AU2003268530A1 (en) | 2004-05-25 |
ATE466337T1 (de) | 2010-05-15 |
CN1795437A (zh) | 2006-06-28 |
AU2003268530A8 (en) | 2004-05-25 |
JP2006515086A (ja) | 2006-05-18 |
CN100454273C (zh) | 2009-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100886520B1 (ko) | 블록 내에서 페이지들을 그룹화하는 방법 및 장치 | |
KR100923814B1 (ko) | 논리적 블록을 분할하기 위한 방법 및 장치 | |
US7702880B2 (en) | Hybrid mapping implementation within a non-volatile memory system | |
KR100914089B1 (ko) | 비휘발성 저장 시스템의 소거 카운트 유지 방법 및 장치 | |
US7287118B2 (en) | Maintaining an average erase count in a non-volatile storage system | |
US7526599B2 (en) | Method and apparatus for effectively enabling an out of sequence write process within a non-volatile memory system | |
JP4456486B2 (ja) | 不揮発性記憶システムにおける摩耗一様化 | |
US7096313B1 (en) | Tracking the least frequently erased blocks in non-volatile memory systems | |
US6973531B1 (en) | Tracking the most frequently erased blocks in non-volatile memory systems | |
KR100910680B1 (ko) | 소거 카운트 블록을 유지하는 방법 및 장치 | |
US20130254465A1 (en) | Solid state memory formatting | |
JP2010267290A (ja) | 共通論理ブロックに関連付けられている物理ブロックを解決するための方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130201 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20140204 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20150130 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20160127 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20170201 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20180201 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |