KR101092775B1 - 반도체 메모리 정보 축적 장치와 그 기록 제어 방법 - Google Patents

반도체 메모리 정보 축적 장치와 그 기록 제어 방법 Download PDF

Info

Publication number
KR101092775B1
KR101092775B1 KR1020097027195A KR20097027195A KR101092775B1 KR 101092775 B1 KR101092775 B1 KR 101092775B1 KR 1020097027195 A KR1020097027195 A KR 1020097027195A KR 20097027195 A KR20097027195 A KR 20097027195A KR 101092775 B1 KR101092775 B1 KR 101092775B1
Authority
KR
South Korea
Prior art keywords
block
list
unused
recording
blocks
Prior art date
Application number
KR1020097027195A
Other languages
English (en)
Other versions
KR20100022497A (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 KR20100022497A publication Critical patent/KR20100022497A/ko
Application granted granted Critical
Publication of KR101092775B1 publication Critical patent/KR101092775B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • 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
    • 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/72Masking faults in memories by using spares or by reconfiguring with optimized replacement algorithms

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)
  • Read Only Memory (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)

Abstract

반도체 메모리 정보 축적 장치는, 축적부(1)의 블록이 사용중인 경우는, 사용중인 블록을 사용중 리스트(412)에 등록하고, 미사용인 경우는, 기록 횟수가 최대 사용 횟수와 같은 값인 블록을 프리하이 리스트(413)에 등록하며, 기록 횟수가 최대 사용 횟수 미만인 블록을 프리로우 리스트(414)에 등록한다. 그리고, 프리로우 리스트(414)에 등록되어 있는 미사용 블록으로부터 기록 블록을 선출하여, 소재 데이터를 기록한다. 또한, 블록으로부터 소재 데이터를 소거할 때, 그 블록을 기록 횟수와 최고 사용 횟수에 기초하여 프리하이 리스트(413) 또는 프리로우 리스트(414)에 등록한다.

Description

