(57)【要約】【課題】通信速度の低下を抑制し、かつスレーブアドレスのビット数による制限を超えるスレーブデバイスとマスタデバイスとの通信を可能とする。【解決手段】バス制御装置では、終了条件検出回路３５は終了条件信号を検出し、スイッチ制御回路３７は、複数のスレーブバス１３〜１５のうち、終了条件カウンタ３６のカウント値に応じたスレーブバスがマスタバス１２と接続されるように、スイッチ３１〜３４のオンオフを制御する。【選択図】図１
2013239043.tif 000002
【特許請求の範囲】
【請求項１】
マスタデバイスが接続されるマスタバスと、
スレーブデバイスがそれぞれ接続される複数のスレーブバスと、
オンオフ動作を行い、前記複数のスレーブバスについて、前記マスタバスに接続されるスレーブバスを切り替えるスイッチと、
前記マスタデバイスから前記マスタバス上に出力された終了条件信号を検出する終了条件検出部と、
前記終了条件検出部にて検出された終了条件信号の数を数える終了条件カウント部と、
前記複数のスレーブバスのうち、前記終了条件カウント部のカウント値に応じたスレーブバスが前記マスタバスと接続されるように、前記スイッチのオンオフ動作を制御するスイッチ制御部とを備えていることを特徴とするバス制御装置。
【請求項２】
前記スイッチ制御部は、前記終了条件カウント部のカウント値に応じた分だけ、前記複数のスレーブバスについて、前記マスタバスと接続されるスレーブバスが順次切り替わるように、前記スイッチのオンオフ動作を制御することを特徴とする請求項１に記載のバス制御装置。
【請求項３】
前記スイッチ制御部は、前記マスタデバイスと前記スレーブデバイスとの通信終了後に、前記マスタデバイスから前記マスタバス上に出力される前記終了条件信号についての前記終了条件カウント部のカウント値に応じて、前記複数のスレーブバスについて、前記マスタバスに接続されるスレーブバスが所定の順序にて切り替わるように、前記スイッチのオンオフ動作を制御することを特徴とする請求項１または２に記載のバス制御装置。
【請求項４】
第１バス制御手段と複数の第２バス制御手段とを備え、
前記第１バス制御手段は、
マスタデバイスが接続されるマスタバスと、
前記第２バス制御手段がそれぞれ接続される複数の第１スレーブバスと、
オンオフ動作を行い、前記複数の第１スレーブバスについて、前記マスタバスに接続される第１スレーブバスを切り替える第１スイッチと、
前記マスタデバイスから前記マスタバス上に出力された終了条件信号を検出する終了条件検出部と、
前記終了条件検出部にて検出された終了条件信号の数を数える終了条件カウント部と、
前記複数の第１スレーブバスのうち、前記終了条件カウント部のカウント値に応じた第１スレーブバスが前記マスタバスと接続されるように、前記第１スイッチのオンオフ動作を制御する第１スイッチ制御部とを備え、
前記第２バス制御手段は、
スレーブデバイスが接続される複数の第２スレーブバスと、
前記マスタデバイスから送信される第１のアドレスから、前記複数の第２スレーブバスのうちの制御対象の前記スレーブデバイスが接続される第２スレーブバスを特定する第２のアドレスをデコードするとともに、前記第１のアドレスを制御対象の前記スレーブデバイスを特定する第３のアドレスに変換し、前記マスタデバイスからの前記第１のアドレスの送信に伴って全ての前記第２スレーブバスに前記第３のアドレスを送信するデコード部と、
オンオフ動作を行い、前記複数の第２スレーブバスについて、前記第１スレーブバスに接続される第２スレーブバスを切り替える第２スイッチと、
前記第２のアドレスに従い、前記第２スイッチのオンオフ動作による前記第１スレーブバスと前記第２スレーブバスとの接続を制御する接続制御部とを備え、
所定のビット幅の上位ビットにおいて、前記第３のアドレスのビット列が全てのスレーブデバイスに対して固定のアドレス値を有しており、
前記デコード部は、マスタデバイスが前記第１のアドレスの前記上位ビットを送信する間、前記複数の第２スレーブバス全てに、前記第３のアドレスの前記上位ビットとして前記固定のアドレス値を送信し、
前記接続制御部は、前記デコード部が前記第３のアドレスを送信後、前記第２のアドレスにより特定される前記第２スレーブバスのみが前記第１スレーブバスとの接続を維持するように前記第２スイッチを制御するとともに、前記第２のアドレスにより特定されない全ての前記第２スレーブバスに対して、前記スレーブデバイスとの通信の終了を示す信号を送信することを特徴とするバス制御装置。
【請求項５】
マスタバスに接続されたマスタデバイスから前記マスタバス上に出力された終了条件信号を検出する終了条件検出工程と、
前記終了条件検出工程にて検出された終了条件信号の数を数える終了条件カウント工程と、
スレーブデバイスがそれぞれ接続された前記複数のスレーブバスのうち、前記終了条件カウント工程でのカウント値に応じたスレーブバスが前記マスタバスと接続されるように、前記複数のスレーブバスについて、前記マスタバスに接続されるスレーブバスを切り替える切替え工程とを備えていることを特徴とするバス制御方法。
【請求項６】
請求項１から４のいずれか１項に記載のバス制御装置の前記の各部としてコンピュータを機能させるためのプログラム。
【請求項７】
請求項６に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタデバイスが接続されるマスタバスとスレーブデバイスが接続される複数のスレーブバスとの通信を制御するバス制御装置、およびバス制御方法に関する。
【背景技術】
【０００２】
近年、デバイス間の情報伝達を行うためのインターフェイスとしてＩ２Ｃ（Inter Integrated Circuit）バスが使用されている。このＩ２Ｃバスを使用した接続では、通常、1本のＩ２Ｃバスに対して、複数のスレーブデバイスと、これらスレーブデバイスを制御するマスタデバイスとが接続される。
【０００３】
しかしながら、一般的なスレーブデバイスの仕様では選択可能なスレーブアドレスの数に制限があり、その数以上に同種のスレーブデバイスを同一のバスに接続することができない。一方、制御システムの規模の拡大に伴い、スレーブアドレスの数の制限を越えて、スレーブデバイスをバスに接続することが求められている。
【０００４】
そこで、スレーブアドレスの制限を越えるスレーブデバイスを接続する技術として、例えば、特許文献１に開示されているような構成が提案されている。特許文献１に記載の構成では、マスタデバイスがマスタバスに接続され、複数のスレーブバスがそれぞれスイッチを介してマスタバスと接続されている。
【０００５】
特許文献１に記載の構成では、マスタデバイスがスレーブデバイスと通信する場合に、図１０に示すような動作を行っている。図１０は、特許文献１に開示された従来技術におけるマスタデバイスがスレーブデバイスと通信する場合の動作を示したタイミングチャートである。
【０００６】
すなわち、マスタデバイスからスレーブデバイスに対してデータを送信する場合には、マスタデバイスからマスタバス上にデータの送受信の対象となるスレーブデバイスの論理アドレスを送信する。次に、この論理アドレスを実アドレスとバス番号にデコードし、デコードされたバス番号に基づき、スレーブデバイスが接続されたスレーブバスとマスタバスとが接続されるように、スイッチを制御している。さらに、当該デコードされた実アドレスをスレーブバス上に送信し、当該実アドレスにより特定されるスレーブデバイスに対しデータの送受信を行うようにしている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０００−１６５４２１号公報（２０００年６月１６日公開）
【特許文献２】特開２０１１−１３８２９３号公報（２０１１年７月１４日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載の構成では、マスタデバイスがスレーブデバイスに対してデータを送信する場合には、その前に、スレーブデバイスの論理アドレスからバス番号をデコードして、マスタバスとデータ送信対象のスレーブデバイスが接続されているスレーブバスとが接続されるようにスイッチを制御する必要がある。
【０００９】
このため、マスタデバイスがスレーブデバイスに対してデータの送信を行う時間に加え、論理アドレスをデコードしてスイッチを制御する時間がさらに必要になり、通信速度が低下するという問題点を有している。
【００１０】
さらに、Ｉ２Ｃバスにてマスタデバイスがスレーブデバイスと通信する場合、スレーブアドレスは７ビットしかなく、マスタデバイスは１２８個を超えるスレーブデバイスと通信することができない。そこで、マスタデバイスが１２８個を超えるスレーブデバイスと通信できるようにするために、別途バスセレクタを設けることが考えられる。この場合、マスタデバイスがスレーブデバイスと通信する動作は図１１に示すものとなる。図１１は、特許文献１に開示された従来技術において、バスセレクタを設けた場合における、マスタデバイスがスレーブデバイスと通信する場合の動作を示したタイミングチャートである。
【００１１】
しかしながら、バスセレクタを設けた場合には、図１１に示すように、スレーブデバイスと通信する前に、必ずバスセレクタを切り替える操作が必要になる。このため、バスセレクタによりバスの切り替えに要する時間分だけ、通信速度が低下するという問題を招来する。
【００１２】
したがって、本発明は、通信速度の低下を抑制しながら、スレーブアドレスのビット数によって制限される個数を超える個数のスレーブデバイスとマスタデバイスとの通信を可能とするバス制御装置、バス制御方法、プログラムおよび記録媒体の提供を目的としている。
【課題を解決するための手段】
【００１３】
上記の課題を解決するために、本発明のバス制御装置は、マスタデバイスが接続されるマスタバスと、スレーブデバイスがそれぞれ接続される複数のスレーブバスと、オンオフ動作を行い、前記複数のスレーブバスについて、前記マスタバスに接続されるスレーブバスを切り替えるスイッチと、前記マスタデバイスから前記マスタバス上に出力された終了条件信号を検出する終了条件検出部と、前記終了条件検出部にて検出された終了条件信号の数を数える終了条件カウント部と、前記複数のスレーブバスのうち、前記終了条件カウント部のカウント値に応じたスレーブバスが前記マスタバスと接続されるように、前記スイッチのオンオフ動作を制御するスイッチ制御部とを備えていることを特徴としている。
【００１４】
また、本発明のバス制御方法は、マスタバスに接続されたマスタデバイスから前記マスタバス上に出力された終了条件信号を検出する終了条件検出工程と、前記終了条件検出工程にて検出された終了条件信号の数を数える終了条件カウント工程と、スレーブデバイスがそれぞれ接続された前記複数のスレーブバスのうち、前記終了条件カウント工程でのカウント値に応じたスレーブバスが前記マスタバスと接続されるように、前記複数のスレーブバスについて、前記マスタバスに接続されるスレーブバスを切り替える切替え工程とを備えていることを特徴としている。
【００１５】
上記の構成によれば、終了条件検出部は（終了条件検出工程では）、マスタデバイスからマスタバス上に出力された終了条件信号を検出し、終了条件カウント部は（終了条件カウント工程では）、終了条件検出部（終了条件検出工程）にて検出された終了条件信号の数を数える。スイッチ制御部は（スイッチ制御工程では）、複数のスレーブバスのうち、終了条件カウント部（終了条件カウント工程）のカウント値に応じたスレーブバスがマスタバスと接続されるように、スイッチのオンオフ動作を制御する。
【００１６】
したがって、マスタデバイスによりマスタバスと接続するスレーブバスとして任意のスレーブバスが選択された場合であっても、マスタデバイスからマスタバス上に出力された終了条件信号により、マスタバスを任意のスレーブバスに接続することができる。これにより、スレーブアドレスおよびバス番号を指定することによってマスタバスと接続するスレーブバスを切り替えるような従来の構成と比較して、マスタバスをいずれかのスレーブバスと接続するまでの速度を速くすることができる。この結果、マスタデバイスとスレーブデバイスとの通信速度を速くすることができる。
【００１７】
また、マスタデバイスからマスタバス上に出力される終了条件信号によって、マスタバスと接続するスレーブバスを切り替える構成であるから、同じスレーブアドレスのスレーブデバイスであっても、異なるスレーブバスに接続されていれば、それらスレーブデバイスを区別して通信することができる。したがって、スレーブアドレスは７ビットであるので、Ｉ２Ｃバスでは、仕様上、アドレスの組み合せは１２８個しか存在しないものの、マスタデバイスは、１２８個を超えるスレーブデバイスとの通信、すなわちスレーブアドレスのビット数によって制限される個数を超える個数のスレーブデバイスとの通信が可能となる。
【００１８】
これにより、通信速度の低下を抑制しながら、スレーブアドレスのビット数によって制限される個数を超える個数のスレーブデバイスとマスタデバイスとの通信が可能となる。
【００１９】
上記のバス制御装置において、前記スイッチ制御部は、前記終了条件カウント部のカウント値に応じた分だけ、前記複数のスレーブバスについて、前記マスタバスと接続されるスレーブバスが順次切り替わるように、前記スイッチのオンオフ動作を制御する構成としてもよい。
【００２０】
上記の構成によれば、スイッチ制御部は、終了条件カウント部のカウント値に応じた分だけ、複数のスレーブバスについて、マスタバスと接続されるスレーブバスが順次切り替わるように、スイッチのオンオフ動作を制御する。
【００２１】
したがって、マスタデバイスからマスタバス上に終了条件信号が出力される毎に、マスタバスと接続されるスレーブバスが順次切り替えられる。これにより、マスタバスと接続するスレーブバスの切り替えを迅速に行うことができる。
【００２２】
上記のバス制御装置において、前記スイッチ制御部は、前記マスタデバイスと前記スレーブデバイスとの通信終了後に、前記マスタデバイスから前記マスタバス上に出力される前記終了条件信号についての前記終了条件カウント部のカウント値に応じて、前記複数のスレーブバスについて、前記マスタバスに接続されるスレーブバスが所定の順序にて切り替わるように、前記スイッチのオンオフ動作を制御する構成としてもよい。
【００２３】
上記の構成によれば、スイッチ制御部は、マスタデバイスとスレーブデバイスとの通信終了後に、マスタデバイスからマスタバス上に出力される終了条件信号についての終了条件カウント部のカウント値に応じて、複数のスレーブバスについて、マスタバスに接続されるスレーブバスが所定の順序にて切り替わるように、スイッチのオンオフ動作を制御する。
【００２４】
これにより、マスタデバイスが１つのスレーブバスとのデータの通信を終了して、マスタデバイスから終了条件信号がマスタバスに出力される毎に、自動的に、マスタバスと接続されるスレーブバスが順次切り替えられる。
【００２５】
したがって、マスタデバイスが複数のスレーブバスと接続されている全てのスレーブデバイスを巡回するように通信する場合には、１つのスレーブデバイスとの通信の終了後に、マスタデバイスが、マスタバスと接続するスレーブバスのバス番号を指定する処理、およびマスタデバイスと通信するスレーブデバイスのスレーブアドレスを指定する処理が不要となる。これにより、マスタデバイスが複数のスレーブバスと接続されている全てのスレーブデバイスを巡回するように通信する場合の通信速度を向上することができる。
【００２６】
本発明のバス制御装置は、第１バス制御手段と複数の第２バス制御手段とを備え、前記第１バス制御手段は、マスタデバイスが接続されるマスタバスと、前記第２バス制御手段がそれぞれ接続される複数の第１スレーブバスと、オンオフ動作を行い、前記複数の第１スレーブバスについて、前記マスタバスに接続される第１スレーブバスを切り替える第１スイッチと、前記マスタデバイスから前記マスタバス上に出力された終了条件信号を検出する終了条件検出部と、前記終了条件検出部にて検出された終了条件信号の数を数える終了条件カウント部と、前記複数の第１スレーブバスのうち、前記終了条件カウント部のカウント値に応じた第１スレーブバスが前記マスタバスと接続されるように、前記第１スイッチのオンオフ動作を制御する第１スイッチ制御部とを備え、前記第２バス制御手段は、スレーブデバイスが接続される複数の第２スレーブバスと、前記マスタデバイスから送信される第１のアドレスから、前記複数の第２スレーブバスのうちの制御対象の前記スレーブデバイスが接続される第２スレーブバスを特定する第２のアドレスをデコードするとともに、前記第１のアドレスを制御対象の前記スレーブデバイスを特定する第３のアドレスに変換し、前記マスタデバイスからの前記第１のアドレスの送信に伴って全ての前記第２スレーブバスに前記第３のアドレスを送信するデコード部と、オンオフ動作を行い、前記複数の第２スレーブバスについて、前記第１スレーブバスに接続される第２スレーブバスを切り替える第２スイッチと、前記第２のアドレスに従い、前記第２スイッチのオンオフ動作による前記第１スレーブバスと前記第２スレーブバスとの接続を制御する接続制御部とを備え、所定のビット幅の上位ビットにおいて、前記第３のアドレスのビット列が全てのスレーブデバイスに対して固定のアドレス値を有しており、前記デコード部は、マスタデバイスが前記第１のアドレスの前記上位ビットを送信する間、前記複数の第２スレーブバス全てに、前記第３のアドレスの前記上位ビットとして前記固定のアドレス値を送信し、前記接続制御部は、前記デコード部が前記第３のアドレスを送信後、前記第２のアドレスにより特定される前記第２スレーブバスのみが前記第１スレーブバスとの接続を維持するように前記第２スイッチを制御するとともに、前記第２のアドレスにより特定されない全ての前記第２スレーブバスに対して、前記スレーブデバイスとの通信の終了を示す信号を送信することを特徴としている。
【００２７】
上記の構成によれば、第１バス制御手段において、終了条件検出部は、マスタデバイスからマスタバス上に出力された終了条件信号を検出し、終了条件カウント部は、終了条件検出部にて検出された終了条件信号の数を数える。第１スイッチ制御部は、複数の第１スレーブバスのうち、終了条件カウント部のカウント値に応じた第１スレーブバスがマスタバスと接続されるように、第１スイッチのオンオフ動作を制御する。
【００２８】
また、第２バス制御手段において、デコード部は、マスタデバイスから送信される第１のアドレスから、複数の第２スレーブバスのうちの制御対象のスレーブデバイスが接続される第２スレーブバスを特定する第２のアドレスをデコードする。また、第１のアドレスを制御対象のスレーブデバイスを特定する第３のアドレスに変換し、マスタデバイスからの第１のアドレスの送信に伴って全ての第２スレーブバスに第３のアドレスを送信する。
【００２９】
接続制御部は、第２のアドレスに従い、第２スイッチのオンオフ動作による第１スレーブバスと第２スレーブバスとの接続を制御する。
【００３０】
ここで、所定のビット幅の上位ビットにおいて、第３のアドレスのビット列が全てのスレーブデバイスに対して固定のアドレス値を有している。
【００３１】
また、デコード部は、マスタデバイスが第１のアドレスの上位ビットを送信する間、複数の第２スレーブバス全てに、第３のアドレスの前記上位ビットとして固定のアドレス値を送信する。
【００３２】
また、接続制御部は、デコード部が第３のアドレスを送信後、第２のアドレスにより特定される第２スレーブバスのみが第１スレーブバスとの接続を維持するように第２スイッチを制御するとともに、第２のアドレスにより特定されない全ての第２スレーブバスに対して、スレーブデバイスとの通信の終了を示す信号を送信する。これにより、マスタデバイスは、第３のアドレスによって特定されるスレーブデバイスと通信することができる。
【００３３】
したがって、第１バス制御手段において、マスタデバイスによりマスタバスと接続する第１スレーブバスとして任意の第１スレーブバスが選択された場合であっても、マスタデバイスからマスタバス上に出力された終了条件信号により、マスタバスを任意の第１スレーブバスに接続することができる。これにより、スレーブアドレスおよびバス番号を指定することによってマスタバスと接続する第１スレーブバスを切り替えるような従来の構成と比較して、マスタバスをいずれかの第１スレーブバスと接続するまでの速度を速くすることができる。この結果、マスタデバイスとスレーブデバイスとの通信速度を速くすることができる。
【００３４】
また、マスタデバイスからマスタバス上に出力される終了条件信号によって、マスタバスと接続する第１スレーブバスを切り替える構成であるから、同じスレーブアドレスのスレーブデバイスであっても、異なる第１スレーブバスに接続されていれば、それらスレーブデバイスを区別して通信することができる。したがって、スレーブアドレスは７ビットであるのでＩ２Ｃバスでは、仕様上、アドレスの組み合せは１２８個しか存在しないものの、マスタデバイスは、１２８個を超えるスレーブデバイスとの通信、すなわちスレーブアドレスのビット数によって制限される個数を超える個数のスレーブデバイスとの通信が可能となる。
【００３５】
これにより、通信速度の低下を抑制しながら、スレーブアドレスのビット数によって制限される個数を超える個数のスレーブデバイスとマスタデバイスとの通信が可能となる。
【発明の効果】
【００３６】
本発明の構成によれば、通信速度の低下を抑制しながら、スレーブアドレスのビット数によって制限される個数を超える個数のスレーブデバイスとマスタデバイスとの通信が可能となる。
【図面の簡単な説明】
【００３７】
【図１】本発明の実施の形態におけるバス制御装置の構成を示すブロック図である。
【図２】図１に示したバス制御装置の動作の一例を示すタイミングチャートである。
【図３】本実施の他の形態におけるバス制御装置の動作の一例を示すタイミングチャートである。
【図４】本発明のさらに他の実施の形態におけるバス制御装置の構成を示すブロック図である。
【図５】図４に示した第２バス制御装置の構成を示すブロック図である。
【図６】図４に示したバス制御装置において適用可能な論理アドレスとスレーブデバイスの実アドレス、および当該スレーブデバイスと接続するスレーブバスの何れかを特定するためのバス番号との対応関係の一例を示す説明図である。
【図７】図４に示したバス制御装置にて用いられるアドレスデコードテーブルの一例を示す説明図である。
【図８】図４に示したバス制御装置の動作の一例を示すタイミングチャートである。
【図９】図４に示した第２バス制御装置における、マスタデバイスがスレーブデバイスと通信する場合の動作を示すタイミングチャートである。
【図１０】従来技術におけるマスタデバイスがスレーブデバイスと通信する場合の動作を示すタイミングチャートである。
【図１１】従来技術においてバスセレクタを設けた場合における、マスタデバイスがスレーブデバイスと通信する場合の動作を示すタイミングチャートである。
【発明を実施するための形態】
【００３８】
〔実施の形態１〕
本発明の実施の形態を図面に基づいて以下に説明する。
本実施の形態のバス制御装置は、図１に示す構成を備えている。図１は、本発明の実施の形態におけるバス制御装置１の構成を示すブロック図である。
【００３９】
図１に示すように、バス制御装置１は、マスタデバイス１１、マスタバス１２、複数本（本実施の形態では４本）のスレーブバス１３〜１６、複数（本実施の形態では８個）のスレーブデバイス１７〜２４、およびバス制御装置２５を備えている。
【００４０】
マスタデバイス１１にはマスタバス１２が接続されている。スレーブバス１３〜１６のそれぞれには、２つのスレーブデバイスが接続されている。すなわち、スレーブバス１３にはスレーブデバイス１７，１８が接続され、スレーブバス１４にはスレーブデバイス１９，２０が接続され、スレーブバス１５にはスレーブデバイス２１，２２が接続され、スレーブバス１６にはスレーブデバイス２３，２４が接続されている。また、各スレーブバス１３〜１６は、バス制御装置２５を介してマスタバス１２と接続されている。４本のスレーブバス１３〜１６には、それぞれ０〜４のバス番号が設定されている。
【００４１】
バス制御装置２５は、各スレーブバス１３〜１６に対応する各スイッチ３１〜３４、終了条件検出回路（終了条件検出部）３５、終了条件カウンタ（終了条件カウント部）３６およびスイッチ制御回路（スイッチ制御部）３７を備えている。
【００４２】
スイッチ３１はマスタバス１２とスレーブバス１３との間に配置され、スイッチ３２はマスタバス１２とスレーブバス１４との間に配置され、スイッチ３３はマスタバス１２とスレーブバス１５との間に配置され、スイッチ３４はマスタバス１２とスレーブバス１６との間に配置されている。
【００４３】
マスタデバイス１１は、マスタバス１２と接続するスレーブバス１３〜１６を切り替える場合に、スレーブバス１３〜１６を切り替えるための開始条件信号と終了条件信号とを、各スレーブバス１３〜１６に応じて設定された回数だけ送信する。この場合、データは送信しない。
【００４４】
バス制御装置２５の終了条件検出回路３５は、マスタデバイス１１から送信された終了条件信号を検出する。終了条件カウンタ３６は、終了条件検出回路３５にて検出された終了条件信号の回数、すなわちマスタデバイス１１から送信された終了条件の回数をカウントする。スイッチ制御回路３７は、終了条件カウンタ３６によるカウント値に応じて、各スイッチ３１〜３４をオンオフ動作させるスイッチ制御信号を出力する。
【００４５】
スイッチ制御回路３７は、具体的には、スレーブバス１３〜１６のうち、終了条件カウンタ３６のカウント値に応じたバス番号のスレーブバスがマスタバス１２と接続状態となり、それ以外のスレーブバスがマスタバス１２と接続の遮断状態なるようにするスイッチ制御信号をスイッチ３１〜３４に対して出力する。したがって、各スイッチ３１〜３４は、スイッチ制御信号の指示がスイッチのオン動作であれば、対応するスレーブバスがマスタバス１２と接続されるようにオン動作を行う。一方、スイッチ制御信号の指示がスイッチのオフ動作であれば、対応するスレーブバスとマスタバス１２との接続が遮断されるように、オフ動作を行う。
【００４６】
上記の構成において、本実施の形態のバス制御装置１の動作について以下に説明する。図２は、バス制御装置１の動作の一例を示すタイミングチャートである。
【００４７】
以下では、マスタデバイス１１がバス番号３のスレーブバス１６と通信する場合について説明する。バス制御装置１では、初期状態（初期設定）として、スレーブバス１３（バス番号０）に接続されたスイッチ３１のみがオンされているものとする。
【００４８】
マスタデバイス１１は、スレーブバス１６（バス番号３）と通信する場合に、マスタバス１２のシリアルデータライン（ＳＤＡ）およびシリアルクロックライン（ＳＣＬ）上に開始条件信号５１を送信する。次に、マスタバス１２のシリアルデータライン（ＳＤＡ）およびシリアルクロックライン（ＳＣＬ）上に終了条件信号５２を送信する。その後、開始条件信号５１の送信動作および終了条件信号５２の送信動作を続けて２回繰り返し、合計３回行う。この間、データの送信はしない。
【００４９】
開始条件信号５１の送信では、マスタバス１２のシリアルクロックライン（ＳＣＬ）を高レベルに維持した状態で、マスタバス１２のシリアルデータライン（ＳＤＡ）を高レベルから低レベルに変化させる。また、終了条件信号５２の送信では、マスタバス１２のシリアルクロックライン（ＳＣＬ）を高レベルに維持した状態で、マスタバス１２のシリアルデータライン（ＳＤＡ）を低レベルから高レベルに変化させる。
【００５０】
上記の合計３回の開始条件信号５１および終了条件信号５２の送信動作において、終了条件カウンタ３６は、終了条件信号５２の回数をカウントする。したがって、上記の各開始条件信号５１および終了条件信号５２の送信動作に応じてスイッチ３１〜３４が動作し、マスタバス１２に接続されるスレーブバスが、スレーブバス１３（バス番号０）から、順次、スレーブバス１４（バス番号１）、スレーブバス１５（バス番号２）、スレーブバス１６（バス番号３）に切り替えられる。これにより、マスタバス１２は最終的にスレーブバス１６（バス番号３）と接続される。
【００５１】
次に、マスタデバイス１１からマスタバス１２上にスレーブアドレスが送信され、スレーブバス１６に接続されているスレーブデバイス２３，２４のうち、そのスレーブアドレスのスレーブデバイスとマスタデバイス１１との通信が可能となる。
【００５２】
なお、マスタバス１２がスレーブバス１６（バス番号３）と接続されている状態から、さらに開始条件信号５１および終了条件信号５２の送信動作が行われた場合、初期状態（初期設定）に戻り、マスタバス１２はスレーブバス１３（バス番号０）と接続される。
【００５３】
上記のように、バス制御装置１では、マスタバス１２と接続するスレーブバスとして任意のスレーブバスを選択した場合でも、開始条件信号５１および終了条件信号５２により、マスタバス１２を上記任意のスレーブバスに接続することができる。したがって、スレーブアドレスおよびバス番号を指定することによってマスタバス１２と接続するスレーブバスを切り替えるような従来の構成と比較して、マスタバス１２をいずれかのスレーブバス１３〜１６と接続するまでの速度を速くすることができる。
【００５４】
また、終了条件信号５２によってマスタバス１２と接続するスレーブバスを切り替えることができるので、同じスレーブアドレスのスレーブデバイスであっても、異なるスレーブバスに接続されていれば、それらスレーブデバイスを区別して通信することができる。
【００５５】
また、スレーブアドレスは７ビットであるので、Ｉ２Ｃバスでは、仕様上、アドレスの組み合せは１２８個しか存在しない。しかしながら、バス制御装置１では、スレーブバス１３〜１６を切り替えることにより、７ビットのアドレスにて１２８個を超えるスレーブデバイスとの通信が可能になる。
【００５６】
〔実施の形態２〕
本発明の他の実施の形態を図面に基づいて以下に説明する。
本実施の形態において、図１に示したマスタデバイス１１は、特定のスレーブデバイス１７〜２４を選択せずに、各スレーブデバイス１７〜２４を巡回し、順次各スレーブデバイス１７〜２４と通常の通信（データをやり取りする通信）を行うようになっている。この場合のバス制御装置１の動作を図３に基づいて説明する。図３は、本実施の形態におけるバス制御装置１の動作の一例を示すタイミングチャートである。
【００５７】
バス制御装置１では、初期状態（初期設定）として、スレーブバス１３（バス番号０）に接続されたスイッチ３１のみがオンされているものとする。
【００５８】
スイッチ３１がオンされていることにより、マスタバス１２はスレーブバス１３と接続される。この場合に、マスタデバイス１１は、まずスレーブデバイス１７とのデータの通信が可能となる。
【００５９】
その後、マスタデバイス１１とスレーブデバイス１７との通信が終了し、マスタデバイス１１から終了条件信号５２がマスタバス１２上に送信されると、終了条件検出回路３５はその終了条件信号５２を検出し、終了条件カウンタ３６は終了条件信号５２のカウント値を１増加させて１とする。
【００６０】
したがって、スイッチ制御回路３７は、スイッチ３１をオフにさせ、かつスイッチ３２をオンにさせるスイッチ制御信号を出力する。この結果、マスタバス１２の接続先がスレーブバス１３からスレーブバス１４に切り替わり、マスタデバイス１１とスレーブデバイス１９との通信が可能となる。
【００６１】
その後、マスタデバイス１１とスレーブデバイス１９との通信が終了し、マスタデバイス１１から終了条件信号５２がマスタバス１２上に送信されると、終了条件検出回路３５はその終了条件信号５２を検出し、終了条件カウンタ３６は終了条件信号５２のカウント値を１増加させて２とする。
【００６２】
したがって、スイッチ制御回路３７は、スイッチ３２をオフにさせ、かつスイッチ３３をオンにさせるスイッチ制御信号を出力する。この結果、マスタバス１２の接続先がスレーブバス１４からスレーブバス１５に切り替わり、マスタデバイス１１とスレーブデバイス２１との通信が可能となる。
【００６３】
以下、同様にして、マスタデバイス１１とスレーブデバイスとの通信が終了し、マスタデバイス１１から終了条件信号５２がマスタバス１２上に送信される毎に、マスタバス１２の接続先のスレーブバスが順次切り替えられ、順次、マスタデバイス１１と各スレーブデバイス２１との通信が可能となる。
【００６４】
上記の動作によるマスタデバイス１１と通信可能となるスレーブデバイスの順序は次のように設定されている。
【００６５】
１．バス番号０に接続の１番目のスレーブデバイス１７
２．バス番号１に接続の１番目のスレーブデバイス１９
３．バス番号２に接続の１番目のスレーブデバイス２１
４．バス番号３に接続の１番目のスレーブデバイス２３
５．バス番号０に接続の２番目のスレーブデバイス１８
…………………………………………………
８．バス番号４に接続の２番目のスレーブデバイス２４
上記のように、本実施の形態のバス制御装置１では、マスタデバイス１１が１つのスレーブバスとのデータの通信を終了して終了条件信号５２をマスタバス１２に出力する毎に、自動的に、マスタバス１２と接続されるスレーブバスが順次切り替えられ、かつマスタデバイス１１と通信可能となるスレーブデバイスが順次切り替えられる。
【００６６】
したがって、マスタデバイス１１がスレーブバス１３〜１６と接続されている全てのスレーブデバイス１７〜２４を巡回するように通信する場合には、１つのスレーブデバイスとの通信の終了後に、マスタデバイス１１が、マスタバス１２と接続するスレーブバスのバス番号を指定する処理、およびマスタデバイス１１と通信するスレーブデバイスのスレーブアドレスを指定する処理が不要となる。これにより、マスタデバイス１１がスレーブバス１３〜１６と接続されている全てのスレーブデバイス１７〜２４を巡回するように通信する場合の通信速度を向上することができる。
【００６７】
〔実施の形態３〕
本発明のさらに他の実施の形態を図面に基づいて以下に説明する。
本実施の形態のバス制御装置は、図４に示す構成を備えている。図４は、本発明の実施の形態におけるバス制御装置２の構成を示すブロック図である。
【００６８】
図４に示すように、バス制御装置２は、マスタデバイス１１、マスタバス１２、複数本（本実施の形態では４本）のスレーブバス（第１スレーブバス）１３〜１６、複数本（本実施の形態では１６（４×４）本）のスレーブバス（第２スレーブバス）１３ａ〜１３ｄ，１４ａ〜１４ｄ，１５ａ〜１５ｄ，１６ａ〜１６ｄ、複数のスレーブデバイス、第１バス制御装置（第１バス制御手段）７１および第２バス制御装置（第１バス制御手段）６１〜６４を備えている。なお、図４には複数のスレーブデバイスの一例として、スレーブデバイス１０１ａ〜１０１ｅ，１０２ａ〜１０２ｅ，１０３ａ〜１０３ｅ，１０４ａ〜１０４ｅを記載している。
【００６９】
第１バス制御装置７１は、図１に示したバス制御装置２５と同一の構成である。したがって、ここでの詳細な説明は省略する。
【００７０】
第２バス制御装置６１〜６４は、同一の構成であり、図５に示す構成を備えている。図５は、第２バス制御装置６１〜６４の構成を示すブロック図である。なお、図５では、便宜上、第２バス制御装置６３の構成として示している。
【００７１】
第２バス制御装置６３は、アドレスデコードテーブル１１１、アドレスデコード回路１１２、スイッチ制御回路（接続制御部）１１３、終了条件制御回路（接続制御部）１１４、スイッチ（第２スイッチ）１２１〜１２４および終了条件発生回路１３１〜１３４を備えている。
【００７２】
スイッチ１２１〜１２４および終了条件発生回路１３１〜１３４はそれぞれスレーブバス１５ａ〜１５ｄに対応して設けられている。すなわち、スイッチ１２１および終了条件発生回路１３１はスレーブバス１５ａに対応し、スイッチ１２２および終了条件発生回路１３２はスレーブバス１５ｂに対応し、スイッチ１２３および終了条件発生回路１３３はスレーブバス１５ｃに対応し、スイッチ１２４および終了条件発生回路１３４はスレーブバス１５ｄに対応している。
【００７３】
アドレスデコード回路１１２は、マスタデバイス１１からマスタバス１２を介して送信されるスレーブデバイスの論理アドレスを、スレーブデバイスの実アドレスに変換するとともに、アドレスデコードテーブル１１１に基づき、スレーブバスのバス番号を生成する。また、アドレスデコード回路１１２は、アドレス変換後の実アドレスを全てのスレーブバス１５ａ〜１５ｄに対して、スレーブバス１５ａ〜１５ｄ上に設けられたスイッチ１２１〜１２４を介して送信するように制御される。
【００７４】
ここで、図６には、バス制御装置２の第２バス制御装置６３において適用可能な論理アドレスとスレーブデバイスの実アドレス、および当該スレーブデバイスと接続するスレーブバス１５ａ〜１５ｄの何れかを特定するためのバス番号との対応関係の一例を示す。図６に示すように、７ビットのアドレスデータのうち、実アドレスの上位４ビットは論理アドレスおよびスレーブバスのバス番号に拘らず固定であるのに対し、論理アドレスの上位４ビットはスレーブバスのバス番号に応じて異なっている。言い換えると、論理アドレスの上位４ビットにスレーブバスのバス番号の情報がエンコードされている。一方、実アドレスの下位３ビットは、対応する論理アドレスの下位３ビットと完全に一致している。
【００７５】
この場合、アドレスデコード回路１１２は、マスタバス１２に論理アドレスの上位４ビットが送信されているときには、全てのスレーブバス１５ａ〜１５ｄに所定の固定アドレス（ここでは、“０１０１”）を送信し、マスタバス１２に論理アドレスの下位３ビットが送信されているときには、当該論理アドレスの下位３ビットをそのまま、全てのスレーブバス１５ａ〜１５ｄに対して、実アドレスの下位３ビットとして送信する。さらに、アドレスデコード回路１１２は、論理アドレスの下位３ビットを送信している間に、アドレスデコードテーブル１１１を参照して、論理アドレスの上位４ビットから、スレーブバスのバス番号をデコードする。
【００７６】
図７には、バス制御装置２で用いられるアドレスデコードテーブル１１１の一例を示す。アドレスデコードテーブル１１１には、スレーブバス１５ａ〜１５ｄのそれぞれにつき、その論理アドレスの上位４ビットと、当該スレーブデバイスと接続するスレーブバス１５ａ〜１５ｄの何れかを特定するためのバス番号との対応関係が記述されている。バス制御装置２では、スレーブデバイスの実アドレスは、アドレスデコードテーブル１１１を用いることなく、論理アドレスの簡単なアドレス変換により求めるので、論理アドレスの送信と同時に実アドレスを送信することが可能になる。
【００７７】
スイッチ制御回路１１３は、スレーブバス１５ａ〜１５ｄ毎に１つずつ設けられるスイッチ１２１〜１２４のオンオフを制御し、マスタバス１２とスレーブバス１５ａ〜１５ｄとの接続を個別に制御する。
【００７８】
具体的には、スイッチ制御回路１１３は、アドレスデコード回路１１２が実アドレスを送信する際、全てのスレーブバス１５ａ〜１５ｄに対して実アドレスが送信されるように、全てのスイッチ１２１〜１２４をオンする。その後、アドレスデコード回路１１２からスレーブバスのバス番号を受け取ると、当該バス番号により特定されるスレーブバスに設けられたスイッチのみをオンにし、他のスイッチをオフにする。これにより、当該バス番号により特定されるスレーブバスに対してのみ、マスタバス１２との接続を維持する。
【００７９】
終了条件制御回路１１４は、スレーブバス１５ａ〜１５ｄのそれぞれに対し、スレーブデバイスとの通信の終了を示す信号の送信を個別に制御する。これにより、当該スレーブバスに接続する全てのスレーブデバイスとマスタデバイス１１との通信を終了させる。具体的には、終了条件制御回路１１４は、スレーブバス１５ａ〜１５ｄ毎に１つずつ設けられる終了条件発生回路１３１〜１３４に対し、終了条件発生のためのトリガ信号を個別に送信する。これにより、終了条件発生回路１１４が接続するスレーブバスを介したスレーブデバイスとマスタデバイス１１との通信を終了させる。
【００８０】
さらに具体的には、終了条件制御回路１１４は、アドレスデコード回路１１２からスレーブバスのバス番号を受け取ると、当該バス番号により特定されるスレーブバスを除く全てのスレーブバスと接続する終了条件発生回路に対して、終了条件発生のためのトリガ信号を送信する。終了条件発生回路１３１〜１３４のそれぞれは、当該トリガ信号を受け取ると、自身が接続するスレーブバスに対して終了条件を送信し、当該スレーブバスを介したスレーブデバイスとマスタデバイス１１との通信を終了させる。
【００８１】
上記の構成において、本実施の形態におけるバス制御装置２の動作について以下に説明する。図８は、バス制御装置２の動作の一例を示すタイミングチャートである。図８では、マスタデバイス１１がスレーブバス１５ａ（バス番号２０）に接続されているスレーブデバイス１０３ａと通信する場合のバス制御装置２の動作を示す。
【００８２】
バス制御装置２では、初期状態（初期設定）として、第２バス制御装置６１（スレーブバス１３）に接続されたスイッチ３１のみがオンされているものとする。
【００８３】
マスタデバイス１１は、スレーブバス１５ａ（バス番号２０）に接続されているスレーブデバイス１０２ａと通信する場合に、まず、スレーブバス１５ａ〜１５ｄが接続されている第２バス制御装置６３にマスタバス１２を接続させる。
【００８４】
このために、マスタバス１２のシリアルデータライン（ＳＤＡ）およびシリアルクロックライン（ＳＣＬ）上に開始条件信号５１を送信する。次に、マスタバス１２のシリアルデータライン（ＳＤＡ）およびシリアルクロックライン（ＳＣＬ）上に終了条件信号５２を送信する。その後、開始条件信号５１の送信動作および終了条件信号５２の送信動作を続けて１回繰り返し、合計２回行う。この間、データの送信はしない。
【００８５】
上記の合計２回の開始条件信号５１および終了条件信号５２の送信動作において、終了条件カウンタ３６は、終了条件信号５２の回数をカウントする。したがって、上記の各開始条件信号５１および終了条件信号５２の送信動作に応じてスイッチ（第１スチッチ）３１〜３３が動作し、マスタバス１２に接続される第２バス制御装置が、第２バス制御装置６１（スレーブバス１３）から、順次、第２バス制御装置６２（スレーブバス１４）、第２バス制御装置６３（スレーブバス１５）に切り替えられる。これにより、マスタバス１２は最終的に第２バス制御装置６３（スレーブバス１５（バス番号２））と接続される。
【００８６】
次に、第２バス制御装置６３は、論理アドレスを設定して、マスタバス１２をスレーブバス１５ａ（バス番号２０）に接続させ、さらにマスタデバイス１１をスレーブバス１５ａ（バス番号２０）に接続されているスレーブデバイス１０２ａと通信可能にする。
【００８７】
この場合、第２バス制御装置６３は、第１バス制御装置７１から送られてくるデータを全てのスレーブバス１５ａ〜１５ｄ(バス番号２０〜２３）へ送信する。そして、論理アドレスに従って、通信しないスレーブバス１５ｂ〜１５ｄ(バス番号２１〜２３）へは終了条件信号を送信して通信を終了させる。
【００８８】
その後、マスタデバイス１１は、スレーブバス１５ａ(バス番号２０）との通信が終了すると、マスタバス１２に終了条件信号５２を出力する。これにより、第１バス制御装置７１の終了条件カウンタ３６のカウント値が１増加され、マスタバス１２の接続が第２バス制御装置６３（スレーブバス１５（バス番号２））から第２バス制御装置６４（スレーブバス１６（バス番号３））に切り替わる。
【００８９】
次に、上記のようにマスタデバイス１１がスレーブデバイス１０３ａと通信する場合の第２バス制御装置６３の動作について詳細に説明する。図９はマスタデバイス１１がスレーブデバイス１０３ａと通信する場合の第２バス制御装置６３の動作を示すタイミングチャートである。
【００９０】
先ず、データの送受信が行われていない状態を初期状態として、スイッチ制御回路１１３は、マスタバス１２と全てのスレーブバス１５ａ〜１５ｄが接続されるように、全てのスイッチ１２１〜１２４をオンにする。
【００９１】
次に、マスタバス１２のシリアルデータライン（ＳＤＡ）とマスタバス１２のシリアルクロックライン（ＳＣＬ）上に開始条件信号５１を送信する。即ち、マスタバス１２のシリアルクロックライン（ＳＣＬ）を高レベルに維持した状態で、マスタバス１２のシリアルデータライン（ＳＤＡ）を高レベルから低レベルに変化させる。このとき、全てのスイッチ１２１〜１２４がオンであるので、全てのスレーブバス１５ａ〜１５ｄ上にも開始条件信号５１が送信される。
【００９２】
次に、マスタデバイス１１からマスタバス１２のシリアルデータライン上に、開始条件信号５１に続く７ビットとして、データ送受信の対象となるスレーブデバイス１０３ａを示す論理アドレス１４４（ここでは、“０１０００００”）を送信する。アドレスデコード回路１１２は、マスタデバイス１１から送信された論理アドレスを受信すると、論理アドレス１４４を実アドレス１４５に変換し、アドレス変換後の実アドレス１４５を、全てのスレーブバス１５ａ〜１５ｄ上に送信する。
【００９３】
具体的には、例えば、論理アドレスの所定のビット幅の上位ビット（例えば、上位４ビット）を固定アドレスのビット列（ここでは、“０１０１”）で置換し、当該置換されたアドレス（“０１０１０００”）を実アドレスとしてスレーブバスに送信する。このとき、全てのスイッチ１２１〜１２４がオンであるので、全てのスレーブバス１５ａ〜１５ｄ上に実アドレスが送信される。さらに、アドレスデコード回路１１２は、マスタデバイス１１から送信された論理アドレス１４４の所定の上位ビット（“０１００”）に基づいて、アドレスデコードテーブル１１１を参照して、スレーブバス１１９のバス番号（“００”）を生成し、スイッチ制御回路１１３と終了条件制御回路１１４に送信する。
【００９４】
当該バス番号（“００”）を受信すると、スイッチ制御回路１１３は、
スレーブバス１５ａと接続するスイッチ１２１をオンとし、他の全てのスイッチ１２２〜１２４をオフとするように、各スイッチ１２１〜１２４の制御を行う。この結果、スイッチ制御タイミング１４７において、マスタバス１２とデータ送受信の対象であるスレーブバス１５ａとの接続のみが維持され、データ送受信の対象ではない他の全てのスレーブバス１５ｂ〜１５ｄとの接続は切断される。
【００９５】
一方、終了条件制御回路１１４は、当該バス番号（“００”）を受信すると、データ送受信の対象ではないスレーブバス１５ｂ〜１５ｄのいずれかと接続する終了条件発生回路１３１〜１３４のそれぞれに、終了条件発生のためのトリガ信号を送信する。終了条件発生回路１３１〜１３４は、当該トリガ信号を受信すると、自身が接続するスレーブバスに終了条件信号を送信し、データの送受信を終了させる。即ち、終了条件発生回路１３２〜１３４は、トリガ信号を受信すると、各スレーブバス１５ｂ〜１５ｄのシリアルクロックライン（ＳＣＬ）を高レベルに維持した状態で、シリアルデータライン（ＳＤＡ）を低レベルから高レベルに変化させ、スレーブバス１５ｂ〜１５ｄの何れかと接続するスレーブデバイスとのデータ送受信を終了させる。
【００９６】
これにより、スレーブバス１５ｂ〜１５ｄに接続されているスレーブデバイスのそれぞれは、スレーブバス上に送信された実アドレスと自分のアドレスが一致していれば応答しようとするところ、終了条件信号５２により強制的に終了させることができる。
【００９７】
一方、データ送受信の対象であるスレーブバス１５ａと接続する終了条件発生回路１３１には、当該トリガ信号は送信されず、データの送受信を継続させる。スレーブバス１５ａ上のスレーブデバイス１０３ａは、アドレスデコード回路１１２から送信された実アドレス（“０１０１０００”）に基づいて、データの送受信対象が自分であることを認識し、マスタデバイス１１とスレーブデバイス１０３ａとの間でデータの送受信処理を開始する。
【００９８】
その後、マスタデバイス１１とスレーブデバイス１０３ａとの間で、データの送受信が終了すると、マスタデバイス１１はマスタバス１２を介して終了条件信号５２を送信する。アドレスデコード回路１１２は、マスタデバイス１１からの終了条件信号５２を受信すると、データの送受信が終了したと判断して、スイッチ制御回路１１３にトリガ信号を送信する。即ち、スイッチ制御回路１１３は、マスタバス１２と全てのスレーブバス１５ａ〜１５ｄが接続されるように、全てのスイッチ１２１〜１２４をオンにし、初期状態に戻す制御を行う。
【００９９】
次に、マスタデバイス１１からマスタバス１２上にスレーブアドレスが送信され、スレーブバス１６に接続されているスレーブデバイス２３，２４のうち、そのスレーブアドレスのスレーブデバイスとマスタデバイス１１との通信が可能となる。
【０１００】
なお、マスタバス１２がスレーブバス１６（バス番号３）と接続されている状態から、さらに開始条件信号５１および終了条件信号５２の送信動作が行われた場合、初期状態（初期設定）に戻り、マスタバス１２はスレーブバス１３（バス番号０）と接続される。
【０１０１】
上記のように、バス制御装置１では、マスタバス１２と接続するスレーブバスとして任意のスレーブバスを選択した場合でも、開始条件信号５１および終了条件信号５２により、マスタバス１２を上記任意のスレーブバスに接続することができる。したがって、スレーブアドレスおよびバス番号を指定することによってマスタバス１２と接続する場合を切り替えるような従来の構成と比較して、マスタバス１２をいずれかのスレーブバス１３〜１６と接続するまでの速度を速くすることができる。
【０１０２】
また、終了条件信号５２によってマスタバス１２と接続するスレーブバスを切り替えることができるので、同じスレーブアドレスのスレーブデバイスであっても、異なるスレーブバスに接続されていれば、それらスレーブデバイスを区別して通信することができる。
【０１０３】
また、スレーブアドレスは７ビットあるので、Ｉ２Ｃバスでは、仕様上、アドレスの組み合せは１２８個しか存在しない。しかしながら、バス制御装置１では、スレーブバス１３〜１６を切り替えることにより、７ビットのアドレスにて１２８個を超えるスレーブデバイスとの通信が可能になる。
【０１０４】
上記のように、本実施の形態のバス制御装置２では、第１バス制御装置７１と第２バス制御装置６１〜６４とを備え、第１バス制御装置７１では、終了条件信号５２の回数によりマスタバス１２と接続する第２バス制御装置６１〜６４を選択し、第２バス制御装置６１〜６４では、マスタデバイス１１が通信するスレーブデバイスのスレーブアドレスに基づいて、スレーブバス（スレーブバス１３ａ〜１３ｄ，１４ａ〜１４ｄ，１５ａ〜１５ｄ，１６ａ〜１６ｄ）を選択し、かつ目標のスレーブデバイスとの通信を可能にしている。
【０１０５】
これにより、マスタデバイス１１は１２８個を超えるスレーブデバイス（例えば１２８×４＝５１２個のスレーブデバイス）と通信可能であり、かつその通信において高い通信速度を維持することができる。
【０１０６】
すなわち、図１に示したバス制御装置１では、スレーブバスの数が多くなると、スレーブバスを切り替えるための開始条件信号５１および終了条件信号５２の送信回数が多くなる。このため、スレーブバスの数の増加に伴って、通信速度が低下し、従来技術に対して通信速度が速いという優位性が低下していく。しかしながら、バス制御装置２では、スレーブバスの数の増加に伴う通信速度の低下を抑制でき、スレーブバスの数が増加した場合であっても、従来技術に対して通信速度の点において高い優位性を維持することができる。
【０１０７】
ここで、バス制御装置２５、第１バス制御装置７１および第２バス制御装置６３の各ブロック、特に終了条件検出回路３５、終了条件カウンタ３６、スイッチ制御回路３７、アドレスデコード回路１１２、スイッチ制御回路１１３および終了条件制御回路１１４は、ハードウェアロジックによって構成してもよいし、次のようにＣＰＵを用いてソフトウェアによって実現してもよい。
【０１０８】
すなわち、バス制御装置２５，７１，６３は、各機能を実現する制御プログラムの命令を実行するＣＰＵ（central processing unit）、上記プログラムを格納したＲＯＭ（read only memory）、上記プログラムを展開するＲＡＭ（random access memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるバス制御装置２５，７１，６３の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記バス制御装置２５，７１，６３に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０１０９】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク系、ＩＣカード（メモリカードを含む）／光カード等のカード系、あるいはマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ系などを用いることができる。
【０１１０】
また、バス制御装置２５，７１，６３を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【０１１１】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０１１２】
本発明は、マスタバスと複数のスレーブバスを介して通信の制御を行なうバス制御装置に利用可能であり、特にＩ２Ｃバスを介したデータ送受信において、１つのマスタデバイスと接続可能なスレーブデバイスの数の制限をなくしたバス制御装置に利用可能である。
【符号の説明】
【０１１３】
１      バス制御装置
２      バス制御装置
１１      マスタデバイス
１２      マスタバス
13〜16      スレーブバス（第１スレーブバス）
13a〜13d    スレーブバス（第２スレーブバス）
14a〜14d    スレーブバス（第２スレーブバス）
15a〜15d    スレーブバス（第２スレーブバス）
16a〜16d    スレーブバス（第２スレーブバス）
17〜24      スレーブデバイス
31〜34      スイッチ（第１スチッチ）
３５      終了条件検出回路（終了条件検出部）
３６      終了条件カウンタ（終了条件カウント部）
３７      スイッチ制御回路（スイッチ制御部）
５１      開始条件信号
５２      終了条件信号
61〜64      第２バス制御装置（第２バス制御手段）
７１      第１バス制御装置（第１バス制御手段）
101a〜101e  スレーブデバイス
102a〜102e  スレーブデバイス
103a〜103e  スレーブデバイス
104a〜104e  スレーブデバイス
１１１      アドレスデコードテーブル
１１２      アドレスデコード回路（デコード部）
１１３      スイッチ制御回路（接続制御部）
１１４      終了条件制御回路（接続制御部）
121〜124    スイッチ（第２スイッチ）
131〜134    終了条件発生回路
【図１】
2013239043.tif 000003
【図２】
2013239043.tif 000004
【図３】
2013239043.tif 000005
【図４】
2013239043.tif 000006
【図５】
2013239043.tif 000007
【図６】
2013239043.tif 000008
【図７】
2013239043.tif 000009
【図８】
2013239043.tif 000010
【図９】
2013239043.tif 000011
【図１０】
2013239043.tif 000012
【図１１】
2013239043.tif 000013