(57)【特許請求の範囲】
【請求項１】
一対の双方向並列バスと、
双方向パイプラインバスと、
命令に応答して演算処理を行うプロセッサと、複数の通信ポートを有し該プロセッサからの要求に基づいてデータ転送を行う双方向型通信リンクとからなる複数のプロセッサノードと、
複数の接続モードを有し、該並列バスと、該パイプラインバスと、該プロセッサノードとの接続を制御する複数のクラスタスイッチと、
該クラスタスイッチの接続モードを制御して該プロセッサノードを直列接続及び／又は並列接続するスイッチ制御部とを備えた、並列プロセッサシステム。
【請求項２】
前記プロセッサノードは、前記並列バスの間に並列に前記クラスタスイッチを介して接続されており、前記パイプラインバスは、該並列バスと該プロセッサノードとを接続するバス間に該クラスタスイッチを介して接続されている、請求の範囲第１項記載の並列プロセッサシステム。
【請求項３】
前記並列バスと前記プロセッサノードとを接続するクラスタスイッチは、第１〜第３のポートを有し５つの接続モードを備えた第１のクラスタスイッチからなり、前記パイプラインバスを接続するクラスタスイッチは、第１〜第３のポートを有し３つの接続モードを備えた第２のクラスタスイッチからなる、請求の範囲第２項記載の並列プロセッサシステム。
【請求項４】
前記第１のクラスタスイッチは、第１及び第２のポートを接続する接続モードと、第２及び第３のポートを接続する接続モードと、第１及び第３のポートを接続する接続モードと、第１〜第３のポートを全て接続する接続モードと、第１〜第３のポートを全て解放する接続モードとを備えた、請求の範囲第３項記載の並列プロセッサシステム。
【請求項５】
前記第２のクラスタスイッチは、第２及び第３のポートを接続する接続モードと、第１及び第３のポートを接続する接続モードと、第１及び第２のポートを接続する接続するモードとを備えた、請求の範囲第３項又は第４項記載の並列プロセッサシステム。
【請求項６】
前記スイッチ制御部は、マイクロプロセッサを用いた電子制御又は物理的なスイッチ構成からなる、請求の範囲第１項〜第５項のいずれか１項記載の並列プロセッサシステム。
【請求項７】
前記スイッチ制御部は、前記プロセッサノードが、前記並列バスに入力される一又は複数の入力に対して処理を行い、処理結果を該並列バス及び／又は前記パイプラインバスを介して出力するように、前記クラスタスイッチを制御する、請求の範囲第１項〜第６項のいずれか１項記載の並列プロセッサシステム。
【発明の詳細な説明】
技術分野
本発明は並列プロセッサシステムに係り、特に音声や画像データの符号化、コンピュータグラフィックス等の信号処理を行う相互結合網を構築するのに適した並列プロセッサシステムに関する。
背景技術
プロセッサシステムに対しては、信号処理を高速に、且つ、経済的に行うという要求がある。この要求を満たす１つの方法は、個々のプロセッサの性能を向上することである。しかし、この方法の場合、プロセッサの性能があるしきい値を越えると、プロセッサ性能の向上に比較して、ハードウェア及び開発のコストが著しく増大してしまう。そこで、非常に高速なプロセッサを実現するには、多くのトレードオフのバランスを取らなくてはならない。例えば、シリコン技術の向上は、ミクロンルールを小さくし、チップサイズを小さくできることから、消費電力の低下につながるが、信号同期と伝搬遅延の制約はより厳しくなり、設計に時間と労力を必要とする。
他方、プロセッサシステムの性能を向上させるための別の方法として、並列プロセッサシステムの構成を採用する方法もある。並列プロセッサシステムでは、２個以上のプロセッサが並列に接続されている。この場合、ある程度の速度のプロセッサを複数利用することで、利用可能な複数のプロセッサに負荷を分散させることができる。例えば、単一プロセッサからなるプロセッサシステムと、同様のプロセッサが複数並列接続された並列プロセッサシステムとを比較すると、並列プロセッサシステムが単純に２倍の処理を行えるわけではないが、単位時間当りより多くの処理を並列に実行することができる。つまり、並列プロセッサシステムは、同じ単位時間当りの処理量を実現するのに、単一プロセッサからなるプロセッサシステムに比べて、より経済的なプロセッサ技術を利用できる点で有効である。又、並列プロセッサシステムは、アプリケーション環境に合わせてプロセッサ数を調整してシステム規模を変更できるというメリットもある。
しかし、並列プロセッサシステムでは、プロセッサ間に相互結合網を構築してプロセッサ間の協調処理を実現する必要がある。この相互結合網の構成は重要であり、この構成次第で、並列プロセッサシステム全体の能力が「単位プロセッサの処理能力×プロセッサ数」に近い値となるか、或いは、最悪の場合「単位プロセッサの処理能力以下」の値となるかが決まる。
従来の相互結合網の接続形態には、例えば図１に示す全結合型、図２に示す並列バス型、図３に示すリング型、図４に示すメッシュ型、図５に示すｎキューブ型等といった様々な形態がある。これらの相互結合網の接続形態は、大略機能で分割すると、プロセッサ及び通信リンクで構成されたプロセッサノードＰＮと、通信を行うための通信路ＣＰと、３つ以上の通信路ＣＰを接続するクラスタスイッチＣＳとから構成される。
以下、図１〜図３に示す全結合型、並列バス型及びリング型の接続形態について、プロセッサノードＰＮの数をＰとしたとき、各プロセッサノードＰＮ間のバンド幅がＷとなる条件、即ち、プロセッサノードＰＮとクラスタスイッチＣＳとの間の通信路ＣＰのバンド幅が（Ｐ−１）×Ｗとなる条件を比較する。
先ず、通信路ＣＰの性能について比較を行う。図１に示す全結合型の接続形態の場合、各プロセッサノードＰＮ間を独立の通信路ＣＰで接続しているため、各通信路ＣＰのバンド幅はＷとなる。図２に示す並列バス型の接続形態の場合、各プロセッサノードＰＮに対して共通の通信路ＣＰで接続を行うため、通信路ＣＰのバンド幅はＰ×Ｗとなる。又、図３に示すリング型の接続形態の場合、隣接しないプロセッサノードＰＮ間の通信路ＣＰのバンド幅を平均化すると、各通信路ＣＰのバンド幅は（Ｐ−１）×Ｗとなる。従って、全結合型の接続形態が、低い性能の通信路ＣＰでも構成できるため経済的である。
又、クラスタスイッチＣＳの構成で見ると、全結合型の接続形態の場合は（Ｐ−１）×Ｗのバンド幅を制御すれば良いのに対し、並列バス型及びリング型の接続形態の場合は、クラスタスイッチＣＳを通過する隣接しないプロセッサノードＰＮ間の通信も発生するため、（Ｐ−１）×Ｗより大きなバンド幅を制御する必要がある。しかし、クラスタスイッチＣＳに接続される通信路ＣＰの数を見ると、並列バス型及びリング型の接続形態の場合はプロセッサノードＰＮの数に拘わらず３本であるのに対し、全結合型の接続形態の場合はＰ本となる。このため、全結合型の接続形態の場合は、並列プロセッサシステムの並列度が上がる程クラスタスイッチＣＳの構成が複雑化し、コスト的のみならず、技術的にも実現が困難となる。
このように、プロセッサノードＰＮの数、即ち、並列プロセッサシステムの並列度が低い場合には全結合型の接続形態が優れているが、並列度が増大するにつれて並列バス型及びリング型の接続形態の方が構成が技術的に有利になる。
ところが、並列バス型及びリング型の接続形態の場合、並列プロセッサシステムの並列度が増大すると、プロセッサノーＰＮ間の距離、即ち、経由するクラスタスイッチＣＳの数が問題となる。全結合型の接続形態の場合、経由するクラスタスイッチＣＳの数は並列度に拘わらず２個であるのに対し、並列バス型の接続形態の場合、最大パスでプロセッサノードＰＮの数であるＰ個となり、リング型の接続形態の場合、最大パスでＩＮＴ（Ｐ／２＋１）（ただし、ＩＮＴは切り捨てを意味する整数値を示す）となる。更に、全結合型の接続形態の場合は通信遅延を固定遅延で見積れるが、並列バス型及びリング型の接続形態の場合は通信遅延が固定ではないために、通信遅延が並列プロセッサシステム全体の性能に大きく影響を及ぼす可能性がある。
このため、並列プロセッサシステムの並列度が増大すると、全結合型、並列バス型及びリング型のいずれの接続形態も、必ずしも効率的な相互結合網を構築することができない。
又、上記の問題を解決するべく、図４に示すメッシュ型の接続形態や、図５に示すｎキューブ型の接続形態も提案されている。これらメッシュ型及びｎキューブ型の接続形態の場合、接続形態を２次元化及び３次元化しているため、並列プロセッサシステムの並列度が増大したときのプロセッサノードＰＮ間の距離の伸びは、上記並列バス型やリング型の接続形態の場合と比較すると小さい。しかし、並列度が増大に伴うプロセッサノードＰＮ間の距離の伸びが存在することには変わらず、並列プロセッサシステム全体として、コスト的にも技術的にも最適な構成は実現できないという問題があった。
発明の開示
本発明は、上記の問題点を解決することのできる並列プロセッサシステムを提供することを概括的目的とする。
本発明のより具体的な目的は、コスト的にも技術的にも最適な接続形態の相互結合網を有する並列プロセッサシステムを提供することにある。
本発明の他の目的は、一対の並列バスと、パイプラインバスと、命令に応答して演算処理を行う機能とデータを転送する機能とを有する複数のプロセッサノードと、複数の接続モードを有し、並列バスと、パイプラインバスと、プロセッサノードとの接続を制御するクラスタスイッチと、クラスタスイッチの接続モードを制御してプロセッサノードを直列接続及び／又は並列接続するスイッチ制御部とを備えた並列プロセッサシステムを提供することにある。本発明になる並列プロセッサシステムによれば、コスト的にも技術的にも最適な接続形態の相互結合網を有する並列プロセッサシステムを提供することができる。
本発明の他の目的及び特長は、以下図面と共に述べる説明より明らかとなろう。
発明を実施するための最良の形態
図６は、本発明になる並列プロセッサシステムの一実施例を示す図である。本実施例の並列プロセッサシステムは、大略同図に示す如く接続されたプロセッサノード１−１〜１−Ｎ、並列バス２，３、スイッチ制御部４、クラスタスイッチ５−１〜５−Ｎ，６−１〜６−Ｎ，７−１ａ〜７−Ｌａ，７−１ｂ〜７−Ｌｂ，８−１ａ〜８−Ｍａ，８−１ｂ〜８−（Ｍ−１）ｂ及び複数のパイプラインバス９からなる。
プロセッサノード１−１〜１−Ｎは、夫々図７に示す如き同じ構成を有する。プロセッサノード１−ｉ（ｉ＝１〜Ｎ）は、同図に示す如く接続されたプロセッサ１１と双方向型通信リンク１２とからなる。プロセッサ１１は、各種命令に従って演算処理を行い、通信リンク１２は、プロセッサ１１からの要求に応答してデータの転送を行う。後述するように、プロセッサノード１−１〜１−Ｎは、通信リンク１２の通信ポートを介して相互結合される。尚、プロセッサ１１及び通信リンク１２は、夫々周知のものを使用でき、プロセッサノード１−１〜１−Ｎも周知のものを使用できる。
スイッチ制御部４は、クラスタスイッチ５−１〜５−Ｎ，６−１〜６−Ｎ，７−１ａ〜７−Ｌａ，７−１ｂ〜７−Ｌｂ，８−１ａ〜８−Ｍａ，８−１ｂ〜８−（Ｍ−１）ｂの接続モードを制御する制御信号を出力する。後述する如く、クラスタスイッチ５−１〜５−Ｎ，６−１〜６−Ｎは、夫々５つの接続モードを有し、スイッチ制御部４からの制御信号に基づいて１つの接続モードに制御される。又、クラスタスイッチ７−１ａ〜７−Ｌａ，７−１ｂ〜７−Ｌｂ，８−１ａ〜８−Ｍａ，８−１ｂ〜８−（Ｍ−１）ｂは、夫々３つの接続モードを有し、スイッチ制御部４からの制御信号に基づいて１つの接続モードに制御される。
図８（ａ）は、並列バス用クラスタスイッチ５−１〜５−Ｎの５つの接続モードＰＢＭ１ａ〜ＰＢＭ５ａを示す図であり、図８（ｂ）は、並列バス用クラスタスイッチ６−１〜６−Ｎの５つの接続モードＰＢＭ１ｂ〜ＰＢＭ５ｂを示す図である。又、図９（ａ）は、パイプラインバス用クラスタスイッチ７−１ａ〜７−Ｌａ，８−１ａ〜８−Ｌａの３つの接続モードＰＬＢＭ１ａ〜ＰＬＢＭ３ａを示す図であり、図９（ｂ）は、パイプラインバス用クラスタスイッチ７−１ｂ〜７−Ｍｂ，８−１ｂ〜８−（Ｍ−１）ｂの３つの接続モードＰＬＢＭ１ａ〜ＰＬＢＭ３ａを示す図である。
スイッチ制御部４は、クラスタスイッチ５−１〜５−Ｎ，６−１〜６−Ｎ，７−１ａ〜７−Ｌａ，７−１ｂ〜７−Ｌｂ，８−１ａ〜８−Ｍａ，８−１ｂ〜８−（Ｍ−１）ｂの接続モードを集中管理するので、ユーザは、インプリメントするアプリケーションに適した接続構成を予め設定して実アプリケーションを実行することができる。尚、スイッチ制御部４は、マイクロプロセッサ等を用いた電子制御や、物理的なスイッチ構成により実現できる。
図６に示す並列プロセッサシステムの場合、一例として、並列バス２，３の両方とも入力が可能な構成となっており、入力ＩＮ１が並列バス２に入力され、入力ＩＮ２が並列バス３に入力される。又、出力は、並列バス２，３の両方と、最終段のパイプラインバス９から可能な構成となっており、出力ＯＵＴ１が並列バス２から、出力ＯＵＴ２が最終段のパイプラインバス９から、出力ＯＵＴ３が並列バス３から夫々出力される。
次に、Ｎ＝５の場合に、プロセッサノード１−１〜１−５により処理Ａ〜Ｅをこのシリアルな順番でパイプライン処理する場合を、図１０と共に説明する。同図中、図６と同一部分には同一符号を付し、その説明は省略する。尚、図１０及び後述する図中、ハッチングの無いクラスタスイッチは、オフ状態、即ち、接続モードＰＢＭ５ａ，ＰＢＭ５ｂ，ＰＬＢＭ２ａ，ＰＬＢＭ２ｂにあることを示し、ハッチングで示すクラスタスイッチは、オン状態、即ち、接続モードＰＢＭ１ａ〜ＰＢＭ４ａ，ＰＢＭ１ｂ〜ＰＢＭ４ｂ，ＰＬＢＭ１ａ，ＰＬＢＭ３ａ，ＰＬＢＭ１ｂ，ＰＬＢＭ３ｂのいずれかであることを示す。又、クラスタスイッチがオフ状態にあるため接続されないバスは破線で示し、接続されているバスのみを実線で示す。
この場合、スイッチ制御部４は、クラスタスイッチ５−１を接続モードＰＢＭ３ａに、クラスタスイッチ８−１ａ，８−２ａ，８−３ａを接続モードＰＬＢＭ１ａに、クラスタスイッチ７−１ａ，７−２ａを接続モードＰＬＢＭ３ａに、クラスタスイッチ８−１ｂ，８−２ｂを接続モードＰＬＢＭ３ｂに、クラスタスイッチ７−１ｂ，７−２ｂを接続モードＰＬＢＭ１ｂに、夫々制御する制御信号を出力する。これにより、パイプラインバス９が図１０に示す如く接続された相互結合網が構築される。入力ＩＮ１が並列バス２に入力されると、処理Ａ〜Ｅが順番に実行されて、出力ＯＵＴ２がクラスタスイッチ８−３ａから出力される。
次に、Ｎ＝５の場合に、プロセッサノード１−１〜１−５により処理Ａ〜Ｃをこのシリアルな順番でパイプライン処理する場合を、図１１と共に説明する。この場合、処理Ｂの負荷は大きく、処理Ｂ１〜Ｂ３を並列に実行することで実現するものとする。同図中、図６と同一部分には同一符号を付し、その説明は省略する。
この場合、スイッチ制御部４は、クラスタスイッチ５−１，５−５を接続モードＰＢＭ３ａに、クラスタスイッチ５−２を接続モードＰＢＭ１ａに、クラスタスイッチ５−３，５−４を接続モードＰＢＭ４ａに、クラスタスイッチ６−１を接続モードＰＢＭ３ｂに、クラスタスイッチ６−２，６−３を接続モードＰＢＭ４ｂに、クラスタスイッチ６−４を接続モードＰＢＭ１ｂに、クラスタスイッチ８−１ａ，７−１ａ，８−２ａ，７−２ａを接続モードＰＬＢＭ２ａに、クラスタスイッチ８−３ａを接続モードＰＬＢＭ１ａに、クラスタスイッチ８−１ｂ，７−１ｂ，８−２ｂ，７−２ｂを接続モードＰＬＢＭ２ｂに、夫々制御する制御信号を出力する。これにより、パイプラインバス９が図１１に示す如く接続された相互結合網が構築される。入力ＩＮ１が並列バス２に入力されると、処理Ａ，Ｂ（Ｂ１〜Ｂ３が並列処理），Ｃが順番に実行されて、出力ＯＵＴ２がクラスタスイッチ８−３ａからパイプラインバス９を介して出力される。
このように、本実施例は、全結合型及び並列バス型の接続形態を併せ備えている。具体的には、プロセッサノードの複数の通信ポートを、同一のプロセッサノードからの通信ポートを含まないようにグループ化し、各グループ毎に複数の通信ポートを並列する並列バスと、並列バスとは別に各通信ポート間を相互に接続してプロセッサノードを直列に接続し得るパイプラインバスとを設ける。又、通信ポート、並列バス及びパイプラインバスの接続点に、接続をオン／オフするクラスタスイッチを設け、クラスタスイッチのオン／オフを任意に設定可能とする。これにより、全結合型の接続形態の優位性を保ったまま、並列バスを利用してプロセッサノード単体の処理能力が実行する処理の要求能力に満たない場合に処理を並列展開可能となる。
つまり、音声や画像データの符号化、コンピュータグラフィックス等の信号処理を行うのに適した相互結合網を構築する場合は、信号処理がパイプライン処理を基本としているので、各プロセッサノードを直列に接続するパイプラインバスを利用して一方の通信ポートから入力データを受け取り、プロセッサで処理を施した後に他方の通信ポートから処理結果を次のプロセッサノードへ引き渡す。又、プロセッサノード単体の処理能力が実行する処理の要求能力に満たない場合には、並列バスを利用して処理を並列展開し、１：ｎの接続形態でスキャッタリング／ギャザリングにより処理を複数のプロセッサノードで分散して行うことができる。この結果、信号処理の処理負荷の大きい箇所のみを並列展開することの可能な相互結合網を構築可能な、即ち、高い柔軟性で相互結合網を構築可能な並列プロセッサシステムを実現できる。
従って、全結合型の接続形態と比較して大幅にハードウェア規模を縮小しつつ、パイプライン処理に適したプロセッサノードの直列接続を可能とし、ハードウェア規模の小さな並列バスを併用して並列展開をも可能とすることができる。つまり、信号処理で必要となるパイプライン処理及び並列処理の全ての組み合わせが、パイプラインバス及び並列バスの２種類のバスの接続を制御するクラスタスイッチを任意に制御することで実現できる。
尚、上記実施例では、各プロセッサノードが同じ構成を有するものとして説明したが、並列プロセッサシステム内の全てのプロセッサノードが同じ構成を有する必要はなく、２以上の種類のプロセッサノードを備える構成としても良い。
次に、本実施例における各種相互結合網を図１２以降と共に説明する。図１２、図１４、図１６、図１８、図２０、図２２及び図２４中、図６，図１０及び図１１と同一部分には同一符号を付し、その説明は省略する。
図１２に示す相互結合網の場合、スイッチ制御部４は、クラスタスイッチ８−２ａを接続モードＰＬＢＭ２ａに、クラスタスイッチ６−３，６−４，６−５を夫々接続モードＰＢＭ３ｂ，ＰＢＭ２ｂ，ＰＢＭ２ｂに制御する制御信号を出力する点が図１０の場合と異なる。従って、この場合は、入力ＩＮ１が並列バス２に入力されると、処理Ａ〜Ｃが順番に実行されて、出力ＯＵＴ３がクラスタスイッチ６−５から並列バス３を介して出力される。
図１３は、この場合の動作タイミングを示すタイムチャートである。同図中、ｔは時間を示す。画像Ｉ１〜Ｉ５からなる入力画像データに対して、プロセッサノード１−１は、図示の如きタイミングで処理Ａを行って出力データＯ１を出力する。プロセッサノード１−２は、プロセッサノード１−１の出力データＯ１に対して図示の如きタイミングで処理Ｂを行って出力データＯ２を出力する。又、プロセッサノード１−３は、プロセッサノード１−２の出力データＯ２に対して図示の如きタイミングで処理Ｂを行って出力データＯ３を出力する。ここで、処理Ａの処理時間をＴＡ、処理Ｂの処理時間をＴＢ、処理Ｃの処理時間をＴＣで示す。
この場合、たまたま処理Ｂの負荷が大きいため、処理Ｂを行っているプロセッサノード１−２に対する入力データがＯＦＷで示すようにオーバーフローしてしまう。他方、出力データはＵＦＷで示すようにアンダーフローしてしまう。このため、このような場合には、処理Ｂを並列展開すれば良い。
図１４は、上記処理Ｂを並列展開する場合の相互結合網を示し、接続は図１１の場合と同じである。図１５は、この場合の動作タイミングを示すタイムチャートである。同図中、ｔは時間を示す。画像Ｉ１〜Ｉ５からなる入力画像データに対して、プロセッサノード１−１は、図示の如きタイミングで処理Ａを行って出力データを出力する。プロセッサノード１−２〜１−４は、プロセッサノード１−１の出力データに対して図示の如きタイミングで処理Ｂを行って出力データを出力する。具体的には、プロセッサノード１−２は画像Ｉ１〜Ｉ５の画像部分Ｉ１−ａ〜Ｉ５−ａを処理し、プロセッサノード１−３は画像Ｉ１〜Ｉ５の画像部分Ｉ１−ｂ〜Ｉ５−ｂを処理し、プロセッサノード１−４は画像Ｉ１〜Ｉ５の画像部分Ｉ１−ｃ〜Ｉ５−ｃを処理する。又、プロセッサノード１−５は、プロセッサノード１−２〜１−４の出力データに対して図示の如きタイミングで処理Ｃを行って出力データを出力する。この場合、処理Ｂを並列展開することにより、処理Ｂの負荷が大きい場合の処理Ａ〜Ｃ全体のスループットを、図１２に示す相互結合網を用いた場合に比べて向上することができる。
図１６は、図１７に示す処理Ａ〜Ｅを実行するための相互結合網を示す図である。スイッチ制御部４が各クラスタスイッチを図１６に示すように制御することにより、処理Ａ、並列展開された処理Ｂ１，Ｂ２からなる処理Ｂ、処理Ｃ、並列展開された処理Ｄ１，Ｄ２からなる処理Ｄ、及び処理Ｅが並列バス２に入力された入力ＩＮ１に対して順次行われ、出力ＯＵＴ２がクラスタスイッチ８−４ａからパイプラインバス９を介して出力される。
図１８は、図１９に示す処理Ａ〜Ｅを実行するための相互結合網を示す図である。スイッチ制御部４が各クラスタスイッチを図１８に示すように制御することにより、処理Ａ、並列展開された処理Ｂ，Ｃ，Ｄ、及び処理Ｅが並列バス２に入力された入力ＩＮ１に対して順次行われ、出力ＯＵＴ２がクラスタスイッチ８−４ａからパイプラインバス９を介して出力される。この場合、処理Ｂは、パイプライン処理Ｂ１〜Ｂ３からなる。
図２０は、図２１に示す処理Ａ〜Ｆを実行するための相互結合網を示す図である。スイッチ制御部４が各クラスタスイッチを図２０に示すように制御することにより、パイプライン処理Ａ１，Ａ２、及び処理Ｄ，Ｅ，Ｆが並列バス２に入力された入力ＩＮ１に対して順次行われると共に、並列展開された処理Ｂ，Ｃ、及び処理Ｄ，Ｅ，Ｆが並列バス３に入力された入力ＩＮ２に対して順次行われ、出力ＯＵＴ２がクラスタスイッチ８−４ａからパイプラインバス９を介して出力される。この場合、処理Ｄ，Ｅ，Ｆは、パイプライン処理Ａ１，Ａ２の処理結果と並列展開された処理Ｂ，Ｃの処理結果とに対して行われる。これにより、例えば入力ＩＮ１が音声データで、入力ＩＮ２が画像データであり、各々を符号化処理した結果を多重化してビットストリームとして出力ＯＵＴ２として出力するような処理も可能となる。
図２２は、図２３に示す処理Ａ〜Ｆを実行するための相互結合網を示す図である。スイッチ制御部４が各クラスタスイッチを図２２に示すように制御することにより、パイプライン処理Ａ１，Ａ２、及び処理Ｄ，Ｅ，Ｆが並列バス２に入力された入力ＩＮ１に対して順次行われると共に、並列展開された処理Ｂ，Ｃ、及び処理Ｄ，Ｅ，Ｆが並列バス３に入力された入力ＩＮ２に対して順次行われる。この場合、処理Ｄ，Ｅ，Ｆは、パイプライン処理Ａ１，Ａ２の処理結果と並列展開された処理Ｂ，Ｃの処理結果とに対して行われ、出力ＯＵＴ２がクラスタスイッチ８−４ａからパイプラインバス９を介して出力される。又、パイプライン処理Ａ１，Ａ２の処理結果が、出力ＯＵＴ１としてクラスタスイッチ５−７から並列バス２を介して出力される。更に、並列バス３に入力された入力ＩＮ２が、出力ＯＵＴ３としてクラスタスイッチ６−７から並列バス３を介して出力される。これにより、複数の出力ポートから入力データや途中結果を任意に出力することが可能となる。
図２４は、図２５に示す処理Ａ〜Ｅを実行するための相互結合網を示す図である。スイッチ制御部４が各クラスタスイッチを図２４に示すように制御することにより、パイプライン処理Ａ、並列展開された処理Ｂ１〜Ｂ３からなる処理Ｂ、及び処理Ｃ，Ｄ，Ｅが並列バス２に入力された入力ＩＮ１に対して順次行われると共に、並列展開された処理Ｂ，Ｃ、及び処理Ｄ，Ｅ，Ｆが並列バス３に入力された入力ＩＮ２に対して順次行われる。この場合、処理Ｃ，Ｄ，Ｅは、並列展開された処理Ｂ１〜Ｂ３の処理結果に対して行われ、出力ＯＵＴ２がクラスタスイッチ８−４ａからパイプラインバス９を介して出力される。又、並列展開された処理Ｂ１〜Ｂ３の処理結果が、出力ＯＵＴ１としてクラスタスイッチ５−７から並列バス２を介して出力される。更に、入力ＩＮ１に対して処理Ａを行った処理結果が、出力ＯＵＴ３としてクラスタスイッチ６−７から並列バス３を介して出力される。これにより、複数の出力ポートから入力データや途中結果を任意に出力することが可能となる。
以上、本発明を実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは言うまでもない。
【図面の簡単な説明】
図１は全結合型の接続形態を説明する図、
図２は並列バス型の接続形態を説明する図、
図３はリング型の接続形態を説明する図、
図４はメッシュ型の接続形態を説明する図、
図５はｎキューブ型の接続形態を説明する図、
図６は本発明になる並列プロセッサシステムの一実施例を示す図、
図７はプロセッサノードの構成を示す図、
図８（ａ）及び図８（ｂ）は並列バス用クラスタスイッチの接続モードを説明する図、
図９（ａ）及び図９（ｂ）はパイプラインバス用クラスタスイッチの接続モードを説明する図、
図１０はＮ＝５の場合のパイプライン処理を説明する図、
図１１はＮ＝５の場合の並列処理を説明する図、
図１２は実施例において処理Ａ〜Ｃを行う場合を説明する図、
図１３は図１２において処理Ａ〜Ｃを行う場合を説明するタイムチャート、
図１４は実施例において並列処理Ｂ１〜Ｂ３を含む処理Ａ〜Ｃを行う場合を説明する図、
図１５は図１２において処理Ａ〜Ｃを行う場合を説明するタイムチャート、
図１６は実施例において並列処理Ｂ１，Ｂ２，Ｄ１，Ｄ２を含む処理Ａ〜Ｅを行う場合を説明する図、
図１７は、図１６の相互結合網で行う処理Ａ〜Ｅを示す図、
図１８は実施例において並列処理Ｂ〜Ｄを含む処理Ａ〜Ｅを行う場合を説明する図、
図１９は、図１８の相互結合網で行う処理Ａ〜Ｅを示す図、
図２０は実施例において並列処理Ａ〜Ｃを含む処理Ａ〜Ｆを行う場合を説明する図、
図２１は、図２０の相互結合網で行う処理Ａ〜Ｆを示す図、
図２２は実施例において並列処理Ａ〜Ｃを含む処理Ａ〜Ｆを行う場合を説明する図、
図２３は、図２２の相互結合網で行う処理Ａ〜Ｆを示す図、
図２４は実施例において並列処理Ｂ１〜Ｂ３を含む処理Ａ〜Ｅを行う場合を説明する図、
図２５は、図２４の相互結合網で行う処理Ａ〜Ｅを示す図である。
【図１】
0004154124.tif 000002
【図２】
0004154124.tif 000003
【図３】
0004154124.tif 000004
【図４】
0004154124.tif 000005
【図５】
0004154124.tif 000006
【図６】
0004154124.tif 000007
【図７】
0004154124.tif 000008
【図８】
0004154124.tif 000009
【図９】
0004154124.tif 000010
【図１０】
0004154124.tif 000011
【図１１】
0004154124.tif 000012
【図１２】
0004154124.tif 000013
【図１３】
0004154124.tif 000014
【図１４】
0004154124.tif 000015
【図１５】
0004154124.tif 000016
【図１６】
0004154124.tif 000017
【図１７】
0004154124.tif 000018
【図１８】
0004154124.tif 000019
【図１９】
0004154124.tif 000020
【図２０】
0004154124.tif 000021
【図２１】
0004154124.tif 000022
【図２２】
0004154124.tif 000023
【図２３】
0004154124.tif 000024
【図２４】
0004154124.tif 000025
【図２５】
0004154124.tif 000026