JP4636046B2 - メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 - Google Patents

メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 Download PDF

Info

Publication number
JP4636046B2
JP4636046B2 JP2007086982A JP2007086982A JP4636046B2 JP 4636046 B2 JP4636046 B2 JP 4636046B2 JP 2007086982 A JP2007086982 A JP 2007086982A JP 2007086982 A JP2007086982 A JP 2007086982A JP 4636046 B2 JP4636046 B2 JP 4636046B2
Authority
JP
Japan
Prior art keywords
logical
physical
zone
block
forming
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
JP2007086982A
Other languages
English (en)
Other versions
JP2008243156A (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.)
TDK Corp
Original Assignee
TDK 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 TDK Corp filed Critical TDK Corp
Priority to JP2007086982A priority Critical patent/JP4636046B2/ja
Publication of JP2008243156A publication Critical patent/JP2008243156A/ja
Application granted granted Critical
Publication of JP4636046B2 publication Critical patent/JP4636046B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法に関する。
従来、データの物理的な読み書きの単位であるページを所定数含んだ、データ消去の単位である物理ブロックによって構成されている複数個のフラッシュメモリチップに対するアクセスにおいて、互いに異なるフラッシュメモリチップ内の複数個の物理ブロックを仮想的に結合した仮想ブロックを形成してアクセスする方法が知られている(例えば、特許文献1参照)。この仮想ブロックを形成したアクセスでは、異なるフラッシュメモリチップ内の物理ブロックが並行してアクセスされるため、アクセススピードが高速になる。
また、大容量化したフラッシュメモリチップ内の記憶領域を円滑に管理するため、フラッシュメモリチップ内の記憶領域を複数の物理ゾーンに分割して管理する方法が用いられている(例えば、特許文献2参照)。各物理ゾーンは、複数の物理ブロックで構成されている。そして、各物理ゾーンには固有の物理ゾーン番号(PZN)が、各物理ブロックには固有の物理ブロックアドレス(PBA)が割り当てられている。
一方、セクタ(512バイト)単位の領域につけた通し番号であるLBA(Logical Block Address)で管理されているホストシステム側のアドレス空間も複数の論理ゾーンに分割して管理されている。各論理ゾーンに含まれる複数セクタの領域内では、LBAが連続している。更に、各論理ゾーン内は複数の論理ブロックに分割して管理されている。そして、各論理ゾーンには論理ゾーン番号(LZN)が、各論理ブロックには論理ブロック番号(LBN)が割り当てられている。
この管理方法では、物理ゾーンに対して論理ゾーンが1対1の対応関係で割り当てられ、対応関係にある物理ゾーンと論理ゾーンとの間で、物理ゾーンに含まれる物理ブロックと論理ゾーンに含まれる論理ブロックとの対応関係が管理される。
国際公開第WO2002/046929号パンフレット 2005−18490号公報
しかしながら、LBAが特定の範囲の領域(例えば、ファイルアロケーションテーブルが格納される領域等)にデータの書込みや書換えが集中すると、その領域が属する論理ゾーンに対応する物理ゾーンに含まれる物理ブロックに書き込みが集中する。フラッシュメモリは、消去回数が多くなると、不良ブロック化する可能性が高くなるため、上述のように、特定の物理ブロックに書き込みが集中すると不良ブロックが発生しやすくなるという問題があった。
かかる実情に鑑み、本発明は、仮想ブロックを用いてフラッシュメモリへのアクセススピードを高速化し、フラッシュメモリ内の一部の記憶領域にアクセスが集中することを回避できるメモリコントローラ及びメモリコントローラの制御方法を提供する。
上記目的を達成するために、本発明によるメモリコントローラは、ホストシステムから与えられるセクタ単位の論理アドレスに基づいて、物理ブロック単位で記憶データの消去が行われる複数個のフラッシュメモリに対するアクセスを制御するメモリコントローラであって、前記論理アドレスが連続する (nは1以上の整数)セクタの領域を含む論理ブロックを複数個形成することにより前記論理アドレスが割り当てられている領域を前記論理ブロック毎の領域に分割する論理ブロック形成手段と、複数個の前記論理ブロックを含む論理ゾーンを2 (mは1以上の整数)個形成する手段であって、それぞれの前記論理ゾーンには前記論理ブロックを跨いで前記論理アドレスが連続する領域が含まれないように前記論理ゾーンを形成する論理ゾーン形成手段と、それぞれの前記フラッシュメモリ内の記憶領域を複数個の物理ゾーンに分割することにより、複数個の物理ブロックを含む前記物理ゾーンを数個形成する物理ゾーン形成手段とそれぞれが異なる前記フラッシュメモリに含まれる複数個の前記物理ゾーンからなる物理ゾーングループを複数個形成するグループ形成手段と、それぞれの前記物理ゾーングループに対して、1個の前記論理ゾーンを割り当てる論理ゾーン割り当て手段と、前記物理ゾーングループに含まれるそれぞれの前記物理ゾーンから個ずつ選択された複数個の物理ブロックを仮想的に結合した仮想ブロックを形成する仮想ブロック形成手段と、記論理ゾーンに属する論理ブロックを、当該論理ゾーンに対応する前記物理ゾーングループに属する前記仮想ブロックに割り当てる論理ブロック割り当て手段とを備え、前記論理ブロック形成手段は、前記論理アドレスをビット表示したものの下位側から数えてnビット目のビットより上位側のビットからなる上位側ビットに基づいて論理ブロック形成し、前記論理ゾーン形成手段は、前記上位側ビットの下位mビットに基づいて前記論理ゾーンを形成することを特徴とする。
また、アクセスが集中する領域が、振り分け単位である論理ブロックに含まれる領域より十分に広ければ、アクセスが特定の領域に集中しても、そのアクセスは各物理ゾーンに含まれる物理ブロックに対するアクセスに分散される。更に、論理ブロックに含まれる領域の容量と仮想ブロックに含まれるユーザ領域の容量とが等しいため、各仮想ブロックに割り当てられる領域の論理アドレスは連続したアドレスになる。
また、仮想ブロック形成手段が仮想ブロックを形成しているため、異なるフラッシュメモリに並行してアクセスすることができるようになり、アクセススピードが高速になる。
本発明のフラッシュメモリシステムは、物理ブロック単位で記憶データの消去が行われる複数個のフラッシュメモリと、これらのフラッシュメモリに対するアクセスを制御するメモリコントローラを備えることを特徴とする。
本発明のフラッシュメモリの制御方法は、ホストシステムから与えられるセクタ単位の論理アドレスに基づいて、物理ブロック単位で記憶データの消去が行われる複数個のフラッシュメモリに対するアクセスを制御するフラッシュメモリの制御方法であって、前記論理アドレスが連続する (nは1以上の整数)セクタの領域を含む論理ブロックを複数個形成することにより前記論理アドレスが割り当てられている領域を前記論理ブロック毎の領域に分割する論理ブロック形成ステップと、複数個の前記論理ブロックを含む論理ゾーンを2 (mは1以上の整数)個形成するステップであって、それぞれの前記論理ゾーンには前記論理ブロックを跨いで前記論理アドレスが連続する領域が含まれないように前記論理ゾーンを形成する論理ゾーン形成ステップと、それぞれの前記フラッシュメモリ内の記憶領域を複数個の物理ゾーンに分割することにより、複数個の物理ブロックを含む前記物理ゾーンを数個形成する物理ゾーン形成ステップとそれぞれが異なる前記フラッシュメモリに含まれる複数個の前記物理ゾーンからなる物理ゾーングループを複数個形成するグループ形成ステップと、それぞれの前記物理ゾーングループに対して、1個の前記論理ゾーンを割り当てる論理ゾーン割り当てステップと、前記物理ゾーングループに含まれるそれぞれの前記物理ゾーンから個ずつ選択された複数個の物理ブロックを仮想的に結合した仮想ブロックを形成する仮想ブロック形成ステップと記論理ゾーンに属する論理ブロックを、当該論理ゾーンに対応する前記物理ゾーングループに属する前記仮想ブロックに割り当てる論理ブロック割り当てステップとを有し、前記論理ブロック形成ステップでは、前記論理アドレスをビット表示したものの下位側から数えてnビット目のビットより上位側のビットからなる上位側ビットに基づいて論理ブロック形成し、前記論理ゾーン形成ステップでは、前記上位側ビットの下位mビットに基づいて前記論理ゾーンを形成することを特徴とする。
論理ブロックに含まれる領域の容量と仮想ブロックに含まれるユーザ領域の容量とが等しいため、各仮想ブロックに割り当てられる領域の論理アドレスは連続したアドレスになる。また、アクセスが集中する領域が、振り分け単位である論理ブロックに含まれる領域より十分に広ければ、アクセスが特定の領域に集中しても、そのアクセスは各物理ゾーンに含まれる物理ブロックに対するアクセスに分散される。また、仮想ブロックを形成しているため、異なるフラッシュメモリに並行してアクセスすることができるようになり、アクセススピードが高速になる。
本発明のメモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法によれば、論理ブロックに含まれる領域の容量と仮想ブロックに含まれるユーザ領域の容量とが等しくなるように設定し、このように設定した論理ブロック単位で、LBAが連続する領域を各論理ゾーンに振り分けている。このように、論理ブロック単位で、論理アドレスが連続する複数セクタの領域を振り分けているため、アクセスが集中する領域が、振り分け単位である論理ブロックに含まれる領域より十分に広ければ、アクセスが特定の領域に集中しても、そのアクセスは各物理ゾーンに含まれる物理ブロックに対するアクセスに分散される。また、振り分け単位である論理ブロックに含まれる領域の容量を、仮想ブロックに含まれるユーザ領域の容量と等しくしているので、各仮想ブロックにはLBAが連続する領域が割り当てられ、アドレス管理が煩雑にならない。さらに、仮想ブロックを形成しているため、異なるフラッシュメモリに並行してアクセスすることができるようになり、アクセススピードが高速になる。
以下、本発明の実施の形態を、図面を参照しながら説明する。図1は、本発明に係るフラッシュメモリシステム1を概略的に示すブロック図である。図1に示すように、フラッシュメモリシステム1は、2つのフラッシュメモリチップ2−0,2−1とから成るフラッシュメモリ2と、それを制御するメモリコントローラ3とで構成されている。
フラッシュメモリシステム1は、外部バス13を介してホストシステム4と接続されている。ホストシステム4は、ホストシステム4の全体の動作を制御するためのCPU(Central Processing Unit)、フラッシュメモリシステム1との情報の授受を担うコンパニオンチップ等から構成されている。ホストシステム4は、例えば、文字、音声、あるいは画像情報等の種々の情報を処理するパーソナルコンピュータやデジタルスチルカメラをはじめとする各種情報処理装置であってもよい。
メモリコントローラ3は、図1に示すように、マイクロプロセッサ6と、ホストインタフェースブロック7と、ワークエリア8と、バッファ9と、フラッシュメモリインタフェースブロック10と、ECC(Error Correcting Code)ブロック11と、ROM(Read Only Memory)12とから構成される。メモリコントローラ3は、内部バス14−0,14−1を介してそれぞれフラッシュメモリチップ2−0,2−1と接続されている。これら機能ブロックによって構成されるメモリコントローラ3は、一つの半導体チップ上に集積される。以下、各機能ブロックについて説明する。
ホストインタフェースブロック7は、ホストシステム4との間でデータ、アドレス情報、ステータス情報、外部コマンド等の授受を行なう。外部コマンドとは、ホストシステム4がフラッシュメモリシステム1に対して処理の実行を指示するためのコマンドである。ホストシステム4よりフラッシュメモリシステム1に供給されるデータ等は、ホストインタフェースブロック7を入口としてフラッシュメモリシステム1の内部(例えば、バッファ9)に取り込まれる。また、フラッシュメモリシステム1からホストシステム4に供給されるデータ等は、ホストインタフェースブロック7を出口としてホストシステム4に供給される。
ワークエリア8は、フラッシュメモリチップ2−0,2−1の制御に必要なデータを一時的に保持する作業領域であり、複数のSRAM(Static Random Access Memory)セルによって構成されている。ワークエリア8には、例えば、後述の論理ブロックと物理ブロック(仮想ブロック)との関係を示したアドレス変換テーブル、空きブロックを検索する空ブロック検索テーブルなどが記憶される。
バッファ9は、フラッシュメモリチップ2−0,2−1から読み出したデータを、ホストシステム4が受け取り可能な状態となるまで保持する。また、フラッシュメモリチップ2−0,2−1に書き込むデータを、フラッシュメモリチップ2−0,2−1が書き込み可能な状態となるまで保持する。
フラッシュメモリインタフェースブロック10は、それぞれ内部バス14−0,14−1を介して、フラッシュメモリチップ2−0,2−1との間でデータ、アドレス情報、ステータス情報、内部コマンド等の授受を行う。ここで、内部コマンドとは、メモリコントローラ3がフラッシュメモリチップ2−0,2−1に処理の実行を指示するためのコマンドであり、フラッシュメモリチップ2−0,2−1は、メモリコントローラ3から与えられる内部コマンドに従って動作する。
ECCブロック11は、フラッシュメモリチップ2−0,2−1に書き込むデータにエラーコレクションコードを生成するとともに、読み出したデータに付加されるエラーコレクションコードに基づいて、読み出したデータに含まれる誤りを検出・訂正する。
ROM12は、マイクロプロセッサ6による処理の手順を定義するプログラムが記憶される不揮発性の記憶素子である。例えば、アドレス変換テーブルの作成等の処理手順を定義するプログラムが格納されている。
マイクロプロセッサ6は、ROM12に記憶されているプログラムに従って、メモリコントローラ3の全体の動作を制御する。例えば、マイクロプロセッサ6は、各種処理を定義したコマンドセットをROM12から読み出して、フラッシュメモリインタフェースブロック10に各種処理を実行させる。
フラッシュメモリチップ2−0,2−1はNAND型フラッシュメモリからなる。NAND型フラッシュメモリは、不揮発性メモリでありレジスタと、複数のメモリセルが2次元的に配列されたメモリセルアレイを備えている。メモリセルアレイは、複数のメモリセル群と、ワード線とを備える。ここで、メモリセル群は、複数のメモリセルが直列に接続されたものである。各ワード線は、メモリセル群の特定のメモリセルを選択するためのものである。このワード線を介して選択されたメモリセルとレジスタとの間で、データの書き込み又は読み出し、即ち、レジスタから選択されたメモリセルへの書き込み又は選択されたメモリセルからレジスタへのデータの読み出しが行われる。即ち、フラッシュメモリチップ2−0,2−1に入力されたデータは、レジスタを介してメモリセルに書き込まれ、メモリセルから読み出されたデータは、レジスタを介してフラッシュメモリチップ2−0,2−1から出力される。
NAND型フラッシュメモリでは、データ読み出し動作及びデータ書き込み動作はページ単位で行われ、データ消去動作はブロック(物理ブロック)単位でおこなわれる。物理ブロックは、複数のページで構成される。フラッシュメモリの物理ブロックの構成は、フラッシュメモリの大容量化に伴い変化している。本発明の実施の形態では、1個のページが4セクタ(2048バイト)のユーザ領域と64バイトの冗長領域とで構成され、1個の物理ブロックが64個のページで構成されているフラッシュメモリを用いる。本発明の実施の形態では用いないが、1個のページが1セクタ(512バイト)のユーザ領域と16バイトの冗長領域とで構成され、1個の物理ブロックが32個のページで構成されているフラッシュメモリも知られている。
ユーザ領域はホストシステム4から与えられるデータを記憶するための領域である。冗長領域は、誤り訂正符号(ECC:Error Correcting Code)、論理アドレス情報、ブロックステータス(フラグ)等の付加データを記憶するための領域である。
論理アドレス情報は、ユーザ領域に有効なデータが格納されている物理ブロックと対応関係にある論理ブロックを特定するための情報である。ユーザ領域に有効なデータが格納されていない物理ブロックについては、そのブロックの冗長領域に、論理アドレス情報は格納されていない。したがって、冗長領域に論理アドレス情報が格納されているか否かを判定することにより、その冗長領域が含まれている物理ブロックに有効なデータが格納されているか否かを判定することができる。つまり、冗長領域に論理アドレス情報が格納されていないとき、その物理ブロックには、有効なデータが格納されていないと判断する。
尚、論理ブロックと物理ブロックとの対応関係は通常、アドレス変換テーブルによって管理される。このアドレス変換テーブルは、各物理ブロックの冗長領域に記憶されている論理アドレス情報に基づいて作成される。
ブロックステータス(フラグ)は、ブロックの良否を示すフラグである。正常にデータの書き込み等を行うことができないブロックは、不良ブロックと判別され、冗長領域には、不良ブロックであることを示すブロックステータス(フラグ)が書き込まれる。尚、初期不良の不良ブロックには、不良ブロックであることを示すブロックステータス(フラグ)が出荷前に書き込まれる。
ホストシステム4側のアドレス空間は、セクタ(512バイト)単位で分割した領域に付けた通し番号であるLBA(Logical Block Address)で管理されている。図2に示すように、本実施の形態では、ホストシステム4側からLBA#0〜#4095999からなる4096000セクタの領域がアクセスされる場合について説明する。ここでは、LBAが連続する512セクタの領域を論理ブロックとして管理し、この論理ブロックに論理ブロック番号(LBN)を付している。例えば、LBA#0〜#511の512セクタの領域は、LBN#0の論理ブロックに属し、LBA#512〜#1023の512セクタの領域は、LBN#2の論理ブロックに属している。このように、LBA#0〜#4095999の4096000セクタの領域内には、LBN#0〜#7999の8000個の論理ブロックが構成される。
尚、各論理ブロックに属する領域の容量(セクタ数)については、後述する1個の仮想ブロックに含まれるユーザ領域の容量(セクタ数)に一致するように適宜設定される。
本実施の形態では、8つの論理ゾーン(LZN#0〜#7)にそれぞれ1000個の論理ブロックを振り分けている。ここで、振り分け先の論理ゾーンの個数及び振り分け単位である論理ブロックに含まれる領域のセクタ数は、共に2のべき乗で与えられる数値に設定する。尚、論理ブロックに含まれる領域のセクタ数については、1個の仮想ブロックに含まれるユーザ領域の容量(セクタ数)に一致するように設定されるので、1個の仮想ブロックに含まれるユーザ領域のセクタ数が2のべき乗で与えられる数値になるように仮想ブロックが構成される。つまり、1個の物理ブロックに含まれるユーザ領域のセクタ数が2のべき乗で与えられる数値になっている場合、仮想ブロックを構成する物理ブロックの個数が2のべき乗で与えられる数値になる。このように設定することにより、論理ブロックに含まれるセクタ単位の領域の振り分け先は、LBAをビット表示(2進数表示)したときの、一部のビットの値に基づいて判別することができる。
図3はビット表示(2進数表示)のLBAであり、LBA#0〜#4095999を22ビット表示している。この22ビットのLBAの上位13ビット(LBAの下位側から数えて10ビット目から22ビット目までの13ビット)は各論理ブロックに付けたLBNを示し、下位9ビット(LBAの下位側から数えて1ビット目から9ビット目までの9ビット)は各論理ブロックに含まれるセクタ単位の領域に付けた通し番号である論理セクタ番号(LSN)を示す。LBNの下位3ビット(LBAの下位側から数えて10ビット目から12ビット目までの3ビット)は、8個の論理ゾーンに付けたLZNを示す。つまり、論理ブロックに含まれるセクタ単位の領域の振り分け先は、LBNの下位3ビット(LBAの下位側から数えて10ビット目から12ビット目までの3ビット)の値に基づいて判別することができる。
振り分け先の論理ゾーンのLZNに対応するビットは、振り分け先の論理ゾーンの個数及び振り分け単位である論理ブロックに含まれる領域のセクタ数に基づいて決定される。例えば、振り分け先の論理ゾーンの個数が2個で、論理ブロックに含まれる領域のセクタ数が2セクタの場合、LBAの下位側から数えてn+1ビット目からm+nビット目までのmビットの値に基づいて振り分け先の論理ゾーンが判別される。又、各論理ブロックに付けたLBNは、LBAの下位nビットを除いたLBAの上位側のビットによって示される。論理ゾーン内の論理ブロックの通し番号であるLZIBNは、LBNの下位mビットを除いたLBNの上位側のビット(LBAの下位n+mビットを除いたLBAの上位側のビット)によって示される。図3に示した例では、LBNの下位3ビットを除いたLBNの上位側のビット(LBAの下位12ビットを除いたLBAの上位側のビット)がLZIBNを示す。
図4に示すように、フラッシュメモリチップ2−0,2−1はそれぞれ8192個の物理ブロックを有している。以下、フラッシュメモリチップ2−0内の物理ゾーン番号及び物理ブロックアドレスを表す際には、PZN及びPBAのように添え字0を用い、フラッシュメモリチップ2−1内の物理ゾーン番号及び物理ブロックアドレスを表す際には、PZN及びPBAのように添え字1を用いる。フラッシュメモリチップ2−0,2−1内の物理ブロックには、それぞれ、PBA#0〜#8191,PBA#0〜#8191が付されている。各フラッシュメモリチップ2−0,2−1内は、8個の物理ゾーンに分割されている。即ち、各物理ゾーンには、PBAが連続する1024個の物理ブロックがそれぞれ含まれている。例えば、フラッシュメモリチップ2−0において、#0〜#1023の物理ブロックは、PZN#0の物理ゾーンに含まれ、PBA#1024〜#2047の物理ブロックは、PZN#1の物理ゾーンに含まれる。フラッシュメモリチップ2−1においても同様に、#0〜#1023の物理ブロックは、PZN#0の物理ゾーンに含まれ、PBA#1024〜#2047の物理ブロックは、PZN#1の物理ゾーンに含まれる。尚、各物理ゾーン内の物理ブロックに付けた通し番号を物理ゾーン内ブロック番号(PZIBN)と呼ぶ。また、フラッシュメモリチップ2−0内の物理ゾーン内ブロック番号を表す際には、PZIBNのように添え字0を用い、フラッシュメモリチップ2−1内の物理ゾーン内ブロック番号を表す際には、PZIBNのように添え字1を用いる。
フラッシュメモリチップ2−0内の物理ゾーンとフラッシュメモリチップ2−1内の物理ゾーンは、PZNとPZNとが一致する物理ゾーン同士が相互に関連付けられている。例えば、フラッシュメモリチップ2−0内のPZN#0の物理ゾーンとフラッシュメモリチップ2−1内のPZN#0の物理ゾーンとが関連付けられ、フラッシュメモリチップ2−0内のPZN#1の物理ゾーンとフラッシュメモリチップ2−1内のPZN#1の物理ゾーンとが関連付けられている。
相互に関連付けられた物理ゾーンには、その物理ゾーンのPZN(PZNとPZN)とLZNが一致する論理ゾーンが割り当てられる。例えば、フラッシュメモリチップ2−0内のPZN#0の物理ゾーンとフラッシュメモリチップ2−1内のPZN#0の物理ゾーンに対しては、LZN#0の論理ゾーンが割り当てられ、フラッシュメモリチップ2−0内のPZN#1の物理ゾーンとフラッシュメモリチップ2−1内のPZN#1の物理ゾーンに対しては、LZN#1の論理ゾーンが割り当てられる。
メモリコントローラ3は、関連付けられた2個の物理ゾーンからそれぞれ1つずつ物理ブロックを選択し、選択された2つの物理ブロックを仮想的に結合して仮想ブロックを形成する。この仮想ブロックには、この仮想ブロックを構成する物理ブロックが含まれる物理ゾーンと対応関係にある論理ゾーンに属する論理ブロックが割り当てられる。図5は、LZN#0の論理ゾーン内の論理ブロックと、フラッシュメモリチップ2−0内のPZN#0の物理ゾーン内の物理ブロックとフラッシュメモリチップ2−1内のPZN#0の物理ゾーン内の物理ブロックを仮想的に結合した仮想ブロックとの対応関係を示した図である。ハッチングされた物理ブロックが、仮想ブロックを構成する物理ブロックを表している。例えば、LBN#0の論理ブロックは、フラッシュメモリチップ2−0内のPZN#0の物理ゾーン内のPZIBN#14の物理ブロックとフラッシュメモリチップ2−1内のPZN#0の物理ゾーン内のPZIBN#16の物理ブロックとで構成される仮想ブロックに割り当てられている。また、LBN#8の論理ブロックは、PZIBN#2の物理ブロックとPZIBN#3の物理ブロックとで構成される仮想ブロックに割り当てられている。
尚、論理ブロックと仮想ブロック(物理ブロック)の対応関係は、論理ブロックを構成する各物理ブロックの冗長領域に書き込まれる論理アドレス情報に基づいて判別される。例えば、LBN#8の論理ブロック、つまり、LZIBN#1の論理ブロックに割り当てられたPZIBN#2の物理ブロック及びPZIBN#3の物理ブロックの冗長領域には、論理アドレス情報として#1が書き込まれる。
フラッシュメモリチップ2−0,2−1内の物理ブロックで構成された仮想ブロックにアクセスするときは、アクセス対象の領域が属する論理ブロック及び論理ゾーンが特定される。続いて、その論理ゾーンに割り当てられた2個の物理ゾーンが特定される。さらに、アクセス対象の領域が属する論理ブロックと対応関係にある仮想ブロックを構成する2個の物理ブロックが特定される。
次に、各論理ブロックに属するLBAが連続する512セクタの領域と、各仮想ブロックを構成する2個の物理ブロック内の記憶領域との対応関係について説明する。尚、物理ブロック内の各ページに含まれる4セクタのユーザ領域については、先頭から順番に第1セクタ領域、第2セクタ領域、第3セクタ領域、第4セクタ領域と呼ぶ。
図6は、フラッシュメモリチップ2−0のPBA#14の物理ブロックとフラッシュメモリチップ2−1のPBA#16の物理ブロックとで構成された仮想ブロック内の記憶領域と、この仮想ブロックに割り当てられたLBN#0の論理ブロックに属するLSN#0〜#511の512セクタの領域との対応関係を示している。フラッシュメモリチップ2−0のPBA#14の物理ブロックには、LBN#0の論理ブロックに属するLSNが偶数の領域が割り当てられ、フラッシュメモリチップ2−1のPBA#16の物理ブロックには、LBN#0の論理ブロックに属するLSNが奇数の領域が割り当てられる。各物理ブロックに含まれるページ番号(PN)#0〜#63の各ページには、ページ番号の順番で(ページ番号が若い方から順番に)、各ページ内では第1セクタ領域、第2セクタ領域、第3セクタ領域、第4セクタ領域の順番で、論理ブロックに属する256セクタの領域が、LSNが若い方から順番に割り当てられる。
図7は、図6に示されたLBN#0の論理ブロックに属する512セクタの領域に付けられたLSNを、LBAに置き換えて示した図である。論理ブロックに属する512セクタの領域のLBAは連続しているので、仮想ブロックには、LBAが連続する512セクタの領域が割り当てられる。尚、他の論理ブロック(LBN#0以外の論理ブロック)に属するLSN#0〜#511の512セクタの領域と、その論理ブロックが割り当てられた仮想ブロック内の記憶領域との対応関係も、図6に示した対応関係と同様になる。また、他の論理ブロックの場合には、LSNとLBAの対応関係がLBN#0の論理ブロックの場合と異なるが、いずれの論理ブロックの場合であっても、仮想ブロックには、LBAが連続する512セクタの領域が割り当てられる。
また、フラッシュメモリでは、データを書き換える際に、書き換え対象となるデータが保存されている物理ブロックの内容を別の物理ブロックに転写して書き換えを行なう。このため、物理ゾーンに含まれる物理ブロックの数が論理ゾーンに含まれる論理ブロックの数より多く構成される。また、フラッシュメモリ内の物理ブロックには、出荷時から不良である先天性の不良ブロックが含まれている。更に、出荷時に良品の物理ブロックであっても、使用開始後に劣化して不良ブロックになる物理ブロック(後天性の不良ブロック)もある。従って、各論理ゾーンに含まれる論理ブロックの個数は、物理ゾーンに含まれる良品の物理ブロックの個数及び後天性の不良ブロックの発生個数等を考慮して決定される。本実施の形態では、1000個の論理ブロックが含まれる論理ゾーンに対して、1024個の仮想ブロックに相当する記憶領域を割り当てている。つまり、各物理ゾーンに含まれる物理ブロックの数を1024個としている。
上述のフラッシュメモリシステム1に新たなデータを書き込む場合、メモリコントローラ3は、まず、書き込み先のLBAの下位側から数えて10ビット目から12ビット目までの3ビットの値に基づいて、その書き込み先の領域が属する論理ゾーンを特定する。次にメモリコントローラ3は、特定された論理ゾーンと対応関係にあるフラッシュメモリチップ2−0内の物理ゾーン及びフラッシュメモリチップ2−1内の物理ゾーンから、それぞれ1個ずつデータが書き込まれていない物理ブロックを検索し、検出された2個の物理ブロックを仮想的に結合して仮想ブロックを構成し、当該仮想ブロックにデータを保存する。この仮想ブロックを構成する2個の物理ブロックの先頭ページの冗長領域には、その書き込み先の領域が属する論理ブロックのLZIBN(LBAの下位12ビットを除いたLBAの上位側のビット)が書き込まれる。
尚、上述の空きブロックの検索では、冗長領域を参照して、論理アドレス情報(LZIBN)が保存されていない物理ブロック(不良ブロックを除く)のPBA,PBAを記載した空きブロック検索テーブルを予め作成しておき、この空きブロック検索テーブルを用いて仮想ブロックを構成する物理ブロックを選択するようにしてもよい。
以上で説明した本発明の実施の形態では、論理ブロック単位でLBAが連続する領域を各論理ゾーンに振り分けている。このため、アクセスが集中する領域が、振り分け単位である論理ブロックに含まれる領域より十分に広ければ、アクセスが特定の領域に集中しても、そのアクセスは各物理ゾーンに含まれる物理ブロックに対するアクセスに分散される。このため、不良ブロックが発生する確率が低減できる。
また、フラッシュメモリチップ2−0,2−1のそれぞれから選択された2つの物理ブロックを用いて仮想ブロックを構成しているため、異なるフラッシュメモリチップ内の物理ブロックに並行してアクセスすることができるようになり、アクセススピードが高速になる。
また、フラッシュメモリシステム1において、メモリコントローラ3は、LBAの特定のビットを参照することによって、論理ブロックの振り分け先となる論理ゾーンを判別することができる。
更に、振り分けの単位である論理ブロックに属する領域の容量(セクタ数)と、仮想ブロックに含まれるユーザ領域の容量(セクタ数)とが等しいため、各仮想ブロックに対しては、LBAが連続する領域が割り当てられ、アドレス管理が煩雑にならない。
次に、比較例として、図8から図10に示したように、割り振りの単位を仮想ブロックに含まれるユーザ領域の容量(セクタ数)の1/2とした場合(割り振りの単位を256セクタとした場合)について説明する。
割り振りの単位である256セクタ単位の領域を、説明の便宜上論理グループとし、この論理グループにグループ番号(GN)を付している。つまり、LBA#0〜#255の256セクタの領域はGN#0の論理グループに属し、LBA#256〜#511の256セクタの領域はGN#1の論理グループに属し、LBA#512〜#767の256セクタの領域はGN#3の論理グループに属し、以下同様に論理グループが構成され、グループ番号が付される。これらの論理グループは、LZN#0〜#7の8個の論理ゾーンに対して順次割り振られる。例えば、GN#0の論理グループはLZN#0の論理ゾーンに割り振られ、GN#1の論理グループはLZN#1の論理ゾーンに割り振られ、GN#2の論理グループはLZN#2の論理ゾーンに割り振られる。
各論理ゾーンに割り振られた論理グループは、2個の論理グループが1組となって1個の論理ブロックが構成され、この1個の論理ブロックが1個の仮想ブロックに割り当てられる。例えば、LZN#0の論理ゾーンに割り振られるGN#0,#8,#16,#24の論理グループは、GN#0,#8の2個の論理グループが1組となって1個の論理ブロック(LZIBN#0の論理ブロック)が構成され、GN#16,#24の論理グループが1組となって1個の論理ブロック(LZIBN#1の論理ブロック)が構成される。
この論理グループ単位の振り分けを、ビット表示(2進数表示)のLBAを参照して説明する。
図9に示すように、22ビットのLBAの上位14ビットが、割り振りの単位である論理グループに付けたGNを示し、このGNの下位3ビット、つまり、LBAの下位側から数えて10ビット目から12ビット目までの3ビットが、振り分け先の論理ゾーンのLZNを示す。また、GNの上位10ビット、つまり、LBAの下位側から数えて13ビット目から22ビット目までの10ビットが、各論理ブロックに付けられたLZIBNを示す。
従って、振り分け先の論理ゾーンのLZNを示すGNの下位3ビット及びLZIBNを示すGNの上位10ビットが同一の2つの論理グループ、つまり、GNの下位側から数えて4ビット目だけが異なる2つの論理グループが1個の論理ブロックになる。例えば、GNを示す全ビットが“0”のGN#0の論理グループと、GNを示す14ビットの下位側から数えて4ビット目だけが“1”のGN#8の論理グループが、LZN#0の論理ゾーン内のLZIBN#0の論理ブロックを構成する。又、LBAの下位側から数えて12ビット目のビットとLBAの下位8ビットを連結した9ビットが、論理ブロックに含まれるセクタ単位の領域に付けたLSNを示す。
各論理ゾーンに割り振られた2個の論理グループで1個の論理ブロックを構成し、この1個の論理ブロックが1個の仮想ブロックに割り当てた場合も、この論理ブロックに属するLSN#0〜#511の512セクタの領域と、この論理ブロックが割り当てられた仮想ブロック内の記憶領域との対応関係は、図6と同様の対応関係になる。しかし、1個の論理ブロックを構成する2個の論理グループにおいて、一方の論理グループに属する領域のLBAと他方の論理グループに属する領域のLBAは連続していなので、LSNをLBAに置き換えた場合、LSN#0〜#255に対応する領域のLBAとLSN#256〜#511に対応する領域のLBAは連続していない。
例えば、図9は、LZN#0の論理ゾーン内のLZIBN#0の論理ブロックを、フラッシュメモリチップ2−0内のPZN#0の物理ゾーン内のPZIBN#14の物理ブロックとフラッシュメモリチップ2−1内のPZN#0の物理ゾーン内のPZIBN#16の物理ブロックとで構成される仮想ブロックに割り当てた場合を示している。この論理ブロックに属するLSN#0〜#255の領域は、LBA#0〜#255に対応し、LSN#256〜#511の領域は、LBA#2048〜#2303に対応する。このように、LSN#0〜#255に対応する領域のLBAとLSN#256〜#511に対応する領域のLBAが連続していない。
尚、本発明のフラッシュメモリシステムは、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
例えば、フラッシュメモリの数は2個に限定されず、2のべき乗個であればよい。また論理ブロック内のセクタ数、及び、論理ゾーンの個数も2のべき乗個であれば8個に限定されない。いずれの場合も、論理ブロックに属する領域の容量(セクタ数)と仮想ブロックのユーザ領域の容量(セクタ数)を同じにし、論理ブロック単位で各論理ゾーンにセクタ単位の領域を振り分けるようにすればよい。
本発明の実施の形態によるフラッシュメモリシステムの概略構成を示すブロック図である。 論理ブロックを論理ゾーンに振り分ける処理を説明する図である。 ビット表示(2進数表示)したLBAを示した図である。 関連付けられた物理ゾーンに対する論理ゾーンの割り当てを説明する図である。 仮想ブロックの構成を示す図である。 仮想ブロック内の記憶領域と論理ブロックに属する領域との対応関係を、LSNを用いて示した図である。 仮想ブロック内の記憶領域と論理ブロックに属する領域との対応関係を、LBAを用いて示した図である。 比較例における振り分け処理を説明する図である。 比較例におけるビット表示(2進数表示)したLBAを示した図である。 比較例における仮想ブロック内の記憶領域と論理ブロックに属する領域との対応関係を、LBAを用いて示した図である。
符号の説明
1 フラッシュメモリシステム
2 フラッシュメモリ
2−1,2−0 フラッシュメモリチップ
3 メモリコントローラ

Claims (3)

  1. ホストシステムから与えられるセクタ単位の論理アドレスに基づいて、物理ブロック単位で記憶データの消去が行われる複数個のフラッシュメモリに対するアクセスを制御するメモリコントローラであって、
    前記論理アドレスが連続する (nは1以上の整数)セクタの領域を含む論理ブロックを複数個形成することにより前記論理アドレスが割り当てられている領域を前記論理ブロック毎の領域に分割する論理ブロック形成手段と、
    複数個の前記論理ブロックを含む論理ゾーンを2 (mは1以上の整数)個形成する手段であって、それぞれの前記論理ゾーンには前記論理ブロックを跨いで前記論理アドレスが連続する領域が含まれないように前記論理ゾーンを形成する論理ゾーン形成手段と、
    それぞれの前記フラッシュメモリ内の記憶領域を複数個の物理ゾーンに分割することにより、複数個の物理ブロックを含む前記物理ゾーンを数個形成する物理ゾーン形成手段と
    それぞれが異なる前記フラッシュメモリに含まれる複数個の前記物理ゾーンからなる物理ゾーングループを複数個形成するグループ形成手段と、
    それぞれの前記物理ゾーングループに対して、1個の前記論理ゾーンを割り当てる論理ゾーン割り当て手段と、
    前記物理ゾーングループに含まれるそれぞれの前記物理ゾーンから個ずつ選択された複数個の物理ブロックを仮想的に結合した仮想ブロックを形成する仮想ブロック形成手段と、
    記論理ゾーンに属する論理ブロックを、当該論理ゾーンに対応する前記物理ゾーングループに属する前記仮想ブロックに割り当てる論理ブロック割り当て手段とを備え、
    前記論理ブロック形成手段は、前記論理アドレスをビット表示したものの下位側から数えてnビット目のビットより上位側のビットからなる上位側ビットに基づいて論理ブロック形成し、
    前記論理ゾーン形成手段は、前記上位側ビットの下位mビットに基づいて前記論理ゾーンを形成することを特徴とするメモリコントローラ。
  2. 物理ブロック単位で記憶データの消去が行われる複数個のフラッシュメモリと、これらのフラッシュメモリに対するアクセスを制御する請求項1に記載のメモリコントローラを備えることを特徴とするフラッシュメモリシステム。
  3. ホストシステムから与えられるセクタ単位の論理アドレスに基づいて、物理ブロック単位で記憶データの消去が行われる複数個のフラッシュメモリに対するアクセスを制御するフラッシュメモリの制御方法であって、
    前記論理アドレスが連続する (nは1以上の整数)セクタの領域を含む論理ブロックを複数個形成することにより前記論理アドレスが割り当てられている領域を前記論理ブロック毎の領域に分割する論理ブロック形成ステップと、
    複数個の前記論理ブロックを含む論理ゾーンを2 (mは1以上の整数)個形成するステップであって、それぞれの前記論理ゾーンには前記論理ブロックを跨いで前記論理アドレスが連続する領域が含まれないように前記論理ゾーンを形成する論理ゾーン形成ステップと、
    それぞれの前記フラッシュメモリ内の記憶領域を複数個の物理ゾーンに分割することにより、複数個の物理ブロックを含む前記物理ゾーンを数個形成する物理ゾーン形成ステップと
    それぞれが異なる前記フラッシュメモリに含まれる複数個の前記物理ゾーンからなる物理ゾーングループを複数個形成するグループ形成ステップと、
    それぞれの前記物理ゾーングループに対して、1個の前記論理ゾーンを割り当てる論理ゾーン割り当てステップと、
    前記物理ゾーングループに含まれるそれぞれの前記物理ゾーンから個ずつ選択された複数個の物理ブロックを仮想的に結合した仮想ブロックを形成する仮想ブロック形成ステップと
    記論理ゾーンに属する論理ブロックを、当該論理ゾーンに対応する前記物理ゾーングループに属する前記仮想ブロックに割り当てる論理ブロック割り当てステップとを有し、
    前記論理ブロック形成ステップでは、前記論理アドレスをビット表示したものの下位側から数えてnビット目のビットより上位側のビットからなる上位側ビットに基づいて論理ブロック形成し、
    前記論理ゾーン形成ステップでは、前記上位側ビットの下位mビットに基づいて前記論理ゾーンを形成することを特徴とするフラッシュメモリの制御方法。
JP2007086982A 2007-03-29 2007-03-29 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 Active JP4636046B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007086982A JP4636046B2 (ja) 2007-03-29 2007-03-29 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007086982A JP4636046B2 (ja) 2007-03-29 2007-03-29 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法

Publications (2)

Publication Number Publication Date
JP2008243156A JP2008243156A (ja) 2008-10-09
JP4636046B2 true JP4636046B2 (ja) 2011-02-23

Family

ID=39914363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007086982A Active JP4636046B2 (ja) 2007-03-29 2007-03-29 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法

Country Status (1)

Country Link
JP (1) JP4636046B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014179066A (ja) 2013-02-14 2014-09-25 Panasonic Corp ストレージ制御装置、ストレージシステム、およびストレージ制御方法
WO2023100212A1 (ja) * 2021-11-30 2023-06-08 Tdk株式会社 メモリコントローラおよびフラッシュメモリシステム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000181784A (ja) * 1998-12-18 2000-06-30 Hitachi Ltd 書き換え可能な不揮発性記憶装置
JP2003015946A (ja) * 2001-07-05 2003-01-17 Tdk Corp メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
JP2003085037A (ja) * 1993-03-08 2003-03-20 M-Systems Ltd メモリ管理方法
JP2004086300A (ja) * 2002-08-23 2004-03-18 Megawin Technology Co Ltd フラッシュメモリ論理アドレス検出方法
JP2004508626A (ja) * 2000-08-25 2004-03-18 レクサー メディア,インク. オーバヘッドデータとユーザデータを個別に格納するフラッシュメモリアーキテクチャ
JP2005107601A (ja) * 2003-09-26 2005-04-21 Tdk Corp メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003085037A (ja) * 1993-03-08 2003-03-20 M-Systems Ltd メモリ管理方法
JP2000181784A (ja) * 1998-12-18 2000-06-30 Hitachi Ltd 書き換え可能な不揮発性記憶装置
JP2004508626A (ja) * 2000-08-25 2004-03-18 レクサー メディア,インク. オーバヘッドデータとユーザデータを個別に格納するフラッシュメモリアーキテクチャ
JP2003015946A (ja) * 2001-07-05 2003-01-17 Tdk Corp メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
JP2004086300A (ja) * 2002-08-23 2004-03-18 Megawin Technology Co Ltd フラッシュメモリ論理アドレス検出方法
JP2005107601A (ja) * 2003-09-26 2005-04-21 Tdk Corp メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法

Also Published As

Publication number Publication date
JP2008243156A (ja) 2008-10-09

Similar Documents

Publication Publication Date Title
JP4171749B2 (ja) メモリコントローラおよびフラッシュメモリシステム
JP4666080B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4632180B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP5093294B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4702387B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4737223B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4636005B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4636046B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4710918B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4241741B2 (ja) メモリコントローラ及びフラッシュメモリシステム
JP4687720B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4582232B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4661566B2 (ja) アクセスコントローラ、フラッシュメモリシステム及びアクセス制御方法
JP4434171B2 (ja) メモリコントローラ及びフラッシュメモリシステム
JP2012068764A (ja) メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法
JP4254933B2 (ja) メモリコントローラ及びフラッシュメモリシステム
JP2010086106A (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2010026878A (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP3934659B1 (ja) メモリコントローラ及びフラッシュメモリシステム
JP4760826B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4235595B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
JP4254930B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP4273109B2 (ja) メモリコントローラ及びフラッシュメモリシステム
JP4569554B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2010092200A (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100608

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100729

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

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

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

Free format text: PAYMENT UNTIL: 20131203

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4636046

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150