(57)【特許請求の範囲】
【請求項１】
データの読み込みと書き込みが可能で１つのチップの中に設置された複数のＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）と、
前記複数のＩＰを連結してデータを転送するルータと、
前記各ＩＰとルータとの間に設置され、前記各ＩＰとルータとの間で転送されるデータを処理し、前記各ＩＰから提供されたバースト単位のデータを複数のパケットに分割し、前記各ＩＰに対してそれぞれ対応される複数のＮＩ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）と、
を含み、
前記ＮＩは、
前記各ＩＰから提供されたデータをパケット化するかパケットをデータに変換するパケット発生器と、
前記パケット発生器から発生されたパケットを転送が容易な形態であるフリットに変換するか前記フリットをパケットに変換するフリット発生器と、
を含み、
前記パケット発生器は、１つのバーストデータから複数のパケットを生成するものであって、
前記各ＩＰと前記各ＩＰに対応するＮＩとが、データの転送できる状態であるか否かを判断するハンドシェークチェック部と、
前記データが前記各ＩＰと前記各ＩＰに対応されるＮＩとを連結する複数のチャネルのうちいずれのチャネルを介して転送されるかを確認するためのチャネル確認部と、
前記チャネル確認部から提供されたチャネルと前記ＩＰからのデータを少なくとも１つのパケットにパケット化するパケット部と、
前記ルータから提供されたパケットを元のデータに復元するデパケット部と、
前記パケット部からのパケットと、前記ルータからのパケットを保存するパケットバッファと、
を含み、
前記チャネル確認部は、前記データとパケットに含まれた情報に応じて、前記データとパケットがＷＡ（Ｗｒｉｔｅ  Ａｄｄｒｅｓｓ）チャネル、Ｗ（Ｗｒｉｔｅ  ｄａｔａ）チャネル、Ｂ（Ｗｒｉｔｅ  Ｒｅｓｐｏｎｓｅ）チャネル、ＡＲ（Ｒｅａｄ  Ａｄｄｒｅｓｓ）チャネル、Ｒ（Ｒｅａｄ  Ｄａｔａ）チャネルのうちいずれのチャネルを介して転送されるかを判断し、
前記パケット部は、前記チャネル確認部にて確認されたチャネルと、前記ＩＰから提供されたデータに応じて、前記ＡＲチャネルを介して転送される読み込み要請パケット、前記ＷＡチャネルを介して転送される書き込み要請パケット、前記Ｒチャネルを介して転送される読み込みパケット、前記Ｗチャネルを介して転送される書き込みパケット、前記Ｂチャネルを介して転送される書き込み応答パケットのうちいずれか１つを生成することを特徴とするＡＸＩプロトコルを適用したＮｏＣ（Ｎｅｔｗｏｒｋｓ  ｏｎ  Ｃｈｉｐ）システム。
【請求項２】
前記ハンドシェークチェック部は、前記各ＩＰと前記ＩＰに対応するＮＩとの間でデータを転送するとき、前記ＩＰとＮＩのデータが転送できるか否かを示す有効ハンドシェーク信号と準備ハンドシェーク信号とを発生することを特徴とする請求項１に記載のＡＸＩプロトコルを適用したＮｏＣシステム。
【請求項３】
前記ハンドシェークチェック部は、前記各ＩＰから前記ＩＰに対応されるＮＩにデータを転送するとき、前記各ＩＰのデータが転送できるか否かに応じて有効ハンドシェーク信号を変化させ、前記各ＩＰに対応される前記ＮＩのデータが転送できるか否かに応じて準備ハンドシェーク信号を変化させることを特徴とする請求項２に記載のＡＸＩプロトコルを適用したＮｏＣシステム。
【請求項４】
前記ハンドシェークチェック部は、前記ＮＩからＩＰにデータを転送するとき、前記ＮＩのデータが転送できるか否かに応じて有効ハンドシェーク信号を変化させ、前記ＩＰのデータが転送できるか否かに応じて準備ハンドシェーク信号を変化させることを特徴とする請求項２に記載のＡＸＩプロトコルを適用したＮｏＣシステム。
【請求項５】
前記読み込み要請パケットと書き込み要請パケットは、
パケットタイプ、送信者情報、データ長さ、データサイズ、データタイプ、ロック設定の有無、キャッシュメモリの使用可否、セキュリティレベルなどに関する情報のうち少なくとも１つを含むヘッダと、
前記読み込み要請パケットの場合には読み込みメモリアドレスが含まれ、前記書き込み要請パケットの場合には書き込みメモリアドレスが含まれるペイロードと、
を含むことを特徴とする請求項１に記載のＡＸＩプロトコルを適用したＮｏＣシステム。
【請求項６】
前記読み込みパケットは、
パケットタイプ、読み込み対象ＩＰの情報、前記読み込み要請パケットが正常に転送されたか否か、最後のバーストであるか否かなどの情報のうち少なくとも１つを含むヘッダと、
読み込みデータが含まれるペイロードと、
を含むことを特徴とする請求項１に記載のＡＸＩプロトコルを適用したＮｏＣシステム。
【請求項７】
前記書き込みパケットは、
パケットタイプ、書き込み対象ＩＰの情報、ＷＳＴＲＢ情報、最後のバーストであるか否かに対する情報のうち少なくとも１つを含むヘッダと、
書き込みデータが含まれるペイロードと、
を含むことを特徴とする請求項１に記載のＡＸＩプロトコルを適用したＮｏＣシステム。
【請求項８】
前記書き込み応答パケットは、パケットタイプ、応答ＩＰの情報、要請を受諾したか否かなどの情報のうち少なくとも１つを含むヘッダを有することを特徴とする請求項１に記載のＡＸＩプロトコルを適用したＮｏＣシステム。
【請求項９】
前記フリット発生器は、
前記パケット又はフリットに含まれたネットワークアドレスとメモリアドレスを相互変換するアドレスデコーダと、
前記アドレスデコーダによって変換されたアドレスを有するパケットをフリットに変換するフリット部と、
前記ルータから提供されたフリットをパケットに変換するデフリット部と、
前記フリット部からのフリットと、前記ルータからのフリットを保存するフリットバッファと、
を含むことを特徴とする請求項１に記載のＡＸＩプロトコルを適用したＮｏＣシステム。
【請求項１０】
ＩＰから提供されたデータをパケット化するかパケットをデータに変換するパケット発生器と、
前記パケット発生器から発生されたパケットを転送が容易な形態であるフリットに変換するか前記フリットをパケットに変換するフリット発生器と、
を含み、
前記パケット発生器は１つのバーストデータから複数のパケットを生成することを特徴とするＡＸＩプロトコルを適用したＮｏＣシステムのネットワークインターフェース装置。
【請求項１１】
前記パケット発生器は、
前記各ＩＰと前記各ＩＰに対応するネットワークインターフェース装置とが、データの転送できる状態であるか否かを判断するハンドシェークチェック部と、
前記データが前記各ＩＰと前記各ＩＰに対応するネットワークインターフェース装置に連結する複数のチャネルのうちいずれのチャネルを介して転送されるかを確認するためのチャネル確認部と、
前記チャネル確認部から提供されたチャネルと前記ＩＰからのデータを複数のパケットにパケット化するパケット部と、
前記ルータから提供されたパケットを元のデータに復元するデパケット部と、
前記パケット部からのパケットと、前記ルータからのパケットを保存するパケットバッファと、
を含むことを特徴とする請求項１０に記載のＡＸＩプロトコルを適用したＮｏＣシステムのネットワークインターフェース装置。
【請求項１２】
前記パケット部は、前記チャネル確認部にて確認されたチャネルと、前記ＩＰから提供されたデータに応じて、前記ＡＲチャネルを介して転送される読み込み要請パケット、前記ＷＡチャネルを介して転送される書き込み要請パケット、前記Ｒチャネルを介して転送される読み込みパケット、前記Ｗチャネルを介して転送される書き込みパケット、前記Ｂチャネルを介して転送される書き込み応答パケットのうちいずれか１つを生成することを特徴とする請求項１１に記載のＡＸＩプロトコルを適用したＮｏＣシステムのネットワークインターフェース装置。
【請求項１３】
前記フリット発生器は、
前記パケット又はフリットに含まれたネットワークアドレスとメモリアドレスを相互変換するアドレスデコーダと、
前記アドレスデコーダによって変換されたアドレスを有するパケットをフリットに変換するフリット部と、
前記ルータから提供されたフリットをパケットに変換するデフリット部と、
前記フリット部からのフリットと、前記ルータからのフリットを保存するフリットバッファと、
を含むことを特徴とする請求項１０に記載のＡＸＩプロトコルを適用したＮｏＣシステムのネットワークインターフェース装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＡＸＩプロトコルを適用したＮｏＣシステムに関し、より詳細にはＡＸＩプロトコルをＮｏＣに適用しつつデータを幾つかのパケットに分割して転送できるようにすることで、ＡＸＩプロトコルの多様な機能が支援でき帯域活用能力を向上させることができるＡＸＩプロトコルを適用したＮｏＣシステムに関する。
【背景技術】
【０００２】
コンピューター、通信、放送などが次第に統合されるコンバージェンス化に伴い、既存のＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  ＩＣ：注文型半導体）とＡＳＳＰ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｓｔａｎｄａｒｄ  Ｐｒｏｄｕｃｔ：特定用途の標準製品）の需要がＳｏＣ（Ｓｙｓｔｅｍ  ｏｎ  Ｃｈｉｐ）へと変換されつつある。また、ＩＴ（Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）機器の軽薄短小化及び高機能化の傾向もＳｏＣ産業を促進させる要因となっている。
【０００３】
ＳｏＣとは、既存の色々な機能を有する複雑なシステムを１つのチップで具現した技術集約的な半導体技術である。ＳｏＣの現実化のために多くの技術が研究されており、特にチップの中に内在している色々な知能素子（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ：ＩＰ）を連結する方案が非常に重要な事項として台頭している。
ＩＰを連結するための技術としてはバスを基盤とした連結方式が主に採用されている。しかし、バス構造においては、特定のＩＰがバスを使っていれば他のＩＰはバスを使うことができない。従って、チップの集積度が高くなりＩＰ間に流れる情報量が急激に増加することにより、拡張性を支援しないバス構造を用いたＳｏＣは構造的な限界に到達する。
【０００４】
このようなバス構造を用いたＳｏＣの構造的な限界を解消するための方案として、一般的なネットワーク技術をチップの中に応用してＩＰを連結する方式であるＮｏＣ（Ｎｅｔｗｏｒｋｓ  ｏｎ  Ｃｈｉｐ）技術が新しく提示された。
一方、ＳｏＣ内のＩＰ連結及び管理のための標準バス規格としてＡＲＭ社のＡＭＢＡ（Ａｄｖａｎｃｅｄ  Ｍｉｃｒｏｃｏｎｔｒｏｌｌｅｒ  Ｂｕｓ  Ａｃｈｉｔｅｃｔｕｒｅ）がある。ＡＭＢＡのバスタイプとしては、ＡＨＢ（Ａｄｖａｎｃｅｄ  Ｈｉｇｈ−Ｐｅｒｆｏｒｍａｎｃｅ  Ｂｕｓ）、ＡＰＢ（Ａｄｖａｎｃｅｄ  Ｐｅｒｉｐｈｅｒａｌ  Ｂｕｓ）、ＡＸＩ（Ａｄｖａｎｃｅｄ  ｅＸｔｅｎｓｉｂｌｅ  Ｉｎｔｅｒｆａｃｅ）が挙げられる。このうち、ＡＸＩは、ＩＰのインターフェースプロトコルであって、Ｍｕｌｔｉｐｌｅ  ｏｕｔｓｔａｎｄｉｎｇ  ａｄｄｒｅｓｓ機能とデータインターリーブ（Ｄａｔａ  ｉｎｔｅｒｌｅａｖｉｎｇ）機能などの進歩した機能を含む。
【０００５】
Ｍｕｌｔｉｐｌｅ  ｏｕｔｓｔａｎｄｉｎｇ  ａｄｄｒｅｓｓ機能は、バスのアドレスラインとデータラインを介して情報が提供されるとき、各データの転送と同時にアドレスラインを介して各データに対するアドレスを一回だけ転送することで、複数のアドレスを転送する間に発生する空いている転送時間を活用できるようにする機能である。データインターリーブ機能は、幾つかのマスターが１つのスレーブにデータを転送するとき、スレーブ端にてデータの混合を可能にすることで、帯域幅をより効率的に使用でき、待ち時間の側面でも有利である。
【０００６】
前述の機能を有するＡＸＩをＮｏＣの各ＩＰとスイッチとの間のインターフェースプロトコルとして使ってＡＸＩ機能をＮｏＣに具現する場合、バスの特性によってＳｏＣで発生する構造的な限界が克服できるので、ＩＰ間のデータを転送するときその速度や再使用性の向上が期待できる。
これに対し、フィリップスが発表した論文である「Ａｎ  Ｅｆｆｉｃｉｅｎｔ  Ｏｎ−Ｃｈｉｐ  ＮＩ  Ｏｆｆｅｒｉｎｇ  Ｇｕａｒａｎｔｅｅｄ  Ｓｅｒｖｉｃｅｓ、Ｓｈａｒｅｄ−Ｍｅｍｏｒｙ  Ａｂｓｔｒａｃｔｉｏｎ、ａｎｄ  Ｆｌｅｘｉｂｌｅ  Ｎｅｔｗｏｒｋ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ」Ｊａｎ.２００５  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｄｅｓｉｇｎ  ｏｆ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ  ａｎｄ  Ｓｙｓｔｅｍ  ｂｙ  Ｐｈｉｌｉｐｓでは、ＡＸＩを適用させたＮｏＣのＮＩ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）とパケットフォーマットについて提案している。
【０００７】
しかし、フィリップスの論文はＡＸＩを支援するための装置を概念的にのみ説明しており、またＮｏＣとＩＰとの間の接続がＡＸＩを用いて行われることに対してのみ重点的に説明している。そして、１つのバーストを１つのパケットに製造して転送することで、ＡＸＩの多様な機能、例えばＭｕｌｔｉｐｌｅ  ｏｕｔｓｔａｎｄｉｎｇ  ａｄｄｒｅｓｓ機能、データインターリーブ機能、データリオーダリング機能の支援が不可能であるのみならず、ＷＳＴＲＢ（Ｗｒｉｔｅ  ｓｔｒｏｂｅｓ）の支援も不可能である。また、１つのバーストを１つのパケットに変換するとき、バーストのサイズが大きければ大きいほどバーストをパケットに変換するための待ち時間が長くなるので帯域活用能力が低くなる。
【０００８】
従って、ＮｏＣシステムにＡＸＩを適用させるとき、ＡＸＩの本来の機能を全て支援できる方法を模索する必要がある。
【非特許文献１】「Ａｎ  Ｅｆｆｉｃｉｅｎｔ  Ｏｎ−Ｃｈｉｐ  ＮＩ  Ｏｆｆｅｒｉｎｇ  Ｇｕａｒａｎｔｅｅｄ  Ｓｅｒｖｉｃｅｓ、Ｓｈａｒｅｄ−Ｍｅｍｏｒｙ  Ａｂｓｔｒａｃｔｉｏｎ、ａｎｄ  Ｆｌｅｘｉｂｌｅ  Ｎｅｔｗｏｒｋ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ」Ｊａｎ.２００５  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｄｅｓｉｇｎ  ｏｆ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ  ａｎｄ  Ｓｙｓｔｅｍ  ｂｙ  Ｐｈｉｌｉｐｓ
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明は前述の問題点を解決するために提出されたもので、本発明の目的は、ＡＸＩプロトコルをＮｏＣに適用しつつデータを幾つかのパケットに分割して転送できるようにすることで、ＡＸＩプロトコルの多様な機能が支援でき帯域活用能力を向上させることができるＡＸＩプロトコルを適用したＮｏＣシステムを提供することにある。
【課題を解決するための手段】
【００１０】
前述の目的を達成するための本発明の構成は、データの読み込みと書き込みが可能で１つのチップの中に設置された複数のＩＰと、前記複数のＩＰを連結してデータを転送するルータと、前記各ＩＰとルータとの間に設置され、前記各ＩＰとルータとの間で転送されるデータを処理し、前記各ＩＰから提供されたバースト単位のデータを少なくとも１つのパケットに分割するＮＩ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）とを含むことを特徴とする。
【００１１】
前記ＮＩは、前記ＩＰから提供されたデータをパケット化するかパケットをデータに変換するパケット発生器と、前記パケット発生器から発生されたパケットを転送が容易な形態であるフリットに変換するか前記フリットをパケットに変換するフリット発生器とを含むことが好ましい。
前記パケット発生器は、前記ＩＰとＮＩとが、データの転送できる状態であるか否かを判断するハンドシェークチェック部と、前記データが前記ＩＰとＮＩとを連結する複数のチャネルのうちいずれのチャネルを介して転送されるものかを確認するためのチャネル確認部と、前記チャネル確認部から提供されたチャネルと前記ＩＰからのデータを少なくとも１つのパケットにパケット化するパケット部と、前記ルータから提供されたパケットを元のデータに復元するデパケット部と、前記パケット部からのパケットと、前記ルータからのパケットを保存するパケットバッファとを含むことができる。
【００１２】
前記ハンドシェークチェック部は、前記ＩＰとＮＩとの間でデータを転送するとき、前記ＩＰとＮＩのデータが転送できるか否かを示す有効ハンドシェーク信号と準備ハンドシェーク信号とを発生させることができる。
前記ハンドシェークチェック部は、前記ＩＰからＮＩにデータを転送するとき、前記ＩＰのデータが転送できるか否かに応じて有効ハンドシェーク信号を変化させ、前記ＮＩのデータが転送できるか否かに応じて準備ハンドシェーク信号を変化させることができる。
【００１３】
前記ハンドシェークチェック部は、前記ＮＩからＩＰにデータを転送するとき、前記ＮＩのデータが転送できるか否かに応じて有効ハンドシェーク信号を変化させ、前記ＩＰのデータが転送できるか否かに応じて準備ハンドシェーク信号を変化させることができる。
前記チャネル確認部は、前記データとパケットに含まれた情報に応じて、前記データとパケットがＷＡ（Ｗｒｉｔｅ  Ａｄｄｒｅｓｓ）チャネル、Ｗ（Ｗｒｉｔｅ  ｄａｔａ）チャネル、Ｂ（Ｗｒｉｔｅ  Ｒｅｓｐｏｎｓｅ）チャネル、ＡＲ（Ｒｅａｄ  Ａｄｄｒｅｓｓ）チャネル、Ｒ（Ｒｅａｄ  Ｄａｔａ）チャネルのうちいずれのチャネルを介して転送するかを判断することができる。
【００１４】
前記パケット部は、前記チャネル確認部にて確認されたチャネルと、前記ＩＰから提供されたデータに応じて、前記ＡＲチャネルを介して転送される読み込み要請パケット、前記ＷＡチャネルを介して転送される書き込み要請パケット、前記Ｒチャネルを介して転送される読み込みパケット、前記Ｗチャネルを介して転送される書き込みパケット、前記Ｂチャネルを介して転送される書き込み応答パケットのうちいずれか１つを生成することができる。
【００１５】
前記読み込み要請パケットと書き込み要請パケットは、パケットタイプ、送信者情報、データ長さ、データサイズ、データタイプ、ロック設定の有無、キャッシュメモリの使用可否、セキュリティレベルなどに関する情報のうち少なくとも１つを含むヘッダと、前記読み込み要請パケットの場合には読み込みメモリアドレスが含まれ、前記書き込み要請パケットの場合には書き込みメモリアドレスが含まれるペイロードとを含むことができる。
【００１６】
前記読み込みパケットは、パケットタイプ、読み込み対象のＩＰ情報、前記読み込み要請パケットが正常に転送されたか否か、最後のバーストであるか否かなどの情報のうち少なくとも１つを含むヘッダと、読み込みデータが含まれるペイロードとを含むことができる。
前記書き込みパケットは、パケットタイプ、書き込み対象のＩＰ情報、ＷＳＴＲＢ情報、最後のバーストであるか否かに対する情報のうち少なくとも１つを含むヘッダと、書き込みデータが含まれるペイロードとを含むことができる。
【００１７】
前記読み込み応答パケットは、パケットタイプ、応答ＩＰの情報、要請を受諾したか否かなどの情報のうち少なくとも１つを含むヘッダを含むことができる。
前記フリット発生器は、前記パケット又はフリットに含まれたネットワークアドレスとメモリアドレスを相互変換させるアドレスデコーダと、前記アドレスデコーダによって変換されたアドレスを有するパケットをフリットに変換するフリット部と、前記ルータから提供されたフリットをパケットに変換させるデフリット部と、前記フリット部からのフリットと、前記ルータからのフリットを保存するフリットバッファとを含むことができる。
【発明の効果】
【００１８】
本発明によると、ＮｏＣシステムにおいて、Ｍｕｌｔｉｐｌｅ  ｏｕｔｓｔａｎｄｉｎｇ  ａｄｄｒｅｓｓ機能、データインターリーブ機能、データリオーダリング機能だけではなく、ＷＳＴＲＢ（Ｗｒｉｔｅ  ｓｔｒｏｂｅｓ）の支援が可能になる。また、待ち時間も短くなり帯域活用能力が高くなる。
【発明を実施するための最良の形態】
【００１９】
以下、添付の図面に基づいて本発明の好適な実施形態について詳述する。
本詳細説明では、チップの中の各ＩＰを便宜上、データ書き込み及び読み込みの主体となるＩＰと客体となるＩＰに区分し、主体となるＩＰをＡＸＩマスターと呼び、客体となるＩＰをＡＸＩスレーブと呼ぶ。ＡＸＩマスターとＡＸＩスレーブはＮｏＣルータを介してデータを転送し、ＡＸＩマスターとＮｏＣルータとの間、ＮｏＣルータとＡＸＩスレーブとの間にはそれぞれネットワークインターフェース（ＮＩ）が設置されている。
【００２０】
図１は、本発明に係るＮＩとルータとの間の関係を示すブロック図である。同図に示すように、ＮＩ１０はパケット発生器２０とフリット発生器３０とを含み、パケット発生器２０とフリット発生器３０との間ではパケットが交換され、ＮＩ１０とＮｏＣルータ４０との間ではフリットが交換される。
一方、ＮＩ１０とＡＸＩマスター、ＮＩ１０とＡＸＩスレーブは５つのチャネルで連結されており、各チャネルはＷＡ（Ｗｒｉｔｅ  Ａｄｄｒｅｓｓ）チャネル、Ｗ（Ｗｒｉｔｅ  ｄａｔａ）チャネル、Ｂ（Ｗｒｉｔｅ  Ｒｅｓｐｏｎｓｅ）チャネル、ＡＲ（Ｒｅａｄ  Ａｄｄｒｅｓｓ）チャネル、Ｒ（Ｒｅａｄ  Ｄａｔａ）チャネルである。
【００２１】
ＡＸＩマスターはＡＸＩスレーブからデータを書き込むため、まずＷＡチャネルを介してデータ書き込みを要請するパケットを提供し、Ｂチャネルを介してＡＸＩスレーブからデータ書き込みを許容するパケットが提供されると、Ｗチャネルを用いてデータをＡＸＩスレーブに提供する。一方、データを読み込む場合、ＡＸＩマスターはＡＲチャネルを用いてＡＸＩスレーブにデータ読み込みを要請し、ＡＸＩスレーブではＲチャネルを用いてＡＸＩマスターにデータを提供する。
【００２２】
図２は、かかる各チャネルと連結されパケットを転送し、本発明に係るＡＸＩプロトコルを適用したＮｏＣシステムのＮＩブロック図を示している。
ＮＩ１０のパケット発生器２０は、ＡＸＩマスターとＮｏＣルータ４０、ＮｏＣルータ４０とＡＸＩスレーブとの間で転送されるパケットを処理し、フリット発生器３０はパケット発生器２０でのパケットをフリットに変換するかフリットをパケットに変換する。このようなＮＩ１０はＡＸＩマスター側とＡＸＩスレーブ側に同一の構造で設置される。
【００２３】
パケット発生器２０は、ハンドシェークチェック部２１、チャネル確認部２７、パケット部２３、パケットバッファ２５、デパケット部２９を含む。
ハンドシェークチェック部２１は、有効ハンドシェーク（ＶＡＬＩＤ  Ｈａｎｄｓｈａｋｅ）信号と準備ハンドシェーク（ＲＥＡＤＹ  Ｈａｎｄｓｈａｋｅ）信号を生成し、前述の５つのチャネル全てはデータを転送して情報を制御するために、同一の有効ハンドシェーク信号と準備ハンドシェーク信号を使用する。ハンドシェークチェック部２１ではパケットバッファ２５の容量をチェックし、パケットが保存できるか否かを判断して有効ハンドシェーク信号又は準備ハンドシェーク信号を発生させる。
【００２４】
ハンドシェークチェック部２１は、ＡＸＩマスターからＮＩ１０にデータを転送するとき、ＡＸＩマスターがデータを転送したか否かに応じて有効ハンドシェーク信号を変化させ、ＮＩ１０のパケットバッファ２５の状態に応じて準備ハンドシェーク信号を変化させる。この時、ハンドシェークチェック部２１は、ＡＸＩマスターからデータが転送されると有効ハンドシェーク信号をハイにし、ＮＩ１０のパケットバッファ２５のデータの保存が可能であれば準備ハンドシェーク信号をハイにする。
【００２５】
また、ハンドシェークチェック部２１は、ＮＩ１０からＡＸＩマスターにデータを転送するとき、ＮＩ１０がデータを転送したか否かに応じて有効ハンドシェーク信号を変化させ、ＡＸＩマスターのデータ受信が可能であれば準備ハンドシェーク信号を変化させる。
従って、有効ハンドシェーク信号と準備ハンドシェーク信号が両方ともハイになる時にのみデータ又は制御情報の転送が行われる。
【００２６】
チャネル確認部２７はＮＩ１０に連結された各チャネルを介して入力されたデータがいずれのチャネルから入力されたものかを把握してパケット部２３に提供する。即ち、チャネル確認部２７は、各チャネルから入力された情報に応じて、ＷＡチャネル、Ｗチャネル、Ｂチャネル、ＡＲチャネル、Ｒチャネルのうちいずれの１つから提供されたものであることを判断する。例えば、入力されたデータにロック設定の有無（ＡｘＬＯＣＫ）、キャッシュメモリの使用可否（ＡｘＣＡＣＨＥ）、セキュリティレベル（ＡｘＰＲＯＴ）などに関する情報が含まれている場合、チャネル確認部２７は該当データがＷＡチャネル又はＡＲチャネルから提供されたものと判断する。そして、チャネル確認部２７は、読み込み要請パケットが正常に転送されたか否か（ＲＲＥＳＰ）が含まれたデータはＲチャネルから提供されたものと判断し、ＷＳＴＲＢのビットが含まれたデータはＷチャネルから提供されたものと判断し、要請を受諾したか否か（ＢＲＥＳＰ）が含まれたデータはＢチャネルから提供されたものと判断する。
【００２７】
パケット部２３では、各チャネルのうちいずれの１つから入力されたデータとチャネル確認部２７にて確認されたチャネルを用いて、図３Ａ〜図３Ｄに示されたパケットを生成する。パケット部２３ではチャネル確認部２７にて確認されたチャネルの種類に応じて各パケットのヘッダに含まれたパケットタイプを決定し、提供されたデータを加工してそれぞれのパケットを生成し、後述する図４〜図７に開示している条件に応じて１つのバーストのデータを１つ又はその以上のパケットに生成することができる。
【００２８】
図３Ａ〜図３Ｄは、各チャネルを介して転送されるパケットの構造を示す図面である。
図３Ａは、ＷＡチャネルとＡＲチャネルを介して転送される読み込み要請パケットと書き込み要請パケットの構造を示す図面である。読み込み要請パケットと書き込み要請パケットは同一の形態で構成され、ヘッダにはパケットタイプ（Ｔｙｐｅ）、送信者ＩＤ（ＡｘＩＤ）、データ長さ（ＡｘＬＥＮ）、データサイズ（ＡｘＳＩＺＥ）、データタイプ（ＡｘＢＵＲＳＴ）、ロック（ＬＯＣＫ）設定の有無（ＡｘＬＯＣＫ）、キャッシュメモリの使用可否（ＡｘＣＡＣＨＥ）、セキュリティレベル（ＡｘＰＲＯＴ）などに関する情報が含まれており、ペイロードには読み込み又は書き込みメモリアドレスが含まれる。ここで、パケットタイプ（Ｔｙｐｅ）は読み込み要請パケット、書き込み要請パケット、読み込みパケット、書き込みパケット、書き込み応答パケットのうちの１つを示し、ロック設定の有無（ＡｘＬＯＣＫ）は、特定のＡＸＩマスターやＡＸＩスレーブのみがパケットを受けるようにロックが設定されているか否かを示す。キャッシュメモリの使用可否（ＡｘＣＡＣＨＥ）はメモリ以外のキャッシュメモリが使えるか否かを示し、セキュリティレベル（ＡｘＰＲＯＴ）は該当パケットを保護するか否かと、パケットを保護するためのセキュリティレベルを表示する。
【００２９】
図３Ｂは、Ｒチャネルを介して転送される読み込みパケットの構造を示す図面である。パケットのヘッダにはパケットタイプ（Ｔｙｐｅ）、ＡＸＩマスターの要請に応じて読み込み処理を行うＡＸＩスレーブのＩＤ（ＲＩＤ）、読み込み要請パケットが正常に転送されたか否か（ＲＲＥＳＰ）、最後のバーストであるか否かを確認する確認用情報（Ｅｎｄ  ｏｆ  Ｂｕｒｓｔ）が含まれている。ここで、ＲＲＥＳＰは読み込み要請パケットが正常に転送されたか、スレーブエラーが発生したか、アドレスエラーが発生したか否かを示す。読み込みパケットのペイロードには読み込みデータが含まれる。
【００３０】
図３Ｃは、Ｗチャネルを介して転送される書き込みパケットの構造を示す図面である。書き込みパケットのヘッダは、パケットタイプ（Ｔｙｐｅ）、書き込み対象のＡＸＩスレーブのＩＤ（ＷＩＤ）、ＷＳＴＲＢのビット（ＷＳＴＲＢ）、最後バーストの確認用情報（Ｅｎｄ  ｏｆ  Ｂｕｒｓｔ）を含み、ペイロードには書き込みデータが含まれる。
図３Ｄは、Ｂチャネルを介して転送される読み込み応答パケットの構造を示す図面である。読み込み応答パケットはヘッダのみ有し、ヘッダにはパケットタイプ、応答したＡＸＩスレーブのＩＤ（ＢＩＤ）、要請受諾可否（ＢＲＥＳＰ）などの情報が含まれている。
【００３１】
デパケット部２９はフリット発生器３０からパケットを提供され、提供されたパケットを処理してＡＸＩマスター又はＡＸＩスレーブで提供した本来のデータの形態に復元する。デパケット部２９は復元されたデータをチャネル確認部２７に提供する。
パケットバッファ２５はパケット部２３にて生成されたパケットを保存するか、フリット発生器３０から提供されたパケットを保存する。
【００３２】
一方、フリット発生器３０は、アドレスデコーダ３１、フリット部３３、デフリット部３７、フリットバッファ３５を含む。
アドレスデコーダ３１はメモリアドレスとネットワークアドレスを相互変換する役割をする。パケット発生器２０からパケットがフリット発生器３０に提供されると、アドレスデコーダ３１はパケットに含まれたメモリアドレスをネットワークアドレスに変換し、ルータ４０からＮＩ１０にフリットが提供される場合、アドレスデコーダ３１はフリットに含まれたネットワークアドレスをメモリアドレスに変換する。
【００３３】
フリット部３３は、変換されたアドレスを有するパケットを提供され、図３Ｅに示されたようなフリットを形成する。同図に示すように、フリットは、ヘッダフリット、データフリット、テイルフリットを含み、各フリットのヘッダにはヘッダフリット、データフリット、テイルフリットであることを示すビットが含まれる。このうち、ヘッダフリットには宛先アドレスをＸＹ座標にて表示した８ビットのアドレス情報が含まれ、データフリットとテイルフリットにはデータが含まれる。
【００３４】
デフリット部３７は、ＮｏＣルータ４０から提供されたフリットをパケット発生器２０にて生成されたパケットの形態に復元し、復元されたパケットはパケット発生器２０に提供される。
フリットバッファ３５は、フリット部３３にて生成されたフリットを保存するか、ＮｏＣルータ４０から提供されたフリットを保存する。
【００３５】
前述の構成によるＮＩ１０を用いてデータを転送する過程は次の通りである。
まず、ＡＸＩマスターからＷＡチャネル、Ｗチャネル、ＡＲチャネルのうち１つを用いて書き込み要請データ、書き込みデータ、読み込み要請データをＮＩ１０に転送すると、ＮＩ１０のパケット発生器２０とフリット発生器３０ではデータを処理してパケットとフリットを生成する。
【００３６】
パケット発生器２０のハンドシェークチェック部２１では、ＡＸＩマスターからの信号とパケットバッファ２５の残存容量を確認してデータが転送できるか否かを判断する。判断結果、ＡＸＩマスターとＮＩが両方ともデータの伝送が可能であれば、ハンドシェークチェック部２１では有効ハンドシェーク信号と準備ハンドシェーク信号をハイにする。その後、チャネル確認部２７ではデータが５つのチャネルのうちいずれのチャネルから提供されたものかを確認してチャネルに対する情報をパケット部２３に提供する。パケット部２３では、チャネルと提供されたデータに応じて、図３Ａ〜図３Ｄに示されたようなパケットを生成し、この時、データの１つのバースト（Ｂｕｒｓｔ）に対して１つ以上のパケットが生成される。生成されたパケットはパケットバッファ２５に一時保存された後、フリット発生器３０に転送される。
【００３７】
フリット発生器３０のアドレスデコーダ３１では、パケット内に含まれたメモリアドレスをネットワークアドレスに変換し、フリット部３３では、パケットを転送しやすいフリットの形態に変換する。この時、フリットはヘッダフリット、データフリット、テイルフリットのうちヘッダフリットのみ形成されるか、それぞれのフリットが全て形成され得る。生成されたフリットはフリットバッファに保存される。
【００３８】
フリットバッファ３５に保存されたフリットはＮｏＣルータ４０に転送され、ＮｏＣルータ４０に到達したフリットはまたＮＩ１０を介してＡＸＩスレーブに転送される。この時、ＡＸＩスレーブ側のＮＩではＡＸＩマスター側のＮＩ１０とは反対の過程が行われる。
ＡＸＩスレーブ側のＮＩ１０にフリットが入力されると、フリット発生器３０のフリットバッファ３５にフリットが保存され、デフリット部３７ではフリットをまたパケットの状態に復元する。そして、アドレスデコーダ３１ではネットワークアドレスをメモリアドレスに変換してデパケット部２９に提供する。復元されたパケットはパケット発生器２０に転送されパケットバッファ２５に保存される。パケット発生器２０のデパケット部２９はパケットを元のデータの状態に変換し、チャネル確認部２７ではチャネルを確認してその情報をデパケット部２９に提供する。デバケット部２９で復元されたデータは確認されたチャネルを介してＡＸＩマスターに提供される。
【００３９】
このようにＡＸＩを適用したＮＩ１０を備えたＮｏＣシステムでは、前述した構造のＮＩ１０を具現することにより、データを転送するときに次のような各実施形態の具現か可能になる。
図４Ａは、本発明の第１実施形態に係るＮｏＣシステムでのデータの処理過程を示すブロック図である。
【００４０】
同図に示すように、ＡＸＩマスター５から１つのバーストのデータを転送すると、データの性格に適合したチャネルを介してデータがＮＩ１０に提供される。ＮＩ１０では前述の過程を経てデータをパケットに変換し、この時、１つのバーストのデータが１つのパケットに変換される。こうして生成されたパケットがＮｏＣルータ４０に提供されると、ＮｏＣルータ４０では幾つかのＡＸＩマスター５から入力されたパケットを順にＡＸＩスレーブ側のＮＩ１０に転送する。
【００４１】
こうした転送過程での各信号は、図４Ｂに示すように、１つのバーストが転送される最中に有効（ＶＡＬＩＤ）ハンドシェーク信号と準備（ＲＥＡＤＹ）ハンドシェーク信号が両方ともハイとして出力されているので、１つのバーストを１つのパケットに変換することができる。パケットバーストの転送が完了すると、ＷＬＡＳＴ信号をハイにする。
図４の実施形態は、１つのバーストを１つのパケットに変換させた場合に関し、本発明のＮｏＣシステムにおいてもフィリップスの論文と同じく、有効（ＶＡＬＩＤ）ハンドシェーク信号と準備（ＲＥＡＤＹ）ハンドシェーク信号が１つのバーストのデータが転送される最中にハイである場合は、１つのバーストのデータを１つのパケットに変換して転送することができる。
【００４２】
図５Ａは、本発明の第２実施形態に係るＮｏＣシステムにおいてバーストを分割する場合を示すブロック図である。
ＡＸＩマスター５からデータを転送すると、ＮＩ１０のハンドシェークチェック部２１ではパケットバッファ２５の残存容量をチェックし、ＡＸＩマスター５でデータが転送できるか否かをチェックする。チェック結果、ＡＸＩマスター５とＮＩ１０が両方ともデータが転送できる場合、ハンドシェークチェック部２１では有効ハンドシェーク信号と準備ハンドシェーク信号をハイにしてデータを転送する。このようにデータを転送するうち、ＡＸＩマスター５からデータが転送できない状態になる場合、ハンドシェークチェック部２１では有効ハンドシェーク信号をローにする。そして、有効ハンドシェーク信号がローになると、パケット部２３では今までのデータをパケットに生成し、また有効ハンドシェーク信号がハイになると、データの転送を受けパケットを生成する。
【００４３】
これにより、図５Ｂに示すように、有効ハンドシェーク信号がハイからローに、またハイに変わる場合、図５Ｃに示すように、１つのバーストのデータが２つのパケットに生成される。もし有効ハンドシェーク信号が変更する回数が多くなるとパケット数も共に増加されることは勿論のことである。
図６は、本発明の第３実施形態に係るＮｏＣシステムにおいてバーストを分割する場合を示す信号図である。
【００４４】
ＡＸＩマスター５から転送するデータがＳＰＡＲＳＥデータである場合、通信規約によりＷＳＴＲＢＥ機能が行われ、図６のＷＳＴＲＢＥの信号において信号が反転される部分は任意のＷＲＩＴＥ  ＳＴＲＯＢＥＳから他のＷＲＩＴＥ  ＳＴＲＯＢＥＳに変わったことを示す。このようにＷＲＩＴＥ  ＳＴＲＯＢＥＳが変わるとき、データを分割してパケットを別途で生成することができる。
【００４５】
これにより、図５Ａに示すように、ＮＩ１０にて１つのバーストのデータが複数のパケットに分割されＮｏＣルータ４０に転送される。
図７は、本発明の第４実施形態に係るＮｏＣシステムにおいてバーストを分割する場合を示す信号図である。
同図に示すように、有効ハンドシェーク信号はハイを維持している状態で準備ハンドシェーク信号がハイからローに変わると、即ち、ＡＸＩマスター５ではデータの転送が行われている最中に、ＮＩ１０のパケットバッファ２５の残存容量がない場合、パケット部２３は今まで転送されたデータをパケットに生成する。それから、準備ハンドシェーク信号がハイに変わると、データを受信して他のパケットを生成する。
【００４６】
図８は、本発明のＮｏＣシステムにおいてデータを転送するときＡＸＩスレーブ側でデータを処理する過程を示すシステム構成図である。
図５〜図７の実施形態により１つのバーストのデータが複数のパケットに分割され転送されると、図８に示すように、ＮｏＣルータ４０ではＡＸＩスレーブ１０５側のＮＩ１１０にパケットを転送する。ＡＸＩスレーブ１０５側のＮＩ１１０では各パケットをデータに復元し、幾つかのパケットに分かれたデータは１つのバーストに生成してＡＸＩスレーブ１０５に転送する。
【００４７】
このように、本ＡＸＩプロトコルを適用したＮｏＣシステムにおいては、図４〜図７に示すような転送環境の変化に応じて１つのバーストのデータを複数のパケットに分割して転送することができる。これにより、従来のフィリップスの論文において１つのバーストのデータを１つのパケットに生成して転送するときとは異なって、Ｍｕｌｔｉｐｌｅ  ｏｕｔｓｔａｎｄｉｎｇ  ａｄｄｒｅｓｓ機能、データインターリーブ機能、データリオーダリング機能だけではなく、ＷＳＴＲＢ（Ｗｒｉｔｅ  ｓｔｒｏｂｅｓ）の支援が可能になる。また、１つのバーストを複数のパケットに分割することで、転送のための待ち時間が短くなり帯域活用能力が高くなる。
【図面の簡単な説明】
【００４８】
【図１】本発明に係るＮＩとルータとの間の関係を示すブロック図である。
【図２】本発明に係るＡＸＩプロトコルを適用したＮｏＣシステムのＮＩブロック図である。
【図３Ａ】各チャネルを介して転送されるパケットの構造を示す図面である。
【図３Ｂ】各チャネルを介して転送されるパケットの構造を示す図面である。
【図３Ｃ】各チャネルを介して転送されるパケットの構造を示す図面である。
【図３Ｄ】各チャネルを介して転送されるパケットの構造を示す図面である。
【図３Ｅ】各チャネルを介して転送されるパケットの構造を示す図面である。
【図４Ａ】本発明の第１実施形態に係るＮｏＣシステムにおいてデータの処理過程を示すシステム構成図である。
【図４Ｂ】図４Ａの処理過程において発生する信号図である。
【図５Ａ】本発明の第２実施形態に係るＮｏＣシステムにおいてバーストを分割する場合を示すシステム構成図である。
【図５Ｂ】図５Ａの実施形態に係る信号図である。
【図６】本発明の第３実施形態に係るＮｏＣシステムにおいてバーストを分割する場合を示す信号図である。
【図７】本発明の第４実施形態に係るＮｏＣシステムにおいてバーストを分割する場合を示す信号図である。
【図８】本発明のＮｏＣシステムにおいてデータを転送するときＡＸＩスレーブ側でデータを処理する過程を示すシステム構成図である。
【図１】
0004477613.tif 000002
【図２】
0004477613.tif 000003
【図３Ａ】
0004477613.tif 000004
【図３Ｂ】
0004477613.tif 000005
【図３Ｃ】
0004477613.tif 000006
【図３Ｄ】
0004477613.tif 000007
【図３Ｅ】
0004477613.tif 000008
【図４Ａ】
0004477613.tif 000009
【図４Ｂ】
0004477613.tif 000010
【図５Ａ】
0004477613.tif 000011
【図５Ｂ】
0004477613.tif 000012
【図６】
0004477613.tif 000013
【図７】
0004477613.tif 000014
【図８】
0004477613.tif 000015