"複数の宛先の情報が付加されたヘッダおよび前記ヘッダに関連するデータを含むデータ単位を受信する入力バッファと、前記宛先の情報に対応するデータ単位を格納する複数の仮想チャネルと、前記宛先が同一か否かにより、前記複数の仮想チャネルの各々に格納されているデータ単位の送信先の中継装置の仮想チャネルの割当順序を決定する宛先比較部と、前記送信先の中継装置の仮想チャネルの割り当てが決定された仮想チャネルから、格納されたデータ単位を出力する出力部とを備えた、中継装置。前記宛先比較部は、データ単位の宛先を区別し、送信先の中継装置の仮想チャネルが未割り当ての宛先へ送られるデータに対し、優先的に送信先の中継装置の仮想チャネルを割り当てるよう、前記割当順序を決定する、請求項1に記載の中継装置。前記宛先比較部は、前記宛先が同一であるデータ単位に対して、前記ヘッダに付与された時間情報に基づいて、前記送信先の中継装置の仮想チャネルの割当順序を決定する、請求項2に記載の中継装置。前記宛先比較部は、前記時間情報としてデータが送信されてからの経過時間を用い、前記経過時間が長いデータから優先的に前記送信先の中継装置の仮想チャネルを割り当てる、請求項3に記載の中継装置。前記宛先比較部は、前記時間情報として宛先に届くまでの締切時刻を用い、前記締切時刻の残り時間が少ないデータから優先的に前記送信先の中継装置の仮想チャネルを割り当てる、請求項3に記載の中継装置。宛先が定められたデータを各々が受け取る複数の入力ポートをさらに備え、前記出力部は、各々がデータを出力する複数の出力ポートと、各入力ポートに対応して設けられ、受け取ったデータを格納する複数の仮想チャネルと、前記仮想チャネルに格納されたデータの宛先ごとに、時間情報に基づく優先度が最も高いデータを格納する仮想チャネルと、前記優先度が最も高いデータの宛先に到達可能なバスに接続された出力ポートとを接続することで、前記データを各出力ポートから出力するクロスバスイッチとを備える、請求項1に記載の中継装置。仮想チャネルに格納されたデータが送信されてからの経過時間が長いほど、前記時間情報に基づく優先度は高い、請求項6に記載の中継装置。仮想チャネルに格納されたデータが宛先に届くまでの締切時刻までの残り時刻が短いほど、前記時間情報に基づく優先度は高い、請求項6に記載の中継装置。前記データのパケットは複数のフリットから構成されており、前記データは、フリット単位で前記バス上を伝送されており、自中継装置を通過するデータの負荷を測定する負荷測定部をさらに備え、前記負荷測定部により測定された負荷が予め定められた閾値よりも大きい場合は、前記クロスバスイッチは、1フリットを送信する毎に、仮想チャネルと出力ポートとの接続を切り替え、負荷が閾値以下の場合は、1パケット分のフリットの送信が完了する毎に、仮想チャネルと出力ポートとの接続を切り替える、請求項6に記載の中継装置。前記負荷測定部は、自中継装置内の仮想チャネル内に格納されているフリットの量を、前記中継装置を通過するデータの負荷として測定する、請求項9に記載の中継装置。前記クロスバスイッチは、1フリットを送信する毎に、常に仮想チャネルと出力ポートとの接続を切り替える、請求項9に記載の中継装置。宛先の異なるパケット間で、重複する宛先までの伝送経路を特定する伝送経路解析部と、前記時間情報に基づいて、前記仮想チャネルの宛先ごとに、前記時間情報に基づく優先度が最も高いデータを格納する仮想チャネルと接続される出力チャネルを選択する出力チャネル選択部とをさらに備え、前記出力チャネル選択部は、前記伝送経路解析部によって特定された伝送経路に基づいて、互いに伝送経路の重複が相対的に少ない宛先のパケットを格納する中継装置から順番に、送信先の中継器の仮想チャネルを割り当てる、請求項1に記載の中継装置。前記宛先比較部は、前記宛先までの経路上において通過する前記中継装置が同一か否かにより、前記複数の仮想チャネルの各々に格納されているデータ単位の送信先の中継装置の仮想チャネルの割当順序を決定する、請求項1に記載の中継装置。各々が、宛先に届くまでの締め切り時間情報が付加されたヘッダおよび前記ヘッダに関連するデータを含むデータ単位を格納する複数の仮想チャネルと、前記時間情報が示す時刻に応じて、前記複数の仮想チャネルの各々に格納されているデータ単位の送信先の中継装置の仮想チャネルの割当順序を決定する宛先比較部とを備え、前記送信先の中継装置の仮想チャネルの割り当てが決定された仮想チャネルから、格納されたデータ単位を出力し、集積回路内を伝送されるデータ単位を中継する中継装置。これに対し、NoCでは集積回路上に複数の中継装置を構成する必要があるため、並列計算機やATM網の中継装置に比べて、各中継装置上で構成できる仮想チャネルの数やサイズを多く設けることができない。たとえば、1個の仮想チャネルのサイズはパケット1つ分程度である。このため、NoCでは、より短い遅延時間内に、限られた仮想チャネルを効率的に利用しなければならず、中継装置内で入力ポートと出力ポートの接続数を最大にするだけでなく、送信先の中継装置においても、入力ポートと出力ポートの接続数が大きくなるよう配慮した送信スケジュールの制御が重要になる。また、NoC上に構成する中継装置では、集積回路の規模や、許容できる遅延時間、消費電力などの制約を受ける。このため、WavefrontAllocatorのような大規模な組み合せから最適な組み合わせを探索するアルゴリズムや、PallalMatchingInteraterのように繰り返し処理を行うアルゴリズムを、そのままNoC上の各中継装置に設けることは好ましくない。並列計算機やATMで用いられている一般的な中継装置の仕組みをそのまま、NoCの中継装置に適用した場合には、アービタの回路規模や処理時間、消費電力が大きくなり、NoCの性能の低下や、処理時間の増加を引き起こしてしまうといった課題がある。この課題を、以下、より具体的に説明する。図4は、本発明が解決しようとする課題の具体的な一例を説明する図である。中継装置401は4つの入力ポートを介してパケットの送信元となる4つの中継装置中継装置A、中継装置B、中継装置C、中継装置Dと接続し、送られてくるパケットを受信する。また中継装置401は、4つの出力ポートを介してパケットの送信先となる4つの中継装置中継装置E、中継装置F、中継装置G、中継装置Hと接続し、パケットの送信を行う。中継装置401の入力ポートには、それぞれ2個の仮想チャネルが備えられており、入力ポート毎に最大で2箇所の出力ポートに対して送信要求を行うことができる。しかし、送信元の中継装置から、同一の宛先に向けて連続してパケットが送信されると、例えばAge-Basedのように、送信された順番を単純に維持してパケットを中継する場合には、1.同じ先に向かうパケットが連続して送信されることで、2.同じ宛先のパケットが入力ポート内の全仮想チャネルVCを占有が発生し、3.仮想チャネルVC間による出力ポートの獲得において、出力ポートを獲得できなかった入力ポートは、別の出力ポートが空いていてもパケットを送信できないため、中継装置の伝送性能を低下させることになる。さらに、中継装置401で送信待ちが発生すると、4.送信元の中継装置でも送信待ちが発生し、送信待ちのパケットの宛先とは別の宛先へ向うパケットがあっても、中継装置401内のパケットを追い越して先に送信することができない。例えば図4において、中継装置401は送信元の中継装置から、特定の宛先のパケットを連続して受信したことで、中継装置401の入力ポート0と入力ポート1の全ての仮想チャネルに出力ポート0へ送信されるパケットが格納され、また、中継装置401の入力ポート2と入力ポート3の全ての仮想チャネルに、出力ポート2へ送信されパケットが格納されている状態にあるとする。この時、各仮想チャネルが出力ポートに対してパケットの送信要求を行った結果、入力ポート0の仮想チャネル0が出力ポート0を獲得し、また、入力ポート2の仮想チャネル0が出力ポート1を獲得したとすると、入力ポート1と入力ポート3は、出力ポート1と出力ポート3が空いていても、これらの出力ポートに向けて送信するパケットが無いため、送信待ちの状態となってしまう。また、送信元の中継装置Bや中継装置Dに、出力ポート1や出力ポート3へ向かうパケットが格納されていたとしても、中継装置401内の入力ポート1と入力ポート3の仮想チャネル内のパケットを追い越して先に送信することができない。このように、入力ポート毎に全ての仮想チャネルが特定のパケットによって占有が、中継装置の伝送性能の低下を引き起こす。並列計算機やATMでは、比較的、仮想チャネルの数やサイズに対する制約や、遅延時間に対する制約が小さいため、同じ宛先に向かうパケットが連続して送信されても、中継装置内の仮想チャネルが同じ宛先に向かうパケットによって全て占有される状況が発生しにくい。また、同じ宛先に向かうパケットによって全ての仮想チャネルが占有されたとしても、占有状態が続く時間に比べ、並列計算やATMで許容できるパケットの遅延時間が長いため伝送性能への影響は少ない。一方、NoCでは、半導体回路上に中継装置を実装するため、仮想チャネルの数やサイズ、遅延時間に対する制約が大きく、中継装置内の仮想チャネルの不足が発生しやすく、NoC全体の伝送性能に対し大きく影響する。本発明は上記課題を解決するためになされたものであり、その目的は、パケットの伝送性能スループットや遅延時間の低下を抑制し、NoC全体の伝送性能を向上させる中継装置を提供することにある。本発明による中継装置は、複数の宛先の情報が付加されたヘッダおよび前記ヘッダに関連するデータを含むデータ単位を受信する入力バッファと、前記宛先の情報に対応するデータ単位を格納する複数の仮想チャネルと、前記宛先が同一か否かにより、前記複数の仮想チャネルの各々に格納されているデータ単位の送信先の中継装置の仮想チャネルの割当順序を決定する宛先比較部と、前記送信先の中継装置の仮想チャネルの割り当てが決定された仮想チャネルから、格納されたデータ単位を出力する出力部とを備えている。前記宛先比較部は、データ単位の宛先を区別し、送信先の中継装置の仮想チャネルが未割り当ての宛先へ送られるデータに対し、優先的に送信先の中継装置の仮想チャネルを割り当てるよう、前記割当順序を決定してもよい。前記宛先比較部は、前記宛先が同一であるデータ単位に対して、前記ヘッダに付与された時間情報に基づいて、前記送信先の中継装置の仮想チャネルの割当順序を決定してもよい。前記宛先比較部は、前記時間情報としてデータが送信されてからの経過時間を用い、前記経過時間が長いデータから優先的に前記送信先の中継装置の仮想チャネルを割り当ててもよい。前記宛先比較部は、前記時間情報として宛先に届くまでの締切時刻を用い、前記締切時刻の残り時間が少ないデータから優先的に前記送信先の中継装置の仮想チャネルを割り当ててもよい。前記中継装置は、宛先が定められたデータを各々が受け取る複数の入力ポートをさらに備え、前記出力部は、各々がデータを出力する複数の出力ポートと、各入力ポートに対応して設けられ、受け取ったデータを格納する複数の仮想チャネルと、前記仮想チャネルに格納されたデータの宛先ごとに、時間情報に基づく優先度が最も高いデータを格納する仮想チャネルと、前記優先度が最も高いデータの宛先に到達可能なバスに接続された出力ポートとを接続することで、前記データを各出力ポートから出力するクロスバスイッチとを備えていてもよい。仮想チャネルに格納されたデータが送信されてからの経過時間が長いほど、前記時間情報に基づく優先度が高くてもよい。仮想チャネルに格納されたデータが宛先に届くまでの締切時刻までの残り時刻が短いほど、前記時間情報に基づく優先度が高くてもよい。前記データのパケットは複数のフリットから構成されており、前記データは、フリット単位で前記バス上を伝送されており、前記中継装置は、自中継装置を通過するデータの負荷を測定する負荷測定部をさらに備え、前記負荷測定部により測定された負荷が予め定められた閾値よりも大きい場合は、前記クロスバスイッチは、1フリットを送信する毎に、仮想チャネルと出力ポートとの接続を切り替え、負荷が閾値以下の場合は、1パケット分のフリットの送信が完了する毎に、仮想チャネルと出力ポートとの接続を切り替えてもよい。前記負荷測定部は、自中継装置内の仮想チャネル内に格納されているフリットの量を、前記中継装置を通過するデータの負荷として測定してもよい。前記クロスバスイッチは、1フリットを送信する毎に、常に仮想チャネルと出力ポートとの接続を切り替えてもよい。前記中継装置は、宛先の異なるパケット間で、重複する宛先までの伝送経路を特定する伝送経路解析部と、前記時間情報に基づいて、前記仮想チャネルの宛先ごとに、前記時間情報に基づく優先度が最も高いデータを格納する仮想チャネルと接続される出力チャネルを選択する出力チャネル選択部とをさらに備え、前記出力チャネル選択部は、前記伝送経路解析部によって特定された伝送経路に基づいて、互いに伝送経路の重複が相対的に少ない宛先のパケットを格納する中継装置から順番に、送信先の中継器の仮想チャネルを割り当ててもよい。前記宛先比較部は、前記宛先までの経路上において通過する前記中継装置が同一か否かにより、前記複数の仮想チャネルの各々に格納されているデータ単位の送信先の中継装置の仮想チャネルの割当順序を決定してもよい。本発明による他の中継装置は、各々が、宛先に届くまでの締め切り時間情報が付加されたヘッダおよび前記ヘッダに関連するデータを含むデータ単位を格納する複数の仮想チャネルと、前記時間情報が示す時刻に応じて、前記複数の仮想チャネルの各々に格納されているデータ単位の送信先の中継装置の仮想チャネルの割当順序を決定する宛先比較部とを備え、前記送信先の中継装置の仮想チャネルの割り当てが決定された仮想チャネルから、格納されたデータ単位を出力し、集積回路内を伝送されるデータ単位を中継してもよい。本発明によれば、中継装置内の仮想チャネルのサイズや数を増やすことなく、宛先の異なるパケットに対して仮想チャネルをより均一に割り当てることで、同一の宛先のパケットによる中継装置内の仮想チャネルが占有を回避する。これにより、各中継装置においてより多くの宛先に対して同時にパケットが送信できるため、次の中継装置においてデータが流れにくくなることを防ぐことができる。その結果、NoC全体の伝送性能スループット、遅延時間、ジッターを向上させることができる。以下、添付の図面を参照しながら、本発明による中継装置の動作原理、および、実施形態を説明する。図5は、本発明の中継装置501の動作の概要を示している。並列計算機やATMなどで利用される中継装置では、仮想チャネル内のパケットをより多く送信することを主眼にパケットの送信スケジューリングが行われている。上述の利用環境では、NoCに比べて仮想チャネルの数やサイズに対する制約や、遅延時間への制約が少ないため、送信先の中継装置の仮想チャネルが全て同じ宛先へ送信されるパケットで占有されることを考慮する必要はなかった。実際、仮想チャネルに宛先の異なるパケットを格納するように配慮した仮想チャネルの割り当て制御は行われていなかった。これに対し、本発明では、仮想チャネルの数やサイズに対する制約を受け、また、遅延時間の制約を受けるNoCのような通信環境において利用される中継装置を想定している。具体的には、本発明による中継装置は、中継装置内に宛先の異なるパケットが複数存在する場合には、パケットが送信された順序を単純に維持して中継するのではなく、宛先の異なるパケットが、送信先の中継装置の仮想チャネルにおいて、できるだけ均一に格納されるように、パケットの送信スケジューリングを行う。たとえば図5に示すように、1.送信元の中継装置が、宛先の異なるパケットを選別し、中継装置501の仮想チャネルにおいて、宛先の異なるパケットが均一に格納されるようにパケットを送信することで、2.宛先が同じパケットが全ての仮想チャネルVCを占有してしまう状況を回避する。これにより3.入力ポートと出力ポートの排他的な接続の組合せが増加し、送信待ち状態が削減されることで、伝送性能の低下が抑制される。以下、本発明の各実施形態にかかる中継装置を説明する。実施形態1図6は、本実施形態において想定する分散型のバスの構成図である。本実施形態では、送信ノードとしての複数のバスマスタBMと、受信ノードとしての複数のメモリとを、複数の中継装置を介して接続した構成多段接続網、MIN:MultistageInterconnectionNetworkを例に説明する。各中継装置は、2入力および2出力であるとする。図6では、8個のバスマスタBM0~BM7と、12個の中継装置R0~R11と、8個のメモリメモリ0~7とがバスで接続される回路の様子を示している。12個の中継装置は、4個ずつ3つのグループに分類されている。3つのグループは、8個のバスマスタに接続されるグループR0、R1、R2、R3、8個のメモリに接続されるグループR8、R9、R10、R11、及び、バスマスタ、又はメモリに接続する中継装置を結ぶグループR4、R5、R6、R7である。多段接続網を構成する各中継装置は、2入力2出力のクロスバスイッチを備えている。図6bに示すように、スイッチを切り替えることによって入力と出力の組合せを変更することで、トラヒックの流れを2種類の伝送経路へ切り替えて送信できる。なお、出力先の伝送経路が異なっていれば、中継装置は2つのトラヒックを各伝送経路に同時に出力することが可能である。多段接続網では、各中継装置でのスイッチの切り替えによって、全バスマスタと全メモリ間で、必ず1つ以上の伝送経路を構築することができる。一般的に、クロスバスイッチによって、N個のバスマスタとM個のメモリの全てを接続するためには、スイッチがN×M個の必要となる。そしてバスマスタやメモリの数が増えるにつれてスイッチの数は急激に増加してしまう。これに対し、多段接続網MINでは、入出力数の小さいクロスバスイッチを階層的に接続することで少ないスイッチでバスマスタとメモリ間の接続を切り替えることができるという特徴がある。なお、本実施形態においては多段接続網を例に挙げて説明するが、これは一例である。集積回路の構成がその他のトポロジーであっても本発明を適用することが可能である。また、本実施形態では、バスマスタからメモリへのデータ転送は、パケット交換方式により複数の中継装置を介して行われるとして説明する。パケットは、図6aに示すように、フリットと呼ばれる、バスを使って1サイクルで伝送可能なサイズに分割されて、隣接する中継装置へと送信される。図7は、パケット1100の伝送フォーマットの一例と、パケット1000を複数のフリットに分割した例を示す。パケット1100は、ヘッダフィールド1101、データフィールド1102および制御コードフィールド1103を備えている。ヘッダフィールド1101には、たとえば、送信先のアドレス、送信元のアドレス、パケットが送信されてから経過した時刻の情報時間情報が記述される。時間情報の記述方法は任意であるが、そのパケットがバスマスタに送信されてからの経過時間を他のパケットとの間で比較できる値であれば良い。例えば、バスマスタに送信された時刻を直接記載する方法や、送信されてからの経過時刻、また、現在までに通過した中継装置のホップ数などを記載しても良い。データフィールド1102には、たとえば映像データ、音声データが記述される。制御コードフィールド1103には、たとえば、予め定められたパケット1100の終了コードが記述される。上述のヘッダフィールド1101のデータのうち、送信先のアドレスと、送信元のアドレスとに基づいて、パケット1100の中継処理と、受信側での受信処理とが行われる。送信側のバスマスタは、パケット1100を、フリットと呼ばれる小さなパケット単位に分解して伝送する。1フリットは、バスを使って1サイクルで伝送可能なデータであり、そのサイズはバス幅の大きさによって決定される。パケット1100を分割したフリットのうち、最初に送信されるフリットは、ヘッダーフリット1104と呼ばれる。ヘッダーフリット1104には、パケットの先頭であることを示すフラグ情報、及びパケットの送信先のアドレス情報が付与されている。なお、ヘッダーフリット1104に続く各フリットには、送信先を特定するアドレス情報は格納されていない。その理由は、ヘッダーフリット1104に続くフリットは、ヘッダーフリット1104と同じ宛先に送られるためである。ヘッダーフリット1104によって宛先が決まり、そのトラヒックのフリットを出力する出力バッファが決まると、後に続くフリットは、ヘッダーフリット1104と同じ出力バッファを利用してヘッダーフリット1104が示す宛先に伝送される。また、パケットの最終のフリットはテイルフリット1106と呼ばれる。テイルフリット1106には、そのフリットがパケットを構成する最後のフリットであることを示すフラグ情報が付与されている。また、ヘッダーフリット1104とテイルフリット1106以外のフリットは、主にデータを伝送するフリットでありデータフリット1105と呼ぶ。受信側のメモリは、制御コードフィールド1103に記述された終了コードを検出すると、その終了コードに基づき、伝送されたフリットをパケットへ再構築する。たとえば、1パケットのサイズは128バイト、1フリットのサイズは32ビットまたは64ビットである。ただし、1パケットのサイズおよび1フリットのサイズはアプリケーションによって異なり得るため、上述のサイズは一例に過ぎないことに留意されたい。フリットの長さは、送信先のアドレスと、送信元のアドレスなど、制御データを記述できる長さを基準としてもよい。各中継装置には、送られてきたフリットを蓄えるためのバッファが用意されている。フリットは一旦そのバッファに蓄えられた後、スイッチの切り替えによって目的の経路へと続く中継装置や、宛先のメモリへ送信される。なお図6は、バスマスタからメモリにフリットが送信される例を想定しているが、これは一例である。フリットの宛先はメモリには限られず、たとえば他のバスマスタや、周辺機器と接続するため入出力インターフェイスであってもよい。図8は、本実施形態における中継装置1201の構成図である。中継装置1201は、入力バッファ1204と、スイッチ1205と、出力バッファ1206と、仮想チャネル情報管理部1207と、時間情報比較部1210と、宛先比較部1211と、出力チャネル選択部1212と、送信チャネル選択部1213と、スイッチ切替部1215と、競合検出部1214とを有している。以下、各構成要素の機能を説明する。入力ポート1218は、隣接する中継装置、又は他の送信ノードから送られてきたフリットを受信する。入力バッファ1204は、入力ポート側で隣接する中継装置又は送信ノードから送られてきたフリットを蓄えるバッファである。入力バッファ1204を構成する一時バッファは、中継装置1201の入力ごとに1つ設けられていてもよいし、または、異なるパケット毎に個別のチャネルを利用して送信スケジュール制御ができるように、入力ごとに複数の仮想チャネル1216が設けられていてもよい。本実施形態では、図8に示すように入力バッファ1204ごとに4個ずつ仮想チャネル1216を備えているとする。クロスバスイッチ1205は、中継装置1201の入力ポートと出力ポートの排他的な接続を切り替えるスイッチである。出力ポート1219は中継装置から、隣接する中継装置、又は受信ノードへフリットを送信する送信部である。出力バッファ1206は、出力ポート先の中継装置群1203へフリットを送信する際に利用する一時バッファである。出力バッファ1206には、さらに複数の出力チャネル1217が設けられている。出力チャネル1217は、出力ポート1219の先に接続された中継装置1203の入力バッファ内の仮想チャネルと同じ数だけ設けられており、隣接の中継装置群1203の仮想チャネルと1対1の対応関係が決められている。中継装置1201から送信されるフリットは、送信に利用した出力チャネルに対応する出力ポートの先に接続された中継装置群1203の仮想チャネルに蓄えられる。すなわち、中継装置1201は、フリットの送信に利用する出力チャネルを選択することで、出力ポートの先に接続された中継装置1203へ送信されたフリットが格納される中継装置1203の仮想チャネルを指定できる。仮想チャネル情報管理部1207は、各仮想チャネル1216に格納されるフリットの情報を管理する。仮想チャネル情報管理部1207が管理している情報の内容については、図9を用いて後で説明する。出力ポート選択部1208は、入力バッファ1204に新しいヘッダーフリットが送られてくると、それを受け取り、ヘッダーフリットに記述された宛先情報を基に、次に受け渡す中継装置を特定する。時間情報比較部1210は、各仮想チャネル内に格納されているパケットに付与された時間情報に基づく優先度を比較し、優先度の高い順に仮想チャネルに順番をつける。なお、本実施形態では、パケットに付与される時間情報として、パケットの送信時刻を想定し、また時間情報に基づく優先度は、パケットが送信されてからの経過時間が長いもの、すなわちパケットの送信時刻が古いものほど優先度が高いとする。宛先比較部1211は、各仮想チャネル内に格納されているパケットの宛先で、仮想チャネルをグループ分けし、グループ毎に格納しているパケットの経過時間の長い順に仮想チャネルの割当順序を決定する。出力チャネル選択部1212は、各仮想チャネル内に格納されているフリットのうち、送信時刻比較部1210による送信時刻の比較結果と、宛先比較部1211による宛先の違いの比較結果をもとに、出力バッファ1206で利用されていない出力チャネル1217を選択する。送信チャネル選択部1213は、入力ポートごとに複数の仮想チャネルの中から、フリットを送信する仮想チャネルを1つ選択する。スイッチ切替部1214は、クロスバスイッチ1205を制御して、送信チャネル選択部1213によって、入力ポートごとに1つ選択された仮想チャネルに対し、排他的な出力ポートが割り当てられるようにクロスバスイッチ1205を切り替える。競合検出部1215は、1つの出力ポートに対して、複数の仮想チャネルでフリット送信の競合が発生した場合に、スイッチ切替部1214により出力ポートが割り当てられなかった入力ポートに対し、別の出力ポートに送信する仮想チャネルを選択するように指示する。競合が発生したか否かは、スイッチ切替部1214がクロスバスイッチ1205を切り替えられたか否かで判断することができる。なお、本発明では、中継装置が受信したフリットを仮想チャネルに格納する処理に関与する入力ポート1218、入力バッファ1204、仮想チャネル1216の集まりをまとめて入力部120aと定義する。また、仮想チャネルに格納されているフリットを中継装置から出力する処理に関与するクロスバスイッチ1205、送信チャネル選択部1213、スイッチ切替部1214、出力バッファ1206、出力チャネル1217、出力ポート1219の集まりをまとめて、出力部120bと定義する。図9は、仮想チャネル情報管理部1207で管理され保持される仮想チャネル情報1301の一例である。仮想チャネル情報として、各仮想チャネルを区別するために、入力ポートと仮想チャネルの識別番号が割り当てられており、さらに、仮想チャネルにパケットが格納されると、そのパケットの宛先を特定するためのアドレス情報、パケットが送信されてからの経過時間を示す時間情報、フリットを宛先まで送信するための出力ポートの番号、出力チャネルの番号が管理される。なお、時間情報は経過時間でなくてもよく、たとえばパケットの送信時刻であってもよい。次に、各中継装置1201の動作の概要を、図10のフローチャートと、図11から図18を用いて説明する。なお、図11から図18において、図8、図9と同じ構成には、同じ番号を付与し説明を省略する。回路全体が起動すると中継装置1201は、入力ポート1218を介して隣接する中継装置1202、又は送信ノードから送信されるフリットの受信待ち状態となる。図11Aは中継装置1201が未だフリットを受信していない状態における入力ポート0に関する仮想チャネル情報1301を示し、図11Bは各バッファの様子を示す。以下、本明細書では入力ポート0に関する仮想チャネル情報を1301のみを例示する。参考のため、図11BにはヘッダフリットH1104、データフリットD1105およびテイルフリットT1106が示されている。未だフリットが届いていないため、仮想チャネルは未使用状態となる。図10のステップ1400において、入力ポート1218は、フリットを受信したかどうかを判断する。フリットを受信した場合には処理はステップ1401に進み、フリットを受信していない場合には処理はステップ1402に進む。ステップ1401において、入力ポート1218は仮想チャネル1216に受信したフリットを格納する。なお格納先の仮想チャネル1216は、隣接する中継装置1202で決定される。ステップ1402において、仮想チャネル1216は入力バッファにフリットが存在するか否かを判断する。フリットが存在する場合には処理はステップ1403に進み、フリットが存在しない場合には処理はステップ1400に戻る。ステップ1403において、中継装置内の仮想チャネル1216は、格納されたフリットがヘッダーフリット1104であるかどうかを判定する。先頭フリットがヘッダーフリットである場合はステップ1404に進み、そうでない場合はステップ1407に進む。なお、ステップ1403からステップ1407へ進む例は、パケットの送信途中であっても、仮想チャネルと出力ポートの接続の切り替えが必要な状況がある。たとえば送信時刻が古いフリットが別の送信ノードから遅れて到着した場合である。そのため、ステップ1103からステップ1407に進むように構成している。既に排他接続が確保されている場合には、形式的にはステップ1407の処理を行わずステップ1408に進むことになる。ステップ1404において、格納されたフリットがヘッダーフリットであった場合、仮想チャネル情報管理部1207は、ヘッダーフリットに記録されている宛先のアドレスと、パケットが送信ノードから送信されてから経過した時間を表す時間情報を仮想チャネル情報1301に記録する。図12Aは、中継装置1201にヘッダーフリット1104が受信された場合の仮想チャネル情報1301を示す。図12Bは、入力ポート0で受信されたヘッダーフリット1104が、ステップ1402により、仮想チャネル0に格納された場合の各バッファの様子を示している。ヘッダーフリット1104が、仮想チャネルに届くと、ヘッダーフリット1104に記載されている宛先のアドレスと、パケット及びそれを構成するヘッダーフリット1401が送信された時刻情報を仮想チャネル情報1301に記録する。図12Aは、ヘッダーフリット1104に付与された宛先のアドレスと、送信時刻情報を記録した後の仮想チャネル情報1301の様子を示している。ここでは、パケットの宛先としてメモリ0のアドレス000と、送信された時刻20サイクルが仮想チャネル情報1301に記録されたものとする。図12のステップ1405において、出力ポート選択部1208は、ヘッダーフリットを受け取り、仮想チャネル管理情報1207の出力ポートの番号が未だ設定されていない仮想チャネルに対し出力ポートを決定する。例えば、図6に示した多段接続網の場合では、各メモリに対し3桁の2進数でアドレスが割り当てられ、各パケットのヘッダーフリットには、宛先となるメモリのアドレスが、3桁の2進数が付与されている。各中継装置の出力ポート選択部1208は、ヘッダーフリットに付与された3桁のアドレスのうち、左から中継装置の段数と同じ桁の数字を読み取る。そしてその値が0ならば図5における右上の中継装置へフリットを送り、値が1ならば図5における右下の中継装置へフリットを送るように経路を決定する。例えば、バスマスタBM2から、メモリ5アドレス:101へデータを送る場合には、アドレスに記載された3桁の数字に従って、まず中継装置R1では右下の中継装置R7へフリットが送信され、次に中継装置R7では右上の中継装置R10にフリットが送信され、最後に中継装置R10で右下のメモリ5へフリットが送信される。これにより、バスマスタBM5からメモリ2へとフリットが伝送される。なお、出力ポート選択部1208で出力ポートの選択方法としては、分散バスのトポロジーに応じて、適切に目的地までフリットが送られる方法であれば、上記以外の方法であってもよい。図13Aは、中継装置1201において仮想チャネルの出力ポートが設定された後の仮想チャネル情報1301を示し、図13Bは各チャネルの様子を示す。図13Aでは、入力ポート0の仮想チャネル0には、宛先のアドレスが000のメモリ0へ送信されるフリットが格納されているため、仮想チャネル1216は、フリットをメモリ0へと向う出力ポート0から送信するために、出力ポート番号を0に設定する。図10のステップ1406において、時間情報比較部1210と、宛先比較部1211と、出力チャネル選択部1212は、仮想チャネル情報管理部1207において、出力チャネルが未設定の仮想チャネルに対して、フリットの宛先と、時間情報に基づく優先度としてパケットの送信時刻の古さを基に、宛先ごとにパケットの送信時刻がもっとも古い仮想チャネルに対して、出力チャネルの割り当てを行う。図14Aは中継装置1201において出力チャネルの決定された後の仮想チャネル情報1301を示し、図14Bは各チャネルの様子を示す。図14Bでは、出力ポート0の出力チャネルはいずれも未使用である。本実施形態においては、入力ポート0の仮想チャネル0に出力チャネル0を利用させるために、図14Aでは出力チャネル番号に0が設定される。なお、中継装置内に複数のパケットが存在する場合の出力チャネルの割り当ての詳細については、図17を用いて後で説明する。図10のステップ1407において、送信チャネル選択部1213は、仮想チャネル情報1301を参照し、入力ポート毎に出力チャネルが設定済みの仮想チャネルを1つ選択する。またスイッチ切替部1214は、仮想チャネル情報1301を参照し、送信チャネル選択部1213で選択された仮想チャネルで設定されている出力ポートで競合しているものがないかを判定し、競合が発生した場合、競合している仮想チャネルのいずれか1つを選択する。これにより、入力ポートと出力ポートの間で排他的な接続が選択され、その結果に基づきスイッチ切替部1214はクロスバスイッチ1205を切り替える。ステップ1408において、クロスバスイッチの切り替えが終わると、送信チャネル選択部1213により選択された仮想チャネル1216は、それぞれで決定された出力ポートの出力チャネル1206を利用してフリットを送信する。図15Aは中継装置1201がフリットを送信している状態の仮想チャネル情報1301を示し、図15Bは各チャネルの様子を示す。図15AおよびBでは、中継装置内でパケットが1種類しかないため、入力ポート0の仮想チャネル0内のフリットが順番に、仮想チャネル情報1301に記録されている出力ポートの出力チャネルを通して、メモリ0へと送信される。図10のステップ1409において、仮想チャネル1216は、フリットを送信する際に、送信したフリットがパケットを構成する最後のフリットであるかどうかを判定する。ステップ1410において、送信したフリットがパケットを構成する最後のフリットであった場合には、別のパケットがその仮想チャネルを利用できるように開放する必要がある。そこで仮想チャネル情報管理部1207は、該当する仮想チャネルの情報を初期化する。図16Aはテイルフリット1106が送信された後の仮想チャネル情報1301を示し、図16Bは各チャネルの様子を示す。図16AおよびBでは、テイルフリット1106が送信されたことにより、入力ポート0の仮想チャネル0内のフリットが全て送信され、未使用状態となる。よって、仮想チャネル情報1301は、仮想チャネル0の内容を初期化する。以上、ステップ1401からステップ1410の処理を繰り返すことにより、中継装置1201は、送られてきたパケットを宛先の受信ノードに向けて送信することができる。以下、図17を参照しながら、ステップ1406における処理、すなわち仮想チャネルにヘッダーフリット1104が格納された際に、利用する出力チャネルの詳細な割り当て処理を説明する。また図19を参照しながら、ステップ1407における、入力ポートと出力ポートとの接続を排他的に切り替える処理を詳細に説明する。図17は、仮想チャネル1216に対する出力バッファ1206の割り当ての手順を示している。ここでは、中継装置1201内に複数のパケットを構成するフリットが格納されており、バッファ管理情報1301、及び各バッファの状態が、それぞれ図18A、図18Bに示す状態にある場合を例に説明する。図18Bでは、ヘッダーフリットH、データフリットD、テイルフリットTが示されている。これは、複数のパケットが並列的に入力ポート0および1にそれぞれ受信され、かつ、各出力されていることを意味する。ステップ1501において、中継装置1201の出力チャネル選択部1212は、各仮想チャネルのうち、出力ポートは設定されているが、出力チャネルが未設定の仮想チャネルがあるか確認する。図18Aに示すバッファ管理情報1301では、入力ポート0の仮想チャネル1、及び入力ポート1の仮想チャネル1番に対して出力チャネルが未設定の状態にある。ステップ1502において、出力ポートが設定されているが、出力チャネルが未設定の仮想チャネルがある場合は、バッファ管理情報1301に記録されている出力ポートの中で出力チャネルに空きがあるかどうかを確認する。図18Aの仮想チャネル情報1301では、入力ポート0の仮想チャネル1、及び入力ポート1の仮想チャネル1番は、ともに出力ポート1が設定されている。また、出力ポートの出力チャネルは、図18Aの仮想チャネル情報1301より、出力チャネル2のみが入力ポート1の仮想チャネル2に利用されており、残り利用されていないため空き状態にある。ステップ1503において、時間情報比較部1201は、出力チャネルが未設定の仮想チャネル内の時間情報に基づく優先度バスマスタBMから送信され時刻の古さを比較し、優先度の高い送信時刻が古い仮想チャネルから順序を付け、送信時刻が最も古く出力チャネルが未設定の仮想チャネルを1つ選択する。図18Aのバッファ管理情報1301では、送信時刻が小さい入力ポート1の仮想チャネル1の方が、出力チャネルが未設定状態にある仮想チャネルの中で、最も古いパケットを格納しており、出力チャネルを設定する候補として選択する。ステップ1504において、宛先比較部1211は、選択された仮想チャネルの宛先と同じ宛先で、既に出力チャネル1217が割り当てられている仮想チャネル1216が存在するか否かを判定する。存在する場合には処理はステップ1505に進み、存在しない場合には処理はステップ1507に進む。図18Aに示す仮想チャネル情報1301では、入力ポート1の仮想チャネル1と同じ宛先アドレスの入力ポート1の仮想チャネル2が既に出力ポートが割り当てられているため、処理はステップ1505に進む。次に図17のステップ1505において、出力チャネル選択部1212は、選択中の仮想チャネルの次に送信時刻が古いパケットを格納し、さらに出力チャネルが未設定の仮想チャネルがあるか判定する。存在する場合には処理はステップ1506に進み、存在しない場合には処理はステップ1508に進む。図18Aに示す仮想チャネル情報1301では、選択中の入力ポート1の仮想チャネル1の次に送信時刻が古いパケットを格納し、さらに出力チャネルが未設定の仮想チャネルが存在するため、処理はステップ1506に進む。ステップ1506において、出力チャネル選択部1212は、パケットの送信時刻が選択中の仮想チャネルに次いで古いパケットを格納し、出力チャネルが未設定の仮想チャネルを新たに出力チャネルを設定する候補として選択する。図18Aに示す仮想チャネル情報1301では、現在、出力チャネルを設定する候補として選択中の入力ポート1の仮想チャネル1の次に送信時刻が古く、出力ポートが未設定の入力ポート0の仮想チャネル1を新たな候補に選択する。出力チャネル選択部1212は、選択した仮想チャネルが格納するパケットと同じ宛先へ送信されるパケットを格納する仮想チャネルに出力チャネルが既に設定されていないかの確認ステップ1504を繰り返す。ステップ1504において、同じ宛先が設定されている仮想チャネルが無い場合には、ステップ1507に移り、空いている出力チャネルを選択中の仮想チャネルに割り当てる。ステップ1504において、同じ宛先が設定されている仮想チャネルが無い場合には、処理はステップ1507に進み、出力チャネル選択部1212は空いている出力チャネルを選択中の仮想チャネルに割り当てる。図18Aに示す仮想チャネル情報1301では、新たに出力チャネルを設定する候補となった出力ポートが未設定の入力ポート0の仮想チャネル1と、パケットの宛先が同じ、かつ出力チャネルが設定済みの仮想チャネルが存在しないので、ステップ1507に移り、出力チャネルが割り当てられる。また、ステップ1504からステップ1506を繰り返した結果、ステップ1505において、出力チャネルが未設定の仮想チャネルが他に存在しないと判定された場合には、ステップ1508に移り、最初に選択した送信時刻が最も古く、出力チャネルが未設定仮想チャネルに、空いている出力チャネルを割り当てる。これは、全ての宛先に対し出力チャネルが1つ以上割り当てられているため、異なる宛先間で均一に出力チャネルを割り当てるよりも、送信時刻の古いパケットに出力チャネルを割り当てることを優先したためである。ステップS1508において、出力チャネル選択部1212は空いている出力チャネルを、最初に選択した仮想チャネルに設定する。ステップ1504からステップ1508を行うことで、図18Aの仮想チャネル情報1301では、経過時間のみで比較すると入力ポート1の仮想チャネル1は、出力チャネルが未設定の仮想チャネルの中で、送信時刻が最も古いフリットを格納している。しかしながら、そのフリットの宛先アドレス011は、入力ポート1の仮想チャネル2に格納されているフリットの宛先と同じである。そして入力ポート1の仮想チャネル2には、既に出力チャネル2が割り当てられている。よって、入力ポート0の仮想チャネル1には、出力ポート1の空きチャネルが割り当てられる。以上のように、図17に示されるステップ1501からステップ1508を繰り返すことにより、宛先ごとに最も古いパケットを格納する仮想チャネルにのみ出力チャネルを割り当てることが可能となる。よって、全ての出力チャネル、すなわちそれに対応した出力ポート先の仮想チャネルを全て同じ宛先のパケットが占有するのを回避することが可能になる。図19は、入力ポートと出力ポートを排他的に接続するクロスバスイッチの切り替え方法を示している。中継装置1201は、パケットの送信時の順番を維持し、また伝送遅延の増加を抑制するために、複数の仮想チャネル1216に格納されたパケットフリットのうち、送信ノードで送信されてから経過時間の古いパケットから順番に送信を行う。クロスバスイッチの切り替えにより、入力ポートと出力ポートを排他的に接続する場合、複数の入力ポートと出力ポートの要求に対し、より多くの入力ポートと出力ポートを同時に接続することで、より多くのフリットを転送することができる。このため、並列計算機やATM網などでは、非特許文献1のように、クロスバスイッチの1回の切り替えに、入力ポートと出力ポートの全ての組み合わせから、より最適な組み合わせを探索するWavefrontAllocatorや、フリットを送信する仮想チャネルの選択を入力ポート側と出力ポート側で独立して決定する処理を複数回繰り返すことでより最適な組み合わせを決定するParallelInterativeMatchingなどの方法がとられている。しかし、NoCは、集積回路上に中継装置を構成するため、実装面積や許容される遅延時間、消費電力の制約により、並列計算機やATMなどで用いられる処理量や繰り返し回数が多い方法をそのまま適用するのは困難であり、より簡単な構成と処理量で、より多くの入力ポートと出力ポートを接続することが望ましい。このため、本発明の実施例では、フリットを送信する仮想チャネルの選択を入力ポート側と出力ポート側でそれぞれ独立して1回だけ決定し、出力ポート側での選択結果を、次回の入力切替の結果にフィードバックさせることで、クロスバスイッチによる入力ポートと出力ポートの接続がより多くなる組み合わせを決定する。そのため、送信チャネル選択部1213は、ステップ1601において、入力ポート毎に、送信されてからの経過時間が最も古いパケットを格納する仮想チャネルを1つ選択する。次に、ステップ1602において、スイッチ切替部1214は、ステップ1601で、送信チャネル選択部1213が選択した各入力ポートの仮想チャネル間で、出力ポートの利用で競合が発生した場合、出力ポート毎に経過時間の最も古いパケットを格納する仮想チャネルを1つ選択し、選択された仮想チャネルと出力ポートが接続するようにクロスバスイッチ1205の切り替えを行う。ステップ1603において、クロスバスイッチの切り替えが終わると、スイッチ切替部1214で選択された仮想チャネルは、格納しているフリットを送信する。ステップ1604において、競合検出部1213は、ステップ1602において、送信チャネル選択部1213によって選択されたが仮想チャネル間で、出力ポートの獲得で競合が発生したかどうかを判定する。具体的には、競合検出部1213は、スイッチ切替部1214から、スイッチの切り替えができたか否かの情報を受け取る。スイッチの切り替えができたときは競合が発生していないといえる。逆にスイッチの切り替えができなかったときは競合が発生していたといえる。この基準に基づいて、競合検出部1213は競合が発生したかどうかを判定する。ステップ1605において、仮想チャネル間で、出力ポートの獲得で競合が発生した場合には、競合検出部1213はスイッチ切替部1214により選択されなかった仮想チャネルを送信チャネル選択部1213に通知し、送信チャネル選択部1213は、出力ポートを獲得できなかった入力ポートに対し、別の出力ポートへ送信する仮想チャネルの中で、送信時刻が最も古い仮想チャネルを1つ選択し、ステップ1602に戻る。ステップ1601からステップ1605の処理を繰り返すことにより、より多くの入力チャネルと出力チャネルの排他的な接続数を多くし、伝送性能が向上するようにクロスバスイッチの切り替えを行う。このように、実施形態1の中継装置1201では、パケットの宛先を区別して、NoCの中継装置において限られた仮想チャネルを異なる宛先のパケットに対して割り当てることで、同じ宛先のパケットが1部の中継装置の仮想チャネルを占有し、他の宛先へと送信されるパケットが送信できなくなる状況を回避し、伝送性能スループット、遅延時間、ジッターの低下を抑制する。本実施形態では、時間情報比較部1201において、パケットに付与された時間情報に基づく優先度として、パケットが送信された時刻の古さを優先度と定義し、送信時刻の古いパケットから優先的に出力チャネルの割り当てを行った。しかしながら、送信時刻以外の時間情報を基準に優先度を定義し、出力チャネルを割り当ててもよい。図20は、時間情報、および、時間情報に基づく優先度の比較基準の例を示す。時間情報としては、例えば、パケットが送信されてからの経過時間を用いても良い。時間情報として送信時刻を管理するためには、半導体システムが動作している期間を表現できるだけの桁数が必要である。よって、半導体システムが長時間動作する場合には時間情報の桁数が大きくなる。これに対し、時間情報としてパケットが送信されてからの経過時間を用いる場合には、パケットが送信されてから受信されるまでにかかる時間を表現するだけの桁数があればよいので、比較的、時間情報の桁数を小さくすることが可能になる。時間情報として扱う値の桁数が小さければ、時間情報比較部1210における時間情報の比較回路を小さくできるため、半導体システムのリソース削減に有効である。また、送信時刻を用いるとしても、年月日時分秒で表現される送信時刻の一部たとえばM桁の送信時刻の位の小さい方からn桁の値n:M>nとなる整数を用いることで、時間情報として扱う桁数を小さくすることができる。n桁の値としては、例えばパケットが送信されてから受信されるまでにかかる時間を表現するだけの桁数を用いることができる。この場合、時間情報比較部1201において、パケットに付与された時間情報に基づく優先度として、パケットが送信されてからの経過時間が大きいパケットから優先的に出力チャネルの割り当てを行う。また、時間情報として、パケットが受信ノードに届くまでの締切時刻を用いて、締切時刻が近いパケットから順に出力チャネルを割り当てても良い。一般的に、バスマスタの種類や処理の内容によって、パケットが受信ノードに届くまでに許容できる遅延時間が異なる。このため、送信ノードから、締切時刻までの時間が比較的に長いパケットが複数送信された後に、締切時刻までの時間が短いパケットが送信される状況を想定すると、中継装置において、送信時刻の古いパケットから順番に出力チャネルを割り当ててパケットを送信するよりも、締切時刻までの残り時間の短いパケットから出力チャネルを割り当ててパケットを送信する方が、より多くのパケットに対し、許容できる遅延時間を遵守できる。この場合、時間情報比較部1201において、パケットに付与された時間情報に基づく優先度として、パケットが受信ノードに届くまでの締切時刻が現時刻に近いパケットから優先的に出力チャネルの割り当てを行う。また、時間情報として、締切り時刻の代わりに締切り時刻までの残り時間を用いても良い。この場合、時間情報比較部1201において、パケットに付与された時間情報に基づく優先度として、パケットが受信ノードに届くまでの締切り時刻までの残り時間が短いパケットから優先的に出力チャネルの割り当てを行う。本実施形態では、宛先比較部1211において、宛先の区別を受信ノードのアドレスとして例に説明を行った。しかしながら、宛先の区別の定義は受信ノードのアドレスに限定されるものではない。たとえば宛先として、中継器を指定してもよい。図21AおよびBは、中継装置R1からみた種々の宛先の定義および各定義に該当し得る宛先の具体例を示している。例えば、図21Aの構成において、パケットが受信ノードに届くまでの伝送経路上で通過する途中の中継装置を、宛先と定義する。図21Aの中継装置R1に対して、宛先の定義を受信ノードメモリとすると、中継装置R1にとってメモリ0からメモリ7までの8個が宛先となるが、宛先の定義を2つ先までの中継装置とすると、4つの中継装置R8~R11が宛先となり得る。さらに、宛先の定義を1つ先の中継装置とすると、2つの中継装置R5およびR7が宛先となり得る。このように宛先の定義を伝送経路上の途中の中継装置とすることで、受信ノードであるメモリを宛先とした場合よりも、宛先比較部1211で比較する宛先数を削減ができ、仮想チャネル間での宛先の比較にかかる処理を削減できる。宛先とされた中継装置にパケットが到達した場合には、その中継装置は再び、図21Bのいずれかの定義にしたがって宛先を設定し、パケットを送出すればよい。実施形態2実施形態1では、仮想チャネルの数やサイズに制約の多いNoCにおいて、中継装置内の仮想チャネルを宛先が異なるパケット間で均一に割り当てのスケジューリング制御により、仮想チャネルの利用を効率化し、NoC全体の伝送性能を向上させた。これに対し、本実施形態の中継装置では、さらに入力ポートと出力ポートを接続するクロスバスイッチの切替を、パケットよりもサイズの小さい1フリット送信する毎に行うことで、NoC全体のバスの利用を効率化し、NoCの伝送性能を向上させる。図22を用いて、本実施形態による中継装置の動作の概要を説明する。図22AおよびBはそれぞれ、4つの受信ノード受信ノードA、受信ノードB、受信ノードC、受信ノードDに対して、パケットを中継器1、中継装置2、中継装置3を介してパケットを送信した場合、各中継装置における送信スケジューリングの方法と、各バスを通過するフリットの送信順序の関係を表している。図22Aは、バスの利用率に偏りが発生している状態を示している。図22Bは、バスの利用率が均一化されている状態を示している。図22Aは、各中継装置がクロスバスイッチの切り替えを、1パケットを送信する毎に行った場合に、各バス上を流れるフリットの送信順序を示している。1パケット毎に送信スケジューリングを行った場合には、1パケットを構成する全てのフリットの送信が完了するまで、同じバスが利用されるため、図22Aに示すように、フリットの流れが混雑するバスとフリットの流れが空いている利用されていないバスに分かれ、バスの利用率に偏りが発生しやすい。また、図22Bは、各中継装置がクロスバスイッチの切り替えを1フリット送信する毎に行った場合に、各バス上を流れるフリットの送信順序を示している。1フリット毎に送信スケジューリングを行った場合には、宛先の異なるパケットを1サイクル毎に交代しながら同時に送信できるため、異なる宛先へと向うバス間で利用負荷が均一となり、バス全体を効率的に利用しやすい。図23は、パケットの送信スケジューリングをパケット毎に行った場合と、フリット毎に行った場合のバスの利用効率とクロスバスイッチの切り替え回数の相対的な比較を示している。図22Bに示すようなクロスバスイッチの切り替えをフリット毎に行う場合、パケット毎に行う場合と比較すると、クロスバスイッチの切り替えの回数が多くなる。そのためクロスバの切り替えに必要な処理量が増える。その一方、異なる宛先へと向かうバスを同時に利用できるため、NoC全体でのバスの利用効率が向上し、伝送性能を向上させることができる。このため、本実施形態による中継装置は、仮想チャネルの利用負荷に基づき、負荷が低い場合は、省電力化のためにスイッチの切り替え回数を少ないパケットを送信する毎にクロスバスイッチの切り替えを行い、負荷が所定の閾値よりも高い場合には、バスの伝送性能の向上が見込めるフリットを送信する毎にクロスバスイッチの切り替えを行う。図24は、実施形態2の中継装置の構成を示す。実施形態1と同じ構成については、図8と同じ番号を付与し、説明を省略する。なお、図8に示されている入力部120aおよび出力部120bは、図24には示されていないが、図24の構成においても同様に定義できる。負荷測定部2301は、入力バッファ1204の伝送負荷が、所定の閾値を超えているかどうかの判定を行う。入力バッファ1204での伝送負荷の測定方法としては、例えば入力バッファ1204内で、現在利用されている仮想チャネル1216の数や、仮想チャネル1216内に格納されているフリット数、フリットの滞在時間などを用いることで、負荷の大きさを定量的に測定することができる。図25は、実施形態2の中継装置での仮想チャネルと出力ポートの接続の切り替え動作を表している。実施形態1と同じ処理については、図19と同じ番号を付与し、説明を省略する。図25は、ステップS2401~S2404が追加されている点において図19と相違する。ステップ2401において、負荷測定部2301は入力バッファ1204の負荷を測定する。そしてステップS2402において、測定した負荷が閾値以下か否かを判定する。負荷が閾値以下であれば、ステップ1601に移り、経過時間の最も古いパケットを格納している仮想チャネルを選択する。負荷が閾値より大きい場合には、ステップ2403に移行する。ステップ2403において、負荷が閾値以下であれば、送信チャネル選択部1213は、入力ポート毎に、出力チャネルが設定されている仮想チャネルをラウンドロビンで順番に1つ選択する。ステップ2404において、さらに、スイッチ切り替え部1214は、送信チャネル選択部1213が選択した仮想チャネルのうち、出力ポートが同じ仮想チャネルがある場合は、ラウンドロビンで順番に1つ選択を行う。なお、ステップ2403と、ステップ2404は、中継装置から1フリット送信されるたびに、宛先の異なるフリットが送信される方法であれば、例えばランダムに仮想チャネルを選択するなど、別の方法であっても良い。以上のように、実施形態2の中継装置は、中継装置での伝送負荷の大きさに応じて、自動的に低負荷時にはスイッチの切り替えに必要な処理量が少ないモードと、負荷が高い場合には伝送性能が高いモードを切り分けた送信を行うことができる。なお、本実施形態では、入力バッファの負荷に応じて、仮想チャネルの切り替えをパケット毎に行うか、フリット毎に行うかを選択するとした。しかしながら、仮想チャネルの切り替えを常にフリット毎に行うとしてもよい。すなわち、中継装置は、複数のパケットをフリット単位でインターリーブして複数のパケットを見かけ上並列的に出力してもよい。これは出力バッファが複数存在する場合には特に効果的である。実施形態3実施形態1においては、宛先毎に送信時刻が最も古いパケットを格納する仮想チャネルに対して出力チャネルを割り当てた。本実施形態では、既に出力チャネルを設定済みのパケットと、宛先までの伝送経路上で、重複する中継装置の数がより少ないパケットから優先して出力チャネルを割り当てることで、伝送経路上でのパケット間の干渉を削減し、NoC全体の伝送性能を向上させる。図26は、本実施形態の概要を示している。多段接続網の中継装置R3において、メモリ0、メモリ1、メモリ3宛のパケットが仮想チャネルに格納されている状態にあり、メモリ0へ送信するパケットを格納する仮想チャネルは既に出力チャネルが設定済みであり、メモリ1とメモリ3宛のパケットを格納する仮想チャネルに対して出力チャネルを割り当てる状況を想定している。既に出力チャネルが割り当てられているメモリ0宛てのパケットの伝送経路に対し、メモリ1宛てのパケットは中継装置R5においても同じ出力ポートを利用するのに対し、メモリ3宛てのパケットは、中継装置R5では、別の出力ポートを利用する。このため、実施形態3の中継装置では、伝送経路上で出力ポートでの競合を抑制するために、パケットの送信時刻の古さに加えて、既に出力チャネルが割り当てられた宛先と宛先までの伝送経路上において重複するバスの数が少ない宛先へ送信されるパケットを格納する仮想チャネルに対して、優先的に出力チャネルを割り当てる。図27は、本実施形態による中継装置の構成を示している。また図28は、本実施形態による中継装置の処理の手順を示している。図27および図28では、実施形態1と同じ構成および処理については図8および図17と同じ番号を付与し、説明を省略する。なお、図8に示されている入力部120aおよび出力部120bは、図27には示されていないが、図27の構成においても同様に定義できる。図28のステップ3301において、伝送経路解析部3201は、出力チャネル設定済みの仮想チャネルが存在するか否かを判定する。存在する場合には処理はステップ3302に進み、存在しない場合には処理はステップ1503に進む。ステップ3302において、伝送経路解析部3201は、中継装置から各宛先の受信ノードまでの伝送経路上で、重複するバスの数を解析し、出力チャネル設定済みの宛先までの経路と、重複するバスの数が最も少ない宛先の仮想チャネルを選択する。例えば、図26の多段接続網型のトポロジーによって構成されるNoCでは、比較したい宛先の2進数で示されたアドレスの各桁の数値を左から比較し、数値が同じ桁数が、バスが重複する数となる。図26では、メモリ0アドレス000とメモリ1アドレス001では、左から2桁目までが一致するため、それぞれの伝送経路上の2カ所でバスが重複する。メモリ0アドレス000とメモリ3アドレス011では、左から1桁目までが一致するので、それぞれの伝送経路上の1カ所でバスが重複することを特定できる。図28は、実施形態3の中継装置での出力チャネルの割り当ての動作を表している。実施形態1と同じ動作については、図15と同じ番号を付与し説明を省略する。ステップ3301において、伝送経路解析部3201は、出力チャネルが設定済みの仮想チャネルが存在するかどうかを判定する。存在しない場合にはステップ1503に進み、存在する場合にはステップ3302に移る。図26の中継装置R3の例では、中継装置R3は、メモリ0へ向かうパケットを格納する仮想チャネルに対して出力チャネルが設定済であるため、ステップ3302に進む。次にステップ3302において、伝送経路解析部3201は、出力チャネルが設定済みの宛先までの経路上で重複するバスの数が最も少ない宛先を特定し、出力チャネルを割り当てる候補として、その宛先へ向かうパケットを格納する仮想チャネルを選択する。その後、処理はステップ1507に進む。図26の中継装置R3の例では、中継装置R3は、既に出力チャネルが設定済みのメモリ0までの経路上で重複するバスの数が、メモリ1へ向かう経路とメモリ3へ向かう経路のいずれの方で少ないかを比較する。図26の例では、メモリ0への経路とメモリ1への経路ではバスの重複は2回、メモリ0への経路とメモリ3への経路ではバスの重複は1回である。よって、中継装置R3は、出力チャネルを割り当てる候補として、メモリ3宛てのパケットを格納する仮想チャネルを選択する。以上の図27の構成を持ち、図28の処理を行うことにより、実施形態3の中継装置は、既に出力チャネルが設定されているパケットと、宛先までの伝送経路上で重複するバスの少ないパケットから優先的に出力チャネルを設定するため、伝送経路上での出力ポートでの競合を減らし、伝送性能を向上させることができる。なお、伝送経路解析部3201は、重複する経路の解析をリアルタイムで行ってもよい。しかしながら、各中継装置から各メモリまでの経路は設計時点で特定可能である。したがって、重複する経路の数を予め求めておき、その情報をたとえばテーブル形式で伝送経路解析部3201に保持させておけばよい。これにより、伝送経路解析部3201は、そのテーブルを参照することにより、重複する経路の程度を特定してもよい。以上、本発明の実施形態を説明した。実施形態1から3では、各中継装置の出力バッファ1206には、複数の出力バッファ1217を備える構成を用いて、各仮想チャネル1216で格納されるパケットに対し、出力チャネル選択部1212が出力チャネル1217の割り当てる例を説明した。図8の構成で説明したように、複数の出力チャネル1217は、出力ポート1219を介して接続された送信先の中継装置1203内の仮想チャネルと同じ数だけ設けられており、中継装置1203の仮想チャネルと1対1の対応関係が決まっている。このため、出力チャネル選択部1212が出力チャネル1217を選択することは、間接的に送信先の中継装置1203の入力ポートの仮想チャネルを選択していることと同義となる。この考えをより発展させると、本実施形態1から3の中継装置は、出力チャネル選択部1212が、直接、送信先の中継装置1203の仮想チャネルを選択することで、出力チャネル1217や出力バッファ1206を持たない構成によっても実現されることが理解される。この場合、出力チャネル選択部1212は、1たとえば、送信先の中継器1203から、仮想チャネルの状態の情報を取得し、送信先の中継装置1203内の仮想チャネルの空き状態を参照し、2自身の仮想チャネル1216に格納されている各パケットに対し、送信先の中継装置1203において格納する仮想チャネルを選択し、3さらにフリットを仮想チャネルから送信する際に、中継装置1203に対してフリットを格納する中継装置1203の仮想チャネルの指示を行えばよい。このような、出力チャネル1217や出力バッファ1206を持たない構成によれば、中継装置1201内のバッファを減らすことが可能になるため、実装面積の削減や、制御回路の簡略化などの効果を期待できる。また、実施形態1から3では、集積回路のトポロジーが多段接続網の場合を例に説明したが、本発明の中継装置は多段接続網での利用に限定されるものではない。例えば、図29Aに示すように中継装置を格子状に並べてメッシュ型トポロジーを構成してもよい。また図29Bに示すように上下左右で中継装置をリング状に接続したトーラス型トポロジーを構成してもよい。さらに図29Cに示すようにバスを階層的に接続した階層型トポロジーなどを構成してもよい。複数のバスマスタを分散型のバスを介して接続したトポロジーであれば、同様に本発明の中継装置の適用が可能である。図30は、本発明の中継装置をメモリバスに利用した例を説明する図である。図30では、携帯電話やPDAPersonalDigitalAssistants、電子書籍リダーなどの携帯端末や、TV、ビデオレコーダ、ビデオカメラ、監視カメラ等で用いられる半導体回路上のバスマスタCUP,DSP、伝送処理部、画像処理部などと複数のメモリを分散型のバスを利用して接続させた利用例を示している。複数の映像や音楽などの再生、記録、トランスコード、書籍や写真、地図でタの閲覧や編集、ゲームのプレイなど、複数のアプリケーションやサービスを同時に利用する場合、各バスマスタからメモリへのアクセスが増える。各バスマスタからアクセスするメモリの数が1つだけの場合、アクセスが1箇所に集中してしまう。アクセス集中の解決のめには、メモリ側の入出力の伝送帯域を広げる必要があり、コストが高くなってしまう。このメモリアクセスの集中を回避する方法として、アプリケーションやサービス等の種類によってバスマスタが利用するメモリを物理的に分け、これらのバスマスタとメモリを分散型のバスで接続させることで、メモリアクセスの集中の回避が可能となる。しかし、例えば図30において、あるバスマスタが、映像データを保存するためにメモリAに対して高いレートでデータパケットを送信した場合、各中継装置が送られてきたデータパケットの順序を単純に維持したまま中継すると、伝送経路上の仮想チャネルが全てメモリA宛のパケットで占有される頻度が多くなる。その結果、他のメモリへデータが流れにくくなり、他のアプリケーションやサービスの性能が低下や処理時間の増加が発生してしまう。これに対し、本発明の中継装置を用いた場合には、各中継装置の仮想チャネルにおいて、宛先の異なるパケットに対して、均一に仮想チャネルを割り当てられるため、特定のメモリに向うパケットによる仮想チャネルの占有が回避され、半導体回路上の全てのアプリケーションやサービスの性能の向上や、処理時間の短縮化ができる。なお、上述のメモリは、揮発性のDRAMであってもよいし、不揮発性のフラッシュメモリであってもよい。揮発性メモリおよび不揮発性メモリが混在していてもよい。図31は、本発明の中継装置をマルチコアプロセッサmulti-coreprocessor上で利用した例を説明する図である。マルチコアプロセッサ内のコアは、たとえばCPU、GPU、DSPなどである。図31では、CPUやGPU,DSP等のコアプロセッサの処理能力を向上させるために、複数のコアプロセッサをメッシュ状に並べ、これらを分散バスで接続したマルチコアプロセッサである。マルチコアプロセッサ上では、各コアプロセッサ間で通信が行われており、例えば、各コアプロセッサには、演算処理に必要なデータを記憶しておくキャッシュメモリが備えられており、コアプロセッサ間で互いのキャッシュメモリの情報をやり取りし、共有が可能であり、これにより性能を向上させることができる。しかし、マルチコアプロセッサ上で発生するコアプロセッサ間の通信は、それぞれ配置や距離中継ホップ数、通信頻度が異なる。このため、データパケットの順序を単純に維持したまま中継すると、仮想チャネルが全て特定のコアプロセッサ宛のパケットにより占有されパケットデータが流れにくい中継装置が発生し、マルチコアプロセッサの性能の低下や、処理時間の増加を引き起こす。これに対し、本発明の中継装置を用いた場合には、各中継装置の仮想チャネルにおいて、宛先の異なるパケットに対して、均一に仮想チャネルを割り当てられるため、特定のコアプロセッサに向うパケットにより仮想チャネルが占有された中継装置の発生が回避され、各コアプロセッサの性能の向上や、処理時間の短縮化ができる。"