(57)【要約】【課題】本発明は、USBインタフェース設備に対する操作の装置及び方法に関連する。【解決手段】  現在、操作者がソフトウェアを使用し、指定のUSBポートを選択的に制御することはできない。本発明の操作と方法を使用する事により、ユーザが要求に従ってホストから指定の拡張ポートを開くコマンドを発送し、コマンドを解析することによって拡張ポートアドレスを取得した後、そのアドレスの拡張ポートとホスト間のチャネルを開き、最終的に該当ポートに接続しているUSB設備に対して操作を行う事はできる。また、通報でホストにUSB設備の状態を通知することもできる。これにより、ユーザがUSB設備を指定し操作することはできる様になり、作業効率が向上され、一つの時刻に１つだけのUSB設備がホストに接続されることも保証される。【選択図】  図５
2007323648.tif 000002
【特許請求の範囲】
【請求項１】
USBインタフェース設備に対して操作を行う装置であって、
指定の拡張ポートを開くコマンドを発送し、指定の拡張ポートに接続しているUSB設備に対して操作を行うホストと、
前記コマンドを解析して拡張ポートモジュールのアドレスを取得し、スイッチモジュールを制御する制御モジュールと、
前記アドレスの拡張ポートモジュールとホスト間のチャネルを開閉するために使用されるスイッチモジュールと、
USB設備の接続に使用される拡張ポートモジュールを備え、
ホストはホストのUSBインタフェースを通じて制御モジュール及びスイッチモジュールと接続し、制御モジュールはスイッチモジュールと接続し、スイッチモジュールは拡張ポートモジュールと接続することを特徴とするUSBインタフェース設備に対して操作を行う装置。
【請求項２】
前記制御モジュールは、前記アドレスの拡張ポートに接続しているUSB設備の状態を検査し、ホストに通報する為の検査サブモジュールを更に備えることを特徴とする請求項１に記載の装置。
【請求項３】
前記拡張ポートモジュールの電源線、D+線とD-線は、前記スイッチモジュールを通して、前記ホストUSBインタフェースと接続することを特徴とする請求項１または請求項２に記載の装置。
【請求項４】
拡張ポートモジュールのグランド線は、直接にホストUSBインタフェースと接続することを特徴とする請求項３に記載の装置。
【請求項５】
前記スイッチモジュールがON状態の場合、スイッチモジュールは、拡張ポートにあるUSB設備の電源、D+とD-の三本の接続線とホストのUSBインタフェースと接続することを特徴とする請求項４に記載の装置。
【請求項６】
前記スイッチモジュールがOFFの場合、スイッチモジュールは、拡張ポートにあるUSB設備の電源、D+とD-の三本の接続線とホストのUSBインタフェースの接続を遮断することを特徴とする請求項４に記載の装置。
【請求項７】
前記スイッチモジュールは、アナログスイッチチップ、アドレス選択チップ及びスイッチ回路を備え、前記アドレス選択チップは、前記制御モジュール、アナログスイッチチップ及びスイッチ回路と接続し、
前記拡張ポートモジュールの電源線は、前記スイッチ回路を通して、前記ホストのUSBインタフェースと接続し、
前記拡張ポートモジュールのD+線とD-線は、前記アナログスイッチチップを通して、前記ホストのUSBインタフェースと接続することを特徴とする請求項４から６のいずれかに記載の装置。
【請求項８】
拡張ポートモジュールのグランド線は、前記スイッチモジュールを通して、前記ホストのUSBインタフェースと接続することを特徴とする請求項３に記載の装置。
【請求項９】
前記スイッチモジュールがON状態の場合、拡張ポートにあるUSB設備は、電源、D+、D-及びグランドの四本接続線を通じてホストのUSBインタフェースと接続することを特徴とする請求項８に記載の装置。
【請求項１０】
前記スイッチモジュールがOFFの場合、スイッチモジュールは、拡張ポートにあるUSB設備の電源、D+、D-及びグランドの四本接続線とホストのUSBインタフェースとの接続を遮断することを特徴とする請求項８の装置。
【請求項１１】
前記スイッチモジュールは、アナログスイッチチップ、アドレス選択チップ及びスイッチ回路を備え、
前記アドレス選択チップは、前記制御モジュール、アナログスイッチチップ及びスイッチ回路と接続し、
前記拡張ポートモジュールの電源線とグランド線は、前記スイッチ回路を通して、前記ホストのUSBインタフェースと接続し、
前記拡張ポートモジュールのD+線とD-線は、前記アナログスイッチチップを通して前記ホストのUSBインタフェースと接続することを特徴とする請求項８から１０のいずれかに記載の装置。
【請求項１２】
ホストはUSBHUBモジュールのUSBインタフェースを通して、制御モジュール及びスイッチモジュールと接続する請求項１または２に記載の装置。
【請求項１３】
前記拡張ポートモジュールは、複数の拡張インタフェースを備えることを特徴とする請求項１または２に記載の装置。
【請求項１４】
USBインタフェース設備に対して操作を行う方法であって、
ホストは、制御モジュールに、拡張ポートを開くコマンドを発送する手順Ａと、
制御モジュールは、前記コマンドを解析し、拡張ポートのアドレスを取得する手順Ｂと、
制御モジュールは、スイッチモジュールを制御し、前記アドレスの拡張ポートとホスト間のチャネルを開く手順Ｃと、
拡張ポートに接続しているUSB設備に対して操作を行う手順Ｄと
を備えることを特徴とする方法。
【請求項１５】
前記手順Ｃにおいて、
制御モジュールは、スイッチモジュール内部のアドレス選択チップで前記アドレスの拡張ポートを選択する手順Ｃ１、
制御モジュールは、スイッチ内部の制御アナログスイッチチップとトランジスタスイッチ回路で前記アドレスの拡張ポートとホスト間の接続線を開く手順Ｃ２と、
を備えることを特徴とする請求項１４に記載の方法。
【請求項１６】
前記手順Ｄにおいて、
前記アドレスの拡張ポートに接続しているUSB設備の状態が正常であるかの検査操作を行い、検査の結果をホストに通報することを特徴とする請求項１４に記載の方法。
【請求項１７】
前記手順Ｄにおいて、
前記拡張ポートに接続しているUSB設備に対して業務操作を行うことを特徴とする請求項１４に記載の方法。
【請求項１８】
前記手順Ｄにおいて、
前記アドレスの拡張ポートに接続しているUSB設備に対して業務操作を行うことを特徴とする請求項１７に記載の方法。
【請求項１９】
手順Ｃと手順Ｄの間において、
さらに、前記アドレスの拡張ポートに接続しているUSB設備の状態が正常であるかの検査操作を行い、検査の結果をホストに通報する手順も備えることを特徴とする請求項１７に記載の方法。
【請求項２０】
前記検査手順において、前記拡張ポートに接続している設備の状態が正常であると検知してホストに通報するとなった場合、対応的に、ホストは前記拡張ポートに接続しているUSB設備に対して業務操作を行う手順Ｄを備えることを特徴とする請求項１９に記載の方法。
【請求項２１】
前記検査手順において、前記拡張ポートに接続しているUSB設備の状態が正常でないと検知してホストに通報するとなった場合、再度ホストが制御モジュールに拡張ポートを開くコマンドを発送する手順を行うことを特徴とする請求項１９に記載の方法。
【請求項２２】
前記検査手順において、前記拡張ポートに接続しているUSB設備の状態が正常でないと検知してホストに通報するとなった場合、再度ホストが制御モジュールに拡張ポートを開くコマンドを発送する手順を行い、対応的に、ホストは前記拡張ポートに接続しているUSB設備に対して業務操作を行う手順Ｄを備えることを特徴とする請求項２１に記載の方法。
【請求項２３】
前記検査手順において、前記拡張ポートに接続しているUSB設備の状態が正常でないと検知してホストに通報するとなった時に、再度ホストがその他の拡張ポートを開くコマンドを発送する手順を行い、対応的に、ホストはその他の拡張ポートに接続しているUSB設備に対して業務操作を行う手順Ｄを備えることを特徴とする請求項２１に記載の方法。
【請求項２４】
前記拡張ポートに接続しているUSB設備の状態が正常でないことは、拡張ポートに接続しているUSB設備は存在しているが、USB設備は故障状態になっていることであることを特徴とする請求項２２又は２３に記載の方法。
【請求項２５】
前記拡張ポートに接続しているUSB設備の状態が正常でないことは、拡張ポートに接続しているUSB設備は存在しないことであることを特徴とする請求項２２または２３に記載の方法。
【請求項２６】
前記手順Ｄの後、もう一つの拡張ポートに対して前記手順Ａ〜Ｄを再度操作することを特徴とする請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータ周辺機器に対して操作行う装置及び方法に関連する。特に、USBインタフェース設備に対して操作を行う装置及び方法に関連する。コンピュータ周辺機器の分野に属する。
【背景技術】
【０００２】
近年USBインタフェースの普及により、市場にUSBインタフェースの設備は多くなってきて、沢山のメーカはUSB製品を開発している。これらのUSB製品は、開発から製品販売まで沢山のテストが必要であり、また販売する前に特殊な操作をしなければならない製品もある（例えば、USBメモリは、出荷時に物理フォーマットをしなければならない）。USBインタフェースの設備に対してテストや操作を行う時に、ホストはまずUSBインタフェースの設備の状態を判断しなければならない。USBインタフェースは四本の線：電源線（VCC）、信号線（D+）、信号線（D-）、グランド線（GND）により構成される。USB設備とホストの接続は、この四本の線で実現されている。ホストにUSB設備の接続がない時に信号線（D+、D-）の信号レベルはLowレベルの状態になっている。一旦設備が接続されると、信号線（D+、D-）の内の一本はHighレベルになり、設備は正常に使用できる様になる。設備が接続されても、信号線（D+、D-）の内のどちらもHighレベルにならず、或いは二本ともHighレベルになった場合、この設備は故障であることになる。
【０００３】
これらのUSB製品は、テストや特殊操作をする時に、ホストのUSBインタフェースに接続して操作しなければならない。但し、一般のホストに装着しているUSBポートは数が少ない。通常、製品の生産は大量である為、テストや特殊操作に必要なホストと操作要員の数も多くなる。これによって、リソースの浪費に繋がり、生産効率も低下する。
【０００４】
現在市場に広く使用されているのはUSBHUBである。これによって、ホストの一つのUSBインタフェースを複数のUSBインタフェースに拡張する。生成する過程に、普通のUSBHUBを使用した場合、手作業で設備を頻繁に挿したり外したりして、初めて使用者があるポートに設備があるかどうかを識別できる。手作業で設備を挿したり外したりする時間は、全生産過程に大きな部分を占めている。また、ホストは各USBインタエースにある設備に対して違う業務を実行でき、各設備に対して相応するバンド幅を割当てる。即ち、複数のUSBインタフェースにある設備はUSBバスバンドを共有する。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来技術に存在した問題点は：
１、上位アプリケーションは、選択的に指定の下位USB拡張ポートを制御することができない。
【０００６】
２、拡張ポートにUSB設備があるか、またUSB設備が正常であるかを検査できない。ユーザはどのUSB設備が故障したかを知る事ができない。
【０００７】
３、拡張ポートに接続しているUSB設備の数は、USBバスバンドを影響する。
【０００８】
４、生産効率は低い。
【０００９】
上記従来技術の問題点を解決する為に、本発明は一つのUSBインタフェース設備に対して操作を行う方法及び装置を提供した。
【課題を解決するための手段】
【００１０】
本発明が採用した技術ソリューションは、従来設備に制御モジュールを追加し、ホスト上の上位ソフトウェアは、インタフェース関数を利用して、一定の通信プロトコルを用いて制御モジュールと通信して、制御モジュールにより指定の拡張ポートを制御する。
【００１１】
一方、本発明はUSBインタフェース設備に対して操作を行う装置を提供している。当装置は、ホスト、制御モジュール、スイッチモジュール、拡張ポートモジュールを含む。ホストは指定の拡張ポートを開くコマンドを送信し、指定の拡張ポートに接続しているUSB設備に対して操作を行う。制御モジュールはコマンドを解析し拡張ポートのアドレスを取得して、スイッチモジュールを制御する。スイッチモジュールは、該当アドレスの拡張ポートとホストのUSBインタフェース間のチャネルを開閉する。拡張ポートモジュールは、USB設備と接続する。ホストは、ホストのUSBインタフェースを通じて制御モジュール及びスイッチモジュールと接続する。制御モジュールはスイッチモジュールと接続し、スイッチモジュールは拡張ポートモジュールと接続する。
【００１２】
制御モジュールは該当アドレスの拡張ポートに接続しているUSB設備の状態を検査し、ホストに通報する検査サブモジュールを備える。
【００１３】
拡張ポートモジュールの電源線、D+線とD-線は、スイッチモジュールを通してホストのUSBインタフェースと接続する。
【００１４】
拡張ポートモジュールのグランド線は、直接にホストのUSBインタフェースと接続する。
【００１５】
スイッチモジュールがON状態の時、スイッチモジュールは、拡張ポートにあるUSB設備の電源、D+及びD-の三本の接続線とホストUSBインタフェースの接続を導通する。
【００１６】
スイッチモジュールがOFFの時、スイッチモジュールは、拡張ポートにあるUSB設備の電源、D+及びD-の三本の接続線とホストUSBインタフェースの接続を遮断する。
【００１７】
スイッチモジュールは、アナログスイッチチップ、アドレス選択チップ及びスイッチ回路を含む。アドレス選択チップは、所述の制御モジュール、アナログスイッチチップ及びスイッチ回路と接続する。拡張ポートモジュールの電源線は、スイッチ回路を通して、ホストのUSBインタフェースと接続する。拡張ポートモジュールのD+線とD-線は、アナログスイッチチップを通して、ホストのUSBインタフェースと接続する。
【００１８】
拡張ポートモジュールのグランド線は、スイッチモジュールを通して、ホストのUSBインタフェースと接続する。
【００１９】
スイッチモジュールがON状態の時に、拡張ポートにあるUSB設備は、電源、D+、D-及びグランドの四本接続線を通じてホストのUSBインタフェースと接続する。
【００２０】
スイッチモジュールがOFFの時に、スイッチモジュールは、拡張ポートにあるUSB設備の電源、D+、D-及びグランドの四本接続線とホストのUSBインタフェースの接続を遮断する。
【００２１】
スイッチモジュールは、アナログスイッチチップ、アドレス選択チップ及びスイッチ回路を含む。アドレス選択チップは、制御モジュール、アナログスイッチチップ及びスイッチ回路と接続する。拡張ポートモジュールの電源線とグランド線は、スイッチ回路を通してホストのUSBインタフェースと接続する。拡張ポートモジュールのD+線とD-線は、アナログスイッチチップを通してホストのUSBインタフェースと接続する。
【００２２】
ホストはUSBHUBモジュールのUSBインタフェースを通して、制御モジュール及びスイッチモジュールと接続する。拡張ポートモジュールは、複数の拡張インタフェースを含む。
【００２３】
拡張ポートモジュールは、複数の拡張インタフェースを含む。
【００２４】
もう一方で、本発明はUSBインタフェース設備に対して操作を行う方法を提供している。下記の手順を含む：
手順Ａ：ホストは、制御モジュールに拡張ポートを開くコマンドを発送する；
手順Ｂ：制御モジュールは、コマンドを解析し、拡張ポートのアドレスを取得する；
手順Ｃ：制御モジュールは、スイッチモジュールを制御し、アドレスの拡張ポートとホスト間のチャネルを開く；
手順Ｄ：拡張ポートに接続しているUSB設備に対して操作を行う。
手順Ｃに下記の手順を含む：
手順Ｃ１：制御モジュールは、スイッチモジュール内部のアドレス選択チップでアドレスの拡張ポートを選択する；
手順Ｃ２：制御モジュールは、スイッチ内部の制御アナログスイッチチップとトランジスタスイッチ回路でアドレスの拡張ポートとホスト間の接続線を開く。
【００２５】
手順Ｄは具体的に下記の通り：該当アドレスの拡張ポートに接続しているUSB設備の状態が正常であるかの検査操作を行い、検査の結果をホストに通報する。
【００２６】
手順Ｄは具体的に下記の通り：拡張ポートに接続しているUSB設備に対して業務操作を行う。
【００２７】
手順Ｃと手順Ｄの間に、該当アドレスの拡張ポートに接続しているUSB設備の状態が正常であるかの検査操作を行い、検査の結果をホストに通報する手順も含む。
【００２８】
該当の検査手順は具体的に、拡張ポートに接続している設備の状態が正常であると検知してホストに通報するとなった時に、対応的に、手順Ｄは具体的に、ホストは拡張ポートに接続しているUSB設備に対して業務操作を行う。
【００２９】
該当の検査手順は具体的に、拡張ポートに接続しているUSB設備の状態が正常でないと検知してホストに通報するとなった時に、再度ホストが制御モジュールに拡張ポートを開くコマンドを発送する手順を行う。
【００３０】
該当の検査手順は具体的に、拡張ポートに接続しているUSB設備の状態が正常でないと検知してホストに通報するとなった時に、再度ホストが制御モジュールに拡張ポートを開くコマンドを発送する手順を行う。対応的に、手順Ｄは具体的に下記の通り：ホストは拡張ポートに接続しているUSB設備に対して業務操作を行う。
【００３１】
該当の検査手順は具体的に、拡張ポートに接続しているUSB設備の状態が正常でないと検知してホストに通報するとなった時に、再度ホストがその他の拡張ポートを開くコマンドを発送する手順を行う。対応的に、手順Ｄは具体的に下記の通り：ホストはその他の拡張ポートに接続しているUSB設備に対して業務操作を行う。
【００３２】
拡張ポートに接続しているUSB設備の状態が正常でないことは、具体的に下記の通り：拡張ポートに接続しているUSB設備は存在しているが、USB設備は故障状態になっている。
【００３３】
拡張ポートに接続しているUSB設備の状態が正常でないことは、具体的に下記の通り：拡張ポートに接続しているUSB設備は存在しない。
【００３４】
手順Ｄの後に、もう一つの拡張ポートに対して手順Ａ〜Ｄを再度操作する。
【発明の効果】
【００３５】
１、上位アプリケーションソフトは、選択的に指定の下位USB拡張ポートを制御することができる。
【００３６】
２、指定の拡張ポートにUSB設備があるかどうか、またはUSB設備が正常かどうかを検査できる。ユーザはどのUSB設備が故障したかを知ることができる。
【００３７】
３、拡張ポートに接続しているUSB設備の台数によって、USBバスバンドが影響される事はない。
【００３８】
４、生産効率は高くなる。
【発明を実施するための最良の形態】
【００３９】
これから、図面と実施例によって、本発明についてさらに説明するが、本発明に対する限定としない。
【００４０】
本発明の装置は、ソフトウェアユニットとハードウェアユニットの二つの部分に構成されている。ソフトウェア部は、主に上位アプリケーションソフトであり、上位アプリケーションソフトは、システム自身のAPI関数及び対応のプロトコルを利用して制御モジュールと通信することができる。
【００４１】
制御モジュールは、上位アプリケーションソフトのコマンドを受信した後、要求に従いスイッチモジュール（当モジュールはアドレス選択チップ74HC138、スイッチ回路と双方向高速アナログスイッチチップMAX4638を含む）と拡張ポートの物理接続を制御する。各拡張ポートに絶対ポート番号があり、これらのポート番号にそれぞれの違うアドレスが与えられている。制御モジュールは、スイッチモジュール内のアドレス選択チップで上位アプリケーションソフトが制御する指定のポートを確定する。
【００４２】
スイッチモジュールの内部は、アナログスイッチチップ、アドレス選択チップ及びトランジスタで構成されたスイッチ回路を含む。拡張ポート上のUSB設備とホストと通信するために四本の接続線（電源、D+、D-、グランド）が必要の為、スイッチモジュール内部のこれらのデバイスを使用して、拡張ポート上のUSB設備のこの四本の接続線を別々に遮断する。これにより、指定の拡張ポート上のUSB設備とホストの通信を物理的に制御する事はできる。
【００４３】
上位アプリケーションソフトが制御モジュールにコマンドを発送し、ある拡張ポート上のUSB設備へのアクセスを要求する時に、制御モジュールはスイッチモジュール内部のアドレス選択チップで指定のアドレスの拡張ポートを選択する。同時に、アナログスイッチチップとトランジスタスイッチ回路を制御し、指定したアドレスの拡張ポートのUSBの四本の接続線をホストのUSBインタフェースと接続する。これにより、指定の拡張ポート上のUSB設備は、ホストと正常に通信できる様になる。このソリューションによって、拡張ポート上は一つだけの設備がホストと通信でき、該当設備がホストと通信している時に、その他の拡張ポートとホストのUSBインタフェースは物理的に切断されている。拡張ポートに接続しているUSB設備の数がいくつであっても、システムはUSBバスのバンド幅の不足が発生しないというメリットがある。また、上位アプリケーションソフトは、指定の拡張ポートを自由に制御することができる。
【実施例１】
【００４４】
図１の示す様に、本発明が提供した装置は、上位ユーザソフトウェアユニットを有するホスト12、USBHUBモジュール13（一つのUSBHUBチップAU9254A21を含む）、制御モジュール14（即ち制御モジュール、該当ユニットは一つのマイクロコントローラMotorola68HC908JB8を含む）、スイッチモジュール15と拡張ポートモジュール16を含む。これらのモジュールの間に、直接のデータ接続方式を使用している。具体的な接続関係は、ホスト12はホストのUSBHUBモジュール13の二つのUSBインタフェースを通じて制御モジュール14とスイッチモジュール15とそれぞれ接続し、制御モジュール14はスイッチモジュール15と接続し、スイッチモジュール15は拡張ポートモジュール16と接続する。
【００４５】
前記上位ユーザソフトウェアユニットはAPI関数と、対応のインタフェースコマンド及ユーザソフトウェアにより構成されている。ユーザは、API関数と対応のインタフェースコマンドを用いて操作を行い、拡張ポートモジュール16を制御することができる。
【００４６】
USBHUBモジュール13は、シングルチップで構成され、主にUSBハブの機能を実現し、制御モジュール14または拡張ポートモジュール16がホストと通信できることを確保している。
【００４７】
制御モジュール14は、マイクロプロセッサを有し、上位ユーザソフトウェアユニットのコマンドを応答するための当モジュールは、リアルタイムに具体的なコマンドに従ってスイッチモジュール15を制御することにより、拡張ポートモジュール16を管理する機能を実現する。制御モジュール14は、特定アドレスの拡張ポートに接続しているUSB設備の状態を検査して、ホストに通報する検査サブモジュールも含む。
【００４８】
拡張ポートモジュールの電源線、D+線、D-線及びグランド線は、スイッチモジュールを通じてホストのUSBインタフェースと接続する。スイッチモジュールがON状態の時に、拡張ポートにあるUSB設備は、電源、D+、D-及びグランドの四本接続線を通じてホストのUSBインタフェースと接続する。スイッチモジュールがOFFの時に、スイッチモジュールは、拡張ポートにあるUSB設備の電源、D+、D-及びグランドの四本接続線とホストのUSBインタフェースとの接続を遮断する。当然、拡張ポートのグランド線は、常にホストのUSBインタフェースと接続してもいい。スイッチモジュールは単独に電源線を開閉することによって、同様の技術目的を実現できる。
【００４９】
具体的に、スイッチモジュール15は、アナログスイッチチップ、アドレス選択チップ及びスイッチ回路を含む。アドレス選択チップは、制御モジュール、アナログスイッチチップ及びスイッチ回路と接続する。スイッチ回路は、電源線とグランド線で拡張ポートモジュール及びホストのUSBインタフェースと接続する。アナログスイッチチップは、D+線とD-線で拡張ポートモジュール及びホストのUSBインタフェースと接続する。スイッチ回路、アナログスイッチチップがON状態の時に、即ちスイッチ回路、アナログスイッチチップが該当アドレスの拡張ポートとホスト間のチャネルを開いた時に、拡張ポートにあるUSB設備は、電源、D+、D-及びグランドの四本接続線を通じてホストのUSBインタフェースと接続する。スイッチモジュールがOFFの時に、即ちスイッチ回路、アナログスイッチチップが該当アドレスの拡張ポートとホスト間のチャネルを閉じた時に、スイッチ回路、アナログスイッチチップは、拡張ポートにあるUSB設備の電源、D+、D-及びグランドの四本接続線とホストのUSBインタフェースの接続を遮断する。スイッチモジュール15は、十個のスイッチサブモジュールで構成され、制御モジュール14に制御されて、物理チャネル上で拡張ポートモジュール16とUSBHUBモジュール13との接続を繋いだり切断したりする。また、同一時間内に拡張ポートモジュール16において、一つだけの拡張ポートはUSBHUBモジュール13と物理的に接続できることになっている。
【００５０】
拡張ポートモジュール16は、10個の拡張ポート、即ち外部接続インタフェースを提供し、ユーザにUSBメモリの接続インタフェースを提供することができる。拡張ポート上に一つだけのUSBメモリがホストと通信できる為、該当USBメモリがホストと通信する際、その他の拡張ポートはホストと物理的に切断されている。これで、拡張ポートに接続しているUSB設備の数がいくつであっても、システムはUSBバスのバンド幅不足の問題が生じない。この為、拡張ポートモジュール16は、理論上に任意の数の拡張ポートを提供できることになる。
【実施例２】
【００５１】
図２の示す様に、本発明装置は、上位ユーザソフトウェアユニットを含むホスト12、制御モジュール14（制御モジュールは一つのマイクロコントローラMotorola68HC908JB8を含む）、スイッチモジュール15（スイッチモジュールはアドレス選択チップ74HC138、スイッチ回路と双方向高速アナログスイッチチップMAX4638を含む）と拡張ポートモジュール16を含む。これらのモジュールの間に、直接のデータ接続方式を使用している。具体的な接続関係は、ホスト12はホストのUSBインタフェースを通じて制御モジュール14とスイッチモジュール15とそれぞれ接続し、制御モジュール14はスイッチモジュール15と接続し、スイッチモジュール15は拡張ポートモジュール16と接続する。
【００５２】
前記上位ユーザソフトウェアユニットは、API関数、対応のインタフェースコマンド及ユーザソフトウェアにより構成されている。ユーザは、API関数と対応のインタフェースコマンドを用いて操作を行い、拡張ポートモジュール16を制御することができる。
【００５３】
制御モジュール14は、マイクロプロセッサを含み、上位ユーザソフトウェアユニットのコマンドを応答するための当モジュールは、リアルタイムに具体的なコマンドに従ってスイッチモジュール15を制御することにより、拡張ポートモジュール16を管理する機能を実現する。
【００５４】
スイッチモジュール15は、アナログスイッチチップ、アドレス選択チップ及びスイッチ回路を含む。アドレス選択チップは、制御モジュール、アナログスイッチチップ及びスイッチ回路と接続する。スイッチ回路は、電源線とグランド線で拡張ポートモジュール及びホストのUSBインタフェースと接続する。アナログスイッチチップは、D+線とD-線で拡張ポートモジュール及びホストのUSBインタフェースと接続する。スイッチ回路、アナログスイッチチップが該当アドレスの拡張ポートとホストのUSBインタフェース間のチャネルを開いた時に、拡張ポートにあるUSB設備は、電源、D+、D-及びグランドの四本接続線を通じてホストのUSBインタフェースと接続する。スイッチ回路、アナログスイッチチップが該当アドレスの拡張ポートとホストのUSBインタフェース間のチャネルを閉じた時に、スイッチ回路、アナログスイッチチップは、拡張ポートにあるUSB設備の電源、D+、D-及びグランドの四本接続線とホストのUSBインタフェースとの接続を遮断する。当然、拡張ポートのグランド線は、常にホストのUSBインタフェースと直接に接続してもいい。スイッチ回路は電源線を単独に開閉することによって、同様の技術目的を実現できる。スイッチモジュール15は、制御モジュール14に制御されて、物理チャネル上で拡張ポートモジュール16とホスト12との接続を繋いだり切断したりする。また、同一時間内に拡張ポートモジュール16において、一つだけの拡張ポートはホスト12と物理的な接続ができることになっている。
【００５５】
前記拡張ポートモジュール16は、外部接続インタフェースを提供し、ユーザにUSB設備の接続インタフェースを提供することができる。
【実施例３】
【００５６】
操作者は一番目の拡張ポートに接続しているUSBメモリに対して検査を行う。図3の示す様に、本実施例に採用されている方法1は下記の手順を含む：
手順101：操作者はホストに対して、一番目の拡張ポートに接続しているUSBメモリに対して検査を行うコマンドを発行し、ホストの上位アプリケーションソフトはAPI関数及び対応のプロトコルを利用して制御モジュールに一番目の拡張ポートを開くコマンドを発送する。
【００５７】
手順102：制御モジュールはホストが発送したコマンドを受け取り、対応のプロトコルに従いコマンドを解析する。
【００５８】
手順103：制御モジュールは、コマンド解析で取得したデータにより、上位アプリケーションソフトが制御しようとする一番目の拡張ポートのアドレスが001であることを確定する。
【００５９】
手順104：制御モジュールはスイッチモジュールを制御し、拡張ポート001とホストまたはUSBHUBの接続チャネルだけを開き、拡張ポート001とホストまたはUSBHUBと物理的に接続されて、その他の拡張ポートとホストまたはUSBHUBとは物理的に接続されていないことを確保する。
【００６０】
手順105：制御モジュールは拡張ポート001に接続しているUSBメモリに対して検査を行い、USBメモリが存在し且つ状態が正常であることを判断して、制御モジュールはホストにUSBメモリが存在し且つ状態が正常である旨の情報を返す。その後、二番目の拡張ポートに対して手順101の操作を行う。これで、USBメモリが存在し且つ状態が正常である旨の情報が表示されることによって、操作者は当該USBメモリが存在し且つ状態が正常であることが分かるようになる。
【００６１】
同様に、故障したUSBメモリを差し込んだ場合は、本方法を使用すれば、その故障状態を検出できる。また、拡張ポートにUSBメモリが差し込んでいない場合は、本方法を使用すれば、そのポートにUSBメモリが差し込んでいないことも検出できる。
【実施例４】
【００６２】
操作者は本発明の方法１を使用して、8個の状態が正常のUSBメモリを検出したとする。前記8個の状態が正常のUSBメモリをそれぞれ拡張ポートの1-8のポートに差し込んで、本発明の方法2を使用してフォーマット操作を行う。図４の示す様に、本実施例に採用している方法２は下記の手順を含む：
手順201：操作者はホストに対して一番目の拡張ポートに接続しているUSBメモリに対してフォーマットを行うコマンドを発行し、ホストの上位アプリケーションソフトはAPI関数及び対応のプロトコルを利用して制御モジュールに一番目の拡張ポートを開くコマンドを発送する。
【００６３】
手順202：制御モジュールはホストが発送したコマンドを受け取り、対応のプロトコルに従いコマンドを解析する。
【００６４】
手順203：制御モジュールは、コマンド解析で取得したデータより、上位アプリケーションソフトが制御しようとする一番目の拡張ポートのアドレスが001であることを確定する。
【００６５】
手順204：制御モジュールはスイッチモジュールを制御し、拡張ポート001とホストまたはUSBHUBの接続チャネルだけを開き、拡張ポート001とホストまたはUSBHUBは物理的に接続されて、その他の拡張ポートとホストまたはUSBHUBは物理的に接続されていないことを確保する。
【００６６】
手順205：ホストのアプリケーションソフトは拡張ポート001に接続しているUSBメモリに対してフォーマット操作を行い、成功後、成功した旨の情報を表示して操作者に該当USBメモリのフォーマットが完成したことを通知する。
【００６７】
その後、再度手順201を実行するが、違うのは操作者は新たにホストに対して、二番目の拡張ポートに接続しているUSBメモリに対してフォーマットを行うコマンドを発行するのである。当然、操作者からのコマンド発行でなくても、コンピュータソフトウェアによって自動的にも完成できる。これによって、8個のUSBメモリに対してフォーマット操作を完成する。本方法を使用してUSBメモリに対してフォーマット操作を行う場合、USBメモリの状態を確認する必要がなく、8個の検査していないUSBメモリに対して直接にフォーマット操作することもできる。或いは、各ポートに対してそれぞれにフォーマット操作のコマンドを発行し、USBメモリを接続しているかを考えなくてもいい。
【実施例５】
【００６８】
当然、操作者は一番目の拡張ポートに接続しているUSBメモリに対してフォーマット操作を行う時に、検査と判断をしながらフォーマット操作を行ってもいい。図５の示す様に、本実施例が採用している方法３は下記の手順を含む。
【００６９】
手順301：操作者はホストに対して一番目の拡張ポートに接続しているUSBメモリに対して検査且つフォーマットを行うコマンドを発行し、ホストの上位アプリケーションソフトはAPI関数及び対応のプロトコルを利用して制御モジュールに一番目の拡張ポートを開くコマンドを発送する。
【００７０】
手順302：制御モジュールはホストが発送したコマンドを受け取り、対応のプロトコルに従いコマンドを解析する。
【００７１】
手順303：制御モジュールは、コマンド解析で取得したデータより、上位アプリケーションソフトが制御しようとする一番目の拡張ポートのアドレスが001であることを確定する。
【００７２】
手順304：制御モジュールはスイッチモジュールを制御し、拡張ポート001とホストまたはUSBHUBの接続チャネルだけを開き、拡張ポート001とホストまたはUSBHUBは物理的に接続されて、その他の拡張ポートとホストまたはUSBHUBは物理的に接続されていないことを確保する。
【００７３】
手順305：制御モジュールは拡張ポート001に接続しているUSBメモリに対して検査を行い、USBメモリの状態を判断する。状態が正常即ちUSBメモリが挿し込んでいる且つ故障がない時に、直接に手順306を実行する。拡張ポートにUSBメモリが挿しこんであるが該当設備は故障したUSBメモリである時に、その後の手順307を実行する。
【００７４】
手順306：制御モジュールはホストにUSBメモリが存在し且つ状態が正常である旨の情報を返す。その後、直接に手順308を実行する。
【００７５】
手順307：制御モジュールはホストにUSBメモリが存在したが状態は故障である旨の情報を返す。新しいUSBメモリを交換した後、一番目の拡張ポートに対して改めて類似の関連手順を行う。
【００７６】
手順308：返った情報を受け取った後、ホストのアプリケーションソフトは拡張ポート001に接続しているUSBメモリに対してフォーマット操作を行い、成功後、成功した旨の情報を表示して操作者に該当USBメモリのフォーマットが完成したことを通知する。
【実施例６】
【００７７】
実施例５と違って、拡張ポートにUSBメモリが差し込んでない場合、図６の示す様に、本実施例に採用されている方法４は下記の手順を含む。
【００７８】
手順401：操作者はホストに対して一番目の拡張ポートに接続しているUSBメモリに対する検査とフォーマットを行うコマンドを発行し、ホストの上位アプリケーションソフトはAPI関数及び対応のプロトコルを利用して制御モジュールに一番目の拡張ポートを開くコマンドを発送する。
【００７９】
手順402：制御モジュールはホストが発送したコマンドを受け取り、対応のプロトコルに従いコマンドを解析する。
【００８０】
手順403：制御モジュールは、コマンド解析で取得したデータより、上位アプリケーションソフトが制御しようとする一番目の拡張ポートのアドレスが001であることを確定する。
【００８１】
手順404：制御モジュールはスイッチモジュールを制御し、拡張ポート001とホストまたはUSBHUBの接続チャネルだけを開き、拡張ポート001とホストまたはUSBHUBは物理的に接続されて、その他の拡張ポートとホストまたはUSBHUBは物理的に接続されていないことを確保する。
【００８２】
手順405：制御モジュールは拡張ポート001に接続しているUSBメモリに対して検査を行い、USBメモリの状態を判断する。状態が正常の時に、直接に手順406を実行する。拡張ポートにUSBメモリが挿しこんでいない時に、その後の手順407を実行する。
【００８３】
手順406：制御モジュールはホストにUSBメモリが存在し且つ状態が正常である旨の情報を返す。その後、直接に手順408を実行する。
【００８４】
手順407：制御モジュールはホストに拡張ポートにUSBメモリが挿し込んでない旨の情報を返す。新しいUSBメモリを交換した後、一番目の拡張ポートに対して改めて類似の関連手順を行う。
【００８５】
手順408：返った情報を受け取った後、ホストのアプリケーションソフトは拡張ポート001に接続しているUSBメモリに対してフォーマット操作を行い、成功後、成功した旨の情報を表示して操作者に該当USBメモリのフォーマットが完成したことを通知する。
【実施例７】
【００８６】
USBメモリが故障した時に、直ちに一番目の拡張ポートのUSBメモリを交換せず、二番目の拡張ポートに対して操作を行ってもいい。図７の示す様に、本実施例に採用されている方法５は下記の手順を含む：
手順501：操作者はホストに対して一番目の拡張ポートに接続しているUSBメモリに対して検査とフォーマットを行うコマンドを発行し、ホストの上位アプリケーションソフトはAPI関数及び対応のプロトコルを利用して制御モジュールに一番目の拡張ポートを開くコマンドを発送する。
【００８７】
手順502：制御モジュールはホストが発送したコマンドを受け取り、対応のプロトコルに従いコマンドを解析する。
【００８８】
手順503：制御モジュールは、コマンド解析で取得したデータより、上位アプリケーションソフトが制御しようとする一番目の拡張ポートのアドレスが001であることを確定する。
【００８９】
手順504：制御モジュールはスイッチモジュールを制御し、拡張ポート001とホストまたはUSBHUBの接続チャネルだけを開き、拡張ポート001とホストまたはUSBHUBと物理的に接続されて、その他の拡張ポートとホストまたはUSBHUBとは物理的に接続されていないことを確保する。
【００９０】
手順505：制御モジュールは拡張ポート001に接続しているUSBメモリに対して検査を行い、USBメモリの状態を判断する。状態が正常の時に、直接に手順506を実行する。拡張ポートにUSBメモリが挿しこんであるが該当設備が故障したUSBメモリである時に、その後の手順507を実行する。
【００９１】
手順506：制御モジュールはホストにUSBメモリが存在し且つ状態が正常である旨の情報を返す。その後、直接に手順508を実行する。
【００９２】
手順507：制御モジュールはホストにUSBメモリが存在したが状態が故障である旨の情報を返す。新しいUSBメモリに交換した後、二番目の拡張ポートに対して改めて類似の関連手順を行う。
【００９３】
手順508：返った情報を受け取った後、ホストのアプリケーションソフトは拡張ポート001に接続しているUSBメモリに対してフォーマット操作を行い、成功後、成功した旨の情報を表示して操作者に該当USBメモリのフォーマットが完成したことを通知する。
【実施例８】
【００９４】
拡張ポートにUSBメモリが挿し込んでない時に、直ちに一番目の拡張ポートに改めてUSBメモリを差し込まず、二番目の拡張ポートに対して操作を行ってもいい。図８の示す様に、本実施例に採用している方法６は下記の手順を含む：
手順601：操作者はホストに対して一番目の拡張ポートに接続しているUSBメモリに対して検査とフォーマットを行うコマンドを発行し、ホストの上位アプリケーションソフトはAPI関数及び対応のプロトコルを利用して制御モジュールに一番目の拡張ポートを開くコマンドを発送する。
【００９５】
手順602：制御モジュールはホストが発送したコマンドを受け取り、対応のプロトコルに従いコマンドを解析する。
【００９６】
手順603：制御モジュールは、コマンド解析で取得したデータより、上位アプリケーションソフトが制御しようとする一番目の拡張ポートのアドレスが001であることを確定する。
【００９７】
手順604：制御モジュールはスイッチモジュールを制御し、拡張ポート001とホストまたはUSBHUBの接続チャネルだけを開き、拡張ポート001とホストまたはUSBHUBと物理的に接続されて、その他の拡張ポートとホストまたはUSBHUBとは物理的に接続されていないことを確保する。
【００９８】
手順605：制御モジュールは拡張ポート001に接続しているUSBメモリに対して検査を行い、USBメモリの状態を判断する。状態が正常の時に、直接に手順606を実行する。拡張ポートにUSBメモリが挿しこんでない時に、その後の手順607を実行する。
【００９９】
手順606：制御モジュールはホストにUSBメモリが存在し且つ状態が正常である情報を返す。その後、直接に手順608を実行する。
【０１００】
手順607：制御モジュールはホストに拡張ポートにUSBメモリが挿し込んでない情報を返す。新しいUSBメモリに交換した後、二番目の拡張ポートに対して改めて類似の関連手順を行う。
【０１０１】
手順608：返った情報を受け取った後、ホストのアプリケーションソフトは拡張ポート001に接続しているUSBメモリに対してフォーマット操作を行い、成功後、成功した旨の情報を表示して操作者に該当USBメモリのフォーマットが完成したことを通知する。
【０１０２】
上記の実施例は、USBメモリに対してフォーマットを行う操作を列挙しただけで、当然その他のUSBインタフェース設備に対して操作を行ってもいい。その業務操作はフォーマット操作に限らず、USBインタフェース設備に対して読み書きなどその他の業務操作を行うこともできる。実施例5-8は、操作が完成した後次の拡張ポートに対して引き続き操作を行い、再度開始手順から実行してもいい。
【０１０３】
以上は、本発明が提供している方法と装置について、詳細な紹介を行った。本文に具体的な例を用いて本発明の原理と実施態様について記述を行ったが、上記の実施例の説明は本発明の方法及び実現コンセプトを理解する為に用いられるものである。同時に、本分野の一般技術者にとって、本発明のコンセプトに従い、具体的な実施態様や応用範囲に対して変更があり得る。したがい、本明細書の内容は、本発明に対する限定と理解されてはならない。
【図面の簡単な説明】
【０１０４】
【図１】本発明の提供するUSBHUBモジュールを含む装置の構成を説明するブロック図である。
【図２】本発明の提供するUSBHUBモジュールを含まない装置の構成を説明するブロック図である。
【図３】本発明の提供するUSBインタフェース設備に対して操作を行う方法１のフロー図である。
【図４】本発明の提供するUSBインタフェース設備に対して操作を行う方法２のフロー図である。
【図５】本発明の提供するUSBインタフェース設備に対して操作を行う方法３のフロー図である。
【図６】本発明の提供するUSBインタフェース設備に対して操作を行う方法４のフロー図である。
【図７】本発明の提供するUSBインタフェース設備に対して操作を行う方法５のフロー図である。
【図８】本発明の提供するUSBインタフェース設備に対して操作を行う方法６のフロー図である。
【図１】
2007323648.tif 000003
【図２】
2007323648.tif 000004
【図３】
2007323648.tif 000005
【図４】
2007323648.tif 000006
【図５】
2007323648.tif 000007
【図６】
2007323648.tif 000008
【図７】
2007323648.tif 000009
【図８】
2007323648.tif 000010