(57)【要約】【課題】ＰｎＰシステムにおける周辺機器の接続又は切断によって生ずる破壊を低減する。【解決手段】周辺機器を切断するマルチ周辺システム１００のホスト１０２は、通信バス１０３を介して周辺デバイス１０４、１０６、１０８に接続されている。通信バスは、周辺デバイスと双方向処理を行う論理層１１６を有し、該論理層は、周辺デバイス上の論理層１１８と隣接し、これら論理層の接合部にコネクタ１１２、１１４が設けられている。物理層である論理層１１６をホストに組み込み、リンク層である論理層１１８を周辺デバイスに組み込み、これらの間にコネクタを配置したことにより、周辺デバイスを、任意の時点でホスト１０２に対して接続及び切断することができる。【選択図】図１
2008146651.tif 000002
【特許請求の範囲】
【請求項１】
周辺デバイスであって、
通信バスと双方向処理を行うリンク層であって、通信バス上で物理層と隣接するように構成されているリンク層と、
前記リンク層と前記物理層との接合部にあるコネクタと、
を備えていることを特徴とする周辺デバイス。
【請求項２】
請求項１記載の周辺デバイスにおいて、前記通信バスは、デージー・チェーン配列で接続された複数のデバイスを有するように構成されていることを特徴とする周辺デバイス。
【請求項３】
請求項１記載の周辺デバイスにおいて、前記通信バスは、プラグ・アンド・プレー通信バスであることを特徴とする周辺デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、周辺デバイスを非破壊的に切断することができる装置に関する。
【背景技術】
【０００２】
プラグ・アンド・プレー（ＰｎＰ）システムは、事実上全てのパーソナル・コンピュータや、多くのコンピュータ制御機械でも見られる。ＰｎＰシステムは、ホット・スワッピング・システム(hot-swapping system)としても知られており、デバイス・ドライバを手作業でインストールすることなく、更にホスト・システムを再ブートすることなく、周辺デバイスのホスト・システムに対する接続及び切断を可能にする。
【０００３】
ＰｎＰシステムの主な特徴は、周辺機器の接続又は切断の後、通信バスを自動的に環境設定を再度行うことができることである。ＰｎＰシステムの通信バスが周辺レイアウトの変化に気付くと、バスはリセットを開始する。周辺機器の接続又は切断を認識するには、周辺機器への電力を検知するか、又は周辺コネクタ上において特殊な回路を用いる。環境設定やり直しプロセス(reconfigurtaion process)では、バスに接続されている周辺機器を全て認識し再度取得する(reaquire)して、各周辺機器がホスト・システムに適性にロードされており、通信システムへのアクセスが与えられていることを確認する。環境設定やり直しプロセスでは、周辺機器の１つだけでも接続又は切断されたときには、バスに接続されている全ての周辺機器の環境設定をし直して、ぶつかり合う周辺機器がないことを確保しなければならない。新たに接続された周辺デバイスは、いずれも認識され、その周辺デバイスのドライバを自動的に読み出してロードする。同様に、周辺デバイスが切断される場合、環境設定やり直しプロセスは、システム内におけるその周辺機器のドライバをディゼーブルし、その周辺機器のタイム・スロットを別のデバイスに割り当てる。普及しているＰｎＰシステムの例の中には、ユニバーサル・シリアル・バス（ＵＳＢ）、FireWire（IEEE1394）、及び周辺素子相互接続（ＰＣＩ）が含まれる。
【０００４】
通信バスは、通例、インターフェースを有し、デバイスの複雑なコマンド及びデータをビット・レベルのデータに変換することによって、デバイスが通信バスと双方向処理を行い、通信バスを通じてそのデータを送信できるようにする。多くのインターフェースが有するプロトコルは、階層に分割されている。階層設計では、プロトコルの機能を一連の論理層に分割する。各層は、下位層からのサービスを要求し、上位層のためにサービスを実行する。プロトコルを階層状にすることによって、プロトコルを設計し使用することが一層容易になる。一例として、IEEE1394プロトコルは、３つの層、物理層、リンク層、及びトランザクション層に分割されている。最上位層、即ち、トランザクション層は、高位コマンドを通信デバイスから読み出し、これらを通信デバイスに書き込む役割を担う。中間層は、リンク層であり、パケット・レベルでデータを扱う。プロトコルの最下位層は物理層であり、バスを通じた実際のデータ送信及び受信を責務とし、バスに対する調停も含む。物理層の後、情報はバス上を伝達し、別のデバイスによって処理される。したがって、物理層は、通例、周辺機器とその他のデバイスとの間にある接合部として見なされる。つまり、周辺機器のハードウェア・コネクタは、物理層と通信バスとの接合部に位置する。
【０００５】
宇宙船において用いられるような現行のＰｎＰシステムでは、通信バスは、周辺機器が互いにデージー・チェーンを形成するように設定されることが多い。周辺機器をデージー・チェーン状に接続するには、通信ストリームに沿って、各周辺機器を互いに前後に配置する。したがって、メッセージは１つの周辺機器に送信され、チェーンにおいてその周辺機器から次の周辺機器に受け渡されるか、又はそれを通過させなければならない。例えば、ホストからチェーンにおける５番目の周辺機器へのメッセージは、最初の４つの周辺機器がそのメッセージを転送した後でないと、５番目のデバイスに到達しないのは当然である。いずれの周辺機器も上流側の周辺機器に依存するので、１つの周辺デバイスがデータを転送することができない場合、下流にある全ての周辺機器はホストとの通信を失うことになる。つまり、現行のシステムでは、周辺機器を通信バスから切断するとき、古い周辺機器をチェーンから除去するために、通信バスの環境設定のし直しが必要となる。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
以上に述べた理由により、そして本明細書を読んで理解すれば当業者には明白となる以下に述べる別の理由により、当技術分野には、ＰｎＰシステムにおける周辺機器の接続又は切断によって生ずる破壊(disruption)を低減する方法が求められている。
【課題を解決するための手段】
【０００７】
現行のシステムの前述の問題には、本発明の実施形態が取り組み、これらは、以下の明細書を読んで検討することによって、理解することができる。以下の概要は、限定ではなく一例として作成した。これは、読者が本発明の態様の一部を理解する際に補助するために設けるに過ぎない。一実施形態では、電子デバイスが通信バスを有する。通信バスは、周辺デバイスと双方向処理を行う第１論理層を有する。第１論理層は、周辺デバイス上において第２論理層と隣接するように構成されている。最後に、第１論理層と第２論理層との接合部に、コネクタがある。
【発明を実施するための最良の形態】
【０００８】
詳細な説明及び図面について検討することにより、本発明は一層容易に理解することができ、その利点や使用法は一層容易に明白となるであろう。
慣例にしたがって、記載する種々の機構は、同じ拡縮率では描かれておらず、本発明に関連する特定の機構を強調するように描かれている。参照符号は、図面及び本文を通じて同様の要素を示すこととする。
【０００９】
以下の詳細な説明では、その一部をなす添付図面を参照し、例示として、本デバイスを実用化することができる具体的な例示的実施形態を示す。これらの実施形態は、当業者が本発明を実用化することができるように十分に詳細に説明されており、他の実施形態も利用してもよいこと、そして論理的、機械的、及び電気的な変更も、本発明の趣旨及び範囲から逸脱することなく可能であることは言うまでもない。したがって、以下の詳細な説明は、限定的な意味で捕らえてはならない。
【００１０】
周辺デバイスを通信バスから切断するときに行われる環境設定し直しプロセスは、総じてパーソナル・コンピュータには効果的に作用するが、他の状況では破局的な副作用を生ずる可能性がある。これらの望ましくない効果の殆どは、環境設定し直しプロセスの間、通信バス上では環境設定し直し以外の活動が許可されないために発生する。つまり、周辺機器への通常の通信、及び周辺機器間の通常の通信は、完全にディゼーブル(すなわちディスエーブル：disable)される。通信バスが、例えば、宇宙船上のスラスタやラバーに情報を送るとき、バスの環境設定し直しの間通信が途絶えることにより、システムを軌道上に維持するために必要な必須の通信を遮断又は遅延させる可能性がある。宇宙船では、ミリ秒の分断であっても、ミッションを危険に晒すことになりかねない。加えて、環境設定し直しの間にエラーが発生すると、通信バスは全く作用しなくなる虞れがあり、システム全体が故障する原因にもなり得る。このように、状況によっては、周辺機器のチェーンの環境設定し直しは、不可能な場合さえもある。
【００１１】
多くのシステム、例えば、宇宙船では、周辺機器チェーンへの新たな接続は、初期設定後には決して行われない。これらのシステムでは、切断のみが行われる。更に、多くの通信プロトコルには、通信バスに接続されている周辺機器をスリープ・モードにすることを物理層に知らせる機能が組み込まれている。この状況では、周辺デバイスの全ての層が、物理層を除いて、ディゼーブルされることになる。物理層は、アクティブのままになっており、周辺機器をスリープから解除するときに、その周辺機器を起動する。通例、これが用いられるのは、ホスト・デバイス上において電力を節約するために、周辺デバイスをスリープ・モードにするときである。
【００１２】
本方法及び装置は、バス上の他の周辺機器に対して分断を生ずることなく、周辺機器を通信バスから切断することを可能にする。本装置は、これを行う際、通信バスの環境設定し直しを行うことなく、通信バスから物理的に切断する。これは、インターフェース・プロトコルの物理層とリンク層との間に周辺機器のための物理的コネクタを配置することによって行われる。周辺機器を切断する前に、リンク層をディゼーブルする。しかしながら、物理層はイネーブルしたままにしておくことができる。何故なら、物理層とリンク層との間にコネクタを配することによって、物理層を除去することなく、周辺機器を除去することが可能になるからである。つまり、周辺機器を切断している最中、及びその後も、物理層は通信バスと完全に通信できる状態のままでいることができる。通信バスは、周辺機器の切断前と同じ物理層全てと通信し続けることができるので、周辺機器の切断後に、バスの環境設定し直しは必要でない。通信バスから見ると、周辺機器の設定は変化していない。加えて、この設計は通常のインターエース機能を全く変更しない。
【００１３】
図１は、通信バスの環境設定し直しを行うことなく、周辺機器を切断するマルチ周辺システム１００の一実施形態を示す。システム１００の中心的な構成機器は、ホスト・デバイス１０２である。ホストは、通信バス１０３を有し、これには複数の周辺機器１０４、１０６、１０８が接続されている。一実施形態では、周辺機器１０４、１０６、１０８は、互いにデージー・チェーンを形成し、周辺機器１０４がチェーンの先頭にある。このため、周辺機器１０８への通信及び周辺機器１０８からの通信は、周辺機器１０４及び周辺機器１０６を経由してホスト１０２に中継されなければならない。別の実施形態では、周辺機器１０４、１０６、１０８は、マルチ・ドロップ・システム(multi-drop system)として接続され、これによって各周辺機器１０４、１０６、１０８はホスト１０２まで直接通信経路を有する。あるいは、周辺機器１０４、１０６、１０８は、切換ハブ、又は周辺機器をホスト・システムに接続するその他のいずれの方法によっても接続することができる。ホスト１０２は、イネーブルされたプラグ・アンド・プレーに対応しており(Plug-and-Play enabled)、したがって、周辺機器１０４、１０６、１０８は、いずれの時点でもホスト１０２に対して接続及び切断することができる。
【００１４】
周辺機器１０４、１０６、１０８は、通信バス１０３を通じて、互いにそしてホスト１０２と通信する。一実施形態では、各周辺機器１０４、１０６、１０８は、同じコネクタ及び同じインターフェースを用いて、通信バス１０３に対して接続及び切断する。したがって、コネクタ及びインターフェースは、周辺機器１０６のみを参照して説明することにする。システム１００において、周辺機器１０６は周辺インターフェース１１０を通じて通信バス１０３上で通信を行う。周辺機器１０６は、周辺コネクタ１１２をホスト・コネクタ１１４に対して差し込む及び引き抜くことによって、接続及び切断することができる。一実施形態では、周辺コネクタ１１２は、オス・コネクタであり、メスのホスト・コネクタ１１４に接続可能である。
【００１５】
周辺インターフェース１１０は、周辺機器１０６が通信バス１０３上で通信を行うことを可能にする。インターフェース１１０は、周辺機器１０６からのコマンド／データをビットに変換し、このビットを通信バス１０３上で送信する。加えて、インターフェース１１０は、通信バス１０３からビットを受け取り、これらのビットをコマンド／データに逆変換した後に、周辺機器１０６にコマンド及びデータを供給する。
【００１６】
図２は、ホスト・インターフェース２０２及び２つの周辺インターフェースを有する通信バス１０３の一実施形態を示す。ホスト・インターフェース２０２は、ホスト・デバイス上のプロセッサ（図示せず）が通信バス１０３上において送信及び受信することを可能にする。同様に、周辺インターフェース２０４は、周辺デバイスが通信バス１０３上で送信及び受信することを可能にする。ホスト・インターフェース２０２及び周辺インターフェース２０４は、３つの隣接する論理層、即ち、物理層２０６、リンク層２０８、及びアプリケーション層２１０で構成されている。一実施形態では、周辺インターフェースは、コネクタ２１２を有し、これによって周辺デバイスを通信バス１０３から切断することができる。
【００１７】
論理層２０６、２０８、２１０は、互いに双方向処理を行い、通信バス１０３及び関連付けられている周辺デバイス又はホスト・デバイスとの間で情報を変換(translate)する。周辺又はホスト・デバイスがデータを受信するには、物理層２０６によって通信バス１０３からのビットを受信し、エラーをチェックする。次いで、物理層２０６は、ビットをリンク層２０８に供給する。リンク層２０８はビットをパケットに形成し、パケットをトランザクション層２１０に供給する。トランザクション層２１０はパケットをコマンド／データに形成し、処理又は記憶のために、コマンド及びデータを周辺又はホスト・デバイスに供給する。通信バス１０３上に送られたコマンド／データは、論理層２０６、２０８、２１０を経由して逆方向に進む。最初に、周辺又はホスト・デバイスがトランザクション層２１０にコマンド／データを供給する。トランザクション層２１０は、コマンド／データを解釈し、それをリンク層２０８に供給する。リンク層２０８は、情報をバケットに分割し、パケットを物理層２０６に供給する。物理層２０６は、通信バス１０３上で空間を得るために適宜処理し(negotiate)、通信バス１０３上でのビット・レベルの送信としてパケットを送る。あるいは、ホスト・インターフェース２０２及び周辺インターフェース２０４は、以下で説明するように、周辺インターフェース２０４がコネクタのために接合部を形成することができる限り、所望通りの数の層を有することもできる。一実施形態では、通信バス１０３はIEEE1394に準拠したバスであり、FireWireとしても知られている。あるいは、通信バス１０３はＵＳＢ、ＰＣＩバス、又は周辺機器をホスト・システムに接続するために用いられるその他のバスとすることもできる。
【００１８】
再度図１を参照すると、コネクタ１１２、１１４は、周辺インターフェース１１０の２つの論理層１１６、１１８の接合部に配置されている。コネクタ１１２、１１４は、周辺インターフェースを別個の層に分離できる限りにおいて、周辺インターフェース１１０のいずれの既存の物理又は論理接合部にでも配置することができる。あるいは、周辺インターフェース１１０内に別個の接合部を設けることもできる。しかしながら、コネクタ１１２、１１４の配置は、周辺機器１０６を切断した後に、その他の周辺機器１０４、１０８、及びホスト１０２との完全な通信を可能にしなければならない。この実施形態では、論理層１１６はIEEE1394プロトコルの物理層であり、論理層１１８はリンク層である。コネクタ１１２、１１４を配置することの効果は、周辺インターフェース１１０の論理層１１６を周辺機器１０６から除去し、論理層１１６をホスト１０２に組み込むことである。あるいは、コネクタ１１２、１１４を更に上位の論理層の接合部に配置した場合、追加の論理層がホスト１０２に組み込まれることになる。
【００１９】
図３は、非破壊的に周辺機器を切断する方法３００の一実施形態である。最初に、周辺インターフェース１１０の論理層１１６、１１８に、周辺機器１０６を切断することを通知する。一実施形態では、論理層１１８はスリープ・モード機能を有し、論理層１１６には、論理層１１８がスリープ・モードに入ることを通知する（ステップ３０２）。次いで、論理層１１８をディゼーブルする（ステップ３０４）。この時点で、周辺機器１０６を通信バス１０３から物理的に切断することができる（ステップ３０６）。一実施形態では、周辺機器１０６はロケット・ブースタであり、ホスト１０２は宇宙船である。ロケット・ブースタを宇宙船から物理的に切断するには、ヒッチを解除し、宇宙船から浮遊させる。離脱のプロセスにおいて、ロケット・ブースタは物理的電気コネクタ１１２を、宇宙船上にある別の物理的電気コネクタ１１４から抜き取る。周辺機器１０６を切断するプロセス全体において、そして周辺機器１０６及び論理層１１８をホスト１０２から切断した後であっても、論理層１１６はイネーブルされたままであり、通信バス１０３と完全に通信できる状態を維持する（ステップ３０８）。しかしながら、論理層１１６はもはや論理層１１８と通信しようとはしない。論理層１１６は通信バス１０３と完全に通信できる状態にあり続けるので、環境設定し直し要求はホスト１０２には送られない。加えて、通信バス１０３は環境設定し直しプロセスとは結び付けられていないので、ホスト１０２及び周辺機器１０４、１０８は、周辺機器１０４の切断中及びその後でも、常時通信することができる。
【００２０】
図４は、周辺機器１０６を除去した後のシステム１００を示す。ここでは、周辺インターフェース１１０の論理層１１６は、通信バス１０３と完全に通信できる状態に維持されている。したがって、通信バス１０３は環境設定し直す必要がない。何故なら、周辺機器１０４、１０６、１０８のコンフィギュレーションは変化していないからである。加えて、通信バス１０３をデージー・チェーン・フォーマットに設定した場合、ホスト１０２はなおも周辺機器１０８と通信することができる。何故なら、論理層１１６がイネーブルされており、周辺機器１０８にデータを転送し、周辺機器１０８からデータを転送することができるからである。別の実施形態では、論理層１１６が通信バス１０３の環境設定し直し要求を開始しようとすると、通信バス１０３はこの環境設定し直し要求を無視する。更に別の実施形態では、ソフトウェア割り込みのような、環境設定し直し要求を阻止するメカニズムを実装する。
【００２１】
別の実施形態では、周辺機器１０６を切断する前に、周辺機器１０６がスリープに入ることを論理層１１６には通知しない。この実施形態では、ホスト・コネクタ１１４は、周辺機器１０６の存在（又は不在）を検出するセンサを有する。周辺コネクタ１１８がホスト・コネクタ１１６から分離されると、ホスト・コネクタ１１４は、執念機器１０６がスリープ・モードにあることを示す信号を論理層１１６に送る。すると、論理層１１６はもはや周辺機器１０６と通信しようとはしなくなる。
【００２２】
一実施形態では、周辺機器は、通信バス１０３の環境設定し直しを行うことなく、再接続することもできる。通信バス１０３は、周辺機器１０６を切断したときに、環境設定し直しを遂行しなかったので、通信バス１０３は、周辺機器１０６をホスト・コネクタ１１４に接続するように構成されたままとなっている。つまり、周辺機器１０６をホスト・コネクタ１１４においてホスト１０２に再接続するためには、通信バス１０３の環境設定し直しは不要である。一旦周辺コネクタ１１２をホスト・コネクタ１１４に接続したなら、周辺インターフェースの論理層１１６はイネーブルされ、周辺機器１０６は通信バス１０３上で通信することができる。一実施形態では、周辺機器１０６は、通信バス１０３の分断を生ずることなく、再接続することができるが、他の周辺機器をホスト・コネクタ１１４に再接続することはできない。通信バス１０３は周辺機器１０６については環境設定されたままであるので、別のいずれのデバイスがホスト・コネクタ１１４に接続されても、通信バス１０３上で環境設定されることはない。これらその他のデバイスがホスト１０２と適正に動作するためには、通信バス１０３の環境設定し直しが必要となる。
【００２３】
以上、具体的な実施形態について図示し説明したが、同じ目的を達成すると考えられるのであれば、いずれの構成でも、図示した具体的な実施形態の代用となり得ることは、当業者には認められよう。本願は、本発明のあらゆる改造や変形をもその範囲に該当することを意図している。したがって、本発明は、特許請求の範囲及びその均等物によってのみ限定されることを、明示的に意図するものとする。
【図面の簡単な説明】
【００２４】
【図１】周辺デバイスを非破壊的に切断するシステムの一実施形態の模式図である。
【図２】非破壊的に周辺デバイスを切断するための通信バス及びインターフェース・プロトコルの一実施形態の模式図である。
【図３】非破壊的に周辺デバイスを切断する方法の一実施形態を示すフロー図である。
【図４】図１に示す非破壊的に周辺デバイスを切断するシステムの実施形態の模式図である。
【図１】
2008146651.tif 000003
【図２】
2008146651.tif 000004
【図３】
2008146651.tif 000005
【図４】
2008146651.tif 000006
【外国語明細書】
2008146651000001.pdf