(57)【要約】【課題】本発明は、リアルタイム性の必要の有無などのデータの特性に応じた転送が可能な記憶装置を提供することを目的とする。【解決手段】ホスト機器からの設定により複数の転送モードを切り替える記憶装置であって、リアルタイムデータ転送モードと非リアルタイムデータ転送モードの少なくとも２つの転送モードに応じてエラー制御およびスタンバイ制御を変更する転送制御部１０４を有することを特徴とする。【選択図】図１
2006099210.tif 000002
【特許請求の範囲】
【請求項１】
ホスト機器からの設定により複数の転送モードを切り替えることを特徴とする記憶装置。
【請求項２】
前記複数の転送モードには、非リアルタイムデータ転送モードを含むことを特徴とする請求項１記載の記憶装置。
【請求項３】
前記複数の転送モードには、リアルタイムデータ転送モードを含むことを特徴とする請求項１記載の記憶装置。
【請求項４】
データ書込み中のエラーの検出、ホスト機器へのエラー通知およびリトライの制御を行なうエラー制御手段を備えることを特徴とする請求項１ないし３のいずれかに記載の記憶装置。
【請求項５】
データ書き込み中にエラーを検出すると、前記非リアルタイムデータ転送モードではホスト機器へのエラー通知を行なわず、データ書込みのリトライを行なうことを特徴とする請求項４記載の記憶装置。
【請求項６】
データ書き込み中にエラーを検出すると、前記リアルタイムデータ転送モードではホスト機器へエラー通知を行い、データ書込みのリトライを行わないことを特徴とする請求項４記載の記憶装置。
【請求項７】
データ書き込み中にエラーを検出すると、前記リアルタイムデータ転送モードではホスト機器へのエラー通知およびデータ書込みのリトライを行わないことを特徴とする請求項４記載の記憶装置。
【請求項８】
データ書き込み中にエラーを検出すると、前記リアルタイムデータ転送モードでは、前記書き込み中のデータがファイルシステム情報の場合にはホスト機器へのエラー通知を行なわず、データ書込みのリトライを行なうことを特徴とする請求項４記載の記憶装置。
【請求項９】
前記エラーの通知は、ホスト機器からのステータスリードコマンドに対する応答で行なうことを特徴とする請求項４ないし８のいずれかに記載の記憶装置。
【請求項１０】
前記エラーの通知は、割込みを用いて行なうことを特徴とする請求項４ないし８のいずれかに記載の記憶装置。
【請求項１１】
ホスト機器からのアクセスの有無の検出およびスタンバイ状態への移行およびスタンバイ状態からの復帰制御を行なうスタンバイ制御手段を持つことを特徴とする請求項１ないし３のいずれかに記載の記憶装置。
【請求項１２】
前記非リアルタイムデータ転送モードと前記リアルタイムデータ転送モードでは、ホスト機器からのアクセスがないことを検出してからスタンバイ状態へ移行する時間が異なることを特徴とする請求項１１記載の記憶装置。
【請求項１３】
前記スタンバイ状態へ移行する時間は前記リアルタイムデータ転送モードのほうが長いことを特徴とする請求項１１記載の記憶装置。
【請求項１４】
前記リアルタイムデータ転送モードではスタンバイ状態への移行を行なわないことを特徴とする請求項１１記載の記憶装置。
【請求項１５】
ホスト機器が前記リアルタイムデータ転送モードの設定を行なうと、記憶装置内部の転送モード設定処理が終了するまでビジー状態となり、ホスト機器からのデータ転送を受付けないことを特徴とする請求項１〜１４のいずれかに記載の記憶装置。
【請求項１６】
前記転送モードの設定は所定のコマンドを用いて行なうことを特徴とする請求項１〜１５のいずれかに記載の記憶装置。
【請求項１７】
前記転送モードの設定は所定のコマンドの引数に転送モードを設定して行なうことを特徴とする請求項１６記載の記憶装置。
【請求項１８】
前記転送モードの設定は所定のコマンドに付随する書込みデータに転送モードを設定して行なうことを特徴とする請求項１６記載の記憶装置。
【請求項１９】
前記複数の転送モードのうちサポートする転送モードをホスト機器に通知する手段を備えることを特徴とする請求項１〜１８のいずれかに記載の記憶装置。
【請求項２０】
前記サポートする転送モードをホスト機器に通知する手段は、所定のコマンドに対する応答にサポートする転送モードを設定して行なうことを特徴とする請求項１９記載の記憶装置。
【請求項２１】
前記サポートする転送モードをホスト機器に通知する手段は、所定のコマンドに対する読出しデータにサポートする転送モードを設定して行なうことを特徴とする請求項１９記載の記憶装置。
【請求項２２】
前記記憶装置は記憶媒体として不揮発性メモリを備えることを特徴とする請求項１〜２１のいずれかに記載の記憶装置。
【請求項２３】
前記記憶装置は半導体メモリカードであることを特徴とする請求項１〜２２のいずれかに記載の記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リアルタイムデータおよび非リアルタイムデータを記録可能な記憶装置に関する。
【背景技術】
【０００２】
デジタルカメラ、ムービー、携帯型音楽プレーヤなどのデジタル情報を制御する機器（以下、ホスト機器）において、デジタル情報を保持する記憶装置として、不揮発性メモリを搭載したメモリカードがある。近年では内蔵する不揮発性メモリ容量が増加し静止画や動画記録用途への応用が広がっている。また、メモリ以外の拡張機能を有するＩＯカードと呼ばれるカードも開発されており、このようなカードにおいてはホスト機器がアクセスする際に動作モードの設定を行い、設定に応じて入出力端子の機能を変える方式が提案されている（例えば、特許文献１参照）。
【特許文献１】特開２００１−２５６１７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記の従来技術には以下のような問題点がある。すなわち、メモリカードに転送するデータには静止画やテキストデータのように転送速度は遅くても確実に転送すべき非リアルタイムデータと、動画のように転送の遅れが許されない代わりに少々のデータのエラーが許容されるリアルタイムデータとがある。しかし、従来のメモリカードでは書き込むデータの特徴に応じて制御方式を変えることができなかった。また、従来のメモリカードでは省電力化のためホスト機器からのアクセスが終了するとスタンバイ状態へ移行する制御を行なっているが、リアルタイムデータを転送する場合にはスタンバイ時間への移行および復帰に要する時間がオーバーヘッドとなり、所望の転送レートでの転送が行なえなかった。すなわち、従来のメモリカードでは動画等のリアルタイムデータの転送を効率よく行なえないという問題がある。
【０００４】
上記問題を鑑み、本発明は、データの特性に応じた転送が可能な記憶装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
前記課題を解決するために、本発明に係る記憶装置は、ホスト機器からの設定により複数の転送モードを切り替える記憶装置であることを特徴とする。
【０００６】
また、データ書込み中のエラーの検出およびホスト機器へのエラー通知の制御およびリトライを行なうエラー制御手段を備え、転送モードに応じてエラー制御を変更する記憶装置であることを特徴とする。
【０００７】
また、ホスト機器からのアクセスの有無の検出およびスタンバイ状態への移行およびスタンバイ状態からの復帰制御を行なうスタンバイ制御手段を持ち、転送モードに応じてスタンバイ制御を変更する記憶装置であることを特徴とする。
【発明の効果】
【０００８】
本発明によると、ホスト機器が設定した転送モードに応じてエラー制御およびスタンバイ制御を変更するため、データの特性に応じた転送が可能となる。
【発明を実施するための最良の形態】
【０００９】
本発明による記憶装置においては、非リアルタイムデータ転送モードとリアルタイムデータ転送モードとを備え、ホスト機器から転送モードを設定可能である。このため、ホスト機器の転送するデータの特性に応じた処理が可能となる。
【００１０】
また、本発明による記憶装置においては、データ書き込み中にエラーを検出すると、リアルタイムデータ転送モードと非リアルタイムデータ転送モードとでホスト機器へのエラー通知およびデータ書込みのリトライ制御を変更する。このため、転送するデータに応じて、ホスト機器の負荷を減らした確実なデータ転送およびリアルタイム性を維持したデータ転送が可能となる。
【００１１】
また、本発明による記憶装置においては、リアルタイムデータ転送モードと非リアルタイムデータ転送モードとでスタンバイ状態に移行する時間を変更する。このため、スタンバイ状態を多用した省電力なデータ転送と、スタンバイ移行・復帰処理を削減したオーバーヘッドの少ないデータ転送とが可能となる。
【００１２】
また、本発明による記憶装置においては、ホスト機器がリアルタイムデータ転送モードを設定した場合には転送モード設定処理が終了するまでビジーとなりホスト機器からのデータ転送を受付けない。このため、オーバーヘッドの少ない状態でリアルタイムデータ転送を開始することが可能となる。
【００１３】
以下、本発明の実施の形態に係る記憶装置を、図面を用いて説明する。
【００１４】
（実施の形態）
図1は本発明の実施の形態に係る記憶装置の構成を示すブロック図である。図1に示すように、本発明の実施の形態に係る記憶装置１００は、データを保持するための記憶媒体１０１と、フロントエンド部１０２と、バックエンド部１０３と、転送制御部１０４とからなる。フロントエンド部１０２は、コマンド処理部、ステータス出力部およびデータ入出力制御部を備え、ホスト機器とコマンド、アドレス、ステータス情報、データの入出力を行なう。バックエンド部１０３は、データバッファ、エラー検出部および記憶媒体制御部を備え、記憶媒体１０１とフロントエンド部１０２とのデータ転送制御を行なう。また、転送制御部１０４は、転送モード設定部、エラー制御部およびスタンバイ制御部を備え、ホスト機器が設定した転送モードに応じてエラー制御およびスタンバイ制御を変更する。なお、記憶媒体として、不揮発性メモリの1つであるフラッシュメモリが持ちらいられてもよい。
【００１５】
＜転送モードの確認と設定＞
図２は本発明の実施の形態に係る記憶装置の転送モードの遷移を表すフローチャートである。記憶装置１００は初期化処理が終了すると非リアルタイムデータ転送モードになる（Ｓ２０２）。そしてホスト機器からのモード設定コマンドＳＷＩＴＣＨコマンドによりリアルタイムデータ転送モードへ遷移する（Ｓ２０４）。リアルタイムデータ転送モードにおいてもＳＷＩＴＣＨモードにより非リアルタイムデータ転送モードへ遷移可能である。
【００１６】
なお、記憶装置１００は初期化処理終了時にリアルタイムデータ転送モードになるようにしてもよい。
【００１７】
ホスト機器はＳＷＩＴＣＨコマンド発行前にＣＨＥＣＫコマンドを発行して記憶装置１００の備える転送モードを確認してもよい。
【００１８】
図３は本発明の実施の形態に係る記憶装置に対する、ＣＨＥＣＫコマンドによるモード確認のシーケンスを示す図である。まず、ホスト機器がＣＨＥＣＫコマンドを発行する。記憶装置１００がＣＨＥＣＫコマンドを受信すると、フロントエンド部１０２のコマンド処理部は転送モード設定部の情報に基づき、コマンドに対するレスポンスと、記憶装置１００の備える転送モードを示すモード情報をステータス出力部、データ入出力制御部を介してホスト機器に返す。モード情報はＣＨＥＣＫコマンドのレスポンスとして返してもよい。
【００１９】
また図４は、本発明の実施の形態に係る記憶装置に対する、ＳＷＩＴＣＨコマンドによるモード設定のシーケンスを表す図である。ホスト機器はＳＷＩＴＣＨコマンドと、設定する転送モードを示すモード設定情報を記憶装置１００に発行し、記憶装置１００の転送モードを設定する。モード設定情報はＳＷＩＴＣＨコマンドの引数として発行してもよい。記憶装置１００がＳＷＩＴＣＨコマンドおよびモード設定情報を受信すると、フロントエンド部１０２のコマンド処理部はモード設定情報に基づき転送モード設定部に転送モードの設定を行なう。転送モード設定部は設定されたモードに基づき、エラー制御部およびスタンバイ制御部の動作を決定する。また転送モード設定部は、設定されたモードがリアルタイムデータ転送モードである場合、記憶媒体制御部に通知してリアルタイムデータ転送に必要な転送モード設定処理を行なう。転送モード設定処理には、記憶媒体がフラッシュメモリである場合、フラッシュメモリのブロック消去、データの退避、書き込みブロックの取得、アドレス変換テーブルの更新などが含まれる。転送モード設定処理が終了するまでは記憶装置１００はビジー状態となり、ホスト機器からの転送を受付けないようにするため、ホスト機器がリアルタイムデータを転送する場合に記憶装置１００ではオーバーヘッドの少ない状態で転送を開始することができる。
【００２０】
図５はホスト機器がＣＨＥＣＫコマンドで読み出すモード情報およびＳＷＩＴＣＨコマンドで設定するモード設定情報の構成を示している。機能１〜Ｎの各機能毎に４ビットづつのフィールドを持っている。図２で示すように記憶装置１００が初期化後に非リアルタイムデータ転送モードになる場合、例えば機能１がリアルタイムデータ転送モードの有無を示すフィールドになる。ホスト機器はＣＨＥＣＫコマンドによりモード設定情報を読み出し、記憶装置１００がリアルタイムデータ転送モードを備えるかどうかを確認する。備えている場合、ホスト機器はＳＷＩＴＣＨコマンドを発行しモード設定情報の機能１のフィールドにリアルタイムデータ転送モードを示す値を設定し記憶装置１００へ送信する。このような処理によりホスト機器は記憶装置１００の備える転送モードの確認および設定を行なう。ホスト機器は転送したいデータの種類に応じた記憶装置１００の転送モードの設定を行なうことで効率のよいデータ転送が可能となる。
【００２１】
＜エラー制御＞
図６は本発明の実施の形態に係る記憶装置におけるデータ転送シーケンスを表すフローチャートである。ホスト機器からのデータ転送コマンドを記憶装置１００が受信すると、コマンドに基づいてバックエンド部１０３がホスト機器と記憶媒体１０１との間でデータ転送を行なう（Ｓ６０１）。この場合の転送は記憶媒体１０１への書き込みでも記憶媒体１０１からの読出しのいずれでもよい。
【００２２】
一定量のデータ転送を行なうと、バックエンド部１０３のエラー検出部が転送のエラー検出を行なう。データ転送で発生するエラーには、記憶媒体１０１としてフラッシュメモリのような不揮発性メモリを用いている場合には、書き込み時のプログラムエラーや読出し時のＥＣＣ(誤り訂正符合)エラーが含まれる。エラーがない場合は、ホスト機器からのコマンドに基づく終了判定を行い（Ｓ６０３）、転送処理を終了するか、新たなデータ転送を継続するかを決定する。エラーが発生すると、バックエンド部１０３のエラー検出部はエラーを転送制御部１０４のエラー制御部へ通知する。記憶装置１００の転送モードが非リアルタイムデータ転送モードの場合は、エラー制御部はデータ転送のリトライを記憶媒体制御部へ通知し、再度データ転送を行なう(Ｓ６０７)。リトライは、書き込みの場合は別の領域への書き込みおよびエラーが発生した領域の無効化処理を含む、読出しの場合は同一領域からの再読み出しを含む。または、リトライは書き込みの場合のみ行い読出しの場合はａｌｌ−０またはａｌｌ−１等の無効データをホスト機器へ転送するようにしてもよい。
【００２３】
記憶装置１００の転送モードがリアルタイムデータ転送モードの場合は、エラー制御部はリトライを行なうかどうかの判定を行なう(Ｓ６０５)。エラー制御部はリアルタイムデータ転送モードでは常にリトライを行なわないようにしてもよく、またはファイルシステム情報等特定のデータについてのみリトライを行うようにしてもよい。リトライを行なう場合は非リアルタイムデータ転送モードの場合と同様の処理を行なう。リトライを行なわない場合、エラー制御部はホスト機器へエラー通知を行なうかどうかの判定を行なう（Ｓ６０６）。エラー通知を行なう場合はステータス出力部を通じてホスト機器へエラーを通知する。ここでエラー通知は、ホスト機器からのステータスリードコマンドに対するレスポンスで通知してもよく、また記憶装置１００が割込み機能を備える場合は割込みを用いて通知してもよい。その後、転送の終了判定を行い（Ｓ６０３）、データ転送を終了するか続けて新たなデータ転送を行なうかを決定する。このように転送モードに応じてエラー制御を変えるため、非リアルタイムデータ転送モードではリトライにより信頼性の高いデータ転送が実現でき、リアルタイムデータ転送モードではデータの記録レートを満たす転送が実現できる。また、リアルタイムデータ転送モードでもファイルシステム情報はリトライを行なうことで、エラーが発生した場合においてもホスト機器が記憶装置内のデータ構造を正しく知ることが可能となる。
【００２４】
＜スタンバイ制御＞
図７は本発明の実施の形態に係る記憶装置のスタンバイ制御シーケンスを表すフローチャートである。ホスト機器からのアクセスが終了すると、記憶装置１００はコマンド待ち状態になる（Ｓ７０１）。その後新たなコマンドが入力された場合（Ｓ７０２）には、コマンド処理状態へ遷移し処理を行なう（Ｓ７０９）。コマンドが入力されない場合、転送制御部１０４のスタンバイ制御部は転送モード設定部に設定された転送モードに基づいてスタンバイ制御を行なう（Ｓ７０３）。記憶装置１００が非リアルタイムデータ転送モードの場合、ホスト機器からのアクセス終了後の経過時間を計測し（Ｓ７０７）、第１の移行時間が経過していたらスタンバイ状態へ移行する（Ｓ７０８）。経過していない場合は、コマンド待ち状態へ戻る（Ｓ７０１）。記憶装置１００がリアルタイムデータ転送モードの場合、スタンバイ制御部はスタンバイ状態への移行を行なうかどうかの設定を確認する（Ｓ７０４）。移行を行なわない場合はコマンド待ち状態へ戻る（Ｓ７０１）。移行を行なう場合は、ホスト機器からのアクセス終了後の経過時間を計測し（Ｓ７０５）、第２の移行時間が経過していたらスタンバイ状態へ移行する（Ｓ７０８）。
【００２５】
この時第１の移行時間より第２の移行時間を長く設定すればリアルタイムデータ転送モードでのスタンバイ移行を遅らせることができ、スタンバイへの移行／復帰回数を減らせる。従ってリアルタイムデータを転送する場合のオーバーヘッド時間を削減することが可能となる。また、非リアルタイムデータ転送モードではスタンバイ状態に移行することで省電力化が実現可能となる。
【産業上の利用可能性】
【００２６】
本発明よると、非リアルタイムデータ転送およびリアルタイムデータ転送それぞれの特徴に応じた転送制御が可能な記憶装置を提供することができ、ＰＣ、ＡＶ機器、携帯電話等幅広いホスト機器と組み合わせて使用する記憶装置として有用である。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施の形態に係る記憶装置の構成を示すブロック図
【図２】同記憶装置の転送モード遷移を示すフローチャート
【図３】同記憶装置の転送モードを確認するためのコマンドシーケンスを示すタイミング図
【図４】同記憶装置の転送モードを設定するためのコマンドシーケンスを示すタイミング図
【図５】同記憶装置の転送モード情報および転送モード設定情報を示す概念図
【図６】同記憶装置のエラー制御を示すフローチャート
【図７】同記憶装置のスタンバイ制御を示すフローチャート
【符号の説明】
【００２８】
１００    記憶装置
１０１    記憶媒体
１０２    フロントエンド部
１０３    バックエンド部
１０４    転送制御部
【図１】
2006099210.tif 000003
【図２】
2006099210.tif 000004
【図３】
2006099210.tif 000005
【図４】
2006099210.tif 000006
【図５】
2006099210.tif 000007
【図６】
2006099210.tif 000008
【図７】
2006099210.tif 000009