반도체 메모리 정보 축적 장치와 그 기록 제어 방법{SEMICONDUCTOR MEMORY INFORMATION ACCUMULATION DEVICE AND ITS WRITE-IN CONTROL METHOD}
본 발명은 반도체 메모리에 소재 데이터 등의 정보를 축적하는 반도체 메모리 정보 축적 장치, 및 반도체 메모리에 소재 데이터 등의 정보를 축적하는 기록 제어 방법에 관한 것이다.
소재 데이터를 축적하는 정보 축적 장치에는, 그 기억 매체로서, 블록 단위로 데이터의 기록·판독이 가능한 반도체 메모리를 이용하는 것이 있다. 단, 이 반도체 메모리는 가동 부분이 없기 때문에 신뢰성은 높다고 하는 이점을 갖는 반면, 하드 디스크 등과 비교하면 기록 가능 횟수가 적다. 특히, 특정한 블록만을 사용하면, 그 블록은 기록 불능의 불량 부위(후천성 백드롭이라고 칭함)가 된다. 그래서, 이러한 종류의 문제를 개선하는 종래 기술로서, 일본 특허 공개 공보 평성 제11-144478호가 있다. 이 중 반도체 메모리 정보 축적 장치에서는, 반도체 메모리에 소재 데이터를 기록할 때마다 블록별로 기록 횟수를 카운트해 둔다. 그리고, 기록 시에 각 블록의 기록 횟수를 판독하여, 기록 횟수가 적은 미사용 블록부터 순서대로 소재 데이터를 기록하도록 하고 있다.
그러나, 최근 반도체 메모리의 용량은 대형화되고 있어, 특허 문헌 1과 같 이, 데이터를 기록할 때마다 모든 블록의 기록 횟수를 판독한 후, 기록 횟수가 적은 미사용 블록을 선출하는 방법은 더 이상 효율적인 수법이 아니다. 그래서, 소재 데이터의 기록 동작 중에, 각 블록의 기록 횟수가 균일해지도록 미사용 블록을 실시간으로 선출하는 것이 가능한 정보 축적 장치가 요망되고 있다.
본 발명의 목적은 소재 데이터의 기록 동작 중에, 실시간으로 미사용 블록을 선출할 수 있고, 각 블록의 기록 횟수를 균일하게 하는 것이 가능한 반도체 메모리 정보 축적 장치와 기록 제어 방법을 제공하는 것이다.
본 발명에 따른 반도체 메모리 정보 축적 장치는, 블록 단위로 소거 가능한 비휘발성 메모리를 정보 기억 매체로 이용하는 축적부와, 상기 비휘발성 메모리의 블록 모두의 기록 횟수를 각각 카운트하여 관리하는 기록 횟수 관리 수단과, 상기 비휘발성 메모리의 블록을 사용중/미사용으로 분류하여, 사용중인 블록을 사용중 리스트로 관리하고, 미사용 블록 중 상기 기록 횟수가 최대치와 같은 값인 블록을 제1 미사용 리스트로 관리하며, 상기 미사용 블록 중 상기 기록 횟수가 상기 최대치 미만인 블록을 제2 미사용 리스트로 관리하는 리스트 관리 수단과, 상기 축적부에 대하여 정보 데이터를 기록·소거하는 것으로, 상기 정보 데이터의 기록 시에는, 상기 제2 미사용 리스트로 관리되는 블록 중 어느 하나를 선택적으로 지정하여 그 블록에 상기 정보 데이터를 기록하고, 상기 정보 데이터의 소거 시에는, 그 정보 데이터를 상기 블록으로부터 소거하고 소거된 블록을 상기 리스트 관리 수단에 통지하여 상기 블록의 관리를 갱신시키는 제어부를 구비하고, 상기 리스트 관리 수단은, 상기 제어부에 의해 상기 제2 미사용 리스트로 관리되는 블록 중 어느 하나가 기록 블록으로서 지정되었을 때, 그 지정된 기록 블록을 상기 제2 미사용 리스트에서 제외시켜 상기 사용중 리스트의 관리로 이행시키며, 상기 기록 횟수 관리 수단은 상기 지정된 기록 블록의 기록 횟수를 카운트업하는 것이다.
또한, 본 발명에 따른 기록 부위 분산화 방법은, 블록 단위로 소거 가능한 비휘발성 메모리를 정보 기억 매체로 이용하고, 상기 비휘발성 메모리의 블록 모두의 기록 횟수를 각각 카운트하여 관리하며, 상기 비휘발성 메모리의 블록을 사용중/미사용으로 분류하고, 사용중인 블록을 사용중 리스트로 관리하며, 미사용 블록 중 상기 기록 횟수가 최대치와 같은 값인 블록을 제1 미사용 리스트로 관리하고, 미사용 블록 중 상기 기록 횟수가 상기 최대치 미만인 블록을 제2 미사용 리스트로 관리하며, 상기 비휘발성 메모리의 블록에 정보 데이터를 기록할 때에는, 상기 제2 미사용 리스트를 참조하여 그 제2 미사용 리스트로 관리되는 블록 중 어느 하나를 선택적으로 지정하여 상기 정보 데이터를 기록하고, 상기 정보 데이터를 소거할 때에는, 그 정보 데이터를 상기 블록으로부터 소거하고 소거된 블록의 각 리스트에서의 관리를 갱신하며, 상기 제2 미사용 리스트로 관리되는 블록 중 어느 하나가 기록 블록으로서 지정되었을 때, 그 지정된 기록 블록을 상기 제2 미사용 리스트에서 제외하여 상기 사용중 리스트의 관리로 이행시키고, 상기 지정된 기록 블록의 기록 횟수를 카운트업하는 것이다.
도 1은 본 발명에 따른 반도체 메모리 정보 축적 장치의 일 실시 형태의 구 성을 나타내는 블록도이다.
도 2는 도 1의 블록 관리부에서, 미사용 블록이 프리로우 리스트(free-low list)에 등록되어 있지 않고 프리하이 리스트(free-high list)에만 등록되어 있는 경우, 미사용 블록의 등록 이행을 나타내는 개념도이다.
도 3은 도 1의 축적부에 소재 데이터를 기록할 때의 보조 컨트롤러에 의한 블록의 관리 동작을 나타내는 흐름도이다.
도 4는 도 1의 축적부에 소재 데이터를 기록할 때의 블록의 관리를 나타내는 개념도이다.
도 5는 도 1의 축적부에 소재 데이터를 기록할 때의 블록의 관리를 나타내는 개념도이다.
도 6은 도 1의 축적부의 블록에 축적되어 있는 소재 데이터를 소거할 때의 보조 컨트롤러에 의한 관리 동작을 나타내는 흐름도이다.
도 7은 도 1의 축적부의 블록에 축적되어 있는 소재 데이터를 소거할 때의 블록의 관리를 나타내는 개념도이다.
도 8은 도 1의 축적부의 블록에 축적되어 있는 소재 데이터를 소거할 때의 블록의 관리를 나타내는 개념도이다.
도 9는 도 1의 반도체 메모리 정보 축적 장치가 기동할 때, 블록의 각 리스트에의 분배 동작을 나타내는 흐름도이다.
이하, 도면을 참조하면서 본 발명의 실시 형태에 대해 상세히 설명한다.
도 1은 본 발명의 제1 실시 형태에 따른 반도체 메모리 정보 축적 장치의 기능 구성을 나타내는 블록도이다. 도 1에 있어서, 축적부(1)는 버퍼(2)에 일시적으로 보존되어 있는 소재 데이터를, 기록/소거 컨트롤러(3)의 기록 제어에 의해 취득하여, 반도체 메모리(11~13)에 기록한다. 이 때, 소재 데이터가 기록되는 반도체 메모리(11~13)의 기록 블록은 기록/소거 컨트롤러(3)가 블록 관리부(4)를 참조하여 지정한다. 블록 관리부(4)는 반도체 메모리(11~13)의 블록의 관리 정보를 관리 정보 유지부(41)에 유지하고, 그 관리 정보를 보조 컨트롤러(42)에 의해 제어함으로써, 블록을 관리한다.
또한, 축적부(1)는 기록/소거 컨트롤러(3)의 소거 제어에 의해, 반도체 메모리(11~13)에 축적되어 있는 소재 데이터를 소거한다. 이 때, 기록/소거 컨트롤러(3)는 소재 데이터가 소거된 블록을 블록 관리부(4)에 통지하여, 블록의 관리를 갱신시킨다.
상기 축적부(1)는, 각각 블록 단위로 소거 가능한 복수(여기서는 3개로 함)의 비휘발성 반도체 메모리(11~13)를 병렬로 접속하여 구성된다. 각각의 반도체 메모리는 동일한 정보의 데이터를 축적한다. 이에 따라, 어느 하나의 반도체 메모리에서 불량 부위가 발생한 경우라도, 나머지의 반도체 메모리에 데이터가 축적된다. 즉, 기록 에러가 발생할 가능성이 저하된다.
상기 기록/소거 컨트롤러(3)는 축적부(1)에 대하여 소재 데이터의 기록·소거를 제어하는 기능을 갖는다. 기록/소거 컨트롤러(3)는 기록 제어 시에는, 기록 횟수가 적은 미사용 블록을 블록 관리부(4)로부터 선택적으로 지정한다. 그리고, 기록/소거 컨트롤러(3)는 이 지정된 블록에, 버퍼(2)에 일시 보존되어 있는 소재 데이터를 기록한다. 또한, 기록/소거 컨트롤러(3)는 소거 제어 시에는, 블록으로부터 소재 데이터를 소거한다. 그리고, 기록/소거 컨트롤러(3)는 소재 데이터가 소거된 블록을 블록 관리부(4)에 통지하여, 블록의 관리를 갱신시킨다.
상기 블록 관리부(4)는 반도체 메모리(11~13)의 블록의 관리 정보를 관리 정보 유지부(41)에 유지한다. 블록 관리부(4)는 그 관리 정보를 보조 컨트롤러(42)로 제어함으로써 블록을 관리한다.
관리 정보 유지부(41)는 기록부(411)와, 리스트 관리부[이하, 사용중 리스트(using-list)라고 기재함](412)와, 리스트 관리부[이하, 프리하이 리스트(free-high list)라고 기재함](413)와, 리스트 관리부[이하, 프리로우 리스트(free-low list)라고 기재함](414)를 구비한다. 기록부(411)에는 반도체 메모리(11~13)의 블록의 사용중/미사용 분류 결과 및 기록 횟수가 기록된다. 사용중 리스트(412)는 사용중인 블록을 관리한다. 프리하이 리스트(413)는 미사용 블록 중 기록 횟수가 최대 사용 횟수와 같은 값인 블록을 관리한다. 프리로우 리스트(414)는 미사용 블록 중 기록 횟수가 최대 사용 횟수 미만인 블록을 관리한다. 여기서, 최대 사용 횟수란, 미사용 블록 중 기록 횟수가 최대가 되는 블록의 기록 횟수를 가리킨다.
보조 컨트롤러(42)는 기록/소거 컨트롤러(3)에 의해 프리로우 리스트(414)에 등록되어 있는 블록 중 어느 하나가 기록 블록으로 선택적으로 지정되면, 그 블록을 프리로우 리스트(414)에서 제외한다. 그리고, 보조 컨트롤러(42)는 그 블록의 기록 횟수를 카운트업하여, 기록 횟수를 기록부(411)에 기록한다. 보조 컨트롤 러(42)는 기록 횟수를 기록하면 그 블록을 사용중 리스트(412)에 등록한다.
또한, 보조 컨트롤러(42)는, 소재 데이터가 소거된 블록의 통지를 기록/소거 컨트롤러(3)로부터 받으면, 그 블록을 사용중 리스트(412)에서 제외하여, 미사용 블록으로 지정한다. 그리고, 보조 컨트롤러(42)는 그 미사용 블록의 기록 횟수와 최대 사용 횟수를 비교한다. 보조 컨트롤러(42)는 소재 데이터가 소거된 블록의 기록 횟수가 최대 사용 횟수 미만인 경우, 그 블록을 프리로우 리스트(414)에 등록한다. 보조 컨트롤러(42)는, 소재 데이터가 소거된 블록의 기록 횟수가 최대 사용 횟수와 같은 값인 경우, 그 블록을 프리하이 리스트(413)에 등록한다. 보조 컨트롤러(42)는, 소재 데이터가 소거된 블록의 기록 횟수가 최대 사용 횟수보다 큰 경우, 프리하이 리스트(413)에 등록되어 있는 미사용 블록을 프리로우 리스트(414)에 등록하고, 소재 데이터가 소거된 블록을 프리하이 리스트(413)에 등록한다.
또한, 보조 컨트롤러(42)는 반도체 메모리 정보 축적 장치의 기동 시에, 기록부(411)에 기록되는 각 블록의 사용중/미사용 분류 결과 및 기록 횟수를 참조하여 이하의 처리를 실행한다. 즉, 보조 컨트롤러(42)는 기동 시에 사용중인 블록을 사용중 리스트(412)에 등록한다. 보조 컨트롤러(42)는 미사용 블록 중 기록 횟수가 최대 사용 횟수와 같은 값인 블록을 프리하이 리스트(413)에 등록한다. 보조 컨트롤러(42)는 미사용 블록 중 기록 횟수가 최대 사용 횟수 미만인 블록을 프리로우 리스트(414)에 등록한다.
또한, 보조 컨트롤러(42)는 미사용 블록이 프리로우 리스트(414)에 등록되어 있지 않고 프리하이 리스트(413)에만 등록되어 있는 경우에는, 프리하이 리스 트(413)에 등록되어 있는 모든 블록을 프리로우 리스트(414)에 등록한다. 이 때의 블록 등록의 개념도를 도 2에 나타낸다. 또, 모든 블록이 using-link(412)에 등록되어 있는 경우는, 축적부(1)에 미사용 블록이 존재하지 않는 것으로 하여, 축적부(1)로의 축적이 불가능하다는 취지의 신호를 기록/소거 컨트롤러(3)에 보낸다.
다음에, 상기 구성에 따른 반도체 메모리 정보 축적 장치에 있어서, 도 3 내지 도 9를 참조하여 블록 관리부(4)에서의 블록 관리를 설명한다.
도 3은 본 실시 형태에 따른 축적부(1)에 소재 데이터를 기록할 때의 보조 컨트롤러(42)에 의한 블록 관리 동작을 나타내는 흐름도이다. 도 4는 축적부(1)에 소재 데이터를 기록할 때의 블록 관리의 초기 상태를 나타내는 개념도이다. 또한, 도 5는 축적부(1)에 최초의 소재 데이터를 기록할 때의 블록 관리를 나타내는 개념도이다.
초기 상태에서는, 반도체 메모리(11~13)의 미사용 블록은 모두 프리로우 리스트(414)에 등록되어 있다(도 4). 보조 컨트롤러(42)는 기록/소거 컨트롤러(3)로부터 기록 블록이 지정되면(단계 3a), 지정된 블록을 프리로우 리스트(414)에서 제외한다(단계 3b). 계속해서, 이 블록의 기록 횟수를 카운트업하고(단계 3c), 기록부(411)에 기록 횟수를 기록한다(단계 3d). 기록 횟수를 기록한 후, 이 블록을 사용중 리스트(412)에 등록하고(단계 3e)(도 5), 처리를 종료한다.
도 6은 본 실시 형태에 따른 축적부(1)의 블록에 축적되어 있는 소재 데이터를 소거할 때, 보조 컨트롤러(42)에 의한 블록의 관리 동작을 나타내는 흐름도이다. 도 7은 축적부(1)의 블록에 축적되어 있는 소재 데이터를 소거한 후, 그 블록 을 프리하이 리스트(413)에 등록할 때의 블록 관리의 개념도이다. 또한, 도 8은 축적부(1)의 블록에 축적되어 있는 소재 데이터를 소거한 후, 그 블록을 프리로우 리스트(414)에 등록할 때의 블록 관리의 개념도이다.
먼저, 보조 컨트롤러(42)는 기록/소거 컨트롤러(3)로부터, 축적되어 있는 소재 데이터가 소거된 블록이 통지되면(단계 6a), 그 블록의 기록 횟수가 최대 사용 횟수보다 큰지 여부를 판단한다(단계 6b). 기록 횟수가 최대 사용 횟수보다 큰 경우(단계 6b의 Yes), 최대 사용 횟수를 갱신하고(단계 6c), 프리하이 리스트(413)에 등록되어 있는 블록 모두를 프리로우 리스트(414)에 등록한다(단계 6d). 그 후, 소재 데이터가 소거된 블록을 프리하이 리스트(413)에 등록하고(단계 6e), 처리를 종료한다.
단계 6b에 있어서, 소재 데이터가 소거된 블록의 기록 횟수가 최대 사용 횟수 이하인 경우(단계 6b의 No), 그 기록 횟수가 최대 사용 횟수와 같은 값인지 여부를 판단한다(단계 6f). 기록 횟수가 최대 사용 횟수와 같은 값인 경우(단계 6f의 Yes), 그 미사용 블록을 프리하이 리스트(413)에 등록하고(단계 6g)(도 7), 처리를 종료한다. 기록 횟수가 최대 사용 횟수 미만인 경우(단계 6f의 No), 그 미사용 블록을 프리로우 리스트(414)에 등록하고(단계 6h)(도 8), 처리를 종료한다.
도 9는 본 실시 형태에 따른 반도체 메모리 정보 축적 장치가 기동할 때의 블록의 각 리스트에의 분배 동작을 나타내는 흐름도이다.
반도체 메모리 정보 축적 장치가 기동하면, 보조 컨트롤러(42)는 기록부(411)에 기록되어 있는 각 블록의 사용중/미사용 분류 결과와 기록 횟수를 1블록 씩 판독한다(단계 9a). 계속해서, 블록의 사용중/미사용 분류 결과와 기록 횟수가 정상적으로 기록되어 있는지 여부를 판단하고(단계 9b), 정상적으로 기록되어 있는 경우(단계 9b의 Yes), 그 블록이 사용중인지 여부를 판단한다(단계 9c). 블록의 사용중/미사용 분류 결과와 기록 횟수가 정상적으로 기록되어 있지 않은 경우(단계 9b의 No), 알람을 발생시킨다(단계 9d).
블록이 사용중이 아닌 경우(단계 9c의 No), 보조 컨트롤러(42)는, 블록의 기록 횟수가 최대 사용 횟수와 같은 수인지 여부를 판단한다(단계 9e). 기록 횟수가 최대 사용 횟수와 같은 수인 경우(단계 9e의 Yes), 블록을 프리하이 리스트(413)에 등록하고(단계 9f), 기록부(411)에 다른 블록의 사용중/미사용 분류 결과와 기록 횟수가 기록되어 있는지 여부를 판단한다(단계 9g). 기록부(411)에 다른 블록의 사용중/미사용 분류 결과와 기록 횟수가 기록되어 있는 경우(단계 9g의 Yes), 처리를 단계 9a로 이행한다. 기록부(411)에 다른 블록의 사용중/미사용 분류 결과와 기록 횟수가 기록되어 있지 않은 경우(단계 9g의 No), 처리를 종료한다.
단계 9c에 있어서, 블록이 사용중인 경우(단계 9c의 Yes), 블록을 사용중 리스트(412)에 등록하고(단계 9h), 처리를 단계 9g로 이행한다. 단계 9e에 있어서, 기록 횟수가 최대 사용 횟수 미만인 경우(단계 9e의 No), 블록을 프리로우 리스트(414)에 등록하고(단계 9i), 단계 9g로 처리를 이행한다.
이상과 같이, 상기 일 실시 형태에 따른 반도체 메모리 정보 축적 장치는, 축적부(1)의 반도체 메모리(11~13)의 블록이 사용중인 경우에는 그 블록을 사용중 리스트(412)에 등록한다. 또한, 반도체 메모리 정보 축적 장치는, 미사용인 경우에 는 미사용 블록 중 기록 횟수가 최대 사용 횟수인 블록을 프리하이 리스트(413)에 등록한다. 또한, 반도체 메모리 정보 축적 장치는 미사용 블록 중 기록 횟수가 최대 사용 횟수 미만인 블록을 프리로우 리스트(414)에 등록한다. 그리고, 반도체 메모리 정보 축적 장치는 프리로우 리스트(414)에 등록되어 있는 블록으로부터 기록 블록을 선출하여 소재 데이터를 기록한다. 또한, 반도체 메모리 정보 축적 장치는 블록으로부터 소재 데이터가 소거되면, 그 블록을 기록 횟수와 최고 사용 횟수에 기초하여 프리하이 리스트(413) 또는 프리로우 리스트(414)에 등록한다. 이에 따라, 프리로우 리스트(414)에는 기록 횟수가 적은 미사용 블록이 항상 등록되게 된다. 즉, 이 프리로우 리스트(414)로부터 기록 블록을 선출함으로써, 기록 횟수가 적은 미사용 블록에만 소재 데이터를 기록하는 것이 가능하다.
따라서, 프리로우 리스트(414)에 등록되어 있는 블록으로부터 기록 블록을 지정하는 것만으로 기록 횟수가 적은 미사용 블록을 검출하는 것이 가능하기 때문에, 블록의 기록 횟수를 균등하게 유지할 수 있다. 또한, 이에 따라, 검색 시간이 단축되어, 안정적으로 기록 블록을 선출하는 것도 가능하다.
또, 본 발명은 상기 일 실시 형태에 한정되는 것이 아니다. 예컨대, 상기 일 실시 형태에서는, 3개의 반도체 메모리를 병렬로 접속하여 소재 데이터를 축적하는 예에 대해 설명했지만, 반도체 메모리가 3개가 아닌 경우(단수를 포함함)라도 마찬가지로 실시 가능하다.
또한, 실시 단계에서는 그 요지를 일탈하지 않는 범위에서 구성 요소를 변형하여 구체화할 수 있다. 또한, 상기 실시 형태에 개시되어 있는 복수의 구성 요소 의 적절한 조합에 의해, 여러가지 발명을 형성할 수 있다. 예컨대, 실시 형태에 개시하는 전체 구성 요소로부터 몇 개의 구성 요소를 삭제하더라도 좋다.
본 발명은 촬영한 영상을 수록하는 영상 데이터 수록 장치에 이용되기에 적합한 것이다.

