(57)【要約】      （修正有）【課題】制御パケットとデータパケットとを転送するパケット転送制御装置において、平均応答時間を短縮する。【解決手段】データ通信経路Ｌ２と制御通信経路Ｌ１を分離して、且つ制御通信経路Ｌ１に制御パケットを多重化する多重化回路を設け、最短ジョブ優先制御を実行する。往復通信時間の平均を小さくでき、且つハードウェアコストも低減できる。又、データパケットを付随する制御パケットは、データパケットと同期して、異なる経路で転送するため、受信処理の複雑さを回避できる。【選択図】図２
2011135433.tif 000002
【特許請求の範囲】
【請求項１】
制御情報を転送する場合には、前記制御情報を備える第1の制御パケットを、前記制御情報にデータが付随する場合には、前記制御情報を備える第２の制御パケットと、前記データを備えるデータパケットとを、通信経路を介し転送するパケット通信制御装置において、
複数の送信ユニットと、
前記複数の送信ユニットの送信要求を調停し、制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、データ通信経路に転送する多重化制御回路とを有する
ことを特徴とするパケット通信制御装置。
【請求項２】
前記パケット通信制御装置は、
前記制御通信経路から前記第１、第２の制御パケットを、前記データ通信経路から前記データパケットを受信するパケット受信回路を更に有し、
前記パケット受信回路は、
前記制御通信経路からの前記第1の制御パケットのエラーをチエックする第１のエラーチエック回路と、
前記第２の制御パケットと前記データパケットとのエラーをチエックする第２のエラーチエック回路と、
前記第１のエラーチエック回路でエラーを検出されなかった前記第１の制御パケットと、前記第２のエラーチエック回路でエラーを検出されなかった前記第２の制御パケットのタイミング調整を行うタイミング調整回路とを有する
ことを特徴とする請求項１のパケット通信制御装置
【請求項３】
メモリのアクセスを行うメモリアクセスコントローラに、制御情報を転送する場合には、前記制御情報を備える第1の制御パケットを、制御情報にデータが付随する場合には、前記制御情報を備える第２の制御パケットと、前記データを備えるデータパケットとを、通信経路を介し転送して、前記メモリアクセスコントローラにメモリアクセスを依頼するメモリアクセス制御装置において、
複数の送信ユニットと、
前記複数の送信ユニットの送信要求を調停し、制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、データ通信経路に転送する多重化制御回路とを有する
ことを特徴とするメモリアクセス制御装置。
【請求項４】
前記メモリアクセス制御装置は、
前記制御通信経路から前記第１、第２の制御パケットを、前記データ通信経路から前記データパケットを受信するパケット受信回路を更に有し、
前記パケット受信回路は、
前記制御通信経路からの前記第1の制御パケットのエラーをチエックする第１のエラーチエック回路と、
前記第２の制御パケットと前記データパケットとのエラーをチエックする第２のエラーチエック回路と、
前記第１のエラーチエック回路でエラーを検出されなかった前記第１の制御パケットと、前記第２のエラーチエック回路でエラーを検出されなかった前記第２の制御パケットのタイミング調整を行うタイミング調整回路とを有する
ことを特徴とする請求項３のメモリアクセス制御装置。
【請求項５】
演算処理装置と、
メモリと、
メモリのアクセスを行うメモリアクセスコントローラと、
前記演算処理装置が実行するコマンドにより、前記メモリコントローラに、制御情報を転送する場合には、前記制御情報を備える第1の制御パケットを、制御情報にデータが付随する場合には、前記制御情報を備える第２の制御パケットと、前記データを備えるデータパケットとを、通信経路を介し転送して、前記メモリアクセスコントローラにメモリアクセスを依頼するメモリアクセス制御装置とを有し、
前記メモリアクセス実行装置は、
複数の送信ユニットと、
前記複数の送信ユニットの送信要求を調停し、制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、データ通信経路に転送する多重化制御回路とを有する
ことを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット通信制御装置、メモリアクセス制御装置及び情報処理システムに関する。
【背景技術】
【０００２】
複数の装置間で通信を行う場合、全ての装置が同時に通信する事を想定して、通信経路を確保する事は、得策でない。何故なら、個々の装置は、実際には、常に通信をしているとは限らないからである。例えば、それぞれの装置が平均的に半分の時間に通信を行っているとすれば、実際の装置の数の半分が同時に通信できるだけの帯域を確保すれば十分である。
【０００３】
例えば、図１６及び図１７で示すようなパケット通信においては、第１の装置１００から第２の装置２００に対して要求を発行し、第２の装置２００から第１の装置１００に応答が返る往復通信パターンが用いられる。通信パターンは、図１６のように、データ送信要求と受信応答と、図１７のように、受信要求とデータ送信応答とである。
【０００４】
図１６に示すように、データ送信要求（１）は、第１の装置１００から第２の装置２００に対して送るデータ送信通信である。例えば、ＰＵＳＨ型データ配信、ＰＵＴ型転送依頼がある。受信応答（２）は、第２の装置２００から第１の装置１００に送るデータ送信要求（１）に対する受信確認応答である。
【０００５】
次に、図１７に示すように、受信要求（１）は、第１の装置１００から第２の装置２００に対して送るデータ受信依頼である。例えば、ＰＵＬＬ型データ配信、ＧＥＴ型転送依頼である。データ送信応答（２）は、第２の装置２００から第１の装置１００に送るデータ送信を伴う応答である。
【０００６】
これらの通信では、データを伴う通信と、制御情報のみの通信であってデータを伴わない通信が対になって行われる。すなわち、データを伴わない通信は、通信時間の短い、制御情報のみの小さなパケット、データを伴う通信は、通信時間の長い、大きなパケットと言える。一般的な通信は、このパターンに分類できる。このようなパケット通信においては、常に、通信を行っていないため、装置間の同時通信を想定した通信経路の確保を要しない。
【０００７】
一方、このような1対１の通信ではなく、１：Ｎ（Ｎは、Ｎ＞１、整数である）、Ｎ：１、Ｎ：Ｎの通信においては、同時に複数の装置から通信の要求が発生する。このような同時に通信が発生した場合には、通信順序を制御する「調停」又は「スケジューリング」と呼ばれる技術が利用されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−２４５０１１号公報
【特許文献２】特開２００２−１８２８７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従来の調停やスケジューリングによる最短ジョブ優先技術では、平均応答時間が最小になる制御が可能であるが、一方で、最悪時の応答時間が保証できないという問題がある。最悪時の応答時間を保証するための制御を行うためには、通信時間が、予測可能である必要があり、予測するのは、困難である。
【００１０】
しかも、ハードウェア実装においては、このような平均応答時間を小さくするような制御をしつつ、一定の公平性を維持しながら、枯渇（Starvation）と呼ばれる状況を回避するためには、複雑な制御を実装することが要求され、ハードウェア上の実現は、難しい。
【００１１】
従って、本発明の目的は、パケット通信において、通信遅延性能の改善と、ハードウェア実装コストの削減とを実現するパケット通信制御装置、メモリアクセス制御装置及び情報処理システムを提供することにある。
【課題を解決するための手段】
【００１２】
この目的の達成のため、パケット通信制御装置は、制御情報を転送する場合には、前記制御情報を備える第1の制御パケットを、制御情報にデータが付随する場合には、前記制御情報を備える第２の制御パケットと、前記データを備えるデータパケットとを、通信経路を介し転送するパケット通信制御装置において、複数の送信ユニットと、前記複数の送信ユニットの送信要求を調停し、制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、データ通信経路に転送する多重化制御回路とを有する。
【００１３】
又、この目的の達成のため、メモリアクセス制御装置は、メモリのアクセスを行うメモリアクセスコントローラに、制御情報を転送する場合には、前記制御情報を備える第1の制御パケットを、制御情報にデータが付随する場合には、前記制御情報を備える第２の制御パケットと、前記データを備えるデータパケットとを、通信経路を介し転送して、前記メモリアクセスコントローラにメモリアクセスを依頼するメモリアクセス制御装置において、複数の送信ユニットと、前記複数の送信ユニットの送信要求を調停し、制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、データ通信経路に転送する多重化制御回路とを有する。
【００１４】
更に、この目的の達成のため、情報処理システムは、演算処理装置と、メモリと、メモリのアクセスを行うメモリアクセスコントローラと、前記演算処理装置が実行するコマンドにより、前記メモリコントローラに、制御情報を転送する場合には、前記制御情報を備える第1の制御パケットを、制御情報にデータが付随する場合には、前記制御情報を備える第２の制御パケットと、前記データを備えるデータパケットとを、通信経路を介し転送して、前記メモリアクセスコントローラにメモリアクセスを依頼するメモリアクセス制御装置とを有し、前記メモリアクセス実行装置は、複数の送信ユニットと、前記複数の送信ユニットの送信要求を調停し、制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、データ通信経路に転送する多重化制御回路とを有する。
【発明の効果】
【００１５】
データ通信経路と制御通信経路を論理的又は物理的に分離して、且つ制御通信経路に制御パケットを多重化することにより、最短ジョブ優先制御を実行するため、往復通信時間の平均を小さくでき、且つハードウェアコストも低減できる。又、データパケットを付随する制御パケットは、データパケットと同期して、異なる経路で転送するため、受信処理の複雑さを回避できる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施の形態の情報処理システムの構成図である。
【図２】図１のメモリアクセス実行回路のブロック図である。
【図３】実施の形態の対象とする受信要求パケットの説明図である。
【図４】実施の形態の対象とする受信応答パケットの説明図である。
【図５】実施の形態の対象とする送信要求パケットの説明図である。
【図６】実施の形態の対象とする送信応答パケットの説明図である。
【図７】図２のパケット送信回路の分離経路の説明図である。
【図８】図７の制御パケットの多重化構成の説明図である。
【図９】図２のパケット送信回路の調停動作の説明図である。
【図１０】図２のパケット送信回路のブロック図である。
【図１１】図１０のパケット送信回路のタイムチャート図である。
【図１２】図２のパケット受信回路のブロック図である。
【図１３】図１２のパケット受信回路のパケットの衝突の説明図である。
【図１４】図１２のパケット受信回路のパケットの衝突回避動作の説明図である。
【図１５】図１２のパケット受信回路のタイムチャート図である。
【図１６】従来のデータ送信要求と受信応答の説明図である。
【図１７】従来のデータ受信要求と送信応答の説明図である。
【発明を実施するための形態】
【００１７】
以下、実施の形態の例を、情報処理システム、メモリアクセス実行回路、パケット送信回路、パケット受信回路、他の実施の形態の順で説明するが、開示の情報処理システム、パケット送信回路及びパケット受信回路は、この実施の形態に限られない。
【００１８】
（情報処理システム）
図１は、本発明の一実施の形態の情報処理システムの構成図であり、図１の情報処理システムの例は、情報処理装置としてのＣＰＵ（Central Processing Unit）と、メインメモリと、相互連絡チップを有するシステムである。
【００１９】
図１に示すように、情報処理システムは、ＣＰＵブロック１０を搭載したＣＰＵチップ１と、メインメモリ２と、メモリアクセス実行回路を搭載した相互結合網チップ（Interconnect Chip）３とを有する。ＣＰＵチップ１は、キャッシュメモリ及びＣＰＵ本体を含むＣＰＵブロック１０と、メインメモリ２をアクセス制御するメインメモリアクセス制御回路（MAC Memory Access Controller）１４と、ＤＭＡ（Direct Memory Access）制御を行うＤＭＡ（Direct Memory Access Controller）１２とを有する。
【００２０】
ＣＰＵブロック１０は、メインメモリアクセス制御回路１４を介し、メインメモリ２をアクセスする。ＤＭＡＣ１２が、ＣＰＵブロック１０のコマンドに基づくメモリアクセス実行回路からの依頼、または通信ポート８４−1〜８４−１０で接続された他の相互結合網チップから受信した通信に従い、メインメモリ２を、メインメモリアクセス制御回路１４を介し、アクセスし、又、ＣＰＵブロック１０に内蔵されているキャッシュメモリをアクセスする。
【００２１】
メモリアクセス実行回路を搭載する相互結合網チップ(装置)３は、ＤＭＡＣ１２に接続されたバスコントロールユニット４と、バスコントロールユニット４に接続された複数のメモリアクセス実行回路４−１〜４−Ｎと、スイッチユニット８とを有する。バスコントローラユニット４は、多数のメモリアクセス実行回路４−１〜４−Ｎに接続され、バス調停を行い、各メモリアクセス実行回路４−１〜４−ＮとＤＭＡＣ１２との送受信制御を行う。
【００２２】
各メモリアクセス実行回路４−１〜４−Ｎは、ＣＰＵチップ１のＤＭＡＣ１２と、スイッチユニット８との間に設けられる。メモリアクセス実行回路４−１〜４−Ｎの各々は、制御パケットとデータパケットとを分離して、バスコントローラユニット４を介し、ＤＭＡＣ１２に送信するパケット送信回路５と、バスコントローラユニット４を介し、ＤＭＡＣ１２から制御パケットとデータパケットを受信するパケット受信回路６と、パケット送信回路５とパケット受信回路６に、バス７０を介し接続された転送制御ユニット（Transfer Control Unit:送受信ユニット）７とを有する。
【００２３】
転送制御ユニット７は、ＣＰＵブロック１０が、メインメモリ２に書き込んだコマンド列を読み出し、コマンド列に含まれるコマンドから、制御パケットとデータパケットとを生成し、パケット送信回路５に送り、且つパケット受信回路６から応答パケットを受ける。
【００２４】
転送制御ユニット７は、スイッチユニット８からの／及びスイッチユニット８への転送データの制御を行う。スイッチユニット８は、クロスバーユニット８２と、多数の通信ポート８４−１〜８４−１０とを有する。この通信ポート８４−１〜８４−１０に、他のクロスバースイッチや外部装置が接続される。
【００２５】
又、ＣＰＵチップ１のＤＭＡＣ１２も、メモリアクセス実行回路のパケット送信回路５に対抗して、パケット受信回路６が設けられる。同様に、ＣＰＵチップ１のＤＭＡＣ１２も、メモリアクセス実行回路のパケット受信回路６に対抗して、パケット送信回路５が設けられる。これは、メモリアクセス実行回路４−１〜４−Ｎの構成と同一のため、説明を省略する。
【００２６】
この構成においては、ＣＰＵブロック１０が処理に伴い、メインメモリ２にコマンドを書き込み、コマンド列を作成する。転送制御ユニット７は、制御パケットを作成し、パケット送信回路５を介し、ＤＭＡＣ１２より、メインメモリ２をアクセスし、メインメモリ２のコマンド列をデータとして、取り出す。転送制御ユニット７は、取り出したコマンド列を、パケット受信回路６からバス７０を介し、受け取り、格納する。
【００２７】
そして、転送制御ユニット７は、コマンド列のコマンドを取り出し、コマンドから、制御パケット及び／又はデータパケットを作成し、バス７０を介し、パケット送信回路５に送信する。一方、転送制御ユニット７は、通信ポート８４−１〜８４−１０、クロスバースイッチ８２を介し、ストアデータを受け、ストアデータパケットを作成し、パケット送信回路５に送信する。又、転送制御ユニット７は、クロスバースイッチ８２、通信ポート８４−１〜８４−１０を介し、受信したデータを、他の相互結合網チップや外部装置へ送信する。
【００２８】
この構成では、メモリアクセス実行回路４−１が、ＣＰＵブロック１０からのコマンドにより、メインメモリ２をアクセスし、多数のポートからのデータを格納し、多数のポートへデータを送信する。メモリアクセス実行回路４−１は、一種のＤＭＡ動作を行う。ＣＰＵブロック１０のコマンドにより、ＤＭＡ動作し、外部と通信するため、トラフィック量が多く、バスＬ１〜Ｌ４を効率よく、且つ遅延時間の平均を最小化する必要がある。
【００２９】
（メモリアクセス実行回路）
図２は、図１のメモリアクセス実行回路の構成図、図３〜図６は、通信パケットの一例の説明図である。ここで、通信パケットとして、制御情報のみを備えるパケットを制御パケットと規定し、データを備えるパケットをデータパケットと規定する。以下、メインメモリ２からのデータのフェッチ（取り出し）、メインメモリ２へのデータのストア（格納）の例で、説明するが、メインメモリに対するパケット通信に限らない。
【００３０】
先ず、図３〜図６により、転送制御ユニット７が作成する通信パケットを説明する。フェッチ動作は、要求元が、フェッチリクエストをＤＭＡＣ１２に送り、フェッチレスポンス及びデータをＤＭＡＣ１２から得る。図３に示すように、フェッチリクエストは、フェッチリクエスト制御パケット４０Ａからなり、そして、フェッチリクエスト制御パケット４０Ａは、オペレーションコード(Ｏｐ  Ｃｏｄｅ)＝Ｆｅｔｃｈと、リクエストＩＤ（Identification：識別子）と、オプションフラグと、ＤＭＡターゲットアドレス（Target Address）とを有する。フェッチリクエストは、データパケットを有しない。
【００３１】
一方、フェッチレスポンス及びデータは、図４に示すように、フェッチレスポンス制御パケット４０Ｂと、フェッチレスポンスデータパケット３０Ｂとからなる。そして、フェッチレスポンス制御パケット４０Ｂは、オペレーションコード(Ｏｐ  Ｃｏｄｅ)＝Ｆｅｔｃｈ  ＡＣＫと、リクエストＩＤ（Identification：識別子）と、エラーフラグとを有する。フェッチレスポンスデータパケット３０Ｂは、フェッチリクエスト制御パケット４０ＡのＤＭＡターゲットアドレスで指定したデータである。
【００３２】
次に、ストア動作は、ストアリクエストとデータをＤＭＡＣ１２に送り、ストアレスポンスをＤＭＡＣ１２から得る。図５に示すように、ストアリクエストは、ストアリクエスト制御パケット４０Ｃとストアリクエストデータパケット３０Ｃとからなる。そして、ストアリクエスト制御パケット４０Ｃは、オペレーションコード(Ｏｐ  Ｃｏｄｅ)＝Ｓｔｏｒｅと、リクエストＩＤ（Identification：識別子）と、オプションフラグと、ＤＭＡターゲットアドレス（Target Address）とを有する。ストアリクエストデータパケット３０Ｃは、そのＤＭＡターゲットアドレスで指定した位置に格納すべきデータである。
【００３３】
ストアレスポンスは、図６に示すように、ストアレスポンス制御パケット４０Ｄからなる。そして、ストアレスポンス制御パケット４０Ｄは、オペレーションコード(Ｏｐ  Ｃｏｄｅ)＝Ｓｔｏｒｅ  ＡＣＫ(Acknowledge)と、リクエストＩＤ（Identification：識別子）と、エラーフラグとを有する。ストアレスポンスは、データパケットを有しない。
【００３４】
次に、図２により、メモリアクセス実行回路４−１〜４−Ｎを説明する。データ転送制御回路７は、コマンドキュー(Cmd Queue)７３と、通知キュー（Notify Queue）７２と、送信コントローラ（TX Controller）７１と、ペイロードフェッチユニット（Payload Fetch Unit）７４と、ペイロードストアユニット（Payload Store Unit）７６と、受信コントローラ（RX Controller）７７と、通知キュー（Notify Queue）７８と、割込み制御部（Int Cont）７９とを有する。
【００３５】
図２では、コマンドキュー(CmdQueue)７３と、通知キュー（Notify Queue）７２と、ペイロードフェッチユニット（Payload Fetch Unit）７４と、ペイロードストアユニッチ（Payload Store Unit）７６と、通知キュー（Notify Queue）７８と、割込み制御部（Int Cont）７９とが、コマンドキュー７３のコマンドに従い、メモリアクセスの要求元である。
【００３６】
コマンドキュー（バッファ）７３は、メインメモリ２にＣＰＵブロック１０が記憶したコマンドのコピーを格納し、順次コマンドを実行し、コマンド列のコマンド数が所定値以下となると、フェッチリクエスト制御パケットを作成し、パケット送信回路５を介し、メモリメモリ２のコマンド列をフェッチする。
【００３７】
ペイロードストアユニット７６は、クロスバースイッチ８２を介する通信ポートからのストアデータ（ペイロード）を受け、図５に示したストアリクエスト制御パケット４０Ｃと、ストアリクエストデータパケット３０Ｃを作成する。受信コントローラ７７は、コマンドキュー７３からのストアコマンドに応じて、ペイロードストアユニット７６のストアリクエスト制御パケット４０Ｃと、ストアリクエストデータパケット３０Ｃとを、バス７０を介し、パケット送信回路５に送信する。
【００３８】
通知キュー７８は、パケット受信回路６のストアレスポンス制御パケット４０Ｄ（図６参照）を受け、キューイングする。受信コントローラ７７は、ペイロードストアユニット７６のストアレスポンス制御パケット４０Ｄ（図６参照）を読み出し、通知キュー７８を通してメインメモリに終了ステータスを書き出す、あるいは割り込みコントローラ７９を通してＣＰＵ割り込みを発生させるなどの手段でソフトウェアに終了ステータスを通知する。
【００３９】
送信コントローラ７１は、コマンドキュー７３からのフェッチコマンドに応じて、ペイロードフェッチユニット７４に、図３に示したフェッチリクエスト制御パケット４０Ａを作成させる。そして、送信コントローラ７１は、ペイロードフェッチユニット７４のフェッチリクエスト制御パケット４０Ａを、バス７０を介し、パケット送信回路５に送信する。
【００４０】
ペイロードフェッチユニット７４は、パケット受信回路６のフェッチレスポンス制御パケット４０Ｂ（図４参照）を受け、キューイングする。受信コントローラ７７は、通知キュー７２のフェッチレスポンス制御パケット４０Ｂを読み出し、フェッチリクエスト制御パケット４０Ａのオペレーションにエラーがあるかないかを確認し、通知キュー７８を通してメインメモリに終了ステータスを書き出す、あるいは割り込みコントローラ７９を通してＣＰＵ割り込みを発生させるなどの手段でソフトウェアに終了ステータスを通知する。ペイロードフェッチユニット７４は、パケット受信回路６のフェッチレスポンスデータパケット３０Ｂ（図４参照）を、バス７０を介し、読み出し、ネットワーク用のパケットに組み立て、クロスバースイッチ８２に出力する。
【００４１】
割込み制御部７９は、送信コントローラ７１と受信コントローラ７７からの要求により、割込み処理（例えば、再送割込み処理等）を行い、割込みパケットを、パケット送信回路５に送信する。
【００４２】
次に、パケット送信回路５は、複数の送信ＦＩＦＯ（Fast In Fast Out）ユニット５０−１〜５０−Ｎと、調停コントローラ５４と、第1の調停回路５６と、第２の調停回路５８とを有する。複数のＦＩＦＯユニット５０−１〜５０−Ｎは、バス７０に並列に接続され、制御パケットと、データパケットとを受信し、各々内蔵するＦＩＦＯメモリに格納する。第１の調停回路５６は、各ＦＩＦＯユニット５０−１〜５０−Ｎ内のデータパケットを伴わない制御パケットの調停を行う。第２の調停回路５８は、各ＦＩＦＯユニット５０−１〜５０−Ｎ内のデータパケットを伴う制御パケットの調停を行う。
【００４３】
調停コントローラ５４は、第１の調停回路５６の調停結果と、第２の調停回路５８の調停結果とに基づき、出力すべきＦＩＦＯユニットを選択する（グラントを与える）。選択されたＦＩＦＯユニットは、制御パケットと、データパケットを、別々の線（通信経路）に出力する。図の細線で、制御パケットが出力され、データパケットが存在する場合には、図の太線で、データパケットが出力される。
【００４４】
マルチプレクサ５２は、選択されたＦＩＦＯユニットからの制御パケットを、図の細線Ｌ１で、データパケットが存在する場合には、図の太線Ｌ２で、バスコントローラ４に出力する。後述するように、この実施の形態では、制御パケットと、データパケットを分離して、異なる経路（ライン）で出力する。又、複数の送信元であるＦＩＦＯユニット５０−１〜５０−Ｎの制御パケットとデータパケットを別々に調停し、制御パケットの多重化を実現する。このため、通信毎の遅延時間の平均を最小化できる。
【００４５】
ここで、送信ＦＩＦＯユニット５０−１〜５０−Ｎが、送信ユニットに対応し、調停回路５６，５８、調停コントローラ５４、マルチプレクサ５２とが、分離多重化制御回路に対応する。
【００４６】
次に、パケット受信回路６は、制御パケットを第1の線（細線）Ｌ３で、データパケットを第２の線Ｌ４で受け、データパケットを伴わない制御パケットと、データパケットを伴う制御パケットとそのデータパケットとに分離する分離器６０を有する。以降、データパケットを伴わない制御パケットと、データパケットを伴う制御パケットとそのデータパケットとが、別々にタイミング制御される。
【００４７】
即ち、データパケットを伴わない制御パケットは、第1のエラーチエック回路６１でエラーチエックされ、遅延回路６２が、エラーチエックされた制御パケットを遅延させる（例えば、１サイクル）。第1のマルチプレクサ６３が、第1のエラーチエック回路６１からの制御パケットと、遅延回路６２からの遅延させられた制御パケットとのいずれかを選択する。
【００４８】
一方、データパケットを伴う制御パケットは、第２のエラーチエック回路６４でエラーチエックされ、第２のマルチプレクサ６５に出力される。第２のマルチプレクサ６５は、第1のマルチプレクサ６３からの制御パケットと、第２のエラーチエック回路６４からの制御パケット及びデータパケットとのいずれかを選択し、リクエストデコーダ６６に出力する。
【００４９】
リクエストデコーダ６６は、制御パケットのオペコード、ＩＤをデコード識別し、分離器６７を介し、オペコード、ＩＤに対応する受信ＦＩＦＯユニット６８−１〜６８−Ｎに出力する。この受信ＦＩＦＯユニット６８−１〜６８−Ｎは、オペコード、ＩＤに対応しているため、リクエスト要求元であるコマンドキュー(Cmd Queue)７３と、通知キュー（Notify Queue）７２と、ペイロードフェッチユニット（Payload Fetch Unit）７４と、ペイロードストアユニッチ（Payload Store Unit）７６と、通知キュー（Notify Queue）７８と、割込み制御部（Int Cont）とが、バス７０を介し、対応する制御パケット、データパケットを取り出すことができる。
【００５０】
又、送信ＦＩＦＯユニット５０−１〜５０−Ｎも、オペコード、ＩＤに対応しているため、リクエスト要求元であるコマンドキュー(Cmd Queue)７３と、通知キュー（Notify Queue）７２と、ペイロードフェッチユニット（Payload Fetch Unit）７４と、ペイロードストアユニッチ（Payload Store Unit）７６と、通知キュー（Notify Queue）７８と、割込み制御部（Int Cont）とが、バス７０を介し、制御パケット、データパケットを、対応する送信ＦＩＦＯユニット５０−１〜５０−Ｎにセットすることができる。
【００５１】
（パケット送信回路）
図７は、実施の形態のパケット送信方法の説明図、図８は、図７において、制御パケット多重通信の説明図、図９は、調停方法の説明図である。図２で説明したように、制御パケットとデータパケットとの通信経路分離、多重化を行う。ここで、制御通信経路とデータ通信経路とは、物理的に分離されているものの他に、論理的に分離されているものを含む。
【００５２】
例えば、ＰＣＩ（Peripheral Component Interface）-Ｅｘｐｒｅｓｓバスのようなシリアルバス（物理的バス）を使用して、仮想チャネルを制御経路とデータ通信経路に分離するものにも適用できる。以降、図では、制御通信経路とデータ通信経路とを、物理的に分離された形態で説明するが、物理的に分離されていないバス形式のものを含む。
【００５３】
図７に示すように、装置間４−１と１２の通信経路を制御パケットとデータパケットで分離する。すなわち、データを伴わない受信依頼（図３のフェッチリクエスト制御パケット）、受信応答（図６のストアレスポンス制御パケット）は、制御通信経路Ｌ１のみを経由して通信する。又、データを伴うデータ送信依頼（図５のストアリクエスト制御パケット及びデータパケット）、データを伴うデータ受信応答（図４のフェッチレスポンス制御パケット及びデータパケット）は、制御通信経路Ｌ１とデータ通信経路Ｌ２の両方を経由して通信する。図７では、模式的に一方向の通信経路を示しているが、同様の通信経路が復路に対しても適用される。
【００５４】
又、図８に示すように、データ３００を伴う通信の制御情報（制御パケット）４０１は、双方の通信経路Ｌ１，Ｌ２間で同期して、送受信される事を前提とする。一方、制御情報（制御パケット）４０２，４０３のみの通信については、図８に示すように、制御通信経路Ｌ１において、他の通信のデータ送信期間に織り込んで送信する。これにより、小さな制御パケットを、長いデータ通信をまたずに発行できるようになり、最短ジョブ優先を効果的に実行できる。
【００５５】
又、送信側では、通信の枯渇を回避するための制御として、種別階層調停を導入する。図２のパケット送信装置５内の送信ユニット（ＦＩＦＯユニット）５０−１〜送信ユニット（ＦＩＦＯユニット）Ｎのそれぞれが、データを伴わない制御通信、またはデータを伴う通信のいずれかを任意に行う。
【００５６】
この際、データを伴わない制御通信を行うユニットを、１まとまりの第1のグループ、データを伴う制御通信を行うユニットを、１まとまりの第２のグループを考え、グループごとに個別の調停を行う。図９において、制御通信用調停回路５６と、データ通信用調停回路５８とで、データを伴わない制御パケットと、データを伴う制御パケットとを個別に調停を行う。ここで、公平な調停回路とは、一般的な調停回路を指しており、調停方式として、ラウンドロビン方式やＬＲＵ（Last Recent Used）方式などを、公平性の要求に応じて使い分ければ良い。ポイントとなるのは、データを伴うか否かでグループ分けを行い、グループごとに調停を行う点である。
【００５７】
さらに、調停コントローラ５４が、これらの調停に勝った２者の間で調停を行い、最終的な送信ユニットを決定する。ここでの調停は、最適な調停であり、必ずしも公平である必要はない。なぜなら、データ通信用の調停回路５８で調停されている送信ユニットは、データ通信用経路Ｌ２が空くまで、次の送信が行えない。このため、この区間は、制御通信用の調停回路５６の勝者を、勝たせても、次のデータ通信の阻害をしないためである。
【００５８】
逆に、データ通信経路Ｌ２が空いている間は、データ通信用の調停回路５８による調停の勝者を、優先的に勝たせても良い。このタイミングは、データ通信経路Ｌ２が空いている間だけである。なぜなら、データ通信サイクルで、必ず制御通信を行う空きスロットが確保できるためである。
【００５９】
又は、調停コントローラ５４は、BUSY制御付きのＬＲＵ方式を適用しても良い。それぞれの通信経路Ｌ１，Ｌ２が使える区間のみを調停の対象とすれば、ＬＲＵの制御で、上記のような制御が実現できる。また、データ通信中に、別の制御通信を挟めないような極端に短いパケットのデータ通信を認めている場合には、ＬＲＵ方式で制御した方が、安全に枯渇状態を回避できる。
【００６０】
次に、パケット送信回路を、図１０、図１１により、より詳細に説明する。図１０は、図２のパケット送信回路のブロック図、図１１は、図１０のパケット送信回路のタイムチャート図である。
【００６１】
図１０において、図２、図７〜図９で説明したものと同一のものは、同一の記号で示してある。図１０に示すように、バス７０に並列接続された複数のＦＩＦＯユニット５０−１〜５０−Ｎは、制御パケット用ＦＩＦＯメモリ５１０と、データパケット用ＦＩＦＯメモリ５２０と、ＦＩＦＯコントローラ５００とを有する。
【００６２】
制御パケット用ＦＩＦＯメモリ５１０は、バス７０から信号線ＩＣ１（ＩＣ２〜ＩＣＮ）を通し、制御パケットを受け、格納する。データパケット用ＦＩＦＯメモリ５２０は、バス７０から信号線ＩＤ１（ＩＤ２〜ＩＤＮ）を通し、データパケットを受け、格納する。ＦＩＦＯコントローラ５００は、ＦＩＦＯメモリ５１０，５２０をＦＩＦＯ制御する。
【００６３】
ＦＩＦＯコントローラ５００は、制御パケット用ＦＩＦＯメモリの先頭の制御パケットのオペレーションコードを、リクエストとして、調停コントローラ５４に通知する。調停コントローラ５４は、各ＦＩＦＯユニット５０−１〜５０−Ｎからの制御パケットのオペレーションコードから、図９で説明したデータを伴う制御パケットであるか、データを伴わない制御パケットであるかを識別する。
【００６４】
調停コントローラ５４は、データを伴う制御パケット（のＦＩＦＯユニット番号）を、第２の調停回路５８に送る。第２の調停回路５８は、データを伴う制御パケットのＦＩＦＯユニットの調停を行い、勝者を決定する。又、調停コントローラ５４は、データを伴わない制御パケット（のＦＩＦＯユニット番号）を、第１の調停回路５６に送る。第１の調停回路５６は、データを伴わない制御パケットのＦＩＦＯユニットの調停を行い、勝者を決定する。
【００６５】
そして、調停コントローラ５４は、図９で説明したように、データ通信用経路Ｌ２が空いていない場合には、第１の調停回路５６の勝者を、勝たせ、データ通信経路Ｌ２が空いている間は、第２の調停回路５８の勝者を、優先的に勝たせる。そして、調停コントローラ５４は、その勝者に対応するＦＩＦＯユニット５０−１〜５０−Ｎのいずれかに、グラント（ＧＲＴ）を与える。
【００６６】
グラントを与えられたＦＩＦＯユニット（例えば、５０−１）では、ＦＩＦＯコントローラ５００が、バリッド（Ｖａｌｉｄ）信号Ｖ１を発生し、且つＦＩＦＯメモリ５１０の先頭の制御パケットを、信号線（制御通信経路）ＬＣ１に出力する。又、ＦＩＦＯコントローラ５００は、制御パケットのオペレーションコードから、ＦＩＦＯメモリ５２０に対応するデータパケットを持つ場合には、ＦＩＦＯメモリ５２０のデータパケットを、信号線(データ通信経路)ＬＤ１に出力する。他のＦＩＦＯユニット５０−２〜５０−Ｎにグラントが与えられた場合も、同様の動作を行う。
【００６７】
一方、マルチプレクサ５２は、各ＦＩＦＯユニット５０−１〜５０−Ｎの信号線（制御通信経路）ＬＣ１〜ＬＣＮが接続された第1のマルチプレクサ５２−Ｃと、各ＦＩＦＯユニット５０−１〜５０−Ｎの信号線（データ通信経路）ＬＤ１〜ＬＤＮが接続された第２のマルチプレクサ５２−Ｄとを有する。
【００６８】
第１のマルチプレクサ５２−Ｃは、バリッド信号Ｖ１〜ＶＮにより、信号線（制御通信経路）ＬＣ１〜ＬＣＮのいずれかを選択し、制御通信経路(バス)Ｌ１に接続する。従って、第１のマルチプレクサ５２−Ｃから、制御通信経路Ｌ１に、選択されたＦＩＦＯユニットの制御パケット用ＦＩＦＯメモリ５１０の先頭の制御パケットが、出力される。
【００６９】
同様に、第２のマルチプレクサ５２−Ｄは、バリッド信号Ｖ１〜ＶＮにより、信号線（データ通信経路）ＬＤ１〜ＬＤＮのいずれかを選択し、データ通信経路(バス)Ｌ２に接続する。従って、第２のマルチプレクサ５２−Ｄから、データ通信経路Ｌ２に、選択されたＦＩＦＯユニットのデータパケット用ＦＩＦＯメモリ５２０の先頭のデータパケットが、出力される。
【００７０】
調停コントローラ５４は、毎サイクルにおいて、この調停、選択動作を繰り返す。このため、図８，９で説明したように、データ通信用経路Ｌ２が空いていない場合には、第１の調停回路５６の制御パケットの勝者を、勝たせ、データ通信経路Ｌ２が空いている間は、第２の調停回路５８の勝者を、優先的に勝たせる。このため、小さな制御パケットを、長いデータ通信をまたずに発行できるようになり、最短ジョブ優先を効果的に実行できる。又、種別階層調停により、通信の枯渇を回避することができる。
【００７１】
図１１は、ＦＩＦＯユニット５０−１に、データＤ１〜Ｄ４を伴う制御パケットＣ１が先頭に格納されており、ＦＩＦＯユニット５０−２に、データを伴わない制御パケットＣ２が先頭に格納されている状態での通信制御のシーケンスを示す。
【００７２】
この例では、データ通信経路Ｌ２が空いているため、先頭サイクルで、調停により、送信ＦＩＦＯユニット５０−１が選択され、制御通信経路Ｌ１に、ＦＩＦＯユニット５０−１のＦＩＦＯメモリ５１０の先頭の制御パケットＣ１が、データ通信経路Ｌ２に、ＦＩＦＯユニット５０−１のＦＩＦＯメモリ５２０の先頭のデータパケットＤ１〜Ｄ４が、出力される。
【００７３】
次のサイクルでは、送信ＦＩＦＯユニット５０−２が選択され、制御通信経路Ｌ１に、ＦＩＦＯユニット５０−２のＦＩＦＯメモリ５１０の先頭の制御パケットＣ２が、出力される。このように、長いデータ通信を待たずに、短い制御パケットを送信できるため、最短ジョブ優先制御を実行でき、且つ通信の枯渇を防止できる。
【００７４】
ここで、装置間の往復通信においては、通信の効率化のため、できる限り通信帯域を使い切ることが求められる。このためには、平均応答時間と、同時通信数について以下の関係式を満たしている必要がある。
【００７５】
１通信あたりの通信経路占有時間（Ｓ）×同時通信数（Ｎ）≧平均往復通信時間（Ｔ）
この同時通信数を増やすためには、通信情報を保持する制御テーブルを通信数だけ持つことが必要であり、またエラーによる再送が必要になるような通信経路においては、加えて通信中のデータを再送のために保持し続けるバッファも必要となる。これらは、通信制御回路の中で支配的なハードウェアコストであり、同時通信数に比例して増加する。このため、同時通信数（Ｎ）は、なるべく小さく抑える事が重要となる。
【００７６】
又、通信経路占有時間（Ｓ）は、パケット通信においては、パケットサイズに対応する。Ｎを小さく抑えた上で、上の関係式を満たすためには、Ｓを大きくする方法も考えられる。最短ジョブ優先の考え方によれば、通信平均遅延を抑えるためには、小さいパケットを優先的に制御させる必要があり、パケットのサイズを大きくするという事は、このポリシーに反する。即ち、平均往復通信時間Ｔを小さく保つ制御自体が難しくなってしまう。またバッファサイズ自体を大きくする必要があり、ハードウェアコストを抑えるという意味では、本末転倒である。
【００７７】
このため、同じ構成をとるのであれば、なるべく平均往復通信時間Ｔを小さくする抑える制御を実現する事が、通信帯域を使い切る面でも、ハードウェアコストの面でも望ましい。本実施の形態では、最短ジョブ優先制御を、データ通信経路と制御通信経路を分離して、且つ制御通信経路に制御パケットを多重化することにより、実行するため、往復通信時間の平均を小さくでき、且つハードウェアコストも低減できる。
【００７８】
（パケット受信回路）
図１２は、図２のパケット受信回路のブロック図、図１３は、図１２における受信側のタイミング補正が必要であることの説明図、図１４は、受信タイミング補正の説明図、図１５は、図１２の受信動作のタイムチャート図である。
【００７９】
図１３によりタイミング補正の必要性がある場合を説明する。受信側の回路は、制御とデータとに分割された通信経路Ｌ１，Ｌ２において、単一の受信回路で受信処理を行えることが望ましい。制御情報（パケット）は、制御通信経路Ｌ１において直列化されて送られてくるため、同時に２つのパケットを処理する必要はない。しかし、実際の通信を考えた場合、経路上で通信データが破壊され、通信データを破棄して、送信側からデータを再送する処理が必要となる。
【００８０】
この場合、制御情報を含めたデータの完全性は、データ通信経路の通信が全て受信し終わるまで確認する事はできない。即ち、データを伴うパケットの受信処理は、データ受信の末尾のタイミングで行うことが望ましい。図１３に示すように、制御パケット４０１に付随するデータパケット３００の通信の最終タイミングに、制御パケット４０３が届いた場合、制御パケット４０１、データパケット３００と、制御パケット４０３の受信処理は、一致してしまう。
【００８１】
上記のデータパケット３００と制御パケット４０３の受信処理が一致してしまう状況を回避するために、受信側で、一度データを伴う通信と、伴わない通信との分離を行い、再度多重化する回路を設ける。図１２及び図１４により具体的に説明する。図１２において、図２で説明したものと同一のものは、同一の記号で示してある。尚、図１２の太線が、データ通信経路（バス）を示し、細線が、制御通信経路を示す。
【００８２】
分離器６０は、制御パケット４０１〜４０５を第1の線（細線）Ｌ３で、データパケット３００，３０１を第２の線Ｌ４で受け、制御パケットのペレーションコードのデコード識別により、データパケットを伴わない制御パケット４０２，４０３，４０５と、データパケット３００，３０１を伴う制御パケット４０１，４０４とそのデータパケット３００，３０１とに分離する。以降、データパケットを伴わない制御パケット４０２，４０３，４０５と、データパケットを伴う制御パケット４０１，４０４とそのデータパケット３００，３０１とが、別々にタイミング制御される。
【００８３】
データパケットを伴わない制御パケット４０２，４０３，４０５は、第１のエラーチエック回路（データ完全性チエックバッファ）６１でエラーチエックされる。例えば、ＣＲＣ（Cyclic Redundant Code）チエックが好ましい。遅延回路６２は、エラーチエックされた制御パケットを遅延する（例えば、１サイクル）。第１のマルチプレクサ６３には、第1のエラーチエック回路６１からの制御パケットと、遅延回路６２からの遅延された制御パケットとが入力される。
【００８４】
一方、データパケットを伴う制御パケット４０１，４０４とデータパケット３００，３０１は、データパケットの末尾で、第２のエラーチエック回路６４でエラーチエックされ、第２のマルチプレクサ６５に出力される。例えば、ＣＲＣ（Cyclic Redundant Code）チエックが好ましい。第２のエラーチエック回路６４は、エラーを検出しないと、第１のバリッド信号ＣＶ１を出力する。
【００８５】
又、第1のマルチプレクサ６３は、出力信号がバリッドであると、第２のバリッド信号ＣＶ２を出力する。切り替え制御部６９は、両バリッド信号ＣＶ１，ＣＶ２を受け、第1のバリッド信号ＣＶ１が有効（オン）であると、第1のマルチプレクサ６３に、遅延回路６２の出力を選択させ、第１のバリッド信号が無効（オフ）になるまでは、第１のマルチプレクサ６３に、遅延回路６２の出力を選択させ続ける。第１のバリッド信号が無効（オフ）になった瞬間からは、第1のマルチプレクサ６３に、第１のエラーチエック回路６１の出力を選択させる。
【００８６】
第２のマルチプレクサ６５は、第1のバリッド信号ＣＶ１が無効（オフ）であると、第1のマルチプレクサ６３からの制御パケットを、第1のバリッド信号ＣＶ１が有効（オン）であると、第２のエラーチエック回路６４からの制御パケット及びデータパケットを選択し、リクエストデコーダ６６に出力する。
【００８７】
即ち、第１のマルチプレクサ６３の入力では、第２のマルチプレクサ６５での衝突回避のために、１段のバッファ（遅延回路６２）を設けている。受信したパケットはデータを伴うパケット、伴わないパケットにグループ分けされ、それぞれのグループに割り当てられたデータ通信用完全性チェックバッファ（第２のエラーチエック回路６４）、制御通信用完全性チェックバッファ（第1のエラーチエック回路６１）に入力される。
【００８８】
それぞれの完全性チェックは、パケットの末尾で行われ、壊れていたパケットは、ここで破棄される。正しいパケットのみが、チェックバッファ６１，６４を抜けて出てくる。図１３で説明したように、データ通信用と制御通信用の両バッファ６１，６４から同時に制御パケットが出てくる事がある。
【００８９】
この時のために、制御通信側のタイミング調整用のディレイバッファ６２を設ける。  データ通信側との競合が発生した場合には、タイミング調整用のバッファ６２で、１パケット分遅れたタイミングで、制御通信のパケットを出力する。これにより衝突のタイミングは回避され、データ通信側のパケットが受信処理される。
【００９０】
データ通信側は、次の完全性チェックが終わるのは、データ通信完了時になるため、衝突の次のタイミングからは、確実に制御通信側のデータを受信処理に入力する事ができる。また、制御通信用の制御パケットは、データを伴う通信のエラーチエック回路６１に重複して送られてくる事がないため、次のデータ側の完全性チェックが終わるまでの間に、必ず１パケット分の隙間が存在する（図１４参照）。この隙間を検出した時点で、ディレイバッファ６２側のデータから完全性チェックバッファ６１側のデータに切り替える事が可能であるため、タイミング調整用のディレイバッファ６２は、１スロット分だけ用意すれば良い。
【００９１】
図１５のタイムチャートにより、一例を説明する。図１５は、データ付きパケットの制御パケットＣとデータパケットＤ及びデータなし制御パケットＤ‘とを、制御パケットは、Ｃ１，Ｃ２，・・・Ｃ１０の順で、直列に転送され、制御パケットＣ１，Ｃ７に同期して３サイクルのデータパケットＤが転送された例を示す。
【００９２】
データ付きパケットの制御パケットＣとデータパケットＤは、データパケットＤの全てを受信完了後に、エラーチエックされるため、受信時から３サイクル後に、エラーチエックされたデータ付きパケットの制御パケットＣとデータパケットＤが、出力される。一方、データなし制御パケットＤ‘は、受信時点で、エラーチエックされる。
【００９３】
データなし制御パケットＤ‘は、１サイクル遅延される。前述のデータ付き制御パケットを優先するタイミング補正を行うと、マルチプレクサ６５から出力される制御パケットは、データなし制御パケットＣ２，Ｃ３，データ付き制御パケットＣ１，データなし制御パケットＣ４，Ｃ５、Ｃ６，データ付き制御パケットＣ７，データなし制御パケットＣ８，Ｃ９、Ｃ１０の順で、直列する。このため、受信側での衝突回避が可能となる。
【００９４】
リクエストデコーダ６０は、制御パケットのオペコード、ＩＤを識別（デコード）し、分離器６７を介し、オペコード、ＩＤに対応する受信ＦＩＦＯユニット６８−１〜６８−Ｎに出力する。
【００９５】
（他の実施の形態）
前述の実施の形態では、往復転送の送信要求、受信応答を、ストア、受信要求、送信応答を、フェッチの例で説明したが、他の転送動作にも適用できる。又、パケット送信回路、パケット受信回路をもつ回路を、メモリアクセス実行回路で説明したが、他の用途の転送回路にも適用できる。パケット転送システムも、情報処理システムに限らず、バス間で、転送を行う種々のＩＣ（Integrated Circuit）や、ＬＳＩ（Large Scale Integrated Circuit）に適用できる。
【００９６】
以上、本発明を実施の形態により説明したが、本発明の趣旨の範囲内において、本発明は、種々の変形が可能であり、本発明の範囲からこれらを排除するものではない。
【００９７】
（付記１）
制御情報を転送する場合には、前記制御情報を備える第1の制御パケットを、制御情報にデータが付随する場合には、前記制御情報を備える第２の制御パケットと、前記データを備えるデータパケットとを、通信経路を介し転送するパケット通信制御装置において、複数の送信ユニットと、前記複数の送信ユニットの送信要求を調停し、制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、データ通信経路に転送する多重化制御回路とを有することを特徴とするパケット通信制御装置。
【００９８】
（付記２）
前記パケット通信制御装置は、前記制御通信経路から前記第１、第２の制御パケットを、前記データ通信経路から前記データパケットを受信するパケット受信回路を更に有し、前記パケット受信回路は、前記制御通信経路からの前記第1の制御パケットのエラーをチエックする第１のエラーチエック回路と、前記第２の制御パケットと前記データパケットとのエラーをチエックする第２のエラーチエック回路と、前記第１のエラーチエック回路でエラーを検出されなかった前記第１の制御パケットと、前記第２のエラーチエック回路でエラーを検出されなかった前記第２の制御パケットのタイミング調整を行うタイミング調整回路とを有することを特徴とする付記１のパケット通信制御装置。
【００９９】
（付記３）
前記多重化回路は、前記複数の送信ユニットの送信要求を調停する調停回路と、前記調停回路の調停結果に従い、前記複数の送信ユニットの出力を選択し、前記制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、前記データ通信経路に転送するマルチプレクサとを有することを特徴とする付記１のパケット通信制御装置。
【０１００】
（付記４）
前記調停回路は、前記複数の送信ユニットの前記第１の制御パケットの調停を行う第１の調停回路と、前記複数の送信ユニットの前記第２の制御パケットの調停を行う第２の調停回路と、前記第１の調停回路の調停結果と前記第２の調停回路の調停結果とに従い、前記転送すべき前記送信ユニットを選択する調停制御回路とを有することを特徴とする付記１のパケット通信制御装置。
【０１０１】
（付記５）
前記調停制御回路は、前記データ通信経路が空いている場合には、前記第２の調停回路の調停結果に従い、前記転送すべき前記送信ユニットを選択し、前記データ通信経路が空いていない場合には、前記第１の調停回路の調停結果に従い、前記転送すべき前記送信ユニットを選択することを特徴とする付記４のパケット通信制御装置。
【０１０２】
（付記６）
前記第１の制御パケットが、データ受信要求であり、前記第２の制御パケットが、データ送信要求であることを特徴とする付記１のパケット通信制御装置。
【０１０３】
（付記７）
前記調停制御回路は、前記複数の送信ユニットからの送信要求から、前記第1の制御パケットと前記第２の制御パケットのいずれであるかを判定し、前記第１の調停回路と前記第２の調停回路との調停対象を選択することを特徴とする付記４のパケット通信制御装置。
【０１０４】
（付記８）
前記複数の送信ユニットの各々が、送信要求元から前記第1の制御パケット、前記第２の制御パケット及びデータパケットを受け、格納するＦＩＦＯ（Fast In Fast Out）ユニットを有することを特徴とする付記１のパケット通信制御装置。
【０１０５】
（付記９）
前記タイミング調整回路は、前記第１のエラーチエック回路でエラーを検出されなかった前記第１の制御パケットを遅延する遅延回路と、前記第２のエラーチエック回路でエラーを検出されなかった前記第２の制御パケットのタイミングにより、前記遅延された第１の制御パケットと遅延されていない前記制御パケットのいずれかを選択するマルチプレクサとを有することを特徴とする付記２のパケット通信制御装置。
【０１０６】
（付記１０）
前記受信回路は、更に、前記制御通信経路から前記第１、第２の制御パケットを、前記データ通信経路から前記データパケットを受信し、前記第1の制御パケットを、前記第１のエラーチエック回路へ、前記第２の制御パケットと前記データパケットとを、前記第２のエラーチエック回路へ分離する分離回路とを有することを特徴とする付記２のパケット通信制御装置。
【０１０７】
（付記１１）
メモリのアクセスを行うメモリアクセスコントローラに、制御情報を転送する場合には、前記制御情報を備える第1の制御パケットを、制御情報にデータが付随する場合には、前記制御情報を備える第２の制御パケットと、前記データを備えるデータパケットとを、通信経路を介し転送して、前記メモリアクセスコントローラにメモリアクセスを依頼するメモリアクセス制御装置において、複数の送信ユニットと、前記複数の送信ユニットの送信要求を調停し、制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、データ通信経路に転送する多重化制御回路とを有することを特徴とするメモリアクセス制御装置。
【０１０８】
（付記１２）
前記メモリアクセス制御装置は、前記制御通信経路から前記第１、第２の制御パケットを、前記データ通信経路から前記データパケットを受信するパケット受信回路を更に有し、前記パケット受信回路は、前記制御通信経路からの前記第1の制御パケットのエラーをチエックする第１のエラーチエック回路と、前記第２の制御パケットと前記データパケットとのエラーをチエックする第２のエラーチエック回路と、前記第１のエラーチエック回路でエラーを検出されなかった前記第１の制御パケットと、前記第２のエラーチエック回路でエラーを検出されなかった前記第２の制御パケットのタイミング調整を行うタイミング調整回路とを有することを特徴とする付記１１のメモリアクセス制御装置。
【０１０９】
（付記１３）
前記多重化回路は、前記複数の送信ユニットの送信要求を調停する調停回路と、前記調停回路の調停結果に従い、前記複数の送信ユニットの出力を選択し、前記制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、前記データ通信経路に転送するマルチプレクサとを有することを特徴とする付記１１のメモリアクセス制御装置。
【０１１０】
（付記１４）
前記調停回路は、前記複数の送信ユニットの前記第１の制御パケットの調停を行う第１の調停回路と、前記複数の送信ユニットの前記第２の制御パケットの調停を行う第２の調停回路と、前記第１の調停回路の調停結果と前記第２の調停回路の調停結果とに従い、前記転送すべき前記送信ユニットを選択する調停制御回路とを有することを特徴とする付記１１のメモリアクセス制御装置。
【０１１１】
（付記１５）
前記調停制御回路は、前記データ通信経路が空いている場合には、前記第２の調停回路の調停結果に従い、前記転送すべき前記送信ユニットを選択し、前記データ通信経路が空いていない場合には、前記第１の調停回路の調停結果に従い、前記転送すべき前記送信ユニットを選択することを特徴とする付記１４のメモリアクセス制御装置。
【０１１２】
（付記１６）
前記タイミング調整回路は、前記第１のエラーチエック回路でエラーを検出されなかった前記第１の制御パケットを遅延する遅延回路と、前記第２のエラーチエック回路でエラーを検出されなかった前記第２の制御パケットのタイミングにより、前記遅延された第１の制御パケットと遅延されていない前記制御パケットのいずれかを選択するマルチプレクサとを有することを特徴とする付記１２のメモリアクセス制御装置。
【０１１３】
（付記１７）
前記受信回路は、更に、前記制御通信経路から前記第１、第２の制御パケットを、前記データ通信経路から前記データパケットを受信し、前記第1の制御パケットを、前記第１のエラーチエック回路へ、前記第２の制御パケットと前記データパケットとを、前記第２のエラーチエック回路へ分離する分離回路とを有することを特徴とする付記１２のメモリアクセス制御装置。
【０１１４】
（付記１８）
演算処理装置と、メモリと、メモリのアクセスを行うメモリアクセスコントローラと、前記演算処理装置が実行するコマンドにより、前記メモリコントローラに、制御情報を転送する場合には、前記制御情報を備える第1の制御パケットを、制御情報にデータが付随する場合には、前記制御情報を備える第２の制御パケットと、前記データを備えるデータパケットとを、通信経路を介し転送して、前記メモリアクセスコントローラにメモリアクセスを依頼するメモリアクセス制御装置とを有し、前記メモリアクセス実行装置は、複数の送信ユニットと、前記複数の送信ユニットの送信要求を調停し、制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、データ通信経路に転送する多重化制御回路とを有することを特徴とする情報処理システム。
【０１１５】
（付記１９）
前記メモリアクセス実行回路は、前記制御通信経路から前記第１、第２の制御パケットを、前記データ通信経路から前記データパケットを受信するパケット受信回路を更に有し、前記パケット受信回路は、前記制御通信経路からの前記第1の制御パケットのエラーをチエックする第１のエラーチエック回路と、前記第２の制御パケットと前記データパケットとのエラーをチエックする第２のエラーチエック回路と、前記第１のエラーチエック回路でエラーを検出されなかった前記第１の制御パケットと、前記第２のエラーチエック回路でエラーを検出されなかった前記第２の制御パケットのタイミング調整を行うタイミング調整回路とを有することを特徴とする付記１８の情報処理システム。
【０１１６】
（付記２０）
前記多重化回路は、前記複数の送信ユニットの送信要求を調停する調停回路と、前記調停回路の調停結果に従い、前記複数の送信ユニットの出力を選択し、前記制御通信経路に、前記複数の送信ユニットの前記第１、第２の制御パケットを順次転送し、且つ前記第２の制御パケットに付随する前記データパケットを、前記第２の制御パケットの前記制御通信経路の転送と同期して、前記データ通信経路に転送するマルチプレクサとを有することを特徴とする付記１８の情報処理システム。
【産業上の利用可能性】
【０１１７】
データ通信経路と制御通信経路を分離して、且つ制御通信経路に制御パケットを多重化することにより、最短ジョブ優先制御を実行するため、往復通信時間の平均を小さくでき、且つハードウェアコストも低減できる。又、データパケットを付随する制御パケットは、データパケットと同期して、異なる経路で転送するため、受信処理の複雑さを回避できる。
【符号の説明】
【０１１８】
１  ＣＰＵチップ
２  メインメモリ
３  相互結合網チップ
４  バスコントローラ
４−１〜４−Ｎ  メモリアクセス実行回路
５  パケット送信回路
６  パケット受信回路
７  転送制御ユニット
８  ネットワークスイッチ
１０  ＣＰＵブロック
１２  ＤＭＡＣ
１４  メインメモリアクセスコントローラ
５０−１〜５０−Ｎ  送信ＦＩＦＯユニット
５２  マルチプレクサ
５４  調停コントローラ
５６  第１の調停回路
５８  第２の調停回路
６０、６７  分離器
６１，６４  エラーチエック回路
６２  遅延回路
６３、６５  マルチプレクサ
６６  リクエストデコーダ
６８−１〜６８−Ｎ  受信ＦＩＦＯユニット
【図１】
2011135433.tif 000003
【図２】
2011135433.tif 000004
【図３】
2011135433.tif 000005
【図４】
2011135433.tif 000006
【図５】
2011135433.tif 000007
【図６】
2011135433.tif 000008
【図７】
2011135433.tif 000009
【図８】
2011135433.tif 000010
【図９】
2011135433.tif 000011
【図１０】
2011135433.tif 000012
【図１１】
2011135433.tif 000013
【図１２】
2011135433.tif 000014
【図１３】
2011135433.tif 000015
【図１４】
2011135433.tif 000016
【図１５】
2011135433.tif 000017
【図１６】
2011135433.tif 000018
【図１７】
2011135433.tif 000019