KR20090105143A - 메모리 시스템 및 그것의 마모도 관리 방법 - Google Patents

메모리 시스템 및 그것의 마모도 관리 방법 Download PDF

Info

Publication number
KR20090105143A
KR20090105143A KR1020080030423A KR20080030423A KR20090105143A KR 20090105143 A KR20090105143 A KR 20090105143A KR 1020080030423 A KR1020080030423 A KR 1020080030423A KR 20080030423 A KR20080030423 A KR 20080030423A KR 20090105143 A KR20090105143 A KR 20090105143A
Authority
KR
South Korea
Prior art keywords
segment
writes
segments
wear
unit
Prior art date
Application number
KR1020080030423A
Other languages
English (en)
Other versions
KR101437123B1 (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 삼성전자주식회사
Priority to KR1020080030423A priority Critical patent/KR101437123B1/ko
Priority to US12/385,160 priority patent/US8108592B2/en
Priority to TW098110889A priority patent/TWI492225B/zh
Publication of KR20090105143A publication Critical patent/KR20090105143A/ko
Application granted granted Critical
Publication of KR101437123B1 publication Critical patent/KR101437123B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0035Evaluating degradation, retention or wearout, e.g. by counting writing cycles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Semiconductor Memories (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 메모리 시스템 및 그것의 마모도 관리 방법에 관한 것이다. 본 발명에 따른 메모리 시스템은 제 1 단위로 데이터를 입출력하는 가변 저항 메모리; 및 상기 제 1 단위와 다른 제 2 단위로 상기 가변 저항 메모리의 마모도를 관리하는 변환 계층을 포함한다. 본 발명에 의하면 메모리 시스템의 성능 저하 없이 메모리 시스템의 수명이 증가된다.

Description

메모리 시스템 및 그것의 마모도 관리 방법{MEMORY SYSTEM AND WEAR LEVELING METHOD THEREOF}
본 발명은 메모리 시스템에 관한 것으로, 더욱 상세하게는 메모리 시스템 및 그것의 마모도 관리 방법에 관한 것이다.
반도체 메모리 장치는 데이터를 저장하도록 구성된다. 반도체 메모리 장치는 크게 휘발성(volatile) 메모리 장치와 불휘발성(nonvolatile) 메모리 장치로 나뉜다. 불휘발성 메모리 장치에 저장된 데이터는 전원 공급이 중단되더라도 소멸되지 않는다. 불휘발성 메모리 장치는 저 전력으로도 데이터를 유지할 수 있기 때문에, 휴대용 기기의 저장 매체로서 각광받고 있다. 불휘발성 메모리 장치의 일종으로서 플래시 메모리(Flash memory), PRAM(Phase change RAM), FeRAM(Ferroelectric RAM), 그리고 MRAM(Magnetic RAM) 등이 있다.
플래시 메모리 장치는 복수의 블록(block)을 포함한다. 각각의 블록은 복수의 페이지(page)를 포함한다. 플래시 메모리 장치의 동작은 프로그램(program), 읽기(read) 및 소거(erase) 동작으로 구분된다. 프로그램 및 읽기 동작은 페이지 단위로 수행되고, 소거 동작은 블록 단위로 수행된다.
플래시 메모리 장치는 디스크(disk) 장치와는 달리 프로그램 동작 전에 소거 동작이 선행되어야 한다(erase before program). 플래시 메모리 장치는 겹쳐쓰기(overwrite)를 지원하지 않기 때문이다. 예를 들어, 플래시 메모리 장치의 데이터는 소거 동작에 의해 '1'로 초기화되고, 프로그램 동작에 의해 '0'으로 변환된다. 즉, 일부 페이지에 저장된 데이터만이 '0'에서 '1'로 초기화될 수 없다. 데이터를 '0'에서 '1'로 초기화시키기 위해서는 블록 전체에 대한 소거 동작이 수행되어야 한다.
플래시 메모리 장치 내의 각 메모리 블록은 소거될 수 있는 한계 횟수를 가진다. 그런데, 사용자 패턴 또는 데이터 패턴에 따라 플래시 메모리 장치의 특정 블록에 프로그램 동작 및 소거 동작이 집중될 수 있다. 프로그램 동작 및 소거 동작은 플래시 메모리 장치를 마모시킨다. 마모도가 증가하면, 데이터가 프로그램 및 소거되는데 더 긴 시간이 걸리고 오류가 발생할 확률이 증가한다. 마모가 심해지면 단위 셀의 데이터 저장 능력이 완전히 상실될 수 있다. 따라서, 각 블록에 대한 소거 횟수를 평준화할 것이 요구된다.
플래시 메모리 장치를 관리하는 플래시 소프트웨어는 블록들의 마모도가 균등하게 유지되도록 조정한다. 이를 마모도 관리(wear leveling)라 한다. 플래시 메모리 장치의 수명을 증가시키기 위해서는 프로그램 동작 및 소거 동작이 플래시 메모리 장치 전체에 대하여 고르게 수행되어야 한다. 플래시 메모리 장치의 특정 부분에 대하여 프로그램 및 소거 동작이 수행될 경우, 플래시 메모리 장치의 수명이 급속하게 감소한다. 반면에, 프로그램 및 소거 동작이 플래시 메모리 장치 내의 유 닛들에 대해 균등하게 수행될 경우, 플래시 메모리 장치의 수명이 증가한다.
그러나, PRAM, FeRAM, MRAM 등과 같은 가변 저항 메모리에서는 쓰기 전 소거 동작이 요구되지 않는다. 즉, 가변 저항 메모리는 겹쳐쓰기(overwrite)를 지원한다. 여기서, 가변 저항 메모리에 있어서, 메모리 셀 저항의 크기에 의해 저장된 데이터가 구별된다. 겹쳐쓰기라 함은 이미 데이터가 존재하는 곳에 새로운 데이터를 기록하는 것을 의미한다. 겹쳐쓰기에 의해 '0' 데이터는 '1' 데이터로 변경되거나, '1' 데이터는 '0' 데이터로 변경된다. PRAM과 같은 가변 저항 메모리에서는 워드(word) 단위로 기입 동작이 수행되기 때문에 가변 저항 메모리는 워드 단위로 마모된다. 결국, 가변 저항 메모리의 워드 단위 마모 특성을 고려한 마모도 관리 방법이 요구된다.
본 발명은 상술한 문제점을 해결하기 위하여 제안된 것으로, 본 발명의 목적은 성능 저하 없이 수명이 향상된 메모리 시스템을 제공하는 데 있다.
본 발명의 다른 목적은 메모리 시스템의 성능 저하를 야기시키지 않고도 메모리 시스템의 수명을 향상시키는 마모도 관리 방법을 제공하는 데 있다.
본 발명에 따른 메모리 시스템은 제 1 단위로 데이터를 입출력하는 가변 저항 메모리; 및 상기 제 1 단위와 다른 제 2 단위로 상기 가변 저항 메모리의 마모도를 관리하는 변환 계층을 포함한다.
실시 예로서, 상기 제 2 단위는 상기 제 1 단위보다 큰 것을 특징으로 한다. 상기 제 1 단위는 워드 단위이고, 상기 제 2 단위는 복수의 워드 단위를 포함하는 세그먼트 단위인 것을 특징으로 한다. 상기 변환 계층은 맵핑 테이블을 포함하며, 상기 맵핑 테이블은 상기 복수의 세그먼트의 맵핑 정보, 상기 세그먼트 각각의 기입 횟수, 및 상기 세그먼트 각각의 시프트 횟수를 저장한다. 상기 변환 계층은 상기 세그먼트 각각의 기입 횟수를 참조하여 상기 가변 저항 메모리의 마모도를 관리한다. 상기 변환 계층은 가장 큰 기입 횟수를 가지는 세그먼트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 세그먼트에 저장된 데이터를 교환한다. 상기 변환 계층은 상기 세그먼트들에 저장된 데이터들이 교환될 때, 상기 맵핑 테이블 내의 상기 복수의 세그먼트의 맵핑 정보를 갱신한다.
다른 실시 예로서, 상기 변환 계층은 상기 세그먼트들에 저장된 데이터들이 교환될 때, 상기 교환된 세그먼트 각각에 포함된 워드들을 시프트시킨다. 상기 변환 계층은 상기 교환된 세그먼트 각각에 포함된 워드들이 시프트될 때, 상기 맵핑 테이블 내의 상기 세그먼트 각각의 시프트 횟수를 갱신한다.
다른 실시 예로서, 상기 변환 계층은 상기 세그먼트 각각의 기입 횟수를 검출하여, 가장 큰 기입 횟수와 가장 작은 기입 횟수의 차이가 기준치 이상인 경우, 가장 큰 기입 횟수를 가지는 세그먼트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 세그먼트에 저장된 데이터를 교환한다. 상기 기준치는 변경 가능한 것을 특징으로 한다.
본 발명은 메모리 시스템의 마모도 관리 방법에 관한 것이다. 상기 메모리 시스템은 복수의 워드를 각각 포함하는 복수의 세그먼트를 가지는 가변 저항 메모리와 상기 세그먼트 각각의 마모도를 평준화시키기 위한 변환 계층을 포함하되, 상기 가변 저항 메모리는 상기 워드 단위로 겹쳐쓰기(overwrite)를 수행하고, 상기 메모리 시스템의 마모도 관리 방법은 상기 세그먼트 각각의 마모도 정보를 검출하는 단계; 및 상기 마모도 정보에 따라, 상기 세그먼트들에 저장된 데이터들을 교환하는 단계를 포함한다.
실시 예로서, 상기 교환된 세그먼트 각각에 포함된 워드들을 시프트시키는 단계를 더 포함한다. 상기 변환 계층은 상기 세그먼트 각각의 기입 횟수를 참조하여 상기 가변 저항 메모리의 마모도를 관리한다. 상기 변환 계층은 가장 큰 기입 횟수를 가지는 세그먼트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 세그먼트에 저장된 데이터를 교환한다. 상기 변환 계층은 상기 세그먼트 각각의 기입 횟수를 검출하여, 가장 큰 기입 횟수와 가장 작은 기입 횟수의 차이가 기준치 이상인 경우, 가장 큰 기입 횟수를 가지는 세그먼트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 세그먼트에 저장된 데이터를 교환한다.
본 발명에 따른 메모리 시스템은 복수의 세그먼트 단위로 마모도를 관리한다. 본 발명에 의하면 메모리 시스템의 성능 저하 없이 메모리 시스템의 수명이 증가된다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 실시 예들을 첨부된 도면을 참조하여 설명한다. 이하에서는 PRAM 장치가 예로서 설명된다. 단, 본 발명의 범위는 이에 한정되지 않는다. 본 발명은 MRAM, FeRAM 등과 같이, 겹쳐쓰기(overwrite)가 지원되는 임의의 가변 저항 메모리에 적용될 수 있다.
본 발명에 따른 PRAM 장치는 복수의 세그먼트(segment)를 포함한다. 각각의 세그먼트는 복수의 워드(word)를 포함한다. 본 발명에 따른 PRAM 장치는 세그먼트 단위로 마모도 관리를 수행한다. 따라서, 워드 단위로 마모도 관리를 수행할 때보다 메모리 시스템에 부가되는 오버헤드가 감소된다. 관리될 기입 정보의 양이 감소되기 때문이다. 또한, 세그먼트 내의 워드들을 시프트함으로써 워드들 사이의 마모도가 관리될 수 있다.
도 1은 본 발명에 따른 메모리 시스템을 보여주는 블록 도이다. 도 1을 참조하면, 메모리 시스템(100)은 중앙 처리 장치(110), 주 기억 장치(120), 그리고 PRAM 장치(130)를 포함한다. 실선은 데이터(data) 및 명령(command) 등이 전달되는 시스템 버스(system bus)를 나타낸다.
PRAM 장치(130)는 불휘발성 메모리 장치로서, 데이터를 저장하기 위해 사용된다. 전원 공급이 중단된 경우에도 PRAM 장치(130)에 저장된 데이터는 소멸되지 않는다. PRAM 장치(130)에 저장된 데이터는 주 기억 장치(120)에 로드(load)된 후, 중앙 처리 장치(110)에 의해 처리된다. 중앙 처리 장치(110)에 의해 처리된 데이터는 PRAM(130)에 저장된다.
도 2는 도 1에 도시된 메모리 시스템의 소프트웨어 계층 구조를 보여주는 블록 도이다. 도 2를 참조하면, 메모리 시스템은 애플리케이션(210), 파일 시스템(220), 변환 계층(230), 그리고 PRAM 장치(240) 순으로 소프트웨어 계층 구조를 갖는다.
PRAM 장치(240)는 복수의 세그먼트(Segment_1 ~ Segment_n)를 포함한다. 후술될 바와 같이, 각각의 세그먼트는 복수의 워드를 포함한다. PRAM 장치(240)에 있어서, 워드 단위로 입출력 동작이 수행된다. PRAM 장치(240) 내의 워드에 접근하기 위해서는 해당 워드가 몇 번째 세그먼트에 포함되어 있는지에 관한 정보와 해당 세그먼트의 몇 번째에 위치하는지에 관한 정보가 요구된다. 여기서, 전자에 관한 정보는 세그먼트 번호(segment number)라 하고 후자에 관한 정보는 오프셋 번호(offset number)라 한다. 세그먼트 번호는 세그먼트를 지시하고, 오프셋 번호는 세그먼트 내의 워드를 지시한다. 예를 들어, 세그먼트 번호가 3이고 오프셋 번호가 5인 경우, 이는 세 번째 세그먼트 내의 다섯 번째 워드를 지시한다.
세그먼트 번호 및 오프셋 번호는 파일 시스템(220)으로부터 변환 계층(230)으로 각각 전달될 수 있다. 또는, 세그먼트 번호 및 오프셋 번호는 파일 시스템(220)으로부터 변환 계층(230)으로 함께 전달될 수 있다. 예를 들어, 파일 시스템(220)으로부터 변환 계층(230)으로 세그먼트 및 오프셋 번호 26이 전달된 경우, 변환 계층(230)은 세그먼트 및 오프셋 번호 26을 세그먼트 내의 워드 개수(예를 들어, 5)로 나눈다. 여기서, 몫은 세그먼트 번호를 나타내고, 나머지는 오프셋 번호를 나타낸다. 26 나누기 5의 몫은 5이고 나머지는 1이기 때문에 이는 다섯 번째 세 그먼트 내의 첫 번째 워드를 지시한다.
애플리케이션(210), 파일 시스템(220), 및 변환 계층(230)은 주 기억 장치(도 1 참조, 120)에 로드되어 중앙 처리 장치(도 1 참조, 110)에 의해 수행된다. 애플리케이션(210)은 사용자의 입력에 응답하여 데이터를 처리한다. 애플리케이션(210)은 데이터를 처리하고, 처리된 데이터를 저장하기 위한 명령을 파일 시스템(220)에 전달한다. 파일 시스템(220)은 애플리케이션(210)으로부터의 명령에 응답하여, 논리 세그먼트 번호(Logical Segment Number, 이하 'LSN') 및 오프셋 번호(Offset number)를 변환 계층(230)에 전달한다. 변환 계층(230)은 논리 세그먼트 번호(LSN) 및 오프셋 번호를 참조하여 PRAM 장치(240) 내의 워드를 선택한다. 이러한 기능을 수행하기 위해서, 변환 계층(230)은 맵핑 테이블(231)을 참조한다. 맵핑 테이블(231)의 형식은 후술 될 도 4를 참조하여 자세히 설명될 것이다.
도 3은 도 2에 도시된 PRAM 장치의 세그먼트 구조를 보여주는 도면이다. 도 3을 참조하면, 세그먼트는 복수의 워드(Word_1 ~ Word_m)를 포함한다. PRAM 장치(도 2 참조, 240)는 워드 단위로 입출력을 수행한다. 따라서, 각각의 워드는 서로 다르게 마모될 수 있다. 본 발명에 따른 실시 예에 있어서, 워드의 크기는 2 바이트(byte)인 것으로 가정된다. 단, 워드의 크기는 필요에 따라 증가되거나 감소될 수 있다.
본 발명에 있어서, 세그먼트 단위로 마모도 관리가 수행된다. 상술한 바와 같이, 워드 단위로 마모도를 관리할 경우, 각각의 워드의 기입 횟수를 관리해야 하기 때문에 메모리 시스템에 심각한 오버헤드가 부과된다. 본 발명에 있어서 세그먼 트 단위로 마모도 관리가 수행되기 때문에 메모리 시스템에 부과되는 오버헤드가 감소된다. 그러나, 이러한 경우 세그먼트 내의 워드 사이의 마모도 편차가 문제될 수 있다. 따라서, 본 발명에 따른 실시 예에 있어서 세그먼트가 교환될 때마다 세그먼트 내의 워드를 시프트(shift)시킨다. 이렇게 함으로써, 세그먼트 내의 워드 사이의 마모도 불균형이 완화된다. 워드가 시프트되는 동작은 후술될 도 7을 참조하여 자세히 설명될 것이다.
도 4는 도 2에 도시된 맵핑 테이블(231)의 구조를 보여주는 표이다. 도 4를 참조하면, 맵핑 테이블은 논리 세그먼트 번호(Logical Segment Number, LSN), 물리 세그먼트 번호(Physical Segment Number, PSN), 시프트 횟수(Shift count), 기입 횟수(Write count)로 구성된다. 각각의 논리 세그먼트 번호(LSN)에는 물리 세그먼트 번호(PSN), 시프트 횟수, 기입 횟수가 대응된다.
시프트 횟수는 물리 세그먼트 내의 워드들이 몇 번 시프트되었는지에 관한 정보이다. 기입 횟수는 물리 세그먼트에 대하여 수행된 기입 동작의 횟수를 나타낸다. 또는, 기입 횟수는 쓰기 요청되는 워드의 개수가 될 수 있다. 예를 들어, 물리 세그먼트 내의 3개의 워드에 대한 쓰기 요청이 있는 경우, 기입 횟수는 3만큼 증가될 수 있다.
도 4를 참조하면, 제1 논리 세그먼트(LSN 1)는 제15 물리 세그먼트(PSN 15)에 대응된다. 제15 물리 세그먼트(PSN 15)는 12의 시프트 횟수(Shift count 12)를 갖는다. 이는 제15 물리 세그먼트(PSN 15) 내의 워드들이 12번 시프트 되었음을 의미한다. 따라서, 제15 물리 세그먼트(PSN 15) 내의 첫 번째 워드는 12번째에 위치 할 것이다. 제15 물리 세그먼트(PSN 15)는 36의 기입 횟수(Write count 36)를 갖는다. 이는 제15 물리 세그먼트(PSN 15)에 대하여 36번의 기입 동작이 수행되었음을 의미한다.
도 5는 본 발명에 따른 마모도 관리 방법을 설명하기 위한 흐름도이다. 본 발명에 따른 마모도 관리 방법은 다섯 단계로 구분된다. 본 발명에 따른 마모도 관리 방법이 수행되는 시기는 임의로 결정될 수 있다. 예를 들어, 본 발명에 따른 마모도 관리 방법은 PRAM 장치(도 2 참조, 240)에 대한 기입 동작 수행 후에 수행될 수 있다.
S110 단계에서, 변환 계층(도 2 참조, 230)은 맵핑 테이블(도 2 참조, 231)을 참조하여 물리 세그먼트 각각의 기입 횟수를 스캔한다.
S120 단계에서, 변환 계층(230)은 가장 큰 기입 횟수(Maximun Write count)와 가장 작은 기입 횟수(Minimun Write count)의 차이가 기준치(Reference value) 이상인지 여부를 판단한다. 즉, 변환 계층(230)은 가장 큰 기입 횟수에서 가장 작은 기입 횟수를 뺀 값(Write count difference)과 기준치(Reference value)를 비교한다. 가장 큰 기입 횟수에서 가장 작은 기입 횟수를 뺀 값이 기준치 미만일 경우에는 마모도 관리 동작은 더 이상 진행되지 않고 종료된다. 반면에, 가장 큰 기입 횟수에서 가장 작은 기입 횟수를 뺀 값이 기준치 이상일 경우에는 S130 단계가 수행된다. 기준치는 필요에 따라 임의의 값을 가질 수 있다. 예를 들어, 기입 횟수의 편차를 줄이기 위해서는 기준치는 작게 설정될 것이다.
S130 단계에서, 변환 계층(230)은 가장 큰 기입 횟수를 가지는 물리 세그먼 트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 물리 세그먼트에 저장된 데이터를 교환(swap)한다. 가장 큰 기입 횟수를 가지는 물리 세그먼트는 가장 많이 마모되고 가장 작은 기입 횟수를 가지는 물리 세그먼트는 가장 조금 마모된 것으로 판단된다. 또한, 가장 큰 기입 횟수를 가지는 물리 세그먼트에는 빈번히 갱신되는 데이터가 저장되고 가장 작은 기입 횟수를 가지는 물리 세그먼트에는 드물게 갱신되는 데이터가 저장된 것으로 판단된다.
상기 교환 동작에 의해 빈번히 갱신되는 데이터는 가장 조금 마모된 물리 세그먼트에 저장되고, 드물게 갱신되는 데이터는 가장 많이 마모된 물리 세그먼트에 저장된다. 따라서, 물리 세그먼트들 사이의 마모도가 균등하게 유지된다.
S140 단계에서, 변환 계층(230)은 상기 교환된 물리 세그먼트들에 포함된 워드들을 시프트(shift)시킨다. 상기 S130 단계에 의해 물리 세그먼트들 사이의 마모도가 균등하게 되는 경우에도 물리 세그먼트 내의 워드들 사이의 마모도는 균등하지 않을 수 있기 때문이다. 본 발명에 따른 실시 예에 있어서, 물리 세그먼트의 교환이 이루어질 때마다 각각의 물리 세그먼트 내의 워드들을 시프트시킴으로써 워드들 사이의 마모도가 균등하게 유지될 수 있다. 워드들이 시프트되는 방법은 후술될 도 7을 참조하여 자세히 설명될 것이다.
S150 단계에서, 변환 계층(230)은 맵핑 테이블(231)을 갱신한다. S130 단계에서 물리 세그먼트들에 저장된 데이터들이 교환되었기 때문에, 맵핑 테이블(231) 상의 논리 세그먼트 번호(LSN)와 물리 세그먼트 번호(PSN)의 대응 관계가 갱신된다. 또한, S140 단계에서 물리 세그먼트 내의 워드들이 시프트되었기 때문에, 시프 트 횟수(shift count)도 증가된다. 마지막으로, 물리 세그먼트 각각의 기입 횟수(write count)도 증가된다.
이와 같은 동작을 통해, 본 발명에 따른 메모리 시스템의 마모도 관리 방법이 수행된다. 요약하면, 본 발명에 따른 PRAM 장치는 복수의 세그먼트(segment)를 포함한다. 각 세그먼트는 복수의 워드(word)를 포함한다. 본 발명에 따른 PRAM 장치는 세그먼트 단위로 마모도 관리를 수행한다. 따라서, 워드 단위로 마모도 관리를 수행할 때보다 메모리 시스템에 부과되는 오버헤드(overhead)가 감소된다. 관리될 기입 정보(write count)의 양이 감소되기 때문이다. 또한, 세그먼트 내의 워드들을 시프트시킴으로써 워드들 사이의 마모도 역시 관리될 수 있다.
도 6은 도 5의 세그먼트 교환 단계(S130)를 설명하기 위한 블록도이다. 도 6을 참조하면, 예시적인 실시 예에 있어서, 제2 물리 세그먼트(Segment_2)가 가장 큰 기입 횟수를 가지고, 제4 물리 세그먼트(Segment_4)가 가장 작은 기입 횟수를 가지는 것으로 가정된다. 변환 계층(230)은 제2 물리 세그먼트(Segment_2)에 저장된 데이터를 제4 물리 세그먼트(Segment_4)에 저장한다. 이 경우, 제4 물리 세그먼트(Segment_4)에 저장된 데이터는 겹쳐쓰기(overwrite)에 의해 지워지기 때문에 별도의 저장 영역(예를 들면, 버퍼 등)에 임시로 저장될 수 있다. 변환 계층(230)은 버퍼 등(도시되지 않음)에 저장된 데이터를 제 2 물리 세그먼트(Segment_2)에 저장한다. 이와 같은 방법으로 물리 세그먼트 사이의 데이터 교환이 수행된다.
상술한 실시 예에 있어서, 먼저 제2 물리 세그먼트(Segment_2)에 저장된 데이터가 제4 물리 세그먼트(Segment_4)에 저장되지만 저장 순서는 변경될 수 있음이 본 발명이 속하는 분야에서 통상의 지식을 가진 자에게 자명할 것이다. 상기한 바와 같이 물리 세그먼트들을 교환함으로써 물리 세그먼트들 사이의 마모도가 균등하게 유지된다.
도 7은 도 5의 워드 시프트 단계(S140)를 설명하기 위한 블록도이다. 도 7(a)는 워드들이 시프트(shift)되기 전을 보여주고,도 7(b)는 워드들이 한 번 시프트된 후를 보여준다.
도 7(a)를 참조하면, 물리 세그먼트는 복수의 워드(Word_1 ~ Word_m)를 포함한다. 워드들이 시프트되지 않았기 때문에 시프트 횟수(shift count)는 0이 된다. 이는 제1 워드(Word_1)가 물리 세그먼트의 첫 번째에 위치함을 의미한다. 이 경우, 파일 시스템(도 2 참조, 220)으로부터 전달된 오프셋 번호(offset number)가 곧 워드의 위치를 나타낸다. 예를 들어, 오프셋 번호가 3이고 시프트 횟수가 0인 경우, 이는 해당 물리 세그먼트 내의 세 번째 워드를 나타낸다.
도 7(b)를 참조하면, 워드들이 한 번 시프트되었기 때문에 시프트 횟수는 1이 된다. 이는 제1 워드(Word_1)가 물리 세그먼트의 두 번째에 위치함을 의미한다. 즉, 파일 시스템(220)으로부터 전달된 오프셋 번호에 1을 더한 값이 워드의 위치를 나타낸다. 예를 들어, 오프셋 번호가 3이고 시프트 횟수가 1인 경우, 이는 해당 물리 세그먼트 내의 네 번째 워드를 나타낸다.
시프트 횟수는 시프트 동작이 수행될 때마다 증가된다. 만약, 시프트 횟수가 물리 세그먼트 내의 워드들의 수보다 크게 되는 경우, 나머지 연산(mod)이 수행될 수 있다. 예를 들어, 하나의 물리 세그먼트가 10개의 워드들을 포함하고 시프트 횟 수가 25인 경우, 나머지 연산에 의해 5가 얻어진다. 이는 제1 워드(Word_1)가 물리 세그먼트의 다섯 번째에 위치함을 의미한다. 상기한 시프트 동작에 의해 물리 세그먼트 내의 워드들 사이의 마모도가 균등하게 유지될 수 있다.
도 8은 도 5의 맵핑 테이블 갱신 단계(S150)를 설명하기 위한 도면이다. 도 8(a)는 갱신 전의 맵핑 테이블이고, 도 8(b)는 갱신 후의 맵핑 테이블이다. 예시적으로, 제2 물리 세그먼트(PSN 2)가 가장 큰 기입 횟수를 갖고 제4 물리 세그먼트(PSN 4)가 가장 작은 기입 횟수를 갖는 것으로 가정한다. 또한, 기준치(Reference value)는 40인 것으로 가정된다. 따라서, 가장 큰 기입 횟수와 가장 작은 기입 횟수의 차이가 40 이상인 경우에 마모도 관리가 수행된다.
도 8(a)를 참조하면, 제2 물리 세그먼트(PSN 2)는 제3 논리 세그먼트(LSN 3)에 대응된다. 제2 물리 세그먼트(PSN 2)의 시프트 횟수는 28이고, 기입 횟수는 52이다. 제4 물리 세그먼트(PSN 4)는 제5 논리 세그먼트(LSN 5)에 대응된다. 제4 물리 세그먼트(PSN 4)의 시프트 횟수는 5이고, 기입 횟수는 12이다. 제2 물리 세그먼트(PSN 2)의 기입 횟수와 제4 물리 세그먼트(PSN 4)의 기입 횟수의 차이는 40이다. 이는 기준치와 동일하다. 따라서, 제2 물리 세그먼트(PSN 2)와 제4 물리 세그먼트(PSN 4)에 저장된 데이터들이 교환된다.
도 8(b)는 물리 세그먼트들에 저장된 데이터들의 교환 동작에 따라 갱신된 맵핑 테이블을 보여준다. 도 8(b)를 참조하면, 제2 물리 세그먼트(PSN 2)는 제5 논리 세그먼트(LSN 5)에 대응된다. 제2 물리 세그먼트(PSN 2)의 시프트 횟수는 28에서 29로 증가된다. 이는 물리 세그먼트의 교환 동작 시, 물리 세그먼트 내의 워드 들이 시프트되기 때문이다. 제2 물리 세그먼트(PSN 2)의 기입 횟수는 52에서 53으로 증가된다. 이는 물리 세그먼트들의 교환 동작에 따른 것이다.
제4 물리 세그먼트(PSN 4)는 제3 논리 세그먼트(LSN 3)에 대응된다. 제4 물리 세그먼트(PSN 4)의 시프트 횟수는 5에서 6으로 증가된다. 이는 물리 세그먼트의 교환 동작 시, 물리 세그먼트 내의 워드들도 시프트되기 때문이다. 제4 물리 세그먼트(PSN 4)의 소거 횟수는 12에서 13으로 증가된다. 이는 물리 세그먼트들의 교환 동작에 따른 것이다.
상술한 바와 같이, 가장 큰 기입 횟수를 가지는 물리 세그먼트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 물리 세그먼트에 저장된 데이터를 교환함으로써, 물리 세그먼트들 사이의 마모도가 균일하게 유지될 수 있다. 가장 큰 기입 횟수를 가지는 물리 세그먼트에 저장된 데이터는 빈번하게 갱신되는 데이터인 것으로 판단된다. 따라서, 빈번하게 갱신되는 데이터를 가장 조금 마모된 물리 세그먼트에 저장함으로써, 물리 세그먼트들 사이의 마모도가 균등하게 유지될 수 있다. 또한, 세그먼트 내의 워드들을 시프트시킴으로써 워드들 사이의 마모도가 균등하게 유지될 수 있다.
도 1은 본 발명에 따른 메모리 시스템을 보여주는 블록 도이다.
도 2는 도 1에 도시된 메모리 시스템의 소프트웨어 계층 구조를 보여주는 블록 도이다.
도 3은 도 2에 도시된 PRAM 장치의 세그먼트 구조를 보여주는 도면이다.
도 4는 도 2에 도시된 맵핑 테이블(231)의 구조를 보여주는 표이다.
도 5는 본 발명에 따른 마모도 관리 방법을 설명하기 위한 흐름도이다.
도 6은 도 5의 물리 세그먼트 교환 단계(S130)를 설명하기 위한 블록도이다.
도 7은 도 5의 워드 시프트 단계(S140)를 설명하기 위한 블록도이다.
도 8은 도 5의 맵핑 테이블 갱신 단계(S150)를 설명하기 위한 도면이다.

Claims (16)

  1. 제 1 단위로 데이터를 입출력하는 가변 저항 메모리; 및
    상기 제 1 단위와 다른 제 2 단위로 상기 가변 저항 메모리의 마모도를 관리하는 변환 계층을 포함하는 메모리 시스템.
  2. 제 1 항에 있어서,
    상기 제 2 단위는 상기 제 1 단위보다 큰 것을 특징으로 하는 메모리 시스템.
  3. 제 1 항에 있어서,
    상기 제 1 단위는 워드 단위이고, 상기 제 2 단위는 복수의 워드 단위를 포함하는 세그먼트 단위인 것을 특징으로 하는 메모리 시스템.
  4. 제 3 항에 있어서,
    상기 변환 계층은 맵핑 테이블을 포함하며, 상기 맵핑 테이블은 상기 복수의 세그먼트의 맵핑 정보, 상기 세그먼트 각각의 기입 횟수, 및 상기 세그먼트 각각의 시프트 횟수를 저장하는 메모리 시스템.
  5. 제 4 항에 있어서,
    상기 변환 계층은 상기 세그먼트 각각의 기입 횟수를 참조하여 상기 가변 저항 메모리의 마모도를 관리하는 메모리 시스템.
  6. 제 5 항에 있어서,
    상기 변환 계층은 가장 큰 기입 횟수를 가지는 세그먼트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 세그먼트에 저장된 데이터를 교환하는 메모리 시스템.
  7. 제 6 항에 있어서,
    상기 변환 계층은 상기 세그먼트들에 저장된 데이터들이 교환될 때, 상기 맵핑 테이블 내의 상기 복수의 세그먼트의 맵핑 정보를 갱신하는 메모리 시스템.
  8. 제 6 항에 있어서,
    상기 변환 계층은 상기 세그먼트들에 저장된 데이터들이 교환될 때, 상기 교환된 세그먼트 각각에 포함된 워드들을 시프트시키는 메모리 시스템.
  9. 제 8 항에 있어서,
    상기 변환 계층은 상기 교환된 세그먼트 각각에 포함된 워드들이 시프트될 때, 상기 맵핑 테이블 내의 상기 세그먼트 각각의 시프트 횟수를 갱신하는 메모리 시스템.
  10. 제 4 항에 있어서,
    상기 변환 계층은 상기 세그먼트 각각의 기입 횟수를 검출하여, 가장 큰 기입 횟수와 가장 작은 기입 횟수의 차이가 기준치 이상인 경우, 가장 큰 기입 횟수를 가지는 세그먼트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 세그먼트에 저장된 데이터를 교환하는 메모리 시스템.
  11. 제 10 항에 있어서,
    상기 기준치는 변경 가능한 것을 특징으로 하는 메모리 시스템.
  12. 메모리 시스템의 마모도 관리 방법에 있어서:
    상기 메모리 시스템은 복수의 워드를 각각 포함하는 복수의 세그먼트를 가지는 가변 저항 메모리와 상기 세그먼트 각각의 마모도를 평준화시키기 위한 변환 계층을 포함하되, 상기 가변 저항 메모리는 상기 워드 단위로 겹쳐쓰기(overwrite)를 수행하고,
    상기 메모리 시스템의 마모도 관리 방법은
    상기 세그먼트 각각의 마모도 정보를 검출하는 단계; 및
    상기 마모도 정보에 따라, 상기 세그먼트들에 저장된 데이터들을 교환하는 단계를 포함하는 마모도 관리 방법.
  13. 제 12 항에 있어서,
    상기 교환된 세그먼트 각각에 포함된 워드들을 시프트시키는 단계를 더 포함하는 마모도 관리 방법.
  14. 제 12 항에 있어서,
    상기 변환 계층은 상기 세그먼트 각각의 기입 횟수를 참조하여 상기 가변 저항 메모리의 마모도를 관리하는 마모도 관리 방법.
  15. 제 14 항에 있어서,
    상기 변환 계층은 가장 큰 기입 횟수를 가지는 세그먼트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 세그먼트에 저장된 데이터를 교환하는 마모도 관리 방법.
  16. 제 14 항에 있어서,
    상기 변환 계층은 상기 세그먼트 각각의 기입 횟수를 검출하여, 가장 큰 기입 횟수와 가장 작은 기입 횟수의 차이가 기준치 이상인 경우, 가장 큰 기입 횟수를 가지는 세그먼트에 저장된 데이터와 가장 작은 기입 횟수를 가지는 세그먼트에 저장된 데이터를 교환하는 마모도 관리 방법.
KR1020080030423A 2008-04-01 2008-04-01 메모리 시스템 및 그것의 마모도 관리 방법 KR101437123B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020080030423A KR101437123B1 (ko) 2008-04-01 2008-04-01 메모리 시스템 및 그것의 마모도 관리 방법
US12/385,160 US8108592B2 (en) 2008-04-01 2009-03-31 Memory system and wear leveling method thereof
TW098110889A TWI492225B (zh) 2008-04-01 2009-04-01 記憶體系統及其耗損平均方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080030423A KR101437123B1 (ko) 2008-04-01 2008-04-01 메모리 시스템 및 그것의 마모도 관리 방법

Publications (2)

Publication Number Publication Date
KR20090105143A true KR20090105143A (ko) 2009-10-07
KR101437123B1 KR101437123B1 (ko) 2014-09-02

Family

ID=41118864

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080030423A KR101437123B1 (ko) 2008-04-01 2008-04-01 메모리 시스템 및 그것의 마모도 관리 방법

Country Status (3)

Country Link
US (1) US8108592B2 (ko)
KR (1) KR101437123B1 (ko)
TW (1) TWI492225B (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170058690A (ko) * 2015-11-19 2017-05-29 삼성전자주식회사 불휘발성 메모리 모듈 및 이를 포함하는 전자 장치
KR20170133574A (ko) * 2016-05-25 2017-12-06 에스케이하이닉스 주식회사 메모리 시스템 및 이를 이용한 웨어-레벨링 방법
US10445005B2 (en) 2016-12-06 2019-10-15 SK Hynix Inc. Memory system and operating method thereof
US11269546B2 (en) 2017-07-18 2022-03-08 Sony Semiconductor Solutions Corporation Memory controller, memory system, information processing system, and memory control method

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7925822B2 (en) * 2008-01-31 2011-04-12 Sandisk Il Ltd Erase count recovery
KR20100091544A (ko) * 2009-02-10 2010-08-19 삼성전자주식회사 메모리 시스템 및 그 마모도 관리 방법
KR20110066697A (ko) * 2009-12-11 2011-06-17 삼성전자주식회사 어드레스 맵핑 테이블 관리 방법 및 그것을 사용하는 메모리 장치
KR20120126678A (ko) * 2011-05-12 2012-11-21 삼성전자주식회사 내구성을 향상한 비휘발성 메모리 장치 및 그 동작방법
US9076528B2 (en) * 2011-05-31 2015-07-07 Micron Technology, Inc. Apparatus including memory management control circuitry and related methods for allocation of a write block cluster
KR20120136197A (ko) * 2011-06-08 2012-12-18 삼성전자주식회사 비휘발성 메모리에 대한 웨어 레벨링 방법
US9111612B2 (en) 2012-03-07 2015-08-18 Rambus Inc. Direct relative measurement of memory durability
KR20130139084A (ko) * 2012-06-12 2013-12-20 삼성전자주식회사 메모리 시스템 및 메모리 청크 단위로 메모리를 관리하는 메모리 관리 방법
KR102003930B1 (ko) 2012-07-31 2019-07-25 삼성전자주식회사 불휘발성 메모리 장치의 데이터 라이팅 제어방법 및 웨어레벨링 제어 기능을 가지는 메모리 콘트롤러
US20140089560A1 (en) * 2012-09-25 2014-03-27 Adesto Technologies Corporation Memory devices and methods having write data permutation for cell wear reduction
US9442838B2 (en) 2012-10-22 2016-09-13 Rambus Inc. Remapping memory cells based on future endurance measurements
WO2014132346A1 (ja) * 2013-02-27 2014-09-04 株式会社日立製作所 半導体ストレージ
WO2015051506A1 (en) 2013-10-09 2015-04-16 Advanced Micro Devices, Inc. Enhancing lifetime of non-volatile cache by reducing intra-block write variation
KR20150095360A (ko) * 2014-02-13 2015-08-21 에스케이하이닉스 주식회사 저항성 메모리 장치 및 동작 방법
KR102188062B1 (ko) * 2014-02-28 2020-12-07 삼성전자 주식회사 데이터 저장 장치의 동작 방법과 상기 데이터 저장 장치를 포함하는 시스템의 동작 방법
US9053790B1 (en) * 2014-07-01 2015-06-09 Sandisk Technologies Inc. Counter for write operations at a data storage device
US9734011B1 (en) * 2014-10-03 2017-08-15 Crossbar, Inc. Two-terminal memory set features type mechanisms enhancements
US9830087B2 (en) * 2014-11-13 2017-11-28 Micron Technology, Inc. Memory wear leveling
US20160316450A1 (en) * 2015-04-22 2016-10-27 Pebble Technology Corp. Living notifications
KR102513491B1 (ko) 2015-07-15 2023-03-27 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
US9842059B2 (en) * 2016-04-14 2017-12-12 Western Digital Technologies, Inc. Wear leveling in storage devices
KR102664704B1 (ko) * 2016-10-24 2024-05-14 에스케이하이닉스 주식회사 메모리 시스템 및 이를 이용한 웨어-레벨링 방법
US10248333B1 (en) * 2017-02-07 2019-04-02 Crossbar, Inc. Write distribution techniques for two-terminal memory wear leveling
US10409714B1 (en) 2017-02-09 2019-09-10 Crossbar, Inc. Logical to physical translation for two-terminal memory
US9837153B1 (en) * 2017-03-24 2017-12-05 Western Digital Technologies, Inc. Selecting reversible resistance memory cells based on initial resistance switching
KR102507646B1 (ko) * 2018-02-01 2023-03-09 에스케이하이닉스 주식회사 메모리 시스템 및 그의 동작방법
KR20200071916A (ko) 2018-12-11 2020-06-22 삼성전자주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR20210121696A (ko) * 2020-03-31 2021-10-08 에스케이하이닉스 주식회사 컨트롤러 및 메모리 시스템

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5404485A (en) * 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system
US7113432B2 (en) * 2000-09-14 2006-09-26 Sandisk Corporation Compressed event counting technique and application to a flash memory system
US20020091965A1 (en) * 2000-12-22 2002-07-11 Mark Moshayedi System and method for early detection of impending failure of a data storage system
JP4772214B2 (ja) * 2001-06-08 2011-09-14 ルネサスエレクトロニクス株式会社 不揮発性記憶装置及びその書き換え制御方法
KR100484147B1 (ko) 2002-07-26 2005-04-18 삼성전자주식회사 플래시 메모리 관리 방법
JP4518951B2 (ja) * 2002-10-28 2010-08-04 サンディスク コーポレイション 不揮発性記憶システムにおける自動損耗均等化
JP4335659B2 (ja) * 2003-12-19 2009-09-30 株式会社ルネサステクノロジ 不揮発性半導体記憶装置
US7853749B2 (en) 2005-09-01 2010-12-14 Cypress Semiconductor Corporation Flash drive fast wear leveling
WO2007076492A2 (en) * 2005-12-28 2007-07-05 Sandisk Corporation Methods and systems for writing non-volatile memories for increased endurance
US7245556B1 (en) * 2005-12-28 2007-07-17 Sandisk Corporation Methods for writing non-volatile memories for increased endurance
US7861122B2 (en) * 2006-01-27 2010-12-28 Apple Inc. Monitoring health of non-volatile memory
US7653778B2 (en) 2006-05-08 2010-01-26 Siliconsystems, Inc. Systems and methods for measuring the useful life of solid-state storage devices
US7523013B2 (en) * 2006-05-15 2009-04-21 Sandisk Corporation Methods of end of life calculation for non-volatile memories
KR101454817B1 (ko) * 2008-01-11 2014-10-30 삼성전자주식회사 반도체 메모리 장치 및 그것의 마모도 관리 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170058690A (ko) * 2015-11-19 2017-05-29 삼성전자주식회사 불휘발성 메모리 모듈 및 이를 포함하는 전자 장치
KR20170133574A (ko) * 2016-05-25 2017-12-06 에스케이하이닉스 주식회사 메모리 시스템 및 이를 이용한 웨어-레벨링 방법
US10445005B2 (en) 2016-12-06 2019-10-15 SK Hynix Inc. Memory system and operating method thereof
US11269546B2 (en) 2017-07-18 2022-03-08 Sony Semiconductor Solutions Corporation Memory controller, memory system, information processing system, and memory control method

Also Published As

Publication number Publication date
TW200943290A (en) 2009-10-16
US20090248962A1 (en) 2009-10-01
TWI492225B (zh) 2015-07-11
KR101437123B1 (ko) 2014-09-02
US8108592B2 (en) 2012-01-31

Similar Documents

Publication Publication Date Title
KR101437123B1 (ko) 메모리 시스템 및 그것의 마모도 관리 방법
TWI590049B (zh) 記憶體裝置與其操作方法
KR101121698B1 (ko) 반도체 기억 장치 및 기억 제어 방법
US8037232B2 (en) Data protection method for power failure and controller using the same
US8954648B2 (en) Memory device and operating method thereof
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
CN103562842B (zh) 用于存储设备的用低预留空间实现低写入放大的方法
US20080028132A1 (en) Non-volatile storage device, data storage system, and data storage method
US20090100290A1 (en) Memory controller, nonvolatile memory device, nonvolatile memory system, and data writing method
JP2007199905A (ja) 半導体記憶装置の制御方法
WO2011068109A1 (ja) 記憶装置、およびメモリコントローラ
WO2006067923A1 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
WO2007000862A1 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法
KR20120136197A (ko) 비휘발성 메모리에 대한 웨어 레벨링 방법
US20100161890A1 (en) Cache management method and cache device using sector set
KR20130063244A (ko) 비휘발성 메모리 시스템
JP4829202B2 (ja) 記憶装置及びメモリ制御方法
KR100624973B1 (ko) 플래시 메모리의 효율적인 소거 횟수 평준화방법(k-평준화)
JPWO2011118114A1 (ja) 不揮発性記憶装置及びメモリコントローラ
US20090210612A1 (en) Memory controller, nonvolatile memory device, and nonvolatile memory system
JP2013068993A (ja) メモリコントローラ
KR101041710B1 (ko) 비휘발성 메모리의 섹터 관리 방법
JP4127307B2 (ja) データ記憶装置、データ処理システム、データ処理方法及びデータ処理装置
KR100514756B1 (ko) 플래쉬 메모리를 파일 시스템으로 라이트하기 위한캐쉬처리 방법
JP5180726B2 (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: 20180731

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190731

Year of fee payment: 6