Claims (8)

  1. 블록 단위로 소거 가능한 비휘발성 메모리를 정보 기억 매체로 이용하는 축적부와,
    상기 비휘발성 메모리의 블록 모두의 기록 횟수를 각각 카운트하여 관리하는 기록 횟수 관리 수단과,
    상기 비휘발성 메모리의 블록을 사용중/미사용으로 분류하여, 사용중인 블록을 사용중 리스트로 관리하고, 미사용 블록 중 상기 기록 횟수가 최대치와 같은 값인 블록을 제1 미사용 리스트로 관리하며, 상기 미사용 블록 중 상기 기록 횟수가 상기 최대치 미만인 블록을 제2 미사용 리스트로 관리하는 리스트 관리 수단과,
    상기 축적부에 대하여 정보 데이터를 기록·소거하는 것으로, 상기 정보 데이터의 기록 시에는, 상기 제2 미사용 리스트로 관리되는 블록 중 어느 하나를 선택적으로 지정하여 그 블록에 상기 정보 데이터를 기록하고, 상기 정보 데이터의 소거 시에는, 상기 정보 데이터를 상기 정보 데이터가 기록되어 있던 비휘발성 메모리의 블록으로부터 소거하고, 소거된 블록을 상기 리스트 관리 수단에 통지하여 상기 소거된 블록의 관리를 갱신시키는 제어부
    를 구비하고,
    상기 리스트 관리 수단은, 상기 제어부에 의해 상기 제2 미사용 리스트로 관리되는 블록 중 어느 하나가 기록 블록으로서 지정되었을 때, 그 지정된 기록 블록을 상기 제2 미사용 리스트에서 제외하여 상기 사용중 리스트의 관리로 이행시키며,
    상기 기록 횟수 관리 수단은 상기 지정된 기록 블록의 기록 횟수를 카운트업하는 것을 특징으로 하는 반도체 메모리 정보 축적 장치.
  2. 제1항에 있어서, 상기 리스트 관리 수단은, 상기 제어부로부터 상기 정보 데이터가 소거된 블록에 대한 통지가 있었을 때, 그 블록을 상기 사용중 리스트에서 제외한 후, 그 블록의 기록 횟수와 상기 최대치를 비교하여, 상기 기록 횟수가 상기 최대치 미만인 경우, 상기 정보 데이터가 소거된 블록을 상기 제2 미사용 리스트로 관리하고, 상기 기록 횟수가 상기 최대치와 같은 값인 경우, 상기 정보 데이터가 소거된 블록을 상기 제1 미사용 리스트로 관리하며, 상기 기록 횟수가 상기 최대치보다 큰 경우, 상기 제1 미사용 리스트로 관리되는 블록을 상기 제2 미사용 리스트의 관리로 이행시켜 상기 정보 데이터가 소거된 블록을 상기 제1 미사용 리스트로 관리하는 것을 특징으로 하는 반도체 메모리 정보 축적 장치.
  3. 제1항에 있어서, 상기 리스트 관리 수단은, 상기 미사용 블록이 상기 제1 미사용 리스트로만 관리되는 경우, 그 제1 미사용 리스트로 관리되는 블록을 상기 제2 미사용 리스트의 관리로 이행시키는 것을 특징으로 하는 반도체 메모리 정보 축적 장치.
  4. 제1항에 있어서, 상기 기록 횟수 관리 수단은 상기 비휘발성 메모리의 블록의 사용/미사용 분류 결과를 기록하고,
    상기 리스트 관리 수단은 기동 시에, 상기 기록 횟수 관리 수단에 의해 기록되는 모든 블록의 기록 횟수와 상기 사용/미사용 분류 결과를 참조함으로써, 사용중인 블록을 상기 사용중 리스트로 관리하고, 미사용 블록 중 상기 기록 횟수가 최대치와 같은 값인 블록을 상기 제1 미사용 리스트로 관리하며, 상기 미사용 블록 중 상기 기록 횟수가 상기 최대치 미만인 블록을 상기 제2 미사용 리스트로 관리하는 것을 특징으로 하는 반도체 메모리 정보 축적 장치.
  5. 블록 단위로 소거 가능한 비휘발성 메모리를 정보 기억 매체로 이용하고,
    상기 비휘발성 메모리의 블록 모두의 기록 횟수를 각각 카운트하여 관리하며,
    상기 비휘발성 메모리의 블록을 사용중/미사용으로 분류하고,
    사용중인 블록을 사용중 리스트로 관리하며,
    미사용 블록 중 상기 기록 횟수가 최대치와 같은 값인 블록을 제1 미사용 리스트로 관리하고,
    상기 미사용 블록 중 상기 기록 횟수가 상기 최대치 미만인 블록을 제2 미사용 리스트로 관리하며,
    상기 비휘발성 메모리의 블록에 정보 데이터를 기록할 때에는, 상기 제2 미사용 리스트를 참조하여 그 제2 미사용 리스트로 관리되는 블록 중 어느 하나를 선택적으로 지정하여 상기 정보 데이터를 기록하고,
    상기 정보 데이터를 소거할 때에는, 상기 정보 데이터를 상기 정보 데이터가 기록되어 있던 비휘발성 메모리의 블록으로부터 소거하고 소거된 블록의 각 리스트에서의 관리를 갱신하며,
    상기 제2 미사용 리스트로 관리되는 블록 중 어느 하나가 기록 블록으로서 지정되었을 때, 그 지정된 기록 블록을 상기 제2 미사용 리스트에서 제외하여 상기 사용중 리스트의 관리로 이행시키고,
    상기 지정된 기록 블록의 기록 횟수를 카운트업하는 것을 특징으로 하는 기록 제어 방법.
  6. 제5항에 있어서, 상기 정보 데이터가 소거된 블록에 대한 통지가 있었을 때, 그 블록을 상기 사용중 리스트로부터 제외한 후, 그 블록의 기록 횟수와 상기 최대치를 비교하고,
    상기 기록 횟수가 상기 최대치 미만인 경우, 상기 정보 데이터가 소거된 블록을 상기 제2 미사용 리스트로 관리하며,
    상기 기록 횟수가 상기 최대치와 같은 값인 경우, 상기 정보 데이터가 소거된 블록을 상기 제1 미사용 리스트로 관리하고,
    상기 기록 횟수가 상기 최대치보다 큰 경우, 상기 제1 미사용 리스트로 관리되는 블록을 상기 제2 미사용 리스트의 관리로 이행시켜 상기 정보 데이터가 소거된 블록을 상기 제1 미사용 리스트로 관리하는 것을 특징으로 하는 기록 제어 방법.
  7. 제5항에 있어서, 상기 미사용 블록이 상기 제1 미사용 리스트로만 관리되는 경우, 그 제1 미사용 리스트로 관리되는 블록을 상기 제2 미사용 리스트의 관리로 이행시키는 것을 특징으로 하는 기록 제어 방법.
  8. 제5항에 있어서, 상기 비휘발성 메모리의 블록의 사용/미사용 분류 결과를 기록하고,
    기동 시에, 기록되어 있는 모든 블록의 기록 횟수와 상기 사용/미사용 분류 결과를 참조함으로써, 사용중인 블록을 상기 사용중 리스트로 관리하며,
    미사용 블록 중 상기 기록 횟수가 최대치와 같은 값인 블록을 상기 제1 미사용 리스트로 관리하고,
    상기 미사용 블록 중 상기 기록 횟수가 상기 최대치 미만인 블록을 상기 제2 미사용 리스트로 관리하는 것을 특징으로 하는 기록 제어 방법.
