JP2006079543A - メモリ管理装置 - Google Patents

メモリ管理装置 Download PDF

Info

Publication number
JP2006079543A
JP2006079543A JP2004265806A JP2004265806A JP2006079543A JP 2006079543 A JP2006079543 A JP 2006079543A JP 2004265806 A JP2004265806 A JP 2004265806A JP 2004265806 A JP2004265806 A JP 2004265806A JP 2006079543 A JP2006079543 A JP 2006079543A
Authority
JP
Japan
Prior art keywords
data
address
physical block
erased
block
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.)
Granted
Application number
JP2004265806A
Other languages
English (en)
Other versions
JP4192129B2 (ja
Inventor
Takanari Suda
隆也 須田
Hiroaki Muraoka
寛昭 村岡
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2004265806A priority Critical patent/JP4192129B2/ja
Priority to US11/022,857 priority patent/US7057942B2/en
Priority to TW094129671A priority patent/TW200622611A/zh
Priority to CNB200510099944XA priority patent/CN100412822C/zh
Publication of JP2006079543A publication Critical patent/JP2006079543A/ja
Priority to US11/408,021 priority patent/US7227788B2/en
Priority to US11/757,736 priority patent/US7388792B2/en
Application granted granted Critical
Publication of JP4192129B2 publication Critical patent/JP4192129B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups

Landscapes

  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】不揮発性メモリのデータの消去にかかる処理時間を短縮する。
【解決手段】フラッシュメモリ制御部11は、ホスト機器2からのデータ消去要求がなされた際に、論理物理アドレス変換テーブル13aを参照し、消去要求で指定された論理ブロックと対応付けられる物理ブロックアドレスを検出する。フラッシュメモリ制御部11は、消去領域ポインタ記憶領域13bにアクセスして、データ消去要求による消去対象のデータが記憶される領域、つまり、物理ブロックアドレス“3”が対応付けられた物理ブロックの0ページ目から31ページ目までの32ページ分の領域を仮想消去領域として設定する。そして、ホスト機器2よりデータ読み出し要求がなされて、読み出し対象のデータが書込まれるページ範囲が、消去領域ポインタで示された領域に含まれる場合には、初期値データをホスト機器2に出力する。
【選択図】 図7

Description

本発明は、不揮発性メモリのメモリ管理装置に関する。
従来、不揮発性メモリの一種であるNANDフラッシュメモリは、既にデータライトが発生しているブロックに対してオーバーライトが発生する場合には、このオーバーライトされるべきブロック上のオーバーライトされるべきデータ以外のデータを他の物理ブロックへ書込む処理が必要となるので、多くの処理時間を要していた。
このような、本来ライトすべきデータ以外のライト処理を無くすために、例えば特許文献1に開示されたように、1つの仮想ブロックに対し複数の物理ブロックを対応づけた方式がある。この方式では、消去命令にしたがって仮想ブロックと物理ブロックの対応を取り消す処理を行なうことで、データ消去にかかる処理時間を短縮するものがある。
特開2003−280822号公報
前述したNANDフラッシュメモリを用いたメモリ装置であるメモリカードにおいて、当該メモリカードの一種であるSDメモリカード(登録商標)の推奨ファイルシステムであるFAT(ファイルアロケーションテーブル)ファイルシステムでは、1GBまでの容量では、クラスタサイズは16KByteである。メモリカードにリード・ライトするファイルのサイズはクラスタ単位で割り当てられるので、ホスト機器がメモリカードへ発行する消去の最小単位は同じく16KByteを指定する場合が多い。またメモリカードに発行される消去命令は、カードのフォーマット時がほとんどである。
ホスト機器は、消去命令にしたがって、マスターブートレコードをリードし、アドレスを16KBインクリメントしながら16KBの範囲のデータが順次消去するような制御を行なう。
元来、NANDフラッシュメモリの物理ブロックサイズは16KByteのものが多く、先に示したクラスタサイズと同じであった。しかし、メモリのチップサイズを小さくする為、物理ブロックサイズは、32KByte,128KByte,256KByte,…と徐々に大きくなっている。
そのため、物理ブロックサイズが256KByteの場合で、かつ、クラスタサイズが16KBの場合に、メモリの物理ブロック中の16KBを消去しようとした場合、NANDフラッシュメモリでは、データの上書きができないため、当該NANDフラッシュメモリでは、別の物理ブロックを用意して、物理ブロックサイズである256KByte中の消去範囲の16KB以外のデータについてコピーする必要がある。したがって、一部分のデータ消去を行なう場合には、その処理時間は消去サイズに見合う長さとならず、常に一定の処理時間を要してしまう。
そこで、本発明の目的は、データの消去にかかる処理時間を短縮することが可能になるメモリ管理装置を提供することにある。
すなわち、本発明に係わるメモリ管理装置は、複数のブロックを有し、その各ブロックを消去単位としてデータを消去可能に構成してなる不揮発性半導体メモリを管理し、不揮発性半導体メモリに対するデータの消去要求による消去対象のデータを含むブロックにおいて、消去対象のデータのアドレス範囲を設定し、不揮発性半導体メモリに対するデータの読み出し要求があった際に、読み出し要求にしたがった読み出し対象のアドレス範囲が、前述のように設定したアドレス範囲に含まれる場合に、読み出し対象のデータとして初期値データを出力する制御を行なうことを特徴とする。
本発明に係わるメモリ管理装置では、不揮発性半導体メモリの各ブロックにおける、消去対象のデータを含むブロック中において、当該消去対象のデータのアドレス範囲を設定し、この設定されたアドレス範囲と対応する領域を、消去要求にしたがったデータ消去がなされた領域とするので、データ消去の際のデータ書き込み処理を行なう必要がなくなる。よって、データ消去にかかる時間を短縮することができる。
以下図面により本発明の実施形態について説明する。
図1は、本発明の実施形態にしたがったメモリカード(メモリ装置)1の構成例を示すブロック図である。
図1に示したメモリカード1は、例えばデジタルカメラなどのホスト機器2と接続される。
メモリカード1は、フラッシュメモリ制御部11、ホストインタフェース部12、RAM13、フラッシュメモリ14を備える。フラッシュメモリ14は、例えばNAND型不揮発性メモリである。フラッシュメモリ制御部11は、ホストインタフェース部12を介してホスト機器2と接続される。また、フラッシュメモリ制御部11は、RAM13およびフラッシュメモリ14と接続される。
ホスト機器2から発行されたメモリカード1へのコマンドは、コマンド用の信号線を通してカード内部のホストインタフェース部12に到達する。
ホストインタフェース部12は、コマンドフォーマットより、コマンド情報と、アドレス情報を抽出する。フラッシュメモリ制御部11は、ホストインタフェース部12からのコマンド情報とアドレス情報をもとに、フラッシュメモリ制御部11の動作を制御する。
フラッシュメモリ制御部11は、フラッシュメモリ14の物理ブロックと論理ブロックの対応関係を示すテーブルの管理や、消去に関する管理を行なう。
図2は、本発明の実施形態にしたがったメモリカード1のフラッシュメモリ14上の物理ブロックに書込まれているデータの一部を消去する手順(その1)を示す遷移図である。
フラッシュメモリ14における物理ブロックの1ブロック分のサイズは128KByte(KB)である。フラッシュメモリ14の物理ブロックの1ブロックは256ページでなる。1ページに書込まれるデータサイズは512Byteである。
図2では、メモリカード1の記憶領域の論理ブロックアドレス”0x40000“番地分にわたったアドレス範囲で、連続した256KB分のデータが書込まれている場合を示す。論理ブロックアドレスとは、メモリカード1の仮想メモリ上のインデックス値である。”0x“は16進数の識別子である。
フラッシュメモリ14の物理ブロックの1ブロックのサイズは128KBであるから、連続した256KBのデータは、フラッシュメモリ14上の2つの物理ブロックにまたがって書込まれる。
図2に示した“物理ブロックn(n=0,1,2,…)”は、物理ブロックアドレス“n”が付与される物理ブロックである。図2に示した形態では、前述した256KBのデータのうち128KBのデータは、物理ブロックアドレス”3“が付与される物理ブロックに書込まれる。また、残り128KBのサイズのデータは、物理ブロックアドレス”5“が付与される物理ブロックに書込まれている。
RAM13は、図1に示すように、論理物理アドレス変換テーブル13aおよび消去領域ポインタ記憶領域13bを備える。論理物理アドレス変換テーブル13aは、フラッシュメモリ14上の各物理ブロックのうち、データが書込まれている物理ブロックに付与される物理ブロックアドレス、および、論理ブロックアドレスを対応付けて管理する。
例えば、図2に示した論理物理アドレス変換テーブル13aに書込まれている“0x40000…物理ブロック3”とは、論理ブロックアドレス“0x40000”番地と物理ブロックアドレス“3”が対応付けられていることを示し、この場合には、論理ブロックアドレス“0x40000”番地を先頭アドレスとして“0x20000”番地分連続したアドレス範囲が付与される論理ブロックに記憶されているデータが、物理ブロックアドレス“3”が付与される物理ブロックに記憶されることを意味する。
また、論理ブロックアドレスと物理ブロックアドレスの対応がなされていない物理ブロックは、未使用状態の物理ブロックである。この未使用状態の物理ブロックには初期値データが書込まれており、システムから読み出し要求があった際には、この初期値データが読み出される。
この未使用状態の物理ブロックは、当該物理ブロックに付与された物理ブロックアドレスが、フラッシュメモリ制御部11による制御にしたがって、論理ブロックアドレスと対応付けられれば、使用することができる。
図1に示した消去領域ポインタ記憶領域13bは、予め定めた物理ブロックアドレスが付与された物理ブロックの各ページのうち、ユーザデータが書込まれていない、つまり初期値データが書込まれているとみなすページの範囲を管理する。
ホスト機器2からホストインタフェース部12を介して論理ブロックアドレス“0x40000”番地へのリード要求が発行された場合は、フラッシュメモリ制御部11はRAM13の論理物理アドレス変換テーブル13aを参照し、“物理ブロック3”、つまり、論理ブロックアドレス“0x40000”番地と対応付けられる物理ブロックアドレス”3”が付与された物理ブロックにデータが書込まれていることを検出し、この物理ブロックに書込まれたデータを読み出し対象のデータとしてホスト機器2へ出力する。
次に、論理物理アドレス変換テーブル13aにおいて、論理ブロックアドレス“0x40000”番地と対応付けられる物理ブロックアドレス“3”が付与される物理ブロックに記憶されるデータのうち、16384Byte(32ページ)分のデータを消去するコマンドがホスト機器2から発行された場合に、このコマンドを処理する手順の第1の例について説明する。ここではRAM13に消去領域ポインタ記憶領域13bが設けられていないと仮定する。
ここでは、物理ブロックアドレス”3”が付与された物理ブロックの“Page0”から“Page31”までの32ページ分のデータを消去する。
データの消去単位は物理ブロック1ブロック分であるため、物理ブロックアドレス“3”が付与された物理ブロックの“Page32”以降のページに書込まれたデータも消去の対象となる。
そこで、物理ブロックアドレス“3”が付与された物理ブロックの各ページのうち、“Page31”より大きいページアドレスが付与されたページに書込まれたデータを、別の物理ブロックにコピーする。ここでは、コピー対象の物理ブロックは、物理ブロックアドレス“4”が付与された物理ブロック(“物理ブロック4”)である。
“物理ブロック4”へのコピー処理が完了したら、フラッシュメモリ制御部11は、RAM13内の論理物理アドレス変換テーブル13aに記憶される、“0x40000…物理ブロック3”の情報を“0x40000…物理ブロック4”に書き換える。これにより、論理物理アドレス変換テーブル13aにおいて、論理ブロックアドレス“0x40000”番地と対応付けられる物理ブロックアドレスは、“3”から“4”に変更される。
フラッシュメモリ制御部11は、ホスト機器2からフラッシュメモリ14へのアクセス要求があった場合に、論理物理アドレス変換テーブル13aを参照することで、論理ブロックアドレス“0x40000”番地から”0x20000“番地分にわたったアドレス範囲に対応する仮想メモリ上のブロックに書込まれる128KBのデータは、物理ブロックアドレス“4”が付与された物理ブロックに書込まれているとみなす。
以上のことから、128KBのサイズをもつ物理ブロックにある256ページの領域に対して、16KBのデータ、つまり、32ページ分にわたって書込まれているデータを消去する際には、フラッシュメモリ制御部11がフラッシュメモリ14の物理ブロックの
224ページ(=256ページ−32ページ)分のデータをリードして、別の物理ブロックにライトしなおす制御を行なわなければならず、データ消去のための処理時間が多くなる。
例えば、フラッシュメモリ14の物理ブロックへのライト時間が1.2ミリ秒/4ページとしたとき、224ページ分のライト時間は67.2ミリ秒(=224/4*1.2)かかる。物理ブロック1ブロック分のデータのイレーズにかかる時間は2ミリ秒であり、物理ブロックの32ページ分のデータを消去する時間は、物理ブロック1ブロック分のデータのイレーズにかかる時間の約32倍である。
この処理時間を短縮するために、本発明の実施形態にしたがったメモリ管理装置では、消去領域ポインタを設定する機能を設ける。
消去領域ポインタとは、図2に示した消去領域ポインタ記憶領域13bに記憶される情報である。この消去領域ポインタは、物理ブロックの各ページに付与されたページアドレスのうち、一部の連続したページに付与されたページアドレスの範囲を示す。
フラッシュメモリ制御部11は、消去領域ポインタ記憶領域13bに記憶される消去領域ポインタで示されるアドレス範囲に対応したページを仮想消去状態のページとみなす。仮想消去状態とは、ホスト機器2からのアクセス要求にしたがって、消去対象のデータの物理的な消去を行なわずに、見かけ上消去した状態を示す。
消去領域ポインタで示される値は、物理ブロック中の各ページのうち仮想消去した部分が推定可能な値とする。消去した部分が推定可能な値は、例えば、仮想消去となる領域の最終地点を示すアドレス値、先頭アドレスからのサイズ、または、データが有効となるアドレス値等である。
消去領域ポインタの第1の例を図3に示す。この例では、消去領域ポインタとして、開始ポインタと終了ポインタが設定される場合である。フラッシュメモリ制御部11は、ホスト機器2からの消去要求にしたがって、消去対象のデータが書込まれた物理ブロック(物理ブロックA)において、消去対象のデータが書込まれたページ群の先頭のページに付与されたページアドレスを開始ポインタとして指定し、消去対象のデータが書込まれたページ群の最終ページに付与されたページアドレスを終了ポインタとして指定する。
これにより、開始ポインタとして指定されたページアドレスと終了ポインタとして設定されたページアドレスまでのアドレス範囲に対応したページ、つまり、領域21で示した部分が仮想消去部分となる。
消去領域ポインタの第2の例を図4に示す。この例では、フラッシュメモリ制御部11は、第1の例と同様に消去領域ポインタとして開始ポインタと終了ポインタが設定するが、消去対象のデータが書込まれる物理ブロックの先頭ページのアドレスが開始ポインタとなっており、かつ、消去対象のデータが書込まれる物理ブロックの最終ページのアドレスが終了ポインタとなっている。この場合には、フラッシュメモリ制御部11は、消去領域ポインタを消去領域ポインタ記憶領域13bに記憶する処理を行なう必要はなく、この消去対象の物理ブロック全体(領域22)を未使用状態とするべく、論理物理アドレス変換テーブル13aにおける、論理ブロックアドレスと物理ブロックアドレス(“A”)との対応付けを解除する処理を行なえばよい。
消去領域ポインタの第3の例を図5に示す。この例では、フラッシュメモリ制御部11は、仮想消去領域の先頭に該当するページアドレスは、物理ブロックの先頭のページに付与されたページアドレスであると定義しており、消去領域ポインタとして、終了ポインタのみを設定する。これにより、消去対象のデータが書込まれる物理ブロックの先頭アドレスから、終了ポインタで指定されるアドレスまでのアドレス範囲に対応したページ、つまり領域23で示した部分が仮想消去部分となる。
消去領域ポインタの第4の例を図6に示す。この例では、フラッシュメモリ制御部11は、図3の例と同様に、消去領域ポインタとして終了ポインタのみが設定され、ホスト機器2からフラッシュメモリ14上の複数の物理ブロックにまたがる消去コマンドが発行された場合の処理について説明する。
ここでは3つの物理ブロック(物理ブロックA,B,C)にまたがった消去コマンドがホスト機器2から発行された場合を示す。物理ブロックAの最終ページは、仮想消去領域の終端部分ではないので、仮想消去領域の終了ポインタを設定することができない。よって、フラッシュメモリ制御部11は、物理ブロックAの消去対象の領域24に対し、図2に示したような、データコピーを伴う消去処理を行なう。
物理ブロックBについては、全ての領域が消去対象のデータとなるので、フラッシュメモリ制御部11は、前述したように、論理物理アドレス変換テーブル13aから物理ブロックBのアドレス情報およびこのアドレス情報と対応付けられた論理ブロックアドレスを削除して、当該物理ブロックの全領域(領域25)を未使用状態のブロックとする。
また、物理ブロックCについては、フラッシュメモリ制御部11は、前述した図5に示した例と同様に、データ消去対象の領域の最終部分のページに付与されるページアドレスを消去領域ポインタの終了ポインタとして設定する。これにより、つまり領域26で示した部分が仮想消去部分となり、物理ブロックCに書込まれたデータのうち、消去対象でないデータの移動が不要になる。
例えば、消去領域ポインタとして“Page10”を指定した場合、物理ブロックCの先頭ページから10ページまでの範囲にわたって書込まれたデータが仮想消去となる。また、消去領域ポインタとして“Page0”を指定した場合、物理ブロックCの先頭ページ以降、つまり、物理ブロックCの各ページに書込まれたデータが全て有効データとなり、仮想消去の領域がないことを意味する。
ここでは、消去領域ポインタ記憶領域13bは、フラュッシュメモリ14の各物理ブロックのうち、ホスト機器2からのデータ消去要求において、消去対象となるデータが記憶される物理ブロック中の仮想消去領域のデータを記憶するが、RAM13において、多くの記憶領域が確保可能である場合には、消去領域ポインタ記憶領域13bにおいて、仮想消去領域のデータを各物理ブロックについてそれぞれ管理するようにしてもよい。
次に、本発明の実施形態にしたがったメモリカード1のフラッシュメモリ14上の物理ブロックに書込まれているデータの一部を消去する手順(その2)を説明する。
図7は、本発明の実施形態にしたがったメモリカード1に書込まれたデータの消去手順(その2)を示す遷移図である。図8は、本発明の実施形態にしたがったメモリカード1に書込まれたデータの消去手順(その2)を示すフローチャートである。
ここでは、前述したデータ消去手順(その1、図2参照)と同様に、論理物理アドレス変換テーブル13aにおいて、論理ブロックアドレス“0x40000”番地と対応付けられる物理ブロックアドレス“3”が付与される物理ブロックに記憶されるデータのうち、16384Byte(32ページ)分のデータを消去するコマンドがホスト機器2から発行された場合のデータ消去手順について説明する。
ここでは、図1に示した消去領域ポインタ記憶領域13bが設けられると仮定する。また、データ消去要求前の各物理ブロックの構成、および論理物理アドレス変換テーブル13aにより管理する情報の内容は、前述した第1の例と同様である。
消去領域ポインタ記憶領域13bに記憶される“Start 0x00 END 0x00”は、ページアドレス“Page0”が消去領域ポインタの開始アドレスおよび終了アドレスとして設定され、仮想消去領域が設定されていないことを示す。
フラッシュメモリ制御部11は、ホスト機器2からのデータ消去要求がなされた際(ステップS1)に、論理物理アドレス変換テーブル13aを参照し、消去要求で指定された論理ブロックと対応付けられる物理ブロックアドレスを検出する(ステップS2)。図7に示した例では、フラッシュメモリ制御部11は、論理ブロックアドレス“0x40000”番地が物理ブロックアドレス“3”と対応付けられることを検出する。
そして、フラッシュメモリ制御部11は、データ消去要求による消去対象のデータが記憶される領域に対応するアドレス範囲が、消去領域ポインタ記憶領域13bに既に記憶されているか否かを判別する(ステップS3)。
ステップS3の処理の結果「NO」と判別された場合には、フラッシュメモリ制御部11は、データ消去要求による消去対象のデータが記憶される領域、つまり、物理ブロックアドレス“3”が対応付けられた物理ブロックの0ページ目から31ページ目までの32ページ分の領域を仮想消去領域とするべく、消去領域ポインタ記憶領域13bに書込まれたデータを、“Start 0x00 END 0x1F”と書き換え、かつ、対象ブロックのデータとして“物理ブロック3”を書込む(ステップS4)。対象ブロックとは、各物理ブロックのうち仮想消去のページが属する物理ブロックである。
そして、フラッシュメモリ制御部11は、ステップS4の処理で指定された消去領域ポインタで示されたアドレス範囲がブロックサイズと一致するか、つまり、消去領域ポインタで示された開始アドレスが、データ消去対象の物理ブロックの先頭アドレスであり、かつ、消去領域ポインタで示された終了アドレスが、データ消去対象の物理ブロックの最終アドレスであるか否かを判別する(ステップS5)。
ステップS5の処理の結果「YES」と判別された場合には、フラッシュメモリ制御部11は、消去対象のデータが書込まれた物理ブロックを未使用状態のブロックとするために、論理物理アドレス変換テーブル13aから、消去対象のデータが書込まれた物理ブロックに付与された物理ブロックアドレス、および、このアドレスと対応付けられた論理ブロックアドレスのデータを消去する(ステップS6)。
また、ステップS5の処理の結果「NO」と判別された場合には、フラッシュメモリ制御部11は、ステップS4の処理で消去領域ポインタ記憶領域13bに書込んだデータをフラッシュメモリ14にも書込む(ステップS7)。ステップS7の処理を行なうことで、メモリカード1に供給される電源がオフとなっても消去領域ポインタの情報が保持されるので、仮想消去の状態が解除されることはない。
また、電源のオフ後、これを再投入した場合には、フラッシュメモリ制御部11は、ステップS7の処理でフラッシュメモリ14に書込まれた情報を読み出して、これをRAM13の消去領域ポインタ記憶領域13bに書込めばよい。
ステップS6またはS7の処理後、フラッシュメモリ制御部11は、消去処理が完了しことを示す制御信号を、ホストインタフェース部12を介してホスト機器2に出力する(ステップS8)。
図9は、本発明の実施形態にしたがったメモリカード1に書込まれたデータの読み出し手順の一例を示すフローチャートである。
図8に示したフローチャートにしたがったデータ消去処理の終了後に、ホスト機器2よりデータ読み出し要求がなされた場合には、フラッシュメモリ制御部11は、論理物理アドレス変換テーブル13aを参照して、データ読み出し要求で指定された論理ブロックアドレスと対応付けられる物理ブロックアドレスを検出する(ステップA1)。
そして、フラッシュメモリ制御部11は、消去領域ポインタ記憶領域13bを参照して、読み出し対象のデータが書込まれるページ範囲が、消去領域ポインタで示された領域に含まれるか否かを判別する(ステップA2)。
ステップA2による処理の結果、「YES」と判別された場合には、フラッシュメモリ制御部11は、初期値データを読み出し対象のデータとしてホスト機器2に出力する(ステップA3)。一方、ステップA2による処理の結果、「NO」と判別された場合には、フラッシュメモリ制御部11は、該当する読み出し対象のデータをホスト機器2に出力する(ステップA4)。
このような処理を行なうことで、データ消去の際に、前述した消去手順(その1)で行なったようなデータ移動が生じないので、データ消去にかかる時間を大幅に短縮することができる。
次に、本発明の実施形態にしたがったメモリカード1のフラッシュメモリ14上の物理ブロックに書込まれているデータの一部を消去する手順(その3)を説明する。
図10は、本発明の実施形態にしたがったメモリカード1に書込まれたデータの消去手順(その3)を示す遷移図である。
ここでは、前述したデータ消去手順(その1、図2参照)と同様に、論理物理アドレス変換テーブル13aにおいて、論理ブロックアドレス“0x40000”番地と対応付けられる物理ブロックアドレス“3”が付与される物理ブロックに記憶されるデータのうち、16384Byte(32ページ)分のデータを消去するコマンドがホスト機器2から発行された場合のデータ消去手順について説明する。なお、データ消去要求前の各物理ブロックの構成、および論理物理アドレス変換テーブル13aにより管理する情報の内容は、前述した消去手順(その2、図7参照)と同様である。
フラッシュメモリ制御部11は、ホスト機器2からのデータ消去要求がなされた際に、論理物理アドレス変換テーブル13aを参照し、消去要求で指定された論理ブロックアドレス“0x40000”番地がと対応付けられる物理ブロックアドレス“3”を検出する。
そして、フラッシュメモリ制御部11は、データ消去要求による消去対象のデータが記憶される領域に対応するアドレス範囲が、消去領域ポインタ記憶領域13bに既に記憶されていなければ、フラッシュメモリ制御部11は、データ消去要求による消去対象のデータが記憶される領域、つまり、物理ブロックアドレス“3”が対応付けられた物理ブロックの0ページ目から31ページ目までの32ページ分の領域を仮想消去領域とするべく、RAM13内の論理物理アドレス変換テーブル13aに記憶される、“0x40000…物理ブロック3”の情報を“0x40000…物理ブロック3(+物理ブロック4)”に書き換える。物理ブロックアドレス“4”が付与された物理ブロックは初期値データが書込まれた状態、つまり未使用状態であるとする。
そして、フラッシュメモリ制御部11は、消去領域ポインタ記憶領域13bに書込まれた情報を、“Start 0x00 END 0x1F”と書き換え、対象ブロックのデータとして“物理ブロック4”を書込む。
これにより、論理ブロックアドレス“0x40000”番地と対応付けられる物理ブロックアドレスは、“3”および“4”の2つに変更され、論理物理アドレス変換テーブル13aに記憶された、物理ブロックアドレス“3”および“4”のうち、消去領域ポインタ記憶領域13bに記憶された対象ブロック、つまり物理ブロックアドレス“4”が付与された物理ブロックの各ページのうち、消去領域ポインタ記憶領域13bに記憶された消去領域ポインタで示されるページである、“Page0”から“Page31”までのページが、読み出し要求に対する読み出し対象のデータが書込まれた第1の領域となる。
また、論理物理アドレス変換テーブル13aに記憶された、物理ブロックアドレス“3”および“4”のうち、消去領域ポインタ記憶領域13bに記憶された対象ブロックでない物理ブロックの各ページのなかで、消去領域ポインタ記憶領域13bに書込まれた消去領域ポインタで示されるページ範囲以外のページ範囲は、読み出し要求に対する読み出し対象のデータが書込まれた第2の領域となる。
つまり、第2の領域は、論理物理アドレス変換テーブル13aに記憶された、物理ブロックアドレス“3”および“4”のうち、物理ブロックアドレス“3”が付与された物理ブロックの各ページのうち、“Page0”から“Page31”までの範囲以外のページ範囲、つまり“Page32”から“Page255”までのページである。
そして、ホスト機器2よりデータ読み出し要求がなされた場合には、フラッシュメモリ制御部11は、論理物理アドレス変換テーブル13aを参照して、データ読み出し要求で指定された論理ブロックアドレスと対応付けられる物理ブロックアドレスを検出する。
そして、フラッシュメモリ制御部11は、消去領域ポインタ記憶領域13bを参照して、消去対象のデータが書込まれるページが、消去領域ポインタで示された領域に含まれる場合には、フラッシュメモリ制御部11は、初期値データをホスト機器2に出力する。
このような処理を行なうことで、前述した消去手順(その2)と同様に、消去手順(その1)でみられたデータ移動が生じないので、データ消去にかかる時間を大幅に短縮することができる。
本発明の実施形態にしたがったメモリカード1では、ホスト機器2からの制御にしたがってデータ消去処理を行なう際に、前述した消去領域ポインタを用いているが、この消去処理は、フラッシュメモリ14のデータフォーマットがホスト機器2から指示された場合に限らず、ホスト機器2からフラッシュメモリ14のデータコピーが指示された場合でも行なわれることがある。このような場合に、ライト処理にともなった消去処理において、前述したような消去領域ポインタを用いた場合には、当該ライト処理にかかる時間が通常より長くなってしまう。
そこで、ライト処理の長時間化を防止し、かつ、消去領域ポインタの使用による、データ消去にかかる時間の短縮のメリットを生かすための手順について図11を参照しながら説明する。図11は、本発明の実施形態にしたがったメモリカードに書込まれたデータの消去における、消去領域ポインタの使用の有無の選択処理の一例を示すフローチャートである。
ここでは、ホスト機器2からフラッシュメモリ14のデータフォーマットの指示を行なう際は、消去コマンドが連続して発行され、かつ、これらの消去コマンドの引数で示される消去対象のページアドレスが連続していることに着目し、この条件を満たしているか否かにより、データ消去処理を行なう際の消去領域ポインタの使用の有無を切り替える。
ホスト機器2から発行されたコマンドが、フラッシュメモリ14のデータフォーマットを指示するコマンドである場合には、16KB単位で消去し、消去範囲が16KBインクリメントしながら繰り返されるので、消去範囲が連続する。
具体的には、メモリカード1のフラッシュメモリ制御部11は、ホスト機器2から発行されたコマンドを認識した場合(ステップB1)、このコマンドが消去コマンドであるか否かを判別する(ステップB2)。
この判別の結果、「YES」と判別された場合には、フラッシュメモリ制御部11は、この消去コマンドの引数をRAM13に記憶する(ステップB3)。
そして、フラッシュメモリ制御部11は、ステップB3の処理により記憶した引数と連続する引数が既に記憶されているか否かを判別する(ステップB4)。この判別の結果「NO」と判別された場合にはステップB1の処理に戻る。
一方、ステップB4の処理の結果「YES」と判別された場合には、引数が連続した消去コマンドが逐次発行されたことを意味しているので、フラッシュメモリ制御部11は、データフォーマットを行なうための指示がホスト機器2からなされたとみなし、前述したような消去領域ポインタを用いたデータ消去処理を行なう(ステップB5)。
一方、前述したステップB2の処理で「NO」と判別された場合には、フラッシュメモリ制御部11は、ステップB1の処理により認識したコマンドがライトコマンドであるか否かを判別し(ステップB6)。この判別の結果「YES」と判別された場合には、RAM13に記憶された引数がある場合には、これを消去する(ステップB7)。
このような処理を行なえば、ホスト機器2から発行されたコマンドが、フラッシュメモリ14のデータフォーマットを示すコマンドであった場合のみに、消去領域ポインタを用いたデータ消去処理を行なうので、ライト処理にかかる時間を長時間化させることなく、かつ、データ消去にかかる時間を短縮することができる。
なお、この発明は、前記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を省略してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
本発明の実施形態にしたがったメモリカードの構成例を示すブロック図である。 本発明の実施形態にしたがったメモリカードのフラッシュメモリ上の物理ブロックに書込まれているデータの一部を消去する手順(その1)を示す遷移図。 本発明の実施形態にしたがったメモリカードに書込まれたデータの消去処理に用いる消去領域ポインタの第1の例を示す図。 本発明の実施形態にしたがったメモリカードに書込まれたデータの消去処理に用いる消去領域ポインタの第2の例を示す図。 本発明の実施形態にしたがったメモリカードに書込まれたデータの消去処理に用いる消去領域ポインタの第3の例を示す図。 本発明の実施形態にしたがったメモリカードに書込まれたデータの消去処理に用いる消去領域ポインタの第4の例を示す図。 本発明の実施形態にしたがったメモリカードに書込まれたデータの消去手順の一例(その2)を示す遷移図。 本発明の実施形態にしたがったメモリカードに書込まれたデータの消去手順の一例(その2)を示すフローチャート。 本発明の実施形態にしたがったメモリカードに書込まれたデータの読み出し手順の一例を示すフローチャート。 本発明の実施形態にしたがったメモリカードに書込まれたデータの消去手順の一例(その3)を示す遷移図。 本発明の実施形態にしたがったメモリカードに書込まれたデータの消去における、消去領域ポインタの使用の有無の選択処理の一例を示すフローチャート。
符号の説明
1…メモリカード、2…ホスト機器、11…フラッシュメモリ制御部、12…ホストインタフェース部、13…RAM、13a…論理物理アドレス変換テーブル、13b…消去領域ポインタ記憶領域、14…フラッシュメモリ。

Claims (5)

  1. 複数のブロックを有し、その各ブロックを消去単位としてデータを消去可能に構成してなる不揮発性半導体メモリを管理するメモリ管理装置であって、
    前記不揮発性半導体メモリに対するデータの消去要求があった際に、前記消去要求による消去対象のデータを含むブロックにおいて、前記消去対象のデータのアドレス範囲を設定する設定手段と、
    前記不揮発性半導体メモリに対するデータの読み出し要求があった際に、前記読み出し要求にしたがった読み出し対象のアドレス範囲が、前記設定手段により設定したアドレス範囲に含まれる場合に、前記読み出し対象のデータとして初期値データを出力する制御を行なう制御手段と
    を備えたことを特徴とするメモリ管理装置。
  2. 前記設定手段は、
    前記消去対象のデータを含むブロックの先頭アドレスを前記アドレス範囲の先頭アドレスとし、前記消去対象のデータを含むブロックの単一のアドレスを前記アドレス範囲の終端アドレスとして設定する
    ことを特徴とする請求項1に記載のメモリ管理装置。
  3. 前記複数のブロックに対して物理アドレスと論理アドレスとを対応づけて管理する管理手段をさらに備え、
    前記管理手段は、
    前記設定手段により設定したアドレス範囲の先頭アドレスと終端アドレスが、前記消去対象のデータを含むブロックの先頭アドレスと終端アドレスにそれぞれ一致する場合に、このブロックに対する物理アドレスと論理アドレスとの対応付けを解除する
    ことを特徴とする請求項1または2に記載のメモリ管理装置。
  4. 前記設定手段により設定されたアドレス範囲の情報を前記不揮発性半導体メモリに記憶する手段をさらに備えたことを特徴とする請求項1または2に記載のメモリ管理装置。
  5. 複数のブロックを有し、その各ブロックを消去単位としてデータを消去可能に構成してなる不揮発性半導体メモリを管理するメモリ管理装置であって、
    前記不揮発性半導体メモリに対するデータの消去要求があった際に、前記消去要求による消去対象のデータを含む第1のブロックにおいて、前記消去対象のデータのアドレス範囲を設定する設定手段と、
    前記設定手段により設定されたアドレス範囲と同一のアドレス範囲と対応する、初期値データが書込まれた第2のブロック中の物理アドレス、および、前記第1のブロックにおおいて、前記設定手段により設定されたアドレス範囲の終端アドレスと連続したアドレスから、当該第1のブロックの終端アドレスまでアドレス範囲と対応する物理アドレスを、論理アドレスと対応付けて管理する管理手段と
    を備えたことを特徴とするメモリ管理装置。
JP2004265806A 2004-09-13 2004-09-13 メモリ管理装置 Expired - Fee Related JP4192129B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2004265806A JP4192129B2 (ja) 2004-09-13 2004-09-13 メモリ管理装置
US11/022,857 US7057942B2 (en) 2004-09-13 2004-12-28 Memory management device and memory device
TW094129671A TW200622611A (en) 2004-09-13 2005-08-30 Memory management device and memory device
CNB200510099944XA CN100412822C (zh) 2004-09-13 2005-09-13 存储器管理装置以及存储器装置
US11/408,021 US7227788B2 (en) 2004-09-13 2006-04-21 Memory management device and memory device
US11/757,736 US7388792B2 (en) 2004-09-13 2007-06-04 Memory management device and memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004265806A JP4192129B2 (ja) 2004-09-13 2004-09-13 メモリ管理装置

Publications (2)

Publication Number Publication Date
JP2006079543A true JP2006079543A (ja) 2006-03-23
JP4192129B2 JP4192129B2 (ja) 2008-12-03

Family

ID=36035422

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004265806A Expired - Fee Related JP4192129B2 (ja) 2004-09-13 2004-09-13 メモリ管理装置

Country Status (4)

Country Link
US (3) US7057942B2 (ja)
JP (1) JP4192129B2 (ja)
CN (1) CN100412822C (ja)
TW (1) TW200622611A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8364930B2 (en) 2008-03-07 2013-01-29 Kabushiki Kaisha Toshiba Information processing apparatus and storage drive adapted to perform fault analysis by maintenance of tracing information
JP2023019261A (ja) * 2021-07-29 2023-02-09 Necプラットフォームズ株式会社 メモリ制御装置、メモリ制御回路、メモリ制御方法およびメモリ制御プログラム

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
JP4192129B2 (ja) * 2004-09-13 2008-12-03 株式会社東芝 メモリ管理装置
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
US7457909B2 (en) * 2005-01-14 2008-11-25 Angelo Di Sena Controlling operation of flash memories
KR100666174B1 (ko) * 2005-04-27 2007-01-09 삼성전자주식회사 3-레벨 불휘발성 반도체 메모리 장치 및 이에 대한구동방법
US7634494B2 (en) * 2005-05-03 2009-12-15 Intel Corporation Flash memory directory virtualization
US20060253643A1 (en) * 2005-05-04 2006-11-09 Delkin Devices, Inc. Memory with isolated master boot record
JP4751163B2 (ja) 2005-09-29 2011-08-17 株式会社東芝 メモリシステム
US8914557B2 (en) * 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
CN101681282A (zh) 2006-12-06 2010-03-24 弗森多系统公司(dba弗森-艾奥) 用于共享的、前端、分布式raid的装置、系统和方法
KR100885783B1 (ko) * 2007-01-23 2009-02-26 주식회사 하이닉스반도체 플래시 메모리 장치 및 동작 방법
TW200832440A (en) 2007-01-25 2008-08-01 Genesys Logic Inc Flash memory translation layer system
US7791952B2 (en) 2007-01-30 2010-09-07 Micron Technology, Inc. Memory device architectures and operation
KR100823171B1 (ko) * 2007-02-01 2008-04-18 삼성전자주식회사 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법
US7804718B2 (en) * 2007-03-07 2010-09-28 Mosaid Technologies Incorporated Partial block erase architecture for flash memory
US7719889B2 (en) * 2007-06-25 2010-05-18 Sandisk Corporation Methods of programming multilevel cell nonvolatile memory
KR101391881B1 (ko) * 2007-10-23 2014-05-07 삼성전자주식회사 멀티-비트 플래시 메모리 장치 및 그것의 프로그램 및 읽기방법
JP2009118212A (ja) * 2007-11-07 2009-05-28 Seiko Epson Corp 画像読取装置および画像読取方法
JP5142685B2 (ja) * 2007-11-29 2013-02-13 株式会社東芝 メモリシステム
US8631203B2 (en) 2007-12-10 2014-01-14 Microsoft Corporation Management of external memory functioning as virtual cache
TW200929237A (en) * 2007-12-21 2009-07-01 Winbond Electronics Corp Memory architecture and configuration method thereof
US20090222613A1 (en) * 2008-02-29 2009-09-03 Kabushiki Kaisha Toshiba Information processing apparatus and nonvolatile semiconductor memory drive
US20090222614A1 (en) * 2008-02-29 2009-09-03 Kabushiki Kaisha Toshiba Information processing apparatus and nonvolatile semiconductor memory drive
JP5032371B2 (ja) * 2008-03-01 2012-09-26 株式会社東芝 メモリシステム
US20090228640A1 (en) * 2008-03-07 2009-09-10 Kabushiki Kaisha Toshiba Information processing apparatus and non-volatile semiconductor memory drive
TWI370969B (en) 2008-07-09 2012-08-21 Phison Electronics Corp Data accessing method, and storage system and controller using the same
US9032151B2 (en) 2008-09-15 2015-05-12 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US8032707B2 (en) 2008-09-15 2011-10-04 Microsoft Corporation Managing cache data and metadata
US7953774B2 (en) 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store
US8433845B2 (en) 2009-04-08 2013-04-30 Google Inc. Data storage device which serializes memory device ready/busy signals
US20100262979A1 (en) * 2009-04-08 2010-10-14 Google Inc. Circular command queues for communication between a host and a data storage device
KR20120132820A (ko) * 2011-05-30 2012-12-10 삼성전자주식회사 스토리지 디바이스, 스토리지 시스템 및 스토리지 디바이스의 가상화 방법
FR3006804A1 (fr) * 2013-06-05 2014-12-12 St Microelectronics Rousset Procede d’effacement par bloc d’une memoire de type eeprom effacable par page
US10936199B2 (en) * 2018-07-17 2021-03-02 Silicon Motion, Inc. Flash controllers, methods, and corresponding storage devices capable of rapidly/fast generating or updating contents of valid page count table
US10593412B2 (en) 2018-07-19 2020-03-17 Micron Technology, Inc. Using a status indicator in a memory sub-system to detect an event
JP7225991B2 (ja) * 2019-03-22 2023-02-21 富士フイルムビジネスイノベーション株式会社 情報処理装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5860124A (en) * 1996-09-30 1999-01-12 Intel Corporation Method for performing a continuous over-write of a file in nonvolatile memory
JP3954698B2 (ja) 1997-08-29 2007-08-08 パナソニック コミュニケーションズ株式会社 メモリー制御装置
JP4085478B2 (ja) * 1998-07-28 2008-05-14 ソニー株式会社 記憶媒体及び電子機器システム
KR100399034B1 (ko) * 2000-05-02 2003-09-22 한국과학기술원 효율적 메모리 셀 어레이 관리 방법
JP4812192B2 (ja) * 2001-07-27 2011-11-09 パナソニック株式会社 フラッシュメモリ装置、及び、それに記憶されたデータのマージ方法
GB0123422D0 (en) * 2001-09-28 2001-11-21 Memquest Ltd Improved memory controller
US6859856B2 (en) * 2001-10-23 2005-02-22 Flex P Industries Sdn. Bhd Method and system for a compact flash memory controller
US6798711B2 (en) * 2002-03-19 2004-09-28 Micron Technology, Inc. Memory with address management
JP3699942B2 (ja) 2002-03-25 2005-09-28 株式会社東芝 メモリ管理方式およびメモリ管理装置
US7171536B2 (en) * 2002-10-28 2007-01-30 Sandisk Corporation Unusable block management within a non-volatile memory system
JP4188744B2 (ja) * 2003-04-08 2008-11-26 株式会社ルネサステクノロジ メモリカード
JP4157501B2 (ja) * 2004-06-30 2008-10-01 株式会社東芝 記憶装置
JP4192129B2 (ja) * 2004-09-13 2008-12-03 株式会社東芝 メモリ管理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8364930B2 (en) 2008-03-07 2013-01-29 Kabushiki Kaisha Toshiba Information processing apparatus and storage drive adapted to perform fault analysis by maintenance of tracing information
JP2023019261A (ja) * 2021-07-29 2023-02-09 Necプラットフォームズ株式会社 メモリ制御装置、メモリ制御回路、メモリ制御方法およびメモリ制御プログラム

Also Published As

Publication number Publication date
US7388792B2 (en) 2008-06-17
US20060187738A1 (en) 2006-08-24
US20060059295A1 (en) 2006-03-16
CN1749974A (zh) 2006-03-22
CN100412822C (zh) 2008-08-20
TWI310901B (ja) 2009-06-11
US7227788B2 (en) 2007-06-05
US20070223286A1 (en) 2007-09-27
JP4192129B2 (ja) 2008-12-03
TW200622611A (en) 2006-07-01
US7057942B2 (en) 2006-06-06

Similar Documents

Publication Publication Date Title
JP4192129B2 (ja) メモリ管理装置
JP3692313B2 (ja) 不揮発性メモリの制御方法
US8489854B1 (en) Non-volatile semiconductor memory storing an inverse map for rebuilding a translation table
US6938144B2 (en) Address conversion unit for memory device
JPWO2005029311A1 (ja) 半導体メモリカード、半導体メモリ制御装置及び半導体メモリ制御方法
KR101409095B1 (ko) 메모리 장치 및 그 제어 방법
JP2008198208A (ja) ホストデータ処理装置の動作方法、ホストデータ処理装置並びにデータ格納装置
JPWO2005103903A1 (ja) 不揮発性記憶システム
JP2008033788A (ja) 不揮発性記憶装置、データ記憶システム、およびデータ記憶方法
KR20150104434A (ko) 플래시 메모리에서 사용하는 로그 구조 파일시스템의 메타데이터 저장 방법
JP4745465B1 (ja) 半導体記憶装置及び半導体記憶装置の制御方法
JP4843222B2 (ja) 半導体記憶装置の制御方法、メモリカード、及びホスト機器
JP2001147855A (ja) 不揮発性メモリへのデータ書き込み方法および情報処理装置ならびに記録媒体
JP4242245B2 (ja) フラッシュrom制御装置
JPWO2007116476A1 (ja) メモリカードおよびデータの書き込み方法
JP2006003966A (ja) フラッシュメモリの書込方法
JP2004326165A (ja) メモリ制御装置およびメモリ制御方法
JP4308780B2 (ja) 半導体メモリ装置、メモリコントローラ及びデータ記録方法
JP2005115562A (ja) フラッシュrom制御装置
JP2013033338A (ja) メモリシステム
JP5204265B2 (ja) 半導体記憶装置及び半導体記憶装置の制御方法
WO2020039927A1 (ja) 不揮発性記憶装置、ホスト装置、及びデータ記憶システム
JP2009199211A (ja) メモリ制御方法及び装置、コンピュータプログラム
JP2008299513A (ja) データ記憶装置およびその制御方法
JPH10312693A (ja) 記憶装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080324

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080617

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080806

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: 20080916

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: 20080919

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

Free format text: PAYMENT UNTIL: 20110926

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4192129

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20110926

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120926

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120926

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130926

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees