KR20140067258A - 메모리 제어 장치 및 그 제어 방법 - Google Patents
메모리 제어 장치 및 그 제어 방법 Download PDFInfo
- Publication number
- KR20140067258A KR20140067258A KR1020120134286A KR20120134286A KR20140067258A KR 20140067258 A KR20140067258 A KR 20140067258A KR 1020120134286 A KR1020120134286 A KR 1020120134286A KR 20120134286 A KR20120134286 A KR 20120134286A KR 20140067258 A KR20140067258 A KR 20140067258A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- written
- group
- address
- requested
- Prior art date
Links
Images
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/0292—User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
본 기술은 메모리 장치의 저장 공간의 낭비를 방지하면서 메모리 장치의 성능을 향상시킬 수 있는 메모리 제어 장치 및 그 제어 방법에 관한 것이다.
본 기술에 의한 메모리 제어 장치는 메모리 장치 내의 저장 공간을 다수의 그룹으로 나누어 관리하되, 현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속되는지 확인하고, 상기 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하며 상기 주소가 연속하는 경우 상기 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터에 연속하여 기록한다.
본 기술에 의한 메모리 제어 장치는 메모리 장치 내의 저장 공간을 다수의 그룹으로 나누어 관리하되, 현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속되는지 확인하고, 상기 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하며 상기 주소가 연속하는 경우 상기 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터에 연속하여 기록한다.
Description
본 발명은 메모리 제어 장치 및 그 제어 방법에 관한 것으로, 보다 구체적으로는 쓰기 요청된 데이터의 주소를 고려하여 메모리 장치를 제어하는 메모리 제어 장치 및 그 제어 방법에 관한 것이다.
비휘발성 메모리 장치가 데이터 저장을 위해 널리 사용되고 있으며 특히 플래시 메모리 장치가 대중적으로 사용되고 있다.
플래시 메모리 장치의 저장 공간은 일반적으로 각각 다수개의 페이지를 포함하는 다수의 블록으로 구성된다. 플래시 메모리 장치를 구성하는 셀의 종류에는 단일 비트를 저장하는 단일 레벨 셀(SLC)과 멀티 비트를 저장하는 멀티 레벨 셀(MLC)이 있다. 예를 들어 하나의 셀에 2 비트를 저장하는 멀티 레벨 셀의 경우 데이터의 상태를 네 가지로 구분하여 저장한다.
이러한 멀티 레벨 셀을 포함하는 플래시 메모리 장치는 다수의 임계 전압을 사용하여 데이터의 레벨을 구분한다. 이러한 셀 데이터는 주변 셀의 간섭으로 인해 데이터가 손상될 가능성이 있다.
종래에는 데이터 손상을 방지하기 위하여 멀티 레벨 셀을 포함하는 플래시 메모리 장치에서 워드라인을 공유하는 셀들을 하나의 그룹(이하, 워드라인 그룹)으로 설정하고 호스트로부터의 제 1 및 제 2 쓰기 요청이 있는 경우 제 1 쓰기 요청에 따른 데이터와 제 2 쓰기 요청에 따른 데이터를 별개의 워드라인 그룹에 기록하는 방식을 사용하였다.
도 1은 멀티 레벨 셀을 포함하는 플래시 메모리 장치의 저장 공간을 워드라인 별로 그룹화한 예를 도시한다.
도시된 예에서는 하나의 워드라인 그룹에 총 4개의 페이지가 포함된다. 각 워드라인 그룹은 멀티 레벨 셀의 하위 비트로 이루어지는 LSB 페이지와 멀티 레벨 셀의 상위 비트로 이루어지는 MSB 페이지로 구분되며, 셀의 물리적 위치에 따라 홀수 페이지와 짝수 페이지로 다시 구분된다.
도 2는 도 1과 같은 플래시 메모리 장치에 종래의 쓰기 방식을 적용한 경우 발생하는 문제점을 설명하는 도면이다.
도 1과 같이 저장 공간이 그룹화된 플래시 메모리 장치에 예를 들어 2 페이지 크기의 데이터 쓰기 요청이 연속되면 매 요청마다 페이지를 건너뛰게 되어 전체 저장 공간 중에서 반을 낭비하게 되는 문제가 있다.
이와 같이 종래의 기술은 저장 공간의 낭비를 초래할 수 있고 이로 인하여 가비지 콜렉션이 증가하여 메모리 장치 및 이를 포함하는 시스템의 성능을 저하시킬 수 있어 개선이 필요하다.
본 발명은 메모리 장치의 저장 공간의 낭비를 방지하면서 메모리 장치의 성능을 높일 수 있는 메모리 제어 장치 및 그 제어 방법을 제공한다.
본 발명의 일 실시예에 의한 메모리 제어 장치는 메모리 장치 내의 저장 공간을 다수의 그룹으로 나누어 관리하되, 호스트로부터의 쓰기 요청시 현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속되는지 확인하고, 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하며 주소가 연속하는 경우 현재 쓰기 요청된 데이터를 이전에 쓰기 요청된 데이터에 연속하여 기록할 수 있다.
본 발명의 일 실시예에 의한 메모리 제어 장치에서 하나의 그룹은 하나 또는 둘 이상의 워드라인에 연결된 페이지들을 포함할 수 있다.
본 발명의 일 실시예에 의한 메모리 장치에서 주소가 연속하는 경우 이전에 쓰기 요청에 의해 마지막으로 기록된 데이터가 위치하는 그룹에 빈 페이지가 존재하면 현재 쓰기 요청된 데이터가 빈 페이지에 기록될 수 있도록 제어할 수 있다.
본 발명의 일 실시예에 의한 시스템은 메모리 장치와 상기 메모리 장치의 저장 공간을 다수의 그룹으로 구분하여 제어하는 프로세서를 포함하되, 프로세서는 현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속되는지 확인하고, 상기 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하며, 상기 주소가 연속하는 경우 상기 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터에 연속하여 기록할 수 있다.
본 발명의 일 실시예에 의한 저장 매체는 메모리 장치의 저장 공간을 다수의 그룹으로 구분하여 제어하는 프로세서로 실행할 수 있는 단계들을 저장하는 저장 매체로서 현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속되는지 확인하는 단계, 상기 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하는 단계 및 상기 주소가 연속하는 경우 상기 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터에 연속하여 기록하는 단계를 저장한다.
본 발명의 일 실시예에 의한 메모리 제어 방법은 메모리 장치의 저장 공간을 다수의 그룹으로 구분하여 제어하는 방법으로서 현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속되는지 확인하는 단계, 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하는 단계 및 주소가 연속하는 경우 현재 쓰기 요청된 데이터를 이전에 쓰기 요청된 데이터에 연속하여 기록하는 단계를 포함할 수 있다.
본 기술을 통해 연속된 주소의 데이터를 쓰는 경우 페이지 건너뛰기를 생략함으로써 메모리 장치의 저장 공간의 낭비를 방지하고 이에 따라 가비지 콜렉션의 발생 가능성을 낮춤으로써 메모리 장치 및 이를 포함하는 시스템의 성능을 향상시킬 수 있다.
도 1은 플래시 메모리 장치의 페이지들을 워드라인에 따라 그룹화하는 방식을 예시한 도면.
도 2는 종래 기술의 문제점을 나타낸 도면.
도 3은 본 발명의 일 실시예에 의한 메모리 제어 방법을 나타내는 순서도.
도 4는 본 발명의 일 실시예에 의한 메모리 제어 방법에 따라 수행되는 데이터 쓰기의 일 예를 설명한 도면.
도 5a 및 도 5b는 본 발명의 일 실시예에 있어서 전원 페일 처리 방법을 설명하는 설명도.
도 6은 본 발명의 일 실시예에 의한 메모리 제어 장치 및 이를 포함하는 시스템을 나타낸 블록도.
도 7은 본 발명의 다른 실시예에 의한 메모리 제어 장치를 나타낸 블록도.
도 2는 종래 기술의 문제점을 나타낸 도면.
도 3은 본 발명의 일 실시예에 의한 메모리 제어 방법을 나타내는 순서도.
도 4는 본 발명의 일 실시예에 의한 메모리 제어 방법에 따라 수행되는 데이터 쓰기의 일 예를 설명한 도면.
도 5a 및 도 5b는 본 발명의 일 실시예에 있어서 전원 페일 처리 방법을 설명하는 설명도.
도 6은 본 발명의 일 실시예에 의한 메모리 제어 장치 및 이를 포함하는 시스템을 나타낸 블록도.
도 7은 본 발명의 다른 실시예에 의한 메모리 제어 장치를 나타낸 블록도.
이하에서는 첨부한 도면을 참조하여 본 발명에 의한 실시예들을 구체적으로 개시한다. 이하에서 동일한 참조번호는 실질적으로 동일한 구성요소를 지시한다.
도 3은 본 발명의 일 실시예에 의한 메모리 제어 방법을 나타내는 순서도이다.
도면에서 제 2 쓰기 요청은 제 1 쓰기 요청의 직후 또는 제 1 쓰기 요청 직후의 하나 또는 둘 이상의 연속된 읽기 요청이 처리된 이후 처음 도달하는 쓰기 요청을 지칭한다.
본 실시예에서는 소정 단위로 메모리 장치의 저장 공간을 그룹화한다(S110). 저장 공간을 그룹화하는 방법은 실시예에 따라 다양할 수 있다. 예를 들어 하나 또는 둘 이상의 인접한 워드라인을 하나의 그룹으로 설정할 수 있다.
다음으로 제 1 쓰기 요청된 데이터를 플래시 메모리 장치에 기록한다. 만일 제 1 쓰기 요청된 데이터의 크기가 하나의 그룹에 포함된 페이지 개수를 초과한다면 둘 이상의 연속된 그룹에 제 1 쓰기 요청된 데이터를 저장한다(S120).
제 2 쓰기 요청이 있으면 제 2 쓰기 요청된 데이터의 주소와 제 1 쓰기 요청된 데이터의 주소가 연속되는지 확인한다(S130).
확인 결과 주소가 연속된다면 제 2 쓰기 요청된 데이터는 제 1 쓰기 요청된 데이터가 마지막으로 기록된 페이지의 다음 페이지부터 기록될 수 있다.
이때 제 1 쓰기 요청에 의해 마지막으로 기록된 데이터가 위치하는 그룹(현재 그룹)에 남은 페이지가 있다면 남은 페이지를 포함하여 그 다음의 하나 또는 둘 이상의 그룹에 포함된 페이지에 순차적으로 제 2 쓰기 요청된 데이터를 기록한다.
그러나 제 1 쓰기 요청을 처리한 이후 현재 그룹에 남은 페이지가 없다면 다음의 하나 또는 둘 이상의 연속된 그룹에 제 2 쓰기 요청된 데이터를 기록한다(S140).
확인 결과 주소가 연속되지 않는다면 제 2 쓰기 요청된 데이터는 제 1 쓰기 요청에 의해 마지막으로 기록된 데이터가 위치하는 그룹(현재 그룹)과 다른 그룹, 예를 들어 현재 그룹의 다음 그룹부터 기록되기 시작한다. 따라서 제 1 쓰기 요청에 의해 데이터가 마지막으로 기록된 그룹에 페이지가 남아 있는 경우에도 이를 건너뛰게 된다.
도 4는 본 발명의 일 실시예에 의한 메모리 장치에서 데이터 쓰기 방법을 설명하는 도면이다.
도 4는 호스트로부터 10페이지, 10페이지, 12페이지 크기의 데이터에 대한 쓰기 요청이 순차적으로 제공되는 것을 가정한다. 또한 쓰기 요청 0과 쓰기 요청 1의 데이터 주소는 연속되고, 쓰기 요청 1과 쓰기 요청 2의 데이터 주소는 연속되는 것으로 가정한다.
먼저 쓰기 요청 0에 의한 데이터 0이 페이지 0번부터 9번까지 순차적으로 기록된다.
다음으로 쓰기 요청 1에 의한 데이터 1이 페이지 10번부터 19번까지 순차적으로 기록된다. 종래 기술의 경우에는 데이터 0이 마지막으로 기록된 워드라인 그룹 2번에서 기록되고 남은 12번, 13번 페이지를 건너뛰게 되지만 본 발명의 경우에는 데이터 0과 데이터 1의 주소가 연속되므로 건너뛰기를 하지 않는다. 따라서 워드라인 그룹 2의 12 번, 13번 페이지에도 데이터 1의 일부가 기록된다.
마지막으로 쓰기 요청 2에 의한 데이터 2가 20번부터 31번 페이지에 기록된다. 종래의 경우에는 데이터 1이 기록되고 남은 20, 21, 24, 25번 페이지를 건너뛰지만 본 발명의 경우에는 데이터 1과 데이터 2의 주소가 연속되므로 이들을 건너뛰지 않는다. 따라서 20, 21, 24, 25번 페이지에도 데이터 2의 일부가 기록된다.
도 5a와 도 5b는 본 발명의 일 실시예에 있어서 쓰기 요청을 처리하는 도중 갑작스런 전원 페일이 발생하는 경우에 대한 대응책을 설명하는 도면이다.
도 5a는 쓰기 요청 0에 대한 데이터를 8번 페이지에 쓰는 도중에 갑작스런 전원 페일이 발생한 경우를 나타낸다.
8번 페이지는 워드라인 그룹(WG1)에 속하는 MSB 페이지로서 그에 대응하는 LSB 페이지는 페이지 2번이다. 따라서 8번 페이지에 페일이 발생하는 경우 2번 페이지에도 페일이 발생할 가능성이 높다.
2번 페이지와 8번 페이지 사이의 페이지들은 2 번 페이지로부터 연속되는 데이터로서 2번 페이지에 손상이 발생한 경우 2번과 8번 페이지 사이의 데이터들 역시 무의미할 수 있다. 따라서 본 실시예에서는 8번 페이지에서 전원 페일이 발생한 경우 2번에서 8번까지의 페이지를 모두 손상된 페이지로 처리한다.
이후 손상된 페이지를 무시할 것인지 아니면 기존에 기록되었던 데이터로 대체할 것인지는 페일 처리 정책에 따라 달라질 수 있다. 본 실시예에서는 기존에 저장되어 있다가 무효 처리된 2번 ~ 8번 페이지를 새로운 데이터 대신 제공함으로써 전원 페일에 대한 처리를 수행한다.
도 5b는 쓰기 요청 0을 처리하고 쓰기 요청 1을 처리하는 도중에 전원 페일이 발생한 경우에 대한 처리 방법을 나타낸다. 이때 데이터 0과 데이터 1은 주소가 연속된다. 이 경우 요청 1의 데이터 1은 전술한 바와 같이 페이지를 건너뛰지 않고 기록된다.
도시된 실시예에서는 데이터 1의 세 번째 페이지(페이지 12번)에서 전원 페일이 발생하였다. 12번 페이지는 워드라인 그룹 2번의 MSB 페이지로서 이에 대응하는 LSB 페이지인 6번 페이지와 쌍을 이룬다.
전술한 바와 같이 12번 페이지에서의 전원 페일이 발생하면 6번 페이지의 데이터도 손상될 가능성이 높다. 본 실시예의 경우 데이터 0과 데이터 1이 연속된 주소의 데이터로서 건너뛰기를 하지 않고 데이터가 기록되는 점에서 그 사이의 7번 페이지 ~ 11번 페이지도 모두 손상된 페이지로 처리한다.
이후 손상된 페이지를 무시할 것인지 아니면 기존에 기록되었던 데이터로 대체할 것인지는 페일 처리 정책에 따라 달라질 수 있다. 본 실시예에서는 도 5a에서와 같이 기존에 기록되었다가 무효 처리된 6번 ~ 12번 페이지를 새로운 데이터 대신 제공함으로써 전원 페일에 대한 처리를 수행한다.
도 6은 본 발명의 일 실시예에 의한 메모리 제어 장치(110) 및 이를 포함하는 시스템(100)을 도시하는 블록도이다.
본 실시예 의한 메모리 제어 장치(110)는 호스트(10)와 메모리 장치(120) 사이에서 호스트(10)로부터의 요청에 따라 메모리 장치(120)를 제어한다. 본 실시예에 의한 메모리 제어 장치(110)는 도 3에 도시된 단계들이 프로세서로 읽을 수 있는 프로그램 코드로 변환되어 저장되는 기억장치(112)와 기억장치(112)에 저장된 코드를 읽어 도 3에 도시된 바와 같은 기능을 수행하는 프로세서(111)를 포함할 수 있다.
또한 본 실시예에 의한 메모리 제어 장치(110)는 도 5a 및 도 5b와 관련하여 설명한 전원 페일 처리 단계들을 더 수행할 수 있다. 이 경우 전원 페일 처리를 위한 프로그램 코드들이 기억 장치(112)에 추가로 저장되고 프로세서(111)는 기억 장치(112)에서 이를 읽어 전원 페일 처리를 위해 메모리 장치(120)를 제어할 수 있다.
도 7은 본 발명의 다른 실시예에 의한 메모리 제어 장치(200)를 도시하는 블록도이다.
본 실시예에 의한 메모리 제어 장치(200)는 저장 공간 관리부(210), 주소 확인부(220), 데이터 기록 제어부(230)를 포함한다.
저장 공간 관리부(210)는 메모리 장치의 저장 공간을 일정한 단위로 그룹화하는 기능을 수행한다. 저장 공간 관리부(210)는 메모리 장치에서 하나 또는 둘 이상의 인접한 워드라인에 연결된 저장 공간을 하나의 그룹으로 설정할 수 있다. 또한 저장 공간 관리부는 메모리 장치의 저장 공간의 기본 단위를 페이지로 하여 관리할 수 있다. 저장 공간을 그룹으로 나누는 방법은 전술한 바와 같이 실시예에 따라 다양하게 변경될 수 있다.
주소 확인부(220)는 호스트로부터 쓰기 요청이 있는 경우 현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 주소와 연속되는지 확인한다.
데이터 기록 제어부(230)는 호스트로부터의 쓰기 요청에 따라 메모리 장치에 데이터를 저장한다. 이때 데이터 기록 제어부(230)는 주소 확인부(220)에서 확인된 주소의 연속 여부에 따라 기록 방식을 달리 제어한다.
만일 주소가 연속되지 않는 경우라면 현재 쓰기 요청된 데이터는 이전 쓰기 요청된 데이터가 속하는 그룹과 다른 그룹에 기록된다. 예를 들어 이전 쓰기 요청된 데이터가 속하는 그룹에 잔여 페이지가 있더라도 이를 건너뛴다.
만일 주소가 연속되는 경우라면 현재 쓰기 요청된 데이터는 이전 쓰기 요청된 데이터에 연속하여 기록된다. 예를 들어 이전 쓰기 요청된 데이터가 속하는 그룹에 잔여 페이지가 있는 경우 현재 쓰기 요청된 데이터는 이 잔여 페이지에도 기록될 수 있다.
이상의 설명은 본 발명의 실시예에 대한 설명을 위한 것이나 본 발명의 권리범위를 한정하는 것은 아니다. 본 발명의 권리범위는 청구범위의 기재에 의한 문언적 범위와 그 균등 범위에 의해 정해진다.
10: 호스트
100: 시스템
110, 200: 메모리 제어 장치
111: 프로세서
112: 기억 장치
120: 메모리 장치
210: 저장 공간 관리부
220: 주소 확인부
230: 데이터 기록 제어부
100: 시스템
110, 200: 메모리 제어 장치
111: 프로세서
112: 기억 장치
120: 메모리 장치
210: 저장 공간 관리부
220: 주소 확인부
230: 데이터 기록 제어부
Claims (14)
- 메모리 장치 내의 저장 공간을 다수의 그룹으로 나누어 관리하되, 현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속되는지 확인하고, 상기 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하며 상기 주소가 연속하는 경우 상기 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터에 연속하여 기록하는 메모리 제어 장치.
- 청구항 1에 있어서, 상기 그룹은 하나 또는 둘 이상의 워드라인에 연결된 페이지들을 포함하는 메모리 제어 장치.
- 청구항 2에 있어서, 상기 주소가 연속하는 경우 상기 이전에 쓰기 요청에 의해 마지막으로 기록된 데이터가 위치하는 그룹에 빈 페이지가 존재하면 상기 현재 쓰기 요청된 데이터가 상기 빈 페이지에 기록될 수 있도록 제어하는 메모리 제어 장치.
- 청구항 3에 있어서, 상기 메모리 장치는 비휘발성 메모리 장치인 메모리 제어 장치.
- 청구항 4에 있어서, 상기 메모리 장치는 멀티 레벨 셀을 포함하는 메모리 제어 장치.
- 메모리 장치와 상기 메모리 장치의 저장 공간을 다수의 그룹으로 구분하여 제어하는 프로세서를 포함하되, 상기 프로세서는
현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속되는지 확인하고, 상기 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하며, 상기 주소가 연속하는 경우 상기 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터에 연속하여 기록하는 시스템. - 청구항 6에 있어서, 상기 그룹은 상기 메모리 장치의 하나 또는 둘 이상의 워드라인에 연결된 페이지들을 포함하는 시스템.
- 청구항 7에 있어서, 상기 프로세서는 상기 주소가 연속하는 경우 상기 이전의 쓰기 요청에 의해 마지막으로 기록된 데이터가 위치하는 그룹에 빈 페이지가 존재하면 상기 현재 쓰기 요청된 데이터가 상기 빈 페이지에 기록될 수 있도록 하는 시스템.
- 메모리 장치의 저장 공간을 다수의 그룹으로 구분하여 제어하는 프로세서로 실행할 수 있는 단계들을 저장하는 저장 매체로서, 상기 단계들은
현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속되는지 확인하는 단계;
상기 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하는 단계 및
상기 주소가 연속하는 경우 상기 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터에 연속하여 기록하는 단계
를 포함하는 프로세서로 실행할 수 있는 단계들을 저장하는 저장 매체. - 청구항 9에 있어서, 상기 그룹은 상기 메모리 장치의 하나 또는 둘 이상의 워드라인에 연결된 페이지들을 포함하는 프로세서로 실행할 수 있는 단계들을 저장하는 저장 매체.
- 청구항 10에 있어서, 상기 주소가 연속하는 경우 상기 이전의 쓰기 요청에 의해 마지막으로 기록된 데이터가 위치하는 그룹에 빈 페이지가 존재하면 상기 현재 쓰기 요청된 데이터는 상기 빈 페이지에 기록될 수 있는 프로세서로 실행할 수 있는 단계들을 저장하는 저장 매체.
- 메모리 장치의 저장 공간을 다수의 그룹으로 구분하여 제어하는 방법으로서,
현재 쓰기 요청된 데이터의 주소가 이전에 쓰기 요청된 데이터의 주소와 연속하는지 확인하는 단계;
상기 주소가 연속하지 않는 경우 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터가 저장된 그룹과 상이한 그룹에 기록하는 단계 및
상기 주소가 연속하는 경우 상기 현재 쓰기 요청된 데이터를 상기 이전에 쓰기 요청된 데이터에 연속하여 기록하는 단계
를 포함하는 메모리 제어 방법. - 청구항 12에 있어서, 상기 그룹은 상기 메모리 장치의 하나 또는 둘 이상의 워드라인에 연결된 페이지들을 포함하는 메모리 제어 방법.
- 청구항 13에 있어서, 상기 주소가 연속하는 경우 상기 이전의 쓰기 요청에 의해 마지막으로 기록된 데이터가 위치하는 그룹에 빈 페이지가 존재하면 상기 현재 쓰기 요청된 데이터는 상기 빈 페이지에 기록될 수 있는 메모리 제어 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120134286A KR20140067258A (ko) | 2012-11-26 | 2012-11-26 | 메모리 제어 장치 및 그 제어 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120134286A KR20140067258A (ko) | 2012-11-26 | 2012-11-26 | 메모리 제어 장치 및 그 제어 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20140067258A true KR20140067258A (ko) | 2014-06-05 |
Family
ID=51123535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120134286A KR20140067258A (ko) | 2012-11-26 | 2012-11-26 | 메모리 제어 장치 및 그 제어 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20140067258A (ko) |
-
2012
- 2012-11-26 KR KR1020120134286A patent/KR20140067258A/ko not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10255192B2 (en) | Data storage device and data maintenance method thereof | |
US9645896B2 (en) | Data storage device and flash memory control method | |
EP2778888B1 (en) | Selecting between non-volatile memory units having different minimum addressable data unit sizes | |
US8909986B2 (en) | Data storing method for solid state drive to preserve data integrity after power failure | |
US20100281202A1 (en) | Wear-leveling and bad block management of limited lifetime memory devices | |
US20100332922A1 (en) | Method for managing device and solid state disk drive utilizing the same | |
US10007446B2 (en) | Method, apparatus, and storage medium for writing data into persistent storage device | |
US20130238835A1 (en) | Burning system and method | |
US10073771B2 (en) | Data storage method and system thereof | |
US20180322041A1 (en) | Data storage device and method for operating data storage device | |
US20150103593A1 (en) | Method of Writing Data in Non-Volatile Memory and Non-Volatile Storage Device Using the Same | |
CN107924700B (zh) | 自适应多阶段擦除 | |
US20130159605A1 (en) | Data merging method for non-volatile memory module, and memory controller and memory storage device using the same | |
US8634243B2 (en) | Data writing method and data storage device | |
TWI692688B (zh) | 快閃記憶體控制器及相關電子裝置 | |
US8819332B2 (en) | Nonvolatile storage device performing periodic error correction during successive page copy operations | |
US20190196959A1 (en) | Memory system and operating method thereof | |
US20180181476A1 (en) | Bad page management in storage devices | |
US11360885B2 (en) | Wear leveling based on sub-group write counts in a memory sub-system | |
CN107193485B (zh) | 储存装置、其控制单元、及可用于储存装置的数据储存方法 | |
US20120159280A1 (en) | Method for controlling nonvolatile memory apparatus | |
US20230143926A1 (en) | Dynamic Controller Buffer Management and Configuration | |
US20150074492A1 (en) | Memory system and memory controller | |
JP2019114031A (ja) | メモリシステム及び制御方法 | |
US9501373B2 (en) | Data storage device and operating method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |