(57)【要約】【課題】不揮発性キャッシュメモリとハードディスクの特徴を巧みに利用し、ハードディスクドライブ側の短所を補い装置の信頼性を向上する。【解決手段】ホストインターフェースと、コマンドの内容を解析するコマンド解析部と、ハードディスクへのアクセスを許可または強制的に禁止する要求情報を保存するための要求及び判定結果メモリと、前記コマンド解析部で解析されたコマンドに応答するのに先行して、前記要求及び判定結果メモリの要求情報を判定する装置状態判定部と、前記装置状態判定部の判定結果が”禁止”を示すときは、前記ハードディスクへのアクセスを禁止し、前記スイッチング情報判定部の判定結果が”許可”を示すときは、前記コマンド解析部の解析結果及び独自判定結果に基づいてアクセスを許可するメディアアクセス判定部を有する。【選択図】図４
2008250718.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置に接続されるホストインターフェースと、
ハードディスクに接続されるハードディスクインターフェースと、
キャッシュメモリに接続されるキャッシュメモリインターフェースと、
前記ホストインターフェースから入力されたコマンドの内容を解析するコマンド解析部と、
前記ハードディスクへのアクセスの”禁止”または”許可”を示す要求情報を保存するための要求及び判定結果メモリと、
前記コマンド解析部で解析されたコマンドに応答するのに先行して、前記要求及び判定結果メモリの要求情報を判定する装置状態判定部と、
メディア判定部を有し、
このメディア判定部は、前記装置状態判定部が前記”禁止”を判定したときは、前記ハードディスクへのアクセスを禁止して前記キャッシュメモリへのアクセスのみを設定する特殊処理部と、
前記スイッチング情報判定部が前記”許可”を判定したときは、前記コマンド解析部の解析結果及び独自判定結果に基づいて前記ハードディスク又はキャッシュメモリへのアクセス先を決定するコマンド応答及び独自処理部と、
を有することを特徴とする不揮発性キャッシュメモリを用いた記憶装置。
【請求項２】
前記要求及び判定結果メモリの前記要求情報は、外部の操作スイッチより与えられることを特徴とする請求項１記載の不揮発性キャッシュメモリを用いた記憶装置。
【請求項３】
前記要求及び判定結果メモリは、前記ホスト装置から前記要求情報が送られてきたときに取り込み保存することを特徴とする請求項１記載の不揮発性キャッシュメモリを用いた記憶装置。
【請求項４】
さらに、環境センサーと、
前記環境センサーの出力情報が環境異常を示すか否かを判定するセンサー状態判定部を有し、
前記要求及び判定結果メモリは、前記センサー状態判定部が、環境異常であること判定したときは前記ハードディスクアクセス”禁止”の要求情報を保存し、前記センサー状態判定部が、環境正常に復帰した後であることを判定したときはアクセス”許可”の要求情報を保存することを特徴とする請求項１記載の不揮発性キャッシュメモリを用いた記憶装置。
【請求項５】
さらに、高周波信号受信部と、環境センサーと、
前記環境センサーの出力情報が環境異常を示すか否かを判定するセンサー状態判定部を有し、
前記要求及び判定結果メモリは、前記高周波受信部からのデータが前記コントローラに取り込まれているときに、前記センサー状態判定部が環境異常であること判定したときは前記ハードディスクアクセス”禁止”の要求情報を保存し、前記センサー状態判定部が、環境正常に復帰した後であることを判定したときはアクセス”許可”の要求情報を保存することを特徴とする請求項１記載の不揮発性キャッシュメモリを用いた記憶装置。
【請求項６】
前記要求及び判定結果メモリは、前記センサー状態判定部が、環境異常であること判定したときは前記ハードディスクアクセス”禁止”の要求情報を保存し、さらに、前記高周波受信部を介してリトライを行なうことを特徴とする請求項５記載の不揮発性キャッシュメモリを用いた記憶装置。
【請求項７】
ホスト装置に接続されるホストインターフェースと、ハードディスクに接続されるハードディスクインターフェースと、キャッシュメモリに接続されるキャッシュメモリインターフェースと、前記ホストインターフェースから入力されたコマンドの内容を解析するコマンド解析部と、要求及び判定結果メモリと、装置状態判定部と、メディア判定部を有し、
前記要求及び判定結果メモリに、前記ハードディスクへのアクセスの”禁止”または”許可”を示す要求情報を保存し、
前記メディア判定部が、前記装置状態判定部が前記”禁止”を判定したときは、前記ハードディスクへのアクセスを禁止して前記キャッシュメモリへのアクセスのみを設定し、
前記メディア判定部が前記”許可”を判定したときは、前記コマンド解析部の解析結果及び独自判定結果に基づいて前記ハードディスク又はキャッシュメモリへのアクセス先を決定することを特徴とする不揮発性キャッシュメモリを用いた記憶装置の制御方法。
【請求項８】
前記要求情報は、外部の操作スイッチより与えられることを特徴とする請求項７記載の不揮発性キャッシュメモリを用いた記憶装置の制御方法。
【請求項９】
前記要求情報は、前記ホスト装置から与えられることを特徴とする請求項７記載の不揮発性キャッシュメモリを用いた記憶装置の制御方法。
【請求項１０】
さらに、前記要求及び判定結果メモリは、環境異常か否かを示す環境センサーの出力情報を前記要求情報として格納するようにしたことを特徴とする請求項７記載の不揮発性キャッシュメモリを用いた記憶装置の制御方法。
【請求項１１】
さらに、前記要求及び判定結果メモリは、高周波受信部からのデータが前記コントローラに取り込まれているときに、環境異常か否かを示す環境センサーの出力情報を前記要求情報として格納するようにしたことを特徴とする請求項７記載の不揮発性キャッシュメモリを用いた記憶装置の制御方法。
【請求項１２】
前記要求及び判定結果メモリは、前記環境異常であることが判定されときは前記ハードディスクアクセス”禁止”の要求情報を保存し、さらに、前記高周波受信部を介してリトライを行なうことを特徴とする請求項１１記載の不揮発性キャッシュメモリを用いた記憶装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、不揮発性キャッシュメモリを用いた記憶装置とその制御方法に関するものであり、メディアアクセス先、或いはアクセス禁止メディアを強制的に記憶装置側で設定できるようにしている。
【背景技術】
【０００２】
近年、半導体記憶媒体であるキャッシュメモリと、磁気記憶媒体であるハードディスク（ＨＤ）の両方を搭載できる記憶装置が開発されている（特許文献１参照）。
【０００３】
この装置は、高速アクセス可能なキャッシュメモリを有効に活用している。上位装置（ホスト）は、一時的にキャッシュメモリに対してデータを書き込む。その後、記憶装置内部では、キャッシュメモリから低速のハードディスクに対してデータを転送する、いわゆるライトバックが行なわれる。
【０００４】
上記の特許文献１では、記憶装置内部のライトバック動作と、ホストがこの記憶装置をアクセスするタイミングとが重ならないように、ホストは、予め記憶装置に対してアクセスを行なう旨の通知を行なう。つまり、ホストは、記憶装置に対して、ライトバック動作を禁止する通知を行なっている。また、ホストは、記憶装置を次にアクセスするまでに、十分な時間間隔がある場合には、ライトバック動作を許可する通知を行なっている。
【特許文献１】特開平８−１２３７２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
複数の特性が異なる記憶媒体、即ちキャッシュメモリとハードディスクを用いる記憶装置は、それぞれの記憶媒体の特徴を有効に活用している。各記憶媒体の特徴としては、書き込み・読出し応答速度、電源入力時の立ち上り速度などがある。しかし、従来の装置は、使用環境、使用状態、使用要望に対して、各記憶媒体の特徴を使い分ける機能が不十分な場合がある。
【０００６】
この発明に係る一実施の形態の目的は、記憶媒体としての不揮発性キャッシュメモリと、ハードディスクの特徴を巧みに利用することを前提としている。そして、ハードディスクドライブ側の短所を補い、装置の信頼性を向上する。
【課題を解決するための手段】
【０００７】
上記の目的を達成するために、この発明に係る１つの実施の形態では、ホストインターフェースと、前記ホストインターフェースから入力されたコマンドの内容を解析するコマンド解析部と、ハードディスクに接続されるハードディスクインターフェースと、前記ハードディスクへのアクセスを許可または強制的に禁止する要求情報を保存するための要求及び判定結果メモリと、前記コマンド解析部で解析されたコマンドに応答するのに先行して、前記要求及び判定結果メモリの要求情報を判定する装置状態判定部と、前記装置状態判定部の判定結果が”禁止”を示すときは、前記ハードディスクへのアクセスを禁止し、前記スイッチング情報判定部の判定結果が”許可”を示すときは、前記コマンド解析部の解析結果及び独自判定結果に基づいてアクセスを許可するメディアアクセス判定部を有する。
【発明の効果】
【０００８】
上記の手段によると、ハードディスクへのアクセスを確実に禁止する状態を設定することができる。このために、ハードディスクへのアクセス時間の削減ができる。そして衝撃に強く、電力の消費時間をできるだけ低減する動作モードを利用者の意思を通じて設定することが可能となる。
【発明を実施するための最良の形態】
【０００９】
＜本発明の適用例＞
図１には本発明の記憶装置が適用された装置の使用例を示している。１０００は、パーソナルコンピュータである。このパーソナルコンピュータ１０００には、ＵＳＢ接続ケーブル１１００を介して、例えば、携帯端末１２００を接続することができる。携帯端末１２００は、例えば音楽プレーヤ及び又はゲーム機として動作することが可能である。この携帯端末１２００には、液晶表示部１２１０、操作ボタン１２１１、１２１２、スイッチ１２１３など・・・が設けられており、携帯端末１２００を操作することができる。操作ボタン及びスイッチなどを総称して操作部１２１Ａとする。
【００１０】
＜全体の構成及び機能＞
図２において、実施形態の全体ブロックの例を説明する。１００は、ホスト装置であり、先のパーソナルコンピュータに於けるコントロール部である。２００は、不揮発性キャッシュメモリを用いた記憶装置である。この記憶装置２００は、バッファとして機能するＳＤＲＡＭ２０１、後述するコントローラなどが搭載された例えば１チップのＬＳＩ（大規模集積化回路）２０２、フラッシュメモリ２０３、ハードディスク（ＨＤ）２０４を有する。これらのエレメントが、図１に示した携帯端末１２００に内蔵されている。
【００１１】
ＬＳＩ２０２は、コントローラ３１１、ホストインターフェース３１２、ＳＤＲＡＭインターフェース３１３、ディスクインターフェース３１４、フラッシュメモリインターフェース（キャッシュメモリインターフェースと称してもよい）３１５を有する。なお、このＬＳＩ２０２に、上記のＳＤＲＡＭ２０１が内蔵されていてもよい。
【００１２】
さらに３２１は、携帯端末の操作部１２１Ａに対する操作部インターフェースである。利用者は操作部１２１Ａを操作してこの携帯端末を操作することができる。
【００１３】
ホスト装置１００は、ホストインターフェース３１２を介して、コントローラ３１１にコマンドを与えることができる。またホスト装置１００は、ホストインターフェース３１２を介して、コントローラ３１１からのデータを受け取ることもできるし、コントローラ３１１側へデータを転送することもできる。
【００１４】
コントローラ３１１からのコマンドは、データの書き込み命令、データの読出し命令、データのサイズ指定、データの転送、メモリ情報の読み取り命令などがある。また、コントローラ３１１は、ホスト装置１００からのコマンドを解釈し、データの書き込み処理、読出し処理、転送処理などを実行する。
【００１５】
コントローラ３１１は、ＳＤＲＡＭインターフェース３１３を介して、ＳＤＲＡＭ２０１との間でデータのやり取りを行うことができる。またコントローラ３１１は、ディスクインターフェース３１４を介して、ＨＤ２０４との間でデータのやり取りを行うことができる。さらにコントローラ３１１は、フラッシュメモリインターフェース３１５を介して、フラッシュメモリ（キャッシュメモリと称してもよい）２０３との間でデータのやり取りを行うことができる。上記したフラッシュメモリ２０３に格納されるデータは、エラー訂正コードが付加されて格納される。またハードディスクに記録されるデータもエラー訂正コードが付加されて格納される。フラッシュメモリへの記録データ、ハードディスクへの記録データに対しては、再生時のエラー訂正が可能なようにＥＣＣ処理が施される。
【００１６】
上記の装置では、フラッシュメモリインターフェース３１５、フラッシュメモリ２０３の部分は、キャッシュとして使用される。フラッシュメモリ２０３は、不揮発性キャッシュメモリと称してもよい。
【００１７】
データの書き込み順序、データの読出し順序は、コントローラ３１１に格納されているソフトウエアに応じて決まる。例えば、ホスト装置１００からＨＤ２０４へ書き込みデータが送られるときは、
例えば、ホストインターフェース２０２→コントローラ３１１→ＳＤＲＡＭインターフェース３１３→ＳＤＲＡＭ２０１→ＳＤＲＡＭインターフェース３１３→コントローラ３１１→ディスクインターフェース３１４→ハードディスク２０４の系路ある。または、ホストインターフェース２０２→コントローラ３１１→フラッシュメモリインターフェース３１５→フラッシュメモリ２０３→フラッシュメモリインターフェース３１５→コントローラ３１１→ディスクインターフェース３１４→ハードディスク２０４の系路でもよい。
【００１８】
さらに、ホストインターフェース２０２→コントローラ３１１→フラッシュメモリインターフェース３１５→フラッシュメモリ２０３→フラッシュメモリインターフェース３１５→コントローラ３１１→ＳＤＲＡＭインターフェース３１３→ＳＤＲＡＭ２０１→ＳＤＲＡＭインターフェース３１３→コントローラ３１１→ディスクインターフェース３１４→ハードディスク２０４の系路でもよい。
【００１９】
次に、例えば、ＨＤ２０４からホスト装置１００側へデータが読み出されるときは、ＨＤ２０４→ディスクインターフェース３１４→コントローラ３１１→ＳＤＲＡＭインターフェース３１３→ＳＤＲＡＭ２０１→ＳＤＲＡＭインターフェース３１３→コントローラ３１１→ホストインターフェース３１２→ホスト装置がある。又は、ＨＤ２０４→ディスクインターフェース３１４→コントローラ３１１→フラッシュメモリインターフェース３１５→フラッシュメモリ２０３→フラッシュメモリインターフェース３１５→コントローラ３１１→ホストインターフェース３１２→ホスト装置でもよい。さらには、ＨＤ２０４→ディスクインターフェース３１４→コントローラ３１１→フラッシュメモリインターフェース３１５→フラッシュメモリ２０３→フラッシュメモリインターフェース３１５→コントローラ３１１→ＳＤＲＡＭインターフェース３１３→ＳＤＲＡＭ２０１→ＳＤＲＡＭインターフェース３１３→コントローラ３１１→ホストインターフェース３１２→ホスト装置でも良い。
【００２０】
＜フラッシュメモリに関する説明＞
図３は、フラッシュメモリ２０３を取り扱う上で特有の制御が行われることを説明する図である。フラッシュメモリ２０３は、不揮発性メモリでありながら、データの電気的消去が可能である。したがって、データの書き換えが可能な不揮発性メモリである。
【００２１】
このフラッシュメモリ２０３は、例えば、消去単位は、１２８Ｋバイトで規定されている。一方、読み取り単位及び書き込み単位は、例えば２Ｋバイトに規定されている。またこのフラッシュメモリ２０３は、消去回数が多くなると素子が劣化し、エラー発生が多くなる。そこで、素子の性能を補償する情報として、書き換え回数を１０万回程度に規定している。なお上記の消去単位のバイト数及び書き込み単位の数値はこれに限定されるものではない。消去単位２３Ｋバイト、読み書き単位５１２単位であってもよい。
【００２２】
＜上記の装置の前提となる基本機能及び動作＞
＊  フラッシュメモリとコントローラとホスト装置からのコマンドとの基本的な関係
図３に示すように、フラッシュメモリ２０３にデータが書き込まれた場合、その書き込み領域を、Ｐｉｎｎｅｄ（ピンド）領域２０３Ａと、ＵｎＰｉｎｎｅｄ（アンピンド）領域２０３Ｂという名称で分類することができる。Ｐｉｎｎｅｄ領域２０３Ａは、ホスト装置１００が送ってきたデータ書き込み先のコマンドが、あえてフラッシュメモリ２０３を指定した場合に形成された領域である。コマンドは、フラッシュメモリ２０３とその論理ブロックアドレス（ＬＢＡ）を含む。ＵｎＰｉｎｎｅｄ（アンピンド）領域２０３Ｂは、（ａ）ホスト装置１００によるデータ書き込み先がコマンドにより指定されていない場合で、かつ、（ｂ）コントローラ３１１がベイシック状態にあるとき、コントローラ３１１が独自にデータ転送先及び格納先を判断してデータ格納する領域である。
【００２３】
なおフラッシュメモリ２０３に書き込むデータとしては、ホスト装置１００から送られてくるデータ、あるいは、ハードディスク２０４から読み出したデータがある。
【００２４】
コントローラ３１１がデータ書き込み先を決めるための判断要件は、各種ある。コントローラ３１１内部の状態判定部が周囲の要件を総合的に判断し、書き込み先を決定している。
【００２５】
＊ホスト装置１００からのデータを保存する場合、フラッシュメモリ３１５又はＳＤＲＡＭ２０１に保存するケース
装置の電源が投入された直後であり、ＨＤ２０４が所定回転数に達していない場合、あるいは、ＨＤ２０４が停止状態にある場合である。このときは、フラッシュメモリ３１５又はＳＤＲＡＭ２０１に書き込む方が便利である。また、早くデータ転送を行ないたい場合には、ホスト装置１００から一旦フラッシュメモリ３１５に書き込みを行い、その後、時間的に余裕があるときにＨＤ２０４に書き写す（ライトバックと称する）と便利である。
【００２６】
＊ホスト装置１００がＨＤ２０４のデータを繰り返し使いたいようなケース
この場合は、ＨＤ２０４のデータを読出し、フラッシュメモリ３１５に保存しておくと便利である。フラッシュメモリ３１５に利用データを保存しておくほうが、高速でアクセスできるからである。
【００２７】
＊フラッシュメモリインターフェース３１５及びコントローラ３１１の機能と構成
図４には、コントローラ３１１、フラッシュメモリインターフェース３１５の構成を機能別に分類して示している。フラッシュメモリインターフェース３１５には、カウンタが設けられている。カウンタは、フラッシュメモリ２０３へのデータ書き込み、読出し回数、エラー回数などを計数するために用いられる。
【００２８】
カウンタとしては、累積ライト回数カウンタ３１５ａ，累積消去回数カウンタ３１５ｂ、累積ライトエラー回数カウンタ３１５ｃ、リードエラー数カウンタ３１５ｄが用意されている。リードエラー数カウンタ３１５ｄの代わりに、ＥＣＣ回路により検出されるエラー数カウンタ、あるいはエラー訂正数カウンタ３１５ｅが設けられてもよい。また、リードライト単位をカウントするカウンタが設けられていてもよい。これらのカウンタの内容は、エラーが多くなったときの警告、状態判定部の判定要素として利用される。
【００２９】
コントローラ３１１は、コマンド解析部４１１を有し、ホスト装置１００から送られてきたコマンドをここでデコードし解析する。コマンドの解析結果により、アーキテクチャメモリ４１４内のソフトウエアが特定され、シーケンスコントローラ４１２に動作手順が設定される。また、これらのコマンド解析及び制御は、インターフェース３１２において行われてもよい。
【００３０】
シーケンスコントローラ４１２は、インターフェース及びバスコントローラ４１３などを介して、データの流れ及びコントロールデータの流れを制御する。例えば、データ書き込みあるいは読出しが行われるときは、メディアアクセス判定部４１５がフラッシュメモリ２０３あるいはハードディスク（ＨＤ）を特定し、アドレス制御部４１６が書き込みアドレスあるいは読出しアドレスを特定する。そして書き込み処理部４１７が書き込みデータの転送処理などを行う（データ書き込み時）。また読出し処理部４１７が読出しデータの転送処理などを行う（データ読出し時）。
【００３１】
消去処理部４１９が設けられている。消去処理部４１９は、フラッシュメモリ２０３のデータの消去処理を行う。またこの消去処理部４１９は、ハードディスクのデータの消去処理も行うことができる。
【００３２】
アドレス管理部４２０が設けられている。アドレス管理部４２０は、ハードディスクのアドレス及びフラッシュメモリ２０３の記録済み領域、未記録領域などのアドレスを一括して管理している。
【００３３】
フラッシュメモリ２０３は、キャッシュメモリとして利用されるので、ホスト装置側がアドレスを指定する場合は、ホスト装置はキャッシュメモリのアドレスを意識する必要はなく、ハードディスク側のアドレスを設定すればよい。
【００３４】
データの格納先として特別にキャッシュメモリ２０３が指定される場合には、ホスト装置は、Ｐｉｎｎｅｄのコマンドを発行すればよい。Ｐｉｎｎｅｄのコマンドがない場合には、データ格納先は、通常は、コントローラ３１１に構築されているファームウエアの判定結果に依存する。
【００３５】
またフラッシュメモリ２０３のＰｉｎｎｅｄ領域、Ｕｎｐｉｎｎｅｄ領域などのアドレス管理及び制御は、インターフェース３１５において行われてもよい。
【００３６】
さらに装置状態判定部４２１が設けられている。この装置状態判定部４２１は、例えばハードディスク２０４の状態を監視している。
【００３７】
なおフラッシュメモリ２０３の記憶容量がある閾値より大きくなった場合には、コントローラ３１１が状態を判定し、ハードディスクに転送して書き移す処理を行う。このときの動作は、主として読出し処理部４１８、書き込み処理部４１６、アドレス管理部４２０が組み合わせて制御される。
【００３８】
さらに、コントローラ３１１には、要求及び判定結果メモリ４２３が設けられている。この要求及び判定結果メモリ４２３は、後述するようにこの装置の特徴部となる。この要求及び判定結果メモリ４２３は、フラッシュメモリインターフェース３１５内、ホストインターフェース３１２内、フラッシュメモリインターフェース３１５内、フラッシュメモリ２０３内、また操作部インターフェース３２１内のいずれに確保されていてもよい。
【００３９】
＜実施例における特有の構成と機能と動作＞
＜前提＞上記の記憶装置では、ホスト装置１００からの書き込みデータは、コントローラ３１１の判定により、ＨＤ２０４又はフラッシュメモリ２０３のいずれかに書き込まれる。例えばデータを書き込むための論理ブロックアドレス（ＬＡＢ）が指定されていない場合、いずれの媒体に書き込むかは、コントローラ３１１の判断（ソフトウエア）に委ねられている。また、コントローラ３１１の管理において、フラッシュメモリ２０３をデータキャッシュとして利用するか否かもコントローラ３１１の判断（ソフトウエア）に委ねられている。
【００４０】
あえてフラッシュメモリ２０３にデータを書き込むためには、特別にＬＢＡが指定されてくる。このアドレスは、先に説明したＰｉｎｎｄ領域を指定するもので、Ｐｉｎｎｄ  ＬＢＡと称される。またホスト装置が指定しなかったアドレス郡は、Ｕｎｐｉｎｎｅｄ  ＬＢＡと呼ばれる。
【００４１】
つまり上記の装置は、基本動作モードでは、「Non Volatile Cache Command Proposal for ATA8 -ACS規格」に準拠している。
【００４２】
しかし、各種の条件、環境によっては、データの保存の信頼性、また保存後の読み出しの信頼性から考えると、ＨＤ２０４にはデータ書き込みを行なわない方が好ましい場合がある。
【００４３】
一般的にフラッシュメモリ２０３は、駆動系要素がないため、アクセス中の衝撃に強く消費電流が少ない。また一般的にＨＤドライブは、回転させたＨＤ上のデータをヘッドがアームを介してアクセスするため、アクセス中の衝撃に弱く、消費電流が多い。ここで通常動作モードでは、フラッシュメモリをキャッシュメモリとして使用するものの、キャッシュミスをした場合や、何らかの事情でフラッシュメモリ２０３にライトできなかった場合は、ＨＤにアクセスしなければならない。このため、常にＨＤにアクセスする可能性があり、衝撃に弱い、消費電力が多くなるという時間が必ず存在する。
【００４４】
ここで、キャッシュメモリ及びＨＤを有する記憶装置に対して、ＨＤへのアクセス制限を行うことができれば、これらの時間に対する考慮をする必要がなくなる。このアクセス制限の方法として、本発明の一実施の形態では、スイッチ(メディアディセーブルスイッチ)１２１３を設けている。
【００４５】
スイッチ１２１３に対するデバイスの制御は以下の通りである。ホスト装置１００から、データアクセスコマンドが発行された場合、フラッシュメモリ２０３をアクセスするか、ＨＤ２０４をアクセスするかを決定する。コマンド解析部４１１がコマンドを解析し、この解析結果に応答してメディアアクセス判定部４１５がアクセスメディアを決定する。
【００４６】
フラッシュメモリ２０３をアクセスすると決定した場合は、通常通りのアクセスが実行される。ＨＤ２０４をアクセスすると決定した場合は、スイッチ１２１３の状態が確認される。装置状態判定部４２１が要求及び判定結果メモリ４２２のテーブルを確認し、スイッチ１２１３の状態を確認する。
【００４７】
スイッチ１２１３の状態オフ(ＨＤアクセス可を意味する)であれば、通常通りアクセス動作に移行するが、スイッチ１２１３がオン(ＨＤアクセス不可を意味する)であれば、ＨＤ２０４へのアクセスを行わない。
【００４８】
後者の場合は、以下のような処理が実行される。
【００４９】
例１：記憶装置２００は、ホスト装置１００に対してはアクセスエラー通知(リードエラー/ライトエラー)を行う。ホスト装置１００は、上記のアクセスエラー通知が送られてきた場合、アクセス先としてフラッシュメモリ２０３を指定して再度データ書き込みのためのアクセスコマンドを送信する。
【００５０】
例２：記憶装置２００は、ホスト装置１００に対しては何らアクセスエラー通知(リードエラー/ライトエラー)を行わない場合がある。この場合は、スイッチ１２３１がオフであることを確認し、独自にフラッシュメモリ２０３にデータを書き込んだ場合である。
【００５１】
図５には、装置がデータ書き込み処理を行うときの動作例を示すフローチャートであり、コントローラ３１１により実行される。コマンド解析部４１１がホスト装置１００から送られてきたコマンドを解析し、データ書き込みコマンドがあるかを判定する（ステップＳＡ１）。データ書き込みコマンドがない場合には、他の処理（ステップＳＡ２）を実行してステップＳＡ１に戻る。
【００５２】
データ書き込みコマンドがあった場合、要求及び判定結果メモリ４２２に保存されている情報が、装置状態判定部４２１により確認される。この情報は、スイッチ１２１３がオンされた状態であるのか、オフされた状態であるのかを示している。
【００５３】
スイッチ１２１３がオンされている状態であれば、この状態はＨＤ２０４へのアクセス禁止を意味する。このときは、装置状態判定部４２１の判定結果に基づいて、メディアアクセス判定部４１５が、フラッシュメモリ３１１を特定する。そしてコントローラ３１１は、フラッシュメモリ２０３へのアクセスを実行する。つまり、ステップＳＡ１２に移行して、フラッシュメモリ２０３へのデータ書き込みを実行する。ステップＳＡ３において、スイッチ１２１３がオフであることが判明した場合には、ステップＳＡ４に移行し、Ｐｉｎｎｅｄが指定されているかどうかを判定する。
【００５４】
ステップＳＡ４にて、メディアアクセス判定部４１５により、Ｐｉｎｎｅｄが指定されていることが判定されたときは、ステップＳＡ１２に移行して、フラッシュメモリ２０３へのデータ書き込みを実行する。ステップＳＡ４にて、Ｐｉｎｎｅｄが指定されていないときは、ステップＳＡ５に移行して、ＨＤ２０４が指定されているかどうかを判定する。ＨＤ２０４が指定されているときは、ステップＳＡ６に移行する。ここでは装置状態判定部４２１が、ＨＤＤ（ハードディスクドライブ）モータの回転が十分であるかどうかを判定する。ＨＤＤモータの回転が十分であれば、ＨＤ２０４に対するデータ書き込みを実行する。
【００５５】
ステップＳＡ６にて、ＨＤＤモータの回転が不十分であるとき、つまり起動した後、十分な回転数に達していないことが判明した場合、後でライトバックを行うことを条件付けして（ステップＳＡ８）、ステップＳＡ１２に移行し、フラッシュメモリ２０３へのデータ書き込みを実行する。
【００５６】
ステップＳＡ５においてＨＤが指定されていないことがわかると、メディアを選択するために、装置自身の独自の判定処理が実行される。この動作は主としてメディアアクセス判定部４１５が中心となって動作する。この判定処理（ステップＳＡ１０）で、ＨＤへの書き込みが好ましいと判定された場合には、先のステップＳＡ６に移行する。キャッシュメモリへの書き込みが好ましいと判定された場合（ステップＳＡ１１）は、ステップＳＡ１２に移行して、フラッシュメモリへのデータ書き込みが実行される。ステップＳＡ１１でキャッシュメモリへのデータ書き込みが好ましくないとの判定結果が得られた場合は、エラー表示（警告）がなされる。ステップＳＡ４，ＳＡ５，ＳＡ１０，ＳＡ１１は、オリジナル動作モード（或いは基本動作モード）である。
【００５７】
ここでステップＳＡ１０の判定条件としては、フラッシュメモリ２０３のエラー回数或いはエラーバイト数が多くなった場合、ＨＤの選択が行なわれる。また保存データのデータ量が所定量以上あるような場合、或いは保存データが長期保存を必要とするようなデータの場合は、ＨＤの選択が行なわれる。データ量は、データ属性を示す属性データにより判断できるし、また保存データを指定する指定期間（データ長）情報によっても判定できる。さらには、保存データが長期保存を必要とするかどうかは、当該データのタイプにより選別される。例えば、一時的に使用するアプリケーションデータであれば、長期保存は不要であるが、音楽、画像などのコンテンツであれば、長期保存を必要とする。
【００５８】
上記のようにメディアアクセス判定部４１５によるアクセスメディアの決定が行なわれる。データ書き込みは、書き込み処理部４１７が中心となって実行する。このときアドレス管理部４２０のアドレステーブルが参照され、アドレス制御部４１６がアクセスするアドレスを指定する。
【００５９】
上記したフラッシュメモリ２０３及びＨＤ２０４に格納されているデータは、ファイル単位及びファイル内のタイトル単位で階層的に管理される。このために、例えばアドレス管理部４２０にはファイルのルートディレクトリーが構築されている。またデータの読出しが行なわれる場合には、操作部１２１Ａからの操作に応じて、ファイル単位あるいはタイトル単位での読出し指定が行なわれる。この指定に応じて、コントローラ３１１の読出し処理部４１８は、アドレス管理部４２０及びアドレス制御部４１６と相俟って、フラッシュメモリ２０３及び又はＨＤ２０４からのデータ読出しを実行する。
【００６０】
上記したようにこの発明の装置は、コマンド解析部４１１、メディアアクセス判定部４１５、装置状態判定部４２１、要求及び判定結果メモリ４２２が中心的な役割を演ずる。これらの動作が相俟って、データ書き込み処理に関しては、（１）コマンド応答処理部４４Ａ、（２）独自判定処理部４４Ｂ、（３）特別処理部４４Ｃに分類することができる。
【００６１】
コマンド応答処理には、図５のステップＳＡ４（Ｐｉｎｎｅｄ応答），ステップＳＡ５、ＳＡ７（ＨＤ指定応答）が対応する。独自判定処理には、図５のステップＳＡ１０，ＳＡ１１が対応する。また、特別処理は、図５のステップＳＡ３，ＳＡ１２が対応する。図５では、機能が分かりやすいように（１）コマンド応答処理部４４Ａ、（２）独自判定処理部４４Ｂ、（３）特別処理部４４Ｃを図示したが、実際には、コマンド解析部４１１、メディアアクセス判定部４１５、装置状態判定部４２１、要求及び判定結果メモリ４２２などの各ブロックが協働して実現される。
【００６２】
図６にはこの発明の他の実施の形態を示している。図４に示した実施の形態では、ＨＤ２０４へのデータ書き込みを禁止するのに、マニュアル操作を行うスイッチ１２１３を利用した。しかし、これに限らず、ホスト装置１００からデータを転送するときに、書き込み制限を与えてもよい。このときは、ホスト装置１００から、装置２００側へコマンドのパラメータ（ＨＤ書き込み禁止又は許可を示す）として与える方法であってもよいし、直接的なＨＤ書き込み禁止・許可コマンドとして与える方法であってもよい。
【００６３】
図６は、ホスト装置１００から、装置２００側へＨＤ書き込み禁止又は許可を示すパラメータを与える場合、あるいは直接的なＨＤ書き込み禁止・許可コマンドを与える場合の実施例を示している。
【００６４】
コマンド解析部４１１は、ホスト装置１００から送られてきた書き込みコマンドにおいて、特定の領域のパラメータを抽出し、このパラメータを要求及び判定結果メモリ４２２に格納する。パラメータとしては、先の実施の形態で説明したように、スイッチ１２１３の状態を示すデータと同じである。例えばスイッチ１２３１がオフであることを意味する場合は、パラメータ”００００”、スイッチ１２３１がオンであることを意味する場合は、パラメータ”１０１０”と決められている。ＨＤ書き込み禁止・許可コマンドも同様であり、例えばスイッチ１２３１がオフであることを意味する場合はコマンド”００００”、スイッチ１２３１がオンであることを意味する場合はコマンド”１０１０”と決められている。
【００６５】
装置２００は、メディアを選択して、データ書き込みを実行する前に、上記の要求及び判定結果メモリ４２２の内容を確認し、図５で説明したフローチャートに従って動作する。
【００６６】
この発明は、上記した実施の形態に限定されるものではなく、図４に示した装置と、図６に示した装置の両方の機能が備わっていてもよいことは勿論である。つまり、要求及び判定結果メモリ４２２に対して、ハードウエアによるスイッチ１２３１により情報をインプットしてもよいし、ホスト装置１００から情報をインプットしてもよい。
【００６７】
図７は、さらにこの発明の他の実施例である。この発明は上記の実施の形態に限定されるものではない。環境センサーとして、気圧センサー５１１あるいは振動センサー５１２あるいは温度センサー５１３、あるいはこれらの組み合わせを搭載してもよい。気圧センサー５１１、振動センサー５１２及び温度センサー５１３の感応出力は信号変換器５１４にて増幅され、所定の形式のデータに変換される。このデータは、インターフェース３２１を介してコントローラ３１１に入力される。コントローラ３１１は、センサーの応答する様子を判定する。コントローラ３１１は、設定されている条件が満足されたとき、要求及び判定結果メモリ４２２に対してＨＤ書き込み禁止または許可情報を設定する。
【００６８】
図８は、図７に示した実施例の動作例を示すフローチャートである。センサー出力情報は、コントローラ３１１のセンサー状態判別部４２３において、例えば周期的にチェックされる（ステップＳＢ１）。センサーから環境異常有りの情報、又は環境異常なしの情報があるかどうかの判定がなされる（ステップＳＢ２）。異常がなければ環境異常が環境正常に回復した直後かどうかの判定がなされる（ステップＳＢ３）。環境正常に復帰した直後でない場合は、ステップＳＢ０を経由してステップＳＢ１に戻る。ステップＳＢ０は、装置２００がアンテナからの信号取得を行っている動作モードを意味する。
【００６９】
ステップＳＢ２において、センサーから、環境異常有りの情報があった場合、ステップＳＢ４に移行して、強制的にフラッシュメモリ２０３へのデータ書き込みモードとなる。データ処理が終了したかどうかの判定が行われ（ステップＳＢ７）、データ処理が終了していれば、終了となる。データ処理が終了していない場合には、ステップＳＢ０を経由してステップＳＢ１に戻る。
【００７０】
ステップＳＢ２でセンサーからの環境異常無しが判定され、ステップＳＢ３で環境異常が環境正常に回復した直後であることが判明したときは、ステップＳＢ５に移行する。ステップＳＢ５では、バッファリングにより入力データの区切りのよいところまで待ち、その後入力データの記録を開始する。このときの記録メディアは、オリジナル動作モードにおける選択動作と同じである（ステップＳＢ６）。オリジナル動作モードとは、装置自身が独自に記録メディアを選択するものであり、図５のステップＳＡ４，ＳＡ５，ＳＡ１０，ＳＡ１１，ＳＡ６，ＳＡ７，ＳＡ８のルーチンである。
【００７１】
即ち、Ｐｉｎｎｅｄが指定されていれば、フラッシュメモリ２０３へのデータ書き込みが行なわれる。Ｐｉｎｎｅｄ指定が無ければ、例えば、図５で説明したフローチャートに沿って、ＨＤ２０４またはフラッシュメモリ２０３へのデータ書き込みが行なわれる。
【００７２】
上記のようにセンサーの出力情報を利用する動作は、例えば図１に示す携帯端末１２００が無線を介してデータを取り込む状況のときに有効である。携帯端末１２００は、アンテナを有し、電波を媒体として、音楽情報、映像情報などをダウンロードできることが可能である。このような携帯端末１２００の場合、利用者は持ち歩きながら携帯端末１２００を使用することが多い。このような使用状況の下で、落下したり、異常に湿度、湿気の多い箇所で使用したりすると、ＨＤ２０４のデータ記録は不安定となる。したがって、このような使用環境のときは、センサーの出力状態を監視し、ＨＤ２０４のアクセスを禁止できるようにした。これにより装置の信頼性が向上する。
【００７３】
センサーが環境異常常態を検出したときは、図８のステップＳＢ５において、書き込みエラー処理を行い、再度最初から所定単位のデータの取り込みをやり直すようにしてもよい。
【００７４】
気圧センサー５１１の出力が利用されるときは、気圧が所定値Ａ１から所定値Ｂ１の範囲内であれば、環境異常とは判定しないように設定される。そしてこの範囲を越えたときに異常判定が行なわれる。また振動センサー５１２の出力が利用されるときも、加速度が所定値Ａ２から所定値Ｂ２の範囲内であれば、環境異常とは判定しないように設定される。そしてこの範囲を越えたときに異常判定が行なわれる。さらに温度センサー５１３の出力が利用されるときも温度が所定値Ａ３から所定値Ｂ３の範囲内であれば、環境異常とは判定しないように設定される。そしてこの範囲を越えたときに異常判定が行なわれる。
【００７５】
この発明は上記の実施例に限定されるものではない。図７に示した実施の形態と図４の実施の形態の組み合わせ、図７に示した実施の形態と図６に示した実施の形態の組み合わせであってもよい。
【００７６】
そして、使用環境により、図７に示したセンサー利用した実施の形態と、図４又は図６に示した実施の形態との切換えが得られるようにしてもよい。本発明の装置は、特に、アンテナからの信号取得を行うときは有効である。
【００７７】
図７に示した実施の形態であると、頻繁に動作モードが切換わる可能性がある。そこで、メディアアクセス判定部４１５の動作フローを図９に示すように設定してもよい。
【００７８】
図９において、ステップＳＣ１においてアンテナからの信号取得が開始されると、センサー出力情報受付が開始される（ステップＳＣ２）。センサーから異常情報があると（ステップＳＣ３）、要求及び判定結果メモリスイッチオン情報が記録される。以後は、図５に示しがフローチャートに移行する。図５のフローチャート全体を、図９ではステップＳＣ５として示している。ステップＳＣ３において、センサーからの異常情報が無い場合は、そのままステップＳＣ５に移行する。
【００７９】
データ書き込み処理ステップＳＡ１２において、終了コマンドが無いときは、ステップＳＣ６に移行する。ここではセンサーから正常情報が出力されているかどうかを判定する。正常情報が出力されてない場合は、ステップＳＣ１、ＳＣ２，ＳＣ３，ＳＣ４の系路が処理され、図５に示したようにフラッシュメモリへのデータ書き込みが実行される。
【００８０】
ステップＳＣ６において、センサーから正常情報が出力されているときは、ステップＳＣ７に移行する。ステップＳＣ７では、直前の異常情報出力した後から所定時間（例えば５分）経過しているかどうかを判定する。所定時間経過している場合には、ステップＳＣ８に移行し、異常状態から正常状態になったものとして判定し、要求及び判定結果メモリ４２２のスイッチ情報をオフにする。これにより、装置は、基本動作モードに移行する。
【００８１】
図１０は、図４、図６、図７の構成を合体した実施の形態であり、かつ、高周波受信部、ディスプレイを明記したものである。即ち、アンテナを含む高周波受信部５２１で受信された信号は、インターフェース３２２を介してコントローラ３１１へ取り込、記録媒体へ格納することができる。この格納ルールは先の実施形態で説明した通りである。また、記録媒体から読み出したデータは、コントローラ３１１、インターフェース３２３を介してディスプレイエンジン５２２にバッファリングされる。そしてディスプレイエンジン５２２から表示用のデータが、ディスプレイ５２３に入力される。この装置は、そのほかにも音楽再生ブロックが搭載されている。
【００８２】
上記の装置は、携帯用のオーディオプレーヤー、映像再生装置、ゲーム器などとして利用可能である。さらには、アプリケーションの増設により、パーソナル電子手帳、ノートブックなどとして利用可能である。
【００８３】
上記の説明では、ホスト装置１００と、記憶装置２００とが別体のごとく説明した。しかし、ホスト装置１００と記憶装置２００とが一体化されたパーソナル機器として構成されていてもよい。即ち図２の一点鎖線で囲む機器として構成されてもよい。このような場合、気圧センサー、振動センサー、温度センサーからの出力はホスト装置１００で処理されて、コントローラ３１１に処理結果が通知されてもよい。また高周波受信部５２１及び操作部１２１Aの出力もホスト装置１００で処理されるようにしてもよい。
【００８４】
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【図面の簡単な説明】
【００８５】
【図１】この発明が適用された装置１２００の使用例を示す説明図である。
【図２】この発明に係る一実施の形態の全体構成を示すブロック図である。
【図３】図２におけるフラッシュメモリの特徴を説明するために示した図である。
【図４】図２におけるフラッシュメモリインターフェースの機能及びコントローラ３１１の機能を説明するために示した図である。
【図５】図４の装置の一動作例を説明するために示したフローチャートである。
【図６】この発明の他の実施形態の全体構成を示すブロック図である。
【図７】この発明のさらに他の実施形態の全体構成を示すブロック図である。
【図８】図７の装置の動作例を説明するために示したフローチャートである。
【図９】この発明の更に他の実施の形態における動作を説明するためにしめしたフローチャートである。
【図１０】この発明の更にまた他の実施形態の全体構成を示すブロック図である。
【符号の説明】
【００８６】
１００…ホスト装置、２００…記憶装置、２０１…ＳＤＲＡＭ、２０２…ＬＳＩ、２０３…フラッシュメモリ、２０４…ハードディスク、３１１…コントローラ、３１２…ホストインターフェース、３１３…ＳＤＲＡＭインターフェース、３１４…ディスクインターフェース、３１５…フラッシュメモリインターフェース。
【図１】
2008250718.tif 000003
【図２】
2008250718.tif 000004
【図３】
2008250718.tif 000005
【図４】
2008250718.tif 000006
【図５】
2008250718.tif 000007
【図６】
2008250718.tif 000008
【図７】
2008250718.tif 000009
【図８】
2008250718.tif 000010
【図９】
2008250718.tif 000011
【図１０】
2008250718.tif 000012