KR1020097027195A 2007-07-13 2008-07-09 반도체 메모리 정보 축적 장치와 그 기록 제어 방법 KR101092775B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2007184433A JP4444314B2 (ja) 2007-07-13 2007-07-13 半導体メモリ情報蓄積装置とその書き込み制御方法
JPJP-P-2007-184433 2007-07-13

Publications (2)

Publication Number Publication Date
KR20100022497A KR20100022497A (ko) 2010-03-02
KR101092775B1 true KR101092775B1 (ko) 2011-12-09

Family

ID=40259602

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097027195A KR101092775B1 (ko) 2007-07-13 2008-07-09 반도체 메모리 정보 축적 장치와 그 기록 제어 방법

Country Status (9)

Country Link
US (1) US8352674B2 (ko)
EP (1) EP2180409B1 (ko)
JP (1) JP4444314B2 (ko)
KR (1) KR101092775B1 (ko)
CN (1) CN101689151B (ko)
BR (1) BRPI0813715A2 (ko)
CA (1) CA2693823C (ko)
TW (1) TWI390402B (ko)
WO (1) WO2009011266A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101610477B (zh) 2009-07-13 2012-09-05 中兴通讯股份有限公司 多媒体消息业务的处理系统和方法
US8209785B2 (en) 2010-02-09 2012-07-03 International Textile Group, Inc. Flame resistant fabric made from a fiber blend
TWI455131B (zh) * 2010-04-16 2014-10-01 Silicon Motion Inc 記憶體之資料寫入方法及資料儲存裝置
TWI475564B (zh) * 2010-04-21 2015-03-01 Silicon Motion Inc 記憶體之資料寫入方法及資料儲存裝置
CN108595345B (zh) 2012-07-25 2021-11-23 慧荣科技股份有限公司 管理闪存中所储存的数据的方法及相关记忆装置与控制器
CN103123609B (zh) * 2013-03-13 2015-07-15 中国科学院上海微系统与信息技术研究所 存储器的分块管理方法
TWI548991B (zh) * 2014-02-14 2016-09-11 群聯電子股份有限公司 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置
KR20170045406A (ko) * 2015-10-16 2017-04-27 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3507132B2 (ja) * 1994-06-29 2004-03-15 株式会社日立製作所 フラッシュメモリを用いた記憶装置およびその記憶制御方法
JPH11144478A (ja) 1997-11-10 1999-05-28 Hitachi Device Eng Co Ltd 不揮発性半導体メモリの情報記憶方法および電子機器
JPH11259370A (ja) * 1998-03-06 1999-09-24 Mitsubishi Electric Corp データ書込装置及びデータ書込方法
US6985992B1 (en) * 2002-10-28 2006-01-10 Sandisk Corporation Wear-leveling in non-volatile storage systems
WO2004040586A1 (en) 2002-10-28 2004-05-13 Sandisk Corporation Automated wear leveling in non-volatile storage systems
JP4073799B2 (ja) 2003-02-07 2008-04-09 株式会社ルネサステクノロジ メモリシステム
EP1758027B1 (en) 2003-12-30 2010-07-14 SanDisk Corporation Non-volatile memory and method with control data management
US7139864B2 (en) * 2003-12-30 2006-11-21 Sandisk Corporation Non-volatile memory and method with block management system
US7224604B2 (en) * 2005-03-14 2007-05-29 Sandisk Il Ltd. Method of achieving wear leveling in flash memory using relative grades
US7516267B2 (en) * 2005-11-03 2009-04-07 Intel Corporation Recovering from a non-volatile memory failure
US8935302B2 (en) * 2006-12-06 2015-01-13 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume
JP4372168B2 (ja) * 2007-02-19 2009-11-25 株式会社東芝 半導体メモリ情報蓄積装置とその蓄積データ処理方法
JP4469879B2 (ja) * 2007-08-07 2010-06-02 株式会社東芝 半導体メモリ蓄積装置とその素材管理方法

