(57)【特許請求の範囲】
【請求項１】
媒体を収納するセルを複数備えたセルユニットと、ホストからの指示に基づき媒体に対してデータの記録と再生を行うドライブと、前記セルユニットとドライブの間で媒体を搬送するアクセッサとから構成されるライブラリ装置に於いて、
前記ドライブ毎に設置された電源部の投入と切断を制御する電源制御部と、前記アクセッサが媒体をドライブに挿入した際の媒体排出不能なエラー検出時に、前記電源制御部に対するリカバリ動作の指示により、エラーを起したドライブの電源を切断した後に再投入してエラーを起したドライブを強制的に正常状態に復旧させるリカバリ制御部とからなるアクセッサ制御部を設けたことを特徴とするライブラリ装置。
【請求項２】
請求項１記載のライブラリ装置に於いて、前記リカバリ制御部は、ホストからリカバリ指示に基づき、前記電源制御部にドライブのリカバリ動作を指示することを特徴とする。
【請求項３】
請求項１記載のライブラリ装置に於いて、前記アクセッサ制御部は、電源の強制切断に代えてエラーを起したドライブをリセット動作により再立ち上げして復旧させることを特徴とするライブラリ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記録再生可能な光ディスクカートリッジ等の媒体を多数収容し、必要な媒体をアクセッサで取り出してドライブに搬送して記録再生するライブラリ装置に関し、特にドライブから媒体が排出できないエラー状態を回復するリカバリ制御を行うライブラリ装置に関する。
【０００２】
【従来の技術】
従来、ライブラリ装置は、大容量の記憶装置を安価に構築することができるため、バックアップとしての利用、又は画像データ等の膨大なデータを保存したハードディスクのようにオンライン的に利用される。
【０００３】
このような利用分野では、計算機センター及びサーバ等に接続して使用されるため、一般のパーソナルコンピュータでの個人的な利用と比較してより高い信頼性が要求される。ライブラリ装置の信頼性は、障害の発生原因を取り除くことは元より、障害発生時に迅速且つ確実に回復を図るリカバリ方法を考慮することにより、飛躍的に向上することができる。
【０００４】
このようなライブラリ装置は、例えば特開平８−３６８２３号のものが知られている。このライブラリ装置は、上位のホストよりセルからドライブへ媒体を搬送するムーブコマンドをアクセッサ制御部が受け取ると、アクセッサがセルからドライブに媒体を搬送して挿入する。
【０００５】
この時、ドライブから挿入完了の通知が得られなかった場合、アクセッサはドライブに媒体を排出するように要求し、媒体の排出後に再び媒体を挿入することによってリカバリを実施している。
【０００６】
またホストコンピュータはムーブコマンドを発行した後、ドライブに挿入された記録媒体にアクセスするためにドライブに対してライトコマンド又はリードコマンドを発行する。このとき、ドライブからＳＣＳＩインタフェースを通じてそのコマンドのエラー報告があった場合、ホストコンピュータはドライブにエラーのあったコマンドを再発行することによりリカバリを実施している。
【０００７】
このようにアクセッサ制御部及び上位のホストの各々で、ライブラリ装置の障害発生に対しリカバリを実施することにより、障害率を低減している。
【０００８】
【発明が解決しようとする課題】
しかしながら、従来のリカバリ方法ではドライブが媒体を排出できないような状態に陥っているケース、またはコマンド再発行でも復旧できないような状態に陥っているケースでは、リカバリを実施できないし、実施する意味がないことになる。
【０００９】
このようなリカバリ不能なドライブが媒体を排出できない状態に陥る障害は、故障が偶発的なものであることから常に存在し、また装置開発時に見つけることができなかった非常に発生頻度の少ないバグにて誘発される。更に、ドライブに媒体を挿入する時に発生する静電気により、媒体排出不能な障害状態に陥ることがある。
【００１０】
このような障害状況は、近年、ライブラリ装置に組み込むドライブのコストダウンのため、ライブラリ装置専用の信頼性の高いドライブを開発せず、価格の安いパーソナルコンピュータ用のドライブをライブラリ装置に搭載するようになったこと等の影響で増加する傾向にある。
【００１１】
本発明は、このような問題点に鑑みてなされたもので、媒体を排出できない障害状態であっても確実にリカバリし、汎用のドライブを搭載した場合の障害率を低減して信頼性を高めるようにしたライブラリ装置を提供することを目的とする。
【００１２】
【課題を解決するための手段】
図１は本発明の原理説明図である。
【００１３】
まず本発明のライブラリ装置は、図１（Ａ）のように、媒体を収納するセル１８−１〜１８−ｎを複数備えたセルユニット１８と、ホスト１１からの指示に基づき媒体に対してデータの記録と再生を行うドライブ３６と、セルユニット１８とドライブ３６の間で媒体を搬送するアクセッサ３０とから構成される。
【００１４】
このようなライブラリ装置につき本発明は、アクセッサ３０が媒体をドライブ３６に挿入した際のエラー検出時に、エラーを起したドライブ３６を強制的に正常状態に復旧させる機能を備えたアクセッサ制御部６２を設けたことを特徴とする。
【００１５】
アクセッサ制御部６２は、エラーを起したドライブ３６の電源を切断した後に再投入して復旧させる。このためアクセッサ制御部６０は、ドライブ３６毎に設置された電源部６６の投入と切断を制御する電源制御部６４と、アクセッサ３０が媒体をドライブ３６に挿入した際のエラー検出時に、電源制御部６４に対するリカバリ動作の指示により、エラーを起したドライブ３６の電源を切断した後に再投入して復旧させるリカバリ制御部６２とを備える。
【００１６】
特に、リカバリ制御部６２はドライブ３６の媒体を排出できない媒体排出不能エラーを検出した場合、電源制御部６４にリカバリ動作を指示する。
【００１７】
リカバリ制御部６２はドライブ３６の媒体排出不能エラーを検出した場合、ドライブ３６に媒体排出を指示した後に、アクセッサ３０に媒体の再投入を指示してリストア動作を行わせ、リストア動作でもエラーを回復できない場合に電源制御部６４にリカバリ動作を指示する。
【００１８】
このようにドライブに媒体をロードする挿入時に、通常のリトライ動作では回復しないエラーを起こしたドライブに対して、電源の切断と投入を実施し、ドライブを再立ち上げすることができるので、媒体を排出できないような状態に陥っているケースでも確実にリカバリすることができる。
【００１９】
リカバリ制御部６２はホスト１１からリカバリ指示に基づき、電源制御部６４にドライブ３６のリカバリ動作を指示する。この場合、リカバリ制御部６２はホスト１１からのリトライ指示に基づき、エラーを検出したドライブ３６に対する媒体搬送と投入または排出のアクセッサによるリトライ動作を実行し、リトライ動作の失敗後のホスト１１からのリカバリ指示に基づき、電源制御部６４にリカバリ動作を指示する。
【００２０】
このため、エラーを起こしているドライブにホストがアクセスするときに、ホストの指示によりドライブの電源切断、再投入をアクセッサを介して指示することができ、コマンド再発行でも復旧できない媒体の排出不能等のようなケースでも確実にリカバリを実施することができる。
【００２１】
更に、ドライブ毎に投入と切断を制御する電源制御部を設けてリカバリ制御することで、ドライブのインタフェースに制約されず、ライブラリ装置のドライブを他の機種に変更する場合でも、容易に載せ替えることができる。
【００２２】
本発明の別の形態にあっては、図１（Ｂ）のように、アクセッサ制御部６２は、エラーを起したドライブ３６のリセット動作により再立ち上げして復旧させることを特徴とする。
【００２３】
この場合、アクセッサ制御部６０は、ドライブ３６毎に設けられインタフェース５２のリセット信号をドライブ３６に出力するインタフェース用リセット回路部９４と、インタフェース用リセット回路部９４を経由してドライブ３６にリセット信号を出力するリセット制御部９２と、アクセッサ３０が媒体をドライブ３６に挿入した際のエラー検出時に、リセット制御部９２に対するリカバリ動作の指示により、エラーを起したドライブに対するリセット信号をオン，オフして復旧させるリカバリ制御部６２とを備える。
【００２４】
このため、複数のドライブがＳＣＳＩインターフェース等のようにディジーチェーン接続されている場合、エラーを起こした特定のドライブに対しインタフェース用リセット機能を利用してリセット信号のオン，オフを行って再立ち上げを実施でき、媒体を排出できないような状態に陥っているケースでも確実にリカバリすることができる。
【００２５】
また既存のインターフェース上に備えられたリセット信号を使用するため、ドライブに新たな機能を追加することなく簡単にリセット信号によるリカバリ制御が実現できる。
【００２６】
更に本発明の別の形態にあっては、図１（Ｃ）のように、ドライブ３６は外部からのリセット信号によるリセット回路１０４を備えることを前提に、アクセッサ制御部６０は、ドライブ３６毎に設けられたリセット制御部９２と、アクセッサ３０が媒体をドライブに挿入した際のエラー検出時にリセット制御部９２に対するリカバリ動作の指示により、エラーを起したドライブ３６に対するリセット信号をオン，オフして復旧させるリカバリ制御部６２とを備える。
【００２７】
この場合には、ホストからドライブに対するＳＣＳＩインターフェース等とは別に、エラーを起こした特定のドライブに対し直接にリセット信号のオン，オフを行って再立ち上げを実施でき、媒体を排出できないような状態に陥っているケースでも確実にリカバリすることができる。また元々ドライブに備わっているリセット機能を利用するため、ライブラリ装置側のハード構成を単純化してコストダウンできる。
【００２８】
ここでリカバリ制御部６２は、ドライブ３６から媒体を排出できなくなるエラーを検出した場合、ドライブ３６に媒体排出を指示した後にアクセッサ３０に媒体の再投入を指示してリストア動作を行わせ、リストア動作後に媒体なしエラーを検出した場合、リセット制御部９２にリカバリ動作を指示する。
【００２９】
またリカバリ制御部６０は、インタフェースのリセット機能を利用する場合及び直接リセットを掛ける場合のいずれについても、ホスト１１からリカバリ指示に基づき、リセット制御部９２にリカバリ動作を指示することもできる。
【００３０】
このため、エラーを起こしているドライブの媒体にホストがアクセスする時に、アクセッサを経由したリセット信号のオン，オフにより、エラー状態にあるドライブの再立ち上げができ、コマンド再発行では回復できない状態に陥っているケースでも確実にリカバリできる。
【００３１】
【発明の実施の形態】
図２は本発明のライブラリ装置の外観である。ライブラリ装置１０の本体１０−１は箱型形状を有し、例えば袖無しディスクの下部に据え置きできる程度のサイズを有する。装置本体１０−１の前面上部には、操作パネル表示部やメッセージ表示部、各種の表示灯及び操作スイッチが設けられている。操作パネル１２の下には投入排出ドア１４が設けられる。
【００３２】
投入排出ドア１４は操作パネル１２のドアオープンスイッチを操作した時に開かれ、ドアを開いた状態で、媒体を収納しているカートリッジ１６を挿入する。カートリッジ１６には例えば光学的に読み書き可能な光ディスクが媒体として収納されている。
【００３３】
投入排出ドア１４の下には扉を備えたカートリッジ収納部１８が設けられている。カートリッジ収納部１８はオペレータがライブラリ装置１０に投入するカートリッジまたはライブラリ装置１０から排出したカートリッジを入れておくために使用する。
【００３４】
図３は本発明のライブラリ装置１０の内部構造を、装置本体１０−１のケース部分を破断して示している。装置本体１０−の内部には、カートリッジを収納するためのセルユニットとして機能するセルドラム１８が配置されている。セルドラム１８はモータ２０によるベルトの駆動で水平回りに回転する。セルドラム１８にはカートリッジ１６を収納するセルが縦方向に並んで配置されている。
【００３５】
セルドラム１８の上部には同軸に投入排出部２２が設けられる。投入排出部２２は矩形の部材であり、両端にカートリッジ１６を収納する受け皿２６−１，２６−２を備えている。投入排出部２２は、その中央をクラッチ部２４を介してセルドラム１８の上部の回転軸に連結されている。クラッチ部２４の接続動作を行うと、投入排出部２２はセルドラム１８と一体に回転する。クラッチ部２４の切り離し動作を行うと、セルドラム１８が回転しても投入排出部２２は停止している。
【００３６】
セルドラム１８の横にはアクセッサ３０が配置されている。アクセッサ３０はレール３８に沿って上下に昇降自在に設けられている。レール３８の下部にはモータ３２が設置され、モータ３２の回転をタイミングベルト３５に伝達している。タイミングベルト３５は、上部を破断しているがループ状に形成されたベルトであり、アクセッサ３０の側面に固定され、反対側にバランスウェイト３４を装着している。したがってモータ３２によりタイミングベルト３５を回転することで、レール３８に沿ってアクセッサ３０を上下に移動することができる。
【００３７】
セルドラム１８の下部にはカートリッジ１６の記録再生を行うためのドライブ３６−１，３６−２が設置されている。この実施形態にあっては２台のドライブ３６−１，３６−２を設けているが、ドライブの数は必要に応じて適宜に増加できる。
【００３８】
オペレータが投入排出部１４を開いた状態でカートリッジ１６を投入すると、投入されたカートリッジ１６は投入排出部２２のオペレータ側に位置している受け皿２６−１に収納される。カートリッジ投入が済むと、クラッチ部２４によるセルドラム１８と投入排出部２２の接続が行われ、モータ２０の回転駆動でセルドラム１８と一体に投入排出部２２が１８０°回転したアクセッサ３０に向かう位置に回転する。
【００３９】
投入排出部２２の回転が終了するとクラッチ部は切り離される。続いてアクセッサ３０が投入排出部２２の取出し位置に上昇し、投入されたカートリッジを取り出す。このときセルドラム１８は投入先となるセルを含むセル列の位置がアクセッサ３０に向かう位置となるように回転される。
【００４０】
セルドラム１８の回転が終了すると、アクセッサ３０に向かい合うセル列の特定のセル位置にアクセッサ３０が移動し、保持しているカートリッジを目的とするセルに投入する。これによって、外部からセルドラム１８に対する一連のカートリッジ投入処理が終了する。
【００４１】
カートリッジの投入はドライブ３６−１，３６−２のいずれかに対し直接行うこともある。またセルドラム１８とドライブ３６−１，３６−２との間でカートリッジを移動する場合もある。更に、セルドラム１８またはドライブ３６−１，３６−２からのカートリッジの外部への排出は投入の動作と逆の動作となる。
【００４２】
図４は、図３のライブラリ装置１０に内蔵したアクセッサ３０によるドライブ３６−１に対するカートリッジ１６の投入，排出の説明図である。
【００４３】
図４（Ａ）は、セルドラムの下部に位置するドライブ３６−１に向かい合う位置にアクセッサ３０が移動して停止した状態であり、ドライブ３６−１には既にカートリッジ１６が投入されている。
【００４４】
アクセッサ３０はカートリッジ１６を保持するためのピッカ４０を内蔵している。ピッカ４０はスライダ４２を有し、スライダ４２はベルト４６により左右方向に移動できる。ベルト４６は両端でプーリ４８，５０に巻き付けられており、ベルト４６にスライダ４２が一点で連結されることで、例えばベルト４６の右回転で前進し、左回転で後退する。スライダ４２の前方両側にはピッカアーム４４−１，４４−２が開閉自在に装着されている。
【００４５】
図４（Ａ）の状態でアクセッサ３０のピッカ４０によりドライブ３６−１に挿入しているカートリッジ１６を取り出したい場合には、ベルト４６の右回転でスライダ４２を前進させ、図４（Ｂ）のようにドライブ３６−１より飛び出しているカートリッジ１６の両側にピッカアーム４４−１，４４−２を押し込み、カートリッジ１６の嵌合溝にピッカアーム４４−１，４４−２の先端内側の爪を嵌め入れる。
【００４６】
このようにカートリッジ１６をピッカアーム４４−１，４４−２で掴んだ状態でベルト４６を左回転することによりスライダ４２が後退し、ドライブ３６−１からカートリッジ１６を引き外してアクセッサ３０に保持することができる。
【００４７】
一方、アクセッサ３０のピッカ４０に保持しているカートリッジ１６をドライブ３６−１に挿入する場合には、図４（Ｂ）のようにピッカ４０に保持した状態でベルト４６の右回転により前進してカートリッジ１６をドライブ３６−１に挿入し、この状態でピッカアーム４４−１，４４−２を外側に開いて、この状態でベルト４６を左回転してピッカ４０を後退させることになる。
【００４８】
図５は、カートリッジがドライブから排出できないようなエラーに対し、電源の遮断と再投入でリカバリする本発明の第１実施形態のブロック図である。
【００４９】
図５において、本発明のライブラリ装置１０は、ホスト１１に対し例えばＳＣＳＩインタフェースバス５２によりＳＣＳＩ入力コネクタ５４で接続され、ＳＣＳＩインタフェースバス５２はライブラリ装置１０を経由した後、ＳＣＳＩ出力コネクタ５６からＳＣＳＩインタフェースバス５２により他のデバイス７４，７５も接続している。
【００５０】
ライブラリ装置１０には、例えば２台のドライブ３６−１，３６−２が設置されており、ドライブ３６−１，３６−２に対してはアクセッサ３０が配置され、セルドラム１８のセル１８−１〜１８−ｎとの間でカートリッジの移動を行う。アクセッサ３０はモータ３２によるタイミングベルト３５の駆動でセルドラム１８及びドライブ３６−１，３６−２に対する位置決めが行われる。
【００５１】
アクセッサ３０を制御するため、ライブラリ装置１０にはアクセッサ制御部６０が設けられる。アクセッサ制御部６０は、内部ＳＣＳＩインタフェースバス５５に対しドライブ３６−１，３６−２と共に接続され、ホスト１１からのカートリッジ移動命令（以下「ムーブコマンド」という）に基づいて、カートリッジのセルドラム１８の特定セルとドライブ３６−１，３６−２の移動を制御する。
【００５２】
ここでアクセッサ制御部６０がホスト１１からムーブコマンドを受け付けた場合の動作は次のようになる。
【００５３】
まずホスト１１からのムーブコマンドは、移動元アドレスと移動先アドレスをコマンドパラメータとして持っている。この移動先及び移動元アドレスは、ライブラリ装置１０のセル１８−１〜１８−ｎ、及びドライブ３６−１，３６−２、更にアクセッサ３０のそれぞれに予め割り当てたセルアドレスを使用する。
【００５４】
ホスト１１からのムーブコマンドには、セルドラム１８の特定のセルからドライブ３６−１，３６−２にカートリッジを移動するムーブコマンドと、逆にドライブ３６−１，３６−２からカートリッジを排出されてセルドラム１８の特定セルに戻すムーブコマンドの２つがある。
【００５５】
例えばセルドラム１８の特定セルからドライブ３６−１にカートリッジを移動するムーブコマンドのアクセッサ制御部６０による動作は、次のＦｒｏｍ動作、セレクト動作、Ｔｏ動作、リストア動作の４段階の動作で行われる。
【００５６】
（１）Ｆｒｏｍ動作
ホストからのカートリッジのムーブコマンドを受け付けると、セルドラム１８を移動元アドレスを含むカートリッジのセル列がアクセッサ３０に向かう位置に回転させ、同時にアクセッサ３０も上下方向に駆動してセルドラム１８の移動元のカートリッジ収納セルの位置にアクセッサ３０を位置決めする。
【００５７】
（２）セレクト動作
アクセッサ３０のピッカを、図４（Ａ）（Ｂ）のように駆動してカートリッジを取り出し、アクセッサ３０に保持する。
【００５８】
（３）Ｔｏ動作
カートリッジを保持したアクセッサ３０を駆動し、移動先のセルアドレスとなるドライブ３６−１または３６−２に移動する。
【００５９】
（４）リストア動作
アクセッサ３０のピッカを駆動して、カートリッジを移動先セルアドレスとなるドライブ３６−１または３６−２に挿入する。
【００６０】
ムーブコマンドを発行したホスト１１は、アクセッサ制御部６０のステータスをチェックしており、所定時間のタイムアウト前に完了ステータスを確認すると、カートリッジが挿入されたドライブ３６−１または３６−２に対しデータを書き込んだり読み出したりするためのコマンド、即ちライトコマンドあるいはリードコマンドを発行する。
【００６１】
このようなホスト１１によるカートリッジのライトまたはリードが終了すると、ホスト１１はドライブ３６−１，３６−２からセルドラム１８の特定セルにカートリッジを戻すムーブコマンドを発行し、アクセッサ３０をドライブ３６−１，または３６−２に位置決めするフローム動作、ドライブ３６−１または３６−２からピッカを駆動してカートリッジを取り出して保持するセレクト動作、続いてセルドラム１８までアクセッサ３０が移動し、同時にセルドラム１８が回転駆動して収納先のセルをアクセッサ３０側に向け、アクセッサ３０を収納先のセルに位置決めするトゥー動作、最終的にアクセッサ３０のピッカを駆動してカートリッジをセルドラム１８の移動先のセルに挿入するリストア動作を行う。
【００６２】
更に、図３に示したように、カートリッジ１６を投入排出ドア１４からセルドラム１８やドライブ３６−１または３６−２に移動する動作、あるいはセルドラム１８やドライブ３６−１，３６−２から直接、投入排出ドア１４にカートリッジを移動する動作も同様にして行われる。
【００６３】
アクセッサ制御部６０とドライブ３６−１，３６−２は、ドライブインタフェースバス７２−１，７２−２により接続されており、制御信号や検出信号のやり取りができる。
【００６４】
このようなライブラリ装置１０につき、本発明の第１実施形態にあっては、アクセッサ制御部６０にリカバリ制御部６２と電源制御部６４を設け、リカバリのための電源制御のため、ドライブ３６−１，３６−２に対応して個別にドライブ電源部６６−１，６６−２を設けている。このため、アクセッサ３０に対しては独立にアクセッサ電源部６８が設けられる。
【００６５】
リカバリ制御部６２は、アクセッサ３０がカートリッジをドライブ３６−１，３６−２に挿入した際の媒体排出不能なエラーの検出時に電源制御部６４に対するリカバリ動作の指示により、エラーを起こしたドライブ３６−１または３６−２の電源を切断した後に再投入するリカバリ制御を行わせる。
【００６６】
リカバリ制御部６２よりリカバリ動作の指示を受けた電源制御部６４は、例えばドライブ３６−１のエラーであった場合にはドライブ電源部６６−１に電源制御信号Ｅ１１を出力し、ドライブ３６−１に対する電源供給を遮断した後に再投入することで、媒体を排出できない状態に陥っているエラーを起こしているドライブ３６−１を電源再投入より復旧させる。
【００６７】
またドライブ３６−２で媒体を排出できないようなエラーが生じている場合には、リカバリ制御部６２からのリカバリ動作の指示により電源制御部６４はドライブ電源部６６−２に電源制御信号Ｅ１２を出力し、同じくエラーを起こしているドライブ３６−２に対し電源を切断した後に再投入することでエラーを復旧させる。
【００６８】
アクセッサ制御部６０のリカバリ制御部６２によるドライブ３６−１，３６−２の媒体排出不能なエラー検出は、ドライブインタフェースバス７２−１，７２−２より送られてくるカートリッジの検出を示すロック信号Ｅ２１，Ｅ２２で認識できる。
【００６９】
即ち、アクセッサ３０がドライブ３６−１，３６−２にカートリッジを投入すると、ドライブ３６−１，３６−２に内蔵されたセンサ、例えばカートリッジの挿入でオフとなる光スイッチによる検出で正常にカートリッジ投入が検出されると、アクセッサ制御部６０に対するロック信号Ｅ２１，Ｅ２２がオンとなり、媒体の正常投入をアクセッサ制御部６０で認識できる。
【００７０】
しかしながら、ドライブ３６−１，３６−２にアクセッサ３０によりカートリッジを投入しても、静電気等の影響で、カートリッジを検出したことを示すロック信号Ｅ２１，Ｅ２２がオンとならない場合がある。この場合、リカバリ制御部６２は、媒体投入を指示してもロック信号Ｅ２１，Ｅ２２がオンとならないことで、ドライブ３６−１，３６−２のエラーを認識できる。
【００７１】
この場合、リカバリ制御部６２は、電源制御部６４によるドライブ３６−１，３６−２に対する電源遮断と再投入によるリカバリ制御に先立って、ドライブ３６−１，３６−２に対しイジェクト信号Ｅ３１，Ｅ３２をオンしてカートリッジの排出動作を行わせ、アクセッサ３０でドライブ３６−１または３６−２からカートリッジをピックアップするセレクト動作を行った後に再度、ドライブ３６−１または３６−２に挿入するリストア動作を行いう。
【００７２】
それでもカートリッジ検出を示すロック信号Ｅ２１，Ｅ２２がオンとならなかった場合に、電源制御部６４によるドライブ電源部６６−１，６６−２の制御で、エラーを起こしているドライブ３６−１，３６−２に対する電源供給を遮断した後に再投入するリカバリ制御を行う。
【００７３】
またアクセッサ制御部６０のリカバリ制御部６２は、ホスト１１からの電源遮断と再投入を行うためのリカバリコマンドを受けた際にも、電源制御部６４に対するリカバリ制御の指示で、ドライブ電源部６６−１，６６−２によりドライブ３６−１，３６−２に対する電源供給を遮断した後に再投入するリカバリ動作を行わせる。
【００７４】
即ちホスト１１にあっては、ドライブ３６−１または３６−２にムーブコマンドによってカートリッジを挿入した後に、リードコマンドまたはライトコマンドを発行する。
【００７５】
しかし、このときドライブ３６−１，３６−２において媒体を挿入したが静電気等の影響でカートリッジ検出を示すロック信号がオンとならないエラー状態にあることをステータス応答から認識した場合、リードコマンドまたはライトコマンドを再発行し、それでもドライブ側のエラーが解消されない場合には、ライブラリ装置１０のアクセッサ制御部６０に対しリカバリ制御のためのリカバリコマンド、即ち電源切断，投入のための指示を行う。
【００７６】
このホスト１１からのリカバリコマンドに基づき、アクセッサ制御部６０のリカバリ制御部６２及び電源制御部６４は、エラーを起こしているドライブ側のドライブ電源部６６−１，６６−２を制御してドライブ３６−１，３６−２に対する電源供給の遮断と再投入を行って復旧させる。
【００７７】
その後に、ホスト１１はリードコマンドまたはライトコマンドを再発行し、リカバリ動作で媒体を排出できないエラーが解消し、正常にカートリッジ検出を示すロック信号のオン状態のステータス応答が得られていれば、リカバリ動作によりエラーが解消されたものとしてリードコマンドまたはライトコマンドに基づくアクセスを実行する。
【００７８】
もし電源切断，投入指示によるリカバリ動作を行った後のリードコマンドもしくはライトコマンドの再発行でもエラー状態が回復できない場合には、ドライブの故障と判断して異常終了とする。
【００７９】
図６は、図５のアクセッサ制御部７０のハードウェア構成のブロック図である。
【００８０】
図６において、アクセッサ制御部６０には、ＭＰＵ７６、ＲＯＭ７８、ＲＡＭ８０、ドライブＩＦ回路８２、ＳＣＳＩプロトコルコントローラ８４、モータ駆動回路８６、タコカウンタ回路８８及び電源制御回路９０が設けられる。ＭＰＵ７６は演算処理を行う制御部であり、ＲＯＭ７８に格納された制御プログラムを実行し、必要に応じてＲＡＭ８０に制御情報を記憶する。
【００８１】
上位のホストから発行されたカートリッジ移動のためのムーブコマンドは、内部ＳＣＳＩインタフェースバスを通じてＳＣＳＩプロトコルコントローラ８４により受信され、ムーブコマンドのコマンドパラメータ即ち移動元セルアドレスと移動先セルアドレスに基づき、ＭＰＵ７６はアクセッサ３０によるカートリッジの搬送動作、即ちＦｒｏｍ動作、セレクト動作、ｏ動作、リストア動作の４段階に分かれた搬送動作を行う。
【００８２】
この搬送動作におけるドライブの位置までアクセッサによりカートリッジを移動するＴｏ動作において、モータ駆動回路８６により駆動されるモータ３２の回転によるアクセッサ３０の移動距離をタコカウンタ回路８８で認識しながらドライブのカートリッジ挿入位置にアクセッサ３０を位置決めする制御を行う。
【００８３】
アクセッサ３０がドライブ３６−１又は３６−２に位置決めされると、ドライブＩＦ回路８２からのドライブインタフェースバス７２−１，７２−２によってドライブの状態確認と制御指示を行い、カートリッジをドライブに挿入するかまたは排出する動作を行う。
【００８４】
このようなアクセッサ制御部６０のハードウェア構成において、図６のリカバリ制御部６２の機能及び電源制御部６４の機能はＭＰＵ７６によるＲＯＭ７８の制御プログラムの実行で実現される。
【００８５】
図７は、図５の第１実施形態におけるアクセッサ制御部６０によるリカバリ処理のフローチャートである。まずステップＳ１でアクセッサ３０による媒体としてのカートリッジの例えばドライブ３６−１に対する挿入を行うリストア動作が終了すると、ステップＳ２でドライブ３６−２から媒体検出信号となるロック信号Ｅ２１がオンか否かをチェックする。このロック信号Ｅ２１が媒体検出を示す正常なオン状態にあれば、一連の媒体搬送処理を正常終了とする。
【００８６】
このときドライブ３６−１にカートリッジを挿入しているにも関わらず静電気等の影響でカートリッジ検出を示すロック信号Ｅ２１がオンとならなかった場合には、ステップＳ３に進み、ドライブ３６−１に媒体排出を指示するためのイジェクト信号Ｅ３１をオンする。
【００８７】
このため、ドライブ３６−１はステップＳ１で挿入を完了したカートリッジを排出する排出動作を行う。このとき媒体検出を示すロック信号Ｅ２１はエラーによりオフとなっていることから、ステップＳ５に進み、ドライブ３６−１に対し媒体排出の終了指示としてイジェクト信号Ｅ３１をオフする。
【００８８】
次にステップＳ６でアクセッサ３０によりドライブ３６−１から排出された媒体をピックアップするセレクト動作を行い、続いてステップＳ７でアクセッサ３０で再びカートリッジをエラーを起こしたドライブ３６−１に挿入するリストア動作を行う。
【００８９】
この媒体の排出と再投入によるリトライ動作で、もし一時的な障害で媒体検出を示すロック信号Ｅ２１がオフであった場合には、カートリッジの再投入によってドライブ３６−１から媒体検出を示すロック信号Ｅ２１がオンとなり、リトライ成功で媒体搬送を正常終了とする。
【００９０】
しかしながら、エラーを起こしたドライブ３６−１から媒体を排出させ再投入しても媒体検出を示すロック信号２１がオフであった場合には、ステップＳ９に進み、エラーを起こしているドライブ３６−１に対する電源供給を切断するため、パワー制御信号Ｅ１１をオフする。
【００９１】
続いてステップＳ１０で、の再投入のため、一度オフしたパワー制御信号Ｅ１１をオンする。このステップＳ９，Ｓ１０におけるエラーを起こしているドライブ３６−１に対する電源供給の遮断と再投入により、静電気等の影響でオフしていたロック信号Ｅ２１が電源再投入による初期化処理の際、カートリッジ挿入を検知してオンとなる。
【００９２】
このため、ステップＳ１１で電源切断と再投入後にドライブ３６−１からの媒体検出を示すロック信号Ｅ２１をチェックし、ロック信号Ｅ２１がオンであれば媒体搬送を正常終了とする。また電源の切断と再投入を行ってもドライブ３６−１からの媒体検出を示すロック信号Ｅ２１がオンせずにオフのままであった場合には、ドライブ３６−１に電源の制御では回復できない故障が起きているものと判断し、異常終了とし、必要なエラー処理を行う。
【００９３】
図８は、図４のアクセッサ制御部６０におけるホスト１１からのコマンドに基づくリカバリ処理のフローチャートである。
【００９４】
図６のライブラリ装置で例えばドライブ３６−１にカートリッジが挿入されている状態でステップＳ１のようにリードコマンドを発行する。このリードコマンドの発行に続いて、ステップＳ２でドライブのエラー検出の有無をチェックしている。
【００９５】
この場合のドライブのエラー検出は、例えばリードコマンドに対するコマンド終了ステータスのタイムアウトや、ドライブにおいてカートリッジ挿入を検出するロック信号Ｅ２１がオンとならずに媒体排出不能なエラーを生じている場合等である。
【００９６】
ステップＳ２でドライブのエラーを検出すると、ステップＳ３に進み、リードコマンドを再発行し、ステップＳ４でドライブ３６−１のエラー検出をチェックする。この２回目のリードコマンド再発行について、ドライブ３６−１でエラー検出があれば、ステップＳ５でリカバリコマンドとして電源切断，投入指示をアクセッサ制御部６０に対し行う。
【００９７】
この電源切断，投入指示のためのリカバリコマンドを受けたアクセッサ制御部６０は、ステップＳ１０１で、エラーを起こしているドライブ３６−１の電源を遮断するためのパワー制御信号Ｅ１１のオフを行い、続いてステップＳ１０２で、エラーを起こしているドライブ３６−１の電源を再投入するためのパワー信号Ｅ１１のオンを行い、ステップＳ１０３でホスト１１に対し電源切断，投入完了報告を行う。
【００９８】
このアクセッサ制御部６０側からの完了報告を受けてホスト１１は、ステップＳ６でリードコマンドを再発行し、ステップＳ７でドライブ３６−１のエラー検出がなければ、一連のリカバリ処理を正常終了とする。
【００９９】
しかしながら、電源の切断と再投入によるリカバリ制御でもドライブ３６−１のエラーが回復されていない場合には、ドライブ３６−１に電源再投入では解消できない故障が起きているものとして異常終了とする。
【０１００】
尚、図８のフローチャートにあってはホスト１１からリードコマンドを発行する場合を例にとっているが、ライトコマンドを発行する場合についても全く同様である。
【０１０１】
図９は、本発明のライブラリ装置におけるリカバリ制御の第２実施形態のブロック図であり、この第２実施形態にあってはＳＣＳＩインタフェースのリセット機能を利用してドライブのエラーをリカバリするようにしたことを特徴とする。
【０１０２】
図９において、アクセッサ制御部６０には第１実施形態と同様、リカバリ制御部６２が設けられる。リカバリ制御部６２はアクセッサ３０によりドライブ３６−１，３６−２にカートリッジを挿入した際に得られるロック信号Ｅ２１，Ｅ２２がオンとならなかった場合にドライブのエラーと判断し、ドライブ３６−１，３６−２からカートリッジを排出させて再投入するセレクト動作及びリストア動作を行い、それでもエラーが解消しない場合にリセット制御部９２に対しドライブ３６−１，３６−２をリセット制御してエラーを回復させるリカバリ処理を行わせる。
【０１０３】
このリセット制御部９２によるドライブ３６−１，３６−２のリセット制御のため、この第２実施形態にあっては、ＳＣＳＩインタフェースバスに設けられているリセット回路部９４−１，９４−２を利用している。
【０１０４】
図１０は、図９のライブラリ装置１０に設けたリセット回路部９４−１の回路図である。ライブラリ装置１０内のＳＣＳＩインタフェースバス５２の中にはリセット線９８が含まれており、リセット回路９４−１を経由してドライブ３６−１側にバス接続が行われている。
【０１０５】
リセット回路９４−１は、ＳＣＳＩバス５２の中のリセット制御線９８から分岐したリセット制御線９８−１をＯＲ回路１００の一方に入力している。このＯＲ回路１００の他方の入力には、図９のアクセッサ制御部６０からのドライブ専用リセット制御線９６−１が接続される。
【０１０６】
このためＯＲ回路１００は、ＳＣＳＩインタフェースバス５２のリセット制御線９８−１からのリセット信号Ｅ５１またはドライブ専用リセット制御線９６−１からのリセット信号Ｅ４１のいずれかを受けたときに、ドライブ３６−１のＳＣＳＩインタフェースバス側のリセット制御線９８−２にリセット信号Ｅ６１を出力する。
【０１０７】
この図１１のリセット回路９４−１は、図９のドライブ３６−２側のリセット回路９４−２についても同様であり、アクセッサ制御部６０からのリセット信号Ｅ２１はリセット回路部９４−２を経由してドライブ３６−２に対しＳＣＳＩインタフェースバスのリセット信号として供給され、インタフェースリセット信号に基づくドライブ側のリセット動作が行われる。
【０１０８】
図１１は、図９のアクセッサ制御部６０のハードウェア構成の回路図である。このアクセッサ制御部６０は、ＭＰＵ７６、ＲＯＭ７８、ＲＡＭ８０、ドライブＩＦ回路８２、ＳＣＳＩプロトコルコントローラ８４、モータ駆動回路８６及びタコカウンタ回路８８を備え、この点は図６の第１実施形態と同じである。これに加えて図１１にあってはリセット制御部９２が設けられ、リセット制御部９２からはドライブ専用リセット制御線９６−１，９６−２によってリセット信号Ｅ４１，Ｅ４２が出力可能となっている。
【０１０９】
図１２は、図９の第２実施形態におけるＳＣＳＩインタフェースのリセット機能を利用したアクセッサ制御部によるリカバリ処理のフローチャートである。図１２のフローチャートにおいて、ステップＳ１〜Ｓ８までの処理は、図７の第１実施形態の処理と同じである。
【０１１０】
そしてステップＳ８で、ドライブ３６−１，３６−２にカートリッジを再度挿入した状態で媒体検出を示すロック信号Ｅ２１，Ｅ２２がオンにならなければ、ステップＳ９でＳＣＳＩインタフェースバスのリセット回路部９４−１，９４−２に対するドライブ専用のリセット信号Ｅ４１，Ｅ４２をオンし、ステップＳ１０でリセット信号Ｅ４１，Ｅ４２をオフするリカバリ動作を行わせる。
【０１１１】
このリセット信号Ｅ４１，Ｅ４２のオン，オフによって、媒体を排出できない状態に陥っているドライブ３６−１，３６−２のエラーが回復できれば、ステップＳ１１でドライブ３６−１，３６−２からの媒体検出を示すロック信号Ｅ２１，Ｅ２２がオンとなり、リカバリ成功で正常終了となる。
【０１１２】
またリセット信号をオン，オフしても、ドライブからのロック信号Ｅ２１，Ｅ２２がオンにならない場合には、ドライブ側にリセット信号のオン，オフ制御では回復できない故障が起きているものとして異常終了とする。
【０１１３】
図１３は、図９の第２実施形態におけるホスト１１からリカバリ制御のためのリセット指示、即ちリセットコマンドを発行することによるリカバリ処理のフローチャートである。
【０１１４】
図１３において、ホスト１１のステップＳ１〜Ｓ４及びステップＳ６，Ｓ７の処理は、図８の第１実施形態と同じであるが、ステップＳ５でホスト１１がリカバリ制御のためにアクセッサ制御部６０に対しリセット指示のためにリセットコマンドを発行する点が異なる。
【０１１５】
アクセッサ制御部６０にあっては、ステップＳ１０１でホスト１１からのリセットコマンドに基づき、ドライブ３６−１，３６−２に対するリセット信号Ｅ４１，Ｅ４２をオンし、次にステップＳ１０２でドライブ３６−１，３６−２に対するリセット信号Ｅ４１，Ｅ４２をオフし、ステップＳ１０３でホスト１１に対しリセット完了報告を行い、リセット制御によるリカバリ動作を行っている。
【０１１６】
このＳＣＳＩインタフェースのリセット機能を利用したリカバリ動作によれば、ドライブ３６−１，３６−２側に専用のリセット回路を設ける必要がなく、その分、ドライブ側の回路構成を簡単にできる。
【０１１７】
図１４は、リトライ動作では回復できない媒体排出不能な状態に陥っているドライブのエラーを、ドライブ専用のリセット機能を利用してリカバリする本発明の第３実施形態のブロック図である。
【０１１８】
図１４において、ライブラリ装置１０に設けたアクセッサ制御部６２にはリカバリ制御部６０とリセット制御部９２が設けられ、これらの機能は図９の第２実施形態と同じである。
【０１１９】
即ち、ドライブ３６−１，３６−２にアクセッサ３０でカートリッジを挿入した後にドライブインタフェースバス７２−１，７２−２を介して得られる媒体検出を示すロック信号Ｅ２１，Ｅ２２がオフであった場合、リセット制御部９２に対しドライブ３６−１，３６−２をリセットしてエラーを回復させるリカバリ制御を行う。
【０１２０】
この第３実施形態にあっては、ドライブ３６−１，３６−２自体に専用のリセット回路１０４−１，１０４−２が予め設けられて場合である。リセット回路１０４−１，１０４−２に対応して、ドライブ３６−１，３６−２のそれぞれには、アクセッサ制御部６２からのリセット信号を入力する専用のドライブリセット端子１０２−１，１０２−２を備えている。また図１４のアクセッサ制御部６０のハードウェア構成は、図１１の第２実施形態と同じである。
【０１２１】
更に、アクセッサ制御部６０によるリカバリ処理は、図１２の第２実施形態のフローチャートと同じであり、ステップＳ９，Ｓ１０によりオン，オフするリセット信号Ｅ４１，Ｅ４２が、直接、ドライブ３６−１，３６−２に供給されている点が相違する。
【０１２２】
更にまた、ホスト１１からのリセット指示によるリカバリ処理についても、図１３の第２実施形態のフローチャートと同じであり、ホストからのリセット指示においてアクセッサ制御部６０がステップＳ１０１，Ｓ１０２で出力するリセット信号Ｅ４１，Ｅ４２が直接、ドライブ３６−１，３６−２に供給される点で相違する。
【０１２３】
このようにドライブ３６−１，３６−２自体に専用のリセット回路１０４−１，１０４−２とドライブリセット端子１０２−１，１０２−２が設けられている場合には、図２の実施形態のようにＳＣＳＩインタフェースのリセット機能を使用することなく、直接、アクセッサ制御部６０からリカバリ制御のためのリセット信号をオン，オフして媒体を排出できないようなドライブ側のエラーを回復させることができる。
【０１２４】
尚、上記の実施形態にあっては、ホストに対しＳＣＳＩインタフェースでライブラリ装置を接続する場合を例にとっているが、他の適宜のインタフェースであってもよい。また本発明は、その目的と利点を損なわない適宜の変形を含み、更に実施例に示した数値による限定は受けない。
【０１２５】
【発明の効果】
以上説明してきたように本発明によれば、ライブラリ装置に内蔵しているドライブが媒体を排出できないような状態に陥っているケース、あるいはホストからコマンドを再発行しても復旧できないような状態に陥っているケースであっても、ドライブに対する電源の遮断と再投入、あるいはＳＣＳＩインタフェースのリセット機能、更にはドライブ専用のリセット機能により、ドライブの再立ち上げによって媒体を排出できないエラー状態に陥っているドライブを正常状態に回復させるリカバリを確実に行うことができる。
【０１２６】
このようなドライブのリカバリ機能が保証されることで、ライブラリ装置に内蔵するドライブとして、一般のパーソナルコンピュータに使用されている低コストのドライブであっても、ライブラリ装置に内蔵した場合の信頼性を十分に向上することができる。
【０１２７】
また本発明にあっては、ドライブのエラー状態に対し個別に設けた電源部による電源制御でエラーを回復するリカバリを行っているため、ライブラリ装置に使用しているドライブのインタフェースに依存することなく、他のドライブに変更した場合であっても容易にリカバリ制御を対応することができる。
【０１２８】
また、ドライブのインタフェースで実現されるリセット機能を利用してアクセッサ制御部からドライブをリカバリするためのリセット制御をできるようにすることで、ドライブ側に専用のリセット回路を必要としない分、構成を簡単にしてコストダウンを図ることができる。
【０１２９】
更に、ライブラリ装置に使用するドライブ自体に元々リセット機能が内蔵されている場合もあることから、この場合にはアクセッサ制御部からエラーリカバリのためのリセット信号を直接、ドライブに供給するようにすることで、ライブラリ装置のハード構成を単純化し、専用リセット機能付きのドライブを使用した場合のコストダウンを図ることができる。
【０１３０】
尚、本発明は、更に、次のような形態を含む。
（１）．請求項３記載のライブラリ装置に於いて、リカバリ制御部は、ドライブの媒体排出不能なエラーを検出した場合、ドライブに媒体排出を指示した後に前記アクセッサに媒体の再投入を指示してリストア動作を行わせ、リストア動作でもエラーを回復できない場合に、電源制御部にリカバリ動作を指示することを特徴とするライブラリ装置。
（２）．前記（１）記載のライブラリ装置に於いて、アクセッサ制御部は、
ドライブ毎に設けられ、前記インタフェースのリセット信号を前記ドライブに出力するインタフェース用リセット回路部と、
インタフェース用リセット回路部を経由して前記ドライブにリセット信号を出力するリセット制御部と、
アクセッサが媒体をドライブに挿入した際のエラー検出時に、前記リセット制御部に対するリカバリ動作の指示により、エラーを起したドライブに対するリセット信号をオン，オフして復旧させるリカバリ制御部と、
を備えたことを特徴とするライブラリ装置。
（３）．前記（１）記載のライブラリ装置に於いて、
ドライブは外部からのリセット信号によるリセット機能を備え、
アクセッサ制御部は、
ドライブにリセット信号を出力するリセット制御部と、
アクセッサが媒体をドライブに挿入した際のエラー検出時に、リセット制御部に対するリカバリ動作の指示により、エラーを起したドライブに対するリセット信号をオン，オフして復旧させるリカバリ制御部と、
を備えたことを特徴とするライブラリ装置。
（４）．前記（２）又は（３）記載のライブラリ装置に於いて、リカバリ制御部は、ドライブから媒体排出不能なエラーを検出した場合、ドライブに媒体排出を指示した後に前記アクセッサに媒体の再投入を指示してリストア動作を行わせ、リストア動作後に媒体なしエラーを検出した場合、リセット制御部にリカバリ動作を指示することを特徴とするライブラリ装置。
（５）．前記（２）又は（３）記載のライブラリ装置に於いて、リカバリ制御部は、ホストからリカバリ指示に基づき、リセット制御部にドライブのリカバリ動作を指示することを特徴とするライブラリ装置。
【図面の簡単な説明】
【図１】本発明の原理説明図
【図２】本発明のライブラリ装置の外観を示した説明図
【図３】図２のライブラリ装置の内部構造の説明図
【図４】図３のアクセッサの説明図
【図５】電源の遮断と再投入でリカバリする本発明の第１実施形態のブロック図
【図６】図５のアクセッサ制御部のハードウェア構成のブロック図
【図７】図５のアクセッサ制御部によるリカバリ処理のフローチャート
【図８】ホストからのコマンドに基づく図４のアクセッサ制御部によるリカバリ処理のフローチャート
【図９】ＳＣＳＩインタフェースのリセット機能を利用してリカバリする本発明の第２実施形態のブロック図
【図１０】図９のＳＣＳＩインタフェース用のリセット回路の回路図
【図１１】図９のアクセッサ制御部のハードウェア構成のブロック図
【図１２】図９のアクセッサ制御部によるリカバリ処理のフローチャート
【図１３】ホストからのコマンドに基づく図９のアクセッサ制御部によるリカバリ処理のフローチャート
【図１４】ドライブの専用リセット機能を利用してリカバリする本発明の第３実施形態のブロック図
【符号の説明】
１０：ライブラリ装置
１０−１：本体
１１：ホスト
１２：操作パネル
１４：投入排出ドア
１６：ＭＯカートリッジ（媒体）
１８：カートリッジ収納部
２０，３２：モータ
２２：投入排出部
２４：クラッチ部
２６−１，２６−２：受け皿
３０：アクセッサ
３４：バランスウェイト
３６，３６−１，３６−２：ドライブ
３８：レール
４０：ピッカ
４２：スライダ
４４−１，４４−２：ピッカアーム
４６：ベルト
４８，５０：プーリ
５２：ＳＣＳＩインタフェースバス
５４：ＳＣＳＩ入力コネクタ
５５：内部ＳＣＳＩバス
５６：ＳＣＳＩ出力コネクタ
６０：アクセッサ制御部
６２：リカバリ制御部
６４：電源制御部
６６−１，６６−２：ドライブ電源部
７０−１，７０−２：ドライブ電源線
７２−１，７２−２：ドライブインタフェースバス
７４，７５：デバイス
７６：ＭＰＵ
７８：ＲＯＭ
８０：ＲＡＭ
８２：ドライブＩＦ回路
８４：ＳＣＳＩプロトコルコントローラ
８６：モータ駆動回路
８８：タコカウンタ回路
９０：電源制御回路
９２：リセット制御部
９３：電源部
９４−１，９４−２：ＳＣＳＩインタフェース用リセット回路
９６−１，９６−２：ドライブ専用リセット制御線
９８，９８−１：ＳＣＳＩ用リセット制御線
１００：ＯＲ回路
１０２−１，１０２−２：ドライブリセット端子
１０４−１，１０４−２：ドライブ内蔵リセット回路
【図１】
0003581595.tif 000002
【図２】
0003581595.tif 000003
【図３】
0003581595.tif 000004
【図４】
0003581595.tif 000005
【図５】
0003581595.tif 000006
【図６】
0003581595.tif 000007
【図７】
0003581595.tif 000008
【図８】
0003581595.tif 000009
【図９】
0003581595.tif 000010
【図１０】
0003581595.tif 000011
【図１１】
0003581595.tif 000012
【図１２】
0003581595.tif 000013
【図１３】
0003581595.tif 000014
【図１４】
0003581595.tif 000015