JP4597153B2 - 非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法 - Google Patents

非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法 Download PDF

Info

Publication number
JP4597153B2
JP4597153B2 JP2007042015A JP2007042015A JP4597153B2 JP 4597153 B2 JP4597153 B2 JP 4597153B2 JP 2007042015 A JP2007042015 A JP 2007042015A JP 2007042015 A JP2007042015 A JP 2007042015A JP 4597153 B2 JP4597153 B2 JP 4597153B2
Authority
JP
Japan
Prior art keywords
mapping information
physical block
block address
volatile memory
scan
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2007042015A
Other languages
English (en)
Other versions
JP2007226806A (ja
Inventor
東 君 申
莊 煥 金
貞 銀 金
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2007226806A publication Critical patent/JP2007226806A/ja
Application granted granted Critical
Publication of JP4597153B2 publication Critical patent/JP4597153B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0871Allocation or management of cache space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/0202Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
    • H04M1/0206Portable telephones comprising a plurality of mechanically joined movable body parts, e.g. hinged housings
    • H04M1/0208Portable telephones comprising a plurality of mechanically joined movable body parts, e.g. hinged housings characterized by the relative motions of the body parts
    • H04M1/0235Slidable or telescopic telephones, i.e. with a relative translation movement of the body parts; Telephones using a combination of translation and other relative motions of the body parts
    • H04M1/0237Sliding mechanism with one degree of freedom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • 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
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/22Employing cache memory using specific memory technology
    • G06F2212/222Non-volatile memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明は、非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法に関するものであって、より詳しくはマッピング情報を安全に復旧することができる非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法に関する。
一般的に、家電機器、通信機器、セットトップボックスなどの内蔵型システム(Embedded System)では、データを保存して処理するための保存媒体として非揮発性メモリが多く使われている。
非揮発性メモリのうち主に使われるフラッシュメモリは、電気的にデータを消去したり、再記録することができる非揮発性記憶素子であって、磁気ディスクメモリを基盤とする保存媒体に比べて電力消耗が少ないながらもハードディスクのような速いアクセスタイム(Access Time)を有し、小サイズであるため携帯機器などに適合する。
最近には非揮発性メモリをハードディスクドライブなどの保存媒体に対するキャッシュとして使ってハードディスクドライブの電力消耗を減少させ、非揮発性メモリがキャッシュとして使われるシステムの起動時間を減少させている。キャッシュとして使われる非揮発性メモリは、ホストがハードディスクドライブにデータを保存しようとするとき、まず非揮発性メモリにデータが保存され、非揮発性メモリにそれ以上の保存空間がないとき、データをハードディスクドライブに移動させるようになる。これにより、非揮発性メモリでデータを読み書きするときには、ハードディスクドライブの電源を遮断できるため電力消耗を減少させることができるようになる。
このように非揮発性メモリをキャッシュとして使う保存装置は、ホストが論理ブロックアドレス(Logical Block Address)を通じて非揮発性メモリの物理ブロックアドレス(Physical Block Address)に接近できるように論理ブロックアドレスを物理ブロックアドレスに変換するマッピング情報が必要になる。
一般的にマッピング情報は、ハードディスクドライブ動作時には揮発性メモリに保存されるが、ハードディスクドライブの電源がオフになる場合には非揮発性メモリに保存されてからハードディスクドライブに再び電源が供給されるとき、揮発性メモリに再ロードされてホストがマッピング情報を通じて所定のデータに接近できるようにする。
このとき、非揮発性メモリがキャッシュとして使用される保存装置は、その特性上、予測できない突然の電源遮断が生じ得る。このような場合、揮発性メモリに保存されたマッピング情報が非揮発性メモリに保存できないためマッピング情報を復旧する過程が必要になる。
一般的にマッピング情報を復旧する方法としては、主に非揮発性メモリ全体をスキャンする方法、及び周期的にマッピング情報を非揮発性メモリに保存する方法などが用いられている。
まず、非揮発性メモリ全体をスキャンする方法は、図1のように非揮発性メモリ全体をスキャニングして最後に割り当てられた物理ブロックアドレスの、その次の物理ブロックアドレスに保存される検出データを探すようになる。このとき、有効なデータ及び有効ではないデータを区分し、図2のようなマッピング情報を復旧するようになる。
このとき、非揮発性メモリ全体をスキャンする方法は、最悪の場合、検出データを探すための全体スキャン、及びマッピング情報復旧のための全体スキャンのように2回の全体スキャンを経るようになる。これにより、スキャンにかかる時間の増加により非揮発性メモリを使うシステム起動時にかかる時間が遅延されるという問題点がある。
一方、周期的にマッピング情報を非揮発性メモリに保存する方法は、前述のような非揮発性メモリの全体スキャンを避けるために周期的にマッピング情報を非揮発性メモリに保存するようになる。
したがって、非揮発性メモリがキャッシュとして使用される保存装置の、次の起動時には非揮発性メモリに保存されたマッピング情報を通じてホストが非揮発性メモリのデータに接近できるようになる。
しかし、周期的にマッピング情報を保存する方法は、不要にマッピング情報を非常に頻繁に保存するという問題点がある。言い換えれば、マッピング情報の保存は、非揮発性メモリがキャッシュとして使用される保存装置の電源がオフになるときにのみ使われるものではなく、動作中にも行われるため非揮発性メモリがキャッシュとして使用される保存装置の性能低下の主な原因として作用するという問題点がある。
特許文献1は、コンピュータの起動時やリセット時にユーザが意図的にキャッシュ記憶装置にデータを満たすようにして、最初のラインフェッチ(Line Fetch)時間を減少させることができるキャッシュ記憶装置を開示しているが、これはコンピュータの起動時やリセット時にキャッシュ記憶装置において主記憶装置からデータをラインフェッチにより持ってくるとき、時間がかかりすぎ、ラインフェッチする開始アドレスが任意であるため最悪の場合、ラインフェッチを複数回行わなければならないという問題点を解決するためのものであって、予想できない突然の電源遮断時に速かにマッピング情報を復旧し、マッピング情報復旧のために必要な保存空間を最小化できる方案は提案されていない。
韓国公開特許第1998−0063018号公報
本発明は、予想できない突然の電源遮断時にマッピング情報復旧のために保存するマッピング情報を最小化し、速やかなマッピング情報復旧を可能にする非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法を提供するのにその目的がある。
本発明は、前述の目的に制限されず、言及されていないさらなる目的は、下記記載により当業者に明確に理解できる。
前記目的を果たすために、本発明の実施例による非揮発性メモリがキャッシュとして使用される保存装置は、非揮発性メモリのマッピング情報、及び前記マッピング情報が保存された時点で割り当てられた第1物理ブロックアドレスを前記非揮発性メモリに保存するマッピング情報保存モジュール、前記第1物理ブロックアドレスから現在割り当てられた第2物理ブロックアドレスまでスキャンを行うスキャンモジュール、及び前記スキャン結果にしたがって前記第1物理ブロックアドレス及び前記第2物理ブロックアドレスの間のマッピング情報を復旧するマッピング情報復旧モジュールを含む。
また、前記の目的を果たすために、本発明の実施例による非揮発性メモリがキャッシュとして使用される保存装置のためのマッピング情報復旧方法は、非揮発性メモリのマッピング情報、及び前記マッピング情報が保存された時点で割り当てられた第1物理ブロックアドレスを前記非揮発性メモリに保存する段階と、前記第1物理ブロックアドレスから現在割り当てられた第2物理ブロックアドレスまでスキャンを行う段階と、前記スキャン結果にしたがって前記第1物理ブロックアドレス及び前記第2物理ブロックアドレス間のマッピング情報を復旧する段階と、を含む。
その他実施例の具体的な事項は、詳細な説明及び図面に含まれている。
前記のような本発明の非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法によれば、マッピング情報を保存する回数を減少させて、非揮発性メモリをキャッシュとして使う保存装置の寿命短縮及び性能低下を防止し、予測できない突然の電源遮断後、再び電源が供給されたとき、速やかなマッピング情報の復旧が可能であるという効果がある。
本発明の利点及び特徴、そして、それらを果たす方法は、添付される図面とともに詳しく後述されている実施例を参照すれば明確になる。しかし、本発明は以下に開示される実施例に限定されるものではなく、相異なる多様な形態で具現でき、単に本実施例は本発明の開示を完全にし、本発明の属する技術分野における通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであり、本発明は請求項の範疇により定義されるだけである。明細書全般にわたって同じ参照符号は同じ構成要素を指称する。
以下、本発明の実施例によって非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法を説明するためのブロック図または処理フローチャートに関する図面を参照して本発明を説明する。このとき、処理フローチャート図面の各ブロックとフローチャート図面の組み合せは、コンピュータプログラムインストラクションにより行われることが理解できる。これらコンピュータプログラムインストラクションは、汎用コンピュータ、特需用コンピュータまたはその他プログラム可能なデータプロセシング装備のプロセッサに搭載できるので、コンピュータまたはその他プログラム可能なデータプロセシング装備のプロセッサを通じて行われるそのインストラクションがフローチャートブロック(ら)で説明された機能を行う手段を生成するようになる。これらコンピュータプログラムインストラクションは、特定の方式で機能を具現するために、コンピュータまたはその他プログラム可能なデータプロセシング装備を指向することができるコンピュータ利用可能またはコンピュータ読み取り可能メモリに保存されることも可能であるので、そのコンピュータ利用可能またはコンピュータ読み取り可能メモリに保存されたインストラクションは、フローチャートブロック(ら)で説明された機能を行うインストラクション手段を含む製造品目を生産することも可能である。コンピュータプログラムインストラクションは、コンピュータまたはその他プログラム可能なデータプロセシング装備上に搭載されることも可能であるので、コンピュータまたはその他プログラム可能なデータプロセシング装備上で一連の動作段階が行われてコンピュータで実行されるプロセスを生成して、コンピュータまたはその他プログラム可能なデータプロセシング装備を行うインストラクションは、フローチャートブロック(ら)で説明された機能を実行するための段階を提供することも可能である。
また、各ブロックは、特定された論理的機能(ら)を実行するための1つ以上の実行可能なインストラクションを含むモジュール、セグメントまたはコードの一部を表すことができる。また、数個の取り替え実行例では、ブロックで言及された機能が順序を脱して生じ得ることも注目しなければならない。例えば、続いて示されている2つのブロックは、実際実質的に同時に行われることも可能であり、またはそのブロックが時々該当する機能にしたがって逆順に行われることも可能である。
図3は、本発明の実施例による非揮発性メモリがキャッシュとして使用される保存装置が示された図面である。
図示のように、本発明の実施例による非揮発性メモリがキャッシュとして使用される保存装置100は、非揮発性メモリ110、マッピング情報保存モジュール120、スキャンモジュール130、マッピング情報復旧モジュール140、及びキャッシュ管理モジュール150を含むことができる。
一方、図3には示されていないが、本発明の非揮発性メモリがキャッシュとして使用される保存装置100は、ハードディスクドライブなどのような大容量保存媒体を含むことができ、非揮発性メモリ110は、大容量保存媒体のキャッシュとして使われる。したがって、ホストが大容量保存媒体に所定のデータを書き込もうとする場合、データはまず非揮発性メモリ110に保存され、非揮発性メモリ110にそれ以上保存空間がない場合、大容量保存媒体にデータが移動できる。
このような非揮発性メモリ110は、図4のように、ホストが論理ブロックアドレスを通じて非揮発性メモリ110に保存されたデータに接近できるように論理ブロックアドレスを物理ブロックアドレスに変換してくれるマッピング情報が保存されるマッピング情報保存領域111、及びデータが保存されるデータ保存領域112を含むことができる。
このとき、マッピング情報は、本発明の非揮発性メモリがキャッシュとして使用される保存装置100が動作中であるときは揮発性メモリに保存され、電源オフ時には非揮発性メモリ110に保存されて、本発明の非揮発性メモリがキャッシュとして使用される保存装置100に再び電源が供給されると、非揮発性メモリ110に保存されたマッピング情報が揮発性メモリに再保存され、このマッピング情報に基づいて非揮発性メモリ110のデータ保存領域112に保存されたデータに接近可能になる。
マッピング情報保存モジュール120は、マッピング情報を所定の間隔に非揮発性メモリ110のマッピング情報保存領域111に保存し、マッピング情報が保存される時点で最後に割り当てられた物理ブロックアドレス(以下、第1物理ブロックアドレスという)をマッピング情報とともに保存することができる。これは、非揮発性メモリを使うシステムの特性上、予測できない突然の電源遮断が生じる場合、マッピング情報を復旧する過程が要求され、後述するマッピング情報復旧モジュール140は、マッピング情報保存モジュール120により非揮発性メモリ110のマッピング情報保存領域111に保存されたマッピング情報、及び第1物理ブロックアドレスを通じてマッピング情報の復旧を行うことができる。
図5は、本発明の実施例によるマッピング情報の構造が示された図面である。
図示のように、本発明の実施例によるマッピング情報は、論理ブロックアドレスフィールド210、物理ブロックアドレスフィールド220、及び更新フィールド230を含むことができる。論理ブロックアドレスフィールド210、及び物理ブロックアドレスフィールド220は、所定の論理ブロックアドレスに対応する物理ブロックアドレスを示し、更新フィールド230は、所定の論理ブロックアドレスまたは物理ブロックアドレスに対応する物理ブロックアドレスまたは論理ブロックアドレスの更新可否を示す。
したがって、マッピング情報保存モジュール120は、初期には非揮発性メモリ110全体に対するマッピング情報を保存するが、その以後からは更新フィールド230に基づいて更新されたマッピング情報のみを非揮発性メモリ110のマッピング情報保存領域111に保存することができる。以下、本発明の実施例で非揮発性メモリ110全体に対するマッピング情報を第1マッピング情報と称し、更新されたマッピング情報を第2マッピング情報と称する。このとき、前述した図5のマッピング情報は第1マッピング情報として理解できる。
一方、マッピング情報保存モジュール120は、所定の個数の物理ブロックアドレスが割り当てられる毎にマッピング情報を保存することができ、マッピング情報保存領域111にそれ以上マッピング情報を保存する空間が残っていない場合にはマッピング情報保存領域111を削除してから第1マッピング情報を保存した後、第2マッピング情報を保存する過程を繰り返して行うことができる。また、第2マッピング情報を保存した後は、前述した図5の更新フィールド230を初期化するようになる。
このとき、マッピング情報保存モジュール120が所定の個数の物理ブロックアドレスが割り当てられる毎にマッピング情報を保存するのは、頻繁にマッピング情報を保存する場合にはそのデータ量が大きくなりすぎるため、本発明の非揮発性メモリがキャッシュとして使用される保存装置100の起動時に許容可能な起動遅延時間内で後述するスキャンモジュール130がスキャンすることが可能な個数の物理ブロックアドレスごとにマッピング情報を保存することができる。これはスキャンモジュール130が物理ブロックアドレスをスキャンする時間がマッピング情報を復旧するのにかかる時間として理解できるためである。
スキャンモジュール130は、本発明の非揮発性メモリがキャッシュとして使用される保存装置100で予測できない突然の電源遮断が生じた場合、マッピング情報保存モジュール120により非揮発性メモリ110のマッピング情報保存領域111に保存された第1物理ブロックアドレスから電源遮断が生じた時点で割り当てられた物理ブロックアドレス(以下、第2物理ブロックアドレスという)までのスキャンを行って第1物理ブロックアドレス、及び第2物理ブロックアドレスの間に位置した物理ブロックアドレスに対応する論理ブロックアドレスをスキャンするようになる。このとき、所定の物理ブロックアドレスが割り当てられた場合、その次に位置する物理ブロックアドレスにこれを検出するための検出データが保存されるため、スキャンモジュール130は本発明の非揮発性メモリがキャッシュとして使用される保存装置100の電源遮断が生じた時点における第2物理ブロックアドレスを判断することができる。
また、スキャンモジュール130は、所定の物理ブロックアドレスが割り当てられるとき、当該物理ブロックアドレスの所定の領域(例えば、スペア(Spare)領域)にマッピングされた論理ブロックアドレスを保存するため、所定の物理ブロックアドレスにマッピングされた論理ブロックアドレスをスキャンすることができる。
このとき、スキャンモジュール130がスキャンする第1物理ブロックアドレス、及び第2物理ブロックアドレスの間の物理ブロックアドレスの個数は、前述したマッピング情報保存モジュール120がマッピング情報を保存する間隔である、第1物理ブロックアドレスの以後に割り当てられた物理ブロックアドレスの個数として理解できる。例えば、マッピング情報保存モジュール120が、N個の物理ブロックアドレスが割り当てられる毎にマッピング情報を保存する場合、スキャンモジュール130がスキャンする最大物理ブロックアドレスはN個になり得る。このとき、N個の物理ブロックアドレスが割り当てられる前に本発明の非揮発性メモリがキャッシュとして使用される保存装置100の電源遮断が生じた場合、スキャンする物理ブロックアドレスの個数はN個より少ないことがある。
マッピング情報復旧モジュール140は、スキャンモジュール130によりスキャンされた結果を通じて、第1物理ブロックアドレスが保存された時点から本発明の非揮発性メモリがキャッシュとして使用される保存装置100の電源遮断が生じた時点の第2物理ブロックアドレスまでのマッピング情報を復旧することができる。
具体的に、マッピング情報復旧モジュール140は、スキャンモジュール130のスキャン結果、第1物理ブロックアドレス、及び第2物理ブロックアドレスの間に割り当てられた物理ブロックアドレスと、それによる論理ブロックアドレスを通じて本発明の非揮発性メモリがキャッシュとして使用される保存装置100の電源遮断が生じた後、再び電源が供給されたとき、マッピング情報を復旧することができる。
このとき、マッピング情報復旧モジュール140は、第1物理ブロックアドレスから第2物理ブロックアドレスまでのマッピング情報だけを復旧すればよいので、既存の最後に割り当てられた物理ブロックアドレスを判断し、判断された物理ブロックアドレスから全体物理ブロックアドレスをスキャンしてマッピング情報を復旧する場合に比べて短時間内にマッピング情報を復旧できるようになる。
キャッシュ管理モジュール150は、揮発性メモリに保存されたデータを非揮発性メモリ110のデータ保存領域112に保存する役目を行うことができる。また、キャッシュ管理モジュール150は、非揮発性メモリ110の所定の物理ブロックアドレスにデータを保存する場合、それに対応する論理ブロックアドレスを該当する物理ブロックアドレスにともに保存することができる。これは次回にマッピング情報を復旧する場合、前述したスキャンモジュール130が物理ブロックアドレスをスキャンする過程において論理ブロックアドレスまで判断できるようにするためである。
図6は、本発明の実施例によるマッピング情報保存方法が示された図面である。このとき、図6のマッピング情報保存方法は、マッピング情報保存モジュール120が非揮発性メモリ110のマッピング情報保存領域111に非揮発性メモリ110全体マッピング情報である第1マッピング情報を保存した場合を例として説明する。また、第1マッピング情報とともに第1マッピング情報が保存された時点における第1物理ブロックアドレスもともに保存された場合を例として説明する。
図示のように、本発明の実施例によるマッピング情報保存方法は、まずマッピング情報保存モジュール120が現在時点で第1物理ブロックアドレスの以後に所定の個数の物理ブロックアドレスが割り当てられたかを判断する(S110)。このとき、マッピング情報保存モジュール120が判断する割り当てられた物理ブロックアドレスの個数はN個である場合を例として説明する。このとき、第1物理ブロックアドレスから割り当てられたN個の物理ブロックアドレスは、スキャンモジュール130がスキャンする物理ブロックアドレスの個数であり、これは本発明の非揮発性メモリがキャッシュとして使われる装置100起動時、遅延可能な時間内でスキャンできる最大個数の物理ブロック個数として理解できる。
判断結果、第1物理ブロックアドレスから割り当てられた物理ブロックアドレスの個数がN個以上である場合(S120)、マッピング情報保存モジュール120は、非揮発性メモリ110のマッピング情報保存領域111に保存空間が残っているか否かを判断する(S130)。
マッピング情報保存領域111に保存空間がある場合、マッピング情報保存モジュール120は、第1マッピング情報の更新フィールド230に基づいて更新されたマッピング情報である第2マッピング情報をマッピング情報保存領域111に保存する(S140)。
以後、マッピング情報保存モジュール120は、第2マッピング情報が保存された時点で最後に割り当てられた物理ブロックアドレスを第1物理ブロックアドレスに変更し(S150)、変更された第1物理ブロックアドレスをマッピング情報保存領域111に保存するようになる(S160)。
たとえ、前述したS130段階でマッピング情報保存領域111に保存空間が残っていない場合、マッピング情報保存モジュール120はマッピング情報保存領域111を削除し(S170)、非揮発性メモリ110の全体マッピング情報である第1マッピング情報をマッピング情報保存領域111に保存するようになる(S180)。このとき、S170段階で保存される第1マッピング情報は、更新が全部適用されたマッピング情報として理解できる。
以後、前述したS150及びS160段階のように、現在時点で最後に割り当てられた物理ブロックアドレスを第1物理ブロックアドレスに変更し、変更された第1物理ブロックアドレスをマッピング情報保存領域111に保存するようになる。
言い換えれば、本発明の実施例によるマッピング情報保存モジュール120は、図7のように、第1マッピング情報が保存された時点で最後に割り当てられた第1物理ブロックアドレスからN個の物理ブロックアドレスが割り当てられた場合、マッピング情報保存モジュール120は、更新された第2マッピング情報をマッピング情報保存領域111に、現在時点で割り当てられた物理ブロックアドレスを第1物理ブロックアドレスに変更して保存することができる。
図8は、本発明の実施例によるマッピング情報復旧方法が示された図面である。
図示のように、本発明の実施例によるマッピング情報復旧方法は、まずマッピング情報復旧モジュール140がマッピング情報保存領域111からマッピング情報、及び第1物理ブロックアドレスを判断する(S210)。このとき、判断されるマッピング情報は、第1マッピング情報、及び第2マッピング情報のうち少なくとも1つを含むことができる。
マッピング情報復旧モジュール140は所定の変数iを設定し、設定された変数iに1を入力する(S220)。以後、マッピング情報復旧モジュール140は、抽出された第1物理ブロックアドレス+iに該当する物理ブロックアドレスをスキャンモジュール130を通じてスキャンし(S230)、スキャン結果、当該物理ブロックアドレスに検出データが保存されたかを判断する(S240)。
判断結果、当該物理ブロックアドレスに検出データが保存されていない場合、マッピング情報復旧モジュール140はマッピング情報を更新して(S250)、変数iに1を足すようになる(S260)。
以後、マッピング情報復旧モジュール140は第1物理ブロックアドレスからiを1ずつ増加させながら検出データが存在する第2物理ブロックアドレスが出されるまでマッピング情報を更新する過程(S230ないしS260)を繰り返して行うことができる。
言い換えれば、本発明の実施例によるマッピング情報復旧モジュール140は、図9のように、非揮発性メモリ110のマッピング情報保存領域111から判断された第1物理ブロックアドレスから順次にスキャンモジュール130によりスキャンされた結果を通じてマッピング情報を更新することができ、検出データが保存された物理ブロックアドレスを判断して、その以前物理ブロックアドレスである第2物理ブロックアドレスまでのマッピング情報を更新してマッピング情報を復旧することができる。このとき、マッピング情報復旧モジュール140は、物理ブロックアドレスのスキャン時、判断される物理ブロックアドレス、及びそれに対応する論理ブロックアドレスを通じてマッピング情報を復旧することができる。
本発明の実施例で使われる用語のうち「モジュール」は、ソフトウェアまたはField Programmable Gate Array(FPGA)または注文型半導体(Applicat Specific Integrated Circuit、ASIC)のようなハードウェア構成要素を意味し、モジュールはいずれかの役目を行う。しかし、モジュールはソフトウェアまたはハードウェアに限定される意味ではない。モジュールは、アドレシングできる保存媒体にあるように構成でき、もしくは1つまたはそれ以上のプロセッサを実行させるようにも構成できる。したがって、一例としてモジュールは、ソフトウェア構成要素、オブジェクト指向ソフトウェア構成要素、クラス構成要素及びタスク構成要素のような構成要素と、プロセス、関数、属性、プロシージャ、サブルーチン、プログラムコードのセグメント、ドライバ、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ、及び変数を含む。構成要素等とモジュールで提供される機能はさらに小さい数の構成要素及びモジュールで結合されたり、追加的な構成要素とモジュールにさらに分離できる。
以上のように、本発明による非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法を例示した図面を参照して説明したが、本明細書に開示された実施例と図面により本発明は限定されず、その発明の技術思想の範囲内で当業者により多様な変形が行われることは言うまでもない。
従来の技術による非揮発性メモリの全体スキャンを通じるマッピング情報復旧方法が示された図である。 図1のマッピング情報復旧方法によって復旧されたマッピング情報が示された図である。 本発明の実施例による非揮発性メモリがキャッシュとして使用される保存装置が示された図である。 本発明の実施例による非揮発性メモリが示された図である。 本発明の実施例によるマッピング情報が示された図である。 本発明の実施例によるマッピング情報を保存する方法が示された図である。 本発明の実施例によるマッピング情報を保存する間隔が示された図である。 本発明の実施例によるマッピング情報を復旧する方法が示された図である。 本発明の実施例によるマッピング情報を復旧する区間が示された図である。
符号の説明
110 非揮発性メモリ
120 マッピング情報保存モジュール
130 スキャンモジュール
140 マッピング情報復旧モジュール
150 キャッシュ管理モジュール

Claims (20)

  1. 非揮発性メモリの連続した物理ブロックアドレスが順次に割り当てられる、非揮発性メモリがキャッシュとして使用される保存装置であって、
    論理ブロックアドレスと物理ブロックアドレスとの対応関係を表す非揮発性メモリのマッピング情報、及び前記マッピング情報が保存された時点で割り当てられた第1物理ブロックアドレスを前記非揮発性メモリに保存するマッピング情報保存モジュールと、
    前記第1物理ブロックアドレスから現在割り当てられた第2物理ブロックアドレスまでスキャンを行うスキャンモジュールと、
    前記スキャン結果にしたがって前記第1物理ブロックアドレス前記第2物理ブロックアドレスの間の物理ブロックアドレスに関するマッピング情報を復旧するマッピング情報復旧モジュールと、を含むことを特徴とする保存装置。
  2. 前記非揮発性メモリは、前記マッピング情報、及び前記第1物理ブロックアドレスが保存されるマッピング情報保存領域を含むことを特徴とする請求項1に記載の保存装置。
  3. 前記マッピング情報保存モジュールは、前記第1物理ブロックアドレスの以後に所定の個数の物理ブロックアドレスが割り当てられる毎に前記マッピング情報を保存することを特徴とする請求項2に記載の保存装置。
  4. 前記マッピング情報は、前記非揮発性メモリ全体のマッピング情報である第1マッピング情報と、
    更新されたアドレスのマッピング情報である第2マッピング情報と、を含むことを特徴とする請求項2に記載の保存装置。
  5. 前記第1マッピング情報は、論理ブロックアドレスフィールド、物理ブロックアドレスフィールド、及び所定のアドレスの更新可否を示す更新フィールドを含むことを特徴とする請求項4に記載の保存装置。
  6. 前記マッピング情報保存モジュールは、前記第1マッピング情報を前記マッピング情報保存領域に保存し、
    前記更新フィールドのフィールド値に基づいて前記第2マッピング情報を前記マッピング情報保存領域にさらに保存することを特徴とする請求項5に記載の保存装置。
  7. 前記マッピング情報保存モジュールは、前記マッピング情報保存領域で保存空間がない場合、前記マッピング情報保存領域を削除してから前記第1マッピング情報を保存することを特徴とする請求項6に記載の保存装置。
  8. 前記スキャンモジュールは、割り当てられた所定の物理ブロックアドレスの次に位置した物理ブロックアドレスに保存される検出データを通じて前記第2物理ブロックアドレスを判断し、
    前記第1物理ブロックアドレスから前記判断された第2物理ブロックアドレスまでスキャンを行うことを特徴とする請求項1に記載の保存装置。
  9. 前記マッピング情報復旧モジュールは、前記スキャンが行われた物理ブロックアドレス、及び前記スキャンが行われた物理ブロックアドレスに対応する論理ブロックアドレスを通じてマッピング情報を復旧することを特徴とする請求項8に記載の保存装置。
  10. 所定の物理ブロックアドレスに対応する論理ブロックアドレスを物理ブロックアドレスに保存するキャッシュ管理モジュールをさらに含むことを特徴とする請求項9に記載の保存装置。
  11. 非揮発性メモリの連続した物理ブロックアドレスが順次に割り当てられる、非揮発性メモリがキャッシュとして使用される保存装置、におけるマッピング情報復旧方法であって、
    論理ブロックアドレスと物理ブロックアドレスとの対応関係を表す非揮発性メモリのマッピング情報、及び前記マッピング情報が保存された時点で割り当てられた第1物理ブロックアドレスを前記非揮発性メモリに保存する段階と、
    前記第1物理ブロックアドレスから現在割り当てられた第2物理ブロックアドレスまでスキャンを行う段階と、
    前記スキャン結果にしたがって前記第1物理ブロックアドレス前記第2物理ブロックアドレスの間の物理ブロックアドレスに関するマッピング情報を復旧する段階と、を含むことを特徴とするマッピング情報復旧方法。
  12. 前記非揮発性メモリは、前記マッピング情報、及び前記第1物理ブロックアドレスが保存されるマッピング情報保存領域を含むことを特徴とする請求項11に記載のマッピング情報復旧方法。
  13. 前記マッピング情報を保存する段階は、前記第1物理ブロックアドレスの以後に所定の個数の物理ブロックアドレスが割り当てられる毎に前記マッピング情報を保存する段階を含むことを特徴とする請求項12に記載のマッピング情報復旧方法。
  14. 前記マッピング情報は、前記非揮発性メモリ全体のマッピング情報である第1マッピング情報と、
    更新されたアドレスのマッピング情報である第2マッピング情報と、を含むことを特徴とする請求項12に記載のマッピング情報復旧方法。
  15. 前記第1マッピング情報は、論理ブロックアドレスフィールド、物理ブロックアドレスフィールド、及び所定のアドレスの更新可否を示す更新フィールドを含むことを特徴とする請求項14に記載のマッピング情報復旧方法。
  16. 前記マッピング情報を保存する段階は、前記第1マッピング情報を前記マッピング情報保存領域に保存する段階と、
    前記更新フィールドのフィールド値に基づいて前記第2マッピング情報を前記マッピング情報保存領域にさらに保存する段階と、を含むことを特徴とする請求項15に記載のマッピング情報復旧方法。
  17. 前記マッピング情報を保存する段階は、前記マッピング情報保存領域に保存空間がない場合、前記マッピング情報保存領域を削除してから前記第1マッピング情報を保存する段階を含むことを特徴とする請求項16に記載のマッピング情報復旧方法。
  18. 前記スキャンを行う段階は、割り当てられた所定の物理ブロックアドレスの次に位置した物理ブロックアドレスに保存される検出データを通じて前記第2物理ブロックアドレスを判断する段階と、
    前記第1物理ブロックアドレスから前記判断された第2物理ブロックアドレスまでスキャンを行う段階と、を含むことを特徴とする請求項11に記載のマッピング情報復旧方法。
  19. 前記マッピング情報を復旧する段階は、前記スキャンが行われた物理ブロックアドレス及び前記スキャンが行われた物理ブロックアドレスに対応する論理ブロックアドレスを通じてマッピング情報を復旧する段階を含むことを特徴とする請求項18に記載のマッピング情報復旧方法。
  20. 所定の物理ブロックアドレスに対応する論理ブロックアドレスを物理ブロックアドレスに保存する段階をさらに含むことを特徴とする請求項19に記載のマッピング情報復旧方法。
JP2007042015A 2006-02-24 2007-02-22 非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法 Active JP4597153B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060018286A KR100781520B1 (ko) 2006-02-24 2006-02-24 비휘발성 메모리가 캐쉬로 사용되는 저장 장치 및 이를위한 맵핑 정보 복구 방법

Publications (2)

Publication Number Publication Date
JP2007226806A JP2007226806A (ja) 2007-09-06
JP4597153B2 true JP4597153B2 (ja) 2010-12-15

Family

ID=38090869

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007042015A Active JP4597153B2 (ja) 2006-02-24 2007-02-22 非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法

Country Status (5)

Country Link
US (1) US7636807B2 (ja)
EP (1) EP1826675A3 (ja)
JP (1) JP4597153B2 (ja)
KR (1) KR100781520B1 (ja)
CN (1) CN101025712B (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9116823B2 (en) 2006-12-06 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for adaptive error-correction coding
US9495241B2 (en) 2006-12-06 2016-11-15 Longitude Enterprise Flash S.A.R.L. Systems and methods for adaptive data storage
US8074011B2 (en) 2006-12-06 2011-12-06 Fusion-Io, Inc. Apparatus, system, and method for storage space recovery after reaching a read count limit
WO2008070191A2 (en) 2006-12-06 2008-06-12 Fusion Multisystems, Inc. (Dba Fusion-Io) Apparatus, system, and method for a reconfigurable baseboard management controller
JP4961319B2 (ja) * 2007-10-11 2012-06-27 株式会社日立製作所 仮想ボリュームにおける仮想領域に動的に実領域を割り当てるストレージシステム
US7836226B2 (en) 2007-12-06 2010-11-16 Fusion-Io, Inc. Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment
US8195912B2 (en) 2007-12-06 2012-06-05 Fusion-io, Inc Apparatus, system, and method for efficient mapping of virtual and physical addresses
CN101470645B (zh) * 2007-12-29 2012-04-25 华为技术有限公司 一种高速缓存数据恢复的方法和装置
KR101477047B1 (ko) 2008-02-29 2014-12-30 삼성전자주식회사 메모리 시스템 및 그것의 블록 병합 방법
KR101717644B1 (ko) * 2009-09-08 2017-03-27 샌디스크 테크놀로지스 엘엘씨 고체-상태 저장 디바이스 상에서 데이터를 캐싱하는 장치, 시스템, 및 방법
US9110594B2 (en) 2009-11-04 2015-08-18 Seagate Technology Llc File management system for devices containing solid-state media
US8443167B1 (en) 2009-12-16 2013-05-14 Western Digital Technologies, Inc. Data storage device employing a run-length mapping table and a single address mapping table
US8194340B1 (en) 2010-03-18 2012-06-05 Western Digital Technologies, Inc. Disk drive framing write data with in-line mapping data during write operations
US9330715B1 (en) 2010-03-22 2016-05-03 Western Digital Technologies, Inc. Mapping of shingled magnetic recording media
US8687306B1 (en) 2010-03-22 2014-04-01 Western Digital Technologies, Inc. Systems and methods for improving sequential data rate performance using sorted data zones
US8856438B1 (en) 2011-12-09 2014-10-07 Western Digital Technologies, Inc. Disk drive with reduced-size translation table
US8693133B1 (en) 2010-03-22 2014-04-08 Western Digital Technologies, Inc. Systems and methods for improving sequential data rate performance using sorted data zones for butterfly format
US8699185B1 (en) 2012-12-10 2014-04-15 Western Digital Technologies, Inc. Disk drive defining guard bands to support zone sequentiality when butterfly writing shingled data tracks
US8667248B1 (en) 2010-08-31 2014-03-04 Western Digital Technologies, Inc. Data storage device using metadata and mapping table to identify valid user data on non-volatile media
US8756361B1 (en) 2010-10-01 2014-06-17 Western Digital Technologies, Inc. Disk drive modifying metadata cached in a circular buffer when a write operation is aborted
US8954664B1 (en) 2010-10-01 2015-02-10 Western Digital Technologies, Inc. Writing metadata files on a disk
US8793429B1 (en) 2011-06-03 2014-07-29 Western Digital Technologies, Inc. Solid-state drive with reduced power up time
US8756382B1 (en) 2011-06-30 2014-06-17 Western Digital Technologies, Inc. Method for file based shingled data storage utilizing multiple media types
KR101890767B1 (ko) * 2011-07-01 2018-09-28 시게이트 테크놀로지 인터내셔날 주소 사상 정보 관리 방법 이를 적용한 저장 장치
US9213493B1 (en) 2011-12-16 2015-12-15 Western Digital Technologies, Inc. Sorted serpentine mapping for storage drives
US8819367B1 (en) 2011-12-19 2014-08-26 Western Digital Technologies, Inc. Accelerated translation power recovery
CN102567490B (zh) * 2011-12-21 2013-12-04 华为技术有限公司 数据库内的描述信息的恢复和数据的缓存方法及设备
US8612706B1 (en) 2011-12-21 2013-12-17 Western Digital Technologies, Inc. Metadata recovery in a disk drive
US8953269B1 (en) 2014-07-18 2015-02-10 Western Digital Technologies, Inc. Management of data objects in a data object zone
US9875055B1 (en) 2014-08-04 2018-01-23 Western Digital Technologies, Inc. Check-pointing of metadata
CN104765656A (zh) * 2015-04-23 2015-07-08 浪潮电子信息产业股份有限公司 一种冷数据的备份方法及装置
US10754792B2 (en) 2016-01-29 2020-08-25 Hewlett Packard Enterprise Development Lp Persistent virtual address spaces
US9971645B2 (en) 2016-08-23 2018-05-15 Seagate Technology Llc Auto-recovery of media cache master table data
US10318417B2 (en) * 2017-03-31 2019-06-11 Intel Corporation Persistent caching of memory-side cache content
US10223272B2 (en) 2017-04-25 2019-03-05 Seagate Technology Llc Latency sensitive metadata object persistence operation for storage device
KR102566635B1 (ko) 2017-12-18 2023-08-14 삼성전자주식회사 비휘발성 메모리 시스템 및 그 동작 방법
US11076441B2 (en) * 2018-05-21 2021-07-27 Nxp Usa, Inc. Unreachable node recovery in wireless mesh networks

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999032977A1 (fr) * 1997-12-22 1999-07-01 Tdk Corporation Systeme de memoire flash
JP2003167795A (ja) * 2001-11-16 2003-06-13 Samsung Electronics Co Ltd フラッシュメモリの管理方法
JP2005222202A (ja) * 2004-02-04 2005-08-18 Matsushita Electric Ind Co Ltd 不揮発性記憶装置のデータ保護方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05225062A (ja) 1992-02-13 1993-09-03 Matsushita Electric Ind Co Ltd ディスク・キャッシュ装置
JPH0628261A (ja) 1992-04-17 1994-02-04 Hitachi Ltd データ転送方法及び装置
JPH0877074A (ja) * 1994-09-09 1996-03-22 Hitachi Ltd フラッシュメモリを用いた記憶装置システム
JPH08249217A (ja) * 1995-03-15 1996-09-27 Toshiba Corp キャッシュ管理装置
US5838614A (en) 1995-07-31 1998-11-17 Lexar Microsystems, Inc. Identification and verification of a sector within a block of mass storage flash memory
KR0174711B1 (ko) * 1996-04-24 1999-04-15 김광호 하드디스크 캐시의 제어방법
KR19980063018A (ko) 1996-12-31 1998-10-07 문정환 캐시 기억장치
US6105103A (en) * 1997-12-19 2000-08-15 Lsi Logic Corporation Method for mapping in dynamically addressed storage subsystems
US6839826B2 (en) 2002-02-06 2005-01-04 Sandisk Corporation Memory device with pointer structure to map logical to physical addresses
US20030163633A1 (en) * 2002-02-27 2003-08-28 Aasheim Jered Donald System and method for achieving uniform wear levels in a flash memory device
US7533214B2 (en) * 2002-02-27 2009-05-12 Microsoft Corporation Open architecture flash driver
US7174440B2 (en) 2002-10-28 2007-02-06 Sandisk Corporation Method and apparatus for performing block caching in a non-volatile memory system
KR100457812B1 (ko) * 2002-11-14 2004-11-18 삼성전자주식회사 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법
US8041878B2 (en) * 2003-03-19 2011-10-18 Samsung Electronics Co., Ltd. Flash file system
DE602007006639D1 (de) * 2006-03-07 2010-07-01 Nxp Bv Elektronische schaltung mit einer speichermatrix zcher daten

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999032977A1 (fr) * 1997-12-22 1999-07-01 Tdk Corporation Systeme de memoire flash
JP2003167795A (ja) * 2001-11-16 2003-06-13 Samsung Electronics Co Ltd フラッシュメモリの管理方法
JP2005222202A (ja) * 2004-02-04 2005-08-18 Matsushita Electric Ind Co Ltd 不揮発性記憶装置のデータ保護方法

Also Published As

Publication number Publication date
US7636807B2 (en) 2009-12-22
JP2007226806A (ja) 2007-09-06
US20070204100A1 (en) 2007-08-30
CN101025712B (zh) 2011-01-12
KR100781520B1 (ko) 2007-12-03
CN101025712A (zh) 2007-08-29
EP1826675A2 (en) 2007-08-29
KR20070088102A (ko) 2007-08-29
EP1826675A3 (en) 2008-08-13

Similar Documents

Publication Publication Date Title
JP4597153B2 (ja) 非揮発性メモリがキャッシュとして使用される保存装置、及びそのためのマッピング情報復旧方法
US10552311B2 (en) Recovery for non-volatile memory after power loss
US8255614B2 (en) Information processing device that accesses memory, processor and memory management method
TWI470426B (zh) Memory management device and memory management method
KR100755700B1 (ko) 비휘발성 메모리가 캐쉬로 사용되는 저장 장치 및 그 관리방법
KR100755702B1 (ko) 비휘발성 메모리가 캐쉬로 사용되는 저장 장치 및 그 동작방법
US8966156B2 (en) Memory device, memory system and mapping information recovering method
TWI590049B (zh) 記憶體裝置與其操作方法
KR101286477B1 (ko) 플래시 메모리 시스템의 고속 웨이크-업을 용이하게 하는방법 및 시스템
JP5702348B2 (ja) 不揮発性メモリを有するシステムの非正常シャットダウンの取り扱い
CN104572489B (zh) 磨损均衡方法及装置
JP6112595B2 (ja) メモリシステムにおける消去管理
JP2008084316A (ja) 異種セルタイプを支援する不揮発性メモリのためのマッピング情報管理装置および方法
JP4227106B2 (ja) フラッシュメモリのデータ復旧装置及び方法
CN109165115B (zh) 一种增强flash存储器可靠性的方法
KR20080037283A (ko) 플래시 메모리 장치를 포함하는 시스템 및 그것의 데이터복구 방법
US20060018227A1 (en) Controller, data memory system, data rewriting method, and computer program product
JP2009187062A (ja) 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法
US20110271030A1 (en) Wear Leveling For Erasable Memories
US9442666B2 (en) Optimized management of operation data in a solid-state memory
JP2004303238A (ja) フラッシュメモリアクセス装置及び方法
KR100781517B1 (ko) 비휘발성 메모리의 맵핑 정보 관리 장치 및 방법
CN117033268A (zh) 一种ssd控制器、数据处理方法、设备及存储介质
CN1866205A (zh) 一种配置信息平滑升级的方法及装置
JP2005190289A (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100727

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100824

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100921

R150 Certificate of patent or registration of utility model

Ref document number: 4597153

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131001

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250