(57)【要約】      （修正有）【課題】特殊なＵＳＢクラスをＳｏＣにサポートさせることなく、端末装置のロールスイッチに対応できる回路装置、電子機器及び移動体を提供する。【解決手段】回路装置１０は、ホスト２６０に接続されるアップストリームポート１０１と、ホストに接続されるダウンストリームポート１０２と、ポート１１１と、ポート１１２と、データ転送制御及びポート制御を行う制御回路１５０と、を含む。制御回路は、第１モードにおいて、ポート１１１及びポート１１２をダウンストリーム側のポートに設定し、アップストリームポート１０１とポート１１１及びポート１１２との間のデータ転送を制御する。制御回路は、第２モードにおいて、ポート１１１をアップストリーム側のポートに設定し、ポート１１１とダウンストリームポート１０２との間のデータ転送を制御する。【選択図】図３
2020052804.tif 000002
【特許請求の範囲】
【請求項１】
ホストに接続されるアップストリームポートと、
前記ホストに接続されるダウンストリームポートと、
第１ポートと、
第２ポートと、
データ転送制御及びポート制御を行う制御回路と、
を含み、
前記制御回路は、
第１モードにおいて、前記第１ポート及び前記第２ポートをダウンストリーム側のポートに設定し、前記アップストリームポートと前記第１ポート及び前記第２ポートとの間のデータ転送を制御し、
第２モードにおいて、前記第１ポートをアップストリーム側のポートに設定し、前記第１ポートと前記ダウンストリームポートとの間のデータ転送を制御することを特徴とする回路装置。
【請求項２】
請求項１に記載の回路装置において、
前記制御回路は、
第３モードにおいて、前記第２ポートをアップストリーム側のポートに設定し、前記第２ポートと前記ダウンストリームポートとの間のデータ転送を制御することを特徴とする回路装置。
【請求項３】
請求項１に記載の回路装置において、
前記制御回路は、
前記ホストから前記アップストリームポートを介して受信したコマンドに基づいて、前記第１モードから前記第２モードに切り替えることを特徴とする回路装置。
【請求項４】
請求項２に記載の回路装置において、
前記制御回路は、
前記第１モードから前記第２モードへの切り替えを指示する第１コマンドを前記ホストから前記アップストリームポートを介して受信した場合、前記第１モードから前記第２モードに切り替え、
前記第１モードから前記第３モードへの切り替えを指示する第２コマンドを前記ホストから前記アップストリームポートを介して受信した場合、前記第１モードから前記第３モードに切り替えることを特徴とする回路装置。
【請求項５】
請求項１乃至４のいずれか一項に記載の回路装置において、
前記制御回路は、
前記第１モードから前記第２モードへの切り替えにおいて、前記ダウンストリームポートと前記第１ポートを制御することでバスリセット処理を実行することを特徴とする回路装置。
【請求項６】
請求項５に記載の回路装置において、
前記制御回路は、
前記ダウンストリームポートにおいてデバイスチャープが検出されたとき、前記第１ポートに前記デバイスチャープを発行させ、
前記第１ポートに前記デバイスチャープを発行させた後に、前記第１ポートにおいてホストチャープが検出されたとき、前記ダウンストリームポートに前記ホストチャープを発行させることを特徴とする回路装置。
【請求項７】
請求項１乃至４のいずれか一項に記載の回路装置において、
前記ダウンストリームポートと前記第１ポートを接続する第１バススイッチ回路を含み、
前記制御回路は、
前記第１モードから前記第２モードへの切り替えにおいて、前記第１バススイッチ回路をオンにした後、バスリセット終了を検出したときに前記第１バススイッチ回路をオフにすることを特徴とする回路装置。
【請求項８】
請求項７に記載の回路装置において、
前記制御回路は、
前記第１モードから前記第２モードへの切り替えにおいて、前記第１ポートにおいてデバイス切断が検出されたタイミング、又は前記アップストリームポートから前記第１ポートへリピートされた第１ＳＯＦパケットと第２ＳＯＦパケットとの間のタイミングで、前記第１バススイッチ回路をオンにすることを特徴とする回路装置。
【請求項９】
請求項１乃至８のいずれか一項に記載の回路装置において、
前記制御回路は、
前記第２モードにおいて、前記第２ポートをダウンストリーム側のポートに設定し、前記アップストリームポートと前記第２ポートとの間のデータ転送を制御することを特徴とする回路装置。
【請求項１０】
請求項１乃至９のいずれか一項に記載の回路装置を含むことを特徴とする電子機器。
【請求項１１】
請求項１乃至９のいずれか一項に記載の回路装置を含むことを特徴とする移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路装置、電子機器及び移動体等に関する。
【背景技術】
【０００２】
ＵＳＢ規格のハブにおいて、アップストリームポートにはホストを接続し、且つダウンストリームポートにはデバイスを接続する必要がある。このため、ダウンストリームポートに接続される端末装置のロールスイッチに対応できない。ロールスイッチとは、ＵＳＢ通信におけるホストとデバイスが切り替わることである。
【０００３】
例えば特許文献１には、アップストリームポートに接続されたホストをデバイスにロールスイッチさせることなく、ダウンストリームポートに接続された端末装置のロールスイッチに対応できるハブが開示されている。特許文献１では、ダウンストリームポートに接続された端末装置がデバイスからホストに切り替わったとき、アップストリームポートに接続されたホストと、ダウンストリームポートに接続された端末装置とが、マルチホストエンドポイントリフレクターを介して通信する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願公開第２０１８／０５２７９９号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来技術ではハブを一般的なＳｏＣ（System on Chip）に接続できないという課題がある。具体的には、特許文献１の構成では、ネットワークコントロールモデル（ＮＣＭ）デバイスをＳｏＣに認識させる必要がある。このため、ＮＣＭデバイスを認識するＵＳＢクラスをＳｏＣにサポートさせるためのソフトウェア開発が必要となってしまう。
【課題を解決するための手段】
【０００６】
本発明の一態様は、ホストに接続されるアップストリームポートと、前記ホストに接続されるダウンストリームポートと、第１ポートと、第２ポートと、データ転送制御及びポート制御を行う制御回路と、を含み、前記制御回路は、第１モードにおいて、前記第１ポート及び前記第２ポートをダウンストリーム側のポートに設定し、前記アップストリームポートと前記第１ポート及び前記第２ポートとの間のデータ転送を制御し、第２モードにおいて、前記第１ポートをアップストリーム側のポートに設定し、前記第１ポートと前記ダウンストリームポートとの間のデータ転送を制御する回路装置に関係する。
【図面の簡単な説明】
【０００７】
【図１】比較例のハブと、比較例のハブを含む電子機器の一例。
【図２】本実施形態の回路装置の構成例。
【図３】本実施形態の回路装置の構成例。
【図４】本実施形態の回路装置を含む電子機器の一例。
【図５】回路装置の第１の詳細な構成例。
【図６】第１ポートに接続された端末装置がデバイスからホストにロールスイッチする際の、回路装置の動作手順。
【図７】第１ポートに接続された端末装置がロールスイッチを終了する際の、回路装置の動作手順。
【図８】ロールスイッチを指示するコマンドについて説明する図。
【図９】ポートのロジック回路の詳細な構成例。
【図１０】ポートのロジック回路の詳細な構成例。
【図１１】ＨＳリピーターパス回路の詳細な構成例。
【図１２】ＨＳリピーターパス回路の詳細な構成例。
【図１３】回路装置の第２の詳細な構成例。
【図１４】バスリセット処理のタイミングチャート。
【図１５】電子機器の構成例。
【図１６】移動体の例。
【発明を実施するための形態】
【０００８】
以下、本発明の好適な実施の形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではなく、本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。
【０００９】
１．比較例
図１は、比較例のハブ２１５と、そのハブ２１５を含む電子機器２７０の一例である。なお以下では、ＵＳＢ通信におけるホストとして動作する装置を、単にホストと呼び、ＵＳＢ通信におけるデバイスとして動作する装置を、単にデバイスと呼ぶ。
【００１０】
電子機器２７０において、ホストであるメインコントローラー２００にはＵＳＢ規格のハブ２１５が接続される。例えばハブ２１５のアップストリームポートがメインコントローラー２００のホストポートに接続される。またハブ２１５のダウンストリームポートには、ＳＤカードリーダー２１１、ブルートゥース（登録商標）通信ＩＣ２１２、ＤＳＲＣ（Dedicated Short Range Communications）通信ＩＣ２１３などのデバイスが接続される。
【００１１】
ＵＳＢレセプタクル２２６は、ケーブル２２４によりメインコントローラー２００のポートに接続される。このポートは、例えばＯＴＧ規格のポートであるが、これに限定されず、ホストポートとしての動作とデバイスポートとしての動作を切り替え可能なポートであればよい。このようなホストとしての動作とデバイスとしての動作を切り替えることを、ロールスイッチと呼ぶ。ＵＳＢレセプタクル２２６には、スマートフォンなどの携帯型端末装置２５０が接続される。ＵＳＢレセプタクル２２６が接続されるメインコントローラー２００のポートはロールスイッチ可能なので、ＵＳＢレセプタクル２２６にはロールスイッチ可能な携帯型端末装置２５０を接続できる。即ち、メインコントローラー２００のポートがホストポートであり、且つ携帯型端末装置２５０がデバイスである第１状態と、メインコントローラー２００のポートがデバイスポートであり、且つ携帯型端末装置２５０がホストである第２状態と、を切り替えることが可能である。第２状態では、ホストである携帯型端末装置２５０が、デバイスであるメインコントローラー２００を制御できる。例えば電子機器２７０がカーナビゲーションシステムである場合には、携帯型端末装置２５０からカーナビゲーションシステムを操作できるようになる。
【００１２】
以上の図１の構成では、電子機器２７０にはハブ２１５が設けられているが、ハブ２１５のダウンストリームポートはロールスイッチに対応できないという課題がある。即ち、ハブ２１５のダウンストリームポートにはデバイスのみ接続可能であるため、ロールスイッチ可能な携帯型端末装置２５０を接続するポートが、メインコントローラー２００に設けられたロールスイッチ可能なポートに限られている。例えば、電子機器２７０が車載機器である場合、運転席の正面部分にＵＳＢレセプタクル２２６が設けられる。しかしながら、助手席或いは後部座席等にもＵＳＢレセプタクルを設け、ロールスイッチ可能な端末装置を接続できることが望ましい。そして、複数のＵＳＢレセプタクルのいずれに端末装置が接続された場合であっても、ロールスイッチ可能であることが望ましい。
【００１３】
２．本実施形態の回路装置
図２及び図３は、本実施形態の回路装置１０の構成例である。図２及び図３において、制御回路１５０内に示す点線は、ポート間の接続状態を模式的に示すものである。
【００１４】
回路装置１０は、ＵＳＢ通信におけるデータ転送を制御するハブである。回路装置１０は、ホスト２６０に接続されるアップストリームポート１０１と、ホスト２６０に接続されるダウンストリームポート１０２と、第１〜第４ポートであるポート１１１〜１１４と、データ転送制御及びポート制御を行う制御回路１５０と、を含む。
【００１５】
アップストリームポート１０１は、ＵＳＢ規格のバスによりホスト２６０のホストポートに接続される。ダウンストリームポート１０２は、ＵＳＢ規格のバスによりホスト２６０のデバイスポートに接続される。なお、ホスト２６０は、ロールスイッチ可能なポートを有してもよく、そのポートにダウンストリームポート１０２が接続されてもよい。このとき、ロールスイッチ可能なポートは、デバイスポートとして動作する。
【００１６】
ポート１１１には、ＵＳＢ規格のバスにより端末装置ＰＤ１を接続できる。同様に、ポート１１２〜１１４には、それぞれ、ＵＳＢ規格のバスにより端末装置ＰＤ２〜ＰＤ４を接続できる。ポート１１１〜１１４は、ダウンストリーム側ポートとしての動作とアップストリーム側ポートとしての動作を切り替え可能なポートである。以下、この切り替えについてもロールスイッチと呼ぶ。ポート１１１〜１１４は、任意の１つのポートがアップストリーム側ポートとして動作可能であり、残りの３つのポートはダウンストリーム側ポートとして動作する。即ち、端末装置ＰＤ１〜ＰＤ４のいずれか１つがロールスイッチによりホストになるとき、その端末装置が接続されたポートがアップストリーム側ポートとなる。
【００１７】
アップストリームポート１０１、及びダウンストリームポート１０２、ポート１１１〜１１４の各ポートは、物理層回路を含む。物理層回路は、ＵＳＢ規格のバスを構成する第１信号線及び第２信号線に接続される。以下、第１信号線をＤＰと呼び、第２信号線をＤＭと呼ぶ。例えば、物理層回路は、ＤＰをプルアップするためのプルアップ抵抗と、ＨＳモードの送信回路と、ＨＳモードの受信回路と、ＬＳモード及びＦＳモードの送信回路と、ＬＳモード及びＦＳモードの受信回路と、スケルチ検出回路と、切断検出回路と、を含む。また各ポートは、データ転送処理を行うためのロジック回路を含むことができる。このロジック回路の詳細については後述するが、例えば、ロジック回路は、パラレルシリアル変換回路とエラスティシティーバッファーとＨＳリピーターとを含む。なお、このロジック回路は制御回路１５０に包含されてもよい。
【００１８】
図２に示すように、制御回路１５０は、第１モードにおいて、ポート１１１〜１１４をダウンストリーム側のポートに設定し、アップストリームポート１０１とポート１１１〜１１４との間のデータ転送を制御する。即ち、第１モードは、ポート１１１〜１１４の全てをハブのダウンストリーム側ポートとして動作させるモードである。ポート１１１〜１１４に接続された端末装置ＰＤ１〜ＰＤ４はデバイスとして動作し、回路装置１０は、ホスト２６０のホストポートと端末装置ＰＤ１〜ＰＤ４との間のデータ転送を制御する。
【００１９】
図３に示すように、制御回路１５０は、第２モードにおいて、ポート１１１をアップストリーム側のポートに設定し、ポート１１１とダウンストリームポート１０２との間のデータ転送を制御する。このとき、制御回路１５０は、ポート１１２〜１１４をダウンストリーム側のポートに設定し、アップストリームポート１０１とポート１１２〜１１４との間のデータ転送を制御する。即ち、第２モードは、ポート１１１をアップストリーム側ポートにロールスイッチさせると共に、残りのポート１１２〜１１４をハブのダウンストリーム側ポートとして動作させるモードである。ポート１１１に接続された端末装置ＰＤ１はホストとして動作する。回路装置１０は、ホスト２６０のデバイスポートと端末装置ＰＤ１との間のデータ転送と、ホスト２６０のホストポートと端末装置ＰＤ２〜ＰＤ４との間のデータ転送と、を制御する。
【００２０】
同様に、制御回路１５０は、第３モードにおいて、ポート１１２をアップストリーム側のポートに設定し、ポート１１２とダウンストリームポート１０２との間のデータ転送を制御する。また同様に、制御回路１５０は、第４モードにおいてポート１１３をアップストリーム側のポートに設定し、ポート１１３とダウンストリームポート１０２との間のデータ転送を制御する。また同様に、制御回路１５０は、第５モードにおいてポート１１４をアップストリーム側のポートに設定し、ポート１１４とダウンストリームポート１０２との間のデータ転送を制御する。
【００２１】
制御回路１５０は、ロジック回路であり、例えば自動配置配線により構成されたゲートアレイ回路などである。制御回路１５０は、ハブロジック回路、ＨＳリピーターパス回路、バスモニター回路を含む。制御回路１５０は、ホスト２６０からアップストリームポート１０１を介して受信したコマンドに基づいて、モード切り替えを行う。また制御回路１５０は、モード切り替えにおいてバスモニター回路によりモニターしたバス状態に基づいて、パスの切り替え及びポートのロールスイッチなどを行う。制御回路１５０の詳細については後述する。
【００２２】
なお、以上では、回路装置１０が、端末装置ＰＤ１〜ＰＤ４が接続される４つのポート１１１〜１１４を含む場合を例に説明したが、回路装置１０が含むポートの数はこれに限定されない。回路装置１０は、少なくとも第１ポートであるポート１１１及び第２ポートであるポート１１２を含んでいればよい。
【００２３】
以上の本実施形態によれば、端末装置のロールスイッチに対応したハブを実現できる。即ち、第２モードにおいてポート１１１がアップストリーム側ポートにロールスイッチすることで、ホストとして動作する端末装置ＰＤ１と、ホスト２６０のデバイスポートとの間でデータ転送を行うことができる。
【００２４】
また本実施形態によれば、第３〜第５モードにおいて、それぞれポート１１２〜１１４がアップストリーム側ポートにロールスイッチする。これにより、ポート１１１〜１１４のうち任意のポートに接続した端末装置をホストにロールスイッチさせることが可能となり、そのホストとして動作する端末装置と、ホスト２６０のデバイスポートとの間でデータ転送を行うことができる。
【００２５】
また本実施形態によれば、ポート１１１〜１１４のいずれかをアップストリーム側ポートにロールスイッチさせ、そのポートとダウンストリームポート１０２との間でデータ転送を行うので、回路装置１０を一般的なＳｏＣに接続できる。即ち、上述した特許文献１では、ホストと端末装置がマルチホストエンドポイントリフレクターを介して通信するため特殊なＵＳＢクラスをＳｏＣにサポートさせる必要があった。一方、本実施形態では、ホスト２６０のデバイスポートとダウンストリームポート１０２が接続され、端末装置と、アップストリーム側ポートにロールスイッチしたポートとが接続され、そのポートとダウンストリームポート１０２との間のデータ転送が制御回路１５０により制御される。これにより、一般的なＳｏＣをホスト２６０として用いることが可能となる。
【００２６】
図４に、本実施形態の回路装置１０を含む電子機器２７５の一例を示す。メインコントローラー２００のホストポートにはハブ２１５のアップストリームポートが接続され、ハブ２１５が有する複数のダウンストリームポートのうち１つが回路装置１０のアップストリームポート１０１に接続される。回路装置１０のダウンストリームポート１０２はメインコントローラー２００のデバイスポートに接続される。即ち、図４の例では、メインコントローラー２００が図２及び図３のホスト２６０に対応し、メインコントローラー２００のホストポートと回路装置１０のアップストリームポート１０１とがハブ２１５を介して接続されている。なお、メインコントローラー２００及びハブ２１５が図２及び図３のホスト２６０に対応するとみなしてもよい。この場合、回路装置１０のアップストリームポート１０１に接続されるハブ２１５のダウンストリームポートが、ホスト２６０のホストポートに対応する。
【００２７】
回路装置１０のポート１１１はケーブル２３４によりＵＳＢレセプタクル２３１に接続される。同様に、回路装置１０のポート１１２、１１３はケーブル２３５、２３６によりＵＳＢレセプタクル２３２、２３３に接続される。ＵＳＢレセプタクル２３１〜２３３には携帯型端末装置２５１〜２５３が接続可能である。図４の例では、携帯型端末装置２５１〜２５３の任意の１つがホストにロールスイッチ可能である。例えば携帯型端末装置２５２がホストにロールスイッチしたとき、回路装置１０のポート１１２がアップストリーム側ポートにロールスイッチし、回路装置１０はメインコントローラー２００のデバイスポートと携帯型端末装置２５２との間のデータ転送を行う。このように、本実施形態の回路装置１０を用いることで、複数のＵＳＢレセプタクル２３１〜２３３のうち任意のレセプタクルに接続された携帯型端末装置をホストにロールスイッチさせることが可能となる。
【００２８】
また、ロールスイッチせずデバイスのままの携帯型端末装置に対して、回路装置１０はハブとしての動作を維持できる。例えば、携帯型端末装置２５２がホストにロールスイッチしたとき、回路装置１０のポート１１１、１１３はダウンストリーム側ポートに維持され、回路装置１０はメインコントローラー２００のホストポートと携帯型端末装置２５１、２５３との間のデータ転送を行う。
【００２９】
例えば、電子機器２７５が車載機器である場合、ＵＳＢレセプタクル２３１〜２３３を運転席及び助手席、後部座席などに設けることが可能である。そして、任意のＵＳＢレセプタクルにロールスイッチ可能な携帯型端末装置を接続し、その携帯型端末装置がホストとして車載機器を制御できるようになる。このとき、残りのＵＳＢレセプタクルには、デバイスとしての携帯型端末装置を接続できる。また、後部座席などに設けたＵＳＢレセプタクルと、メインコントローラー２００が実装される基板との間の距離が長くなるため、通信品質の低下が想定される。この点、本実施形態によれば、ＵＳＢレセプタクルとメインコントローラー２００の間に回路装置１０が挿入されることで、通信品質を向上できる。即ち、ケーブルにより伝送された信号のアイパターンなどが劣化した場合であっても、回路装置１０がリピート処理におけるパケットの再同期化を行うことで、高品質な信号に再生することができる。
【００３０】
３．第１の詳細な構成例
図５は、回路装置１０の第１の詳細な構成例である。回路装置１０は、アップストリームポート１０１と、ダウンストリームポート１０２と、制御回路１５０と、第１〜第４バススイッチ回路であるバススイッチ回路ＳＷ１〜ＳＷ４と、第１〜第４ポートであるポート１１１〜１１４とを含む。
【００３１】
アップストリームポート１０１は、バスＢＵ１の一端に接続される物理層回路と、ロジック回路ＭＴＭＵ１と、を有する。バスＢＵ１の他端にホスト２６０のホストポートが接続される。ダウンストリームポート１０２は、バスＢＵ２の一端に接続される物理層回路と、ロジック回路ＭＴＭＵ２と、を有する。バスＢＵ２の他端にホスト２６０のデバイスポートが接続される。ポート１１１〜１１４は、バスＢＤ１〜ＢＤ４の一端に接続される物理層回路と、ロジック回路ＭＴＭＤ１〜ＭＴＤ４と、を有する。バスＢＤ１〜ＢＤ４の他端には、例えばＵＳＢレセプタクル等を介して端末装置ＰＤ１〜ＰＤ４が接続可能である。
【００３２】
制御回路１５０は、ハブロジック回路１５１とＨＳリピーターパス回路１５２とバスモニター回路１５３とレジスター１５４とを含む。
【００３３】
ハブロジック回路１５１は、アップストリームポート１０１とポート１１１〜１１４との間のデータ転送を制御する。またハブロジック回路１５１は、バスモニター回路１５３と共に第１モードと第２〜第５モードとの間のロールスイッチを制御する。ハブロジック回路１５１は、ＦＳモードにおいて転送データをリピートするＦＳリピーターＦＳＲと、データ転送レートの変換を行うトランザクショントランスレーターＴＴとを含む。トランザクショントランスレーターＴＴは、アップストリームポート１０１にＨＳモードのホストが接続され、ポート１１１〜１１４にＦＳモードのデバイスが接続された場合に、ＨＳモードとＦＳモードとの間のデータ転送レートの変換を行う。またハブロジック回路１５１は、データ転送におけるステート制御を行うハブステートマシン回路と、回路装置１０の各部を制御するハブコントローラーとを含むことができる。
【００３４】
ＨＳリピーターパス回路１５２は、第１〜第５モードにおいて、ＨＳモードのデータ転送を行う際のポート間接続を行う。またＨＳリピーターパス回路１５２は、アップストリームポート１０１から、ポート１１１〜１１４のうちダウンストリーム側ポートに設定されたポートへパケットをブロードキャストする際に遅延調整を行う。ＨＳリピーターパス回路１５２は、遅延調整回路を含む。例えば、遅延調整回路は、第１モードにおいて、アップストリームポート１０１から、ポート１１１〜１１４の各ポートへのパケット転送の遅延時間が同じになるように、構成されている。
【００３５】
バススイッチ回路ＳＷ１はバスＢＵ２とバスＢＤ１とを電気的に接続又は非接続にする。バススイッチ回路ＳＷ１の一端はバスＢＵ２に接続され、他端はバスＢＤ１に接続される。同様に、バススイッチ回路ＳＷ２〜ＳＷ４はバスＢＵ２とバスＢＤ２〜ＢＤ４とを電気的に接続又は非接続にする。バススイッチ回路ＳＷ２〜ＳＷ４の一端はバスＢＵ２に接続され、他端はバスＢＤ２〜ＢＤ４に接続される。バススイッチ回路ＳＷ１〜ＳＷ４は、トランジスターで構成されたスイッチ回路であり、例えばトランスファーゲートである。
【００３６】
バスモニター回路１５３は、バスＢＵ１、ＢＵ２、ＢＤ１〜ＢＤ４のモニター動作を行う。例えば物理層回路からの信号に基づいて、バスＢＵ１、ＢＵ２、ＢＤ１〜ＢＤ４の状態を監視するモニター動作を行う。そしてバスモニター回路１５３は、モニター結果に基づいて、バススイッチ回路ＳＷ１〜ＳＷ４をオン又はオフにする。またバスモニター回路１５３は、モニター結果に基づいてイネーブル信号ＥＮ２をＨＳリピーターパス回路１５２に出力することで、ＨＳリピーターパス回路１５２によるポート間接続を切り替える。
【００３７】
レジスター１５４は、回路装置１０の動作を設定する設定データ、及びホスト２６０からのコマンドに基づく設定データなどを記憶する。例えば、レジスター１５４は、第１〜第５モードを指定する設定データを記憶する。具体的には、ホスト２６０がアップストリームポート１０１を介してコマンドを送信する。制御回路１５０のハブロジック回路１５１は、受信したコマンドに対応する設定データをレジスター１５４へ書き込む。ハブロジック回路１５１は、レジスター１５４に書き込まれた設定データに基づいて、イネーブル信号ＥＮ１をＨＳリピーターパス回路１５２へ出力することで、ポート間接続を制御する。イネーブル信号ＥＮ１は、ポート１１１〜１１４のいずれをダウンストリーム側ポートにロールスイッチさせるかを指定する信号である。即ち、第２〜第５モードにおいて、イネーブル信号ＥＮ１によって指定されたポートが、ダウンストリームポート１０２に接続される。第１〜第５モードを指定するコマンドは、例えばホストが発行するセットポートフィーチャーリクエストである。このコマンドの詳細については後述する。
【００３８】
以下、図５の回路装置１０が行うロールスイッチの動作手順を説明する。以下では、ポート１１１がロールスイッチする場合、即ち第１モードと第２モードとの間の切り替えを例に説明する。なお、ポート１１２〜１１４がロールスイッチする場合についても、動作手順は同様である。
【００３９】
図６に、ポート１１１に接続された端末装置ＰＤ１がデバイスからホストにロールスイッチする際の、回路装置１０の動作手順を示す。
【００４０】
ステップＳ１に示すように、回路装置１０は第１モードで動作している。第１モードにおいて、ＨＳリピーターパス回路１５２はアップストリームポート１０１とポート１１１〜１１４との間を接続している。回路装置１０は、アップストリームポート１０１に接続されたホスト２６０と、ダウンストリーム側ポートであるポート１１１に接続された端末装置ＰＤ１との間のデータ転送を行う。また回路装置１０は、アップストリームポート１０１に接続されたホスト２６０と、ダウンストリーム側ポートであるポート１１２〜１１４に接続された端末装置ＰＤ２〜ＰＤ４との間のデータ転送を行う。即ち、第１モードにおいて、回路装置１０は、端末装置ＰＤ１〜ＰＤ４に対して通常のハブとして機能する。
【００４１】
このとき、ホスト２６０と端末装置ＰＤ１との間で、ロールスイッチ実行の取り決めを行う。例えば、ホスト２６０が端末装置ＰＤ１に対して、ホストへのロールスイッチを指示するコマンドを送信する。或いは、端末装置ＰＤ１がホスト２６０に対して、ホストへのロールスイッチを通知するコマンドを送信する。
【００４２】
次に、ホスト２６０は、ロールスイッチ実行を指示するコマンドを回路装置１０へ送信する。ステップＳ２に示すように、ハブロジック回路１５１は、アップストリームポート１０１を介してコマンドを受信する。
【００４３】
次に、ステップＳ３に示すように、バスモニター回路１５３は、コマンドにより指定されたポート１１１のバススイッチ回路ＳＷ１をオンにする。これにより、ポート１１１とダウンストリームポート１０２とがバススイッチ回路ＳＷ１を介して接続される。具体的には、端末装置ＰＤ１及びポート１１１が接続されるバスＢＤ１と、ホスト２６０及びダウンストリームポート１０２が接続されるバスＢＵ２とが、バススイッチ回路ＳＷ１を介して接続される。このとき、ハブロジック回路１５１は、ポート１１１をディセーブルにすると共に、アップストリームポート１０１からポート１１１へのＨＳパケットリピートを停止する。
【００４４】
バスモニター回路１５３がバススイッチ回路ＳＷ１をオンするタイミングは、例えば以下の第１例及び第２例が考えられる。
【００４５】
第１例では、バスモニター回路１５３は、ポート１１１においてデバイス切断が検出されたタイミングで、バススイッチ回路ＳＷ１をオンにする。具体的には、ポート１１１の物理層回路が切断検出回路を含む。端末装置ＰＤ１がデバイス切断においてターミネーションをオフし、切断検出回路は、ＳＯＦパケットの振幅増加を検出することでデバイス切断を検出する。バスモニター回路１５３は、切断検出回路の検出結果に基づいてバススイッチ回路ＳＷ１をオンにする。
【００４６】
第２例では、バスモニター回路１５３は、アップストリームポート１０１からポート１１１へリピートされた第１ＳＯＦパケットと第２ＳＯＦパケットとの間のタイミングで、バススイッチ回路ＳＷ１をオンにする。即ち、ホスト２６０は端末装置ＰＤ１へ定期的にＳＯＦパケットを送信しており、そのＳＯＦパケットはアップストリームポート１０１からＨＳリピーターパス回路１５２を介してポート１１１へリピートされている。バスモニター回路１５３は、バスＢＤ１をモニターすることで、ポート１１１におけるＳＯＦパケットを検出し、バスＢＤ１にＳＯＦパケットが存在しない期間においてバススイッチ回路ＳＷ１をオンにする。バススイッチ回路ＳＷ１を切り替えたタイミングの直前のＳＯＦパケットが第１ＳＯＦパケットであり、第１ＳＯＦパケットの次のＳＯＦパケットが第２ＳＯＦパケットである。
【００４７】
以上のようにして、バススイッチ回路ＳＷ１を介して、ホスト２６０のデバイスポートと、ホストとして動作する端末装置ＰＤ１とが接続される。この後、ホスト２６０のデバイスポートと端末装置ＰＤ１との間で接続処理及びリセット処理が行われる。具体的には、ホスト２６０のデバイスポートがバスＢＵ２のＤＰをプルアップする。端末装置ＰＤ１は、バススイッチ回路ＳＷ１を介してＤＰプルアップを検出した後、バスリセット処理を実行する。
【００４８】
次に、ステップＳ４に示すように、バスモニター回路１５３は、バスＢＵ２及びバスＢＤ１のバス状態をモニターし、バスリセット処理が終了したか否かを判断する。バスモニター回路１５３は、バスリセット処理が終了したと判断したとき、バススイッチ回路ＳＷ１をオフにする。
【００４９】
またステップＳ６に示すように、バスモニター回路１５３は、バスリセット処理が終了したと判断したとき、ＨＳリピーターパス回路１５２によるポート接続を切り替える。具体的には、バスモニター回路１５３は、ダウンストリームポート１０２とポート１１１とがＨＳリピーターパス回路１５２を介して接続されるパスに切り替える。
【００５０】
ステップＳ７に示すように、以上の動作手順により第１モードから第２モードに切り替わる。第２モードにおいて、回路装置１０は、アップストリーム側ポートであるポート１１１に接続された端末装置ＰＤ１と、ダウンストリームポート１０２に接続されたホスト２６０との間のデータ転送を行う。また回路装置１０は、アップストリームポート１０１に接続されたホスト２６０と、ダウンストリーム側ポートであるポート１１２〜１１４に接続された端末装置ＰＤ２〜ＰＤ４との間のデータ転送を行う。即ち、第２モードにおいて、回路装置１０は、端末装置ＰＤ２〜ＰＤ４に対しては通常のハブとしての機能を維持する。
【００５１】
図７に、ポート１１１に接続された端末装置ＰＤ１がロールスイッチを終了する際の、回路装置１０の動作手順を示す。
【００５２】
ステップＳ１１に示すように、回路装置１０は第２モードで動作している。ステップＳ１２に示すように、バスモニター回路１５３は、バスＢＤ１においてサスペンド又は切断が行われたかを判断する。具体的には、端末装置ＰＤ１がホストからデバイスに切り替わる際に、端末装置ＰＤ１がバスＢＤ１をサスペンド又は切断する。バスモニター回路１５３は、そのサスペンド又は切断を検出する。
【００５３】
ステップＳ１３に示すように、バスモニター回路１５３は、バスＢＤ１においてサスペンド又は切断が行われたと判断したとき、バススイッチ回路ＳＷ１をオンにする。ホスト２６０のデバイスポートは、バススイッチ回路ＳＷ１を介してバスＢＤ１のサスペンド又は切断を検出する。ホスト２６０は、バスＢＤ１のサスペンド又は切断を検出したとき、ロールスイッチ終了を指示するコマンドを回路装置１０へ送信する。
【００５４】
なお、ステップＳ１２及びＳ１３において、バスモニター回路１５３がバスＢＤ１の切断を検出したとき、ダウンストリームポート１０２のＨＳターミネーションを一定期間オフさせてもよい。ホスト２６０のデバイスポートは、ダウンストリームポート１０２のＨＳターミネーションがオフであることを検出することで、バスＢＤ１の切断を検出してもよい。
【００５５】
ステップＳ１４に示すように、ハブロジック回路１５１は、ホスト２６０からアップストリームポート１０１を介してコマンドを受信する。
【００５６】
次に、ステップＳ１５に示すように、ハブロジック回路１５１によるポート接続を切り替える。具体的には、ハブロジック回路１５１は、コマンドにより指定されたポート１１１と、アップストリームポート１０１とを、ハブロジック回路１５１を介して接続させる。更にバススイッチ回路ＳＷ１をオフする。
【００５７】
ホスト２６０のホストポートが、ハブロジック回路１５１を介して端末装置ＰＤ１のデバイス接続を検出したとき、ホスト２６０がハブロジック回路１５１を介して、ポートリセットを実行する。そしてホスト２６０は、ホストポートと、デバイスとして動作する端末装置ＰＤ１との間を再接続する。
【００５８】
ステップＳ１７に示すように、以上の動作手順により第２モードから第１モードに切り替わる。
【００５９】
４．コマンドの例
図８を用いて、ロールスイッチを指示するコマンドについて説明する。なお図８において「ＨＵＢ」は本実施形態の回路装置１０を意味する。
【００６０】
図８に示すように、ホスト２６０は、回路装置１０に対してコントロール転送を実行することで、回路装置１０に対してロールスイッチの開始又は終了を指示する。コントロール転送は、セットアップトランザクションとイントランザクションで構成される。
【００６１】
セットアップトランザクションにおいて、ホスト２６０は回路装置１０に対してセットアップトークンパケットを送信する。次に、ホスト２６０は回路装置１０に対してセットポートフィーチャーリクエストのデータパケットを送信する。これらのパケットは、回路装置１０のアップストリームポート１０１を介してハブロジック回路１５１により受信される。次に、回路装置１０のハブロジック回路１５１は、アップストリームポート１０１を介してホスト２６０へＡＣＫパケットを送信する。
【００６２】
ホスト２６０は、セットポートフィーチャーリクエストのデータパケットにおいて、ｗＶａｌｕｅ及びｗＩｎｄｅｘ／Ｐｏｒｔを設定する。
【００６３】
ロールスイッチ開始を意味する数値がｗＶａｌｕｅに設定された場合、セットポートフィーチャーリクエストは、ロールスイッチ開始を指示するコマンドとなる。ロールスイッチ開始とは、ポート１１１〜１１４のいずれかをダウンストリーム側ポートからアップストリーム側ポートへ切り替えることである。ロールスイッチ終了を意味する数値がｗＶａｌｕｅに設定された場合、セットポートフィーチャーリクエストは、ロールスイッチ終了を指示するコマンドとなる。ロールスイッチ終了とは、アップストリーム側ポートに切り替わったポートを、ダウンストリーム側ポートに戻すことである。なお、ロールスイッチ開始を意味する数値、及びロールスイッチ終了を意味する数値は、ホスト２６０及び回路装置１０において予め共通に定義されている。
【００６４】
ｗＩｎｄｅｘ／Ｐｏｒｔには、ロールスイッチさせるポートが指定される。即ち、ポート１１１〜１１４のいずれかが指定される。ｗＩｎｄｅｘ／Ｐｏｒｔにポート１１１が指定された場合、セットポートフィーチャーリクエストは、ポート１１１をロールスイッチさせる第１コマンドとなる。同様に、ｗＩｎｄｅｘ／Ｐｏｒｔにポート１１２〜１１４が指定された場合、セットポートフィーチャーリクエストは、ポート１１２〜１１４をロールスイッチさせる第２〜第４コマンドとなる。
【００６５】
ホスト２６０は、セットアップトランザクションにおけるＡＣＫパケットを検出した後、イントランザクションを実行する。イントランザクションにおいて、ホスト２６０は、イントークンパケットを回路装置１０へ送信する。このパケットは、回路装置１０のアップストリームポート１０１を介してハブロジック回路１５１により受信される。次に、回路装置１０のハブロジック回路１５１は、アップストリームポート１０１を介してホスト２６０へデータパケットを送信する。ホスト２６０は、データパケットを検出するとＡＣＫパケットを回路装置１０へ送信する。
【００６６】
以上の手順によって、ホスト２６０がセットポートフィーチャーリクエストをコマンドとして回路装置１０へ送信することで、ホスト２６０が回路装置１０に対してロールスイッチを指示する。
【００６７】
５．ポートのロジック回路、及びＨＳリピーターパス回路
図９、図１０にポートのロジック回路の詳細な構成例を示す。アップストリームポートＵＳＰは、アップストリームポート１０１、又はポート１１１〜１１４のうちアップストリーム側ポートに設定されたポートである。またダウンストリームポートＤＳＰは、ダウンストリームポート１０２、又はポート１１１〜１１４のうちダウンストリーム側ポートに設定されたポートである。例えば、第１モードにおいて、アップストリームポートＵＳＰはアップストリームポート１０１であり、ダウンストリームポートＤＳＰはポート１１１〜１１４のいずれかである。また例えば、第２モードにおいて、アップストリームポートＵＳＰはポート１１１であり、ダウンストリームポートＤＳＰはダウンストリームポート１０２である。
【００６８】
図９、図１０に示すように、アップストリームポートＵＳＰは物理層回路ＰＨＵＰとロジック回路ＭＴＵＰとを含む。ロジック回路ＭＴＵＰは、ＤＬＬ回路ＤＬＬ１とエラスティシティーバッファーＥＢＦ１とＨＳリピーターＨＳＲ１とパラレルシリアル変換回路Ｐ２Ｓ１とを含む。ダウンストリームポートＤＳＰは物理層回路ＰＨＤＮとロジック回路ＭＴＤＮとを含む。ロジック回路ＭＴＤＮは、ＤＬＬ回路ＤＬＬ２とエラスティシティーバッファーＥＢＦ２とＨＳリピーターＨＳＲ２とパラレルシリアル変換回路Ｐ２Ｓ２とを含む。
【００６９】
図９には、アップストリーム側からダウンストリーム側へパケット転送する場合の経路を示す。
【００７０】
アップストリームポートＵＳＰの物理層回路ＰＨＵＰは、受信したシリアル信号をロジック回路ＭＴＵＰのＤＬＬ回路ＤＬＬ１へ出力する。ＤＬＬ回路ＤＬＬ１は、シリアル信号を回路装置１０内部のクロック信号で再同期化すると共に、シリアル信号をパラレル信号に変換する。エラスティシティーバッファーＥＢＦ１は、ＤＬＬ回路ＤＬＬ１からのパラレル信号をバッファリングする。ＨＳリピーターＨＳＲ１は、バッファリングされたパラレル信号をＨＳリピーターパス回路１５２へリピートする。ＨＳリピーターパス回路１５２は、ＨＳリピーターＨＳＲ１からのパラレル信号をダウンストリームポートＤＳＰへ出力する。
【００７１】
ロジック回路ＭＴＤＮのパラレルシリアル変換回路Ｐ２Ｓ２は、ＨＳリピーターパス回路１５２からのパラレル信号をシリアル信号へ変換する。物理層回路ＰＨＤＮは、パラレルシリアル変換回路Ｐ２Ｓ２からのシリアル信号を送信する。
【００７２】
図１０には、ダウンストリーム側からアップストリーム側へパケット転送する場合の経路を示す。
【００７３】
ダウンストリームポートＤＳＰの物理層回路ＰＨＤＮは、受信したシリアル信号をロジック回路ＭＴＤＮのＤＬＬ回路ＤＬＬ２へ出力する。ＤＬＬ回路ＤＬＬ２は、シリアル信号を回路装置１０内部のクロック信号で再同期化すると共に、シリアル信号をパラレル信号に変換する。エラスティシティーバッファーＥＢＦ２は、ＤＬＬ回路ＤＬＬ２からのパラレル信号をバッファリングする。ＨＳリピーターＨＳＲ２は、バッファリングされたパラレル信号をＨＳリピーターパス回路１５２へリピートする。ＨＳリピーターパス回路１５２は、ＨＳリピーターＨＳＲ２からのパラレル信号をアップストリームポートＵＳＰへ出力する。
【００７４】
ロジック回路ＭＴＵＰのパラレルシリアル変換回路Ｐ２Ｓ１は、ＨＳリピーターパス回路１５２からのパラレル信号をシリアル信号へ変換する。物理層回路ＰＨＵＰは、パラレルシリアル変換回路Ｐ２Ｓ１からのシリアル信号を送信する。
【００７５】
図１１、図１２に、ＨＳリピーターパス回路１５２の詳細な構成例を示す。ＨＳリピーターパス回路１５２は、セレクターＳＥＬ１〜ＳＥＬ４を含む。またＨＳリピーターパス回路１５２は、上述した遅延調整回路を更に含んでもよい。なお図１１、図１２において、セレクターＳＥＬ１〜ＳＥＬ４内に示す点線は、ポート間の接続状態を模式的に示すものである。
【００７６】
セレクターＳＥＬ１は、ポート１１１とアップストリームポート１０１との間、又はポート１１１とダウンストリームポート１０２との間を接続する。同様に、セレクターＳＥＬ２〜ＳＥＬ４は、ポート１１２〜１１４とアップストリームポート１０１との間、又はポート１１２〜１１４とダウンストリームポート１０２との間を接続する。セレクターＳＥＬ１〜ＳＥＬ４は、ポート間を双方向に接続可能であり、例えばトランジスターで構成されたアナログスイッチ回路である。
【００７７】
図１１には、第１モードにおけるポート間の接続状態を示す。第１モードにおいてセレクターＳＥＬ１〜ＳＥＬ４は、アップストリームポート１０１とポート１１１〜１１４とを接続する。具体的には、セレクターＳＥＬ１〜ＳＥＬ４にはイネーブル信号ＥＮが入力される。イネーブル信号ＥＮは、図５のイネーブル信号ＥＮ１及びＥＮ２に基づく信号である。第１モードでは、バスモニター回路１５３は、非アクティブのイネーブル信号ＥＮ２を出力する。このとき、セレクターＳＥＬ１〜ＳＥＬ４は、アップストリームポート１０１を選択する。
【００７８】
図１２には、第２モードにおけるポート間の接続状態を示す。第２モードにおいてセレクターＳＥＬ１は、ダウンストリームポート１０２とポート１１１とを接続する。またＳＥＬ２〜ＳＥＬ４は、アップストリームポート１０１とポート１１２〜１１４とを接続する。具体的には、第２モードでは、ハブロジック回路１５１は、ポート１１１を指定するイネーブル信号ＥＮ１を出力する。またバスモニター回路１５３は、アクティブのイネーブル信号ＥＮ２を出力する。このとき、セレクターＳＥＬ１は、ダウンストリームポート１０２を選択し、セレクターＳＥＬ２〜ＳＥＬ４はアップストリームポート１０１を選択する。
【００７９】
同様に、第３〜第５モードでは、それぞれセレクターＳＥＬ２〜ＳＥＬ４がダウンストリームポート１０２を選択する。以上のようにして、第１〜第５モードにおけるＨＳリピーターパスが切り替えられる。
【００８０】
６．第２の詳細な構成例
図１３は、回路装置１０の第２の詳細な構成例である。図１３の構成を図５の構成と比べると、図１３では、バススイッチ回路ＳＷ１〜ＳＷ４が省略されており、制御回路１５０がＦＳリピーターパス回路１５５を更に含む。なお、図５などで既に説明した構成要素には同一の符号を付し、その構成要素についての説明を適宜に省略する。
【００８１】
ＦＳリピーターパス回路１５５は、図５におけるバススイッチ回路ＳＷ１〜ＳＷ４の機能を代替するものである。即ち、図５においてバススイッチ回路ＳＷ１がオンした状態は、図１３においてＦＳリピーターパス回路１５５がダウンストリームポート１０２とポート１１１とを接続した状態に対応する。また図５においてバススイッチ回路ＳＷ１がオフした状態は、図１３においてＦＳリピーターパス回路１５５がアップストリームポート１０１とポート１１１とを接続した状態に対応する。同様に、図５においてバススイッチ回路ＳＷ２〜ＳＷ４がオンした状態は、図１３においてＦＳリピーターパス回路１５５がダウンストリームポート１０２とポート１１２〜１１４とを接続した状態に対応する。また図５においてバススイッチ回路ＳＷ２〜ＳＷ４がオフした状態は、図１３においてＦＳリピーターパス回路１５５がアップストリームポート１０１とポート１１２〜１１４とを接続した状態に対応する。
【００８２】
ＦＳリピーターパス回路１５５は、図１１及び図１２のＨＳリピーターパス回路１５２と同様な構成である。但し、ＦＳリピーターパス回路１５５は、ハブロジック回路１５１のＦＳリピーターＦＳＲ及びトランザクショントランスレーターＴＴを介してアップストリームポート１０１に接続されている。またＦＳリピーターパス回路１５５は、イネーブル信号ＥＮではなく、バスモニター回路１５３からの制御信号によりパス切り替えが制御されている。
【００８３】
また、図６及び図７に示すロールスイッチにおける動作手順についても、図１３の回路装置１０に適用できる。即ち、バススイッチ回路のオンオフを、上記のようにＦＳリピーターパス回路１５５のパス切り替えに読み替えればよい。
【００８４】
但し、図６のステップＳ３及びＳ４において、ホスト２６０及び端末装置ＰＤ１がロールスイッチした後のバスリセット処理が行われるが、このバスリセット処理はチャープなどを含む。このため、図１３のＦＳリピーターパス回路１５５を用いる構成では、チャープなどを含むバスリセット処理を各ポートで行う必要がある。
【００８５】
図１３では、バスモニター回路１５３はバスリセットコントロール機能を有する。具体的には、バスモニター回路１５３は、以下のようにダウンストリームポート１０２とポート１１１を制御することで、バスリセット処理を実行する。なお、ここでは第２モードへの切り替えを例に説明するが、第３〜第５モードへの切り替えにおいても同様の動作手順である。
【００８６】
図１４に、バスリセット処理のタイミングチャートを示す。
【００８７】
ホスト２６０のデバイスポートは、ダウンストリームポート１０２に接続されるバスＢＵ２のＤＰをプルアップする。
【００８８】
回路装置１０のバスモニター回路１５３は、バスＢＵ２のＤＰがプルアップされたことを検出した後、ポート１１１にＤＰプルアップを指示する。それを受けて、ポート１１１はバスＢＤ１のＤＰをプルアップする。
【００８９】
端末装置ＰＤ１は、バスＢＤ１のＤＰがプルアップされたことを検出した後、バスリセットを発行する。
【００９０】
バスモニター回路１５３は、端末装置ＰＤ１からのバスリセットを検出した後、ダウンストリームポート１０２にバスリセット発行を指示する。それを受けて、ダウンストリームポート１０２は、ホスト２６０へバスリセットを発行する。
【００９１】
ホスト２６０は、ダウンストリームポート１０２からのバスリセットを検出した後、デバイスポートからダウンストリームポート１０２へデバイスチャープＫを発行する。
【００９２】
バスモニター回路１５３は、ダウンストリームポート１０２におけるデバイスチャープＫを検出した後、ポート１１１にデバイスチャープＫ発行を指示する。それを受けて、ポート１１１は端末装置ＰＤ１へデバイスチャープＫを発行する。
【００９３】
ホスト２６０が、デバイスチャープＫを終了する。バスモニター回路１５３は、ダウンストリームポート１０２におけるデバイスチャープＫの終了を検出した後、ポート１１１にデバイスチャープＫ終了を指示する。それを受けて、ポート１１１は端末装置ＰＤ１へのデバイスチャープＫを終了する。
【００９４】
端末装置ＰＤ１は、ポート１１１へホストチャープＫＪを発行する。
【００９５】
バスモニター回路１５３は、ポート１１１におけるホストチャープＫＪを検出した後、ダウンストリームポート１０２にホストチャープＫＪ発行を指示する。それを受けて、ダウンストリームポート１０２は、ホスト２６０へホストチャープＫＪを発行する。
【００９６】
バスモニター回路１５３は、ＵＳＢ規格において決められたタイミングで、ポート１１１のＨＳターミネーションをオンする。
【００９７】
端末装置ＰＤ１は、ポート１１１へのホストチャープＫＪを終了する。
【００９８】
バスモニター回路１５３は、ダウンストリームポート１０２にホストチャープＫＪ終了を指示する。それを受けて、ダウンストリームポート１０２は、ホスト２６０へのホストチャープＫＪを終了する。以上によりバスリセット処理が終了する。
【００９９】
７．電子機器、移動体
図１５に、本実施形態の回路装置１０を含む電子機器３００の構成例を示す。この電子機器３００は、本実施形態の回路装置１０と、処理装置であるメインコントローラー２００を含む。回路装置１０の第１〜第４ポートにはペリフェラルデバイス３５０が接続可能である。回路装置１０のアップストリームポートはメインコントローラー２００のホストポートに接続され、回路装置１０のダウンストリームポートはメインコントローラー２００のデバイスポートに接続される。
【０１００】
メインコントローラー２００は、電子機器３００の制御処理や、種々の信号処理等を行う。メインコントローラー２００は、例えばＭＰＵ又はＣＰＵ等のプロセッサーにより実現できる。或いはメインコントローラー２００をＡＳＩＣ（Application Specific Integrated Circuit）により実現してもよい。またメインコントローラー２００を、複数のＩＣ（Integrated Circuit）や回路部品が実装された回路基板により実現してもよい。ペリフェラルデバイス３５０としては、例えば携帯型端末装置などを想定できるが、これには限定されない。ペリフェラルデバイス３５０はウェアラブル機器などであってもよい。
【０１０１】
電子機器３００は、メモリー３２０、操作インターフェース３３０、通信インターフェース３４０を更に含むことができる。メモリー３２０は、例えば操作インターフェース３３０や通信インターフェース３４０からのデータを記憶したり、或いは、メインコントローラー２００のワークメモリーとして機能する。メモリー３２０は、例えばＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）などの半導体メモリー、或いはハードディスクドライブ等の磁気記憶装置により実現できる。操作インターフェース３３０は、ユーザーからの種々の操作を受け付けるユーザーインターフェースである。例えば操作インターフェース３３０は、各種のボタンやタッチパネル等により実現できる。通信インターフェース３４０は、制御データや画像データなどの各種データの通信を行うインターフェースである。通信インターフェース３４０の通信処理は、有線の通信処理であってもよいし、無線の通信処理であってもよい。
【０１０２】
電子機器３００の具体例としては、カーナビゲーション機器や車載オーディオ機器やメーターパネルなどの車載機器、プロジェクター、ヘッドマウントディスプレイ、印刷装置、携帯情報端末、携帯型ゲーム端末、ロボット、或いは情報処理装置などの種々の電子機器がある。或いは電子機器３００は、生体情報測定機器、距離、時間、流速又は流量等の物理量を計測する計測機器、基地局又はルーター等のネットワーク関連機器、コンテンツを配信するコンテンツ提供機器、或いはデジタルカメラ又はビデオカメラ等の映像機器などであってもよい。
【０１０３】
図１６に、本実施形態の回路装置１０を含む移動体の構成例を示す。移動体は、例えばエンジンやモーター等の駆動機構、ハンドルや舵等の操舵機構、各種の電子機器を備えて、地上や空や海上を移動する機器又は装置である。本実施形態の移動体として、例えば、車、飛行機、バイク、船舶、或いはロボット等を想定できる。図１６は移動体の具体例としての自動車２０６を概略的に示している。自動車２０６は、車体２０７や車輪２０９を有する。自動車２０６には、回路装置１０を有する車載機器２２０と、自動車２０６の各部を制御する制御装置２１０が組み込まれている。制御装置２１０は例えばＥＣＵ（Electronic Control Unit）などを含むことができる。本実施形態の回路装置１０は制御装置２１０に設けられるものであってもよい。車載機器２２０は、例えばカーナビゲーション機器、車載オーディオ機器、或いはメーターパネル等のパネル機器である。回路装置１０の第１〜第４ポートの各々にはケーブルハーネスの一端が接続され、ケーブルハーネスの他端はＵＳＢレセプタクルに接続される。この複数のＵＳＢレセプタクルは、例えば運転席及び助手席、後部座席などに配置される。
【０１０４】
以上に説明したように本実施形態の回路装置は、ホストに接続されるアップストリームポートと、ホストに接続されるダウンストリームポートと、第１ポートと、第２ポートと、データ転送制御及びポート制御を行う制御回路と、を含む。制御回路は、第１モードにおいて、第１ポート及び第２ポートをダウンストリーム側のポートに設定し、アップストリームポートと第１ポート及び第２ポートとの間のデータ転送を制御する。制御回路は、第２モードにおいて、第１ポートをアップストリーム側のポートに設定し、第１ポートとダウンストリームポートとの間のデータ転送を制御する。
【０１０５】
このようにすれば、端末装置のロールスイッチに対応したハブを実現できる。即ち、第２モードにおいて第１ポートがアップストリーム側ポートに設定されることで、ホストとして動作する端末装置と、ダウンストリームポートに接続されるホストのデバイスポートとの間でデータ転送を行うことができる。また、本実施形態によれば、ホストのデバイスポートとダウンストリームポートが接続され、端末装置と、アップストリーム側ポートに設定されたポートとが接続され、そのポートとダウンストリームポートとの間のデータ転送が制御回路により制御される。これにより、一般的なＳｏＣをホストとして用いることが可能となる。
【０１０６】
また本実施形態では、制御回路は、第３モードにおいて、第２ポートをアップストリーム側のポートに設定し、第２ポートとダウンストリームポートとの間のデータ転送を制御してもよい。
【０１０７】
これにより、第１ポート及び第２ポートのいずれにおいても端末装置のロールスイッチに対応できる。即ち、第１ポートに接続された端末装置がロールスイッチする場合には、回路装置は第１モードから第２モードに切り替わればよく、第２ポートに接続された端末装置がロールスイッチする場合には、回路装置は第１モードから第３モードに切り替わればよい。
【０１０８】
また本実施形態では、制御回路は、ホストからアップストリームポートを介して受信したコマンドに基づいて、第１モードから第２モードに切り替えてもよい。
【０１０９】
このようにすれば、ホストから受信されたコマンドに基づいて第１モードから第２モードが切り替えられることで、第１ポートに接続された端末装置のロールスイッチに対応できる。
【０１１０】
また本実施形態では、制御回路は、第１モードから第２モードへの切り替えを指示する第１コマンドをホストからアップストリームポートを介して受信した場合、第１モードから第２モードに切り替えてもよい。制御回路は、第１モードから第３モードへの切り替えを指示する第２コマンドをホストからアップストリームポートを介して受信した場合、第１モードから第３モードに切り替えてもよい。
【０１１１】
このようにすれば、ホストから受信された第１コマンドに基づいて第１モードから第２モードが切り替えられることで、第１ポートに接続された端末装置のロールスイッチに対応できる。また、ホストから受信された第２コマンドに基づいて第１モードから第３モードが切り替えられることで、第２ポートに接続された端末装置のロールスイッチに対応できる。
【０１１２】
また本実施形態では、制御回路は、第１モードから第２モードへの切り替えにおいて、ダウンストリームポートと第１ポートを制御することでバスリセット処理を実行してもよい。
【０１１３】
ホストのデバイスポートが接続されるバスと、端末装置が接続されるバスとの間をバススイッチ回路で接続した場合、バススイッチ回路を介してホストと端末装置との間でバスリセット処理が実行される。本実施形態によれば、ダウンストリームポートと第１ポートが制御されることでバスリセット処理が実行されることで、バススイッチ回路を設けることなくバスリセット処理を実行できるようになる。これにより、バススイッチ回路を設けることなく端末装置のロールスイッチに対応できる。
【０１１４】
また本実施形態では、制御回路は、ダウンストリームポートにおいてデバイスチャープが検出されたとき、第１ポートにデバイスチャープを発行させてもよい。そして制御回路は、第１ポートにデバイスチャープを発行させた後に、第１ポートにおいてホストチャープが検出されたとき、ダウンストリームポートにホストチャープを発行させてもよい。
【０１１５】
このようにすれば、ホストと端末装置との間でやりとりされるチャープが、ダウンストリームポート及び第１ポートに中継される。これにより、ホストと端末装置を直接にバススイッチ回路により接続しなくても、バスリセット処理を実行できるようになる。
【０１１６】
また本実施形態では、回路装置は、ダウンストリームポートと第１ポートを接続する第１バススイッチ回路を含んでもよい。制御回路は、第１モードから第２モードへの切り替えにおいて、第１バススイッチ回路をオンにした後、バスリセット終了を検出したときに第１バススイッチ回路をオフにしてもよい。
【０１１７】
このように、回路装置は、ダウンストリームポートに接続されるバスと、第１ポートに接続されるバスとの間を接続する第１バススイッチ回路を含んでもよい。この場合、ホストのデバイスポートと、ホストにロールスイッチした端末装置との間で、第１バススイッチ回路を介してバスリセット処理が実行される。このようにバススイッチ回路を設ける手法によっても、端末装置のロールスイッチに対応できる。
【０１１８】
また本実施形態では、制御回路は、第１モードから第２モードへの切り替えにおいて、第１ポートにおいてデバイス切断が検出されたタイミング、又はアップストリームポートから第１ポートへリピートされた第１ＳＯＦパケットと第２ＳＯＦパケットとの間のタイミングで、第１バススイッチ回路をオンにしてもよい。
【０１１９】
これらのタイミングはバスに信号がないタイミングであるため、これらのタイミングにおいて第１バススイッチ回路をオンにできる。そして、第１バススイッチ回路をオンにすることで、上記のように、ロールスイッチ後のホストと端末装置との間でバスリセット処理を実行できるようになる。
【０１２０】
また本実施形態では、制御回路は、第２モードにおいて、第２ポートをダウンストリーム側のポートに設定し、アップストリームポートと第２ポートとの間のデータ転送を制御してもよい。
【０１２１】
このようにすれば、第１ポートに接続された端末装置のロールスイッチに対応できると共に、第２ポートは通常のハブにおけるダウンストリームポートとして機能させることができる。
【０１２２】
また本実施形態の電子機器は、上記のいずれかに記載の回路装置を含む。
【０１２３】
また本実施形態の移動体は、上記のいずれかに記載の回路装置を含む。
【０１２４】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また本実施形態及び変形例の全ての組み合わせも、本発明の範囲に含まれる。また回路装置、電子機器及び移動体等の構成及び動作等も、本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【０１２５】
１０…回路装置、１０１…アップストリームポート、１０２…ダウンストリームポート、１１１〜１１４…ポート、１５０…制御回路、１５１…ハブロジック回路、１５２…ＨＳリピーターパス回路、１５３…バスモニター回路、１５４…レジスター、１５５…ＦＳリピーターパス回路、２００…メインコントローラー、２０６…自動車、２０７…車体、２０９…車輪、２１０…制御装置、２２０…車載機器、２３１〜２３３…ＵＳＢレセプタクル、２６０…ホスト、２７５，３００…電子機器、３２０…メモリー、３３０…操作インターフェース、３４０…通信インターフェース、３５０…ペリフェラルデバイス、ＢＤ１〜ＢＤ４，ＢＵ１，ＢＵ２…バス、ＰＤ１〜ＰＤ４…端末装置、ＳＷ１〜ＳＷ４…バススイッチ回路
【図１】
2020052804.tif 000003
【図２】
2020052804.tif 000004
【図３】
2020052804.tif 000005
【図４】
2020052804.tif 000006
【図５】
2020052804.tif 000007
【図６】
2020052804.tif 000008
【図７】
2020052804.tif 000009
【図８】
2020052804.tif 000010
【図９】
2020052804.tif 000011
【図１０】
2020052804.tif 000012
【図１１】
2020052804.tif 000013
【図１２】
2020052804.tif 000014
【図１３】
2020052804.tif 000015
【図１４】
2020052804.tif 000016
【図１５】
2020052804.tif 000017
【図１６】
2020052804.tif 000018