(57)【特許請求の範囲】
【請求項１】
少なくとも一つのスレーブ装置にバスを介して、データおよび前記スレーブ装置に対する要求を含む情報を送信するマスタ送信部と、
前記スレーブ装置の各々に対応して設けられており、前記バスを分離する少なくとも一つの分離機構と、
前記スレーブ装置の各々に対応して前記スレーブ装置と前記分離機構との間の前記バスに接続されており、対応する前記スレーブ装置から送信される、前記マスタ送信部からの要求に対する応答を含む情報を受信する少なくとも一つのマスタ受信部とを備え、
前記バスは、データ線とクロック線とを含み、
前記分離機構は、前記クロック線に設けられる第１のスイッチと、前記データ線に設けられる第２のスイッチとを有する、通信システム。
【請求項２】
前記第１のスイッチの各々に対応して設けられ、当該第１のスイッチに対応する前記スレーブ装置にクロックストレッチが発生している場合に、当該第１のスイッチを開放する第１のスイッチ制御部を備える、請求項１に記載の通信システム。
【請求項３】
前記第１のスイッチ制御部は、
対応する前記クロック線が予め定められた期間を超えて所定の低電位状態である場合に前記第１のスイッチを開放し、
前記第１のスイッチが開放された後に、前記第１のスイッチに対する前記マスタ送信部側にある前記クロック線が高電位状態で、前記第１のスイッチに対する前記スレーブ装置側にある前記クロック線が高電位状態の場合に、前記第１のスイッチを閉じ、
前記第１のスイッチが開放された後に、前記第１のスイッチに対する前記マスタ送信部側にある前記クロック線が高電位状態で、前記第１のスイッチに対する前記スレーブ装置側にある前記クロック線が低電位状態の場合に、前記第１のスイッチを開放した状態を維持する、請求項２に記載の通信システム。
【請求項４】
前記第２のスイッチに対応して設けられ、前記第２のスイッチに対応する前記スレーブ装置からの応答の送信開始に応じて、前記第２のスイッチを開放するように制御する少なくとも一つの第２のスイッチ制御部を備える、請求項１から３のいずれか一項に記載の通信システム。
【請求項５】
前記マスタ受信部は、対応する前記スレーブ装置からの前記マスタ送信部に対する応答が所定の条件を満たすか否かを判定するテスト回路である、請求項１から４のいずれか一項に記載の通信システム。
【請求項６】
前記テスト回路は、対応する前記スレーブ装置からの前記応答と所定の基準信号との比較結果に基づいて、前記応答が所定の条件を満たすか否かを判定する、
請求項５に記載の通信システム。
【請求項７】
前記テスト回路は、対応する前記スレーブ装置からの前記応答が所定の値を含むか否かの判定結果に基づいて、前記応答が所定の条件を満たすか否かを判定する、請求項５に記載の通信システム。
【請求項８】
前記分離機構は、前記バスに設けられるスイッチである、請求項１から７のいずれか一項に記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム及び通信方法に関する。
【背景技術】
【０００２】
データセンター等でのサーバの運用に際して、各々のサーバの消費電力を取得し、サーバの運用を最適化する技術が検討されている。この用途においては、消費電力に関する情報は、サーバの電源に備えられた検出回路にて検出されて他の装置へ伝達される。情報の伝達には、例えばＩ２Ｃ（Ｉｎｔｅｒ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等のシリアルバスが用いられる。
【０００３】
また、Ｉ２Ｃ等のシリアルバスは、上述した用途に限られず、組み込みシステムや携帯機器等において広く用いられている。ＰＭＢｕｓ（Ｐｏｗｅｒ  Ｍａｎａｇｅｍｅｎｔ  Ｂｕｓ）や、ＳＭＢｕｓ（Ｓｙｓｔｅｍ  Ｍａｎａｇｅｍｅｎｔ  Ｂｕｓ）と呼ばれる通信プロトコルでは、物理層としてＩ２Ｃが用いられている。
【０００４】
特許文献１には、シリアルバスに関する技術の一例として、少ない配線数で信頼性の高い通信を行うことが可能な電源装置等に関する技術が記載されている。特許文献１に記載の技術では、ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ  Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｒｅｃｅｉｖｅｒ  Ｔｒａｎｓｍｉｔｔｅｒ）モジュールを使用し、２つの配線を用いて信頼性の高い通信が行われる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−２７０８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
Ｉ２Ｃ等のシリアルバスでは、通信は基本的に逐次的に行われる。したがって、マスタとスレーブの間の通信がシリアルバスを介して行われる場合において、スレーブの数が増えると、各スレーブが送受信することができるデータの量は減少する。しかしながら、特許文献１に記載の技術では、この場合に対する考慮が十分になされていない。すなわち、特許文献１に記載の技術では、複数の装置に対する効率的な通信が困難であった。
【０００７】
本発明は、上記課題を解決するためになされたものであって、複数の装置に対する効率的な通信を可能にする通信システムを提供することを主たる目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様における通信システムは、少なくとも一つのスレーブ装置にバスを介して情報を送信する送信部と、スレーブ装置の各々に対応して設けられており、バスを分離する少なくとも一つの分離機構と、スレーブ装置の各々に対応してスレーブ装置と分離機構との間のバスに接続されており、対応するスレーブ装置から送信される情報を受信する少なくとも一つのマスタ受信部とを備える。
【発明の効果】
【０００９】
本発明によると、複数の装置に対する効率的な通信を可能にする通信システムを提供することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１の実施形態における通信システムの構成を示す図である。
【図２】本発明の第２の実施形態における通信システムの構成を示す図である。
【図３】本発明の第２の実施形態における通信システムの構成を示す図である。
【図４】本発明の第３の実施形態における通信システムの動作シーケンスを示す図である。
【図５】本発明の第３の実施形態における通信システムのクロックストレッチ動作に関する動作シーケンスを示す図である。
【図６】本発明の第４の実施形態における通信システムの構成を示す図である。
【図７】本発明の第５の実施形態における通信システムの構成を示す図である。
【図８】本発明の第６の実施形態における通信システムの構成を示す図である。
【図９】本発明の第６の実施形態における通信システムの構成を示す図である。
【図１０】本発明の第６の実施形態における通信システムのクロックストレッチ動作に関する動作シーケンスを示す図である。
【発明を実施するための形態】
【００１１】
本発明の各実施形態について、添付の図面を参照して説明する。本発明の各実施形態に示す通信システムは、マスタスレーブ方式の通信が行われることを想定する。そして、本発明の各実施形態に示す通信システムでは、一つのマスタが、一つ以上の任意の数のスレーブと通信する例を想定する。一例として、サーバの電源ユニットや配電ボード等の生産における試験工程で本発明の各実施形態に示す通信システムが用いられる場合には、スレーブは、生産中の電源ユニット等であり、マスタは、電源ユニット等をテストするテスト装置である。
【００１２】
なお、本発明の各実施形態において、マスタとスレーブとを接続するバスは、Ｉ２Ｃ方式のバスであることを想定する。ただし、本発明の各実施形態に示す通信システムにおいては、その構成が適用可能であれば、マスタとスレーブとを接続するバスとしてＩ２Ｃ方式のバスとは異なる任意のシリアルバスが用いられてもよい。
【００１３】
（第１の実施形態）
まず、本発明の第１の実施形態について説明する。図１は、本発明の第１の実施形態における通信システムの構成を示す図である。
【００１４】
図１に示すとおり、本発明の第１の実施形態における通信システム１００は、マスタ送信部１１０と、分離機構１２０−１から１２０−Ｎと、マスタ受信部１３０−１から１３０−Ｎとを備える。マスタ送信部１１０は、バス１４０を介してスレーブ装置１５０−１から１５０−Ｎの各々に情報を送信する。分離機構１２０−１から１２０−Ｎの各々は、スレーブ装置１５０−１から１５０−Ｎの各々に対応して設けられている。そして、分離機構１２０−１から１２０−Ｎの各々は、対応するスレーブ装置１５０−１から１５０−Ｎとマスタ送信部１１０とを接続するバス１４０を分離する。すなわち、分離機構１２０−１から１２０−Ｎの各々は、対応するスレーブ装置１５０−１から１５０−Ｎとマスタ送信部１１０との通信を遮断する。受信部１３０−１から１３０−Ｎの各々は、スレーブ装置１５０−１から１５０−Ｎにそれぞれ対応して、スレーブ装置１５０−１から１５０−Ｎの各々と分離機構１２０−１から１２０−Ｎの各々との間のバス１４０に接続される。そして、受信部１３０−１から１３０−Ｎの各々は、スレーブ装置１５０−１から１５０−Ｎのうち、対応するスレーブ装置から送信される情報を受信する。
【００１５】
なお、スレーブ装置１５０−１から１５０−Ｎの各々は、マスタ装置と接続される任意の装置である。スレーブ装置１５０−１から１５０−Ｎの各々は、例えば、Ｉ２Ｃ方式におけるスレーブ機能を備える任意のモジュールや回路等である。スレーブ装置１５０−１から１５０−Ｎの各々は、同一の装置であってもよいし、それぞれ異なる種類の装置であってもよい。
【００１６】
本実施形態を含む本発明の各実施形態においては、上述したＮは１以上の任意の整数である。すなわち、マスタ送信部１１０は、１台以上の任意の数のスレーブ装置１５０−１から１５０−Ｎに対して情報を送信する。また、スレーブ装置１５０−１から１５０−Ｎの各々に対応して、分離機構１２０−１から１２０−Ｎ及びマスタ受信部１３０−１から１３０−Ｎがそれぞれ設けられる。
【００１７】
なお、以降の説明において、数がＮ個である構成要素について、Ｎ個の各々に対する区別が必ずしも必要ない場合には、添字は適宜省略される。例えば、マスタ受信部１３０−１から１３０−Ｎの各々に共通する構成や動作等を説明する場合には、単にマスタ受信部１３０と称する場合がある。
【００１８】
すなわち、本実施形態における通信システム１００は、マスタスレーブ方式の通信におけるマスタ装置の送信部と受信部が分離して設けられる。そして、マスタ装置の送信部と受信部との間の通信経路に、当該経路を分離する分離機構が配置される。このような構成とすることで、マスタ装置は、スレーブ装置１５０−１から１５０−Ｎの各々からの応答を個々に受信することが可能となる。
【００１９】
続いて、本実施形態における通信システム１００の各構成要素について説明する。
【００２０】
マスタ送信部１１０は、マスタ装置の送信機能を備え、各種のデータやスレーブ装置の制御信号等を含む情報を送信する。例えば、マスタ送信部１１０は、Ｉ２Ｃ方式のマスタ装置としての機能を備え、バス１４０を介してクロック信号やデータ等を含む情報の送出を行う。
【００２１】
本実施形態では、マスタ送信部１１０は、スレーブ装置１５０−１から１５０−Ｎのうち、複数のスレーブ装置に対して一斉に同一のデータを送信することを想定する。例えば、マスタ送信部１１０は、スレーブ装置１５０−１から１５０−Ｎのうち、同一のアドレスが定められた複数のスレーブ装置に対して情報を送信する。又は、マスタ送信部１１０は、アドレス指定が含まれず、スレーブ装置１５０−１から１５０−Ｎの全てのスレーブ装置を対象とする命令やデータ等の情報を送信してもよい。
【００２２】
分離機構１２０−１から１２０−Ｎの各々は、対応するスレーブ装置１５０−１から１５０−Ｎとマスタ送信部１１０とを接続するバス１４０を分離する。分離機構１２０−１から１２０−Ｎの各々は、それぞれ、スレーブ装置１５０−１から１５０−Ｎのいずれかと対応付けられる。そして、分離機構１２０−１から１２０−Ｎの各々は、図１に示すように、バス１４０におけるスレーブ装置１５０−１から１５０−Ｎの各々に対する分岐点よりスレーブ装置１５０−１から１５０−Ｎに近い位置に設けられる。すなわち、分離機構１２０−１から１２０−Ｎの各々は、スレーブ装置１５０−１から１５０−Ｎのうち、対応するスレーブ装置とマスタ送信部１１０との通信を個々に遮断する。なお、分離機構１２０−１から１２０−Ｎの各々は、スレーブ装置１５０−１から１５０−Ｎの各々とマスタ送信部１１０との間の通信が行われる場合には、接続するバス１４０を接続する。
【００２３】
分離機構１２０は、対応するスレーブ装置１５０から何らかの信号を対応するマスタ受信部１３０に送信する場合に、バス１４０を分離する。すなわち、この場合には、分離機構１２０は、バス１４０を介した通信を遮断して、スレーブ装置１５０からの信号のマスタ送信部１１０への伝搬を抑止する。例えば、スレーブ装置１５０が、ＡＣＫ（Ａｃｋｎｏｗｌｅｄｇｅ）、ＮＡＣＫ（Ｎｅｇａｔｉｖｅ  Ａｃｋｎｏｗｌｅｄｇｅ）信号、データ応答等の応答信号を送信する場合に、分離機構１２０は、バス１４０を分離して通信を遮断する。
【００２４】
なお、分離機構１２０は、スレーブ装置１５０が情報の送信を行う場合に限ってバス１４０を分離してもよい。すなわち、分離機構１２０は、マスタ送信部１１０からの情報の送信は常に遮断せず、スレーブ装置１５０からの情報の送信のみを遮断する構成であってもよい。
【００２５】
マスタ受信部１３０−１から１３０−Ｎの各々は、対応するスレーブ装置１５０−１から１５０−Ｎからの応答等の情報を受信する。マスタ受信部１３０−１から１３０−Ｎの各々は、それぞれ、スレーブ装置１５０−１から１５０−Ｎのいずれか及び分離機構１２０−１から１２０−Ｎのいずれかと対応付けられている。すなわち、マスタ受信部１３０−１から１３０−Ｎの各々は、スレーブ装置１５０−１から１５０−Ｎのうち、対応するスレーブ装置からの応答等の情報を受信する。マスタ送信部１３０は、対応するスレーブ装置１５０から情報を受信した場合には、例えば、マスタ送信部１１０からのクロック信号に従い、スレーブ装置から受信した情報に応じてＡＣＫ又はＮＡＣＫ信号を送出する。
【００２６】
本実施形態においては、スレーブ装置１５０−１から１５０−Ｎの各々は、対応付けられた分離機構がバス１４０を分離し、通信を遮断している際に情報を送信する。マスタ受信部１３０−１から１３０−Ｎの各々は、対応付けられたスレーブ装置から送信された情報を受信する。対応する分離機構にて通信が遮断されていることから、スレーブ装置１５０−１から１５０−Ｎの各々は、互いに他のスレーブ装置から影響を受けることなく、対応するマスタ受信部に対して情報を送信することが可能である。すなわち、スレーブ装置１５０−１から１５０−Ｎの各々は、並行してマスタ送信部１１０からの通信に対する応答等を含む情報の送信を行うことが可能である。したがって、マスタから複数のスレーブに対して通信を行う場合に、高速な通信が可能となる。
【００２７】
以上のとおり、本発明の第１の実施形態における通信システム１００は、マスタスレーブ方式の通信におけるマスタ装置の送信部と受信部が分離して設けられる。すなわち、スレーブ装置１５０−１から１５０−Ｎの各々に対して、マスタ受信部１３０−１から１３０−Ｎの各々が対応して設けられる。そして、マスタ装置の送信部であるマスタ送信部１１０とマスタ装置の受信部であるマスタ受信部１３０との間には、分離機構１２０が設けられる。このような構成を備えることから、本実施形態における通信システム１００では、同じ時点において複数のスレーブ装置からの応答を得ることが可能となる。したがって、本実施形態における通信システム１００は、複数の装置に対する効率的な通信を可能にする。
【００２８】
そして、上述した特徴から、本実施形態における通信システム１００を用いてスレーブ機能を備えるモジュールの試験を行う場合には、試験の対象とするモジュールの数を容易に増やすことが可能となる。更に、マスタとモジュールとの通信が効率よく行われることから、効率の良い試験が可能となる。
【００２９】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。図２は、本発明の第２の実施形態における通信システムの構成を示す図である。
【００３０】
上述のように、本実施形態においては、マスタとスレーブとを接続するバスは、Ｉ２Ｃ方式のバスであることを想定する。Ｉ２Ｃ方式のバスには、データ線とクロック線とが含まれる。
【００３１】
図２に示すように、本発明の第２の実施形態における通信システム２００は、マスタ送信部１１０と、ダイオード２２１−１から２２１−Ｎと、マスタ受信部１３０−１から１３０−Ｎとを備える。マスタ送信部１１０及びマスタ受信部１３０−１から１３０−Ｎは、第１の実施形態における通信システム１００が備える同じ構成要素と同一である。ダイオード２２１−１から２２１−Ｎの各々は、第１の実施形態における分離機構１２０−１から１２０−Ｎの各々に関連する要素であり、スレーブ装置１５０−１から１５０−Ｎの各々に対応して設けられる。各々の装置は、上述のようにＩ２Ｃバス１４１にて接続される。Ｉ２Ｃバス１４１は、クロック線１４２とデータ線１４３とを含む。クロック線１４２とデータ線１４３では、それぞれ、Ｈｉｇｈ又はＬｏｗの２つの値の信号が伝搬する。この場合に、“Ｈｉｇｈ”の値の信号は、例えば高電位（高電圧）の信号であり、“Ｌｏｗ”の値の信号は、例えば低電位（低電圧）の信号である。
【００３２】
本実施形態においては、ダイオード２２１−１から２２１−Ｎの各々は、マスタ送信部１１０と、スレーブ装置１５０−１から１５０−Ｎの各々とを接続するＩ２Ｃバス１４１のデータ線１４３に接続される。ダイオード２２１−１から２２１−Ｎの各々は、図２に示すように、Ｉ２Ｃバス１４１におけるスレーブ装置１５０−１から１５０−Ｎの各々に対する分岐点よりスレーブ装置１５０−１から１５０−Ｎに近い位置に設けられる。
【００３３】
具体的には、ダイオード２２１−１から２２１−Ｎの各々は、マスタ送信部１１０からスレーブ装置１５０−１から１５０−Ｎへの電流のみを通過させるようにデータ線１４３に接続される。つまり、ダイオード２２１−１から２２１−Ｎの各々は、アノードがデータ線１４３のマスタ送信部の側に接続され、カソードがデータ線１４３の対応するスレーブ装置１５０の側に接続される。なお、マスタ受信部１３０は、対応するダイオード２２１のカソードの側に接続される。このような接続態様により、マスタ送信部１１０からスレーブ装置１５０−１から１５０−Ｎの各々に向かう情報のみが、ダイオード２２１−１から２２１−Ｎの各々を通過する。
【００３４】
上述の構成から、マスタ送信部１１０からデータ線１４３を介して送信される情報は、スレーブ装置１５０−１から１５０−Ｎの各々に対してダイオード２２１−１から２２１−Ｎの各々の影響を受けずに送信される。一方、スレーブ装置１５０−１から１５０−Ｎの各々からデータ線１４３を介して送信される情報は、ダイオード２２１−１から２２１−Ｎの各々にて遮断される。ただし、マスタ受信部１３０−１から１３０−Ｎの各々は、スレーブ装置１５０−１から１５０−Ｎの各々から送信される情報を受信することが可能である。そのため、一定の正常な通信が行われている場合には、マスタ送信部１１０からの一回の情報の送信によって、マスタ送信部１１０は、スレーブ装置１５０−１から１５０−Ｎの全てに対して情報を送信することが可能である。そして、スレーブ装置１５０−１から１５０−Ｎの全てが、マスタ送信部１１０からの情報の送信に対して応答することが可能である。
【００３５】
なお、本実施形態においては、ダイオード２２１の電圧降下を考慮して、データ線１４３のプルアップ電圧や、スレーブ装置１５０のプルダウン抵抗等の選択が必要となる場合がある。そこで、ダイオード２２１に代えて、リレーやＭＯＳＦＥＴ（ｍｅｔａｌ−ｏｘｉｄｅ−ｓｅｍｉｃｏｎｄｕｃｔｏｒ  ｆｉｅｌｄ−ｅｆｆｅｃｔ  ｔｒａｎｓｉｓｔｏｒ）等のスイッチ機構が用いられてもよい。
【００３６】
以上のとおり、本発明の第２の実施形態における通信システム２００は、分離機構１２０として、ダイオード２２１を備える。したがって、本実施形態における通信システム２００は、本発明の第１の実施形態における通信システム１００と同様の効果を奏する。また、本実施形態における通信システム２００は、各々のスレーブ装置に対してダイオードのみを用いて実現される。本実施形態における通信システム２００は、簡易に実現することが可能である。
【００３７】
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。図３は、本発明の第３の実施形態における通信システムの構成を示す図である。図４は、本発明の第３の実施形態における通信システムの動作シーケンスを示す図である。図５は、本発明の第３の実施形態における通信システムのクロックストレッチ動作に関する動作シーケンスを示す図である。
【００３８】
図３に示すように、本発明の第３の実施形態における通信システム３００は、マスタ送信部１１０と、第１のスイッチ３２２−１から３２２−Ｎと、第２のスイッチ３２３−１から３２３−Ｎと、第１のスイッチ制御部３２４−１から３２４−Ｎと、第２のスイッチ制御部３２５と、マスタ受信部１３０−１から１３０−Ｎとを備える。マスタ送信部１１０及びマスタ受信部１３０−１から１３０−Ｎは、第１の実施形態における通信システム１００が備える同じ構成要素と同一である。第１のスイッチ３２２−１から３２２−Ｎの各々及び第１のスイッチ制御部３２４−１から３２４−Ｎの各々は、第１の実施形態における分離機構１２０−１から１２０−Ｎの各々に関連する要素である。同様に、第２のスイッチ３２３−１から３２３−Ｎの各々及び第２のスイッチ制御部３２５は、第１の実施形態における分離機構１２０−１から１２０−Ｎの各々に関連する要素である。これらの要素は、スレーブ装置１５０−１から１５０−Ｎの各々に対応して設けられる。各々の装置は、上述のようにクロック線１４２とデータ線１４３とを含むＩ２Ｃバス１４１にて接続される。
【００３９】
なお、図３及び以降の図においては、図中の矢印は、制御の対象を示す。制御に際して、信号の流れは矢印の方向に限られない。
【００４０】
本実施形態においては、第１のスイッチ３２２−１から３２２−Ｎの各々は、マスタ送信部１１０と、スレーブ装置１５０−１から１５０−Ｎの各々とを接続するＩ２Ｃバス１４１のクロック線１４２に接続される。第１のスイッチ制御部３２４−１から３２４−Ｎの各々は、第１のスイッチ３２２−１から３２２−Ｎの各々に対応付けられる。第２のスイッチ３２３−１から３２３−Ｎの各々は、マスタ送信部１１０と、スレーブ装置１５０−１から１５０−Ｎの各々とを接続するＩ２Ｃバス１４１のデータ線１４３に接続される。なお、第１のスイッチ３２２−１から３２２−Ｎとして、リレーやＭＯＳＦＥＴ等が用いられる。
【００４１】
なお、図３に示すように、第１のスイッチ３２２−１から３２２−Ｎの各々は、Ｉ２Ｃバス１４１におけるスレーブ装置１５０−１から１５０−Ｎの各々に対する分岐点よりスレーブ装置１５０−１から１５０−Ｎに近い位置に設けられる。同様に、第２のスイッチ３２３−１から３２３−Ｎの各々は、の各々は、Ｉ２Ｃバス１４１におけるスレーブ装置１５０−１から１５０−Ｎの各々に対する分岐点よりスレーブ装置１５０−１から１５０−Ｎに近い位置に設けられる。
【００４２】
Ｉ２Ｃ方式の通信では、クロックストレッチと呼ばれる動作が存在する。クロックストレッチの発生時には、スレーブが強制的にクロック線の値をＬｏｗに設定してマスタからの情報の受信を保留する。第２の実施形態における通信システム２００では、スレーブ装置１５０−１から１５０−Ｎの一つにおいてクロックストレッチが生じた場合に、スレーブ装置１５０−１から１５０−Ｎの全てに関するクロック線１４３の値がＬｏｗに設定される場合がある。また、分離機構としてダイオード２２１を用いる場合には、当該ダイオードの順方向電圧降下を考慮して、データ線１４３のプルアップ電圧を設定する必要が生じる可能性がある。
【００４３】
続いて、本実施形態における通信システム３００の各構成要素について説明する。
【００４４】
第１のスイッチ３２２−１から３２２−Ｎの各々は、一動作例として、スレーブ装置１５０−１から１５０−Ｎの各々に起因するクロックストレッチに応じて、個別にスイッチの開閉が制御される。すなわち、第１のスイッチ３２２−１から３２２−Ｎの各々は、通常は短絡されており、対応するスレーブ装置１５０−１から１５０−Ｎにおいてクロックストレッチが生じた際に開放される。そのため、スレーブ装置１５０−１から１５０−Ｎの各々は、個々にスイッチの開閉が制御可能となるよう、スレーブ装置１５０−１から１５０−Ｎの各々に対応して第１のスイッチ制御部３２４−１から３２４−Ｎが設けられる。
【００４５】
第１のスイッチ制御部３２４−１から３２４−Ｎの各々は、例えば、対応するスレーブ装置１５０−１から１５０−Ｎにクロックストレッチが生じた際に、第１のスイッチ３２２−１から３２２−Ｎのうち制御対象とするスイッチを開放する。クロックストレッチの検出を行うため、第１のスイッチ制御部３２４−１から３２４−Ｎの各々は、例えば、対応する第１のスイッチ３２２−１から３２２−Ｎを挟んだ２つの側のクロック線１４２の電圧を個々に監視する。
【００４６】
第２のスイッチ３２２−１から３２２−Ｎの各々は、マスタ送信部１１０からの情報の送信と、その送信に対するスレーブ装置１５０−１から１５０−Ｎの応答に応じてスイッチの開閉が制御される。したがって、第２のスイッチ３２２−１から３２２−Ｎの各々は、単一の第２のスイッチ制御部３２５によって制御される。
【００４７】
なお、本実施形態においては、マスタ送信部１１０及びスレーブ装置１５０−１から１５０−Ｎの各々が、Ｉ２Ｃバス１４１の電圧が同じ電圧となるようにプルアップ電圧を設定する。
【００４８】
第２のスイッチ制御部３２５は、マスタ送信部１１０の情報の送信動作に応じて、第２のスイッチ３２２−１から３２２−Ｎの各々の開閉を制御する。第２のスイッチ制御部３２５と第２のスイッチ３２２−１から３２２−Ｎとの各々とは、例えば制御信号線を介して制御が行われる。例えば、第２のスイッチ制御部３２５は、制御信号線がＨｉｇｈとすることで、第２のスイッチ３２２−１から３２２−Ｎの各々を開放するように制御する。
【００４９】
更に、図４及び図５に示す動作シーケンスを用いて、本実施形態における通信システム３００の動作を説明する。図５において、“クロック線”及び“データ線”は、スレーブ装置１５０−１から１５０−Ｎの一つに着目した場合において、当該スレーブ装置に接続されたクロック線１４２及びデータ線１４３の動作シーケンスを表す。ＳＷ１及びＳＷ２は、それぞれ第１のスイッチ３２３及び第２のスイッチ３２４の動作シーケンスを示す。各々の動作シーケンスにおいて、“ＯＰＥＮ”はスイッチが開放された状態を示し、“ＳＨＯＲＴ”はスイッチが短絡した状態を示す。すなわち、第１のスイッチ３２３又は第２のスイッチ３２４の状態が“ＳＨＯＲＴ”である場合には、各々のスイッチを介した信号の伝搬が可能である。また、第１のスイッチ３２３又は第２のスイッチ３２４の状態が“ＯＰＥＮ”である場合には、各々のスイッチを介した信号の伝搬が遮断される。“Ｍａｓｔｅｒ  Ｗｒｉｔｅ  Ａｄｄｒｅｓｓ”及び“Ｍａｓｔｅｒ  Ｗｒｉｔｅ  Ｄａｔａ”は、マスタからの書込み要求であり、それぞれ書込み対象となるスレーブのアドレス及び書き込みデータが送信されることを示す。同様に、“Ｍａｓｔｅｒ  Ｒｅａｄ  Ａｄｄｒｅｓｓ”及び“Ｍａｓｔｅｒ  Ｒｅａｄ  Ｄａｔａ”は、マスタからの読出し要求であり、それぞれ読出し対象となるスレーブのアドレス及び読出しデータが送信されることを示す。“マスタＡＣＫ”又は“スレーブＡＣＫ”のそれぞれは、マスタ又はスレーブの他方からの情報の送信に対する応答を示す。
【００５０】
図４に示す例では、マスタ送信部１１０が通信を開始する際に、第２のスイッチ制御部３２５は、マスタ送信部１１０からの指示に基づいて、第２のスイッチ３２３−１から３２３−Ｎの各々を短絡する（閉じる）ように制御する。マスタ送信部１１０からアドレス又はデータが送信されている間は、第２のスイッチ３２３−１から３２３−Ｎの各々は短絡された状態となる。
【００５１】
マスタ送信部１１０からの情報の送信が完了すると、第２のスイッチ制御部３２５は、第２のスイッチ３２３−１から３２３−Ｎの各々を開放する（開く）ように制御する。スレーブ装置１５０は、図４において“スレーブＡＣＫ”として示されているように、第２のスイッチ３２３が解放されている場合に、ＡＣＫ又はＮＡＣＫの応答を行う。この場合には、マスタ受信部１３０−１から１３０−Ｎの各々は、対応するスレーブ装置１５０−１から１５０−Ｎの各々からの応答を個々に受信する。
【００５２】
また、スレーブ装置１５０−１から１５０−Ｎの各々が、マスタ送信部１１０からの要求に応答して情報を送信する場合には、第２のスイッチ制御部３２５は、第２のスイッチ３２３−１から３２３−Ｎの各々を開放するように制御する。スレーブ装置１５０−１から１５０−Ｎの各々からの応答の後、対応するマスタ受信部１３０−１から１３０−ＮがＡＣＫ又はＮＡＣＫの応答を行う場合も、第２のスイッチ３２３−１から３２３−Ｎの各々は開放した状態となるように制御される。この状態は、図４における“マスタＡＣＫ”の応答が行われている状態に相当する。
【００５３】
予め定められた通信が終了すると、マスタ送信部１１０は、通信を終了させる。この場合に、マスタ送信部１１０からの指示に基づいて、第２のスイッチ制御部３２５は、第２のスイッチ３２３−１から３２３−Ｎの各々を短絡するように制御する。そして、マスタ送信部１１０は、スレーブ装置１５０−１から１５０−Ｎの各々に対して、ＮＡＣＫ応答とストップビットを送信して通信を完了させる。通信の完了後には、第２のスイッチ制御部３２５は、第２のスイッチ３２３−１から３２３−Ｎの各々を開放するように制御する。
【００５４】
図４に示す例は、スレーブ装置１５０の各々が通常の動作を行う場合を示す。したがって、第１のスイッチ３２２は短絡した状態である。しかしながら、スレーブ装置１５０は、上述したクロックストレッチを生じさせる場合がある。図５に示す動作シーケンスは、クロックストレッチが生じた場合における通信システム３００の動作の一例を示す。
【００５５】
なお、図５に示す例において、“ＣＬＯＣＫ＿Ｖｍ”は、第１のスイッチ３２２を基準としてマスタ送信部１１０に近い側におけるクロック線１４２の電圧を示す。“データ線”は、データ線１４３の値を示す。また、“通常の動作”は、スレーブ装置１５０がクロックストレッチを生じさせずに通常の動作を行う場合における動作の例を示す。“クロックストレッチ発生”は、スレーブ装置１５０がクロックストレッチを生じさせた場合の例を示す。“ＳＷ１”は、スレーブ装置１５０に対応する第１のスイッチ３２２の状態を表す。ＣＬＯＣＬ＿Ｖｓは、第１のスイッチ３２２を基準としてスレーブ装置１５０に近い側におけるクロック線１４２の電圧を示す。
【００５６】
以下、図５を用いて、スレーブ装置１５０がクロックストレッチを生じさせた場合の動作の一例を説明する。
【００５７】
まず、第１のスイッチ制御部３２４−１から３２４−Ｎの各々は、継続してクロック線１４２の電圧を監視する。この場合に、クロック線１４２のうち、対応する第１のスイッチ３２２のマスタ送信部にある側の電圧と、スレーブ装置１５０にある側の電圧との双方を監視する。上述のように、本実施形態においては、前者の電圧はＣＬＯＣＫ＿Ｖｍにて、後者の電圧はＣＬＯＣＫ＿Ｖｓにて表される。なお、第１のスイッチ３２２−１から３２２−Ｎの各々は、当初は短絡するように制御されていることを想定する。また、マスタ送信部１１０及びスレーブ装置１５０−１から１５０−Ｎの各々は、クロック線１４２及びデータ線１４３のそれぞれに対してプルアップ電圧を印加することを想定する。
【００５８】
上述のように、クロックストレッチの発生の際には、スレーブ装置１５０は、クロック線１４２をＬｏｗに設定する。クロックストレッチの発生により、クロック線１４２では、ＣＬＯＣＫ＿Ｖｍ及び各々のＣＬＯＣＫ＿ＶｓがＬｏｗとなる。第１のスイッチ制御部３２４−１から３２４−Ｎの各々は、ＣＬＯＣＫ＿Ｖｍ及びＣＬＯＣＫ＿Ｖｓが予め定められた時間を超えてＬｏｗであることを検知すると、第１のスイッチ３２２−１から３２２−Ｎを開放するように制御する（図５の（１））。上述のように、スレーブ装置１５０はクロック線１４２に対してプルアップ電圧を印加する。したがって、第１のスイッチ３２２の解放に伴い、クロックストレッチが生じていないスレーブ装置１５０に関するＣＬＯＣＫ＿ＶｓはＨｉｇｈとなる。一方、クロックストレッチが生じたスレーブ装置１５０に関するＣＬＯＣＫ＿Ｖｓは、Ｌｏｗのままの状態が継続する。
【００５９】
そして、第１のスイッチ制御部３２４−１から３２４−Ｎの各々は、ＣＬＯＣＫ＿Ｖｍ及び対応するＣＬＯＣＫ＿Ｖｓ引き続き監視する。図５の“通常の動作”に示すように、クロックストレッチが生じていないスレーブ装置１５０に対応する第１のスイッチ制御部３２４は、対応する第１のスイッチ３２２を短絡するように制御する。すなわち、ＣＬＯＣＫ＿ＶｓがＨｉｇｈとなるスレーブ装置１５０に関しては、第１のスイッチ制御部３２４−１から３２４−Ｎの各々は、対応する第１のスイッチ３２２を再び短絡するように制御する（図５の（２））。
【００６０】
一方、図５の“クロックストレッチ発生”に示すように、クロックストレッチが生じたスレーブ装置１５０に対応する第１のスイッチ制御部３２４は、制御の対象となる第１のスイッチ３２２を開放した状態が継続するように制御する。すなわち、ＣＬＯＣＫ＿ＶｓがＬｏｗのままであるスレーブ装置１５０に関しては、対応する第１のスイッチ制御部３２４は、制御の対象となる第１のスイッチ３２２を開放した状態が継続するように制御する（図５の（３）等）。
【００６１】
以上のとおり、本発明の第３の実施形態における通信システム３００は、スレーブ装置の各々に対応して、バスのクロック線及びデータ線のそれぞれにスイッチが設けられる。スイッチの開閉は、マスタ又はスレーブの各々からの情報の送受信の状況に応じて制御される。したがって、本実施形態における通信システム３００は、本発明の第１の実施形態における通信システム１００及び第２の実施形態における通信システム２００と同様の効果を奏する。また、本実施形態における通信システム３００は、バスがＩ２Ｃバスである場合に、スレーブのクロックストレッチ動作に対応することが可能となる。
【００６２】
（第４の実施形態）
次に、本発明の第４の実施形態について説明する。図６は、本発明の第４の実施形態における通信システムの構成を示す図である。
【００６３】
図６に示すように、本発明の第４の実施形態における通信システム４００は、マスタ送信部１１０と、第１のスイッチ３２２−１から３２２−Ｎと、第２のスイッチ３２３−１から３２３−Ｎと、第１のスイッチ制御部３２４−１から３２４−Ｎと、第２のスイッチ制御部３２５と、テスト回路４３１−１から４３１−Ｎとを備える。マスタ送信部１１０及びマスタ受信部１３０−１から１３０−Ｎは、第１の実施形態における通信システム１００が備える同じ構成要素と同一である。第１のスイッチ３２２−１から３２２−Ｎ、第２のスイッチ３２３−１から３２３−Ｎ、第１のスイッチ制御部３２４−１から３２４−Ｎ及び第２のスイッチ制御部３２５は、第３の実施形態における通信システム３００が備える同じ構成要素と同一である。また、テスト回路４３１−１から４３１−Ｎの各々は、第１の実施形態における通信システム１００等のマスタ受信部１３０の一つの変形例である。本実施形態においては、テスト回路４３１−１から４３１−Ｎの各々は、一例として、第３のスイッチ４３２−１から４３２−Ｎと、第４のスイッチ４３３−１から４３３−Ｎと、フリップフロップ４３４−１から４３４−Ｎと、ＸＯＲ（Ｅｘｃｌｕｓｉｖｅ−ＯＲ：排他的論理和）ゲート４３５−１から４３５−Ｎと、ラッチ４３６−１から４３６−Ｎと、ＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）４３７−１から４３７−Ｎとを有する。
【００６４】
なお、図６に示すように、テスト回路４３１−１から４３１−Ｎの各々は、Ｉ２Ｃバス１４１におけるスレーブ装置１５０−１から１５０−Ｎの各々に対する分岐点よりスレーブ装置１５０−１から１５０−Ｎに近い位置に設けられる。
【００６５】
第１から第３の実施形態における通信システム１００等では、スレーブ装置１５０−１から１５０−Ｎの各々に対応してマスタ受信部１３０−１から１３０−Ｎが設けられた。これらの実施形態においては、マスタ受信部１３０−１から１３０−Ｎは、一例として必要に応じて通信ネットワークを介して接続され、各々が受信した情報が集約される。しかしながら、各々のスレーブ装置に対応してマスタ受信部を設けることや、マスタ受信部の各々を接続することは、配線を複雑にし、また、コストの増加の原因となる可能性がある。
【００６６】
一方で、通信システム１００等が電源ユニットや配電ボード等を含む種々の装置を生産する際の試験工程等にて用いられる場合には、スレーブからは当該試験に必要となる情報が取得可能であればよい可能性がある。
【００６７】
そこで、本実施形態における通信システム４００は、マスタ受信部１３０−１から１３０−Ｎとして、テスト回路４３１−１から４３１−Ｎの各々を備える。テスト回路４３１−１から４３１−Ｎは、対応するスレーブ装置１５０−１から１５０−Ｎの動作の妥当性に関する判定を行う。テスト回路４３１−１から４３１−Ｎの構成は、抽出すべきＩ２Ｃバス１４１の通信内容等に応じて適宜定められる。
【００６８】
本実施形態においては、テスト回路４３１は、スレーブ装置１５０−１から１５０−Ｎの各々から期待通りの応答がなされるか否かを検出するように構成される。すなわち、テスト回路４３１は、期待通りの応答を行わないスレーブ装置１５０が存在することを通知する。そして、テスト回路４３１は、一例として、スレーブ装置１５０−１から１５０−Ｎからの応答を比較するように構成される。この場合に、テスト回路４３１は、他と異なる応答を行うスレーブ装置１５０を検出する。
【００６９】
なお、本実施形態においては、マスタはスレーブからの応答を受信しない。したがって、本実施形態においては、マスタ送信部１１０は、マスタからの応答として常にＡｃｋを応答することを想定する。
【００７０】
続いて、本実施形態における通信システム４００のテスト回路４３１の構成要素及び動作を説明する。
【００７１】
第３のスイッチ４３２−１から４３２−Ｎ及び第４のスイッチ４３３−１から４３３−Ｎは、それぞれ、一端がクロック線１４２及びデータ線１４３に接続され、他端がフリップフロップ４３４−１から４３４−Ｎに接続される。すなわち、第３のスイッチ４３２−１から４３２−Ｎ及び第４のスイッチ４３３−１から４３３−Ｎの各々は、テスト回路４３１への入力を制御する。
【００７２】
これらのスイッチは、第２のスイッチ制御部３２５の制御に応じてスイッチの開閉が制御される。第２のスイッチ制御部３２５は、第２のスイッチ３２３が解放される場合に、第３のスイッチ４３２及び第４のスイッチ４３３を短絡するように制御する。このような制御により、テスト回路４３１は、第２のスイッチ３２３が解放され、スレーブ装置１５０が応答する場合における応答信号の参照が可能となる。
【００７３】
なお、第３のスイッチ４３２−１から４３２−Ｎの各々及び第４のスイッチ４３３−１から４３３−Ｎの各々として、リレーやＭＯＳＦＥＴ等が用いられる。
【００７４】
フリップフロップ４３４−１から４３４−Ｎの各々は、本実施形態ではＤフリップフロップである。第３のスイッチ４３２を介してフリップフロップ４３４のクロック端子とクロック線１４２とが接続され、第４のスイッチ４３４を介してＤ端子とデータ線１４３が接続される。第３のスイッチ４３２及び第４のスイッチ４３３の開閉が上述のように制御されることから、スレーブ装置１５０からの応答がＤ端子へ入力される。フリップフロップ４３４は、データ線１４３の値を保持し、Ｑ端子から出力する。
【００７５】
ＸＯＲゲート４３５−１から４３５−Ｎは、対応するフリップフロップ４３４−１から４３４−ＮのＱ端子から出力された値と、基準信号とを入力として受付ける。ＸＯＲゲート４３５は、２つの入力の値が一致する場合にＬｏｗを出力し、２つの入力の値が異なる場合にＨｉｇｈを出力する。
【００７６】
つまり、ＸＯＲゲート４３５−１から４３５−Ｎは、データ線１４３の値と基準信号との比較を行う。第３のスイッチ４３２及び第４のスイッチ４３３の開閉が上述のように制御されることから、ＸＯＲゲート４３５−１から４３５−Ｎは、結果として、スレーブ装置１５０からの応答と基準信号との比較を行う。そして、ＸＯＲゲート４３５−１から４３５−Ｎは、スレーブ装置１５０からの応答と基準信号の値とが一致する場合にはＬｏｗを出力し、スレーブ装置１５０からの応答と基準信号の値とが異なる場合にはＨｉｇｈを出力する。
【００７７】
すなわち、ＸＯＲゲート４３５の出力がＨｉｇｈである場合には、スレーブ装置１５０からの応答と基準信号の値とが異なっている。言い換えると、ＸＯＲ４３５は、対応するスレーブ装置１５０からの応答が基準信号の値と同じか否かを判定する判定手段として機能する。したがって、基準信号にスレーブ装置１５０からの応答に応じた値が適切に定められている場合には、ＸＯＲゲート４３５の出力を参照することで、スレーブ装置１５０からの応答が期待通りであるかを判定することが可能となる。
【００７８】
基準信号は、スレーブ装置１５０からの応答の妥当性を判定する際の基準となる信号である。基準信号の値は、例えば、スレーブ装置１５０が出力すべき正しい信号の値であってもよいし、他のスレーブ装置１５０に関するフリップフロップ４３４のＱ端子の値であってもよい。
【００７９】
ラッチ４３６−１から４３６−Ｎは、ＸＯＲゲート４３５の出力を入力として受付ける。そして、ラッチ４３６−１から４３６−Ｎは、受付けた値を保持する。ラッチ４３６−１から４３６−Ｎの出力は、それぞれＬＥＤ４３７−１から４３７−Ｎに接続される。
【００８０】
ＬＥＤ４３７は、ラッチ４３６−１から４３６−Ｎからの出力に応じて点灯する。すなわち、ＬＥＤ４３７は、対応するスレーブ装置１５０からの応答が期待通りでなく、何らかの異常が生じている可能性がある場合に点灯することが可能である。ＬＥＤ４３７が点灯することで、通信システム４００の利用者は、点灯したＬＥＤ４３７に対応するスレーブ装置１５０に異常が生じている（期待通りの動作を行っていない）可能性があることを把握することが可能となる。
【００８１】
なお、ＸＯＲゲート４３５の出力は、ラッチ４３６又はＬＥＤ４３７とは異なる装置等に接続されてもよい。すなわち、本実施形態における通信システム４００は、スレーブ装置１５０に異常が生じていることをＬＥＤ４３７の点灯とは異なる任意の手段で通知してもよい。又は通信システム４００は、スレーブ装置１５０に異常が生じている可能性がある場合に、通常とは異なる任意の動作を行ってもよい。
【００８２】
例えば、スレーブ装置１５０に異常が生じている可能性がある場合には、図示しないディスプレイやスピーカ等のＬＥＤ４３７とは異なる任意の出力手段へ通知されてもよい。また、通信システム４００は、この場合には、異常が生じている可能性があるスレーブ装置１５０に対してその旨を通知してもよい。異常が生じている可能性があるスレーブ装置１５０をＩ２Ｃバス１４１から分離するよう、その旨が対応する第１のスイッチ制御部３２４又は第２のスイッチ制御部３２５へ通知されてもよい。更に、通信システム４００の動作が停止するよう、マスタ送信部１１０に対してスレーブ装置１５０のいずれかに異常が生じている可能性がある旨が通知されてもよい。上述した例においては、ＸＯＲゲート４３５の出力は、スレーブ装置１５０に異常が生じている可能性がある場合に行われる動作に応じて、当該動作に関連する装置等に適宜接続される。
【００８３】
また、本実施形態におけるテスト回路４３１の構成は一例に過ぎない。テスト回路４３１は、上述した機能を実行する任意の他の構成であってもよい。
【００８４】
以上のとおり、本発明の第４の実施形態における通信システム４００は、第１から第３の実施形態における通信システムのマスタ受信部１３０の変形例として、テスト回路４３１を備える。本実施形態においては、テスト回路４３１は、スレーブ装置の試験などに際して、当該試験に必要となる情報を抽出する。そのため、テスト回路は、第１の実施形態における通信システム１００等が備えるマスタ送信部１３０と比較して簡易な構成にて実現される。また、図６に示す例のように、各々のテスト回路４３１において結果が出力されることから、テスト回路４３１は、複雑な配線を用いずに実現可能である。すなわち、テスト回路４３１は、低いコストで配置される。したがって、本実施形態における通信システム４００は、低いコストでのバスに接続されるスレーブ装置の数の増加を可能とする。そして、本実施形態における通信システム４００は、１台のマスタを用いた多数のスレーブに対する通信試験の実行を可能にする。
【００８５】
（第５の実施形態）
次に、本発明の第５の実施形態について説明する。図７は、本発明の第５の実施形態における通信システムの構成を示す図である。
【００８６】
図７に示すように、本発明の第５の実施形態における通信システム５００は、マスタ送信部１１０と、第１のスイッチ３２２−１から３２２−Ｎと、第２のスイッチ３２３−１から３２３−Ｎと、第１のスイッチ制御部３２４−１から３２４−Ｎと、第２のスイッチ制御部３２５と、テスト回路５３１−１から５３１−Ｎとを備える。マスタ送信部１１０及びマスタ受信部１３０−１から１３０−Ｎは、第１の実施形態における通信システム１００が備える同じ構成要素と同一である。第１のスイッチ３２２−１から３２２−Ｎ、第２のスイッチ３２３−１から３２３−Ｎ、第１のスイッチ制御部３２４−１から３２４−Ｎ及び第２のスイッチ制御部３２５は、第３の実施形態における通信システム３００が備える同じ構成要素と同一である。また、テスト回路５３１−１から５３１−Ｎの各々は、第１の実施形態における通信システム１００等のマスタ受信部１３０の別の変形例である。
【００８７】
本実施形態においては、テスト回路５３１−１から５３１−Ｎの各々は、一例として、ラッチ５３６−１から５３６−Ｎと、ＬＥＤ５３７−１から５３７−Ｎと、ＡＮＤ（論理積）ゲート５３８−１から５３８−Ｎとを有する。なお、ラッチ５３６−１から５３６−Ｎ及びＬＥＤ５３７−１から５３７−Ｎは、第４の実施形態におけるラッチ４３６−１から４３６−Ｎ及びＬＥＤ４３７−１から４３７−Ｎとそれぞれ同様の動作を行う。
【００８８】
本実施形態においては、第４の実施形態における通信システム４００のテスト回路４３１と同様に、テスト回路５３１は、対応するスレーブ装置１５０から期待通りの応答がなされるか否かを検出するように構成される。そして、本実施形態におけるテスト回路５３１は、対応するスレーブ装置１５０からの応答に含まれる情報の特徴に基づいて、対応するスレーブ装置１５０から期待通りの応答がなされるか否かを検出する。
【００８９】
上述のように、ＳＭＢｕｓでは、物理層としてＩ２Ｃが用いられる。ＰＭＢｕｓのステータス情報では、スレーブに異常が生じた場合に、スレーブからの応答のうち、当該異常に応じたビットがＨｉｇｈになる動作がある。更に、スレーブからのＡＣＫ応答はＬｏｗである。すなわち、スレーブが正常に動作する場合には、スレーブの応答はすべてのビットがＬｏｗとなる。
【００９０】
そこで、テスト回路５３１−１から５３１−Ｎの各々は、スレーブの応答にＨｉｇｈとなるビットが含まれるかを判定して、スレーブ装置１５０に異常が生じている（期待通りの動作を行っていない）可能性があることを検知する。そして、テスト回路５３１−１から５３１−Ｎの各々は、スレーブの応答にＨｉｇｈとなるビットが含まれる場合に、スレーブが期待する動作を行っていないとする判定が可能な構成を有する。
【００９１】
続いて、本実施形態における通信システム５００のテスト回路５３１の構成要素及び動作を説明する。
【００９２】
ＡＮＤゲート５３８−１から５３８−Ｎの各々は、クロック線１４２と、データ線１４３と、第２のスイッチ制御部３２５からの制御信号線とを入力として受付ける。ＡＮＤゲート５３８−１から５３８−Ｎの各々は、入力のいずれもがＨｉｇｈである場合にＨｉｇｈを出力し、それ以外の場合には、Ｌｏｗを出力する。
【００９３】
本実施形態においては、第２のスイッチ制御部３２５は、第２のスイッチ３２３−１から３２３−Ｎの各々を解放するように制御する場合に、制御信号線をＨｉｇｈとすることを想定する。第２のスイッチ３２３−１から３２３−Ｎの各々が解放された場合には、ＡＮＤゲート５３８−１から５３８−Ｎの各々に接続されるデータ線１４３には、対応するスレーブ装置１５０からの応答が伝搬する。また、スレーブ装置１５０が応答する場合には、クロック線１４２はＨｉｇｈとなる。すなわち、スレーブ装置１５０からのデータ線１４３を介した応答がＨｉｇｈとなる場合に、ＡＮＤゲート５３８はＨｉｇｈを出力する。
【００９４】
したがって、上述したＳＭＢｕｓのように、異常が生じたスレーブ装置１５０がデータ線１４３を介して値にＨｉｇｈを含む応答を行う場合に、ＡＮＤゲート５３８−１から５３８−ＮはＨｉｇｈを出力する。言い換えると、ＡＮＤゲート５３８−１から５３８−Ｎは、スレーブ装置１５０の異常の有無を判定する判定部として機能する。そして、ＡＮＤゲート５３８−１から５３８−ＮがＨｉｇｈを出力した場合に、対応するＬＥＤ５３７は点灯する。すなわち、上述したＳＭＢｕｓの例等において、ＬＥＤ５３７は、対応するスレーブ装置１５０に何らかの異常が生じている可能性がある場合に点灯する。ＬＥＤ５３７が点灯することで、通信システム４００の利用者は、点灯したＬＥＤ５３７に対応するスレーブ装置１５０に異常が生じている可能性があることを把握することが可能となる。
【００９５】
なお、ＡＮＤゲート５３８の出力は、ラッチ５３６又はＬＥＤ５３７とは異なる装置等に接続されてもよい。すなわち、本実施形態における通信システム５００は、第４の実施形態における通信システム４００と同様に、スレーブ装置１５０に異常が生じていることをＬＥＤ５３７の点灯とは異なる任意の手段で通知してもよい。
【００９６】
また、本実施形態におけるテスト回路５３１の構成は一例に過ぎない。テスト回路５３１は、上述した機能を実行する任意の他の構成であってもよい。
【００９７】
以上のとおり、本発明の第５の実施形態における通信システム５００は、第４の実施形態と同様に、テスト回路を備える。本実施形態においては、テスト回路は、スレーブ装置の試験などに際して、スレーブ装置に異常が生じた場合に通知が可能な構成を有する。そのため、本実施形態におけるテスト回路は、第４の実施形態におけるテスト回路と同様に、第１の実施形態における通信システム１００等が備えるマスタ送信部と比較して簡易な構成にて実現される。したがって、本実施形態における通信システム５００は、低いコストでのバスに接続されるスレーブ装置の数の増加を可能とする。そして、本実施形態における通信システム５００は、１台のマスタを用いた多数のスレーブに対する通信試験の実行を可能にする。
【００９８】
（第６の実施形態）
次に、本発明の第６の実施形態について説明する。図８は、本発明の第６の実施形態における通信システムの構成を示す図である。図９は、本発明の第６の実施形態における通信システムの別の構成を示す図である。図１０は、本発明の第６の実施形態における通信システムのクロックストレッチ動作に関する動作シーケンスを示す図である。
【００９９】
図８に示すように、本発明の第６の実施形態における通信システム６００は、マスタ送信部１１０と、テスト制御部６２６と、テスト回路６３１−１から６３１−Ｎと、無線通信部６６０とを備える。テスト制御部６２６は、テスト回路６３１−１から６３１−Ｎの動作及びその動作に関連する通信を制御する。テスト回路６３１−１から６３１−Ｎの各々は、第４又は第５の実施形態におけるテスト回路４３１−１から４３１−Ｎ又はテスト回路５３１−１から５３１−Ｎと同様の構成を備える。
【０１００】
また、無線通信部６６０は、一例として、第１の送信部６６１と、第１の受信部６６１−１から６６１−Ｎと、制御部６６３−１から６６３−Ｎと、スイッチ部６６４−１から６６４−Ｎと、第２の送信部６６５−１から６６５−Ｎと、第２の受信部６６６−１から６６６−Ｎとを有する。
【０１０１】
なお、図９に示すように、本実施形態における通信システム６００は、テスト回路６３１−１から６３１−Ｎに代えて、マスタ受信部６３０−１から６３０−Ｎを備えてもよい。マスタ受信部６３０−１から６３０−Ｎの各々は、例えば、第１から第３の実施形態等におけるマスタ受信部１３０−１から１３０−Ｎの各々と同様の構成を備える。
【０１０２】
すなわち、本実施形態における通信システム６００は、Ｉ２Ｃバス１４１を介した通信が、無線通信部６６０を用いて行われる。これ以外の点については、本実施形態における通信システム６００は、他の実施形態における通信システムと基本的に同様の動作を行う。
【０１０３】
続いて、本実施形態における通信システム６００の構成及び動作の例について説明する。
【０１０４】
マスタ送信部１１０は、他の実施形態におけるマスタ送信部１１０と同様に、Ｉ２Ｃバス１４１を介してスレーブ装置１５０−１から１５０−Ｎの各々へ情報を送信する。マスタ送信部１１０側のＩ２Ｃバス１４１を伝搬する情報は、第１の送信部６６１から第１の受信部６６２−１から６６２−Ｎへ無線にて送信される。第１の受信部６６２−１から６６２−Ｎにて受信された当該情報は、制御部６６３−１から６６３−Ｎの各々へ伝搬される。制御部６６３−１から６６３−Ｎの各々は、Ｉ２Ｃバス１４１の各々の信号線等に設けられたスイッチ部６６４−１から６６４−Ｎを適宜制御する等により、当該情報をスレーブ装置１５０側のＩ２Ｃバス１４１へ伝搬する。
【０１０５】
スレーブ装置１５０−１から１５０−Ｎの各々は、マスタ送信部１１０から送信された情報に対して適宜応答する。スレーブ装置１５０からの応答に応じて、テスト回路６３１は、第４又は第５の実施形態における例のように、対応するスレーブ装置１５０の動作の妥当性に関する判定を行う。テスト回路テスト回路６３１−１から６３１−Ｎに代えてマスタ受信部６３１−０から６３０−Ｎが設けられている場合には、マスタ受信部６３０は、対応するスレーブ装置１５０から必要な情報を受信する。
【０１０６】
また、本実施形態においても、スレーブ装置１５０−１から１５０−Ｎの各々においてクロックストレッチが生じる場合がある。この場合の動作の一例を、図１０に示す動作シーケンスを参照して説明する。
【０１０７】
なお、図１０に示す動作シーケンスの例では、“マスタ”はマスタ送信部１１０に関する動作を示す。“マスタ”において、“クロック線”はマスタ送信部１１０からクロック線１４２へ送られるクロック信号の値を示し、“ＣＳ受信”は、第２の受信部６６６が受信した信号の値を示す。
【０１０８】
また、図１０においては、“クロックストレッチ発生”は、クロックストレッチが生じたスレーブ装置１５０に関する動作を示す。“クロックストレッチ発生”において、“クロック線”は、当該スレーブ装置１５０と接続するクロック線１４２におけるクロック信号の値を示し、“ＣＳ送信”は、対応する第２の受信部６６５が送信した信号の値を示す。また、“クロックストレッチ未発生”は、クロックストレッチが生じていないスレーブ装置１５０に関する動作を示す。“クロックストレッチ未発生”において、“クロック線”は、当該スレーブ装置１５０と接続するクロック線１４２におけるクロック信号の値を示し、“ＣＳ送信”は、対応する第２の受信部６６５が送信した信号の値を示す。
【０１０９】
マスタ送信部１１０がクロック線１４２をＨｉｇｈした後、スレーブ装置１５０においてクロックストレッチが生じると、スレーブ装置１５０と接続するクロック線１４２の値がＬｏｗとなる。この場合に、当該スレーブ装置１５０に対応する第２の送信部６６５は、クロック線１４２がＬｏｗであることを検知して、クロックストレッチが生じた旨の情報を送信する。すなわち、当該スレーブ装置１５０における“ＣＳ送信”がＨｉｇｈとなる（図１０の（１））。
【０１１０】
第２の受信部６６６は、第２の送信部６６５−１から６６５−Ｎのいずれかからのクロックストレッチが生じた旨の情報を受信する。この場合には、“ＣＳ受信”の値がＨｉｇｈとなる（図１０の（２））。クロックストレッチが生じた旨の情報の受信に応じて、マスタ送信部１１０は、以降のクロック信号の送信を停止する。
【０１１１】
一方、クロックストレッチが生じたスレーブ装置１５０において、クロックストレッチが終了すると、当該スレーブ装置１５０は、クロック線１４２を解放してその後に１サイクル分のパルスを生成する。すなわち、スレーブ装置１５０は、１サイクルの間に亘り、クロック線１４２の値をＨｉｇｈとする。この動作に応じて、第２の受信部６６６は、クロックストレッチが生じた旨の情報の送信を停止する。すなわち、当該スレーブ装置１５０における“ＣＳ送信”がＬｏｗとなる（図１０の（３））。
【０１１２】
第２の受信部６６６が、第２の送信部６６５−１から６６５−Ｎのいずれからもクロックストレッチが生じた旨の情報を受信しない状態である場合には、“ＣＳ受信”はＬｏｗとなる。これに応じてマスタ送信部１１０は、以降のクロック信号の送信を行う（図１０の（４））。
【０１１３】
なお、通信システム６００は、スレーブ装置１５０においてクロックストレッチが生じた場合に、図１０に示す動作シーケンスと異なる動作を行ってもよい。
【０１１４】
例えば、クロックストレッチが生じている状態が予め定められた時間を超えて計測する場合には、通信システム６００は、クロックストレッチが生じているスレーブ装置１５０に関する系統を切り離してもよい。すなわち、この場合には、クロックストレッチが生じているスレーブ装置１５０に対応する第２の送信部６６６は、クロックストレッチが生じた旨の情報の送信を停止する。そして、当該スレーブ装置１５０に対応する第１の受信部６６２は、第１の送信部６６１から送信される情報の受信を停止する。
【０１１５】
又は、テスト回路６３１は、対応するスレーブ装置１５０においてクロックストレッチが生じた場合には、その旨を検知して外部に通知してもよい。
【０１１６】
以上のとおり、本発明の第６の実施形態における通信システム６００は、Ｉ２Ｃバス１４１等のバスを介した通信を、無線通信部６６０を用いて行う構成を備える。バスの一部に無線通信部６６０が用いられることで、通信システム６００においては、配線の複雑化を回避しつつ、マスタ送信部１１０に接続されるスレーブ装置の数の増加が可能となる。また、本実施形態における通信システム６００は、第１から第５の各実施形態における通信システムと同様の効果を奏する。したがって、本実施形態における通信システム５００は、低いコストでのバスに接続されるスレーブ装置の数の増加を可能とする。そして、本実施形態における通信システム５００は、１台のマスタを用いた多数のスレーブに対する通信試験の実行を可能にする。
【０１１７】
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。また、各実施形態における構成は、本発明のスコープを逸脱しない限りにおいて、互いに組み合わせることが可能である。
【０１１８】
本発明の一部または全部は、以下の付記のように表されるが、これに限られない。
【０１１９】
（付記１）
少なくとも一つのスレーブ装置にバスを介して情報を送信するマスタ送信部と、
前記スレーブ装置の各々に対応して設けられており、前記バスを分離する少なくとも一つの分離機構と、
前記スレーブ装置の各々に対応して前記スレーブ装置と前記分離機構との間の前記バスに接続されており、対応する前記スレーブ装置から送信される情報を受信する少なくとも一つのマスタ受信部とを備える、通信システム。
【０１２０】
（付記２）
前記分離機構は、前記バスに設けられるスイッチである、付記１に記載の通信システム。
【０１２１】
（付記３）
前記バスは、データ線とクロック線とを含み、
前記分離機構は、前記クロック線に設けられる第１のスイッチと、前記データ線に設けられる第２のスイッチとを有する、付記１又は２に記載の通信システム。
【０１２２】
（付記４）
前記第１のスイッチに対応して設けられ、前記クロック線が予め定められた期間を超えて所定の低電位状態である場合に前記第１のスイッチを開放する少なくとも一つの第１のスイッチ制御部を備える、付記３に記載の通信システム。
【０１２３】
（付記５）
前記第１のスイッチ制御部は、前記第１のスイッチに対する前記マスタ送信部側にある前記クロック線の電圧と、前記第１のスイッチに対する前記スレーブ装置側にある前記クロック線の電圧とを比較して、前記第１のスイッチの開閉を制御する、付記３又は４に記載の通信システム。
【０１２４】
（付記６）
前記第２のスイッチに対応して設けられ、前記第２のスイッチに対応する前記スレーブ装置からの応答に応じて、前記第２のスイッチを開放するように制御する少なくとも一つの第２のスイッチ制御部を備える、付記３から５のいずれか一項に記載の通信システム。
【０１２５】
（付記７）
前記マスタ受信部は、対応する前記スレーブ装置からの前記マスタ送信部に対する応答が所定の条件を満たすか否かを判定するテスト回路である、付記１から６のいずれか一項に記載の通信システム。
【０１２６】
（付記８）
前記テスト回路は、対応する前記スレーブ装置からの前記応答と所定の基準信号との比較結果に基づいて、前記応答が所定の条件を満たすか否かを判定する、
付記７のいずれか一項に記載の通信システム。
【０１２７】
（付記９）
前記テスト回路は、対応する前記スレーブ装置からの前記応答が所定の値を含むか否かの判定結果に基づいて、前記応答が所定の条件を満たすか否かを判定する、付記７又は８に記載の通信システム。
【０１２８】
（付記１０）
前記マスタ送信部と前記スレーブ装置との間の前記バスに設けられ、前記マスタ送信部から送信される情報を無線で送信する第１の送信部及び第１の受信部と、
前記マスタ送信部と前記スレーブ装置との間の前記クロック線に設けられ、前記スレーブ装置からのクロックに関する情報を無線で送信する第２の送信部及び第２の受信部とを備える、付記３から９のいずれか一項に記載の通信システム。
【０１２９】
（付記１１）
前記分離機構は、前記バスの少なくともデータ線に配置されたダイオードである、付記１から９のいずれか一項に記載の通信システム。
【０１３０】
（付記１２）
少なくとも一つのスレーブ装置にバスを介して情報を送信し、
前記スレーブ装置の各々に対応する位置にて前記バスを分離し、
前記バスが分離された状態で、前記スレーブ装置の各々から送信される情報を受信する、通信方法。
【符号の説明】
【０１３１】
１００、２００、３００、４００、５００、６００    通信システム
１１０    マスタ送信部
１２０    分離機構
２２１    ダイオード
３２２    第１のスイッチ
３２３    第２のスイッチ
３２４    第１のスイッチ制御部
３２５    第２のスイッチ制御部
６２６    テスト制御部
１３０、６３０    マスタ受信部
４３１、５３１、６３１    テスト回路
４３２    第３のスイッチ
４３３    第４のスイッチ
４３４    フリップフロップ
４３５    ＸＯＲゲート
４３６、５３６    ラッチ
４３７、５３７    ＬＥＤ
５３８    ＡＮＤゲート
１４０    バス
１４１    Ｉ２Ｃバス
１４２    クロック線
１４３    データ線
１５０    スレーブ装置
６６０    無線通信部
６６１    第１の送信部
６６２    第１の受信部
６６３    制御部
６６４    スイッチ部
６６５    第２の送信部
６６６    第２の受信部
【図１】
0006645069.tif 000002
【図２】
0006645069.tif 000003
【図３】
0006645069.tif 000004
【図４】
0006645069.tif 000005
【図５】
0006645069.tif 000006
【図６】
0006645069.tif 000007
【図７】
0006645069.tif 000008
【図８】
0006645069.tif 000009
【図９】
0006645069.tif 000010
【図１０】
0006645069.tif 000011