(57)【要約】【課題】メモリーカードのデータの格納時間を短縮させる。【解決手段】本発明のメモリーカードは、ＮＡＮＤフラッシュメモリーおよびメモリーコントローラーを含む。ＮＡＮＤフラッシュンメモリーは複数のページを持ち、各々のページは複数のセクターで構成される。メモリーコントローラーは、ホストからセクターの単位でデータを受信し、セクターアドレスに応じて、バッファーメモリーを経由してセクターデータを前記ＮＡＮＤフラッシュメモリーに転送したり、前記ＮＡＮＤフラッシュメモリーにセクターデータを直接に転送したりする。メモリーカードは、バッファーメモリーを経由するデータの転送経路の他に、ホストからＮＡＮＤフラッシュメモリーに直接にデータを転送する転送経路を具備する。【選択図】図１
2008041098.tif 000002
【特許請求の範囲】
【請求項１】
ホストと接続されるメモリーカードに於いて、
複数のページを含み、各々のページが複数のセクターを含むＮＡＮＤフラッシュメモリーと、
前記ホストからセクターの単位でデータを受信し、セクターアドレスに応じて、バッファーメモリーを経由してセクターデータを前記ＮＡＮＤフラッシュメモリーに転送したり、前記ＮＡＮＤフラッシュメモリーにセクターデータを直接に転送したりするメモリーコントローラーと、
を含むことを特徴とするメモリーカード。
【請求項２】
前記メモリーコントローラーは、前記バッファーメモリーを経由してデータを転送するための第１データバスと、前記ＮＡＮＤフラッシュメモリーに直接にデータを転送するための第２データバスとを含むことを特徴とする請求項１に記載のメモリーカード。
【請求項３】
前記メモリーコントローラーは、前記セクターアドレスが選択されたページの中の第１セクターをアクセスするためのアドレスである場合には、前記第１データバスを活性化させることを特徴とする請求項２に記載のメモリーカード。
【請求項４】
前記メモリーコントローラーは前記セクターアドレスが選択されたページ中の前記第１セクター以外の他のセクターをアクセスするためのアドレスである場合には、前記第２データバスを活性化させることを特徴とする請求項２に記載のメモリーカード。
【請求項５】
前記メモリーコントローラーは、前記セクターアドレスに応答して前記第１及び第２データバスの中の何れか一つを活性化させるための制御ユニットを更に含むことを特徴とする請求項２に記載のメモリーカード。
【請求項６】
前記制御ユニットは、
定義されたセクターアドレスを格納するためのアドレスレジスターと、
前記セクターアドレスと前記定義されたセクターアドレスとを比較して、比較結果に応じて前記第１及び前記第２データバスの中の何れか一つを選択するための選択機と、
中央処理装置をインタラプトして、選択されたデータバスを管理するためのＤＭＡ制御機と、
を含むことを特徴とする請求項５に記載のメモリーカード。
【請求項７】
前記セクターのサイズは５１２Ｂであり、前記ページのサイズは２ＫＢであることを特徴とする請求項１に記載のメモリーカード。
【請求項８】
前記バッファーメモリーはデュアルポートを具備することを特徴とする請求項１に記載のメモリーカード。
【請求項９】
前記バッファーメモリーはＳＲＡＭであることを特徴とする請求項８に記載のメモリーカード。
【請求項１０】
前記バッファーメモリーはＤＲＡＭであることを特徴とする請求項８に記載のメモリーカード。
【請求項１１】
メモリーカードのデータ格納方法に於いて、
前記メモリーカードは、
複数のページを含み、各々のページが複数のセクターを含むＮＡＮＤフラッシュメモリーと、
ホストからセクターの単位でデータを受信し、前記ＮＡＮＤフラッシュメモリーにセクターデータを転送するためのメモリーコントローラーとを含み、
前記メモリーカードのデータ格納方法は、
前記ホストから書き込みのコマンド及びセクターアドレスを受信する段階と、
前記書き込みのコマンド及びセクターアドレスに応じて、バッファーメモリーを経由してセクターデータを前記ＮＡＮＤフラッシュメモリーに転送したり、前記ＮＡＮＤフラッシュメモリーにセクターデータを直接に転送したりする段階、
前記ＮＡＮＤフラッシュメモリーにページデータが転送された場合に前記ページデータを選択されたページにプログラムする段階と、
を含むことを特徴とするデータ格納方法。
【請求項１２】
前記メモリーコントローラーは、前記バッファーメモリーを経由してデータを転送するための第１データバスと、前記ＮＡＮＤフラッシュメモリーに直接にデータを転送するための第２データバスを含み、
前記データ転送の段階では、前記セクターアドレスが前記選択されたページの中の第１セクターをアクセスするための第１セクターアドレスである場合には前記第１データバスを活性化させることを特徴とする請求項１１に記載のデータ格納方法。
【請求項１３】
前記データ転送の段階では、前記セクターアドレスが前記第１セクターアドレス以外の選択されたページ中の他のセクターをアクセスするためのアドレスである場合には前記第２データバスを活性化させることを特徴とする請求項１２に記載のデータ格納方法。
【請求項１４】
前記データ転送の段階では、前記セクターアドレスが前記第１セクターアドレスであり、他のページに対する書き込みの動作が行われる場合に、前記他のページに対する書き込みの動作を完了させることを特徴とする請求項１２に記載のデータ格納方法。
【請求項１５】
前記セクターのサイズは５１２Ｂであり、前記ページのサイズは２ＫＢであることを特徴とする請求項１１に記載のデータ格納方法。
【請求項１６】
複数のページを含み、各々のページが複数のセクターを含むＮＡＮＤフラッシュメモリー、及び、セクターデータと該セクターデータに対応するセクターアドレスをホストから受信するメモリーコントローラーを含むメモリーカードに於いて、
前記メモリーコントローラーは、前記セクターアドレスが選択されたページの中の第１セクターをアクセスするためのアドレスである場合にはバッファーメモリーを経由して前記セクターデータが第１データバスを通して前記ＮＡＮＤフラッシュメモリーに伝送され、前記セクターアドレスが前記選択されたページ中の第１セクター以外のセクターをアクセスするためのアドレスである場合には前記バッファーメモリーを経由せずに前記セクターデータが第２データバス上の前記ＮＡＮＤフラッシュメモリーに伝送されることを特徴とするメモリーカード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はメモリーカードに係り、より詳しくはＮＡＮＤフラッシュメモリーを内装したメモリーカード及び該カードのデータの格納方法に関する。
【背景技術】
【０００２】
メモリーカード（ｍｅｍｏｒｙ  ｃａｒｄ）は、デジタルカメラ、モバイル携帯電話のようなデジタル機器において補助記憶装置として使われる。メモリーカードとしては、ＣＦ（Ｃｏｍｐａｃｔ  Ｆｌａｓｈ）カード、ＳＭ（Ｓｍａｒｔ  Ｍｅｄｉａ）カード、メモリースティック、マルチメディアカード（Ｍｕｌｔｉ  Ｍｅｄｉａ  Ｃａｒｄ）、マイクロドライバ（Ｍｉｃｒｏ  Ｄｒｉｖｅｒ）、ｘＤ（ｅｘｔｒｅｍｅ  Ｄｉｇｉｔａｌ）ピクチャーカード、ＳＤ（Ｓｅｕｒｅ  Ｄｉｇｉｔａｌ）カードなど様々なものがある。
【０００３】
メモリーカードはサイズが小さく、携帯が便利であり、データの転送速度が速い。特に、ｘＤピクチャーカードは、スマートメディアカードの短所である大きさと容量の限界を改善するために開発された次世代のフラッシュメモリーカードである。ｘＤピクチャーカードは、２０ｘ２５ｘ１.７ｍｍの大きさで、メモリーカードの中で一番小さく、容量を最大８ＧＢ（Ｇｉｇａ  Ｂｙｔｅ）まで増加させることができるので、”極大化されたデジタルメモリーカード”とも呼ばれる。
【０００４】
ｘＤピクチャーカードは、ＮＡＮＤフラッシュメモリーのインターフェースの方式に従ってホスト(例えば、デジタルカメラ)に連結される。ｘＤピクチャーカードは、ＮＡＮＤフラッシュメモリーを使う従来のＣＦカード、ＳＤカード、メモリースティック、ＭＭＣカード等に比べて大きさは小さいがデータの格納容量は極大化できる。
【０００５】
一般的に、メモリーカードは、ＮＡＮＤフラッシュメモリー及びメモリーコントローラーを含む。ＮＡＮＤフラッシュメモリーは、ホストから提供されたデータを格納する。例えば、ホストがデジタルカメラであれば、ＮＡＮＤフラッシュメモリーに写真画像が格納される。ホストがキャムコーダーである場合には、ＮＡＮＤフラッシュメモリーに動画像が格納される。メモリーコントローラーは、メモリーカードの全般的な動作を制御する。メモリーコントローラーは、ホストから提供されたデータをＮＡＮＤフラッシュメモリーに転送したり、ＮＡＮＤフラッシュメモリーに格納されたデータをホストに出力したりする。
【０００６】
メモリーカードに対するデータの格納に要する時間は、ホストからＮＡＮＤフラッシュメモリーまでのデータの転送の時間と、ＮＡＮＤフラッシュメモリーのプログラムの時間とに区別される。データの転送の時間は、ホストの書き込みの要求に応答してデータがメモリーコントローラーによってホストからＮＡＮＤフラッシュメモリーに転送されるために要する時間である。ＮＡＮＤフラッシュメモリーのプログラムの時間は、ＮＡＮＤフラッシュメモリーに転送されたデータがメモリーセルアレイにプログラムされるために要する時間である。
【０００７】
ここで、ＮＡＮＤフラッシュメモリーのプログラムの時間の短縮には、ＮＡＮＤフラッシュメモリーの根本的な変化が無い限り限界ある。従って、メモリーカードに対するデータの格納の時間を短縮させるためには、ホストからＮＡＮＤフラッシュメモリーまでのデータの転送に要する時間を改善する必要がある。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、メモリーカードのデータの格納に要する時間を短縮させることができるメモリーカード及び該データの格納方法を提供することである。特に、ホストからＮＡＮＤフラッシュメモリーまでのデータの転送の時間を短縮させることができるメモリーカード及び該データの格納方法を提供することである。
【課題を解決するための手段】
【０００９】
本発明は、ホストに接続されるメモリーカードに関するものである。前記メモリーカードは、ＮＡＮＤフラッシュメモリー及びメモリーコントローラーを含む。ＮＡＮＤフラッシュメモリーは複数のページを持ち、各々のページは複数のセクターを含む。メモリーコントローラーは、前記ホストからセクターの単位でデータを受信するとともにセクターアドレスを受信し、該セクターアドレスに応じて、バッファーメモリーを経由してセクターデータを前記ＮＡＮＤフラッシュメモリーに転送したり、前記ＮＡＮＤフラッシュメモリーにセクターデータを直接に転送したりする。
【００１０】
本発明の好適な実施形態において、前記メモリーコントローラーは、前記バッファーメモリーを経由してデータを転送するための第１データバス及び前記ＮＡＮＤフラッシュメモリーに直接にデータを転送するための第２データバスを含む。
【００１１】
本発明の好適な実施形態において、前記メモリーコントローラーは、前記セクターアドレスが選択されたページの中の第１セクターをアクセスするためのアドレス(第１セクターアドレス)である場合には前記第１データバスを活性化させ、前記メモリーコントローラーは、前記アドレスが選択されたページの中の前記第１セクターの以外の他のセクターをアクセスするためのアドレスである場合には前記第２データバスを活性化させる。
【００１２】
本発明の好適な実施形態において、前記メモリーコントローラーは、前記セクターアドレスに応答して前記第１及び第２データバスの中の何れか一つを活性化させるための制御ユニットを更に含む。前記制御ユニットは、定義されたセクターアドレスを格納するためのアドレスレジスター、前記セクターアドレス及び前記定義されたセクターアドレスを比較して前記第１及び前記第２データバスの中の何れか一つを選択するための選択機、及び、中央処理装置をインタラプトして、選択されたデータバスを管理するためのＤＭＡ制御機を含みうる。
【００１３】
本発明の好適な実施形態において、セクターのサイズは、例えば５１２Ｂであり、前記ページのサイズは、例えば２ＫＢであることを特徴とする。前記バッファーメモリーは、デュアルポートを含みうる。或いは、前記バッファーメモリーは、ＳＲＡＭ又はＤＲＡＭを含みうる。
【００１４】
本発明の別の側面は、メモリーカードのデータの格納方法に関するものである。前記メモリーカードは、ＮＡＮＤフラッシュメモリー及びメモリーコントローラーを含む。ＮＡＮＤフラッシュメモリーは複数のページを持ち、各々のページは複数のセクターを含む。メモリーコントローラーは、ホストからセクターの単位でデータを受信し、前記ＮＡＮＤフラッシュメモリーにセクターデータを転送する。前記メモリーカードのデータの格納方法は、前記ホストから書き込みのコマンド及びセクターアドレスを受信する段階、前記書き込みのコマンド及びセクターアドレスに応じて、バッファーメモリーを経由してセクターデータを前記ＮＡＮＤフラッシュメモリーに転送したり、前記ＮＡＮＤフラッシュメモリーにセクターデータを直接に転送したりする段階、前記ＮＡＮＤフラッシュメモリーにページデータが転送された場合に前記ページデータを選択されたページにプログラムする段階を含む。
【００１５】
本発明の好適な実施形態において、前記メモリーコントローラーは、前記バッファーメモリーを経由してデータを転送するための第１データバス、および、前記ＮＡＮＤフラッシュメモリーに直接にデータを転送するための第２データバスを含む。前記データ転送の段階では、前記セクターアドレスが前記選択されたページの中の第１セクターをアクセスするためのアドレス(第１セクターアドレス)である場合には前記第１データバスを活性化させ、前記セクターアドレスが前記第１セクターアドレスの以外の選択されたページの中の他のセクターをアクセスするためのアドレスである場合には前記第２データバスを活性化させる。
【００１６】
前記データ転送の段階で前記第１セクターアドレスである場合に、他のページに対する書き込みの動作が行われる時には前記他のページに対する書き込みの動作を完了させる段階を含んでもよい。
【発明の効果】
【００１７】
本発明のメモリーカード及び該データの格納方法は、バッファーメモリーを経由するデータの転送経路以外にホストからＮＡＮＤフラッシュメモリーに直接に転送されるデータの転送経路を別に具備する。従って、本発明によれば、従来のものに比べてデータの格納速度が速くなる。
【発明を実施するための最良の形態】
【００１８】
以下に、本発明が属する技術の分野で通常の知識をもつ者が本発明を容易に実施できる様に例示的な実施形態を図面を参照しながら説明する。
【００１９】
図１は、本発明の好適な実施形態のメモリーカードを表すブロック図である。図１を参考にすれば、メモリーカード２００は、ホスト１００に接続される。ホスト１００は、メモリーカード２００と接続されて使用可能なあらゆる電子機器(例えば、デジタルカメラ、ＭＰ３プレーヤー、ＰＤＡ、モバイル携帯電話、コンピュータ等)でありうる。メモリーカード２００は、ＮＡＮＤフラッシュメモリー２１０及びメモリーコントローラー２２０を含む。
【００２０】
ＮＡＮＤフラッシュメモリー２１０は、メモリーセルアレイ(図示せず)及びページバッファー２１５を含む。ページバッファー２１５は、ページ(例えば、２１１)にプログラムされるデータを一時的に格納したり、ページ２１１から読み込んだデータを一時的に格納したりする。メモリーセルアレイは、複数のメモリーブロックで構成されうる。各々のメモリーブロックは複数のページで構成されうる。各々のページは複数のセクターで構成されうる。各々のセクターは複数のメモリーセルで構成されうる。ここで、メモリーブロックは消去単位を成し、ページは読み込み及び書き込みの単位を成す。即ち、一つのメモリーブロックは同時に消去され、一つのページは同時にデータが読み出されたり又はプログラムされたりする。
【００２１】
一つのメモリーブロックには、例えば、１６ＫＢ（Ｋｉｌｏ  Ｂｙｔｅ)又は１２８ＫＢのデータが格納され、一つのページには５１２Ｂ（Ｂｙｔｅ）又は２ＫＢのデータが格納されうる。ＮＡＮＤフラッシュメモリーは、メモリーブロックのサイズによって小ブロックメモリーと大ブロックメモリーとに分類されうる。表１は、小ブロックメモリーと大ブロックメモリーの主な差を表す。
【００２２】
【表１】
2008041098.tif 000003
【００２３】
表１によれば、小ブロックメモリーは１６ＫＢブロックサイズを持ち、大ブロックメモリーは１２８ＫＢブロックサイズを持つ。小ブロックメモリーは５１２Ｂ(スペア領域は除く)のページの単位で読み込み及び書き込みの動作を行い、１６ＫＢ(スペア領域は除く)のブロックの単位で消去動作を行う。大ブロックメモリーは２ＫＢ(スペア領域は除く)のページの単位で読み出し及び書き込みの動作を行い、１２８ＫＢ(スペア領域は除く)のブロックの単位で消去動作を行う。
【００２４】
図１のＮＡＮＤフラッシュメモリー２１０は大ブロックメモリーである。図１には例として、二つのページ２１１、２１２が示されている。各々のページには２ＫＢのデータが格納される。第１ページ２１１は第１乃至第４セクターＳ１〜Ｓ４で構成され、第２ページ２１２は第５乃至第８セクターＳ５〜Ｓ８で構成される。各々のセクターには５１２Ｂのデータが格納される。
【００２５】
メモリーコントローラー２２０は、ホストインターフェース３１０、フラッシュインターフェース３２０、バッファーメモリー３３０、制御ユニット３６０、および、中央処理装置（ＣＰＵ）３７０を含む。メモリーコントローラー２２０は、更に、データバス３４１、３４２を含む。ここで、データバス３４１、３４２はデュアル又はシングルデータバスである。以下では、データバス３４１、３４２がデュアルデータバスであるものとして説明する。第１データバス３４１は、バッファーメモリー３３０を経由してデータを転送する。第２データバス３４２は、バッファーメモリー３３０を経由せずに、ホスト１００からＮＡＮＤフラッシュメモリー２１０に直接にデータを転送する。本発明の好適な実施形態のメモリーカード２００によれば、デュアルデータバス３４１、３４２を使ってプログラムの速度を速くすることができる。
【００２６】
ホストインターフェース３１０は、コマンドの変換回路(図示せず)及びアドレスの変換回路(図示せず)を含む。コマンドの変換回路は、ホスト１００から外部コマンドを受信して、ＮＡＮＤフラッシュメモリー２１０に提供される内部コマンドを発生する。同様に、アドレスの変換回路は、外部アドレスを受信して、内部アドレスを発生する。内部コマンド及び内部アドレスは、バス(図示せず)を通してフラッシュインターフェース３２０に伝送される。
【００２７】
ホストインターフェース３１０は、ホスト１００からデータを受信する。受信されたデータは、バッファーメモリー３３０に送られるか、バッファーメモリー３３０を経由せずにフラッシュインターフェース３２０に直接に送られる。ここで、ホストインターフェース３１０は、セクターの単位(例えば、５１２Ｂ)でデータを受信する。メモリーカード２００は、ホスト１００からセクターの単位(例えば、５１２Ｂ)でデータを受信して、ページの単位(例えば、２ＫＢ)でデータをプログラムする場合に効率的に使われる。
【００２８】
フラッシュインターフェース３２０は、内部コマンド、内部アドレス、内部制御信号、および、データをＮＡＮＤフラッシュメモリー２１０に提供する。ＮＡＮＤフラッシュメモリー２１０に提供されるデータは、バッファーメモリー３３０を経由し又はホストインターフェース３１０から直接に転送されるデータである。
【００２９】
バッファーメモリー３３０は、ホストインターフェース３１０から提供されたデータを一時的に格納する。バッファーメモリー３３０に格納されたデータは、第１データバス３４１を通してフラッシュインターフェース３２０に伝送される。バッファーメモリー３３０は、バッファー動作を行う。即ち、ホストインターフェース３１０からセクターの単位でデータを受信しながら、フラッシュインターフェース３２０にセクターの単位でデータを出力する。バッファーメモリー３３０としては、例えば、ＳＲＡＭ、ＤＲＡＭ等の様なランダムアクセスメモリーを使用することができる。メモリーコントローラー２２０は、第１データバス３４１以外に第２データバス３４２を備えている。第１及び第２データバス３４１、３４２は、第１及び第２多重通信装置（マルチプレクサ）３５１、３５２によって選択される。第１多重通信装置３５１は、第１選択信号Ｓ１に応答して第２データバス３４２にデータを転送する。第１選択信号Ｓ１が論理'０'である場合には第２データバス３４２に対するデータの転送が遮断され、論理'１'である場合には第２データバス３４２に対するデータの転送が行われる。第２多重通信装置３５２は、第２選択信号Ｓ２に応答して、第２データバス３４２のデータをフラッシュインターフェース３２０に転送する。第２選択信号Ｓ２が論理'１'である場合には第１データバス３４１を経由してフラッシュインターフェース３２０にデータが転送され、論理'０'である場合には第２データバス３４２を経由してフラッシュインターフェース３２０にデータが転送される。
【００３０】
制御ユニット３６０は、ホストインターフェース３１０から提供された外部コマンド、外部アドレス、および、制御信号に応答して動作する。図１を参考にすれば、制御ユニット３６０は、選択機３６１、アドレスレジスター３６２、ＤＭＡ制御機３６３を含む。選択機３６１は、アドレスレジスター３６２に定義されたセクターアドレス（ｄｅｆｉｎｅｄ  ｓｅｃｔｏｒ  ａｄｄｒｅｓｓ）と新しく入力された現在のセクターアドレス（ｐｒｅｓｅｎｔ  ｓｅｃｔｏｒ  ａｄｄｒｅｓｓ）とを比較して、第１及び第２データバス３４１、３４２の中の何れか一つを選択する。例えば、選択機３６１は、定義されたセクターアドレスと現在のセクターアドレスとが違う場合には第１データバス３４１を選択する。
【００３１】
この場合にはバッファーメモリー３３０を経由してデータが転送される。一方、定義されたセクターアドレスと現在のセクターアドレスとが同じである場合には、選択機３６１は第２データバス３４２を選択する。この場合にはバッファーメモリー３３０を経由せずにホストインターフェース３１０からフラッシュインターフェース３２０にデータが直接に転送される。
【００３２】
アドレスレジスター３６２は、現在のセクターアドレスを受信し、次に入力される定義されたセクターアドレスを格納する。例えば、現在のセクターアドレスがＮＡＮＤフラッシュメモリー２１０の第１セクターＳ１を指定するためのアドレス(第１セクターアドレス)であると仮定する。この場合、アドレスレジスター３６２は、第１セクターアドレスを受信し、第２セクターＳ２を指定するためのアドレス(第２セクターアドレス)を定義されたセクターアドレスとして格納する。
【００３３】
続いて、アドレスレジスター３６２が現在のセクターアドレスとして第２セクターアドレスを受信すると、選択機３６１は、当該現在のセクターアドレスとアドレスレジスター３６２に格納されている定義されたセクターアドレスとを比較して、その比較結果に応じて第１及び第２選択信号Ｓ１、Ｓ２を発生する。
【００３４】
ＤＭＡ制御機３６３は、ダイレクトメモリーアクセス（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ：  ＤＭＡ）転送方式によってデータバスを管理する。ＤＭＡ転送が行われる間は、中央処理装置３７０は、データバスを制御せずに待機する。ＤＭＡ制御機３６３は、ホストインターフェース３１０からのＤＭＡ要求に応答してバス要求信号（Ｂｕｓ  Ｒｅｑｕｅｓｔ：ＢＲ)を活性化させて、中央処理装置３７０がデータバスを制御しない様にする。即ち、ＤＭＡ転送が行われると中央処理装置３７０の介入なしに第１又は第２データバス３４１、３４２を通してデータが転送される。
【００３５】
図１のメモリーカード２００は、セクターの単位でデータを受信し、ページの単位でデータを格納するスキームにおいて効率的に使われることができる。メモリーカード２００は、セクターの単位でデータの入出力の動作を行うバッファーメモリー３３０を含む。メモリーカード２００は、バッファーメモリー３３０を経由するデータの転送の経路とホスト１００からＮＡＮＤフラッシュメモリー２１０に直接にデータを転送する経路とを含む。メモリーカード２００は、ページ中の最初（初め）のセクターに格納するためのセクターデータについてはバッファーメモリー３３０を経由させてＮＡＮＤフラッシュメモリー２１０に転送するが、残りのセクターに格納するためのセクターデータについてはＮＡＮＤフラッシュメモリー２１０に直接にデータを転送する。それによって、メモリーカード２００は、データの格納の速度を従来に比べて速くすることができる。
【００３６】
図２は図１のメモリーカードの動作を説明するためのフロー図である。以下に、図１及び図２を参考にしてメモリーカードの動作を説明する。
【００３７】
Ｓ１００段階で、ホスト１００からメモリーカード２００に外部コマンドＣＭＤ及び外部アドレスＡＤＤＲが印加される。メモリーカード２００がホスト１００に接続されると、ホストインターフェース３１０は、ホスト１００から外部コマンドＣＭＤ及び外部アドレスＡＤＤＲを受信する。前記外部アドレスＡＤＤＲは、ＮＡＮＤフラッシュメモリー２１０の一つのセクター(例えば、Ｓ１)をアクセスするためのセクターアドレス（ｓｅｃｔｏｒ  ａｄｄｒｅｓｓ）である。
【００３８】
Ｓ１１０段階で、ホストインターフェース３１０は、外部コマンドＣＭＤが書き込みのコマンドであるかどうかを判断する。外部コマンドＣＭＤが書き込みのコマンドではなければ、図２のプログラムの動作とは違うルーチンＳ１２０が行われる。例えば、外部コマンドＣＭＤが読み込みのコマンドであれば、ルーチンＳ１２０で読み込みの動作が行われる。外部コマンドＣＭＤが書き込みのコマンドであれば、以降のプログラムの動作が行われる。
【００３９】
Ｓ２００段階で、制御ユニット３６０は、受信した外部アドレス（現在のセクターアドレス）ＡＤＤＲがアドレスレジスター３６２に定義されたセクターアドレス(defined sector address)と同じであるかどうかを判断する。これらのセクターアドレスが違う場合には、第１データバス３４１を通してデータの転送が行われて、これらのセクターアドレスが同じである場合には、第２データバス３４２を通してデータの転送が行われる。
【００４０】
図２を参考にすれば、現在のセクターアドレスと定義されたセクターアドレスとが違う場合にはＳ２１０段階が行われる。Ｓ２１０段階では、選択機３６１は、第１データバス３４１を選択するために論理'０'の第１選択信号Ｓ１及び論理'１'の第２選択信号Ｓ２を発生する。そして、ＤＭＡ制御機３６３は、中央処理装置３７０をインタラプトして、第１データバス３４１を管理する。
【００４１】
反対に、現在のセクターアドレスと定義されたセクターアドレスとが同じである場合にはＳ２２０及びＳ２３０段階が行われる。
【００４２】
Ｓ２２０段階では、選択機３６１は、第２データバス３４２を選択するために論理'１'の第１選択信号Ｓ１及び論理'０'の第２選択信号Ｓ２を発生する。Ｓ２３０段階では、ＤＭＡ制御機３６３は、中央処理装置３７０をインタラプトして、第２データバス３４２を管理する。Ｓ２４０段階では、ホスト１００から入力されたセクターデータは、第２データバス３４２を通してＮＡＮＤフラッシュメモリー２１０に転送される。前記セクターデータは、バッファーメモリー３３０を経由せずにＮＡＮＤフラッシュメモリー２１０に直接に転送される。
【００４３】
Ｓ３００段階では、中央処理装置３７０は、外部アドレスがページ２１１の中のセクターを最初（初め）にアクセスするかどうかを判断する。一般的に、ページ２１１の中の第１セクター(例えば、Ｓ１又はＳ５)が最初（初め）にアクセスされる。しかし、ランダムセクターの書き込みの方式を使うホストである場合には、ページ２１１の中の他のセクター(例えば、Ｓ３)が最初（初め）にアクセスされることも可能である。以下では、第１セクターＳ１が最初（初め）にアクセスされるものと仮定して説明する。
【００４４】
Ｓ３１０段階では、外部アドレスが第１セクターアドレスＡＤＤＲ１であれば、内部コマンドＣＭＤ'及び内部アドレスＡＤＤＲ'がフラッシュインターフェース３２０を通してＮＡＮＤフラッシュメモリー２１０に伝送される。内部コマンドＣＭＤ'及び内部アドレスＡＤＤＲ'は、ＮＡＮＤフラッシュメモリー２１０に適合する様に外部コマンドＣＭＤ及び外部アドレスＡＤＤＲを内部的に変換したものである。
【００４５】
Ｓ３２０段階では、バッファーメモリー３３０に格納されたセクターデータが第１データバス３４１を通してＮＡＮＤフラッシュメモリー２１０に転送される。このセクターデータは、ホスト１００から入力されたデータである。このセクターデータは、ページバッファー２１５を経由して第１セクターＳ１に格納される。
【００４６】
一方、Ｓ３００段階で外部アドレスが第１セクターアドレスＡＤＤＲ１ではなければ、Ｓ３１０段階を経由せずに、セクターデータが第１データバス３４１を通してバッファーメモリー３３０からＮＡＮＤフラッシュメモリー２１０に転送される。この場合には、内部コマンドＣＭＤ'及び内部アドレスＡＤＤＲ'が既にＮＡＮＤフラッシュメモリー２１０に転送されている。
【００４７】
Ｓ３３０段階では、中央処理装置３７０は、外部アドレスがページ２１１の中の最後（終わり）のセクターをアクセスするかどうかを判断する。一般的に、ページ２１１の中の第４セクターＳ４又はＳ８が最後にアクセスされる。しかし、ページ２１１の中の他のセクター(例えば、Ｓ２)が最後にアクセスされることもできる。
【００４８】
以下では、第４セクターＳ４が末にアクセスされるものと仮定して説明する。
【００４９】
外部アドレスが第４セクターＳ４をアクセスするための第４セクターアドレスＡＤＤＲ４ではなければ、中央処理装置３７０の制御によって、アドレスレジスター３６２には次のセクターアドレス（ｎｅｘｔ  ｓｅｃｔｏｒ  ａｄｄｒｅｓｓ）が格納される。例えば、外部アドレスが第１セクターアドレスＡＤＤＲ１であれば、アドレスレジスター３６２には第２セクターアドレスＡＤＤＲ２が格納される。
【００５０】
そして、外部アドレスが第２セクターアドレスＡＤＤＲ２であれば、アドレスレジスター３６２には第３セクターＳ３をアクセスするための第３セクターアドレスＡＤＤＲ３が格納される。Ｓ３５０段階では、メモリーカード２００はｍホスト１００から次のコマンド及びアドレスが入力されるまで待つ。次のコマンド及びアドレスが入力されると、Ｓ１００段階乃至Ｓ３３０段階が行われる。
【００５１】
Ｓ３３０段階では、外部アドレスが第４セクターアドレスＡＤＤＲ４であれば、中央処理装置３７０は、フラッシュインターフェース３２０を通してＮＡＮＤフラッシュメモリー２１０に承認コマンドを提供する。一般的に、ＮＡＮＤフラッシュメモリー２１０のプログラムの動作は、ページバッファー２１５に最後（終わり）のセクターが格納された場合に行われる。Ｓ４００段階では、ＮＡＮＤフラッシュメモリー２１０はページバッファー２１５に格納されたデータを選択されたページ２１１に同時にプログラムする。
【００５２】
図３は、図２のフロー図のＳ３００段階及びＳ３１０段階の間に行われるプログラムの動作を説明するためのフロー図である。図３は、ホスト１００がランダムセクターの書き込みの方式を支援する場合に使われる。
【００５３】
Ｓ３０１段階では、中央処理装置３７０、は選択されたページ以外の他のページから書き込みの動作が行われているかどうかを判断する。例えば、第２ページ２１２の中の第５セクターＳ５をアクセスするための第５セクターアドレスＡＤＤＲ５が入力された状態で第１ページ２１１に対する書き込みの動作が進行されているかどうかを判断する。Ｓ３０３段階では、第１ページ２１１から書き込みの動作が行われる場合にＮＡＮＤフラッシュメモリー２１０に承認コマンドが提供される。Ｓ３０５段階では、ＮＡＮＤフラッシュメモリー２１０はページバッファー２１５に格納されたデータを他のページ２１１に同時にプログラムする。続いて、既に説明されたＳ３１０段階が行われる。
【００５４】
本発明の好適な実施形態のメモリーカードは、ホストからセクターの単位でデータを受信し、ページの単位でデータを格納する。メモリーカードは、ページ中の最初（初め）のセクターである場合には、バッファーメモリーを経由して、残りのセクターである場合には直接にデータを転送する。それによって、メモリーカードはデータの格納の速度を従来に比べて速くすることができる。
【００５５】
本発明の実施形態は、本発明の目的及び請求範囲の内で多様に変形できる
【図面の簡単な説明】
【００５６】
【図１】本発明のメモリーカードを表すブロック図である。
【図２】図１のメモリーカードの動作を説明するためのフロー図である。
【図３】図２のフロー図のＳ３００段階とＳ３１０段階の間のプログラムの動作を説明するためのフロー図である。
【符号の説明】
【００５７】
１００：ホスト
２００：メモリーカード
２１０：ＮＡＮＤフラッシュメモリー
２２０：メモリーコントローラー
３１０：ホストインターフェース
３２０：フラッシュインターフェース
３３０：バッファーメモリー
３６０： 制御ユニット
３７０：中央処理装置
【図１】
2008041098.tif 000004
【図２】
2008041098.tif 000005
【図３】
2008041098.tif 000006