Also Published As

Publication number Publication date
JP2009020803A (ja) 2009-01-29
US20100115194A1 (en) 2010-05-06
TWI390402B (zh) 2013-03-21
JP4444314B2 (ja) 2010-03-31
CA2693823A1 (en) 2009-01-22
BRPI0813715A2 (pt) 2014-12-30
WO2009011266A1 (ja) 2009-01-22
EP2180409B1 (en) 2018-05-16
US8352674B2 (en) 2013-01-08
KR20100022497A (ko) 2010-03-02
TW200933363A (en) 2009-08-01
CN101689151B (zh) 2013-01-02
EP2180409A1 (en) 2010-04-28
CN101689151A (zh) 2010-03-31
EP2180409A4 (en) 2011-09-28
CA2693823C (en) 2016-09-13

Similar Documents

Publication Publication Date Title
KR101092775B1 (ko) 반도체 메모리 정보 축적 장치와 그 기록 제어 방법
US20110264842A1 (en) Memory controller, nonvolatile memory device, access device, and nonvolatile memory system
CN103577342B (zh) 管理闪存中所储存的数据的方法及相关记忆装置与控制器
TWI436369B (zh) 記憶裝置之使用壽命量測方法及系統內編程碼置換方法、及其資料儲存系統
US9086805B2 (en) Dynamic tracking of storage region operating parameters
JP4910064B2 (ja) 記憶制御装置、記憶装置、及びデータ移動制御方法
US20190377512A1 (en) Self-trimming of data stored in non-volatile memory using data storage controller
JP5180957B2 (ja) メモリコントローラ、半導体記録装置及び書き換え回数通知方法
JPWO2009013877A1 (ja) メモリコントローラ、メモリカード、不揮発性メモリシステム
KR100866626B1 (ko) 스페어 영역을 갖는 비휘발성 메모리 장치 및 그의 블록소거 방법
CN109753224B (zh) 存储结构及存储结构配置方法
JP4372168B2 (ja) 半導体メモリ情報蓄積装置とその蓄積データ処理方法
CN111324284B (zh) 一种存储器
JP2010015251A (ja) 記録装置
KR20140031610A (ko) 영상 데이터의 안정적 저장이 가능한 차량용 블랙박스 장치 및 그 영상 데이터의 저장방법
JP2007087149A (ja) データ記録装置
JP4720804B2 (ja) 情報処理装置
US11507306B2 (en) Recording apparatus that records data using file system, control method therefor, and storage medium storing control program therefor
JP6136939B2 (ja) メモリ制御方法、メモリ制御プログラムおよび半導体集積回路装置
CN111324285A (zh) 一种存储器
JP2010218138A (ja) メモリカード読み書き装置、メモリカードの寿命管理方法およびそのプログラム
TWI300563B (ko)
JP2008234746A (ja) 不揮発性メモリ情報蓄積装置とそのサイクリック収録方法
CN111324288A (zh) 一种存储器
JP2010288177A (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: 20151030

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161028

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171027

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181115

Year of fee payment: 8