(57)【要約】【課題】バスを介したマスタとＤＲＡＭとのバースト転送において長いバースト長の転送が可能であり、メモリの使用効率の向上させることが可能なＤＲＡＭコントローラを提供する。【解決手段】バースト転送におけるデータ転送の繰り返し数であるバースト長が予め決められていない不定長バースト転送に対応可能であり且つ複数のマスタが接続された状態において一の前記マスタからの処理要求への対応時には他の前記マスタからの処理要求には対応せずにデータの伝送を行うバスと、前記マスタとの間でバースト転送を行うＤＲＡＭと、を接続して、前記マスタと前記ＤＲＡＭとの間のバースト転送を制御するＤＲＡＭコントローラであって、前記マスタから不定長バースト転送の要求を受け取った場合に、前記不定長バースト転送の要求を行ったマスタと前記ＤＲＡＭとの間のバースト転送を、予め決められた模擬的なバースト長だけ実行して不定長バースト転送を終了する。【選択図】        図２
2009205412.tif 000002
【特許請求の範囲】
【請求項１】
バースト転送におけるデータ転送の繰り返し数であるバースト長が予め決められていない不定長バースト転送に対応可能であり且つ複数のマスタが接続された状態において一の前記マスタからの処理要求への対応時には他の前記マスタからの処理要求には対応せずにデータの伝送を行うバスと、前記マスタとの間でバースト転送を行うＤＲＡＭと、を接続して、前記マスタと前記ＤＲＡＭとの間のバースト転送を制御するＤＲＡＭコントローラであって、
前記マスタから不定長バースト転送の要求を受け取った場合に、前記不定長バースト転送の要求を行ったマスタと前記ＤＲＡＭとの間のバースト転送を、予め決められた模擬的なバースト長だけ実行して不定長バースト転送を終了すること、
を特徴とするＤＲＡＭコントローラ。
【請求項２】
前記模擬的なバースト長は、バースト長が予め決められている定長バースト転送のバースト長よりも大きいこと、
を特徴とする請求項１に記載のＤＲＡＭコントローラ。
【請求項３】
請求項１または２に記載のＤＲＡＭコントローラと、
前記ＤＲＡＭコントローラに対して不定長バースト転送を行う場合に、予め決められた模擬的なバースト長だけデータ転送を実行する複数のマスタと、
前記複数のマスタが接続され、バースト転送におけるデータ転送の繰り返し数であるバースト長が予め決められていない不定長バースト転送に対応可能であり且つ一の前記マスタからの処理要求への対応時には他のマスタからの要求には対応しないバスと、
前記マスタのうちの１つがアクセスしてデータの読み出しおよび書き込みを行うフラッシュメモリと、
前記ＤＲＡＭコントローラにより前記マスタとの間のバースト転送が制御されるＤＲＡＭと、
を備えること、
ことを特徴とするメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＤＲＡＭコントローラおよびメモリシステムに関するものである。
【背景技術】
【０００２】
近年、不揮発性半導体メモリは、大型コンピュータから、パーソナルコンピュータ、家電製品、携帯電話等、様々な所で利用されている。特に、ＮＡＮＤ型フラッシュメモリは、電気的に書き換えが可能であり、不揮発性、大容量化、高集積化が可能な半導体メモリであり、最近では、ハードディスクドライブ（ＨＤＤ）の置き換え用途としても考えられている。
【０００３】
このような不揮発性半導体メモリを用いたメモリシステムにおいては、データを一時貯蔵するためのバッファメモリが設けられ、メモリシステム内のマスタとバッファメモリとの間でデータの転送処理が行われる。この転送処理を効率的に行うことがメモリシステムの性能向上のために重要である。
【０００４】
このようなバッファメモリとマスタとの間の転送処理に関する技術としては、例えばバスを介して接続された複数のマスタが一つの共有メモリにアクセスしてデータ転送を行うに際し、各マスタのコマンドを先入れ先出しでＦＩＦＯに格納した後、ＦＩＦＯからコマンドを先入れ先出しで取り出して共有メモリに対するデータ転送を実行することで、複数のバスマスタと共有メモリ間のデータ転送を回路規模が小さく簡単な制御回路（ＦＩＦＯ）により行う技術などが提案されている（たとえば、特許文献１参照）。
【０００５】
ここで、バッファメモリ（共有メモリ）としてＡＳＩＣチップ外部に設けられるＤＲＡＭを使用し、バスとしてＡＨＢバス（Advanced High-performance Bus）など複数のマスタが接続された状態においてバースト転送におけるデータ転送の繰り返し数であるバースト長が予め決められていない不定長バースト転送に対応可能であり且つ一のマスタからの処理要求への対応時には他のマスタからの処理要求には対応しないバスを用いてメモリシステムを構成することができる。
【０００６】
ＡＨＢバスを使用してマスタとＤＲＡＭとの間でバースト転送を行う場合、マスタ側において複数コマンドを先に発行することができないバス、すなわち複数のコマンドに同時に対応することができないバス（ＡＨＢバス）においては、バースト長を長くしない限りデータの転送が行われるＤＲＡＭの使用効率は著しく悪化する。ここで、バースト転送において連続してデータを転送する転送回数を「バースト長」とする。
【０００７】
しかしながら、通常、バースト長が予め決められている定長バースト転送においては、バースト長は１６や３２となどの比較的小さいサイズが上限とされている場合が多い。この場合、データのサイズの大きいひとまとまりのデータを転送したい場合には、定長バースト転送だけでは所望のひとまとまりのデータを送りきれないケースが発生する。
【０００８】
また、バースト長が予め決められていない不定長バースト転送の場合は、バースト長が決められていないためデータ長に起因して、バースト転送するデータのサイズが制限されることはない。しかし、ＡＨＢバスにおいてバースト転送を行うマスタは、１データ転送毎に要求情報をＤＲＡＭコントローラに送信する必要があり、また、ＤＲＡＭはＳＲＡＭとは異なりレイテンシが大きいため、ＤＲＡＭコントローラは不定長バーストをシングルアクセスの連続に分解することとなり、やはり、ＤＲＡＭの使用効率が著しく低下する、という問題がある。
【０００９】
【特許文献１】特開２００４−１７１２０９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、上記に鑑みてなされたものであって、バスを介したマスタとＤＲＡＭとのバースト転送において長いバースト長の転送が可能であり、メモリの使用効率の向上させることが可能なＤＲＡＭコントローラおよびメモリシステムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本願発明の一態様によれば、バースト転送におけるデータ転送の繰り返し数であるバースト長が予め決められていない不定長バースト転送に対応可能であり且つ複数のマスタが接続された状態において一の前記マスタからの処理要求への対応時には他の前記マスタからの処理要求には対応せずにデータの伝送を行うバスと、前記マスタとの間でバースト転送を行うＤＲＡＭと、を接続して、前記マスタと前記ＤＲＡＭとの間のバースト転送を制御するＤＲＡＭコントローラであって、前記マスタから不定長バースト転送の要求を受け取った場合に、前記不定長バースト転送の要求を行ったマスタと前記ＤＲＡＭとの間のバースト転送を、予め決められた模擬的なバースト長だけ実行して不定長バースト転送を終了すること、を特徴とするＤＲＡＭコントローラが提供される。
【発明の効果】
【００１２】
本発明によれば、バスを介したマスタとＤＲＡＭとのバースト転送において、複数のマスタが接続された状態においてバースト転送におけるデータ転送の繰り返し数であるバースト長が予め決められていない不定長バースト転送に対応可能であり且つ一のマスタからの処理要求への対応時には他のマスタからの処理要求には対応しないバスにおいても長いバースト長の転送が可能となり、メモリの使用効率を向上させることができる、という効果を奏する。
【発明を実施するための最良の形態】
【００１３】
以下に添付図面を参照して、この発明にかかるＤＲＡＭコントローラおよびメモリシステムの実施の形態を詳細に説明する。なお、本発明は以下の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【００１４】
（実施の形態）
図１は、本発明の実施の形態にかかるメモリシステム１を備えた計算機システムの一例を示す概略図である。本実施の形態にかかるメモリシステム１は、ホスト装置（ＰＣなど）に接続される記憶デバイスである。
【００１５】
計算機システムは、中央演算処理装置（ＣＰＵ：Central Processing Unit）２、ＤＲＡＭ（Dynamic Random Access Memory）等のメインメモリ３、メインメモリ３を制御するメモリコントローラ４、及び本実施の形態にかかるメモリシステム１を備えている。ＣＰＵ２、メインメモリ３、及びメモリシステム１は、アドレスを扱うアドレスバス５、及びデータを扱うデータバス６を介して接続されている。
【００１６】
このような計算機システムでは、ＣＰＵ２からの転送要求（読み出し要求、或いは書き込み要求）に応じて、書き込み要求であればＣＰＵ２のデータ（外部から入力されたデータを含む）、或いはメインメモリ３のデータがメモリシステム１に転送され、読み出し要求であればメモリシステム１のデータがＣＰＵ２、或いはメインメモリ３に転送される。
【００１７】
メモリシステム１は、不揮発性半導体メモリの一種であるＮＡＮＤ型フラッシュメモリ１０、及びこのＮＡＮＤ型フラッシュメモリ１０を制御するＮＡＮＤコントローラ１１を備えている。以下に、メモリシステム１の構成の一例について説明する。
【００１８】
図２は、メモリシステム１の構成を示す概略図である。メモリシステム１は、ＮＡＮＤ型フラッシュメモリ１０、ＤＲＡＭ１２、ＡＳＩＣチップ１３を有する。ＮＡＮＤ型フラッシュメモリ１０は、データ消去の単位であるブロックを複数配列して構成されている。
【００１９】
ＤＲＡＭ１２は、ＡＳＩＣチップ１３の外部に配置され、ホスト装置とのデータ転送や、ＮＡＮＤ型フラッシュメモリ１０へのデータ読み書き用のバッファとして使用する。ＮＡＮＤ型フラッシュメモリ１０に書き込むデータはすべてＤＲＡＭ１２に存在する。
【００２０】
ＡＳＩＣチップ１３内には、ホストインターフェース（ホストＩ／Ｆ）２１、演算処理装置（ＭＰＵ：Micro Processing Unit）２２、ＮＡＮＤコントローラ１１、ＤＲＡＭコントローラ２３、ＲＯＭ２４、ＲＡＭ２５およびバス２６を備えている。
【００２１】
ホストＩ／Ｆ２１は、ホスト装置とのデータ転送を行なうため、ＮＡＮＤコントローラ１１とホスト装置（図１のＣＰＵ２、メインメモリ３）との間のインターフェース処理を行う。
【００２２】
ＭＰＵ２２は、メモリシステム１全体の動作を制御する。ＭＰＵ２２は、例えば、メモリシステム１が電源供給を受けたときに、ＲＯＭ２４に格納されているファームウェア（制御プログラム）をＲＡＭ２５上に読み出して所定の処理を実行することにより、各種のテーブルをＲＡＭ２５上に作成する。また、ＭＰＵ２２は、ホスト装置から書き込み要求、読み出し要求、消去要求を受け、これらの要求に応じてＮＡＮＤ型フラッシュメモリ１０に所定の処理を実行する。ＭＰＵ２２は、ＮＡＮＤコントローラ１１を介してＮＡＮＤ型フラッシュメモリ１０のやりとりを行うことができる。
【００２３】
図３は、ＮＡＮＤコントローラ１１の構成例を示す図である。ＮＡＮＤコントローラ１１は、図３に示すようにＤＭＡ転送制御用のＤＭＡコントローラ４１と、ＥＣＣ回路４２と、ＮＡＮＤインターフェース（Ｉ／Ｆ）４３と、を備える。ＤＭＡ転送制御用のＤＭＡコントローラ４１は、バス２６から読み込んだＮＡＮＤ型フラッシュメモリ１０へ書き込むデータをＥＣＣとともにＮＡＮＤ型フラッシュメモリ１０へ転送するための書き込みデータ転送機能、ＮＡＮＤ型フラッシュメモリ１０からページ単位で記憶データおよびＥＣＣの読み込みを行い、読み込んだデータをバス２６に出力する読み込みデータ転送機能を有する。
【００２４】
ＥＣＣ回路４２は、ＮＡＮＤ型フラッシュメモリ１０に書き込むデータにＥＣＣを付加する書き込む機能と、ＮＡＮＤ型フラッシュメモリ１０から読み込まれたデータとＥＣＣとから読み込んだデータの誤りを訂正する機能を有する。ＮＡＮＤ型フラッシュメモリ１０はデータが誤る可能性が高いため、ＮＡＮＤ型フラッシュメモリ１０に格納されるデータは、データの書き込み時にＥＣＣ回路４２でＥＣＣ（Error Check and Correct、エラー訂正符号）が付加されて格納され、読み込み時にＥＣＣ回路４２でＥＣＣを用いてエラー訂正が行なわれる。
【００２５】
ＮＡＮＤインターフェース（Ｉ／Ｆ）４３は、ＮＡＮＤ型フラッシュメモリ１０にアクセスするためにＮＡＮＤコントローラ１１とＮＡＮＤ型フラッシュメモリ１０との間のインターフェース処理を行う機能を有する。
【００２６】
ＤＲＡＭコントローラ２３は、ＤＲＡＭ１２のデータの読み出し、書き出しのリフレッシュなどのＤＲＡＭ１２のインターフェース処理機能を統括する。また、後述する図４のＳＳＤ１００においてはバースト転送機能を有するため、ＤＲＡＭコントローラ２３は、バースト転送処理も行う。そして、ＤＲＡＭコントローラ２３は、各マスタから初回の不定長バースト転送要求を受け取った場合、予め決められた所定のバースト長（例えば１２８や２５６など）での不定長バースト転送と解釈し、ＤＲＡＭ１２に読み書きを行う。
【００２７】
ＲＯＭ２４は、ＭＰＵ２２により制御される制御プログラム等を格納する。ＲＡＭ２５は、ＭＰＵ２２の作業エリアとして使用され、ＲＯＭ２４からロードされた制御プログラムや各種のテーブルを記憶する。
【００２８】
バス２６は、不定長バースト転送に対応可能なバスが使用されている。このようなバス２６としては、例えばＡＭＢＡ（Advanced Microcontroller Bus Architecture）プロトコルに準拠した広帯域デバイス用の仕様として規定されたＡＨＢバス（Advanced High-performance Bus）が用いられる。バス２６には、マスタとしてホストＩ／Ｆ２１、ＭＰＵ２２、ＮＡＮＤコントローラ１１、ＤＲＡＭコントローラ２３、が接続されており、これらのマスタからの要求によりバースト転送可能とされている。また、バス２６は、あるマスタからの要求に対応している時は、他のマスタからの要求に対応することができず、その機能が占有される。
【００２９】
ＡＨＢバスはＳｏＣ（System On a Chip）で良く利用されるバスであるが、このＡＨＢプロトコルでは、バースト転送時には１データ転送毎に転送要求の情報を送信しなければならず、最後のデータ要求を受理しない限り、その次の転送要求を知ることはできない。また、ＤＲＡＭはレイテンシが長いため、不定長バースト転送においてはバースト長が長い方がＤＲＡＭの使用効率を上げることができる。ただし、ＡＨＢバスでは定長バーストは１６が最大となっており、また上述した次の転送要求を知ることができない点と、ＤＲＡＭのレイテンシが大きいという点から、不定長バースト転送ではシングルアクセスの連続に分解することとなり、ＤＲＡＭの使用効率が低下してしまう。
【００３０】
そこで、本実施の形態においては、不定長バーストを利用して各マスタとＤＲＡＭコントローラ２３に次の機能を持たせることで、ＤＲＡＭ１２の使用効率を上昇させる。ＤＲＡＭコントローラ２３は、マスタから不定長バースト転送の要求が送信されてきた場合には、予め決められた大きなバースト長（１２８や２５６など）を持つ転送と解釈し、ＤＲＡＭ１２に対してのデータの転送を行って読み書きを行なう。すなわち、マスタから不定長バースト転送の要求を受け取った場合に、ＤＲＡＭコントローラ２３は、不定長バースト転送の要求を行ったマスタとＤＲＡＭ１２との間のバースト転送を、予め決められた模擬的なバースト長だけ実行して不定長バースト転送を終了する。
【００３１】
また、各マスタのバス要求においては、各マスタが不定長バースト転送の要求を行なう場合、予め決められた大きなバースト長のデータ転送を必ず行なう。予め決めたサイズ以外の転送であって、定長バーストではバースト数が表わせない場合には、シングル転送で行なう。例えば、定長バースト転送におけるバースト数が１６であり、データを連続した１７回の転送で送信したい場合には、１７回のシングル転送を要求するか、または定長バースト転送にシングル転送を１回追加した転送を要求する。
【００３２】
そして、ＤＲＡＭコントローラ２３へ要求を発行する全マスタは、不定長バースト転送を行なう場合は、必ず予め決めた数のバースト転送を行ない、ＤＲＡＭコントローラ２３は、不定長バースト転送が発生した場合には、予め決めた大きなバースト長を持つ転送と解釈して処理を行う。この結果、上述したＡＨＢバスにおいても、長いバースト長の転送が可能となるため、オーバーヘッドを低減してＤＲＡＭ１２へのデータ転送時のバンド幅を大きくすることができ、ＤＲＡＭ１２の使用効率を向上させることができる。
【００３３】
次に、以上のように構成されたメモリシステム１においてＮＡＮＤ型フラッシュメモリ１０に記憶されたデータを読み込んでＤＲＡＭ１２に書き込む際の処理について説明する。
【００３４】
例えばＭＰＵ２２は、ホスト装置からのＮＡＮＤ型フラッシュメモリ１０に記憶されたデータを読み出す旨の読み出し要求情報を受け取ると、該読み出し要求情報に基づいて、ＮＡＮＤコントローラ１１に対してデータの読み出し指示情報を送信する。ＮＡＮＤコントローラ１１では、ＤＭＡコントローラ４１が該指示情報に基づいてＮＡＮＤ型フラッシュメモリ１０からデータを読み出し、ＤＲＡＭコントローラ２３を介してＤＲＡＭ１２に転送する。そして、ＤＲＡＭ１２に書き込みが行われる。
【００３５】
ここで、ＮＡＮＤコントローラ１１のＤＭＡコントローラ４１は、ＤＲＡＭ１２に転送するデータのサイズに基づいて、ＮＡＮＤ型フラッシュメモリ１０から読み出したデータをシングル転送、定長バースト転送、不定長バースト転送、またはこれらの組み合わせのうちのどの方式により転送するかを判断してデータの転送を行う。以下では、不定長バースト転送によるデータ転送を行う場合について説明する。
【００３６】
マスタであるＮＡＮＤコントローラ１１のＤＭＡコントローラ４１は、ＤＲＡＭ１２に対して不定長バースト転送を行う場合、ＤＲＡＭコントローラ２３に対して不定長バースト転送を要求するために、初回の不定長バースト転送要求を送信する。初回の不定長バースト転送要求には、予め決められた擬似的なバースト長（例えば１２８や２５６など）、バースト転送されるデータの先頭の転送アドレスなどの情報が含まれる。なお、他のマスタがＤＲＡＭコントローラ２３に対して初回の不定長バースト転送を要求する同様である。そして、ＤＭＡコントローラ４１は、予め決められた擬似的なバースト長のデータ転送を行う。
【００３７】
ＤＲＡＭコントローラ２３は、マスタであるＮＡＮＤコントローラ１１のＤＭＡコントローラ４１から初回の不定長バースト転送要求を受け取った場合、予め決められた擬似的なバースト長（例えば１２８や２５６など）での不定長バースト転送と解釈する。そして、ＮＡＮＤコントローラ１１から転送されるデータを受け取って、ＤＲＡＭコントローラ２３は予め決められた模擬的なバースト長だけＤＲＡＭ１２に対してデータの転送、書き込みを実行し、不定長バースト転送を終了する。なお、ＤＲＡＭコントローラ２３が、他のマスタから初回の不定長バースト転送要求を受け取った場合も同様である。
【００３８】
ここで、予め決められた擬似的なバースト長は、定長バースト転送におけるバースト長（例えば１６や３２となどの比較的小さいサイズ）よりも大きな値に設定されている。これにより、バースト長が比較的小さいサイズである定長バースト転送よりも多くの連続したバースト転送を行うことができる。
【００３９】
また、この予め決められた擬似的なバースト長が大きすぎる場合には、特定のマスタによりバス２６が占有されてしまう可能性がある。したがって、このバースト長は、ＡＳＩＣチップがシステムのバンド幅として求めるバス性能等により設定することが好ましい。また、バス２６側からどのマスタが有効になっているかの情報法を得ることができる場合には、マスタ毎に擬似的なバースト長を変えて処理を行うことも可能である。
【００４０】
以上のような、本実施の形態によれば、マスタは、ＤＲＡＭ１２に対して不定長バースト転送を行う場合、予め決められた擬似的なバースト長のデータ転送を行う。そして、ＤＲＡＭコントローラ２３は、マスタから不定長バースト転送要求を受け取った場合、予め決められた擬似的なバースト長での不定長バースト転送と解釈し、転送されるデータを受け取ってＤＲＡＭ１２への転送、書き込みを行う。これにより、マスタ側において複数コマンドを先に発行することができないであるバス２６（ＡＨＢバス）、すなわち複数のコマンドに同時に対応することができないバス２６においても長いバースト長の転送が可能となるためオーバーヘッドを低減してＤＲＡＭ１２へのデータ転送時のバンド幅を大きくすることができ、ＤＲＡＭ１２の使用効率を向上させることができる。
【００４１】
なお、上記においては、ＮＡＮＤコントローラ１１がＤＲＡＭコントローラ２３に対して不定長バースト転送を要求してＤＲＡＭ１２にデータを不定長バースト転送する場合を例に説明したが、他のマスタがＤＲＡＭコントローラ２３に対して不定長バースト転送を要求する場合も同様である。
【００４２】
［実施例］
上記実施の形態のメモリシステム１をＳＳＤ（Solid State Drive）として構成した場合の実施例について説明する。図４は、ＳＳＤ１００の構成を示すブロック図である。
【００４３】
ＳＳＤ１００は、データ保存用の複数のＮＡＮＤ型フラッシュメモリ（ＮＡＮＤメモリ）１０、データ転送用または作業領域用のＤＲＡＭ１０１、これらを制御するドライブ制御回路１０２、及び電源回路１０３を備えている。ドライブ制御回路１０２は、ＳＳＤ１００の外部に設けられる状態表示用ＬＥＤを制御するための制御信号を出力する。
【００４４】
ＳＳＤ１００は、ＡＴＡインターフェース（ＡＴＡ  Ｉ／Ｆ）を介して、パーソナルコンピュータ等のホスト装置との間でデータを送受信する。また、ＳＳＤ１００は、ＲＳ２３２Ｃインターフェース（ＲＳ２３２Ｃ  Ｉ／Ｆ）を介して、デバッグ用機器との間でデータを送受信する。
【００４５】
電源回路１０３は、外部電源を受け、この外部電源を用いて複数の内部電源を生成する。これらの内部電源は、ＳＳＤ１００内の各部に供給される。また、電源回路１０３は、外部電源の立ち上がりまたは立ち下りを検知して、パワーオンリセット信号またはパワーオフリセット信号を生成する。これらパワーオンリセット信号及びパワーオフリセット信号は、ドライブ制御回路１０２に送られる。
【００４６】
図５は、ドライブ制御回路１０２の構成を示すブロック図である。ドライブ制御回路１０２は、データアクセス用バス１０４、第１の回路制御用バス１０５、及び第２の回路制御用バス１０６を備えている。
【００４７】
第１の回路制御用バス１０５には、ドライブ制御回路１０２全体を制御するプロセッサ１０７が接続されている。また、第１の回路制御用バス１０５には、各管理プログラム（ＦＷ：firmware）のブート用プログラムが格納されたブートＲＯＭ１０８がＲＯＭコントローラ１０９を介して接続されている。また、第１の回路制御用バス１０５には、電源回路１０３からのパワーオン／オフリセット信号を受けて、リセット信号及びクロック信号を各部に供給するクロックコントローラ１１０が接続されている。
【００４８】
第２の回路制御用バス１０６は、第１の回路制御用バス１０５に接続されている。第２の回路制御用バス１０６には、状態表示用ＬＥＤにステータス表示用信号を供給するパラレルＩＯ（ＰＩＯ）回路１１１、ＲＳ２３２Ｃインターフェースを制御するシリアルＩＯ（ＳＩＯ）回路１１２が接続されている。
【００４９】
ＡＴＡインターフェースコントローラ（ＡＴＡコントローラ）１１３、第１のＥＣＣ（Error Check and Correct）回路１１４、ＮＡＮＤコントローラ１１５、及びＤＲＡＭコントローラ１１９は、データアクセス用バス１０４と第１の回路制御用バス１０５との両方に接続されている。ＡＴＡコントローラ１１３は、ＡＴＡインターフェースを介してホスト装置との間でデータを送受信する。データアクセス用バス１０４には、データ作業領域として使用されるＳＲＡＭ１２０がＳＲＡＭコントローラ１２１を介して接続されている。
【００５０】
ＮＡＮＤコントローラ１１５は、４つのＮＡＮＤメモリ１０とのインターフェース処理を行うＮＡＮＤ  Ｉ／Ｆ１１８、第２のＥＣＣ回路１１７、及びＮＡＮＤメモリ−ＤＲＡＭ間のアクセス制御を行うＤＭＡ転送制御用ＤＭＡコントローラ１１６を備えている。
【００５１】
図６は、プロセッサ１０７の構成を示すブロック図である。プロセッサ１０７は、データ管理部１２２、ＡＴＡコマンド処理部１２３、セキュリティ管理部１２４、ブートローダ１２５、初期化管理部１２６、デバッグサポート部１２７を備えている。
【００５２】
データ管理部１２２は、ＮＡＮＤコントローラ１１５、第１のＥＣＣ回路１１４を介して、ＮＡＮＤメモリ−ＤＲＡＭ間のデータ転送、ＮＡＮＤチップに関する各種機能を制御する。
【００５３】
ＡＴＡコマンド処理部１２３は、ＡＴＡコントローラ１１３、及びＤＲＡＭコントローラ１１９を介して、データ管理部１２２と協動してデータ転送処理を行う。セキュリティ管理部１２４は、データ管理部１２２及びＡＴＡコマンド処理部１２３と協動して各種のセキュリティ情報を管理する。ブートローダ１２５は、パワーオン時、各管理プログラム（ＦＷ）をＮＡＮＤメモリ１０からＳＲＡＭ１２０にロードする。
【００５４】
初期化管理部１２６は、ドライブ制御回路１０２内の各コントローラ／回路の初期化を行う。デバッグサポート部１２７は、外部からＲＳ２３２Ｃインターフェースを介して供給されたデバッグ用データを処理する。
【００５５】
図７は、ＳＳＤ１００を搭載したポータブルコンピュータ２００の一例を示す斜視図である。ポータブルコンピュータ２００は、本体２０１と、表示ユニット２０２とを備えている。表示ユニット２０２は、ディスプレイハウジング２０３と、このディスプレイハウジング２０３に収容された表示装置２０４とを備えている。
【００５６】
本体２０１は、筐体２０５と、キーボード２０６と、ポインティングデバイスであるタッチパッド２０７とを備えている。筐体２０５内部には、メイン回路基板、ＯＤＤユニット（Optical Disk Device）、カードスロット、ＳＳＤ１００等が収容されている。
【００５７】
カードスロットは、筐体２０５の周壁に隣接して設けられている。周壁には、カードスロットに対向する開口部２０８が設けられている。ユーザは、この開口部２０８を通じて筐体２０５の外部から追加デバイスをカードスロットに挿抜することが可能である。
【００５８】
ＳＳＤ１００は、従来のＨＤＤの置き換えとして、ポータブルコンピュータ２００内部に実装された状態として使用してもよいし、ポータブルコンピュータ２００が備えるカードスロットに挿入した状態で、追加デバイスとして使用してもよい。
【００５９】
尚、上記実施の形態のメモリシステム１は、ＳＳＤに限らず、例えば、ＳＤＴＭカードに代表されるメモリカードとして構成することも可能である。メモリシステム１をメモリカードとして構成する場合、ポータブルコンピュータに限らず、携帯電話、ＰＤＡ、デジタルスチルカメラ、デジタルビデオカメラ等、各種電子機器に対して適用可能である。
【図面の簡単な説明】
【００６０】
【図１】この発明の一実施形態に従ったメモリシステムを備えた計算機システムの一例を示す概略図である。
【図２】この発明の一実施形態に従ったメモリシステムの構成を示す概略図である。
【図３】この発明の一実施形態に従ったメモリシステムにおけるＮＡＮＤコントローラの構成例を示す図である。
【図４】この発明の一実施例にかかるＳＳＤの構成を示す図である。
【図５】この発明の一実施例にかかるドライブ制御回路の構成を示す図である。
【図６】この発明の一実施例にかかるプロセッサの構成を示す図である。
【図７】この発明の一実施例にかかるＳＳＤを搭載したポータブルコンピュータの一例を示す斜視図である。
【符号の説明】
【００６１】
１  メモリシステム、２  ＣＰＵ、３  メインメモリ、４  メモリコントローラ、１０  ＮＡＮＤ型フラッシュメモリ、１１  ＮＡＮＤコントローラ、１２  ＤＲＡＭ、１３  ＡＳＩＣチップ、２１  ホストインターフェース（ホストＩ／Ｆ）、２２  演算処理装置（ＭＰＵ）、２３  ＤＲＡＭコントローラ、２４  ＲＯＭ、２５  ＲＡＭ、２６  バス、４１  ＤＭＡコントローラ、４２  ＥＣＣ回路、４３  ＮＡＮＤ  Ｉ／Ｆ。
【図１】
2009205412.tif 000003
【図２】
2009205412.tif 000004
【図３】
2009205412.tif 000005
【図４】
2009205412.tif 000006
【図５】
2009205412.tif 000007
【図６】
2009205412.tif 000008
【図７】
2009205412.tif 000009