(57)【要約】【課題】クロスバスイッチを用いたバスシステムにおいて、回路規模を増大させることなくスレーブバスとスレーブモジュールとの接続構成の最適化をはかる。【解決手段】スレーブモジュールインタフェースユニット４１ａは、マスタモジュール＃１（１１）〜＃３（１３）が、スレーブモジュール＃１（４１）〜＃４（４４）毎にバスブリッジ＃１（２１）〜＃３（２３）数分の異なる写像アドレスが割当てられるメモリマップに基づき複数のスレーブモジュールのいずれかをアクセスすると、複数のバスブリッジからスレーブバス３０（３０ａ，３０ｂ，３０ｃ）を介して出力されるバス信号の一つを、設定されたスレーブ選択信号に基づき選択する。【選択図】図１
2013242787.tif 000002
【特許請求の範囲】
【請求項１】
複数のマスタモジュールと、
前記複数のマスタモジュールに接続されるクロスバスイッチと、
前記クロスバスイッチに接続される複数のバスブリッジと、
前記複数のバスブリッジに接続されるスレーブバスと、
前記スレーブバスに接続される複数のスレーブモジュールと、
からなるバスシステムであって、
前記マスタモジュールは、
前記スレーブモジュール毎に前記バスブリッジ数分の異なる写像アドレスが割当てられるメモリマップに基づき、前記クロスバスイッチを介して前記複数のスレーブモジュールのいずれかをアクセスし、
前記スレーブモジュールの各々は、
前記複数のバスブリッジから前記スレーブバスを介して出力されるバス信号の一つを、設定されたスレーブ選択信号に基づき選択するスレーブモジュールインタフェースユニットを備えることを特徴とするバスシステム。
【請求項２】
前記スレーブモジュールインタフェースユニットは、
前記バスブリッジから出力される前記スレーブ選択信号のいずれかがアサートされた場合に、前記スレーブモジュールのアクセスに使用するチップセレクトを生成し、前記スレーブ選択信号から、前記スレーブモジュール内部のアクセスに使用するスレーブ入力信号を選択すると共に、前記バスブリッジのバス出力信号を選択することを特徴とする請求項１記載のバスシステム。
【請求項３】
前記スレーブモジュールインタフェースユニットは、
前記複数のバスブリッジからのスレーブ選択信号のアサートを検出すると、前記スレーブモジュールのアクセスに使用するチップセレクトを生成し、前記スレーブ選択信号の複数のアサートに対して設定される優先度にしたがい、前記スレーブモジュールのアクセスに使用するスレーブ入力信号を選択すると共に、前記スレーブ選択信号から前記バスブリッジへのバス出力信号を選択し、前記優先度にしたがい前記スレーブモジュールによって選択された前記バスブリッジに選択応答を返し、選択されていないバスブリッジにウエイト応答を返すことを特徴とする請求項１記載のバスシステム。
【請求項４】
複数のマスタモジュールと、前記複数のマスタモジュールに接続されるクロスバスイッチと、前記クロスバスイッチに接続される複数のバスブリッジと、前記複数のバスブリッジに接続されるスレーブバスと、前記スレーブバスに接続される複数のスレーブモジュールと、からなるバスシステムにおいて、前記複数のスレーブモジュールのそれぞれに設けられるスレーブモジュールインタフェースユニットであって、
前記マスタモジュールが、前記スレーブモジュール毎に前記バスブリッジ数分の異なる写像アドレスが割当てられるメモリマップに基づき、前記クロスバスイッチを介して前記複数のスレーブモジュールのいずれかをアクセスすると、前記複数のバスブリッジから前記スレーブバスを介して出力されるバス信号の一つを、設定されたスレーブ選択信号に基づき選択することを特徴とするスレーブモジュールインタフェースユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロスバスイッチを用いたバスシステムにおいて、スレーブバスとスレーブモジュールとの間の接続構成の最適化をはかった、バスシステムおよびスレーブモジュールインタフェースユニットに関する。
【背景技術】
【０００２】
バス使用権の競合を回避するバス構成として、従来、クロスバスイッチが知られている。クロスバスイッチによる回路構成を用いる場合、バス競合が発生しないため、データ転送性能が向上する。すなわち、クロスバスイッチに接続される複数のマスタモジュールのうち、あるマスタモジュールが、あるスレーブモジュールにアクセスしようとし、同時に他のマスタモジュールが他のスレーブモジュールにアクセスしようとした場合において、クロスバスイッチ内部には並列に複数のバスが設けられているため、データ転送経路が重ならず、バス使用権の競合が生じない。
【０００３】
しかしながら、複数のマスタモジュール間でバス使用権の競合を全く発生させないように構成するためには、クロスバスイッチ内部において、マスタモジュール数と同数の並列なバスを設ける必要がある。この場合、一組のバスは、データ、アドレス、コントロールのためのラインが複数本で構成されるため、多数のバスを含むクロスバスイッチは、ＬＳＩ実装時に必要な配線数が非常に多くなる。したがって、クロスバスイッチに接続されるモジュール数の増加が要因でクロスバスイッチによる回路構成は必ずしも効果的ではなく、ＬＳＩ内部の配線配置のための制約が厳しくなり、その結果、ＬＳＩ回路面積の増大や動作周波数の低下を招き、システム全体としてのデータ転送性能が低下してしまう。
【０００４】
この回路面積の増大を防ぎながらバス使用権の競合が発生しにくい状況を実現する構成として、例えば、特許文献１に開示されるように、クロスバスイッチおよびバスブリッジ構成を用いたバスシステム構成が知られている。特許文献１に開示されたバスシステムによれば、システム全体がｎ（任意の２以上整数）個のサブシステムに分割され、ある複数のマスタモジュールとスレーブモジュールとから構成されるある第１のサブシステムと、他の複数のマスタモジュールとスレーブモジュールとから構成される他のサブシステムとからなり、第１のサブシステムのクロスバスイッチと第２のサブシステムのクロスバスイッチとが多重のバスブリッジによって結合されている。
【０００５】
このバス構成により、システム要求に応じて特定のスレーブモジュールへのデータ転送に関してバス使用権の競合を少なくし、データ転送品質を維持することができる。また、データ転送要求に応じて多重のバスブリッジを動的に割り当てることで、特に高い転送能力を必要とする優先度の高いデータ転送についてバス使用権の競合をできるだけ少なくし、データ転送性能を維持することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−１００８５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ここで、プロセス制御用に使用されるフィールド機器を、ＤＣＳ（Distributed  Control  System）やＳＣＡＤＡ（Supervisory  Control  And  Data  Acquisition）等の上位装置に接続するために上記したバスシステムを構築することを想定する。フィールド機器は、製品毎にスレーブモジュールの種類や接続数が異なり、また、製品毎にスレーブモジュールのデータ転送量、転送速度、転送優先度が異なるといった特徴を持つ。一方、スレーブモジュールの種類、接続数、データ転送量、転送速度、転送優先度は、製品毎に固定であるという特徴を持つ。
【０００８】
図６，図７に、上記したフィールド機器を接続したバスシステムの構成例が示されている。図６、図７に示すバスシステム１０Ａ，１０Ｂは、いずれも、複数のマスタモジュール＃１（１１），＃２（１２），＃３（１３）と、この複数のマスタモジュール＃１（１１），＃２（１２），＃３（１３）に接続されるクロスバスイッチ２０と、クロスバスイッチ２０に接続される複数のバスブリッジ＃１（２１），＃２（２２），＃３（２３）と、この複数のバスブリッジ＃１（２１），＃２（２２），＃３（２３）に接続されるスレーブバス３０ａ，３０ｂ，３０ｃと、このスレーブバス３０ａ，３０ｂ，３０ｃに接続される複数のスレーブモジュール＃１（４１），＃２（４２），＃３（４３），＃４（４４）と、から構成される。
【０００９】
図６に示すバスシステム１０Ａにおいて、スレーブモジュール＃１（４１），＃２（４２），＃３（４３），＃４（４４）のインタフェースとして、「センサ入力」、「状態出力」、「通信１」、「通信２」があるものと仮定する。「センサ入力」のインタフェースはスレーブモジュール＃１（４１）、「状態出力」のインタフェースはスレーブモジュール＃２（４２）、「通信１」のインタフェースはスレーブモジュール＃３（４３）、「通信２」のインタフェースはスレーブモジュール＃４（４４）のそれぞれに対応する。
【００１０】
この場合、スレーブモジュール＃１（４１），＃２（４２），＃３（４３），＃４（４４）として接続されるフィールド機器は、測定対象の状態を示すセンサからの入力「センサ入力」と、そのセンサからの入力データによって測定対象の状態を計測し結果を出力する「状態出力」とが通信優先度が高い。したがって、スレーブモジュール＃１（４１）と＃２（４２）を、バスブリッジ＃１（２１）と＃２（２２）のそれぞれに単独で接続している。その他の「通信１」、「通信２」は、「センサ入力」及び「状態出力」よりは通信優先度が低いため、スレーブモジュール＃３（４３）と＃４（４４）を、バスブリッジ＃３（２３）に共通に接続している。
【００１１】
一方、図７に示すバスシステ１０Ｂにおいて、インタフェースとして、図６に示すバスシステム同様、「センサ入力」、「通信１」、「通信２」があるものと仮定する。但し、「センサ入力」のインタフェースはスレーブモジュール＃３（４３）、「状態出力」のインタフェースはスレーブモジュール＃４（４４）、「通信１」のインタフェースはスレーブモジュール＃１（４１）、「通信２」のインタフェースはスレーブモジュール＃２（４２）のそれぞれ対応している。このとき、通信の優先度に関して図６に示すバスシステム１０Ａと同様であると仮定すれば、そのバス構造は図７に示すようになる。
【００１２】
このように、各種フィールド機器間で製品種類間に差異はあるが、従来、製品毎に共通利用されるスレーブバスインタフェース用のＩＣチップ（以下、スレーブモジュールインタフェースユニットという）を開発することにより、設計期間の短縮、品質の向上、コスト削減をはかっている。ここで、製品毎に共通利用されるスレーブモジュールインタフェースユニット用のＩＣチップにおいて、図６，図７のバス構成のいずれにも対応させるためには上記した特許文献１に開示されたバスシステムによっても実現が可能である。
【００１３】
しかしながらこの場合、マスタモジュール１（１１），＃２（１２），＃３（１３）に接続されるクロスバスイッチ２０の他に、スレーブモジュール＃１（４１），＃２（４２），＃３（４３），＃４（４４）が接続される更なるクロスバスイッチを必要とし、この更なるクロスバスイッチの構成が複雑になって回路規模が増大する。低消費電力化が要求されるフィールド機器では、この回路規模の増大は影響が大きく、コスト増加の面でも不都合が生じる。
【００１４】
本発明は上記した課題を解決するためになされたものであり、クロスバスイッチを用いたバスシステムにおいて、回路規模を増大させることなくスレーブバスとスレーブモジュールとの間の接続構成の最適化をはかった、バスシステムおよびスレーブモジュールインタフェースユニットを提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記した課題を解決するために本発明は、複数のマスタモジュールと、前記複数のマスタモジュールに接続されるクロスバスイッチと、前記クロスバスイッチに接続される複数のバスブリッジと、前記複数のバスブリッジに接続されるスレーブバスと、前記スレーブバスに接続される複数のスレーブモジュールと、からなるバスシステムであって、前記マスタモジュールは、前記スレーブモジュール毎に前記バスブリッジ数分の異なる写像アドレスが割当てられるメモリマップに基づき、前記クロスバスイッチを介して前記複数のスレーブモジュールのいずれかをアクセスし、前記スレーブモジュールの各々は、前記複数のバスブリッジから前記スレーブバスを介して出力されるバス信号の一つを、設定されたスレーブ選択信号に基づき選択するスレーブモジュールインタフェースユニットを備えることを特徴とする。
【００１６】
本発明によれば、スレーブモジュールインタフェースユニットは、マスタモジュールが、スレーブモジュール毎にバスブリッジ数分の異なる写像アドレスが割当てられるメモリマップに基づき複数のスレーブモジュールのいずれかをアクセスすると、複数のバスブリッジからスレーブバスを介して出力されるバス信号の一つを、例えば、外部接続されるスイッチによる設定、もしくはマスタモジュールによって生成されるスレーブ選択信号に基づき選択する。このようにスレーブモジュール毎にアクセスするアドレス領域を変更することで、スレーブモジュール毎に共通利用するスレーブモジュールインタフェースユニットのバス構成を可変にすることができる。
【００１７】
したがって、複数のバスブリッジと複数のスレーブモジュール間にクロスバスイッチを使用することなく、スレーブバスとスレーブモジュールにおける接続構成の最適化を、各スレーブモジュール間で共通利用可能なスレーブモジュールインタフェースユニットで実現することが可能になる。したがって、共通部品の利用による開発費用、部品管理費用のコスト削減が実現できる。また、クロスバスイッチを使用しないことで回路構成が簡素化され、回路規模縮小のためにコスト削減が実現できる。
【００１８】
本発明において、前記スレーブモジュールインタフェースユニットは、前記バスブリッジから出力される前記スレーブ選択信号のいずれかがアサートされた場合に、前記スレーブモジュールのアクセスに使用するチップセレクトを生成し、前記スレーブ選択信号から、前記スレーブモジュール内部のアクセスに使用するスレーブ入力信号を選択すると共に、前記バスブリッジのバス出力信号を選択することを特徴とする。本発明によれば、各スレーブモジュールにアクセスするマスタモジュールは１個の特定のマスタモジュールであり、複数のマスタモジュールが同時に同一スレーブモジュールにアクセスしないことが保証されている場合に、回路規模を増大させることなくスレーブバスとスレーブモジュール間の接続構成の最適化を実現することができる。
【００１９】
本発明において、前記スレーブモジュールインタフェースユニットは、前記複数のバスブリッジからのスレーブ選択信号のアサートを検出すると、前記スレーブモジュールのアクセスに使用するチップセレクトを生成し、前記スレーブ選択信号の複数のアサートに対して設定される優先度にしたがい、前記スレーブモジュールのアクセスに使用するスレーブ入力信号を選択すると共に、前記スレーブ選択信号から前記バスブリッジへのバス出力信号を選択し、前記優先度にしたがい前記スレーブモジュールによって選択された前記バスブリッジに選択応答を返し、選択されていないバスブリッジにウエイト応答を返すことを特徴とする。本発明によれば、複数のマスタモジュールが同時に同一スレーブモジュールにアクセスした場合でも、スレーブバスの優先度にしたがって処理することで、優先度の低いスレーブバスには、その間スレーブモジュールインタフェースユニットがバスウェイト信号を生成出力することによってアクセス競合を回避することができる。
【００２０】
上記した課題を解決するために本発明は、複数のマスタモジュールと、前記複数のマスタモジュールに接続されるクロスバスイッチと、前記クロスバスイッチに接続される複数のバスブリッジと、前記複数のバスブリッジに接続されるスレーブバスと、前記スレーブバスに接続される複数のスレーブモジュールと、からなるバスシステムにおいて、前記複数のスレーブモジュールのそれぞれに設けられるスレーブモジュールインタフェースユニットであって、前記マスタモジュールが、前記スレーブモジュール毎に前記バスブリッジ数分の異なる写像アドレスが割当てられるメモリマップに基づき、前記クロスバスイッチを介して前記複数のスレーブモジュールのいずれかをアクセスすると、前記複数のバスブリッジから前記スレーブバスを介して出力されるバス信号の一つを、設定されたスレーブ選択信号に基づき選択することを特徴とする。
【００２１】
本発明によれば、スレーブモジュールインタフェースユニットは、マスタモジュールが、スレーブモジュール毎にバスブリッジ数分の異なる写像アドレスが割当てられるメモリマップに基づき複数のスレーブモジュールのいずれかをアクセスすると、複数のバスブリッジからスレーブバスを介して出力されるバス信号の一つを、例えば、外部接続されるスイッチにより設定され、もしくはマスタモジュールによって生成されるスレーブ選択信号に基づき選択する。このようにスレーブモジュール毎にアクセスするアドレス領域を変更することで、スレーブモジュール毎に共通利用するスレーブモジュールインタフェースユニットのバス構成を可変にすることができ、したがって、回路規模を増大させることなくスレーブバスとスレーブモジュール間の接続構成の最適化を実現することができる。
【発明の効果】
【００２２】
本発明によれば、クロスバスイッチを用いたバスシステムにおいて、回路規模を増大させることなくスレーブバスとスレーブモジュールとの接続構成の最適化をはかった、バスシステムおよびスレーブモジュールインタフェースユニットを提供することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施の形態１に係るバスシステムの構成を示すブロック図である。
【図２】本発明の実施の形態１に係るスレーブモジュールインタフェースユニットの構成を示す図である。
【図３】本発明の実施の形態１に係るバスシステムが使用するメモリマップを示す図である。
【図４】本発明の実施の形態２に係るスレーブモジュールインタフェースユニットの構成を示す図である。
【図５】本発明の実施の形態３に係るスレーブモジュールインタフェースユニットの構成を示す図である。
【図６】フィールド機器が接続されるバスシステムの構成の一例を示す図である。
【図７】フィールド機器が接続されるバスシステムの構成の他の例を示す図である。
【発明を実施するための形態】
【００２４】
以下、添付図面を参照して本発明を実施するための実施の形態（以下、単に本実施形態という）について詳細に説明する。
【００２５】
（実施形態１の構成）
図１は、本実施形態１に係るバスシステム１０の構成を示すブロック図である。本実施形態に係るバスシステム１０は、複数のマスタモジュール＃１（１１），＃２（１２），＃３（１３）と、この複数のマスタモジュール＃１（１１），＃２（１２），＃３（１３）に接続されるクロスバスイッチ２０と、クロスバスイッチ２０に接続される複数のバスブリッジ＃１（２１），＃２（２２），＃３（２３）と、この複数のバスブリッジ＃１（２１），＃２（２２），＃３（２３）に接続されるスレーブバス３０（３０ａ，３０ｂ，３０ｃ）と、このスレーブバス３０に接続される複数のスレーブモジュール＃１（４１），＃２（４２），＃３（４３），＃４（４４）と、から構成される。
【００２６】
クロスバスイッチ２０は、バスインタフェース２０１〜２０６を内蔵する。クロスバスイッチ２０が内蔵するバスインタフェース２０１〜２０３はマスタモジュール＃１（１１）〜＃３（１３）に接続され、バスインタフェース２０４〜２０６はバスブリッジ＃１（２１）〜＃３（２３）に接続される。このバスインタフェース２０１〜２０６によりクロスバスイッチ２０内部のシステムバスを切り換え可能に構成することができる。
【００２７】
バスブリッジ＃１（２１）は、スレーブバス＃１（３０ａ）を介して、スレーブモジュール＃１（４１）〜＃４（４４）がそれぞれ内蔵するスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）に、バスブリッジ＃２（２２）は、スレーブバス＃２（２２）を介して、スレーブモジュール＃１（４１）〜＃４（４４）がそれぞれ内蔵するスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）に、バスブリッジ＃３（２３）は、スレーブバス＃３（３０ｃ）を介して、スレーブモジュール＃１（４１）〜＃４（４４）がそれぞれ内蔵するスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）に接続される。
【００２８】
なお、スレーブモジュール＃１（４１）〜＃４（４４）がそれぞれ内蔵するスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）は、図２に示すようにいずれも共通のＩＣチップで構成される。
【００２９】
スレーブバス３０は、スレーブバス＃１（３０ａ）〜＃３（３０ｃ）を含む。スレーブバス＃１（３０ａ）は、チップセレクト＃１、クロック＃１、入力制御信号＃１、アドレス＃１、ライトデータ＃１、出力制御信号＃１、リードデータ＃１のそれぞれが転送される信号線で構成される。チップセレクト＃１、クロック＃１、入力制御信号＃１、アドレス＃１、ライトデータ＃１は、バスブリッジ＃１（２１）からスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）に向かう信号であり、出力制御信号＃１、リードデータ＃１は、スレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）からバスブリッジ＃１（２１）へ向かう信号である。
【００３０】
スレーブバス＃２（３０ｂ）は、チップセレクト＃２、クロック＃２、入力制御信号＃２、アドレス＃２、ライトデータ＃２、出力制御信号＃２、リードデータ＃２がそれぞれ転送される信号線で構成される。チップセレクト＃２、クロック＃２、入力制御信号＃２、アドレス＃２、ライトデータ＃２は、バスブリッジ＃２（２２）からスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）へ向かう信号であり、出力制御信号＃２、リードデータ＃２は、スレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）からバスブリッジ＃２（２２）へ向かう信号である。
【００３１】
スレーブバス＃３（３０ｃ）は、チップセレクト＃３、クロック＃３、入力制御信号＃３、アドレス＃３、ライトデータ＃３、出力制御信号＃３、リードデータ＃３がそれぞれ転送される信号線で構成される。チップセレクト＃３、クロック＃３、入力制御信号＃３、アドレス＃３、ライトデータ＃３は、バスブリッジ＃３（２３）からスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）に向かう信号であり、出力制御信号＃３、リードデータ＃３は、スレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）からバスブリッジ＃３（２３）へ向かう信号である。
【００３２】
図２にスレーブモジュールインタフェースユニット＃１（４１ａ）の内部構成が示されている。図２によれば、スレーブモジュールインタフェースユニット＃１（４１ａ）は、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）と、スレーブバス出力選択回路＃１（４１６）〜＃３（４１８）と、スレーブ＃１選択比較回路４１９と、スレーブ＃２選択比較回路４２０と、スレーブ＃３選択比較回路４２１とを含み構成される。
【００３３】
スレーブバス入力選択回路＃１（４１１）は、スレーブバス＃１（３１ａ）〜＃３（３１ｃ）からチップセレクト＃１〜＃３をそれぞれ入力として得、設定された、例えば、不図示の外部スイッチ、もしくはマスタモジュール＃１（１１）〜＃３（１３）のいずれかにより生成出力されるスレーブバス選択信号により、いずれか一つを選択してスレーブモジュール＃１（４１）へ出力する。ここで出力されるチップセレクトは、スレーブモジュール＃１（４１）内部のアクセスのために使用される。
【００３４】
スレーブバス入力選択回路＃２（４１２）は、スレーブバス＃１（３１ａ）〜＃３（３１ｃ）からクロック＃１〜＃３のそれぞれを入力として得、例えば、不図示の外部スイッチ、もしくはマスタモジュール＃１（１１）〜＃３（１３）により生成出力されるスレーブバス選択信号によりいずれか１つを選択してスレーブモジュール＃１（４１）に出力する。ここで出力されるクロックは、スレーブモジュール＃１（４１）内部のアクセスに使用される。
【００３５】
スレーブバス入力選択回路＃３（４１３）は、スレーブバス＃１（３１ａ）〜＃３（３１ｃ）から入力制御信号＃１〜＃３を入力として得、例えば、不図示の外部スイッチ、もしくはマスタモジュール＃１（１１）〜＃３（１３）により生成出力されるスレーブバス選択信号によりいずれか１つを選択してスレーブモジュール＃１（４１）に出力する。ここで出力される入力制御信号は、スレーブモジュール＃１（４１）内部のアクセスに使用される。
【００３６】
スレーブバス入力選択回路＃４（４１４）は、スレーブバス＃１（３１ａ）〜＃３（３１ｃ）を介してそれぞれ出力されるアドレス＃１〜＃３を入力として得、例えば、不図示の外部スイッチ、もしくはマスタモジュール＃１（１１）〜＃３（１３）により生成出力されるスレーブバス選択信号によりいずれか１つを選択してスレーブモジュール＃１（４１）に出力する。ここで出力されるアドレスは、スレーブモジュール＃１（４１）内部のアクセスに使用される。
【００３７】
スレーブバス入力選択回路＃５（４１５）は、スレーブバス＃１（３１ａ）〜＃３（３１ｃ）を介して出力されるライトデータ＃１〜＃３を入力として得、例えば、不図示の外部スイッチ、もしくはマスタモジュール＃１（１１）〜＃３（１３）により生成出力されるスレーブバス選択信号によりいずれか１つを選択してスレーブモジュール＃１（４１）に供給する。ここで出力されるライトデータは、スレーブモジュール＃１（４１）内部のアクセスに使用される。
【００３８】
スレーブ＃１選択比較回路４１９は、例えば、不図示の外部スイッチもしくはマスタモジュール＃１（１１）〜＃３（１３）のいずれかにより生成されるスレーブバス選択信号を入力として得、入力されるスレーブバス選択信号をデコードして、スレーブバス＃１（３０ａ）が選択されていることを示す信号をスレーブバス出力選択回路＃１（４１６）に出力する。スレーブバス出力選択回路＃１（４１６）は、スレーブモジュール＃１（４１）内部から、出力制御信号／リードデータ、およびインアクティブ信号を入力として得、スレーブ＃１選択比較回路４１９から出力されるスレーブバス＃１（３０ａ）が選択されていることを示す信号によりインアクティブ信号と出力制御信号＃１／リードデータ＃１をスレーブバス＃１（３０ａ）に出力する。
【００３９】
スレーブ＃２選択比較回路４２０は、同じくスレーブバス選択信号を入力として得、入力されるスレーブバス選択信号をデコードして、スレーブバス＃２（３０ｂ）が選択されていることを示す信号をスレーブバス出力選択回路＃２（４１７）に出力する。スレーブバス出力選択回路＃２（４１７）は、スレーブモジュール＃２（４２）内部から、出力制御信号／リードデータ、およびインアクティブ信号を入力として得、スレーブ＃２選択比較回路４２０から出力されるスレーブバス＃２（３０ｂ）が選択されていることを示す信号によりインアクティブ信号と出力制御信号＃２／リードデータ＃２をスレーブバス＃２（３０ｂ）に出力する。
【００４０】
スレーブ＃３選択比較回路４２１は、同じくスレーブバス選択信号を入力として得、入力されるスレーブバス選択信号をデコードして、スレーブバス＃３（３０ｃ）が選択されていることを示す信号をスレーブバス出力選択回路＃３（４１８）に出力する。スレーブバス出力選択回路＃３（４１８）は、スレーブモジュール＃３（４３）内部から、出力制御信号／リードデータ、およびインアクティブ信号を入力として得、スレーブ＃３選択比較回路４２１から出力されるスレーブバス＃３（３０ｃ）が選択されていることを示す信号によりインアクティブ信号と出力制御信号＃３／リードデータ＃３をスレーブバス＃３（３０ｃ）に出力する。
【００４１】
なお、スレーブモジュールインタフェースユニット＃２（４２ａ）、＃３（４３ａ）、＃４（４４ａ）についても上記したスレーブモジュールインタフェースユニット＃１（４１ａ）と同じ構成であり、重複を回避する意味で説明を省略する。
【００４２】
（実施形態１の動作）
以下に説明する本実施形態１に係るバスシステム１０の動作に先立ち、マスタモジュール＃１（１１）、＃２（１２）、または＃３（１３）からみたメモリマップについて、図３を参照して説明する。図３（ａ）に示すメモリマップによれば、スレーブモジュール＃１（４１）〜＃４（４４）毎にバスブリッジ＃１（２１）〜＃３（２３）数分の異なる写像アドレスが割当てられている。
【００４３】
具体的に、スレーブモジュール＃１（４１）のアドレス範囲０ｘＦＦＦＦ４０００〜０ｘＦＦＦＦ４ＦＦＦ、スレーブモジュール＃２（４２）のアドレス範囲０ｘＦＦＦＦ５０００〜０ｘＦＦＦＦ５ＦＦＦ、スレーブモジュール＃３（４３）のアドレス範囲０ｘＦＦＦＦ_６０００〜０ｘＦＦＦＦ_６ＦＦＦ、スレーブモジュール＃４（４４）のアドレス範囲０ｘＦＦＦＦ_７０００〜０ｘＦＦＦＦ_７ＦＦＦは、バスブリッジ＃１（２１）に割当てられている。
【００４４】
スレーブモジュール＃１（４１）のアドレス範囲０ｘＦＦＦＥ_４０００〜０ｘＦＦＦＥ_４ＦＦＦ、スレーブモジュール＃２（４２）のアドレス範囲０ｘＦＦＦＥ_５０００〜０ｘＦＦＦＥ_５ＦＦＦ、スレーブモジュール＃３（４３）のアドレス範囲０ｘＦＦＦＥ_６０００〜０ｘＦＦＦＥ_６ＦＦＦ、スレーブモジュール＃４（４４）のアドレス範囲０ｘＦＦＦＥ_７０００〜０ｘＦＦＦＥ_７ＦＦＦは、バスブリッジ＃２（２１）に割当てられている。
【００４５】
スレーブモジュール＃１（４１）のアドレス範囲０ｘＦＦＦＤ_４０００〜０ｘＦＦＦＤ_４ＦＦＦ、スレーブモジュール＃２（４２）のアドレス範囲０ｘＦＦＦＤ_５０００〜０ｘＦＦＦＤ_５ＦＦＦ、スレーブモジュール＃３（４３）のアドレス範囲０ｘＦＦＦＤ_６０００〜０ｘＦＦＦＤ_６ＦＦＦ、スレーブモジュール＃４（４４）のアドレス範囲０ｘＦＦＦＤ_７０００〜０ｘＦＦＦＤ_７ＦＦＦは、バスブリッジ＃３（３１）に割当てられている。
【００４６】
マスタモジュール＃１（１１）〜＃３（１３）からスレーブモジュール＃１（４１）〜＃４（４４）に対するアクセスは、図３（ａ）のメモリマップにしたがって実行される。また、クロスバスイッチ２０が内蔵するバス使用権のアクセス競合を調停するバスアービタ（図示省略）もこのメモリマップにしたがって動作する。図３（ｂ）に、図６のバスシステム１０Ａの構成を実現する場合のメモリマップが、図３（ｃ）に、図７のバスシステム１０Ｂの構成を実現する場合のメモリマップがそれぞれ示されている。
【００４７】
まず、本実施形態１に係るバスシステム１０が、図６に示すバスシステム１０Ａの構成を実現する場合の動作について説明する。すなわち、マスタモジュール＃１（１１）〜＃３（１３）が、図３（ｂ）に示すメモリマップに定義されたアドレスを使用してスレーブモジュール＃１（４１）〜＃４（４４）をアクセスする場合の動作から説明する。
【００４８】
図３（ｂ）のメモリマップによれば、マスタモジュール＃１（１１）〜＃３（１３がスレーブモジュール＃１（４１）をアクセスする場合、アドレス０ｘＦＦＦＦ_４０００〜０ｘＦＦＦＦ_４ＦＦＦを、スレーブモジュール＃２（４２）をアクセスする場合、アドレス０ｘＦＦＦＥ_５０００〜０ｘＦＦＦＥ_５ＦＦＦを、スレーブモジュール＃３（４３）をアクセスする場合、アドレス０ｘＦＦＦＤ_６０００〜０ｘＦＦＦＤ_６ＦＦＦを、スレーブモジュール＃４（４４）をアクセスする場合、アドレス０ｘＦＦＦＤ_７０００〜０ｘＦＦＦＤ_７ＦＦＦをそれぞれ使用する。
【００４９】
バスシステム１０は、上記したメモリマップの定義の他に、ユーザによる外部端子（スイッチ）設定や、マスタモジュール＃１（１１）〜＃３（１３）のいずれからかによる内部レジスタ設定等により、図６に示すバス構成にしたがうスレーブバス選択信号の設定を行う。具体的に、スレーブモジュールインタフェースユニット＃１（４１ａ）のスレーブバス選択信号をスレーブバス＃１選択状態に、スレーブモジュールインタフェースユニット＃２（４２ａ）のスレーブバス選択信号をスレーブバス＃２選択状態に、スレーブモジュールインタフェースユニット＃３（４３ａ）のスレーブバス選択信号をスレーブバス＃３選択状態に、スレーブモジュールインタフェースユニット＃４（４４ａ）のスレーブバス選択信号をスレーブバス＃３選択状態に、それぞれ設定する。
【００５０】
まず、マスタモジュール＃１（１１）〜＃３（１３）が、アドレス０ｘＦＦＦＦ_４０００〜０ｘＦＦＦＦ_４ＦＦＦを使用してスレーブモジュール＃１（４１）をアクセスする場合の動作から説明する。マスタモジュール＃１（１１）〜＃３（１３）のいずれかがアクセス要求を発行すると、クロスバスイッチ２０は、図３（ｂ）に示したメモリマップにしたがい、バスインタフェース２０１〜２０３からのアクセスをバスインタフェース２０４に伝達する。マスタモジュール＃１（１１）〜＃３（１３）からのアクセスは、クロスバスイッチ２０のバスインタフェース２０４からバスブリッジ＃１（２１）に伝達される。
【００５１】
バスブリッジ＃１（２１）に伝達されたアクセス要求は、スレーブバス＃１（３０ａ）に伝達される。スレーブバス＃１（３０ａ）に伝達されたアクセス要求は、スレーブモジュールインタフェースユニット＃１（４１ａ）に伝達される。ここで、スレーブモジュールインタフェースユニット＃１（４１ａ）は、スレーブバス選択信号がスレーブバス＃１選択状態に設定されているため、スレーブバス＃１（３０ａ）からのアクセスが、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択され、スレーブモジュール＃１（４１）内部へのアクセスに使用される。同様に、スレーブバス選択信号がスレーブバス＃１選択状態に設定されているため、スレーブバス出力選択回路＃１（４１６）により、スレーブバス＃１（３０ａ）へ出力制御信号およびリードデータが出力される。
【００５２】
このとき、スレーブモジュールインタフェースユニット＃２（４２ａ）〜＃４（４４ａ）は、スレーブバス選択信号がスレーブバス＃１選択状態に設定されていないため、スレーブバス＃１（３０ａ）からのアクセスは、スレーブバス入力選択回路＃２（４１２）〜＃５（４１５）で選択されず、したがって、スレーブモジュール＃２（４２）〜＃４（４４）内部へのアクセスとして伝達されない。同様に、スレーブバス選択信号がスレーブバス＃１選択状態に設定されていないため、スレーブバス出力選択回路＃１（４１６）でインアクティブ信号が選択され、スレーブバス＃１（３０ａ）にインアクティブ信号が出力される。
【００５３】
次に、スレーブモジュール＃２（４２）へのアクセスについて説明する。まず、マスタモジュール＃１（１１）〜＃３（１３）は、アドレス０ｘＦＦＦＥ_５０００〜０ｘＦＦＦＥ_５ＦＦＦを使用することによりクロスバスイッチ２０にアクセス要求を発行する。クロスバスイッチ２０は、マスタモジュール＃１（１１）〜＃３（１１）のいずれからかアクセス要求を受信すると、図３（ｂ）に示したメモリマップにしたがい、バスインタフェース２０１〜２０３からのアクセス要求をバスインタフェース２０５に伝達する。マスタモジュール＃１（１１）〜＃３（１３）からのアクセス要求は、バスインタフェース２０５からバスブリッジ＃２（２２）に伝達される。
【００５４】
バスブリッジ＃２（２２）に伝達されたアクセス要求は、スレーブバス＃２（３０ｂ）に伝達される。そして、スレーブバス＃２（３０ｂ）に伝達されたアクセス要求は、スレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）に伝達される。スレーブモジュールインタフェースユニット＃２（４２ａ）では、スレーブバス選択信号がスレーブバス＃２選択状態に設定されているため、スレーブバス＃２（３０ｂ）からのアクセスが、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択され、スレーブモジュール＃２（４２）内部へのアクセスに使用される。同様に、スレーブバス選択信号がスレーブバス＃２選択状態に設定されているため、スレーブバス＃２（３０ｂ）へ出力制御信号およびリードデータ、スレーブバス出力選択回路＃２（４１７）で選択され、スレーブバス＃２（３０ｂ）に出力される。
【００５５】
このとき、スレーブモジュールインタフェースユニット＃１（４１ａ）、＃３（４３ａ）、＃４（４４ａ）では、スレーブバス選択信号がスレーブバス＃２選択状態に設定されていないため、スレーブバス＃２（３０ｂ）からのアクセスは、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択されず、したがって、スレーブモジュール＃１（４１）、＃３（４３）、＃４（４４）内部へのアクセスとして伝達されない。同様に、スレーブバス選択信号がスレーブバス＃２選択状態に設定されているため、スレーブバス出力選択回路＃２（４１７）でインアクティブ信号が選択され、スレーブバス＃２（３０ｂ）へインアクティブ信号が出力される。
【００５６】
次に、スレーブモジュール＃３（４３）へのアクセスについて説明する。まず、マスタモジュール＃１（１１）〜＃３（１３）は、アドレス０ｘＦＦＦＤ_６０００〜０ｘＦＦＦＤ_６ＦＦＦを使用してクロスバスイッチ２０にアクセス要求を発行する。クロスバスイッチ２０は、マスタモジュール＃１（１１）〜＃３（１３）からアクセス要求を受信すると、図３（ｂ）のメモリマップにしたがい、バスインタフェース２０１〜２０３からのアクセス要求を、バスインタフェース２０６に伝達する。マスタモジュール＃１（１１）〜＃３（１３）からのアクセス要求は、バスインタフェース２０６からバスブリッジ＃３（２３）に伝達される。バスブリッジ＃３（２３）に伝達されたアクセス要求は、スレーブバス＃３（３０ｃ）に伝達される。
【００５７】
スレーブバス＃３（３０ｃ）に伝達されたアクセス要求は、スレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）に伝達される。スレーブモジュールインタフェースユニット＃３（４３ａ）では、スレーブバス選択信号がスレーブバス＃３選択状態に設定されているため、スレーブバス＃３（３０ｃ）からのアクセスが、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択され、スレーブモジュール＃３（４３）内部へのアクセスに使用される。同様に、スレーブバス選択信号がスレーブバス＃３選択状態に設定されているため、スレーブバス＃３（３０ｃ）へ出力制御信号およびリードデータが、スレーブバス出力選択回路＃３（４１８）で選択され、スレーブバス＃３（３０ｃ）に出力される。
【００５８】
このとき、スレーブモジュールインタフェースユニット＃１（４１ａ）、＃２（４２ａ）では、スレーブバス選択信号がスレーブバス＃３選択状態に設定されていないため、スレーブバス＃３（３０ｃ）からのアクセスは、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択されず、したがって、スレーブモジュール＃１（４１）、＃２（４２）内部へのアクセスとして伝達されない。同様に、スレーブバス選択信号がスレーブバス＃３選択状態に設定されていないため、スレーブバス出力選択回路＃３（４１８）でインアクティブ信号が選択され、スレーブバス＃３（３０ｃ）へインアクティブ信号２２１２が出力される。
【００５９】
一方、スレーブモジュールインタフェースユニット＃４（４４ａ）では、スレーブバス選択信号がスレーブバス＃３選択状態に設定されているため、スレーブバス＃３（３０ｃ）からのアクセスが、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択され、スレーブモジュール＃３（４３）内部へのアクセスに使用される。しかしながら、チップセレクト＃３がスレーブモジュール＃４（４４）宛ではないため、スレーブモジュール＃４（４４）内部へのチップセレクトはアサートされず、したがってアクセス動作はしない。また、スレーブバス選択信号がスレーブバス＃３選択状態に設定されているため、スレーブバス＃３（３０ｃ）へ出力制御信号およびリードデータが、スレーブバス出力選択回路＃３（４１８）で選択され、スレーブバス＃３（３０ｃ）に出力されるが、チップセレクトがアサートされていないため、出力制御信号／リードデータはスレーブバス＃３（３０ｃ）に出力されない。
【００６０】
次に、スレーブモジュール＃４（４４）へのアクセスについて説明する。マスタモジュール＃１（１１）〜＃３（１３）は、アドレス０ｘＦＦＦＤ_７０００〜０ｘＦＦＦＤ_７ＦＦＦを使用してクロスバスイッチ２０へアクセス要求を発行する。クロスバスイッチ２０は、マスタモジュール＃１（１１）〜＃３（１３）のアクセス要求を受信すると、図３（ｂ）のメモリマップにしたがい、バスインタフェース２０１〜２０３からのアクセスを、バスインタフェース２０６に伝達する。以降、上記したスレーブモジュール＃３（４３）へのアクセスと同様な動作を実行することにより、スレーブモジュール＃４（４４）をアクセスする。
【００６１】
次に、本実施形態１に係るバスシステム１０が、図７に示すバスシステム１０Ｂの構成を実現する場合の動作について説明する。すなわち、マスタモジュール＃１（１１）〜＃３（１３）が、図３（ｃ）に示すメモリマップに定義されたアドレスを使用してスレーブモジュール＃１〜＃４をアクセスする場合の動作について説明する。
【００６２】
図３（ｃ）に示すメモリマップによれば、マスタモジュール＃１（１１）〜＃３（１３）がスレーブモジュール＃１（４１）をアクセスする場合、アドレス０ｘＦＦＦＦ_４０００〜０ｘＦＦＦＦ_４ＦＦＦを、スレーブモジュール＃２（４２）をアクセスする場合、アドレス０ｘＦＦＦＦ_５０００〜０ｘＦＦＦＦ_５ＦＦＦを、スレーブモジュール＃３（４３）をアクセスする場合、アドレス０ｘＦＦＦＥ_６０００〜０ｘＦＦＦＥ_６ＦＦＦを、スレーブモジュール＃４（４４）をアクセスする場合、アドレス０ｘＦＦＦＤ_７０００〜０ｘＦＦＦＤ_７ＦＦＦをそれぞれ使用してアクセスする。
【００６３】
本実施形態１に係るバスシステム１０は、上記したメモリマップの定義の他に、例えば、ユーザによる外部端子（スイッチ）設定や、マスタモジュール＃１（１１）〜＃３（１３）のいずれからかによる内部レジスタ設定等によりスレーブバス選択信号の設定を行う。ここでは、スレーブモジュールインタフェースユニット＃１（４１ａ）のスレーブバス選択信号をスレーブバス＃１（３０ａ）選択状態に、スレーブモジュールインタフェースユニット＃２（４２ａ）のスレーブバス選択信号をスレーブバス＃１（３０ａ）選択状態に、スレーブモジュールインタフェースユニット＃３（４３ａ）のスレーブバス選択信号をスレーブバス＃２（３０ｂ）選択状態に、スレーブモジュールインタフェースユニット＃４（４４ａ）のスレーブバス選択信号をスレーブバス＃３（３０ｃ）選択状態にそれぞれ設定する。
【００６４】
まず、マスタモジュール＃１（１１）〜＃３（１３）が、アドレス０ｘＦＦＦＦ_４０００〜０ｘＦＦＦＦ_４ＦＦＦを使用してアクセス要求を発行する場合の動作から説明する。クロスバスイッチ２０は、マスタモジュール＃１（１１）〜＃３（１３）からのアクセス要求を受信すると、図３（ｃ）のメモリマップにしたがい、バスインタフェース２０１〜２０３からのアクセス要求を、バスインタフェース２０４に伝達する。マスタモジュール＃１（１１）〜＃３（１３）からのアクセス要求は、バスインタフェース２０４からバスブリッジ＃１（２１）に伝達される。バスブリッジ＃１（２１）に伝達されたアクセス要求は、スレーブバス＃１（３０ａ）に伝達される。スレーブバス＃１（３０ａ）に伝達されたアクセス要求は、スレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）に伝達される。
【００６５】
スレーブモジュールインタフェースユニット＃１（４１ａ）は、スレーブバス選択信号がスレーブバス＃１（３０ａ）選択状態に設定されているため、スレーブバス＃１（３０ａ）からのアクセスが、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択され、スレーブモジュール＃１（４１）内部へのアクセスに使用される。同様に、スレーブバス選択信号がスレーブバス＃１（３０ａ）選択状態に設定されているため、スレーブバス＃１（３０ａ）へ出力制御信号およびリードデータが、スレーブバス出力選択回路＃１（４１１）で選択され、スレーブバス＃１（３０ａ）に出力される。
【００６６】
このとき、スレーブモジュールインタフェースユニット＃３（４３ａ）、＃４（４４ａ）は、スレーブバス選択信号がスレーブバス＃１選択状態に設定されていないため、スレーブバス＃１（３０ａ）からのアクセスは、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択されず、したがって、スレーブモジュール＃３（４３）、＃４（４４）内部へのアクセスとして伝達されない。同様に、スレーブバス選択信号がスレーブバス＃１（３０ａ）選択状態に設定されていないため、スレーブバス出力選択回路＃１（４１６）でインアクティブ信号が選択され、スレーブバス＃１（３０ａ）にはインアクティブ信号が出力される。
【００６７】
このとき、スレーブモジュールインタフェースユニット＃２（４２ａ）は、スレーブバス選択信号がスレーブバス＃１（３０ａ）選択状態に設定されているため、スレーブバス＃１（３０ａ）からのアクセスが、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択され、スレーブモジュール＃２（４２）内部へのアクセスに使用される。しかしながら、チップセレクト＃１がスレーブモジュール＃２（４２）宛ではないため、スレーブモジュール＃２（４２）内部へのチップセレクトはアサートされず、したがってアクセス動作はない。また、スレーブバス選択信号がスレーブバス＃１（３０ａ）選択状態に設定されているため、スレーブバス＃１（３０ａ）へ出力制御信号およびリードデータが、スレーブバス出力選択回路＃１（４１１）で選択され、スレーブバス＃１（３０ａ）に出力されるが、チップセレクトがアサートされていないため、出力制御信号／リードデータは動作しない。
【００６８】
次に、マスタモジュール＃１（１１）〜＃３（１３）が、アドレス０ｘＦＦＦＦ_５０００〜０ｘＦＦＦＦ_５ＦＦＦを使用してスレーブモジュール＃２（４２）へアクセス要求を発行する場合の動作について説明する。クロスバスイッチ２０は、マスタモジュール＃１（１１）〜＃３（１３）のアクセス要求を受信すると、図３（ｃ）のメモリマップにしたがい、バスインタフェース２０１〜２０３からのアクセスを、バスインタフェース２０４に伝達する。以降、上記したスレーブモジュール＃１（４１）へのアクセスと同様な動作を行ない、スレーブモジュール＃２（４２）をアクセスする。
【００６９】
次に、スレーブモジュール＃３（４３）へのアクセスについて説明する。マスタモジュール＃１（１１）〜＃３（１３）は、アドレス０ｘＦＦＦＥ_６０００〜０ｘＦＦＦＥ_６ＦＦＦを使用してスレーブモジュール＃３（４３）にアクセス要求を発行する。クロスバスイッチ２０は、マスタモジュール＃１（１１）〜＃３（１３）のアクセス要求を受信すると、図３（ｃ）のメモリマップにしたがい、バスインタフェース２０１〜２０３からのアクセスを、バスインタフェース２０５に伝達する。マスタモジュール＃１（１１）〜＃３（１３）からのアクセス要求は、バスインタフェース２０５からバスブリッジ＃２（２２）に伝達される。そして、バスブリッジ＃２（２２）に伝達されたアクセス要求は、スレーブバス＃２（３０ｂ）に伝達される。スレーブバス＃２（３０ｂ）に伝達されたアクセス要求は、スレーブモジュールインタフェースユニット＃３（４３ａ）に伝達される。
【００７０】
スレーブモジュールインタフェースユニット＃３（４３ａ）は、スレーブバス選択信号がスレーブバス＃２（３０ｂ）選択状態に設定されているため、スレーブバス＃２（３０ｂ）からのアクセス要求が、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択され、スレーブモジュール＃３（４３）内部へのアクセスに使用される。同様に、スレーブバス選択信号がスレーブバス＃２（３０ｂ）選択状態に設定されているため、スレーブバス＃２（３０ｂ）へ出力制御信号およびリードデータが、スレーブバス出力選択回路＃２（４１７）で選択され、スレーブバス＃２（３０ｂ）に出力される。
【００７１】
このとき、スレーブモジュールインタフェースユニット＃１（４１ａ）、＃２（４２ａ）、＃４（４４ａ）は、スレーブバス選択信号がスレーブバス＃２選択状態に設定されていないため、スレーブバス＃２（３０ｂ）からのアクセス要求は、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択されず、したがって、スレーブモジュール＃１（４１）、＃２（４２）、＃４（４４）内部へのアクセス要求として伝達されない。同様に、スレーブバス選択信号がスレーブバス＃２（３０ｂ）選択状態に設定されていないため、スレーブバス出力選択回路＃２（４１７）でインアクティブ信号が選択され、スレーブバス＃２（３０ｂ）にインアクティブ信号が出力される。
【００７２】
次に、スレーブモジュール＃４（４４）へのアクセスについて説明する。この場合、マスタモジュール＃１（１１）〜＃３（１３）は、アドレス０ｘＦＦＦＤ_７０００〜０ｘＦＦＦＤ_７ＦＦＦを使用してスレーブモジュール＃４（４４）にアクセス要求を発行する。クロスバスイッチ２０は、マスタモジュール＃１（１１）〜＃３（１３）のアクセス要求を受信すると、図３（ｃ）のメモリマップにしたがい、バスインタフェース２０１〜２０３からのアクセスを、バスインタフェース２０６に伝達する。マスタモジュール＃１（１１）〜＃３（１３）からのアクセス要求は、バスインタフェース２０６からバスブリッジ＃３（２３）に伝達される。バスブリッジ＃３（２３）に伝達されたアクセスは、スレーブバス＃３（３０ｃ）に伝達される。そして、スレーブバス＃３（３０ｃ）に伝達されたアクセスは、スレーブモジュールインタフェースユニット＃４（４４ａ）に伝達される。
【００７３】
スレーブモジュールインタフェースユニット＃４（４４ａ）は、スレーブバス選択信号がスレーブバス＃３（３０ｃ）選択状態に設定されているため、スレーブバス＃３（３０ｃ）からのアクセス要求が、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択され、スレーブモジュール＃４（４４）内部へのアクセスに使用される。同様に、スレーブバス選択信号がスレーブバス＃３（３０ｃ）選択状態に設定されているため、スレーブバス＃３（３０ｃ）へ出力制御信号およびリードデータが、スレーブバス出力選択回路＃３（４１８）で選択され、スレーブバス＃３（３０ｃ）に出力される。
【００７４】
このとき、スレーブモジュールインタフェースユニット＃１（４１ａ）〜＃３（４３ａ）は、スレーブバス選択信号がスレーブバス＃３（３０ｃ）選択状態に設定されていないため、スレーブバス＃３（３０ｃ）からのアクセス要求は、スレーブバス入力選択回路＃１（４１１）〜＃５（４１５）で選択されず、したがって、スレーブモジュール＃１（４１）〜＃３（４３）内部へのアクセスとして伝達されない。同様に、スレーブバス選択信号がスレーブバス＃３（３０ｃ）選択状態に設定されていないため、スレーブバス出力選択回路＃３（４１８）でインアクティブ信号が選択され、スレーブバス＃３（３０ｃ）にインアクティブ信号が出力される。
【００７５】
（実施形態１の効果）
上記した本実施形態１に係るバスシステム１０によれば、バスブリッジ＃１（２１）〜＃３（２３）とスレーブモジュール＃１（４１）〜＃４（４４）間にクロスバスイッチを設置することなく、スレーブモジュール＃１（４１）〜＃４（４４）のそれぞれに、バスブリッジ＃１（２１）〜＃３（２３）からのバス信号を選択するスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）を搭載し、更に、マスタモジュール＃１（１１）〜＃３（１３）からスレーブモジュール＃１（４１）〜＃４（４４）へアクセスするためのメモリマップとして、各スレーブモジュール＃１（４１）〜＃４（４４）についてバスブリッジ数分の写像アドレスを用意することで、例えば、フィールド機器製品毎（１０Ａ，１０Ｂ）に共通利用するＩＣチップの内部バス構成が変更可能になる。
【００７６】
したがって、スレーブモジュール＃１（４１）〜＃４（４４）の種類、接続数、データ転送量、転送速度、転送優先度が製品毎に異なるフィールド機器において、内部バスとスレーブモジュール＃１（４１）〜＃４（４４）における接続構成の最適化を、共通利用するＩＣチップ（スレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ））で実現することが可能になり、共通部品利用による開発費用、部品管理費用等のコスト削減を実現することができる。また、バスブリッジ＃１（２１）〜＃３（２３）とスレーブモジュール＃１（４１）〜＃４（４４）間にクロスバスイッチの設置を不用にすることから、回路構成が簡素化され、回路規模縮小に基づくコスト削減、および低消費電力化を実現することができる。
【００７７】
なお、上記した本実施形態１に係るバスシステム１０によれば、マスタモジュールを３個（＃１〜＃３）、バスブリッジを３個（＃１〜＃３）、スレーブモジュールを４個（＃１〜＃４）使用してシステムを構築する場合についてのみ説明したが、数はいずれも任意である。また、本実施形態１に係るバスシステム１０によれば、全てのバスブリッジ＃１（２１）〜＃３（２３）からのスレーブバス３０（３０ａ，３０ｂ，３０ｃ）が、それぞれのスレーブモジュール＃１（４１）〜＃４（４４）に接続されているが、回路規模削減のためには各製品で実現したいバス構成で必要となる分の接続のみでよい。この場合、図３に示したメモリマップにおけるスレーブモジュール＃１（４１）〜＃４（４４）の写像は、アドレス領域削減のために、接続したバスブリッジ＃１（２１）〜＃３（２３）からのスレーブバス＃１（３０ａ）〜＃３（３０ｃ）の数分だけ削減される。
【００７８】
（実施形態２の構成）
上記した実施形態１に係るバスシステム１０は、製品毎にバスブリッジ＃１（２１）〜＃３（２３）とスレーブモジュール＃１（４１）〜＃４（４４）の接続形態が異なり、それらが製品毎に固定である場合について説明した。しかしながら、製品によっては、例えば、通信モジュール等、接続されるスレーブモジュールのバス使用における優先度は同一であるが、それぞれのスレーブモジュールにおける特定パケットに対してのみ早く応答を返したい場合がある。この場合、スレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）のそれぞれを図４に示すように構成することで、通常のパケットに対する処理はスレーブモジュール＃２（４２）、スレーブバス＃３（３０ｃ）を使用し、特定パケットの処理の場合にのみスレーブバス＃１（３０ａ）を使用する等の利用方法が可能である。この利用方法を実現するスレーブモジュールインタフェースユニットを実施形態２として以下に詳細に説明する。
【００７９】
以下に説明するバスシステム１０も図１に示す実施形態１と同様のバス構成を有し、各スレーブモジュール＃１（４１）〜＃４（４４）に搭載されるスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）のみその構成が異なる。図４は、実施形態２に係るバスシステム１０で使用されるスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）の構成を示す図である。
【００８０】
図４に示すスレーブモジュールインタフェースユニット４１ａによれば、チップセレクト選択回路４２２によって出力されるスレーブバス＃１（３０ａ）〜＃３（３０ｃ）からそれぞれ出力されるチップセレクト＃１〜＃３の論理和信号をチップセレクトとしてスレーブモジュール＃１（４１）内部に出力する。同時に、チップセレクト＃１〜＃３を、スレーブバス入力選択回路＃２（４１２）〜＃５（４１５）、スレーブ＃１選択比較回路４１９、スレーブ＃２選択比較回路４２０、スレーブ＃３選択比較回路４２１に接続して、スレーブモジュール＃１（４１）内部への出力を選択するとともに、スレーブバス＃１（３０ａ）〜＃３（３０ｃ）への出力を選択する。
【００８１】
（実施形態２の動作）
上記構成において、マスタモジュール＃１（１１）〜＃３（１３）は、通常パケット処理時、メモリマップ０ｘＦＦＦＤ_４０００〜０ｘＦＦＦＤ_７ＦＦＦ、０ｘＦＦＦＥ_４０００〜０ｘＦＦＦＥ_７ＦＦＦを使用してアクセス要求を発行し、特定パケット処理時、メモリマップ０ｘＦＦＦＦ_４０００〜０ｘＦＦＦＦ_７ＦＦＦを使用してアクセスする。なお、このときの前提として、それぞれのスレーブモジュール＃１（４１）〜＃４（４４）にアクセスするマスタモジュール＃１（１１）〜＃３（１３）は、一つの特定のマスタ（＃１〜＃３のいずれか）であるか、複数のマスタモジュール＃１（１１）〜＃３（１３）が同一スレーブ（＃１〜＃４のいずれか）にアクセスしないことが保証されている状態の場合とする。
【００８２】
スレーブモジュールインタフェースユニット＃１（４１ａ）は、バスブリッジ＃１（２１）〜＃３（２３）から出力されるスレーブ選択信号のいずれかがアサートされた場合に、スレーブモジュール＃１（４１）のアクセスに使用するチップセレクトを生成する。そして、スレーブ選択信号から、スレーブモジュール＃１（４１）内部のアクセスに使用するスレーブ入力信号を選択すると共に、バスブリッジ＃１（２１）〜＃３（２３）に対するバス出力信号（スレーブ＃１選択比較回路４１９〜４２１、スレーブバス出力選択回路＃１（４１６）〜＃３（４１８））を選択する。
【００８３】
（実施形態２の効果）
上記した本実施形態２に係るバスシステム１０によれば、各スレーブモジュール＃１（４１）〜＃４（４４）にアクセスするマスタモジュール＃１（１１）〜＃３（１３）は１個の特定のマスタモジュールであり、複数のマスタモジュール＃１（１１）〜＃３（１３）が同時に同一スレーブモジュール（＃１〜＃４のいずれか）にアクセスしないことが保証されている場合に、回路規模を増大させることなくスレーブバス３０とスレーブモジュール＃１（４１）〜＃４（４４）間の接続構成の最適化を実現することができる。
【００８４】
本実施形態２に係るバスシステム１０は、接続されるスレーブモジュール＃１（４１）〜＃４（４４）のバス使用における優先度は同一であるが、それぞれのスレーブモジュール＃１（４１）〜＃４（４４）における特定パケットに対してのみ早く応答を返したい場合等に利用して顕著な効果が得られる。
【００８５】
（実施形態３の構成）
上記した実施形態２に係るバスシステム１０を構築するにあたり、各スレーブモジュール＃１（４１）〜＃４（４４）にアクセスするマスタモジュール＃１（１１）〜＃３（１３）は、一つの特定マスタであるか、複数マスタが同時に同一スレーブモジュールにアクセスしないことが保証されている場合であるという制約がある。この制約を回避するバス構成を実現するスレーブモジュールインタフェースユニット＃１（４１ａ）の構成を実施形態３として図５に示す。図５に示す実施形態３に係るスレーブモジュールインタフェースユニット＃１（４１ａ）によれば、複数のマスタモジュール＃１（１１）〜＃３（１３）が同時に同一スレーブモジュール（＃１（４１）〜＃４（４４）のいずれか）にアクセスした場合でも、スレーブバス３０（３０ａ，３０ｂ，３０ｃ）の優先度にしたがって処理し、優先度の低いスレーブバス３０（３０ａ，３０ｂ，３０ｃ）には、その間、スレーブモジュール＃１（４１）〜＃４（４４）がバスウェイト信号を生成することでアクセス競合を回避することができる。
【００８６】
以下に説明する本実施形態３に係るバスシステム１０も図１に示す実施形態１と同様のバス構成を有し、各スレーブモジュール＃１（４１）〜＃４（４４）に搭載されるスレーブモジュールインタフェースユニット＃１（４１ａ）〜＃４（４４ａ）のみその構成が異なる。図５は、実施形態３に係るバスシステム１０で使用されるスレーブモジュールインタフェースユニット＃１（４１ａ）の構成を示す図である。なお、スレーブモジュールインタフェースユニット＃２（４２ａ）〜＃４（４４ａ）も同じ構成を有するものとする。
【００８７】
図５に示すスレーブモジュールインタフェースユニット４１ａによれば、チップセレクト＃１〜＃３は、スレーブバス選択＆バスウェイト制御回路４２３に接続される。スレーブバス選択＆バスウェイト制御回路４２３は、スレーブバス＃１（３０ａ）〜＃３（３０ｃ）から出力されるチップセレクト＃１〜＃３のいずれかのアサートを検出すると、スレーブモジュール＃１（４１）に向けてチップセレクトをアサートする。また、チップセレクト＃１〜＃３が複数アサートされている場合、予め、あるいは動的に設定される優先度からスレーブ選択信号＃１〜＃３のいずれかを選択し、その選択結果をスレーブ選択信号としてスレーブモジュール＃１（４１）に出力する。
【００８８】
また、スレーブ選択＆バスウエイト制御回路４２３は、その選択結果から、スレーブバス＃１ウエイト選択信号、スレーブバス＃２ウエイト選択信号、スレーブバス＃３ウエイト選択信号を、スレーブバスウエイト出力選択回路＃１（４２４）、＃２（４２５）〜＃３（４２６）のそれぞれに出力する。スレーブバス選択信号による選択結果がスレーブバス＃１（３０ａ）の場合、スレーブ選択＆バスウエイト制御回路４２３は、スレーブバス＃１ウエイト選択信号をネゲートし、スレーブバス＃２ウエイト選択信号、およびスレーブバス＃３ウエイト選択信号をアサートする。
【００８９】
一方、選択結果がスレーブバス＃２（３０ｂ）の場合、スレーブ選択＆バスウエイト制御回路４２３は、スレーブバス＃２ウエイト選択信号をネゲートし、スレーブバス＃１ウエイト選択信号、およびスレーブバス＃３ウエイト選択信号をアサートする。また、選択結果がスレーブバス＃３（３０ｃ）の場合、スレーブ選択＆バスウエイト制御回路４２３は、スレーブバス＃３ウエイト選択信号をネゲートし、スレーブバス＃１ウエイト選択信号、およびスレーブバス＃２ウエイト選択信号をアサートする。
【００９０】
また、スレーババス選択信号をスレーブ＃１選択比較回路４１９、スレーブ＃２選択比較回路４２０、スレーブ＃３選択比較回路４２１のそれぞれに接続することにより、スレーブモジュール＃１（４１）内部への出力を選択するとともに、スレーブバス＃１（３０ａ）〜＃３（３０ｃ）への出力を選択する。
【００９１】
（実施形態３の動作）
上記構成において、マスタモジュール＃１（１１）〜＃３（１３）は、通常パケット処理時、メモリマップ０ｘＦＦＦＤ_４０００〜０ｘＦＦＦＤ_７ＦＦＦ、０ｘＦＦＦＥ_４０００〜０ｘＦＦＦＥ_７ＦＦＦを使用してアクセス要求を発行し、特定パケット処理時、メモリマップ０ｘＦＦＦＦ_４０００〜０ｘＦＦＦＦ_７ＦＦＦを使用してアクセスする。このとき、スレーブバス＃１（３０ａ）〜スレーブバス＃３（３０ｃ）は、スレーブモジュール＃１（４１）〜＃４（４４）からウエイトさせるための制御信号を生成することが可能なバスプロトコルとする。
【００９２】
スレーブモジュールインタフェースユニット＃１（４１ａ）は、複数のバスブリッジ＃１（２１）〜＃３（２３）からスレーブバス選択信号（チップセレクト＃１〜＃３）のアサートを検出すると、スレーブバス選択＆バスウエイト制御回路４２３が、スレーブモジュール＃１（４１）内部のアクセスに使用するチップセレクトを生成する。続いて、スレーブバス選択＆バスウエイト制御回路４２３は、スレーブ選択信号（チップセレクト＃１〜＃３）の複数アサートに対して設定された優先度に従ってスレーブモジュール＃１（４１）内部のアクセスに使用するスレーブ入力信号（スレーブバス入力選択回路＃１〜＃５）を選択する。
【００９３】
同時に、スレーブ選択信号（チップセレクト＃１〜＃３）からバスブリッジ＃１（２１）〜＃３（２３）へのバス出力信号（スレーブ＃１選択比較回路４１９〜スレーブ＃３選択比較回路４２１、スレーブバス出力選択回路＃１（４１６）〜スレーブバス出力選択回路＃３（４１８））を選択し、スレーブバス選択信号（チップセレクト＃１〜＃３）の複数アサートに対して設定された優先度にしたがってスレーブモジュール＃１（４１）内部から選択されたバスブリッジ（＃１（２１）〜＃３（２３）のいずれか）に選択応答を返し、選択されていないバスブリッジ（＃１（２１）〜＃３（２３）のいずれか）にはウエイト応答を出力する。
【００９４】
（実施形態３の効果）
上記したように、本実施形態３に係るバスシステム１０によれば、複数のマスタモジュール＃１（１１）〜＃３（１３）が同時に同一スレーブモジュール（＃１（４１）〜＃４（４４）のいずれか）にアクセスした場合でも、スレーブモジュール（＃１（４１）〜＃４（４４））毎に搭載されるスレーブモジュールインタフェースユニット（４１ａ〜４４ａ）が、スレーブバス３０の優先度にしたがって処理することで、優先度の低いスレーブバス３０には、その間、スレーブバス選択＆バスウエイト制御回路４２３がウエイト応答を生成し出力することによってアクセス競合を回避することができる。
【００９５】
以上、本発明の好ましい実施形態について詳述したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されないことは言うまでもない。上記実施形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。またその様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【符号の説明】
【００９６】
１０…バスシステム、１１〜１３…マスタモジュール＃１〜＃３、２０…クロスバスイッチ、２１〜２３…バスブリッジ＃１〜＃３、３０（３０ａ〜３０ｃ）…スレーブバス、４１〜４４…スレーブモジュール＃１〜＃４、４１ａ〜４４ａ…スレーブモジュールインタフェースユニット＃１〜＃４、２０１〜２０６…バスインタフェース、４１１〜４１５…スレーブバス入力選択回路＃１〜＃５、４１６〜４１８…スレーブバス出力選択回路＃１〜＃３、４１９…スレーブ＃１選択比較回路、４２０…スレーブ＃２選択比較回路、４２１…スレーブ＃３選択比較回路、４２２…チップセレクト選択回路、４２３…スレーブバス選択＆バスウエイト制御回路、４２４〜４２６…スレーブバスウエイト出力選択回路＃１〜＃３
【図１】
2013242787.tif 000003
【図２】
2013242787.tif 000004
【図３】
2013242787.tif 000005
【図４】
2013242787.tif 000006
【図５】
2013242787.tif 000007
【図６】
2013242787.tif 000008
【図７】
2013242787.tif 000009