(57)【要約】【課題】複数の種類の通信経路を併用可能なシステムにおいて、通信経路が固定されている場合と比較して通信の失敗により処理が実行されなくなることを抑制する。【解決手段】インターフェース１１は、第１の通信方法に対応した第１接続部１１１と、第２の通信方法に対応した第２接続部１１２とを備える。第１実行部１２は、画像処理装置１０が実行する装置実行処理に含まれる第１の機能をユーザ端末２０と通信して実行する。第２実行部１３は、ユーザ端末２０と通信して第２の機能を実行する。切替部１４は、第１接続部１１１を介した第１実行部１２の通信が切断された場合又は第１接続部１１１を介した通信が確立できなかった場合、第２接続部１１２を介した通信の接続先を、第２実行部１３から第１実行部１２に切り替える。【選択図】図２
2019040341.tif 000002
【特許請求の範囲】
【請求項１】
第１の通信方法に対応した第１接続部と、第２の通信方法に対応した第２接続部とを備えるインターフェースと、
当該装置が実行する装置実行処理に含まれる第１の機能を他の装置と通信して実行する第１実行部と、
他の装置と通信して第２の機能を実行する第２実行部と、
前記第１接続部を介した前記第１実行部の通信が切断された場合又は該第１接続部を介した通信が確立できなかった場合、前記第２接続部を介した通信の接続先を、前記第２実行部から前記第１実行部に切り替える切替部と
を有する情報処理装置。
【請求項２】
前記第１実行部で実行される処理及び前記第２実行部で実行される処理は、当該装置で実行される一の処理に関係する処理である
請求項１に記載の情報処理装置。
【請求項３】
前記第１の機能は、当該装置で実行される処理の実行に必須の処理であり、
前記第２の機能は、前記必須の処理以外の処理である
請求項２に記載の情報処理装置。
【請求項４】
前記第２実行部と通信する装置は、前記第１実行部と通信する装置である
請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第１接続部を介した通信が確立している場合、前記第１実行部及び前記第２実行部により、前記第１接続部を介した通信及び前記第２接続部を介した通信が並列して用いられる
請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記切替部は、前記第１接続部を介した前記第１実行部の通信が切断された場合、前記第２接続部を介した前記第２実行部の通信を切断した後、前記第２接続部を介した前記第１実行部の通信を確立する
請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記切替部による切替がなされた場合に、前記第２の機能を停止させる制御を行う制御部
を更に有する請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記第１の機能は、前記第２の機能が中断している期間においても当該第１の機能の実行により前記装置実行処理が継続される機能である
請求項７に記載の情報処理装置。
【請求項９】
前記第２実行部は、前記第１接続部を介した通信が確立された場合に、前記第２接続部を介した通信の確立処理を行う
請求項１乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記第１の通信方法は、前記第２の通信方法よりも通信速度が高速である
請求項１乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記インターフェースは、ＵＳＢ３．ｘのＳＳ（Super-Speed）モードに準拠した前記第１接続部と、ＵＳＢ２．０のＨＳ（High-Speed）モードに準拠した前記第２接続部とを備え、
前記切替部は、前記ＳＳモードの通信が切断された場合又は該ＳＳモードの通信が確立できなかった場合、ＨＳモードの通信の接続先を、前記第２実行部から前記第１実行部に切り替える
請求項１０に記載の情報処理装置。
【請求項１２】
第１の通信方法に対応した第１接続部と、第２の通信方法に対応した第２接続部とを備えるインターフェースと、当該装置が実行する装置実行処理に含まれる第１の機能を他の装置と通信して実行する第１実行部と、他の装置と通信して第２の機能を実行する第２実行部とを有するコンピュータに、
前記第１接続部を介した前記第１実行部の通信が切断された場合又は該第１接続部を介した通信が確立できなかった場合、前記第２接続部を介した通信の接続先を、前記第２実行部から前記第１実行部に切り替えるステップ
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
ホスト機器と周辺機器とのインターフェース規格として、ＵＳＢ（Universal Serial Bus）が用いられている。ＵＳＢは、ＵＳＢ２．０に加え、ＵＳＢ３．０やＵＳＢ３．１が用いられている。ＵＳＢ３．０は、ＵＳＢ２．０でサポートしていたＤ＋／Ｄ−信号経由で転送するＨＳ（High-Speed）モード、ＦＳ（Full-Speed）モード、ＬＳ（Low-Speed）モードに加え、新たに追加されたSSTX+/- および SSRX+/-信号経由で転送するＳＳ（Super-Speed）モードを実装している。通常、ホスト機器と周辺機器（デバイス機器）との通信は、ＳＳ／ＨＳ／ＦＳ／ＬＳの何れかの転送モードで行われる。このとき、ＳＳモードでの接続が確立された場合、ＴＸ／ＲＸの信号ラインのみが使用される。一方、ＳＳモードでの接続が確立しなかった場合はＤ＋／Ｄ−の信号ラインが用いられ、ＨＳ／ＦＳ／ＬＳモードでの接続が行われる。
【０００３】
また、特許文献１には、ホスト機器と接続可能なデバイス機器であって、第１の規格によって規定された第１の接続部と、該第１の規格と異なる第２の規格に準拠して該第１の接続部と独立して設けられた第２の接続部とを備え、該第１の接続部と該第２の接続部とを前記ホスト機器の対応するインターフェースに同時に接続可能なインターフェース部と、第１の接続部に接続され、デバイス機器の少なくとも一部の機能を制御する制御部と、第２の接続部に接続され、第２の規格に準拠したデバイス機器と接続可能な第３の接続部とを備えたデバイス機器が記載されている。
【０００４】
特許文献２には、少なくとも一つの下流インターフェースが、ＵＳＢ３．０準拠デバイス及びＵＳＢ２．０準拠デバイスの両方に同時に接続されるように構成され、インターフェースは、下流ポートを通じてＵＳＢ３．０準拠デバイスと通信し、同時に下流ポートを通じてＵＳＢ２．０準拠デバイスと通信するために使用されるデバイスが記載されている。また、特許文献３には、ＵＳＢ３．０のホスト装置に接続使用されるペリフェラルデバイスとの通信速度をシームレスに切り替える技術が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−５８８８７号公報
【特許文献２】特表２０１３−５４６０５１号公報
【特許文献３】特開２０１４−２１８２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、複数の種類の通信方法に対応し、外部装置と接続可能なインターフェースを備えており、前記複数の通信方法に対応する通信を並行して実施可能なシステムにおいて、通信の失敗により実行中の処理が全て実行できなくなることがある。
本発明は、複数の種類の通信経路を併用可能なシステムにおいて、通信経路が固定されている場合と比較して通信の失敗により処理が実行されなくなることを抑制することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の請求項１に係る情報処理装置は、第１の通信方法に対応した第１接続部と、第２の通信方法に対応した第２接続部とを備えるインターフェースと、当該装置が実行する装置実行処理に含まれる第１の機能を他の装置と通信して実行する第１実行部と、他の装置と通信して第２の機能を実行する第２実行部と、前記第１接続部を介した前記第１実行部の通信が切断された場合又は該第１接続部を介した通信が確立できなかった場合、前記第２接続部を介した通信の接続先を、前記第２実行部から前記第１実行部に切り替える切替部とを有することを特徴とする。
【０００８】
本発明の請求項２に係る情報処理装置は、請求項１に記載の構成において、前記第１実行部で実行される処理及び前記第２実行部で実行される処理は、当該装置で実行される一の処理に関係する処理であることを特徴とする。
【０００９】
本発明の請求項３に係る情報処理装置は、請求項２に記載の構成において、前記第１の機能は、当該装置で実行される処理の実行に必須の処理であり、前記第２の機能は、前記必須の処理以外の処理であることを特徴とする。
【００１０】
本発明の請求項４に係る情報処理装置は、請求項１乃至３のいずれか１項に記載の構成において、前記第２実行部と通信する装置は、前記第１実行部と通信する装置であることを特徴とする。
【００１１】
本発明の請求項５に係る情報処理装置は、請求項１乃至４のいずれか１項に記載の構成において、前記第１接続部を介した通信が確立している場合、前記第１実行部及び前記第２実行部により、前記第１接続部を介した通信及び前記第２接続部を介した通信が並列して用いられることを特徴とする。
【００１２】
本発明の請求項６に係る情報処理装置は、請求項１乃至５のいずれか１項に記載の構成において、前記切替部は、前記第１接続部を介した前記第１実行部の通信が切断された場合、前記第２接続部を介した前記第２実行部の通信を切断した後、前記第２接続部を介した前記第１実行部の通信を確立することを特徴とする。
【００１３】
本発明の請求項７に係る情報処理装置は、請求項１乃至６のいずれか１項に記載の構成において、前記切替部による切替がなされた場合に、前記第２の機能を停止させる制御を行う制御部を更に有することを特徴とする。
【００１４】
本発明の請求項８に係る情報処理装置は、請求項７に記載の構成において、前記第１の機能は、前記第２の機能が中断している期間においても当該第１の機能の実行により前記装置実行処理が継続される機能であることを特徴とする。
【００１５】
本発明の請求項９に係る情報処理装置は、請求項１乃至８のいずれか１項に記載の構成において、前記第２実行部は、前記第１接続部を介した通信が確立された場合に、前記第２接続部を介した通信の確立処理を行うことを特徴とする。
【００１６】
本発明の請求項１０に係る情報処理装置は、請求項１乃至９のいずれか１項に記載の構成において、前記第１の通信方法は、前記第２の通信方法よりも通信速度が高速であることを特徴とする。
【００１７】
本発明の請求項１１に係る情報処理装置は、請求項１０に記載の構成において、前記インターフェースは、ＵＳＢ３．ｘのＳＳモードに準拠した前記第１接続部と、ＵＳＢ２．０のＨＳモードに準拠した前記第２接続部とを備え、前記切替部は、前記ＳＳモードの通信が切断された場合又は該ＳＳモードの通信が確立できなかった場合、ＨＳモードの通信の接続先を、前記第２実行部から前記第１実行部に切り替えることを特徴とする。
【００１８】
本発明の請求項１２に係るプログラムは、第１の通信方法に対応した第１接続部と、第２の通信方法に対応した第２接続部とを備えるインターフェースと、当該装置が実行する装置実行処理に含まれる第１の機能を他の装置と通信して実行する第１実行部と、他の装置と通信して第２の機能を実行する第２実行部とを有するコンピュータに、前記第１接続部を介した前記第１実行部の通信が切断された場合又は該第１接続部を介した通信が確立できなかった場合、前記第２接続部を介した通信の接続先を、前記第２実行部から前記第１実行部に切り替えるステップを実行させるためのプログラムであることを特徴とする。
【発明の効果】
【００１９】
請求項１及び１２に係る発明によれば、複数の種類の通信経路を併用可能なシステムにおいて、通信経路が固定されている場合と比較して通信の失敗により処理が実行されなくなることが抑制される。
請求項２に係る発明によれば、装置が実行する処理に関係する第１の機能及び第２の機能を実行する際に、通信の失敗により処理が実行されなくなることが抑制される。
請求項３に係る発明によれば、複数の種類の通信経路を併用可能なシステムにおいて、通信経路が固定されている場合と比較して通信の失敗により処理が実行されなくなることが抑制される。
請求項４に係る発明によれば、一つの装置と通信して第１の機能及び第２の機能を実行する装置において、通信の失敗により処理が実行されなくなることが抑制される。
請求項５に係る発明によれば、一の処理について複数の通信経路が並列して使用される場合において、通信の失敗により処理が実行されなくなることが抑制される。
請求項６に係る発明によれば、複数の種類の通信経路を併用可能なシステムにおいて、一の通信が切断されてしまった場合であっても、処理が中断してしまうことが抑制される。
請求項７に係る発明によれば、複数の種類の通信経路を併用可能なシステムにおいて、一の通信が切断されてしまった場合おける第２の機能の実行に係るリソースの消費が抑制される。
請求項８に係る発明によれば、複数の種類の通信経路を併用可能なシステムにおいて、通信経路が固定されている場合と比較して通信の失敗により処理が実行されなくなることが抑制される。
請求項９に係る発明によれば、複数の種類の通信経路を併用可能なシステムにおいて、第１接続部を介した通信が確立されなかった場合であっても、処理が実行されなくなってしまうことが抑制される。
請求項１０に係る発明によれば、通信速度が異なる複数の種類の通信経路を併用可能なシステムにおいて、高速な通信方法による通信ができない場合であっても、処理が実行されなくなることが抑制される。
請求項１１に係る発明によれば、ＵＳＢ３．ｘのＳＳモードとＨＳモードとを併用可能なシステムにおいて、ＳＳモードの通信の失敗により処理が実行されなくなることが抑制される。
【図面の簡単な説明】
【００２０】
【図１】情報処理システムの構成を例示する図
【図２】情報処理システムの機能構成を例示する図
【図３】画像処理装置及びユーザ端末のハードウェア構成を例示する図
【図４】画像処理装置が行う処理の流れを例示するフローチャート
【図５】ユーザ端末が行う処理の流れを例示するフローチャート
【図６】画像処理装置が行う処理の流れを例示するフローチャート
【図７】ユーザ端末が行う処理の流れを例示するフローチャート
【図８】画像処理装置及びユーザ端末のハードウェア構成を例示する図
【図９】画像処理装置及びユーザ端末のハードウェア構成を例示する図
【発明を実施するための形態】
【００２１】
［１］構成
図１は、本実施形態に係る情報処理システム１の構成を示すブロック図である。情報処理システム１は、画像処理装置１０と、ユーザ端末２０とを備える。画像処理装置１０とユーザ端末２０は、本発明に係る情報処理装置の例である。画像処理装置１０は、媒体に画像を形成する画像形成処理や、媒体に形成された画像を読み取る画像読取処理等の画像処理を行う。画像処理装置１０はＵＳＢケーブル２によりユーザ端末２０に接続される。ＵＳＢケーブル２はＵＳＢ３．ｘのＳＳモードやＵＳＢ２．０のＨＳモードに準拠したケーブルである。ユーザ端末２０は、例えば、スマートフォン、タブレット端末、又はノートブック型ＰＣ（Personal Computer）等の端末である。
【００２２】
画像処理装置１０（メイン機器）とユーザ端末２０（周辺機器）とは、ＵＳＢケーブル２により接続され、両者が通信することにより、画像処理等の処理を分担して実行する場合がある。例えば、画像処理装置１０にプリントアウト処理が指示された場合、プリントアウトのために必要な画像処理（色空間変換処理、エッジ検出処理、等）がメイン機器と周辺機器とで分担されたり、エラー音の発生に関する処理がメイン機器と周辺機器とで分担されたりする場合がある。
【００２３】
図２は情報処理システム１の機能構成の一例を示すブロック図である。図において、画像処理装置１０は、インターフェース１１、第１実行部１２、第２実行部１３、切替部１４、及び制御部１５を有する。インターフェース１１は、第１の通信方法に対応した第１接続部１１１と、第２の通信方法に対応した第２接続部１１２とを備える。
【００２４】
第１実行部１２は他の装置と通信して第１の機能を実行する。第１の機能は、画像処理装置１０が実行する処理（装置実行処理）に含まれる機能である。第２の機能が中断している期間においても、第１の機能が実行されることにより、上記処理は続行される。
【００２５】
第２実行部１３は他の装置と通信して第２の機能を実行する。この実施形態において、第１実行部１２で実行される処理及び第２実行部１３で実行される処理は、ひとつの装置実行処理に関係する処理であってもよい。また、第１の機能は装置実行処理の実行に必須の処理であり、第２の機能は上記必須の処理以外の処理（一例としては、オプション機能）であってもよい。例えばコピー処理が実行される場合、第１の機能は、例えば、上記処理に関係する色空間変換処理、エッジ検出処理である。第２の機能は、例えば、上記処理に関係するデバッグ機能、アラーム音やエラー音の発生機能、カードリーダー機能、キーボード制御、認証機能である。切替部１４は第１接続部１１１を介した第１実行部１２の通信が切断された場合又は第１接続部１１１を介した通信が確立できなかった場合、第２接続部を介した通信の接続先を、第２実行部１３から第１実行部１２に切り替える。制御部１５は、切替部１４による切替がなされた場合に、第２の機能を停止させる制御を行う。
【００２６】
ユーザ端末２０は、インターフェース２１、第１実行部２２、第２実行部２３、切替部２４、及び制御部２５を有する。インターフェース２１は、第１の通信方法に対応した第１接続部２１１と、第２の通信方法に対応した第２接続部２１２とを備える。
【００２７】
第１実行部２２は他の装置と通信して第１の機能を実行する。第２実行部２３は他の装置と通信して第２の機能を実行する。切替部２４は第１接続部２１１を介した第１実行部２２の通信が切断された場合又は第１接続部２１１を介した通信が確立できなかった場合、第２接続部２１２を介した通信の接続先を、第２実行部２３から第１実行部２２に切り替える。制御部２５は、切替部２４による切替がなされた後、第２の機能を停止させる制御を行う。
【００２８】
図３は、画像処理装置１０及びユーザ端末２０のハードウェア構成を例示する図である。この実施形態では、画像処理装置１０がＵＳＢ３．０のホスト機器であり、ユーザ端末２０が周辺機器として画像処理装置１０にＵＳＢ３．０により接続される。図において、ＵＳＢコネクタ１０１及びＵＳＢコネクタ２０１は、ＵＳＢ３．ｘに準拠したコネクタであり、複数のピンを備えている。ＵＳＢコネクタ１０１及びＵＳＢコネクタ２０１にＵＳＢケーブルのコネクタが差し込まれ、このケーブルを介して画像処理装置１０とユーザ端末２０とでＵＳＢ３．ｘに準拠した通信が行われる。すなわち、ＵＳＢコネクタ１０１及びＵＳＢコネクタ２０１は、ＵＳＢ２．０でサポートされていた、Ｄ＋／Ｄ−信号経由で転送するＨＳモードの通信に対応するとともに、ＵＳＢ３．０で新たに追加されたＳＳモードの通信にも対応している。
【００２９】
ＳＳモードの通信速度（例えば、５Ｇｂ／ｓ（実動作で約200-350Mb/s））は、ＨＳモードの転送速度（例えば、４８０Mb/s（実動作で約20-30Mb/s））よりも高速である。この実施形態では、デフォルトでは、処理の実行に必須である機能（以下「メイン機能」という）においてＳＳモードの通信が用いられ、処理の実行に必須でない機能（以下「サブ機能」という）についてはＨＳモードが用いられる。
【００３０】
ＣＰＵ（Central Processing Unit）１０２は、メモリ１０９に記憶されているプログラムに従いデータ処理を行う。第１ホストコントローラ１０３は、ＵＳＢ３．０に準拠した通信によりデータ処理を実行するホスト側コントローラである。第２ホストコントローラ１０４は、ＵＳＢ２．０に準拠した通信によりデータ処理を実行するホスト側コントローラである。この実施形態では、ひとつの処理が、第１ホストコントローラ１０３と第２ホストコントローラ１０４とで分担されて実行される。
【００３１】
ＳＳ変換部１０５は、ＳＳモード（第１の通信方法の一例）で伝送されるデータ信号を変換する機能を有する。第１ＨＳ変換部１０６及び第２ＨＳ変換部１０７は、ＨＳモード（第２の通信方法の一例）で伝送されるデータ信号を変換する機能を有する。セレクタ１０８は、Ｄ＋／Ｄ−信号ラインに設けられ、ＨＳモードの通信の接続先を、第１ＨＳ変換部１０６と第２ＨＳ変換部１０７とで切り替える制御を行う。この実施形態では、セレクタ１０８はデフォルトでＵＳＢ３．０側の第１ＨＳ変換部１０６に接続される。
【００３２】
ＣＰＵ２０２は、メモリ２０９に記憶されているプログラムに従いデータ処理を行う。第１デバイスコントローラ２０３は、ＵＳＢ３．０に準拠した通信によりデータ処理を実行するデバイス側のコントローラである。第２デバイスコントローラ２０４は、ＵＳＢ２．０に準拠した通信によりデータ処理を実行するデバイス側コントローラである。この実施形態では、ひとつの処理が、第１デバイスコントローラ２０３と第２デバイスコントローラ２０４とで分担されて実行される。
【００３３】
ＳＳ変換部２０５は、ＳＳモードで伝送されるデータ信号を変換する機能を有する。第１ＨＳ変換部２０６及び第２ＨＳ変換部２０７は、ＨＳモードで伝送されるデータ信号を変換する機能を有する。セレクタ２０８は、Ｄ＋／Ｄ−ラインに設けられ、ＨＳモードの通信の接続先を、第１ＨＳ変換部２０６と第２ＨＳ変換部２０７とで切り替える制御を行う。この実施形態では、セレクタ２０８は、予めＵＳＢ３．０側の第１ＨＳ変換部２０６に接続される。
【００３４】
この例で、ＵＳＢコネクタ１０１及びＵＳＢコネクタ２０１は、図２に係るインターフェース１１及びインターフェース２１の例である。第１ホストコントローラ１０３及び第１デバイスコントローラ２０３は、第１実行部１２及び第１実行部２２の例である。第２ホストコントローラ１０４及び第２デバイスコントローラ２０４は、第２実行部１３及び第２実行部２３の例である。セレクタ１０８及びセレクタ２０８は、切替部１４及び切替部２４の例である。
【００３５】
［２］動作例
次いで、この実施形態の動作例を説明する。以下の動作例では、画像処理装置１０とユーザ端末２０とがＵＳＢ３．０によりデータ通信を行い、第１ホストコントローラ１０３、第２ホストコントローラ１０４、第１デバイスコントローラ２０３、及び第２デバイスコントローラ２０４が、画像処理を分担して実行する場合の動作例を説明する。具体的には、画像処理装置１０において画像データをプリントアウトするプリントアウト処理が実行される場合の動作例を説明する。この動作例では、第１ホストコントローラ１０３と第１デバイスコントローラ２０３とが、プリントアウト処理の実行に必須であるメイン機能を分担して実行する。
【００３６】
メイン機能（第１の機能の例）は、プリントアウト処理に含まれる機能である。メイン機能が実行されていることにより、サブ機能が中断している期間においてもプリントアウト処理は続行される。メイン機能は例えば、画像処理（色空間変換処理、エッジ検出処理、等）、ユーザインターフェース制御（操作画面の表示・更新処理、等）、ＬＣＤ表示、スイッチ検出、等であってもよい。
【００３７】
第２ホストコントローラ１０４と第２デバイスコントローラ２０４とは、プリントアウト処理の実行に必須ではないサブ機能（第２の機能の例）を分担して実行する。サブ機能は、例えば、デバッグ機能、アラーム音やエラー音の発生機能、カードリーダー機能、キーボード制御、認証機能である。上述したように、サブ機能が中断している場合であっても、メイン処理が実行されることによりプリントアウト処理は続行される。
【００３８】
［２−１］通信確立処理
図４は、画像処理装置１０が行う通信確立処理の流れを示すフローチャートである。ステップＳ１０１において、ＣＰＵ１０２はセレクタ１０８でＵＳＢ３．０側（第１ＨＳ変換部１０６側）を接続する。ステップＳ１０２において、第１ホストコントローラ１０３は、ＶＢＵＳによりユーザ端末２０に電力を供給する制御を行う。
【００３９】
ステップＳ１０３乃至Ｓ１０５において、第１ホストコントローラ１０３は、ＳＳ変換部１０５を介してユーザ端末２０とＳＳモードでの通信を確立させる。まず、ステップＳ１０３において、第１ホストコントローラ１０３は、ＳＳポートの接続が検出されたかを判定する。接続が検出された場合、第１ホストコントローラ１０３はステップＳ１０４の処理に進む。一方、接続が検出されなかった場合、第１ホストコントローラ１０３はステップＳ１２０の処理に進む。
【００４０】
ステップＳ１０４において、第１ホストコントローラ１０３は、リンクトレーニングを実施する。リンクトレーニングに成功した場合、第１ホストコントローラ１０３はステップＳ１０５の処理に進む。一方、失敗した場合、第１ホストコントローラ１０３はステップＳ１２０の処理に進む。
【００４１】
ステップＳ１０５において、第１ホストコントローラ１０３はポートコンフィグレーションを行う。ポートコンフィグレーションに成功した場合、第１ホストコントローラ１０３はステップＳ１０６の処理に進む。一方、失敗した場合、第１ホストコントローラ１０３はステップＳ１２０の処理に進む。
【００４２】
ステップＳ１０６において、ＣＰＵ１０２は、セレクタ１０８の接続先を、第１ＨＳ変換部１０６から第２ＨＳ変換部１０７に切り替える。ステップＳ１０７において、ＣＰＵ１０２の制御の下、第１ホストコントローラ１０３は、ＳＳモードでメイン機能の通信を開始する。
【００４３】
また、ＣＰＵ１０２の制御の下、ステップＳ１０８乃至ステップＳ１１０において、第２ホストコントローラ１０４は、ＨＳモードでのサブ機能の通信を開始する。なお、ステップＳ１０７の処理と、ステップＳ１０８乃至Ｓ１１０の処理とは、第１ホストコントローラ１０３及び第２ホストコントローラ１０４により並列に実行される。まず、ステップＳ１０８において、第２ホストコントローラ１０４は、Ｄ＋のプルアップを検出するまで待機する。このプルアップは、ユーザ端末２０により後述する図５のステップＳ２０８において行われる。プルアップが検出された場合、ステップＳ１０９の処理に進む。ステップＳ１０９において、第２ホストコントローラ１０４はＨＳモードのハンドシェークを行う。ステップＳ１１０において、第２ホストコントローラ１０４はＨＳモードでサブ機能の通信を開始する。
【００４４】
すなわち、ステップＳ１０７乃至ステップＳ１１０の処理により、画像処理装置１０とユーザ端末２０との通信では、１本のＵＳＢケーブル２により、ＳＳモードとＨＳモードとの２種類の通信経路が並列して用いられる。このとき、ＳＳモードの通信によりメイン機能が実行され、ＨＳモードの通信によりサブ機能が実行される。すなわち、ＳＳモードの通信が確立している場合、ＳＳモードの通信によるメイン機能と、ＨＳモードの通信によるサブ機能とが並行して実行される。
【００４５】
一方、ＳＳモードの通信の確立に失敗した場合、画像処理装置１０はステップＳ１２０の処理に進む。ＣＰＵ１０２の制御の下、ステップＳ１２０乃至ステップＳ１２２において、第１ホストコントローラ１０３は、ＨＳモードでのメイン機能の通信を開始する。まず、ステップＳ１２０において、第１ホストコントローラ１０３は、Ｄ＋のプルアップを検出するまで待機する。このプルアップは、ユーザ端末２０により後述する図５のステップＳ２２０において行われる。プルアップが検出された場合、第１ホストコントローラ１０３はステップＳ１２１の処理に進む。
【００４６】
ステップＳ１２１において、第１ホストコントローラ１０３はＨＳモードのハンドシェークを行う。ステップＳ１２２において、第１ホストコントローラ１０３はＨＳモードでメイン機能の通信を開始する。このとき、ＣＰＵ１０２は、第２ホストコントローラ１０４におけるサブ機能の実行を停止させる。このように、ステップＳ１２０乃至Ｓ１２２の処理が実行される場合、画像処理装置１０とユーザ端末２０との通信において、ＨＳモードによりメイン機能が実行され、サブ機能は停止される。
【００４７】
図５は、ユーザ端末２０が行う通信確立処理の流れを示すフローチャートである。ステップＳ２０１において、ＣＰＵ２０２はセレクタ２０８でＵＳＢ３．０側（第１ＨＳ変換部２０６側）を接続する。ステップＳ２０２において、第１デバイスコントローラ２０３は、画像処理装置１０から供給されるＶＢＵＳ（図４のステップＳ１０２で供給されるＶＢＵＳ）が検出されるまで待機し、検出された場合、ステップＳ２０３の処理に進む。
【００４８】
ステップＳ２０３乃至Ｓ２０５において、第１デバイスコントローラ２０３は、ＳＳ変換部２０５を介して画像処理装置１０とＳＳモードでの通信を確立させる。まず、ステップＳ２０３において、第１デバイスコントローラ２０３は、ＳＳポートの接続が検出されたかを判定する。接続が検出された場合、第１デバイスコントローラ２０３はステップＳ２０４の処理に進む。一方、接続が検出されなかった場合、第１デバイスコントローラ２０３はステップＳ２２０の処理に進む。
【００４９】
ステップＳ２０４において、第１デバイスコントローラ２０３は、リンクトレーニングを実施する。リンクトレーニングに成功した場合、第１デバイスコントローラ２０３はステップＳ２０５の処理に進む。一方、失敗した場合、第１デバイスコントローラ２０３はステップＳ２２０の処理に進む。
【００５０】
ステップＳ２０５において、第１デバイスコントローラ２０３はポートコンフィグレーションを行う。ポートコンフィグレーションに成功した場合、第１デバイスコントローラ２０３はステップＳ２０６の処理に進む。一方、失敗した場合、第１デバイスコントローラ２０３はステップＳ２２０の処理に進む。
【００５１】
ステップＳ２０６において、ＣＰＵ２０２は、セレクタ２０８の接続先を、第１ＨＳ変換部２０６から第２ＨＳ変換部２０７に切り替える。ステップＳ２０７において、ＣＰＵ２０２の制御の下、第１デバイスコントローラ２０３は、ＳＳモードでメイン機能の通信を開始する。
【００５２】
また、ＣＰＵ２０２の制御の下、ステップＳ２０８乃至ステップＳ２１０において、第２デバイスコントローラ２０４は、ＨＳモードでのサブ機能の通信を開始する。なお、ステップＳ２０７の処理と、ステップＳ２０８乃至Ｓ２１０の処理とは、第１デバイスコントローラ２０３及び第２デバイスコントローラ２０４により並列に実行される。まず、ステップＳ２０８において、第２デバイスコントローラ２０４は、第２ＨＳ変換部２０７のＤ＋をプルアップする。ステップＳ２０９において、第２デバイスコントローラ２０４は、ＨＳモードのハンドシェークを行う。ステップＳ２１０において、第２デバイスコントローラ２０４はＨＳモードでサブ機能の通信を開始する。
【００５３】
すなわち、ステップＳ２０７乃至ステップＳ２１０の処理により、画像処理装置１０とユーザ端末２０との通信では、１本のＵＳＢケーブル２により、ＳＳモードとＨＳモードとの２種類の通信経路が並列して用いられる。このとき、ＳＳモードの通信によりメイン機能が実行され、ＨＳモードの通信によりサブ機能が実行される。すなわち、ＳＳモードの通信が確立している場合、ＳＳモードの通信によるメイン機能と、ＨＳモードの通信によるサブ機能とが並行して実行される。
【００５４】
一方、ＳＳモードの通信の確立に失敗した場合、画像処理装置１０はステップＳ２２０の処理に進む。ＣＰＵ２０２の制御の下、ステップＳ２２０乃至ステップＳ２２２において、第１デバイスコントローラ２０３はＨＳモードでのメイン機能の通信を開始する。まず、ステップＳ２２０において、第１デバイスコントローラ２０３は、第２ＨＳ変換部２０７のＤ＋をプルアップする。ステップＳ２２１において、第１デバイスコントローラ２０３は、ＨＳモードのハンドシェークを行う。ステップＳ２２２において、第１デバイスコントローラ２０３はＨＳモードでのメイン機能の通信を開始する。このとき、ＣＰＵ２０２は、第２デバイスコントローラ２０４におけるサブ機能の実行を停止させる。
【００５５】
ステップＳ２２０乃至Ｓ２２２の処理が実行される場合、画像処理装置１０とユーザ端末２０との通信において、ＨＳモードによりメイン機能が実行され、サブ機能は停止される。
【００５６】
［２−２］エラー対応処理
次いで、画像処理装置１０とユーザ端末２０とが通信中に通信エラーが発生した場合の動作を説明する。
【００５７】
図６は、画像処理装置１０が行う処理の流れを示すフローチャートである。図６に示される処理は、ＳＳモード及びＨＳモードで画像処理装置１０とユーザ端末２０とが通信している状態において、何らかの原因によりＳＳモードの通信が切断され、ＳＳモードの通信のリカバリに失敗した場合、又は、リカバリ処理が予め定められた回数以上発生した（リカバリ処理が頻発した）ことをトリガとして開始される。
【００５８】
ステップＳ３０１において、ＣＰＵ１０２は、第２ホストコントローラ１０４での一連の通信が終了するまで待機する。一連の通信が終了した場合、ＣＰＵ１０２はステップＳ３０２の処理に進む。
【００５９】
ステップＳ３０２において、ＣＰＵ１０２は、第２ホストコントローラ１０４のサブ機能を停止させる。ステップＳ３０３において、ＣＰＵ１０２は、セレクタ１０８の接続先を第２ＨＳ変換部１０７から第１ＨＳ変換部１０６に切り替える。
【００６０】
次いで、ステップＳ３０４乃至ステップＳ３０６により、ＨＳモードの通信によるメイン機能の再接続が行われる。まず、ステップＳ３０４において、第１ホストコントローラ１０３は、ＣＰＵ１０２の制御の下、Ｄ＋のプルアップが検出されるまで待機する。このプルアップは、ユーザ端末２０により後述する図７のステップＳ４０４で行われる。プルアップが検出されると、第１ホストコントローラ１０３はステップＳ３０５の処理に進む。
【００６１】
ステップＳ３０５において、第１ホストコントローラ１０３はＨＳモードのハンドシェークを行う。ステップＳ３０６において、第１ホストコントローラ１０３はＨＳモードでのメイン機能の通信を開始する。
【００６２】
図７は、ユーザ端末２０が行う処理の流れを示すフローチャートである。図７に示される処理は、ＳＳモード及びＨＳモードで画像処理装置１０とユーザ端末２０とが通信している状態において、何らかの原因によりＳＳモードの通信が切断され、ＳＳモードの通信のリカバリに失敗した場合、又は、リカバリ処理が予め定められた回数以上発生した（リカバリ処理が頻発した）ことをトリガとして開始される。
【００６３】
ステップＳ４０１において、ＣＰＵ２０２は、第２デバイスコントローラ２０４がサスペンド状態であるかを判定する。サスペンド状態であると判定された場合、ＣＰＵ２０２はステップＳ４０２の処理をスキップしてステップＳ４０３の処理に進む。一方、サスペンド状態でないと判定された場合、ＣＰＵ２０２はステップＳ４０２の処理に進む。
【００６４】
ステップＳ４０２において、ＣＰＵ２０２は、第２デバイスコントローラ２０４の通信エラーが発生するまで待機する。この通信エラーは、図６のステップＳ３０２により画像処理装置１０のサブ機能が停止されてステップＳ３０３でＨＳモードの通信の接続先がセレクタ１０８により切り換えられることにより発生するものである。エラーの発生が検出されると（ステップＳ４０２）、ＣＰＵ２０２はステップＳ４０３の処理に進む。
【００６５】
ステップＳ４０３において、ＣＰＵ２０２は、セレクタ２０８の接続先を第２ＨＳ変換部２０７から第１ＨＳ変換部２０６に切り替える。
【００６６】
次いで、ステップＳ４０４乃至ステップＳ４０６により、ＨＳモードの通信によるメイン機能の再接続が行われる。まず、ステップＳ４０４において、第１デバイスコントローラ２０３は、ＣＰＵ２０２の制御の下、第１ＨＳ変換部２０６においてＤ＋をプルアップする。ステップＳ４０５において、第１デバイスコントローラ２０３はＨＳモードのハンドシェークを行う。ステップＳ４０６において、第１デバイスコントローラ２０３はＨＳモードでのメイン機能の通信を開始する。
【００６７】
以上説明したようにこの実施形態では、メイン機能を実行する第１ホストコントローラ１０３及び第１デバイスコントローラ２０３においてＳＳモードでの通信が確立した場合に、Ｄ＋／Ｄ−ラインが解放され、他のＵＳＢコントローラ（第２ホストコントローラ１０４及び第２デバイスコントローラ２０４）がサブ機能の通信を行う。一方、ＳＳモードの通信が確立しなかった場合、サブ機能を停止させる機能制限が行われ、ＨＳモードでメイン機能の通信が行われる。これにより、ボード間の通信装置内の配線を３．０のケーブル１本で済ませることができ、かつ、ボード間の通信が容易になる。また、ＳＳモードの通信の確立に失敗した場合であっても、メイン機能が停止してしまうことが抑制される。なお、サブ機能が停止してしまった場合、例えばエラー音が発生しなくなる等の事象は発生するものの、サブ機能が停止したとしても、一連の処理の実行が停止してしまうことはない。
【００６８】
また、この実施形態では、ＳＳモードでの通信でエラーが発生しリカバリに失敗した場合、又はリカバリ処理が頻発する場合は、ＣＰＵ１０２は、第２ホストコントローラ１０４のＨＳモードの通信について、区切りのよいところまで転送を行った後、サブ機能を停止させ、セレクタ１０８の接続先を第２ＨＳ変換部１０７から第１ＨＳ変換部１０６に切り替える。こうすることでデバイス側（ユーザ端末２０）に通信エラーを発生させる。デバイス側（ユーザ端末２０）は通信エラーの検出により、セレクタ２０８の接続先を第２ＨＳ変換部２０７から第１ＨＳ変換部２０６に切り替えた後、ＨＳモードで再接続を行い、機能制限モード（サブ機能が無効であるモード）で通信を再開させる。これにより、ＳＳモードの通信が途切れてしまった場合であっても、メイン機能が停止してしまうことが抑制される。
【００６９】
［３］変形例
上述した実施形態は、本発明の実施の一例に過ぎず、以下のように変形させてもよい。また、上述した実施形態及び以下に示す各変形例は、必要に応じて組み合わせて実施してもよい。
【００７０】
（１）上述の実施形態では、セレクタ１０８及びセレクタ２０８においてＨＳモードの接続先を切り替えるための通信の確立／失敗をＣＰＵ１０２及びＣＰＵ２０２が監視した。この監視はＣＰＵ１０２及びＣＰＵ２０２が行ってもよく、また、第１ホストコントローラ１０３及び／又は第１デバイスコントローラ２０３からのステータス信号を監視する専用のハードウェアにより行われてもよい。
【００７１】
（２）画像処理装置１０及びユーザ端末２０のハードウェア構成は、上述したものに限られない。例えば、図８に例示する構成であってもよい。
【００７２】
図８は、画像処理装置及びユーザ端末の他のハードウェア構成を例示するブロック図である。図８に示す画像処理装置１０Ａが上述した実施形態に係る図３の画像処理装置１０と異なる点は、セレクタ１０８Ａの実装上の位置が異なる点である。また、図８に示すユーザ端末２０Ａが上述した実施形態に係る図３のユーザ端末２０と異なる点は、セレクタ２０８Ａの実装上の位置が異なる点である。
【００７３】
図８において、セレクタ１０８Ａは、ＣＰＵ１０２の制御の下、ＨＳ変換部１０６Ａを介したＨＳモードの通信の接続先を、第１ホストコントローラ１０３と第２ホストコントローラ１０４とで切り替える。セレクタ２０８Ａは、ＣＰＵ２０２の制御の下、ＨＳ変換部２０６Ａを介したＨＳモードの通信の接続先を、第１デバイスコントローラ２０３と第２デバイスコントローラ２０４とで切り替える。
【００７４】
図９は、画像処理装置及びユーザ端末の他のハードウェア構成を例示するブロック図である。図９に示す画像処理装置１０Ｂが上述した実施形態に係る図３の画像処理装置１０と異なる点は、第２ホストコントローラ１０４に代えて、第２デバイスコントローラ１０４Ｂを備えている点である。また、図９に示すユーザ端末２０Ｂが上述した実施形態に係る図３のユーザ端末２０と異なる点は、第２デバイスコントローラ２０４に代えて、第２ホストコントローラ２０４Ｂを備えている点である。すなわち、図９の例では、ＵＳＢ２．０のホストコントローラとデバイスコントローラの実装位置が入れ替わっている。
【００７５】
（３）図３、図８及び図９に例示される各構成要素は、ハードウェアにより構成されたが、各構成要素の少なくとも一部が、プロセッサがメモリに記憶されたコンピュータプログラムを読み出して実行することによりソフトウェアとして実現されてもよい。
【００７６】
（４）上述した実施形態において、画像処理装置１０のＣＰＵ１０２及びユーザ端末２０のＣＰＵ２０２により実行されるプログラムは、インターネット等の通信回線を介してダウンロードされてもよい。また、これらのプログラムは、磁気記録媒体（磁気テープ、磁気ディスク等）、光記録媒体（光ディスク等）、光磁気記録媒体、半導体メモリ等の、コンピュータが読取可能な記録媒体に記録した状態で提供されてもよい。
【符号の説明】
【００７７】
１…情報処理システム、２…ＵＳＢケーブル、１０…画像処理装置、１１…インターフェース、１２…第１実行部、１３…第２実行部、１４…切替部、２０…ユーザ端末、２１…インターフェース、２２…第１実行部、２３…第２実行部、２４…切替部、１１１…第１接続部、１１２…第２接続部、２１１…第１接続部、２１２…第２接続部。
【図１】
2019040341.tif 000003
【図２】
2019040341.tif 000004
【図３】
2019040341.tif 000005
【図４】
2019040341.tif 000006
【図５】
2019040341.tif 000007
【図６】
2019040341.tif 000008
【図７】
2019040341.tif 000009
【図８】
2019040341.tif 000010
【図９】
2019040341.tif 000011