(57)【要約】【課題】バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムにおいて、各処理モジュールでライトが完了したことを高速に検出する。【解決手段】各処理モジュールは、転送データを記録するデータ記録部と、ホストＣＰＵからのライトを検出するとライト完了通知信号を出力するライト完了通知ポートと、ライト完了通知信号を検出するとホストＣＰＵに割込信号を出力する割込信号発生器とを備え、ホストＣＰＵは、各処理モジュールのデータ記録部に対して、転送データのポスティッド・ライトを行なった後にライト完了通知ポートに対するポスティッド・ライトを行なうとともに、各処理モジュールからの割込信号を検出する。【選択図】図１
2010224713.tif 000002
【特許請求の範囲】
【請求項１】
バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、前記ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムであって、
前記各処理モジュールは、
前記転送データを記録するデータ記録部と、
前記ホストＣＰＵからのライトを検出するとライト完了通知信号を出力するライト完了通知ポートと、
前記ライト完了通知信号を検出すると前記ホストＣＰＵに割込信号を出力する割込信号発生器とを備え、
前記ホストＣＰＵは、前記各処理モジュールのデータ記録部に対して、前記転送データのポスティッド・ライトを行なった後に前記ライト完了通知ポートに対するポスティッド・ライトを行なうとともに、前記各処理モジュールからの前記割込信号を検出することを特徴とするデータ転送システム。
【請求項２】
バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、前記ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムであって、
前記各処理モジュールに接続され、同期トリガ信号を伝送する同期トリガ信号線を備え、
前記各処理モジュールは、
前記転送データを記録するデータ記録部と、
前記ホストＣＰＵからのライトを検出するとライト完了通知信号を出力するライト完了通知ポートと、
前記ライト完了通知信号を検出すると前記ホストＣＰＵに割込信号を出力する割込信号発生器と、
前記同期トリガ信号を検出すると、当該処理モジュール内に内部トリガ信号を発行するトリガ処理部とを備え、
前記処理モジュールのうちの１の処理モジュールは、さらに、
前記ホストＣＰＵからのライトを検出すると同期トリガ発行要求信号を出力する同期トリガ発行ポートと、
前記同期トリガ発行要求信号を検出すると、前記同期トリガ信号線に同期トリガ信号を出力する同期トリガ発生器とを備え、
前記ホストＣＰＵは、前記各処理モジュールのデータ記録部に対して、前記転送データのポスティッド・ライトを行なった後に前記ライト完了通知ポートに対するポスティッド・ライトを行ない、前記各処理モジュールからの前記割込信号を検出すると、前記同期トリガ発行ポートに対するポスティッド・ライトを行なうことを特徴とするデータ転送システム。
【請求項３】
請求項２に記載のデータ転送システムであって、
前記各処理モジュールのデータ記録部にライトする転送データは、前記内部トリガ信号を制御するためのデータであることを特徴とするデータ転送システム。
【請求項４】
バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、前記ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムであって、
前記各処理モジュールに接続され、Ｈｉｇｈ／Ｌｏｗ状態を取り得るライト完了通知線を備え、
前記各処理モジュールは、
前記ホストＣＰＵからのライトを検出するとライト完了通知信号を出力するライト完了通知ポートと、
前記ライト完了通知線に接続され、前記ライト完了通知信号により制御されるスイッチ回路を備え、
前記処理モジュールのうちの１の処理モジュールは、さらに、
前記ライト完了通知線の状態に基づいて前記各処理モジュールのすべてがライト完了通知信号を出力したことを検出すると、前記ホストＣＰＵにライト完了通知割込信号を出力するライト完了通知割込発生器を備えたことを特徴とするデータ転送システム。
【請求項５】
請求項１〜４のいずれか１項に記載のデータ転送システムであって、
前記バスブリッジ回路は、ＰＣＩバスあるいはＰＣＩ−Ｅｘｐｒｅｓｓバス同士を接続することを特徴とするデータ転送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送システムに係り、特に、バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、前記ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムに関する。
【背景技術】
【０００２】
データ転送を行なうバスの規格として広く用いられているＰＣＩ、ＰＣＩ−Ｅｘｐｒｅｓｓ等では、１つのバスに接続可能なデバイス数の上限が定められている。この上限を超えてデバイスを接続する場合には、データ転送システム内に複数のバスを用意し、バス間をブリッジ回路で接続する構成が用いられる。
【０００３】
図９は、複数のＰＣＩ−Ｅｘｐｒｅｓｓバスをブリッジ回路で接続した従来のデータ転送システムの構成例を示す図である。本図に示すデータ転送システムは、ホストＣＰＵ９１０が複数枚のカード９４０（９４０ａ、９４０ｂ、９４０ｃ、９４０ｄ…）に対してライトを行なうシステムである。カード９４０は、例えば、計測、制御等の所定の処理を行なう処理モジュールとして機能する。
【０００４】
ホストＣＰＵ９１０は、ホストバス９７０に接続されており、ホストバス９７０は、ホストブリッジ９２０を介してバス９７１と接続している。バス９７１は、さらにバスブリッジ９３０ａ、バスブリッジ９３０ｂを介して、バス９７２、バス９７３と接続している。
【０００５】
バス９７２には、カード９４０ａ、カード９４０ｂが接続され、バス９７３には、カード９４０ｃ、カード９４０ｄが接続されている。このように、ホストＣＰＵ９１０と各カード９４０とは複数のブリッジ回路を介したツリー構造で接続されており、カード９４０の数は適宜増やすことができる。
【０００６】
各カード９４０は、バスＩ／Ｆ９４１を備えており、バスＩ／Ｆ９４１には、設定レジスタ９４２、ＭＳＩ発生器９４３が接続されている。ＭＳＩ発生器９４３は、内部的に発生した割込信号１、割込信号２を検出し、割込信号であるＭＳＩ（Message Signaled Interrupt）信号をホストＣＰＵ９１０に出力する。設定レジスタ９４２は各カード９４０を制御するためのレジスタであり、ホストＣＰＵ９１０は、設定レジスタ９４２に対してデータのライトを行なう。ＰＣＩバス、ＰＣＩ−Ｅｘｐｒｅｓｓバスでは、ブロードキャスト・ライトはできないため、各カード９４０に対して１枚ずつライトを行なうことになる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−１６４５６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ブリッジ回路を経由してのデータライトはＰＣＩバス、ＰＣＩ−Ｅｘｐｒｅｓｓバスの高速性を損なうおそれがある。そこで、カード９４０に対するライトのスループットを向上させるために、ポスティッド・ライトという手法が用いられている。ポスティッド・ライトは、ホストブリッジ９２０の中にバッファを用意しておき、ホストＣＰＵ９１０がこのバッファにデータを書き込んだ時点でホストＣＰＵ９１０のライト・サイクルを終了させバス権を解放するものである。
【０００９】
ポスティッド・ライトを用いることで、あるカード９４０へのライト完了を待つことなく次のカードへのライト処理を行なうことができるため、各カード９４０へのライト時間を短縮することができる。しかしながら、ホストブリッジ９２０のバッファにデータをライトするとバス権を解放してしまうため、ホストＣＰＵ９１０は、カード９４０がライトを完了したことを確認することができない。
【００１０】
このため、例えば、ホストＣＰＵ９１０が、すべてのカード９４０へのライト完了後に次の処理動作に移るような制御を行なう場合には、ポスティッド・ライト後に各カード９４０に対してリードバックを行なって、すべてのカード９４０にデータがライトされたことを確認してから次の処理動作に移る必要があった。
【００１１】
しかしながら、各カード９４０へのライト完了を確認するためにリードバックを行なうと、１枚ずつリードアクセスを行なってリードバックデータが帰ってくるのを待つたなければならず、時間がかかってしまうという問題がある。
【００１２】
そこで、本発明は、バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムにおいて、各処理モジュールでライトが完了したことを高速に検出することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するため、本発明の第１の態様であるデータ転送システムは、バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、前記ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムであって、前記各処理モジュールは、前記転送データを記録するデータ記録部と、前記ホストＣＰＵからのライトを検出するとライト完了通知信号を出力するライト完了通知ポートと、前記ライト完了通知信号を検出すると前記ホストＣＰＵに割込信号を出力する割込信号発生器とを備え、前記ホストＣＰＵは、前記各処理モジュールのデータ記録部に対して、前記転送データのポスティッド・ライトを行なった後に前記ライト完了通知ポートに対するポスティッド・ライトを行なうとともに、前記各処理モジュールからの前記割込信号を検出することを特徴とする。
【００１４】
ここで、処理モジュールは、計測、制御等の所定の処理を行なう機能部であり実施形態におけるカードに相当する。データ記録部は、ホストＣＰＵのライトの対象となる機能部であり、第１実施形態の設定レジスタに相当する。割込信号発生器は、実施形態のＭＳＩ発生器に相当する。
【００１５】
本発明において、ホストＣＰＵは、ポスティッド・ライトを行なっているため、処理モジュールのデータ記録部に対するライトを行なっても、実際のライトが完了したことを直接的に検出することはできない。しかしながら、データ記録部へのライトよりも後に行なったライト完了通知ポートに対するライトが完了したことを示す割込信号を受信することで、データ記録部への書き込みが完了したことを間接的に検知することができる。これにより、各処理モジュールに対するリードバックが不要となるため、各処理モジュールでライトが完了したことを高速に検出することができるようになる。
【００１６】
上記課題を解決するため、本発明の第２の態様であるデータ転送システムは、バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、前記ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムであって、前記各処理モジュールに接続され、同期トリガ信号を伝送する同期トリガ信号線を備え、前記各処理モジュールは、前記転送データを記録するデータ記録部と、前記ホストＣＰＵからのライトを検出するとライト完了通知信号を出力するライト完了通知ポートと、前記ライト完了通知信号を検出すると前記ホストＣＰＵに割込信号を出力する割込信号発生器と、前記同期トリガ信号を検出すると、当該処理モジュール内に内部トリガ信号を発行するトリガ処理部とを備え、前記処理モジュールのうちの１の処理モジュールは、さらに、前記ホストＣＰＵからのライトを検出すると同期トリガ発行要求信号を出力する同期トリガ発行ポートと、前記同期トリガ発行要求信号を検出すると、前記同期トリガ信号線に同期トリガ信号を出力する同期トリガ発生器とを備え、前記ホストＣＰＵは、前記各処理モジュールのデータ記録部に対して、前記転送データのポスティッド・ライトを行なった後に前記ライト完了通知ポートに対するポスティッド・ライトを行ない、前記各処理モジュールからの前記割込信号を検出すると、前記同期トリガ発行ポートに対するポスティッド・ライトを行なうことを特徴とする。
【００１７】
ここで、データ記録部は、ホストＣＰＵのライトの対象となる機能部であり、第２実施形態のトリガ指定レジスタに相当する。このとき、前記各処理モジュールのデータ記録部にライトする転送データは、前記内部トリガ信号を制御するためのデータとすることができる。
【００１８】
上記課題を解決するため、本発明の第３の態様であるデータ転送システムは、バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、前記ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムであって、前記各処理モジュールに接続され、Ｈｉｇｈ／Ｌｏｗ状態を取り得るライト完了通知線を備え、前記各処理モジュールは、前記ホストＣＰＵからのライトを検出するとライト完了通知信号を出力するライト完了通知ポートと、前記ライト完了通知線に接続され、前記ライト完了通知信号により制御されるスイッチ回路を備え、前記処理モジュールのうちの１の処理モジュールは、さらに、前記ライト完了通知線の状態に基づいて前記各処理モジュールのすべてがライト完了通知信号を出力したことを検出すると、前記ホストＣＰＵにライト完了通知割込信号を出力するライト完了通知割込発生器を備えたことを特徴とする。
【００１９】
いずれのデータ転送システムにおいても、前記バスブリッジ回路は、ＰＣＩバスあるいはＰＣＩ−Ｅｘｐｒｅｓｓバス同士を接続することができる。
【発明の効果】
【００２０】
本発明によれば、バスブリッジ回路を介して接続されたホストＣＰＵと複数の処理モジュールとを備え、ホストＣＰＵから各処理モジュールに対して転送データのポスティッド・ライトを行なうデータ転送システムにおいて、各処理モジュールでライトが完了したことを高速に検出することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１実施形態である複数のＰＣＩ−Ｅｘｐｒｅｓｓバスをブリッジ回路で接続したデータ転送システムの構成例を示す図である。
【図２】カードの動作を説明するフローチャートである。
【図３】第１実施形態において、各カードに対してライトを行ない、すべてのカードへのライト完了後に次の動作に移る制御を行なう場合のＣＰＵの処理について説明するフローチャートである。
【図４】本発明の第２実施形態である複数のＰＣＩ−Ｅｘｐｒｅｓｓバスをブリッジ回路で接続したデータ転送システムの構成例を示す図である。
【図５】メインカードの動作を説明するフローチャートである。
【図６】トリガ処理部の構成を示すブロック図である。
【図７】第２実施形態において、メインカードおよび各サブカードに対してライトを行ない、ライト完了後にすべてのカードに同期トリガ信号を与える場合のＣＰＵの処理について説明するフローチャートである。
【図８】すべてのカードのライト完了をホストＣＰＵに対して外部割込で通知する構成例を示す図である。
【図９】複数のＰＣＩ−Ｅｘｐｒｅｓｓバスをブリッジ回路で接続した従来のシステムの構成例を示す図である。
【発明を実施するための形態】
【００２２】
本発明の実施の形態について図面を参照して説明する。図１は、本発明の第１実施形態である複数のＰＣＩ−Ｅｘｐｒｅｓｓバスをブリッジ回路で接続したデータ転送システムの構成例を示す図である。ただし、ＰＣＩバス等をブリッジ回路で接続する構成としてもよい。本発明は、ブロードキャスト・ライトができないバスインタフェースに効果的に適用することができる。
【００２３】
本図に示すデータ転送システムは、ホストＣＰＵ１０が複数枚のカード４０（４０ａ、４０ｂ、４０ｃ、４０ｄ…）に対して転送データのポスティッド・ライトを行なうシステムである。カード４０は、例えば、計測、制御等の所定の処理を行なう機能部であり、処理モジュールとして機能する。
【００２４】
ホストＣＰＵ１０は、ホストバス７０に接続されており、ホストバス７０は、バスブリッジ回路であるホストブリッジ２０を介してバス７１と接続している。バス７１は、さらにバスブリッジ回路であるバスブリッジ３０ａ、バスブリッジ３０ｂを介して、バス７２、バス７３と接続している。ホストブリッジ２０は、各カード４０からのＭＳＩ信号や外部割込の検出およびホストＣＰＵ１０との割込ハンドシェイクを行なう。
【００２５】
バス７２には、カード４０ａ、カード４０ｂが接続され、バス７３には、カード４０ｃ、カード４０ｄが接続されている。このように、ホストＣＰＵ１０と各カード４０とは複数のブリッジ回路を介したツリー構造で接続され、カード４０の数は適宜増やすことができる。
【００２６】
各カード４０は、バスＩ／Ｆ４１を備えており、バスＩ／Ｆ４１には、設定レジスタ４２、ＭＳＩ発生器４３、ライト完了通知ポート４４が接続されている。ＭＳＩ発生器４３は、割込信号発生器として機能し、内部的に発生した割込信号１、割込信号２およびライト完了通知ポート４４からのライト完了通知信号を検出し、割込信号であるＭＳＩ（Message Signaled Interrupt）信号をホストＣＰＵ１０に出力する。設定レジスタ４２は、各カード４０を制御するためのレジスタであり、転送データを記録するデータ記録部として機能する。ホストＣＰＵ１０は、設定レジスタ４２に対してポスティッド・ライトによりライトを行なう。
【００２７】
ライト完了通知ポート４４は、ホストＣＰＵ１０からのライトを検出すると、ＭＳＩ発生器４３にライト完了通知信号を出力する。ライト完了通知ポート４４とＭＳＩ発生器４３の処理により、カード４０は、図２のフローチャートに示すような動作を行なう。すなわち、ライト完了通知ポート４４へのライトを監視し（Ｓ１０１）、ライトを検出すると（Ｓ１０１：Ｙｅｓ）、ＭＳＩをホストＣＰＵ１０に対して発行する（１０２）。なお、ＭＳＩに代えて、他の割込信号や所定のレジスタへの書き込み等によってホストＣＰＵ１０に、ライト完了通知ポート４４へのライトを検出したことを通知するようにしてもよい。
【００２８】
多数のカード４０に対応し、また、実装を容易にするために、ホストＣＰＵ１０は、各カード４０の設定レジスタ４２およびライト完了通知ポート４４をＩＯ空間ではなくメモリアドレス空間に配置することが望ましい。
【００２９】
次に、第１実施形態において、各カード４０に対してライトを行ない、すべてのカード４０へのライト完了後に次の動作に移る制御を行なう場合のホストＣＰＵ１０の処理について図３のフローチャートを参照して説明する。
【００３０】
ＰＣＩ−Ｅｘｐｒｅｓｓバスでは、ブロードキャスト・ライトができないため、ホストＣＰＵ１０は、所定の順序規則にしたがってライト対象のカード４０を１枚ずつ設定する（Ｓ２０１）。そして、ライト対象となったカード４０の設定レジスタ４２に対するポスティッド・ライトを行なう（Ｓ２０２）。このライトにおける転送データは、カード４０を制御するためのデータであり、ライト対象のカード４０に対応させることができる。
【００３１】
次に、ライト対象となったカード４０のライト完了通知ポート４４に対するポスティッド・ライトを行なう（Ｓ２０３）。このライトは、ライトがあったことを示せれば足りるため、例えば、１ビットのデータとすることができる。
【００３２】
以上の処理を、すべてのカード４０に対して順次行なう（Ｓ２０４）。なお、本例では、カード４０毎に設定レジスタ４２に対するライト、ライト完了通知ポート４４に対するライトを行なうようにしたが、各カード４０に対して設定レジスタ４２に対するライトを行なった後に、各カード４０に対してライト完了通知ポート４４に対するライトを行なうようにしてもよい。要は、各カード４０について、設定レジスタ４２に対するライトの後に、ライト完了通知ポート４４に対するライトが行なわれればよい。
【００３３】
各カード４０は、図２に示した手順にしたがって、ライト完了通知ポート４４のライトを検出すると、ＭＳＩをホストＣＰＵ１０に対して発行する。
【００３４】
ホストＣＰＵ１０は、各カードからのＭＳＩの受信を待つ（Ｓ２０５）。そして、ＭＳＩを受信すると（Ｓ２０５：Ｙｅｓ）、すべてのカード４０から受信したかどうかを判断し（Ｓ２０６）、まだＭＳＩを受信していないカード４０がある場合（Ｓ２０６：Ｎｏ）には、さらに、ＭＳＩの受信を待つ（Ｓ２０５）。
【００３５】
すべてのカード４０からＭＳＩを受信すると（Ｓ２０６：Ｙｅｓ）、すべてのカード４０の設定レジスタ４２へのライトが完了したことが保証されるため、次動作に移行する（Ｓ２０７）。
【００３６】
すなわち、ホストＣＰＵ１０は、ポスティッド・ライトを行なっているため、カード４０の設定レジスタ４２に対するライトを行なっても、実際のライトが完了したことを直接的に検出することはできない。しかしながら、設定レジスタ４２へのライトよりも後に行なったライト完了通知ポート４４に対するライトが完了したことを示すＭＳＩを受信することで、設定レジスタ４２への書き込みが完了したことを間接的に検知することができる。このため、すべてのカード４０からＭＳＩを受信することで、すべてのカード４０の設定レジスタ４２へのライトが完了したことが保証されることになる。
【００３７】
次に、本発明の第２実施形態について説明する。第２実施形態は、各カードに対して、内部トリガ信号を制御する転送データをポスティッド・ライトし、すべてのカードへのライトを完了すると、次動作として、各カードに同期トリガをかける処理を行なう場合を例にする。
【００３８】
ブロードキャストが可能なバスインタフェースであれば、ブロードキャスト・ライトを行なうことで、全カードに対して同期トリガをかけることができる。しかしながら、ＰＣＩバス、ＰＣＩ−Ｅｘｐｒｅｓｓバスでは、ブロードキャスト・ライトはできない。このため、同期トリガを行なうためには、例えば、新たなブロードキャストバスを実装する必要があり、配線が煩雑になったり、バス制御機能の追加等によるコストアップを招くことになる。そこで、第２実施形態に示すように本発明を適用することにより、簡易な構成で同期トリガをかけることができるようになる。
【００３９】
図４は、本発明の第２実施形態である複数のＰＣＩ−Ｅｘｐｒｅｓｓバスをブリッジ回路で接続したシステムの構成例を示す図である。第１実施形態と同じブロックについては同じ符号を付し、説明は簡略化する。
【００４０】
第２実施形態では、複数のカードのうち、１つのカードを、同期トリガを発生するメインカード５０とし、他のカードを、同期トリガ信号を入力して内部トリガを発生させるサブカード６０（６０ａ、６０ｂ、６０ｃ）とする。
【００４１】
本図に示すように、ホストＣＰＵ１０は、ホストバス７０に接続されており、ホストバス７０は、ホストブリッジ２０を介してバス７１と接続している。バス７１は、さらにバスブリッジ３０ａ、バスブリッジ３０ｂを介して、バス７２、バス７３と接続している。
【００４２】
バス７２には、メインカード５０、サブカード６０ａが接続され、バス７３には、サブカード６０ｂ、６０ｃが接続されている。このように、ホストＣＰＵ１０とメインカード５０、サブカード６０とは複数のブリッジ回路を介したツリー構造で接続され、サブカード６０の数は適宜増やすことができる。
【００４３】
メインカード５０は、バスＩ／Ｆ４１、トリガ処理部４５、同期トリガ発生器４７を備えており、バスＩ／Ｆ４１には、設定レジスタ４２、ＭＳＩ発生器４３、ライト完了通知ポート４４、トリガ処理部４５、同期トリガ発行ポート４６が接続されている。
【００４４】
同期トリガ発行ポート４６は、ホストＣＰＵ１０からのライトを検出すると、同期トリガ発生器４７に同期トリガ発行要求信号を出力する。同期トリガ発生器４７は、同期トリガ発行要求信号を検出すると、同期トリガ信号線７４に同期トリガ信号を出力する。
【００４５】
同期トリガ発行ポート４６と同期トリガ発生器４７の処理により、メインカード５０は、図５のフローチャートに示すような動作を行なう。すなわち、ホストＣＰＵ１０からの同期トリガ発行ポート４６へのライトを監視し（Ｓ３０１）、ライトを検出すると（Ｓ３０１：Ｙｅｓ）、同期トリガ信号線７４に同期トリガ信号を出力する（３０２）。
【００４６】
トリガ処理部４５は、同期トリガ信号線７４にも接続され、同期トリガ信号線７４から同期トリガ信号を検出すると内部トリガ信号をメインカード５０内に発行する。図６は、トリガ処理部４５の構成を示すブロック図である。本図の例では、内部トリガ信号として、内部トリガ信号１、内部トリガ信号２、内部トリガ信号３の３つの内部トリガ信号を発行できる構成となっている。同期トリガ信号に基づいてどの内部トリガを発行させるかは、トリガ指定レジスタ４５０の設定に応じるようになっている。
【００４７】
すなわち、トリガ１レジスタ４５０ａがイネーブル設定されている場合には、カード内トリガ発生器４５１によって内部トリガ１が発生し、トリガ２レジスタ４５０ｂがイネーブル設定されている場合には、カード内トリガ発生器４５１によって内部トリガ２が発生し、トリガ３レジスタ４５０ｃがイネーブル設定されている場合には、カード内トリガ発生器４５１によって内部トリガ３が発生する。トリガ指定レジスタ４５０は、バスＩ／Ｆ４１に接続しており、ホストＣＰＵ１０のポスティッド・ライトによりイネーブル／ディスエーブルの設定が行なわれる。このように、第２実施形態においては、トリガ指定レジスタ４５０が転送データのライト対象となっており、データ記録部として機能することになる。
【００４８】
図４の説明に戻って、サブカード６０は、バスＩ／Ｆ４１を備えており、バスＩ／Ｆ４１には、設定レジスタ４２、ＭＳＩ発生器４３、ライト完了通知ポート４４、トリガ処理部４５が接続されている。すなわち、同期トリガ発行ポート４６、同期トリガ発生器４７を備えていない以外は、メインカード５０と同様の構成である。このため、同期トリガ信号線７４から同期トリガ信号を検出すると内部トリガ信号をサブカード６０内に発行する。トリガ処理部４５の構成は図６に示したとおりである。
【００４９】
次に、第２実施形態において、メインカード５０および各サブカード６０に対してトリガ処理部４５のトリガ指定レジスタ４５０の設定を行ない、メインカード５０およびすべてのサブカード６０へのトリガ指定レジスタ４５０の設定完了後に、メインカード５０および各サブカード６０に対して同期トリガ信号を与える制御を行なう場合のホストＣＰＵ１０の処理について図７のフローチャートを参照して説明する。
【００５０】
ＰＣＩ−Ｅｘｐｒｅｓｓバスでは、ブロードキャスト・ライトができないため、ホストＣＰＵ１０は、所定の順序規則にしたがってトリガ指定レジスタ４５０の設定対象のメインカード５０あるいはサブカード６０を１枚ずつ設定する（Ｓ４０１）。
【００５１】
そして、トリガ指定レジスタ４５０の設定対象となったメインカード５０あるいはサブカード６０のトリガ指定レジスタ４５０に対するポスティッド・ライトを行なう（Ｓ４０２）。このとき、メインカード５０あるいはサブカード６０を制御するために、設定レジスタ４２に対するポスティッド・ライトを併せて行なうようにしてもよい。
【００５２】
次に、トリガ指定レジスタ４５０の設定対象となったメインカード５０あるいはサブカード６０のライト完了通知ポート４４に対するポスティッド・ライトを行なう（Ｓ４０３）。
【００５３】
以上の処理を、メインカード５０およびすべてのサブカード６０に対して順次行なう（Ｓ４０４）。
【００５４】
メインカード５０および各サブカード６０は、図２に示した手順にしたがって、ライト完了通知ポート４４のライトを検出すると、ＭＳＩをホストＣＰＵ１０に対して発行する。
【００５５】
ホストＣＰＵ１０は、メインカード５０および各サブカード６０からのＭＳＩの受信を待つ（Ｓ４０５）。ＭＳＩを受信すると（Ｓ４０５：Ｙｅｓ）、メインカード５０およびすべてのサブカード６０から受信したかどうかを判断し（Ｓ４０６）、まだＭＳＩを受信していないカードがある場合（Ｓ４０６：Ｎｏ）には、さらに、ＭＳＩの受信を待つ（Ｓ４０５）。
【００５６】
メインカード５０およびすべてのサブカード６０からＭＳＩを受信すると（Ｓ４０６：Ｙｅｓ）、メインカード５０およびすべてのサブカード６０のトリガ指定レジスタ４５０への設定が完了したことが保証されるため、メインカード５０の同期トリガ発行ポート４６に対するポスティッド・ライトを行なう（Ｓ４０７）。
【００５７】
メインカード５０は、同期トリガ発行ポート４６へのライトを検出すると、図５のフローチャートにしたがって、同期トリガ信号線７４に同期トリガ信号を出力する。
【００５８】
メインカード５０および各サブカード６０のトリガ処理部４５は、同期トリガ信号線７４の同期トリガ信号を検出すると、トリガ指定レジスタ４５０の設定内容にしたがって、カード内に内部トリガを出力する。
【００５９】
このように第２実施形態では、システム内に同期トリガ信号線７４を設け、メインカード５０に同期トリガ発行ポート４６と同期トリガ発生器４７を設けるとともに、各カードにトリガ処理部４５を設けることで、バスインタフェースを利用した同期トリガを実現することができる。これらの機構は簡単な構成で実装することができるため、配線が複雑になったり、コストアップを招くことなく、同期トリガ機構を実現することができる。
【００６０】
なお、カードにおけるライト完了のホストＣＰＵ１０への通知は、図１に示したようなＭＳＩに限られない。すなわち、すべてのカードにおいてライトが完了したことをカード側からホストＣＰＵ１０に通知できればどのような構成であってもよい。例えば、図８に示すように、Ｗｒｉｒｅｄ−ＡＮＤを構成するライト完了通知線７５を利用して、すべてのカードのライト完了をホストＣＰＵ１０に対して外部割込で通知するようにしてもよい。
【００６１】
本図の例では、複数のカードのうち、１つをメインカード８０とし、他のカードをサブカード９０（９０ａ、９０ｂ、９０ｃ）とする。メインカード８０は、上記の実施形態と同様にバスＩ／Ｆ４１とライト完了通知ポート４４とを備えている。ホストＣＰＵ１０は、上記の実施形態と同様に、メインカード８０に対するライトの後に、ライト完了通知ポート４４のライトを行なう。ライト完了通知ポート４４の出力はスイッチ回路８３に接続されており、ライト完了通知ポート４４がライトされるとスイッチ回路８３がＯＮとなる。スイッチ回路８３は、ライト完了通知線７５のＨｉｇｈ／Ｌｏｗ状態を制御する。
【００６２】
各サブカード９０にも、バスＩ／Ｆ４１とライト完了通知ポート４４とスイッチ回路８３とが備えられている。ホストＣＰＵ１０は、上記の実施形態と同様に、サブカード９０に対するライトの後に、ライト完了通知ポート４４のライトを行なう。各カードのスイッチ回路８３によりＷｒｉｒｅｄ−ＡＮＤが構成されているため、メインカード８０とすべてのサブカード９０のスイッチ回路８３がＯＮになると、ライト完了通知線７５のＨｉｇｈ／Ｌｏｗ状態が反転する。
【００６３】
メインカード８０には、ライト完了通知線７５に接続されたシュミットトリガ回路８４が備えられており、シュミットトリガ回路８４の出力は、ホストブリッジ２０を介してホストＣＰＵ１０にライト完了通知割込信号を出力するライト完了通知割込発生器８５に入力される。
【００６４】
このような構成により、メインカード８０とすべてのサブカード９０のライト完了通知ポート４４への書き込みが完了すると、ライト完了通知割込発生器８５からホストブリッジ２０に対して、ライト完了通知割込信号が出力されるため、ホストＣＰＵ１０は、メインカード８０とすべてのサブカード９０に対するライトが完了したことを検出することができる。
【符号の説明】
【００６５】
１０…ホストＣＰＵ
２０…ホストブリッジ
３０…バスブリッジ
４０…カード
４１…バスＩ／Ｆ
４２…設定レジスタ
４３…ＭＳＩ発生器
４４…ライト完了通知ポート
４５…トリガ処理部
４６…同期トリガ発行ポート
４７…同期トリガ発生器
５０…メインカード
６０…サブカード
７０…ホストバス
７１…バス
７２…バス
７３…バス
７４…同期トリガ信号線
７５…ライト完了通知線
８０…メインカード
８３…スイッチ回路
８４…シュミットトリガ回路
８５…ライト完了通知割込発生器
９０…サブカード
４５０…トリガ指定レジスタ
４５１…カード内トリガ発生器
【図１】
2010224713.tif 000003
【図２】
2010224713.tif 000004
【図３】
2010224713.tif 000005
【図４】
2010224713.tif 000006
【図５】
2010224713.tif 000007
【図６】
2010224713.tif 000008
【図７】
2010224713.tif 000009
【図８】
2010224713.tif 000010
【図９】
2010224713.tif 000011