JP2007293726A - メモリコントローラ及びフラッシュメモリシステム - Google Patents

メモリコントローラ及びフラッシュメモリシステム Download PDF

Info

Publication number
JP2007293726A
JP2007293726A JP2006122706A JP2006122706A JP2007293726A JP 2007293726 A JP2007293726 A JP 2007293726A JP 2006122706 A JP2006122706 A JP 2006122706A JP 2006122706 A JP2006122706 A JP 2006122706A JP 2007293726 A JP2007293726 A JP 2007293726A
Authority
JP
Japan
Prior art keywords
logical
zone
physical
block
flash memory
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
JP2006122706A
Other languages
English (en)
Other versions
JP4434171B2 (ja
Inventor
Kenzo Kida
健三 木田
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 JP2006122706A priority Critical patent/JP4434171B2/ja
Publication of JP2007293726A publication Critical patent/JP2007293726A/ja
Application granted granted Critical
Publication of JP4434171B2 publication Critical patent/JP4434171B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】LBAが特定範囲の領域にデータの書き込みや書き換えが集中したときに、データの書き込みがフラッシュメモリの特定の領域に集中することを回避する。
【解決手段】論理ゾーンを2のべき乗個を含む論理グループを複数個構成し、各論理グループに割り当てられたLBAが連続する領域を、2のべき乗個のセクタに対応する領域単位で、論理グループに含まれる各論理ゾーンに振り分ける。論理ゾーンの総数が2のべき乗個でない場合であっても、各論理グループにおける振り分け先の論理ゾーンの個数は2のべき乗個になるので、LBAの一部のビットの値に基づいて、振り分けの論理ゾーンを判別することができる。又、各論理グループに割り当てられたLBAが連続する領域は、各論理グループ内で、その論理グループに含まれる各論理ゾーンに振り分けられるので、LBAが特定範囲の領域に書き込みや書き換えが集中した場合であっても、データの書き込みが特定の物理ゾーンに集中することを回避できる。
【選択図】図4

Description

本発明は、メモリコントローラ及び当該メモリコントローラを備えるフラッシュメモリシステムに関する。
近年、不揮発性の記憶媒体であるフラッシュメモリの開発が盛んに行われ、デジタルカメラ等の情報機器(ホストシステム)の記憶媒体として普及している。
このような機器が扱うデータが大容量化したことに伴い、フラッシュメモリの記憶容量も大容量化が進んでいる。このように大容量化したフラッシュメモリの記憶領域を円滑に管理するため、近年は、この記憶領域を複数のゾーンに分割して管理する手法が用いられている(例えば特許文献1を参照)。
従来の複数のゾーンを有するフラッシュメモリの記憶領域を、より具体的に示せば、例えば図9に示す形に区画され、管理されていた。
すなわち、データ消去の単位である物理ブロックは、複数の物理ゾーンのいずれかに属している。又、各物理ブロックには、それぞれに固有の物理ブロックアドレス(PBA)が割り当てられ、各物理ゾーンには、それぞれに固有の物理ゾーン番号(PZN)が割り当てられる。
図9に示した例では、計2048個の物理ブロックに#0〜#2047の連続するPBAが割り当てられており、PBA#0〜#511の計512個の物理ブロックがPZN#0の物理ゾーンに属し、PBA#512〜#1023の計512個の物理ブロックがPZN#1の物理ゾーンに属し、PBA#1024〜#1535の計512個の物理ブロックがPZN#2の物理ゾーンに属し、PBA#1536〜#2047の計512個の物理ブロックがPZN#3の物理ゾーンに属する。つまり、各物理ゾーンには、PBAが連続する物理ブロックが属していた。
また、物理ブロックは書き込み又は読み出しの処理単位であるページを複数個含み、各ページには物理ページアドレス(PPA)が割り当てられている。PPAは、ページが属する物理ブロックのPBAの下位に、当該物理ブロック内での当該ページの通番であるページ番号(PN)を付加した形をとっている。
一方、ホストシステム側のアドレス空間は、セクタ(512バイト)単位で分割した領域に付けた通番であるLBA(Logical Block Address)で管理されている。更に、複数個のセクタをまとめたものを論理ブロックと呼び、複数個の論理ブロックをまとめたものを論理ゾーンと呼んでいる。又、論理ブロックに付けられた通番を論理ブロック番号(LBN)と呼び、論理ゾーンに付けられた通番を論理ゾーン番号(LZN)と呼んでいる。又、各論理ゾーンに含まれる論理ブロックの、各論理ゾーン内での通番を論理ゾーン内ブロック番号(LZIBN)と呼んでいる。
従って、各論理ゾーンに含まれる論理ブロック数をnとした場合、LBNをnで割ったときの商がLZNに対応し、余りがLZIBNに対応する。
又、各論理ゾーンにはそれぞれ1個の物理ゾーンが割り当てられ、論理ゾーンに含まれる各論理ブロックに対応するデータは、その論理ゾーンに割り当てられた物理ゾーンに含まれる物理ブロックに書き込まれる。更に、データが書き込まれた物理ブロックの冗長領域には、そのデータに対応する論理ブロックを示す情報(以下、論理アドレス情報と言う。)が書き込まれる。
又、各物理ブロックには、その物理ブロックに割り当てられた論理ブロックのデータがLBAの順番で書き込まれるので、物理ブロックと論理ブロックとの対応関係を管理することによって、ホストシステムから与えられるLBAとフラッシュメモリ内のアクセス領域の対応関係を管理することができる。
又、各論理ブロックに含まれるセクタ数は、対応関係にある物理ブロックに含まれるページ数及び1ページに含まれるセクタ数に応じて設定される。例えば、1個の物理ブロックが32個のページを含み、1個のページが1個のセクタに対応するフラッシュメモリを使用して、1個の論理ブロックを1個の物理ブロックに対応させた場合には、1個の論理ブロックに含まれるセクタ数は32セクタになる。
なお、物理ブロックと論理ブロックとの対応関係は、データの書き込みや消去が行われる毎に変化する。このため、個々の時点における両者の対応関係を管理するためアドレス変換テーブルが作成され、対応関係が変化する毎にアドレス変換テーブルが更新される。又、論理ゾーンと物理ゾーンとの対応関係は予め設定されているので、各物理ゾーンに含まれる物理ブロックの冗長領域に書き込まれている論理アドレス情報を参照することにより、論理ゾーン毎にアドレス変換テーブルを作成することができる。ここで、論理アドレス情報としては、LZIBN又はLBNを用いることができるが、一般的にはデータ量の少ないLZIBNが用いられる。
通常、各論理ゾーンには、LBAが連続する複数のセクタが割り当てられる。図9の例では、LZN#0の論理ゾーンにLBA#0〜#15999のセクタが、LZN#1の論理ゾーンにLBA#16000〜#31999のセクタが、LZN#2の論理ゾーンにLBA#32000〜#47999のセクタが、LZN#3の論理ゾーンにLBA#48000〜#63999のセクタが、それぞれ割り当てられている。
この例では、フラッシュメモリの1個のページが1個のセクタに対応し、各物理ブロックが32個のページを含んでいるので、各論理ゾーンに割り当てられた16000個のセクタは、LBAが連続する32個のセクタ単位で論理ブロックとして管理されている。従って、言い換えれば、LBAが連続する32個のセクタを論理ブロックとして、LBNが連続する論理ブロックを各論理ゾーンに500個(LZIBN#0〜#499)ずつ割り当てている。ここで、論理ブロックに含まれるセクタ数については、1個の論理ブロックと1個又は複数個の物理ブロックの容量が一致するよう適宜設定される。
特開2005−18490号公報
しかしながら、各論理ゾーンにLBAが連続する領域を割り当てた場合、LBAが特定範囲の領域(例えば、ファイルアロケーションテーブルが格納される領域)にデータの書き込みや書き換えが集中すると、そのLBAが割り当てられた論理ゾーンに対応する物理ゾーンに含まれる物理ブロックに書き込みが集中して、その物理ゾーンに含まれる物理ブロックの劣化(不良ブロック化)だけが極端に早まる、という問題が生じる。
本発明は上記の実情に鑑みてなされたもので、データの書き込みがフラッシュメモリの特定の領域に集中することを回避できるメモリコントローラ、及び当該メモリコントローラを備えるフラッシュメモリシステムを提供することを目的とする。
上記目的を達成するため、本発明のメモリコントローラは、
ホストシステムからの命令に応答して前記フラッシュメモリへのアクセスを制御するメモリコントローラであって、 前記フラッシュメモリにおける消去単位である物理ブロックを複数個集めた物理ゾーンと前記ホストシステムにおけるアクセス単位であるセクタを複数集めた論理ゾーンとの対応関係を管理するゾーン管理手段と、
対応関係にある前記論理ゾーンと前記物理ゾーンとの間で、該論理ゾーン内の論理アドレスと該物理ゾーン内の物理アドレスとの対応関係を管理するアドレス管理手段と、
前記論理ゾーンを2のべき乗個の集めた論理グループを構成し、該論理グループに
論理アドレスが連続する所定範囲の領域を割り当てる論理グループ管理手段と、
前記論理グループに割り当てられた所定範囲の領域に含まれるセクタを、該論理グループに含まれる前記論理ゾーンに対して論理アドレスが連続する2のべき乗個のセクタ単位で順次割り振る論理アドレス分配手段と、
を備えることを特徴とする。
従って、各論理グループに割り当てられたLBAが連続する領域は、2のべき乗個のセクタ単位で、2のべき乗個の論理ゾーンに順次振り分けられる。又、前記論理グループに含まれる前記論理ゾーンの個数が2個で、前記所定のセクタ数が2個のときに、前記論理アドレスの下位から数えてp+qビット目からq+1ビット目までの値に基づいて、振り分け先の前記論理ゾーンを判別することができる。つまり、LBAの一部のビットの値に基づいて、振り分け先の論理ゾーンを容易に判別することができる。
又、前記2のべき乗個のセクタに相当する容量は、1個又は複数個の前記物理ブロックの容量と等しくすることが好ましい。こうすることにより、各論理ゾーンに対して、1個又は複数個の物理ブロック単位で領域を割り振ることができる。
又、上記のメモリコントローラとフラッシュメモリでフラッシュメモリシステムを構成してもよい。
本発明によれば、LBAが特定範囲の領域に書き込みや書き換えが集中した場合であっても、データの書き込みがフラッシュメモリの特定の領域に集中することを回避できるメモリコントローラ、及び当該メモリコントローラを備えるフラッシュメモリシステムが実現される。つまり、フラッシュメモリ内の物理ブロックを複数個まとめた物理ゾーンを構成して、各物理ゾーン単位でアクセスを管理する場合に、特定の物理ゾーンに含まれる物理ブロックに書き込みが集中することを回避することができる。
以下、図面に基づき、本発明の実施の形態について詳細に説明する。
図1は、本発明に係るフラッシュメモリシステム1を概略的に示すブロック図である。図1に示すように、フラッシュメモリシステム1は、フラッシュメモリ2と、それを制御するコントローラ3で構成されている。
なお、フラッシュメモリシステム1は、外部バス13を介してホストシステム4と接続される。ホストシステム4は、ホストシステム4の全体の動作を制御するためのCPU(Central Processing Unit)、フラッシュメモリシステム1との情報の授受を担うコンパニオンチップ等から構成される。ホストシステム4は、例えば、文字、音声、あるいは画像情報等の種々の情報を処理するパーソナルコンピュータやデジタルスチルカメラをはじめとする各種情報処理装置であってもよい。
フラッシュメモリ2は、不揮発性メモリであり、レジスタと、メモリセルアレイと、から構成される。フラッシュメモリ2は、レジスタとメモリセルアレイとの間でデータの複写を行って、データの書き込み又は読み出しを行う。
メモリセルアレイは、複数のメモリセル群と、ワード線と、を備える。各メモリセル群は、複数のメモリセルが直列に接続されたものである。ワード線は、メモリセル群の特定のメモリセルを選択するためのものである。このワード線を介して選択されたメモリセルとレジスタとの間で、データの複写、即ち、レジスタから選択されたメモリセルへの複写又は選択されたメモリセルからレジスタへのデータの複写が行われる。
メモリセルアレイを構成するメモリセルは、2つのゲートを備えたMOSトランジスタによって構成される。ここで、上側のゲート、下側のゲートは、それぞれ、コントロールゲート、フローティングゲートと呼ばれており、フローティングゲートに電荷(電子)を注入若しくはフローティングゲートから電荷(電子)を排出することによって、データの書き込み若しくはデータの消去が行われる。
このフローティングゲートは、周囲を絶縁体で囲まれているので、注入された電子は長期間にわたって保持される。なお、フローティングゲートに電子を注入するときは、コントロールゲートが高電位側となる高電圧をコントロールゲートとフローティングゲート間に印加する。また、フローティングゲートから電子を排出するときは、コントロールゲートが低電位側となる高電圧をコントロールゲートとフローティングゲート間に印加する。
ここで、フローティングゲートに電子が注入されている状態が書き込み状態であり、論理値「0」に対応する。また、フローティングゲートから電子が排出されている状態が消去状態であり、論理値「1」に対応する。
このようなフラッシュメモリ2のアドレス空間を図2に示す。フラッシュメモリ2のアドレス空間は、“ページ”及び“ブロック(物理ブロック)”で構成されている。
ページは、フラッシュメモリ2にて行われるデータ読み出し動作及びデータ書き込み動作における処理単位である。物理ブロックは、フラッシュメモリ2にて行われるデータ消去動作における処理単位であり、複数個のページで構成されている。
図2に示したフラッシュメモリ2では、1つのページは、1セクタ(512バイト)のユーザ領域25と、16バイトの冗長領域26で構成され、1つの物理ブロックは32個のページで構成されている。なお、1個のページが4セクタのユーザ領域と64バイトの冗長領域で構成され、1個の物理ブロックが64個のページで構成されているフラッシュメモリもある。ここで、ユーザ領域25は、ホストシステム4から供給されるユーザデータを格納するための領域である。又、冗長領域26は、エラーコレクションコード、論理アドレス情報、ブロックステータス(フラグ)等の付加データを記録するための領域である。
エラーコレクションコードは、ユーザ領域25に記憶されているデータに含まれる誤りを検出し、訂正するためのデータである。
論理アドレス情報は、フラッシュメモリ2の各物理ブロックのユーザ領域25に記憶されているデータに対応する論理ブロックを特定するための情報である。
なお、ユーザ領域25に有効なデータが格納されていない物理ブロックについては、そのブロックの冗長領域26に、論理アドレス情報は格納されていない。
従って、冗長領域26に論理アドレス情報が格納されているか否かを判定することにより、その冗長領域26が含まれている物理ブロックに有効なデータが格納されているか否かを判断することができる。つまり、冗長領域26に論理アドレス情報が格納されていないとき、その物理ブロックには、有効なデータが格納されていないと判断する。
上述のように、1個の物理ブロックは、複数個のページで構成されている。これらのページには、データの上書きができない。このため、1個のページに格納されたデータのみを書き換えるときであっても、そのページが含まれた物理ブロック内の全ページに格納されたデータを、再度、別の物理ブロックに書き込まなければならない。
つまり、通常のデータ書き換えでは、書き換えるページが含まれる物理ブロックの全ページに格納されたデータが、別の消去されている物理ブロックに書き込まれる。この際、データが変更されないページに格納されているデータは、以前に格納されていたデータがそのまま再度書き込まれる。
上記のようにデータを書き換えるにあたっては、書き換えられたデータは、通常、以前に格納されていた物理ブロックとは異なる物理ブロックに書き込まれる。このため、論理ブロックアドレスと物理ブロックアドレスの間の対応関係は、フラッシュメモリ2にてデータが書き換えられる毎に、動的に変化する。
従って、論理ブロックと物理ブロックとの対応関係を管理する必要があり、通常、この対応関係は、アドレス変換テーブルによって管理される。このアドレス変換テーブルは、各物理ブロックの冗長領域26に記憶されている論理アドレス情報(通常は、LZIBN又はLBNを示す情報)に基づいて作成される。なお、このような動的なアドレス管理手法は、上述の通り、フラッシュメモリを用いたメモリシステムでは一般的に行われている手法である。
ブロックステータス(フラグ)は、ブロックの良否を示すフラグである。正常にデータの書き込み等を行うことができないブロックは、不良ブロックと判別され、冗長領域26には、不良ブロックであることを示すブロックステータス(フラグ)が書き込まれる。
このようなフラッシュメモリ2は、コントローラ3から、データ、アドレス情報、内部コマンド等を受信して、データの読み出し処理、書き込み処理、ブロック消去処理、転送処理等の各処理を行う。
ここで、内部コマンドとは、コントローラ3がフラッシュメモリ2に処理の実行を指示するためのコマンドであり、フラッシュメモリ2は、コントローラ3から与えられる内部コマンドに従って動作する。これに対して、外部コマンドとは、ホストシステム4がフラッシュメモリシステム1に対して処理の実行を指示するためのコマンドである。
コントローラ3は、図1に示すように、マイクロプロセッサ6と、ホストインターフェースブロック7と、ワークエリア8と、バッファ9と、フラッシュメモリインターフェースブロック10と、ECC(エラー・コレクション・コード)ブロック11と、ROM(Read Only Memory)12と、から構成される。これら機能ブロックによって構成されるコントローラ3は、一つの半導体チップ上に集積される。以下に各機能ブロックについて説明する。
マイクロプロセッサ6は、ROM12に記憶されているプログラムに従って、コントローラ3の全体の動作を制御する。例えば、マイクロプロセッサ6は、各種処理等を定義したコマンドセット(シーケンスコマンド)をROM12から読み出してフラッシュメモリインターフェースブロック10に供給し、フラッシュメモリインターフェースブロック10に処理を実行させる。
ホストインターフェースブロック7は、図3に示すようにコマンドレジスタR1、セクタ数レジスタR2及びLBAレジスタR3を備えており、ホストシステム4との間の、データ、アドレス情報、ステータス情報、外部コマンド等の授受を行なう。ホストシステム4よりフラッシュメモリシステム1に供給されるデータ等は、ホストインターフェースブロック7を入口としてフラッシュメモリシステム1の内部(例えば、バッファ9)に取り込まれる。また、フラッシュメモリシステム1からホストシステム4に供給されるデータ等は、ホストインターフェースブロック7を出口としてホストシステム4に供給される。
図1に示すワークエリア8は、フラッシュメモリ2の制御に必要なデータが一時的に格納される作業領域であり、複数のSRAM(Static Random Access Memory)セルによって構成される。ワークエリア8には、例えば、論理アドレスと物理アドレスを変換するためのアドレス変換テーブル、空きブロックを検索するための空きブロックテーブルなどが記憶される。
バッファ9は、フラッシュメモリ2から読み出されたデータ及びフラッシュメモリ2に書き込むべきデータを一時的に蓄積する。すなわち、フラッシュメモリ2から読み出されたデータは、ホストシステム4が受け取り可能な状態となるまでバッファ9に保持され、フラッシュメモリ2に書き込むべきデータは、フラッシュメモリ2が書き込み可能な状態となるまでバッファ9に保持される。
フラッシュメモリインターフェースブロック10は、内部バス14を介して、フラッシュメモリ2とデータ、アドレス情報、ステータス情報、内部コマンド等の授受を行う。より詳細には、図3に示すように、物理ブロックアドレスレジスタR11、ページ番号レジスタR12、カウンタR13,を備える。
物理ブロックアドレスレジスタR11は、フラッシュメモリ2のアクセス対象の物理ブロックの物理ブロックアドレスPBAを格納する。物理ブロックアドレスレジスタR11に設定される物理ブロックアドレスPBAは、ワークエリア8に作成されるアドレス変換テーブルに基づいて決定される。このアドレス変換テーブルは、対応する論理ゾーンと物理ゾーンの組毎に形成され、論理ゾーン内ブロック番号LZIBNと物理ゾーン内ブロック番号PZIBNとの対応関係を記憶する。
ページ番号レジスタR12は、アクセス対象のページのページ番号PNを格納する。カウンタR13は、各物理ブロック内のアクセス対象ページの残数をカウントする。
フラッシュメモリインターフェースブロック10は、ROM12から読み出されたシーケンスコマンドに従って内部コマンド、アドレス情報等をフラッシュメモリ2に供給することにより、フラッシュメモリ2に読み出し、書き込み等を実行させる。ここで、フラッシュメモリ2に供給されるアドレス情報は、物理ブロックアドレスレジスタR11及びページ番号レジスタR12に保持されている情報に基づいて生成される。
ECCブロック11は、フラッシュメモリ2に書き込むデータに付加されるエラーコレクションコードを生成するとともに、読み出しデータに付加されたエラーコレクションコードに基づいて、読み出したデータに含まれる誤りを検出・訂正する。
ROM12は、マイクロプロセッサ6による処理の手順を定義するシーケンスコマンドを格納する不揮発性の記憶素子である。
次に、上記構成のフラッシュメモリシステムにより実現される論理アドレス空間と物理アドレス空間の割り当てについて説明する。
本実施の形態においては、図4に示すように、2のべき乗個の論理ゾーンを含む論理グループがm(2以上の整数)個構成され、各論理グループには#0〜#m−1の論理グループ番号LGNが付けられている。LGN#0〜#m−1の各論理グループに含まれる論理ゾーンには、それぞれ1個の物理ゾーンが割り当てられている。図4に示した例では、LGN#0の論理グループにi個の論理ゾーンが含まれ、LGN#0の論理グループに含まれる論理ゾーンには#0〜#i−1の通番(以下、論理グループ内ゾーン番号(LGIZN)と言う。)が付けられている。同様に、LGN#1の論理グループには、LGIZN#0〜#j−1のj個の論理ゾーンが含まれ、LGN#2の論理グループには、LGIZN#0〜#k−1のk個の論理ゾーンが含まれ、LGN#m−1の論理グループには、LGIZN#0〜#n−1のn個の論理ゾーンが含まれている。
LGN#0〜LGN#m−1の各論理グループには、LBAが連続する論理アドレス領域が割り当てられている。例えば、各論理ゾーンに16000セクタの領域を割り当てる場合、LGN#0の論理グループには、LBAが連続する(16000×i)セクタの領域が割り当てられ、LGN#1の論理グループには、LBAが連続する(16000×j)セクタの領域が割り当てられ、LGN#2の論理グループには、LBAが連続する(16000×k)セクタの領域が割り当てられ、LGN#m−1の論理グループには、LBAが連続する(16000×n)セクタの領域が割り当てられる。更に、各論理グループに割り当てられた領域は、論理グループに含まれる論理ゾーンに対して、所定のセクタ数単位で順次振り分けられる。
尚、上記論理ゾーンのグループ分けについては、論理ゾーンの個数に応じて適宜設定する。例えば、論理ゾーンの個数が20(2進数表示:1 0100)個の場合には、論理ゾーンを16個含む論理グループと4個含む論理グループを構成し、論理ゾーンの個数が26(2進数表示:1 1010)個の場合には、論理ゾーンを16個含む論理グループと8個含む論理グループと2個含む論理グループを構成する。
次に、各論理グループに割り当てられた領域の振り分けについて図5〜8を参照して説明する。図5に示した例では、8個の論理ゾーンを含む論理グループと4個の論理ゾーンを含む論理グループと2個の論理ゾーンを含む論理グループが構成され、各論理ゾーンには16000セクタの領域が割り当てられる。ここで、1個の論理ブロックは32セクタに対応するので、各論理ゾーンには500個の論理ブロックに対応する領域が割り当てられる。
図5に示した例では、LZN#0〜#7の8個の論理ゾーンを含むLGN#0の論理グループには、LBN#0〜#3999の論理ブロックに相当する領域が割り当てられ、LZN#8〜#11の4個の論理ゾーンを含むLGN#1の論理グループには、LBN#4000〜#5999の論理ブロックに相当する領域が割り当てられ、LZN#12〜#13の2個の論理ゾーンを含むLGN#2の論理グループには、LBN#6000〜#6999の論理ブロックに相当する領域が割り当てられている。
次に、LGN#0の論理グループに割り当てられたLBN#0〜#3999の論理ブロックに相当する領域の各物理ゾーンへの振り分けについて図6を参照して説明する。図6に示した例では、128セクタ単位で各論理ゾーンに領域を振り分けている。ここで、1個の論理ブロックは32セクタに対応するので、図6(b)に示したように、LBN#0〜#3の論理ブロックに相当する領域がLGIZN#0の論理ゾーンに振り分けられ、LBN#4〜#7の論理ブロックに相当する領域がLGIZN#1の論理ゾーンに振り分けられ、LBN#8〜#11の論理ブロックに相当する領域がLGIZN#2の論理ゾーンに振り分けられ、以下同様に、LBN#24〜#27の論理ブロックに相当する領域がLGIZN#7の論理ゾーンに振り分けられ、LBN#28〜#31の論理ブロックに相当する領域がLGIZN#0の論理ゾーンに振り分けられる。
振り分け先の論理ゾーンは、図6(a)に示したようにLBNの下位から数えて5ビット目から3ビット目までの3ビットの値によって判断することができる。この3ビットの値が0(2進数表示:000)のときはLGIZN#0の論理ゾーンに振り分けられ、1(2進数表示:001)のときはLGIZN#1の論理ゾーンに振り分けられ、2(2進数表示:010)のときはLGIZN#2の論理ゾーンに振り分けられ、3(2進数表示:011)のときはLGIZN#3の論理ゾーンに振り分けられ、以下同様に、7(2進数表示:111)のときはLGIZN#7の論理ゾーンに振り分けられる。
尚、LGN#0の論理グループに含まれるLGIZN#0〜#7の論理ゾーンはLZN#0〜#7の論理ゾーンにそれぞれ対応する。又、各論理ゾーンに振り分けられた論理ブロックのLZIBN(#0〜#500)は、LBNの下位から数えて14ビット目から6ビット目までの9ビットの値に対応する。
次に、LGN#1の論理グループに割り当てられたLBN#4000〜#5999の論理ブロックに相当する領域の振り分けについて図7を参照して説明する。LGN#1の論理グループの場合も、LGN#0の論理グループの場合と同様に、128セクタ単位で各論理ゾーンに領域を振り分けている。ここで、1個の論理ブロックは32セクタに対応するので、図7(b)に示したように、LBN#4000〜#4003の論理ブロックに相当する領域がLGIZN#0の論理ゾーンに振り分けられ、LBN#4004〜#4007の論理ブロックに相当する領域がLGIZN#1の論理ゾーンに振り分けられ、LBN#4008〜#4011の論理ブロックに相当する領域がLGIZN#2の論理ゾーンに振り分けられ、LBN#4012〜#4015の論理ブロックに相当する領域がLGIZN#3の論理ゾーンに振り分けられ、LBN#4016〜#4019の論理ブロックに相当する領域がLGIZN#0の論理ゾーンに振り分けられる。
振り分け先の論理ゾーンを判別するときは、LGN#1の論理グループに割り当てられた論理ブロックの通番に相当するLBN’(LBN’=LBN−4000)を求めることにより、LGN#0の論理グループの場合と同様に振り分け先の論理ゾーンを判別することができる。つまり、振り分け先の論理ゾーンは、図7(a)に示したようにLBN’の下位から数えて4ビット目から3ビット目までの2ビットの値によって判断することができる。この2ビットの値が0(2進数表示:00)のときはLGIZN#0の論理ゾーンに振り分けられ、1(2進数表示:01)のときはLGIZN#1の論理ゾーンに振り分けられ、2(2進数表示:10)のときはLGIZN#2の論理ゾーンに振り分けられ、3(2進数表示:11)のときはLGIZN#3の論理ゾーンに振り分けられる。
尚、LGN#1の論理グループに含まれるLGIZN#0〜#3の論理ゾーンはLZN#8〜#11の論理ゾーンにそれぞれ対応する。又、各論理ゾーンに振り分けられた論理ブロックのLZIBN(#0〜#500)は、LBN’の下位から数えて13ビット目から5ビット目までの9ビットの値に対応する。
次に、LGN#2の論理グループに割り当てられたLBN#6000〜#6999の論理ブロックに相当する領域の振り分けについて図8を参照して説明する。LGN#2の論理グループの場合も、LGN#0の論理グループの場合と同様に、128セクタ単位で各論理ゾーンに領域を振り分けている。ここで、1個の論理ブロックは32セクタに対応するので、図8(b)に示したように、LBN#6000〜#6003の論理ブロックに相当する領域がLGIZN#0の論理ゾーンに振り分けられ、LBN#6004〜#6007の論理ブロックに相当する領域がLGIZN#1の論理ゾーンに振り分けられ、LBN#6008〜#6011の論理ブロックに相当する領域がLGIZN#0の論理ゾーンに振り分けられる。
振り分け先の論理ゾーンを判別するときは、LGN#2の論理グループに割り当てられた論理ブロックの通番に相当するLBN”(LBN”=LBN−6000)を求めることにより、LGN#0の論理グループの場合と同様に振り分け先の論理ゾーンを判別することができる。つまり、振り分け先の論理ゾーンは、図8(a)に示したようにLBN”の下位から3ビット目のビットの値によって判断することができる。このビットの値が0(2進数表示:0)のときはLGIZN#0の論理ゾーンに振り分けられ、1(2進数表示:1)のときはLGIZN#1の論理ゾーンに振り分けられる。
尚、LGN#2の論理グループに含まれるLGIZN#0〜#1の論理ゾーンはLZN#12〜#13の論理ゾーンにそれぞれ対応する。又、各論理ゾーンに振り分けられた論理ブロックのLZIBN(#0〜#500)は、LBN”の下位から数えて12ビット目から4ビット目までの9ビットの値に対応する。
上述のように2のべき乗個の論理ブロックに相当する領域単位で、各論理ゾーンに領域を振り分ける場合には、LBNの一部のビットの値に基づいて振り分け先の論理ゾーンを判別することができる。つまり、論理グループに含まれる論理ゾーンの個数が2個で、この2個の論理ゾーンに2個の論理ブロックに相当する領域を順次割り振っていく場合には、LBNの下位から数えてi+aビット目からa+1ビット目までの値に基づいて振り分け先の前記物理ゾーンを判別することができる。
又、2のべき乗個のセクタに相当する領域単位で、各論理ゾーンに領域を振り分ける場合には、LBAの一部のビットの値に基づいて振り分け先の論理ゾーンを判別することになるが、この場合も同様に判別することができる。つまり、論理グループに含まれる論理ゾーンの個数が2個で、この2個の論理ゾーンに2個のセクタに相当する領域を順次割り振っていく場合には、LBAの下位から数えてp+qビット目からq+1ビット目までの値に基づいて振り分け先の前記物理ゾーンを判別することができる。
尚、1個の論理ブロックが32(2)セクタに対応する場合、2個の論理ブロックは2a+5個のセクタに相当し、LBNはLBAの下位5ビットを削除したものに相当する。ここで、LBAの一部のビットの値に基づいて振り分け先の論理ゾーンを判別した場合、LBAの下位から数えてi+(a+5)ビット目から(a+5)+1ビット目までの値に基づいて振り分け先の前記物理ゾーンを判別することになる。従って、LBAの一部のビットの値に基づいて振り分け先の論理ゾーンを判別しても、LBNの一部のビットの値に基づいて振り分け先の論理ゾーンを判別しても、実質的には同一部分のビットの値に基づいて振り分け先の論理ゾーンが判別される。
次に、フラッシュメモリ2からの読み出し処理について説明する。
読み出し処理は、ホストインターフェースブロック7のセクタ数レジスタR2に設定されたセクタ数、LBAレジスタR3に設定されたLBAの先頭値(書き込みを開始するLBA)、コマンドレジスタR1に設定された外部コマンドに基づいて処理が実行される。尚、この読み出し処理は、読み出し処理を指示する外部コマンドが、コマンドレジスタR1に設定されると開始される。
まず、マイクロプロセッサ6は、LBAレジスタR3に格納された先頭LBAとセクタ数レジスタR2に設定されたアクセス対象のセクタ数に基づいて、アクセス対象領域が含まれる論理ブロックのLBNを求める。LBNは、LBAから論理ブロック内のページ番号PNを示す下位5ビットを除去することによって求めることができる。
求めたLBNに基づいて、この論理ブロックが含まれる論理グループを判別する。図5に示した例では、LBNの値が#0〜#3999であれば、この論理ブロックがLGN#0の論理グループに含まれると判断し、LBNの値が#4000〜#5999であれば、この論理ブロックがLGN#1の論理グループに含まれると判断し、LBNの値が#6000〜#6999であれば、この論理ブロックがLGN#2の論理グループに含まれると判断する。
続いて、求めたLBNに対応する論理ブロックの論理グループ内での通番(上記LBN、LBN’又はLBN”に相当する値)を求める。この論理グループ内での通番(上記LBN、LBN’又はLBN”に相当する値)の一部のビットに基づいて、求めたLBNに対応する論理ブロックが振り分けられている論理ゾーンのLZNと、その論理ブロックのLZIBNを求める。例えば、求めたLBNに対応する論理ブロックが図5に示したLGN#0のグループに含まれる場合には、LBNの下位から数えて5ビット目から3ビット目までの3ビットの値に基づいて振り分け先の論理ゾーンのLGIZNを求め、LBNの下位から数えて14ビット目から6ビット目までの9ビットの値に基づいて振り分け先の論理ゾーンにおけるLZIBNを求める。LGN#1のグループに含まれる場合には、LBN’(LBN’=LBN−4000)の下位から数えて4ビット目から3ビット目までの2ビットの値に基づいて振り分け先の論理ゾーンのLGIZNを求め、LBN’の下位から数えて13ビット目から5ビット目までの9ビットの値に基づいて振り分け先の論理ゾーンにおけるLZIBNを求める。LGN#2のグループに含まれる場合には、LBN”(LBN”=LBN−6000)の下位から数えて3ビット目の値に基づいて振り分け先の論理ゾーンのLGIZNを求め、LBN”の下位から数えて12ビット目から4ビット目までの9ビットの値に基づいて振り分け先の論理ゾーンにおけるLZIBNを求める。
尚、LGIZNは、各論理グループに応じたオフセットを加算することによりLZNに変換することができる。図5に示したLGN#0のグループに含まれる論理ゾーンの場合、求めたLGIZNとLZNが一致し(LZN=LGIZN)、LGN#1のグループに含まれる論理ゾーンの場合、求めたLGIZNに8を加算した値がLZNに一致し(LZN=LGIZN+8)、LGN#2のグループに含まれる論理ゾーンの場合、求めたLGIZNに12を加算した値がLZNに一致する(LZN=LGIZN+12)。
次に、上述のようにして求めたアクセス対象領域が含まれる論理ブロックのLZNとLZIBNに基づいて、この論理ブロックに対応する物理ブロックのPBAを求める。この論理ブロックに対応する物理ブロックのPBAを求めるときは、アドレス変換テーブルを参照してこの論理ブロックのPZIBNを求め、求めたPZIBNをPBAに変換する。
上記アドレス変換テーブルは論理ゾーンに含まれる論理ブロックのLZIBNと物理ゾーンに含まれる物理ブロックのPZIBNとの対応関係を示したテーブルであり、物理ブロックの冗長領域26に書き込まれているLZIBN(論理アドレス情報)を参照することによって作成することができる。又、論理ゾーンと物理ゾーンの対応関係は予め設定されている。図5に示した例では、LZN#0の論理ゾーンがPZN#0の物理ゾーンに対応し、LZN#1の論理ゾーンがPZN#1の物理ゾーンに対応し、LZN#2の論理ゾーンがPZN#2の物理ゾーンに対応し、以下同様にして、LZN#13の論理ゾーンがPZN#13の物理ゾーンに対応する。ここで、例えば、LZN#7の論理ゾーンに含まれる論理ブロックと対応する物理ブロックのPBAを求めるときは、LZN#7の論理ゾーンに含まれる論理ブロックのLZIBNとPZN#7の物理ゾーンに含まれる物理ブロックのPZIBNの対応関係を示したアドレス変換テーブルを参照する。又、このアドレス変換テーブルは、PZN#7の物理ゾーンに含まれる物理ブロックの冗長領域26に書き込まれているLZIBN(論理アドレス情報)を参照することによって作成することができる。
このアドレス変換テーブルを参照して求めたPZIBNは、各物理ゾーンに応じたオフセットを加算することによってPBAに変換することができる。図5に示した例では、各物理ゾーンに512個の物理ブロックが含まれているので、PZN#0の物理ゾーンに含まれる物理ブロックの場合、求めたPZIBNがそのままPBAに対応し、PZN#1の物理ゾーンに含まれる物理ブロックの場合、求めたPZIBNに512を加算した番号がPBAに対応し、PZN#2の物理ゾーンに含まれる物理ブロックの場合、求めたPZIBNに1024(512×2)を加算した番号がPBAに対応し、PZN#3の物理ゾーンに含まれる物理ブロックの場合、求めたPZIBNに1536(512×3)を加算した番号がPBAに対応し、以下同様にして、PZN#13の物理ゾーンに含まれる物理ブロックの場合、求めたPZIBNに6656(512×13)を加算した番号がPBAに対応する。
次に、マイクロプロセッサ6は、フラッシュメモリインタフェースブロック10の物理ブロックアドレスレジスタR11に読み出し対象の物理ブロックの物理ブロックアドレスPBAを設定し、ページ番号レジスタR12にその物理ブロック内の読み出しを開始するページのページ番号を設定し、カウンタR13に読み出し対象のページ数を設定する。ここで、読み出しを開始するページのページ番号は、LBAレジスタR3に設定された読み出しを開始するLBAから論理ブロック番号LBNを示すビットを除いて残った下位ビットが対応する。つまり、1個の論理ブロックが32セクタに対応する場合は、読み出しを開始するLBAの下位5ビットが読み出しを開始するページのページ番号に対応する。又、カウンタR13に設定するページ数は、セクタ数レジスタR2に設定されたセクタ数に基づいて設定される。尚、アクセス対象領域が複数の論理ブロックにまたがっている場合は、LBNの若い方から順番に上記の設定を行う。
続いて、コマンドレジスタR1に設定された外部コマンドに対応するシーケンスコマンドがROM12から読み出され、このシーケンスコマンドに従ってフラッシュメモリインタフェースブロック10が、フラッシュメモリ2を制御するための内部コマンド、アドレス情報等を出力し、フラッシュメモリ2から読み出したデータをバッファ9に格納する。ここで、フラッシュメモリ2に与えられる内部コマンドは、読み出しを指示する内部コマンドである。又、フラッシュメモリ2に与えられるアドレス情報は、物理ブロックアドレスレジスタR11とページ番号レジスタR12に設定されている設定値に基づいて生成される。尚、フラッシュメモリ2から1ページ(1セクタ)分のデータが読み出される毎に、ページ番号レジスタR12に設定されている設定値はインクリメント(1ずつ加算)され、カウンタR13に設定されている設定値はデクリメント(1ずつ減算)され、インクリメントされたページ番号レジスタR12の設定値に基づいて、次のアドレス情報が生成される。尚、バッファ9に格納されたデータは、ホストインターフェースブロック7と外部バス13を介してホストシステム4に提供される。
この物理ブロックアドレスレジスタR11、ページ番号レジスタR12及びカウンタR13に設定された情報に基づく読み出し処理は、カウンタR13に設定されている設定値が“0”になると終了する。つまり、この読み出し処理では、ページ番号レジスタR12に最初に設定された設定値に対応するページ(セクタ)から順番に、カウンタR13に最初に設定されたページ数(セクタ数)分のデータが読み出される。
次に、フラッシュメモリ2への書き込み処理について説明する。書き込み処理の場合は、書き込み処理を指示する外部コマンドが、コマンドレジスタR1に設定されると、書き込み処理が開始され、ホストインターフェースブロック7のセクタ数レジスタR2に設定されたセクタ数、LBAレジスタR3に設定された先頭LBA(書き込みを開始するLBA)に基づいて処理が実行される。
書き込み処理の場合も、読み出し処理の場合と同様に書き込み先の論理ブロック(アクセス対象領域が含まれる論理ブロック)に対応する物理ブロックのPBAが求められるが、書き込み先の論理ブロックと対応する物理ブロックが無いときや対応する物理ブロックに追加書き込みをすることができないときは、空きブロックの検索が行われる。この空きブロックの検索では、書き込み先の論理ブロックが含まれる論理ゾーンに対応する物理ゾーン内の空きブロックが検索される。
次に、フラッシュメモリインタフェースブロック10の物理ブロックアドレスレジスタR11には書き込み先の物理ブロックのPBAが設定され、ページ番号レジスタR12には書き込みを開始するページのページ番号を設定され、さらに、カウンタR13にはデータが書き込まれるページのページ数が設定される。
続いて、コマンドレジスタR1に設定された外部コマンドに対応するシーケンスコマンドがROM12から読み出され、このシーケンスコマンドに従ってフラッシュメモリインタフェースブロック10のが、フラッシュメモリ2を制御するための内部コマンド、アドレス情報等を出力すると共に、フラッシュメモリ2に書き込むデータを、バッファ9からフラッシュメモリ2に供給する。
読み出し処理の場合と同様に、物理ブロックアドレスレジスタR11、ページ番号レジスタR12、カウンタR13及びコマンドレジスタR21に設定された情報に基づく書き込み処理は、カウンタR13に設定されている設定値が“0”になると終了する。つまり、この書き込み処理では、ページ番号レジスタR12に最初に設定された設定値に対応するページ(セクタ)から順番に、カウンタR13に最初に設定されたページ数(セクタ数)分のデータが書き込まれる。
以上で説明したように、本実施の形態のフラッシュメモリシステム1では、論理ゾーンを2のべき乗個を含む論理グループを複数個構成し、各論理グループに割り当てられたLBAが連続する領域を、2のべき乗個のセクタに対応する領域単位で、論理グループに含まれる各論理ゾーンに振り分けている。こうすることにより、論理ゾーンの総数が2のべき乗個でない場合であっても、各論理グループにおける振り分け先の論理ゾーンの個数は2のべき乗個になるので、LBAの一部のビットの値に基づいて、振り分けの論理ゾーンを判別することができる。又、各論理グループに割り当てられたLBAが連続する領域は、各論理グループ内で、その論理グループに含まれる各論理ゾーンに振り分けられるので、LBAが特定範囲の領域に書き込みや書き換えが集中した場合であっても、データの書き込みが特定の物理ゾーンに集中することを回避できる。
本発明の実施の形態に係るフラッシュメモリシステムを概略的に示すブロック図である。 この発明の実施の形態のフラッシュメモリのアドレス空間の構造を概略的に示す図である。 ホストインターフェースブロック及びフラッシュメモリインタフェースブロックの構成を示すブロック図である。 論理ブロックのグループ化及び論理アドレスと物理アドレスとの対応関係を説明するための図である。 論理ブロックのグループ化及び論理アドレスと物理アドレスとの対応を具体的に示す図である。 論理ブロックのグループ内論理ゾーンへの割り当ての例を示す図である。 論理ブロックのグループ内論理ゾーンへの割り当ての例を示す図である。 論理ブロックのグループ内論理ゾーンへの割り当ての例を示す図である。 従来のフラッシュメモリのアドレス空間の構造を概略的に示す図である。
符号の説明
1 フラッシュメモリシステム
2 フラッシュメモリ
3 コントローラ
4 ホストシステム
6 マイクロプロセッサ
7 ホストインターフェースブロック
8 ワークエリア
9 バッファ
10 フラッシュメモリインターフェースブロック
11 ECCブロック
12 ROM
13 外部バス
14 内部バス
15 内部クロック源
25 ユーザ領域
26 冗長領域

Claims (4)

  1. ホストシステムからの命令に応答して前記フラッシュメモリへのアクセスを制御するメモリコントローラであって、前記フラッシュメモリにおける消去単位である物理ブロックを複数個集めた物理ゾーンと前記ホストシステムにおけるアクセス単位であるセクタを複数集めた論理ゾーンとの対応関係を管理するゾーン管理手段と、
    対応関係にある前記論理ゾーンと前記物理ゾーンとの間で、該論理ゾーン内の論理アドレスと該物理ゾーン内の物理アドレスとの対応関係を管理するアドレス管理手段と、
    前記論理ゾーンを2のべき乗個の集めた論理グループを構成し、該論理グループに
    論理アドレスが連続する所定範囲の領域を割り当てる論理グループ管理手段と、
    前記論理グループに割り当てられた所定範囲の領域に含まれるセクタを、該論理グループに含まれる前記論理ゾーンに対して論理アドレスが連続する2のべき乗個のセクタ単位で順次割り振る論理アドレス分配手段と、
    を備えることを特徴とするメモリコントローラ。
  2. 前記論理グループに含まれる前記論理ゾーンの個数が2個で、前記所定のセクタ数が2個のときに、前記論理アドレスの下位から数えてp+qビット目からq+1ビット目までの値に基づいて、振り分け先の前記論理ゾーンを判別することを特徴とする請求項1に記載のメモリコントローラ。
  3. 前記2のべき乗個のセクタに相当する容量が1個又は複数個の前記物理ブロックの容量と等しいことを特徴とする請求項1又は2に記載のメモリコントローラ。
  4. 請求項1乃至3のいずれか1項に記載のメモリコントローラと、フラッシュメモリと、から構成される、
    ことを特徴とするフラッシュメモリシステム。
JP2006122706A 2006-04-26 2006-04-26 メモリコントローラ及びフラッシュメモリシステム Active JP4434171B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006122706A JP4434171B2 (ja) 2006-04-26 2006-04-26 メモリコントローラ及びフラッシュメモリシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006122706A JP4434171B2 (ja) 2006-04-26 2006-04-26 メモリコントローラ及びフラッシュメモリシステム

Publications (2)

Publication Number Publication Date
JP2007293726A true JP2007293726A (ja) 2007-11-08
JP4434171B2 JP4434171B2 (ja) 2010-03-17

Family

ID=38764284

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006122706A Active JP4434171B2 (ja) 2006-04-26 2006-04-26 メモリコントローラ及びフラッシュメモリシステム

Country Status (1)

Country Link
JP (1) JP4434171B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011243274A (ja) * 2010-04-30 2011-12-01 Micron Technology Inc メモリデバイスに対するインデックスレジスタアクセス
JP2014137758A (ja) * 2013-01-17 2014-07-28 Toshiba Corp 記憶装置および記憶方法
CN107293324A (zh) * 2016-04-13 2017-10-24 华邦电子股份有限公司 存储器装置及存储器区块使用方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011243274A (ja) * 2010-04-30 2011-12-01 Micron Technology Inc メモリデバイスに対するインデックスレジスタアクセス
JP2014137758A (ja) * 2013-01-17 2014-07-28 Toshiba Corp 記憶装置および記憶方法
US10691542B2 (en) 2013-01-17 2020-06-23 Toshiba Memory Corporation Storage device and storage method
CN107293324A (zh) * 2016-04-13 2017-10-24 华邦电子股份有限公司 存储器装置及存储器区块使用方法

Also Published As

Publication number Publication date
JP4434171B2 (ja) 2010-03-17

Similar Documents

Publication Publication Date Title
JP4171749B2 (ja) メモリコントローラおよびフラッシュメモリシステム
JP4666080B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4235646B2 (ja) メモリコントローラおよびフラッシュメモリシステム
JP4366420B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4488048B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4434171B2 (ja) メモリコントローラ及びフラッシュメモリシステム
JP4636005B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4710753B2 (ja) メモリコントローラ及びメモリコントローラを用いたフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4241741B2 (ja) メモリコントローラ及びフラッシュメモリシステム
JP4661191B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP4661566B2 (ja) アクセスコントローラ、フラッシュメモリシステム及びアクセス制御方法
JP4153535B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法
JP4254933B2 (ja) メモリコントローラ及びフラッシュメモリシステム
JP3934659B1 (ja) メモリコントローラ及びフラッシュメモリシステム
JP4213166B2 (ja) メモリコントローラおよびフラッシュメモリシステム
JP4697146B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4000124B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法
JP6260395B2 (ja) メモリコントローラ、メモリシステム及びメモリ制御方法
JP4227989B2 (ja) メモリコントローラ及びフラッシュメモリシステム
JP2006048746A (ja) メモリカード
JP4273109B2 (ja) メモリコントローラ及びフラッシュメモリシステム
JP4254930B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP4569554B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2007323138A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP2021068129A (ja) メモリコントローラ及びフラッシュメモリシステム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091110

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091119

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4434171

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130108

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140108

Year of fee payment: 4