フラッシュメモリコントローラ

【目的】 本発明はフラッシュメモリコントローラに関し、フラッシュメモリに対するデータの書き込み/読み出し速度を高速化し、スループットを向上させることを目的とする。
【構成】 下位データ用フラッシュメモリ20、及び上位データ用フラッシュメモリ21に対する書き込みデータ、及び読み出しデータの通過するデータバスを下位データバス27と上位データバス28からなる2系統のデータバスで構成し、2系統のデータバスを同時に制御して、2個のフラッシュメモリを同時にアクセス制御するフラッシュメモリシーケンサー10を設けた。また、フラッシュメモリコントローラ2には、2系統のデータバスに、それぞれ転送データを一時格納するバッファメモリ22、23を設けた。

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、フラッシュメモリを記憶媒体としたフラッシュメモリカード、或いは、フラッシュメモリを記憶媒体とした外部記憶装置等に利用されるフラッシュメモリコントローラに関する。
【0002】
【従来の技術】図3は、従来のフラッシュメモリコントローラを示した図である。図3中、1はホスト(ホストコンピュータ)、2はフラッシュメモリコントローラ、3はバッファメモリ(例えば、S−RAM)、4はフラッシュメモリ、6はバッファメモリマネジャー、7はフラッシュメモリフォーマット制御部、8はホストマルチプレクサ、9はバッファメモリマルチプレクサ、10はフラッシュメモリシーケンサー、12はECC処理部を示す。
【0003】§1:フラッシュメモリコントローラの概要説明従来、フラッシュメモリを記憶媒体としたフラッシュメモリカード、或いはフラッシュメモリを記憶媒体とした外部記憶装置が知られていた。これらのフラッシュメモリカード、或いは外部記憶装置には、記憶媒体であるフラッシュメモリを制御するため、フラッシュメモリコントローラが使用されている。
【0004】前記フラッシュメモリコントローラは、ホストからの指示によりフラッシュメモリへのデータの書き込み/読み出し制御を行う。この場合、フラッシュメモリコントローラでは、ハードディスクコントローラと同様にデータの転送制御を行って、フラッシュメモリへのデータの書き込み/読み出しを行う。
【0005】このため、フラッシュメモリコントローラには外付けのバッファメモリを備え、このバッファメモリを経由してフラッシュメモリへのデータの書き込み/読み出しを行っている。
【0006】例えば、フラッシュメモリへのデータの書き込み時には、フラッシュメモリコントローラでは次のように制御を行う。先ず、ホストから転送されたデータをバッファメモリへ転送して蓄える。その後、バッファメモリに蓄えたデータを読み出してフォーマット処理した後、フラッシュメモリへ転送することで、フラッシュメモリへの書き込みを行う(ハードディスクコントローラと同じ経路でデータ転送する)。
【0007】§2:従来例におけるフラッシュメモリコントローラの構成の説明・・・図3参照図3に示したように、フラッシュメモリコントローラ2には、バッファメモリ3と、フラッシュメモリ4が外付けされている。また、フラッシュメモリコントローラ2はホスト(例えば、パソコン)1に接続する。
【0008】また、フラッシュメモリコントローラ2には、ホストインターフェース制御部5と、バッファメモリマネジャー6と、フラッシュメモリフォーマット制御部7が設けてある。
【0009】そして、前記ホストインターフェース制御部5にはホストバスマルチプレクサ8が設けてあり、バッファメモリマネジャー6にはバッファメモリマルチプレクサ9が設けてある。また、フラッシュメモリフォーマット制御部7には、フラッシュメモリシーケンサ10と、ECC処理部12が設けてある。
【0010】前記ホストインターフェース制御部5は、ホスト1とデータ転送を行うための制御信号のやり取りを行うが、この場合、ホストバスマルチプレクサ8が、16ビットで入出力されたデータバスを、フラッシュメモリコントローラ2内の8ビットバス(以下「第1次バス」と記す)に時分割転送する。
【0011】前記フラッシュメモリフォーマット制御部7は、フラッシュメモリ4とデータ転送を行うための制御信号のやり取りを行うが、この場合、フラッシュメモリシーケンサー10が、フラッシュメモリ4の書き込みや、読み出しのアクセス手順の制御を行う。
【0012】また、フラッシュメモリフォーマット制御部7は、8ビットデータ端子を持つフラッシュメモリ4と、フラッシュメモリコントローラ2内の8ビットバス(以下「2次バス」と記す)との間でデータ転送を行う。
【0013】前記バッファメモリマネジャー6は、前記第1次バスと第2次バスのアクセスに対して、時分割による切替え方式を採用し、それらのバスとバッファメモリ3を結びつける役目を果している。
【0014】§3:フラッシュメモリコントローラの動作説明前記のように、フラッシュメモリコントローラ2では、ハードディスクコントローラと同様に、外付けのバッファメモリ3を持ち、このバッファメモリ3を経由してフラッシュメモリ4へのデータ転送を行っている。
【0015】データ転送の流れは、例えば、転送速度の差により次の2つに分けられる。第1のデータ転送の流れは、第1次バスそのものに流れるデータ転送の流れであり、片方の終端がホスト1なので、ホストに合わせたデータ転送速度を持つことになる。
【0016】第2のデータ転送の流れは、第2次バスそのものに流れるデータ転送の流れであり、片方の終端がフラッシュメモリ4なので、フラッシュメモリ4の書き込み/読み出しアクセスに合わせたデータ転送速度を持つことになる。
【0017】現在の所、フラッシュメモリのデータ転送速度はまだまだ遅く、第2次バスのデータ転送速度の方が、第1次バスのデータ転送速度に比べて遅い。フラッシュメモリのデータ書き込みには、コマンド値とアドレス値の送信や、ステータス値の読み取り等のため、バスが占有されたり、読み出し、書き込み、或いは消去は内部の動作実行を知らせるためのビジィ状態があり、これも大きく遅延となるため、データ転送速度が遅くなる原因である。
【0018】前記バッファメモリ3は、異なるデー転送速度を持つ転送機構との間にあり、時間的な緩衝機構でもある。ホストから転送されたデータは、前記バッファメモリ3が受け皿となるため、一括して全て受けるから、少なくとも、複数セクタ分のデータは受けられるので、見かけ上のスループットは向上する。
【0019】
【発明が解決しようとする課題】前記のような従来のものにおいては、次のような課題があった。
(1) :従来のフラッシュメモリコントローラは、外付けのバッファメモリを備えることにより、ホストから転送されるデータを一括、または複数セクタ分受け取ることが可能であるから、スループットは向上する。しかし、そのバッファメモリの容量が小さいと、その効果も少なくなる。
【0020】また、ホストの発行した命令が書き込み命令の場合、ホストから転送された書き込みデータをバッファメモリに一時的に蓄え、前記蓄えたバッファメモリのデータは、次に読み出されて目的のフラッシュメモリ(記憶媒体)に記録される。この場合、書き込みデータをバッファメモリに蓄えた後、該バッファメモリから読み出してフラッシュメモリへ転送するに要する時間もある程度かかる(0ではない)。
【0021】また、前記バッファメモリに対するデータの通過時間だけでも、ライトアクセスと、リードアクセスの2つのサイクルがあるから、バッファメモリのアクセス速度の2倍以上はかかる。従って、フラッシュメモリへの書き込み時間が長くなる。
【0022】(2) :ホストインターフェース制御部の中のホストマルチプレクサの機能により、ホストから16ビット並列に入力するデータを、時分割で8ビットずつ切り分けて第1次バスへ転送している。
【0023】このため、ホストとのデータ転送速度の2倍の速さで第1次バスにデータ転送を行い、バッファメモリマネジャーを経由して、同じく2倍の速度でバッファメモリに書き込まれる。また、フラッシュメモリフォーマット制御部の中の誤り訂正機構(オンザフライ)が優先してバッファメモリに割り入ってアクセスすることが求められている。
【0024】このように、バッファメモリは、誤り訂正機構のアクセス、ホストインターフェース制御部からの上位、下位バイトのアクセス、フラッシュメモリ書き込み用データのアクセス等を受けるため、アクセス頻度は非常に高くなり、全て時分割処理することで実現している。
【0025】前記のような構造を持つフラッシュメモリコントローラは、バッファメモリのアクセスを仮に1とすれば、前記の時分割処理の影響で、ホストとのアクセス速度は、例えば、5となってしまう。
【0026】1例をあげれば、100nSのアクセス速度を持つスタテックRAMをバッファメモリに使用したとすれば、ホストとのアクセス速度は500nSとなってしまう。このように、従来のフラッシュメモリコントローラでは、フラッシュメモリへのアクセス速度が遅い。
【0027】(3) :データの読み取り/書き込み速度の速い装置を実現しようとすれば、記録速度の速いフラッシュメモリを使用することも重要であるが、それに加えて大容量で、かつアクセス速度の速いキャッシュメモリをバッファメモリに使用することである。
【0028】しかし、一般に市販されている高速キャッシュメモリは、容量も小さく、コストも非常に高い。また、消費電力も大きく、使用に適しない。本発明は、このような従来の課題を解決し、フラッシュメモリに対するデータの書き込み/読み出し速度を高速化し、スループットを向上させることを目的とする。
【0029】
【課題を解決するための手段】本発明は前記の目的を達成するため、フラッシュメモリに対するデータの書き込み/読み出し制御を行うフラッシュメモリコントローラにおいて、フラッシュメモリに対する書き込みデータ、及び読み出しデータの通過するデータバスを2系統のデータバス(下位データバス、及び上位データバス)で構成すると共に、前記2系統のデータバスを同時に制御して、2個のフラッシュメモリを同時にアクセス制御するフラッシュメモリシーケンサーを設けた。
【0030】また、前記フラッシュメモリコントローラには、前記2系統のデータバスに、それぞれ転送データを一時格納するためのバッファメモリを設けた。
【0031】
【作用】前記構成に基づく本発明の作用を説明する。ホストとフラッシュメモリとの間のデータ転送は、例えば、16ビット並列データで転送されるが、フラッシュメモリコントローラ内では16ビット並列データを、下位8ビットのデータと、上位8ビットのデータに分けて同時に転送する。
【0032】フラッシュメモリへのデータの書き込み時には、ホストから転送される書き込みデータは、16ビット並列データとしてフラッシュメモリコントローラへ転送される。そして、フラッシュメモリコントローラ内では、ホストから転送された16ビット並列データを、それぞれ2つのバッファメモリに8ビットずつに分けて格納する。
【0033】その後、前記バッファメモリに格納されたデータは、2系統のデータバスを通り、2個のフラッシュメモリへ同時に転送されて書き込みが行われる。また、フラッシュメモリからデータを読み出す場合は、前記の書き込み時とは逆の経路でバッファメモリへ転送される。その後、前記2つのバッファメモリのデータはホストへ転送される。
【0034】このように、8ビットのデータ線を持つフラッシュメモリならば、2個同時にアクセスすることができる。この場合、フラッシュメモリへのアクセスは、フラッシュメモリ制御手段により制御が行われる。
【0035】以上のように、フラッシュメモリコントローラ内部のデータバスを2系統で構成すると共に、従来、外付けしていたバッファメモリを廃止し、フラッシュメモリコントローラ内部に2組のバッファメモリを設けたので、ホストから入力する並列データ(例えば16ビット)をそのまま受け入れることができる。
【0036】また、ホストへ出力するデータも前記並列データ(例えば、16ビット)としてそのまま出力することができる。従って、転送データの変換処理も不要であり、フラッシュメモリに対するリード/ライト処理の高速化が達成できる。
【0037】更に、ホストから転送されたデータは、フラッシュメモリコントローラの内部に設けたバッファメモリに一時格納するので、このバッファメモリが転送データの受け皿となり、スループットが向上する。
【0038】
【実施例】以下、本発明の実施例を図面に基づいて説明する。図1、図2は、本発明の実施例を示した図である。図2、図3中、1はホスト(ホストコンピュータ)、2はフラッシュメモリコントローラ、7はフラッシュメモリフォーマット制御部、10はフラッシュメモリシーケンサー、12はECC処理部、20は下位データ用フラッシュメモリ、21は上位データ用フラッシュメモリ、22、23はバッファメモリ、25は下位データバス、26は上位データバス、27は下位データバス、28は上位データバス、30はアドレスバッファ、31、32は比較器、33はANDゲート、35はアドレス値伝送用ゲート、36はコマンド値転送用ゲート、37は下位伝送用ゲート、38は上位伝送用ゲート、40は下位ステータス取り込み用ゲート、43はアドレス値伝送線、44はコマンド値伝送線、45、46はステータス値取り込み線、47はステータス比較値伝送線、50は判断子、51はカウンター、52はシーケンサーRAM、53はマイクロ命令用デコーダーを示す。
【0039】§1:実施例の装置構成の説明・・・図1参照図1は実施例の装置構成図である。本実施例は、フラッシュメモリとしてNAND型フラッシュメモリを使用し、このフラッシュメモリのライト/リード(書き込み/読み出し)をフラッシュメモリコントローラにより制御する装置の例である。
【0040】図1に示したように、フラッシュメモリコントローラ2には、下位データ用フラッシュメモリ20と、上位データ用フラッシュメモリ21からなる2系統のフラッシュメモリが外付けされている。また、フラッシュメモリコントローラ2はホスト(例えば、パソコン)に接続して使用する。
【0041】前記下位データ用フラッシュメモリ20、及び上位データ用フラッシュメモリ21(この例では8ビット構成)は、それぞれ複数個のフラッシュメモリ(フラッシュメモリ群)で構成されており、別々にリード/ライトが行われる。
【0042】なお、NAND型フラッシュメモリは、アドレス端子を持たず、データ端子にアドレス3バイトを書き込むことで内部メモリに記憶領域を選び出す方式を採用している。
【0043】前記フラッシュメモリコントローラ2には、ホストインターフェース制御部5と、フラッシュメモリフォーマット制御部7等が設けてある。そして、フラッシュメモリフォーマット制御部7には、フラッシュメモリシーケンサー10、下位データバス27、上位データバス28、バッファメモリ(ホスト用のバッファメモリ)22、23、ECC処理部12等が設けてある。
【0044】なお、フラッシュメモリコントローラ2には、内部の各種制御を行うMPU(マイクロプロセッサ)が設けてあるが、図示省略してある。前記各部の機能等は次の通りである。
【0045】(1) :ホストインターフェース制御部5は、ホスト1との間で制御信号のやり取りを行うものであり、従来のハードディスク装置と互換性のある動作を行うものである。
【0046】(2) :下位データバス27は、ホスト1から転送された16ビット並列データの内、下位8ビットのデータを転送するデータバスである。
(3) :上位データバス28は、ホスト1から転送された16ビット並列データの内、上位8ビットのデータを転送するデータバスである。
【0047】(4) :バッファメモリ22は、ホスト1から転送された16ビット並列データの内、下位8ビットのデータを格納するもの(ホスト側のバッファメモリ)である。なお、バッファメモリ22は、フラッシュメモリフォーマット制御部7内の制御部(図示省略)により書き込み/読み出し制御される。
【0048】(5) :バッファメモリ23は、ホスト1から転送された16ビット並列データの内、上位8ビットのデータを格納するもの(ホスト側のバッファメモリ)である。なお、バッファメモリ23は、フラッシュメモリフォーマット制御部7内の制御部(図示省略)により書き込み/読み出し制御される。
【0049】(6) :ECC処理部12は、書き込み/読み出しデータに対するECC処理(ECCの符号化、及び復号化処理)を行うものである。
(7) :フラッシュメモリシーケンサー10は、下位データバス27と上位データバス28を同時に制御して、下位データ用フラッシュメモリ20と、上位データ用フラッシュメモリ21を同時にアクセス制御するものである。
【0050】§2:フラッシュメモリコントローラの動作説明前記フラッシュメモリコントローラの動作は次の通りである。ホスト1と下位データ用フラッシュメモリ20、及び上位データ用フラッシュメモリ21との間のデータ転送は、16ビット並列データで転送されるが、フラッシュメモリコントローラ2内では、前記16ビット並列データを下位8ビットのデータと、上位8ビットのデータに分けて同時に転送する。
【0051】例えば、フラッシュメモリへのデータの書き込み時には、ホスト1から転送される書き込みデータは、データバス25(8ビット)、及びデータバス26(8ビット)を通り、16ビットの並列データとしてフラッシュメモリコントローラ2へ転送される。
【0052】そして、フラッシュメモリコントローラ2内では、前記ホスト1から転送された16ビット並列データを、それぞれバッファメモリ22と23に8ビットずつに分けて格納する。この場合、ホスト1から転送された16ビット並列データの内、下位8ビットのデータがバッファメモリ22に格納され、上位8ビットのデータがバッファメモリ23に格納される。
【0053】その後、前記バッファメモリ22に格納されたデータは、下位データバス27を通り、下位データ用フラッシュメモリ20へ転送されて書き込みが行われる。また、バッファメモリ23に格納されたデータは、上位データ用データバス28を通り、上位データ用フラッシュメモリ21へ転送されて書き込みが行われる。
【0054】下位データ用フラッシュメモリ20、及び上位データ用フラッシュメモリ21からデータを読み出す場合は、前記の書き込み時とは逆の経路で転送される。すなわち、下位データ用フラッシュメモリ20から読み出されたデータ(8ビット)は、下位データ用データバス27を通りバッファメモリ22へ転送されて格納され、上位データ用フラッシュメモリ21から読み出されたデータ(8ビット)は上位データバス28を通りバッファメモリ23へ転送されて格納される。この場合、下位データバス27と上位データバス28の転送データは同時に転送(16ビットデータとして転送)される。
【0055】その後、バッファメモリ22、23のデータはデータバス25、26を通りホスト1へ転送される。このように、8ビットのデータ線を持つフラッシュメモリならば、2個同時にアクセスすることができる。
【0056】前記下位データ用フラッシュメモリ20、及び上位データ用フラッシュメモリ21へのアクセスは、フラッシュメモリシーケンサー10により制御が行われる。また、バッファメモリ22、23へのアクセス制御は、フラッシュメモリフォーマット制御部7内の制御部(図示省略)が行う。
【0057】§3:フラッシュメモリフォーマット制御部の詳細な説明・・図2参照図2は図1の一部詳細図である。以下、図2に基づいて、フラッシュメモリフォーマット制御部の一部を詳細に説明する。
【0058】前記フラッシュメモリフォーマット制御部7には、前記構成の外、アドレスバッファ30、ANDゲート33、比較器31、32、アドレス値伝送用ゲート35、コマンド値伝送用ゲート36、下位伝送用ゲート37、上位伝送用ゲート38、上位ステータス取り込み用ゲート39、下位ステータス取り込み用ゲート40、アドレス値伝送線43、コマンド値伝送線44、ステータス値取り込み線46、ステータスの比較値伝送線47等が設けてある。
【0059】フラッシュメモリシーケンサー10には、判断子50、カウンター51、シーケンサーRAM52、マイクロ命令用デコーダー53が設けてある。また、フラッシュメモリシーケンサー10は、前記下位データ用フラッシュメモリ20と上位データ用フラッシュメモリ21を同時に制御するために、内部で各種の制御信号、コマンド値、ステータスの比較値等を作成し、各部へ出力するものである。
【0060】前記アドレスバッファ30は、MPU(図示省略)バスに接続されていて、該MPUから転送されたアドレス(フラッシュメモリのアドレス)を一時格納しておき、順次、フラッシュメモリへ転送するものである。以下各部について詳細に説明する。
【0061】(1) :コマンド値伝送線44は、フラッシュメモリシーケンサー10から出力されたコマンド値を、コマンド値伝送用ゲート36を介してフラッシュメモリへ転送するためのものであり、8ビット並列信号線で構成される。なお、前記コマンド値はフラッシュメモリをアクセスするために必要なコマンド値である。
【0062】また、アドレス値伝送線43は、アドレスバッファ30から出力されたアドレス値を、アドレス値伝送用ゲート43を介してフラッシュメモリへ転送するためのものであり、8ビット並列信号線である。なお、前記アドレス値はフラッシュメモリをアクセスするために必要なアドレス値である。
【0063】そして、前記コマンド値、及びアドレス値は、下位伝送用ゲート37を介して下位データバス27へ転送されると共に、上位伝送用ゲート38を介して上位データバス28へ転送される。
【0064】その後、下位データバス27へ転送されたコマンド値、及びアドレス値は、更に下位データ用フラッシュメモリ20へ転送され、上位データバス28へ送出されたコマンド値、及びアドレス値は、更に上位データ用フラッシュメモリ21へ転送される。なお、この例では、データバス上でコマンド値とアドレス値が転送される。
【0065】これらのコマンド値、及びアドレス値の転送により下位データ用フラッシュメモリ20、及び上位データ用フラッシュメモリ21が同時にアクセスされる。
(2) :2組の比較器31、32は、フラッシュメモリシーケンサー10が下位データ用フラッシュメモリ20と上位データ用フラッシュメモリ21のアクセス結果を知るために、ステータス値の比較を行うものである。
【0066】この場合、フラッシュメモリシーケンサー10からステータス比較器伝送線47へ出力されたステータスの比較値(リファレンス値)が、比較器31、32の片方の入力端子に入力する。
【0067】また、比較器31の他方の入力端子には、下位データバス27からのステータス値が、下位ステータス取り込み用ゲート40を介して入力し、比較器32の他方の入力端子には、上位データバス28からのステータス値が、上位ステータス取り込み用ゲート39を介して入力する。
【0068】そして、前記比較器31、32では、前記入力した2つのステータス値を比較し、両者が一致したら、例えばハイレベル信号1を出力し、それ以外の場合はローレベル信号0を出力する。
【0069】(3) :ANDゲート33では、前記2つの比較器31、32の出力信号を入力して、その論理積信号を出力する。従って、比較器31での比較結果が一致し、かつ比較器32での比較結果が一致した場合には、ANDゲート33の出力はハイレベル1となり、この出力信号は判断子50へ送られる。
【0070】判断子50では、ANDゲート33の出力信号がハイレベル1の信号であれば、前記下位データ用フラッシュメモリ20、及び上位データ用フラッシュメモリ21へのアクセスが成功したと判断する。しかし、ANDゲート33の出力がローレベル0であれば、前記アクセスは成功しないと判断する。
【0071】§4:フラッシュメモリシーケンサーの説明フラッシュメモリシーケンサー10は、カウンター51、シーケンサーRAM52、マイクロ命令用デコーダー53、判断子50で構成されている。これらの各部により、下位データ用フラッシュメモリ20、及び上位データ用フラッシュメモリ21を制御するための制御信号を作成して出力する。
【0072】例えば、動作時には、カウンター51のカウント値は0であり、そのカウント値はシーケンサーRAM52のアドレス値となる。また、シーケンサーRAM52のアドレス0には、フラッシュメモリのアクセス手順の内、初期状態を作り出すマイクロコード(4バイト)が格納されている。
【0073】従って、カウンター51からシーケンサーRAM52に対して、アドレス0が送られると、シーケンサーRAM52から、アドレス0に格納されている前記初期状態を作り出すマイクロコードが読み出され、マイクロ命令用デコーダー53へ送られる。
【0074】マイクロ命令用デコーダー53では、シーケンサーRAM52から送られたマイクロコードを基に、各種の制御用信号、コマンド値、ステータスの比較値等を作成して出力する。以下、同様にして、カウンター51のカウント値をインクリメントしながら前記と同様な動作を行う。
【0075】(他の実施例)以上実施例について説明したが、本発明は次のようにしても実施可能である。
(1) :前記実施例では、フラッシュメモリにNAND型フラッシュメモリを使用しているが、他の同様なフラッシュメモリにも同様に実施可能である。
【0076】(2) :下位データバス、及び上位データバスのバス幅は、8ビットに限らず、16ビットなど、任意のバス幅で実施可能である。ただし、この場合、フラッシュメモリのフォーマットに合わせることが必要である。
【0077】(3) :前記実施例では、下位データバス、及び上位データバスの16ビット並列で実現しているが、データバスの数を増やすことにより、4つのデータバスで32ビット並列や、8つのデータバスで64ビット並列で実現可能である。
【0078】
【発明の効果】以上説明したように、本発明によれば次のような効果がある。
(1) :フラッシュメモリコントローラ内に2系統のデータバスを設けると共に、従来、外付けしていたバッファメモリを廃止し、フラッシュメモリコントローラ内部に2組のバッファメモリを設けたので、ホストから入力する16ビット並列データ(実施例の場合)をそのまま受け入れることができる。
【0079】また、ホストへ出力するデータも16ビット並列データとしてそのまま出力することができる。従って、転送データの変換処理も不要であり、フラッシュメモリに対するリード/ライト処理の高速化が達成できる。
【0080】(2) :ホストから転送されたデータは、フラッシュメモリコントローラの内部に設けたバッファメモリに一時格納するので、このバッファメモリが転送データの受け皿となり、スループットが向上する。
【0081】(3) :フラッシュメモリコントローラの内部に、2系統のデータバス(下位データバス、及び上位データバス)を設け、これらのバスを同時に制御してフラッシュメモリへのアクセス制御を行うので、2つのフラッシュメモリに対し、同時に書き込み/読み出しができる。従って、フラッシュメモリに対する書き込み/読み出し速度が高速化できる。
【0082】(4) :バッファ機能をフラッシュメモリコントローラ内部のバッファメモリで実現したので、従来のように外付けのバッファメモリに比べて、アクセス時間が短縮できる。従って、フラッシュメモリの読み出しのスループットが向上する。
【0083】(5) :フラッシュメモリコントローラの中を16ビット並列のデータバスを通すので、従来のように時分割マルチプレクスされることもなくなる。その分、フラッシュメモリの書き込み/読み出し速度が高速化できる。
【図面の簡単な説明】
【図1】実施例の装置構成図である。
【図2】図1の一部詳細図である。
【図3】従来のフラッシュメモリコントローラを示した図である。
【符号の説明】
1 ホスト
2 フラッシュメモリコントローラ
5 ホストインターフェース制御部
7 フラッシュメモリフォーマット制御部
10 フラッシュメモリシーケンサー
20 下位データ用フラッシュメモリ
21 上位データ用フラッシュメモリ
22 バッファメモリ
23 バッファメモリ
27 下位データバス
28 上位データバス

【特許請求の範囲】
【請求項1】 フラッシュメモリに対するデータの書き込み/読み出し制御を行うフラッシュメモリコントローラにおいて、フラッシュメモリに対する書き込みデータ、及び読み出しデータの通過するデータバスを2系統のデータバスで構成すると共に、前記2系統のデータバスを同時に制御して、2個のフラッシュメモリを同時にアクセス制御するフラッシュメモリ制御手段を設けたことを特徴とするフラッシュメモリコントローラ。
【請求項2】 フラッシュメモリコントローラ内部の前記2系統のデータバスに、それぞれ転送データを一時格納するためのバッファメモリを設けたことを特徴とする請求項1記載のフラッシュメモリコントローラ。

【図1】
image rotate


【図2】
image rotate


【図3】
image rotate


【公開番号】特開平8−77066
【公開日】平成8年(1996)3月22日
【国際特許分類】
【出願番号】特願平6−207039
【出願日】平成6年(1994)8月31日
【出願人】(000003067)ティーディーケイ株式会社 (7,172)