(57)【要約】通信システムのための方法及び装置が記載される。本通信システムは、１つ又はそれ以上のイニシエータエージェントを含み、各エージェントは、その固有のインテレクチャルプロパティコアに結合される。本通信システムはまた、２つ又はそれ以上のターゲットエージェントを含み、各エージェントは、その固有のインテレクチャルプロパティコアに結合される。本通信システムはまた、エンドツーエンドの幅変換機構を使用する相互接続を含むことができる。変換機構は、イニシエータエージェントと第１のターゲットエージェントとの間でデータ幅を変換する。相互接続内のパスの２つ又はそれ以上の分岐が、イニシエータエージェントと２つ又はそれ以上のターゲットエージェントとの間に存在する。変換機構は、イニシエータエージェント及び２つ又はそれ以上のターゲットエージェントへのパスの２つ又はそれ以上の分岐のデータ幅情報を含むルックアップテーブルを使用して、ターゲットエージェント分岐の各々に対する幅変換信号の事前計算を同時に行う。
2007528560.tif 000002
【特許請求の範囲】
【請求項１】
第１のインテレクチャルプロパティ（ＩＰ）コアに結合されたイニシエータエージェントと、
各々が自身のＩＰコアに結合された２つ又はそれ以上のターゲットエージェントと、
前記イニシエータエージェントと第１のターゲットエージェントとの間でデータ幅を変換するエンドツーエンド幅変換機構を有する相互接続とを備え、前記相互接続内のパスの１つ又はそれ以上の分岐が、前記イニシエータエージェントと前記２つ又はそれ以上のターゲットエージェントとの間に存在し、前記変換機構が、前記イニシエータエージェントのデータ幅情報にアクセスし、前記１つ又はそれ以上のターゲットエージェントへのパスの前記１つ又はそれ以上の分岐が、前記ターゲットエージェント分岐の各々に対する幅変換信号の事前計算を同時に行うことを特徴とする装置。
【請求項２】
さらに、データのグループ特性識別し、かつ後続の変換段階で幅変換を実行できるようにデータの幅を変換する方法を識別することによって、前記イニシエータエージェントと前記第１のターゲットエージェントとの間のデータ幅の変換を指示するヘルパー信号を生成するロジックをイニシエータエージェント内に備えることを特徴とする請求項１に記載の装置。
【請求項３】
前記幅変換信号が、前記第１のターゲットエージェントに対するアドレス・デコードの生成と並行して生成されることを特徴とする請求項１に記載の装置。
【請求項４】
前記相互接続を介する、可能な各分岐に対する幅変換が並行して計算されることを特徴とする請求項１に記載の装置。
【請求項５】
相互接続コアを更に備え、該コア内の１つ又はそれ以上の幅変換ユニットが、前記ヘルパー信号を受け取り前記幅変換を実行することを特徴とする請求項２に記載の装置。
【請求項６】
前記装置が、システムオンチップであることを特徴とする請求項１に記載の装置。
【請求項７】
前記変換機構が、データルックアップテーブルからのデータ幅情報にアクセスすることを特徴とする請求項１に記載の装置。
【請求項８】
前記変換機構が、前記イニシエータエージェント中の内部ロジックからのデータ幅情報にアクセスすることを特徴とする請求項１に記載の装置。
【請求項９】
機械に請求項１の装置を生成させる命令を含むコンピュータ可読媒体。
【請求項１０】
幅とバースト変換ユニットのためのロジックを含む第１のエージェントの第１のインスタンスが、前記第１のエージェントと実際に通信できるイニシエータコアとターゲットコアの潜在的なペアだけに対応することを特徴とする請求項１に記載の装置。
【請求項１１】
前記変換機構によってアクセスされた前記データ幅情報が、前記イニシエータエージェントと実際に通信できる前記イニシエータコアとターゲットコアの潜在的なペアだけに対応することを特徴とする請求項１に記載の装置。
【請求項１２】
第１のバースト能力をサポートするイニシエータコアと、
第２のバースト能力をサポートするターゲットコアであって、前記第２のバースト能力のサポートバースト機能が前記第１のバースト能力のサポートバースト機能と異なる、前記ターゲットコアと、
前記イニシエータコアと前記ターゲットコアに結合された相互接続と、
前記ターゲットコアに結合されたターゲットエージェントと、
前記イニシエータコアに結合されたイニシエータエージェントと、
を備え、バースト変換信号を生成することによって、バースト能力の適合を必要とする前記イニシエータコアとターゲットコアと無関係に、前記イニシエータコアとターゲットコアを通信可能とするエンドツーエンドバースト変換機構を前記イニシエータエージェントが含むことを特徴とする装置。
【請求項１３】
前記第１のバースト能力とは異なるバースト能力を有する１つ又はそれ以上の潜在的なターゲットコアを更に備え、前記潜在的なターゲットコアが前記相互接続に結合され、バースト変換ユニットが１つ又はそれ以上の潜在的なターゲットコアの各々に対してバースト変換信号を生成することを特徴とする請求項１２に記載の装置。
【請求項１４】
前記バースト変換ユニットが、前記イニシエータエージェントと実際に通信可能なターゲットコアに対してバースト変換信号を生成することを特徴とする請求項１３に記載の装置。
【請求項１５】
前記イニシエータエージェントが、そのサポートされたバースト機能と前記ターゲットエージェントのサポートされたバースト機能とを比較して、前記イニシエータエージェントから前記相互接続を介して前記ターゲットエージェントにバースト要求を送信する方法を決定することを特徴とする請求項１２に記載の装置。
【請求項１６】
前記バースト変換信号が、アドレス・デコードの生成と並行して生成され、該アドレス・デコードが、前記ターゲットコアのアイデンティティーを決めることを特徴とする請求項１２に記載の装置。
【請求項１７】
イニシエータエージェントと、複数のターゲットエージェント中の第１のターゲットエージェントとの間でデータ幅を変換する方法であって、
前記イニシエータエージェントと前記複数のターゲットエージェントへのパスの複数の分岐に対するデータ幅情報を照会する段階と、
前記データ幅情報を使用して、前記複数のターゲットエージェント分岐の各々に対して１つ又はそれ以上の幅変換信号を同時に事前計算する段階と、
を含む方法。
【請求項１８】
データのグループ特性と後続の変換段階で幅変換を実行できるようにするための前記データの幅を変える方法の識別によって、前記イニシエータエージェントと前記第１のターゲットエージェントとの間のデータ幅変換を指示するために、１つ又はそれ以上の幅変換信号から正確な幅変換信号を求める段階を更に含む請求項１７に記載の方法。
【請求項１９】
前記データ幅情報が、前記イニシエータエージェントと実際に通信できる潜在的なターゲットコアだけに対応することを特徴とする請求項１７に記載の方法。
【請求項２０】
前記幅変換信号が、前記第１のターゲットエージェントに対するアドレス・デコードの生成と並行して生成されることを特徴とする請求項１７に記載の方法。
【請求項２１】
前記パスの複数の分岐に対する前記幅変換が並行して生成されることを特徴とする請求項１７に記載の方法。
【請求項２２】
１つ又はそれ以上のヘルパー信号を受信する段階と、
前記１つ又はそれ以上のヘルパー信号を使用して前記幅変換を実行する段階と、を更に含む請求項１７に記載の方法。
【請求項２３】
機械に請求項１７の方法を行わせる命令を含むコンピュータ可読媒体。
【請求項２４】
前記イニシエータエージェントから前記データ幅情報を照会する段階が、データルックアップテーブルからのデータ幅情報にアクセスする段階を更に含む請求項１７に記載の方法。
【請求項２５】
前記イニシエータエージェントから前記データ幅情報を照会する段階が、前記イニシエータエージェント中の内部ロジックからのデータ幅情報にアクセスする段階を更に含む請求項１７に記載の方法。
【請求項２６】
イニシエータエージェントと、複数のターゲットエージェント中の第１のターゲットエージェントとの間でデータバーストを変換する方法であって、
前記イニシエータエージェントと前記複数のターゲットエージェントのバースト特性を照会する段階と、
前記バースト特性を使用して、前記イニシエータエージェントと前記複数のターゲットエージェントの各々との間のバースト信号を同時に事前計算する段階と、を含む方法。
【請求項２７】
前記バースト信号が、前記第１のターゲットエージェントに対するアドレス・デコードの生成と並行して生成されることを特徴とする請求項２６に記載の方法。
【請求項２８】
前記バースト信号を事前計算するいくつかの段階が並行して行われることを特徴とする請求項２６に記載の方法。
【請求項２９】
前記バースト特性を照会する段階が、データルックアップテーブルからのバースト特性にアクセスする段階を更に含む請求項２６に記載の方法。
【請求項３０】
前記バースト特性を照会する段階が、前記イニシエータエージェント中の内部ロジックからのバースト特性にアクセスする段階を更に含む請求項２６に記載の方法。
【請求項３１】
前記バースト特性が、前記イニシエータエージェントと実際に通信できる複数のターゲットコアだけに対応することを特徴とする請求項２６に記載の方法。
【請求項３２】
機械に請求項２６の方法を行わせる命令を含むコンピュータ可読媒体。
【請求項３３】
イニシエータエージェントと、複数のターゲットエージェント中の第１のターゲットエージェントとの間でデータ幅を変換する装置であって、
前記イニシエータエージェントと前記複数のターゲットエージェントへのパスの複数の分岐のデータ幅情報を含むルックアップテーブルに照会する手段と、
前記データ幅情報を使用して、前記複数のターゲットエージェント分岐の各々に対する１つ又はそれ以上の幅変換信号を同時に事前計算する手段と、
を備える装置。
【請求項３４】
データのグループ特性の識別と、後続の変換段階が幅変換を実行できるようにするために前記データの幅を変換することができる方法の識別によって前記イニシエータエージェントと前記第１のターゲットエージェントとの間のデータ幅変換を指示するため、１つ又はそれ以上の幅変換信号から正確な幅変換信号を求める手段を更に含む請求項３３に記載の装置。
【請求項３５】
前記幅変換信号が、前記第１のターゲットエージェントに対するアドレス・デコードの生成と並行して生成され、前記パスの複数の分岐に対する幅変換が並行して生成されることを特徴とする請求項３３に記載の装置。
【請求項３６】
前記１つ又はそれ以上のヘルパー信号を受け取る手段と、
前記１つ又はそれ以上のヘルパー信号を使用して幅変換を実行する手段と、
を更に備える請求項３３に記載の装置。
【請求項３７】
イニシエータエージェントと、複数のターゲットエージェント中の第１のターゲットエージェントとの間でデータバーストを変換する装置であって、
前記イニシエータエージェントと前記複数のターゲットエージェントのバースト特性を含むルックアップテーブルに照会する手段と、
前記バースト特性を使用して、前記イニシエータエージェントと前記複数のターゲットエージェントの各々との間のバースト信号を同時に事前計算する手段と、
を備える装置。
【請求項３８】
前記バースト信号が、前記第１のターゲットエージェントに対するアドレス・デコードの生成と並行して生成されることを特徴とする請求項３７に記載の装置。
【請求項３９】
前記バースト信号の事前計算が並行して生成されることを特徴とする請求項３７に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本出願は２００４年３月１１日に出願された米国特許出願シリアル番号６０／５５２，５７６の利益を主張し、引用により本明細書に組み込まれ、更に、２００５年３月１０日に出願された、名称が「Ｖａｒｉｏｕｓ  Ｍｅｔｈｏｄｓ  Ａｎｄ  Ａｐｐｒａｔｕｓｅｓ  Ｆｏｒ  Ｗｉｄｔｈ  Ａｎｄ  Ｂｕｒｓｔ  Ｃｏｎｖｅｒｓｉｏｎ」の米国特許出願シリアル番号＿＿＿＿＿の利益を主張する。
本明細書で説明される実施形態の観点は、データを送信するイニシエータコアが、データを受信するターゲットコアとは異なるデータワード幅及び／又は異なるバースト特性を有し、幅及び／又はバーストの変換が必要とされるようなシステム、特にシステムオンチップに適用される。
【背景技術】
【０００２】
情報を通信する必要がある、コンピュータネットワーク、インターネットワーキング、通信機関、集積回路などでは、多くの場合、情報伝達を可能にするために確立された相互接続が存在する。しかしながら、共用相互接続に接続する機能ブロックの全てが、通信機能をサポートする同一のデータ幅とバーストタイプを有するとは限らない。異なる通信機能を備える機能ブロック間での通信を可能にするためには、幾らかの変換が生じるはずである。
【発明の開示】
【課題を解決するための手段】
【０００３】
通信システムのための方法及び装置が記載される。本通信システムは、１つ又はそれ以上のイニシエータエージェントを含み、各エージェントは、その固有のインテレクチャルプロパティ（ＩＰ）コアに結合される。本通信システムはまた、１つ又はそれ以上のターゲットエージェントを含み、各エージェントは、その固有のインテレクチャルプロパティコアに結合される。本通信システムはまた、エンドツーエンドの幅変換機構を含む。変換機構は、イニシエータエージェントと第１のターゲットエージェントとの間でデータ幅を変換する。相互接続内のパスの２つ又はそれ以上の分岐が、イニシエータエージェントと２つ又はそれ以上のターゲットエージェントとの間に存在する。変換機構は、イニシエータエージェントと２つ又はそれ以上のターゲットエージェントへのパスの２つ又はそれ以上の分岐のデータ幅情報を含むルックアップテーブル又は内部ロジックを使用して、ターゲットエージェント分岐の各々に対する幅変換信号の事前計算を同時に行う。
【発明を実施するための最良の形態】
【０００４】
本発明は、同じ参照符号が同じ要素を示す添付図面の図において限定ではなく例として説明される。
以下の説明では、本発明を完全に理解するために、例えば特定のプロトコルコマンド、名前付き構成要素、接続、バースト機能のタイプ、その他のような多数の特定の詳細が説明される。しかしながら、本発明は、これらの特定の詳細無しで実施可能であることは当業者には明らかであろう。場合によっては、周知の構成要素又は方法は、本発明を不要にあいまいにするのを避けるために、詳細には説明されずブロック図で説明される。従って特定の詳細な説明は、単に説明にすぎない。特定の詳細は、様々に異なるものとすることができるが、それでも尚本発明の精神及び範囲内である。
【０００５】
幅とバーストの変換を可能にする例示的なプロセス及び装置を説明する。オンチップ相互接続は、独立したイニシエータとターゲットのデータパス幅の間でエンドツーエンドの幅変換を管理する機能を含む。エージェント内のロジックは、可能性があるターゲットの複数のグループ全体のターゲット依存幅サポート情報とバーストタイプサポート情報を同時に計算し、次いで、ターゲット選択のためのアドレス・デコードの結果に基づいて正確なターゲット依存情報を選択する。従って、イニシエータエージェント（以後「ＩＡ」）ユニットは、コンパイルされたその知識とアドレス指定されたターゲットのデータ幅とを用いて、後段（ＩＡ、ターゲットエージェント（以後「ＴＡ」）の幅変換ユニット、又は同様の構成要素において）が、要求と応答の両方に対してパッキング、アンパッキング、パディング、ストライピング、その他によって実際に幅変換できるようにする情報を事前計算する。幅変換情報の事前計算によって、相互接続のコア内での各変換段階で見られる待ち時間の遅延が低減する。更に、パス内のロジック遅延をより低減させるために、この事前計算をターゲット選択（アドレス・デコード）と並行して実行できるようにする最適化をＩＡ内で実行する。
【０００６】
各エージェントは１つ又はそれ以上のバースト変換ユニットを含むこともある。オンチップ相互接続に接続されたインテレクチャルプロパティコアは、異なる特徴やタイプのバースト要求のサポートに関して互換性のない機能を有することもある。例えば、サポートされたバーストアドレスシーケンス、バーストトランザクション長、バーストアライメント制限は適合しない可能性がある。オンチップ相互接続は、その動作の適合を必要とするいずれかのコアとは無関係に、このようなコアが通信できるようにする機構を導入する。幅変換（上述された）と同様に、異なるバースト機能に互換性を持たせる算術演算のほとんどは、ＩＡ内で実行される。ＩＡは、イニシエータのバースト要求をターゲットのバーストサポート機能と比較して、適切な変換動作を決定する。また、潜在的なターゲットエージェントの全てについてのバースト要求変換計算は、実際のターゲット選択（アドレス・デコード）と並行して進み、パス内のロジック遅延をより低減させることができる。
【０００７】
図１は、複雑な電子システム１００のブロック図である。共用通信バス１１２は、サブシステム１０２、１０４、１０６、１０８、１１０を接続する。サブシステムは通常、共用バスに結合させるためのインターフェースモジュールを含む機能ブロックである。サブシステム自体は、１つ又はそれ以上の機能ブロックを含み、組み込まれた又は物理的に別個のインターフェースモジュールを含むことも、含まないこともある。１つの実施形態では、通信バス１１２によって接続されたサブシステムは個別の集積回路チップである。別の実施形態では、通信バス１１２によって接続されるサブシステムは、システムオンチップ上のインテレクチャルプロパティコアである。
【０００８】
例えばサブシステム１０４は、特定の機能を実行するように設計された、周知の集積回路である特定用途向け集積回路（以後「ＡＳＩＣ」）である。サブシステム１０６はダイナミックランダムアクセスメモリ（以後「ＤＲＡＭ」）である。サブシステム１０８は消去可能プログラマブル読み出し専用メモリ（以後「ＥＰＲＯＭ」）である。サブシステム１１０はフィールド・プログラマブル・ゲート・アレイ（以後「ＦＰＧＡ」）である。サブシステム１０２は、システム１００内で動作するように特別に設計されたフルカスタム集積回路である。別の実施形態では、図示のものと同じタイプ又は図示していない別のタイプの追加サブシステムを含むことができる。別の実施形態は、システム１００に示すサブシステムよりも少数のサブシステムを含むことができる。集積回路１０２は、サブシステム１０２Ａ、１０２Ｂ、１０２Ｃ、１０２Ｄ、１０２Ｅを含む。ＡＳＩＣ１０４は、機能ブロック１０１Ａ、１０４Ｂ、１０４Ｃを含む。ＦＰＧＡ１１０は機能ブロック１１０Ａ、１１０Ｂを含む。機能ブロックは、特定の機能を実行する論理回路、集積回路上のメモリ構成要素、その他の機能ブロックとすることができる。
【０００９】
システム１００は、１つ又はそれ以上の集積回路、チップ、又は単一機能チップ上の機能ＩＰコアからなるシステムの１つの実施例である。機能ブロックは、例えば機能ブロック１０２Ｅのような集積回路上の論理ブロックとことができ、或いは機能ブロックはまた、単一の論理機能を実装するフルカスタム集積回路１０２のような集積回路とすることができる。
【００１０】
共用通信バス１１２のような相互接続は、システム１００のサブシステム間に共用通信バスを提供する。共用通信バス１１４は、単一集積回路上のサブシステム又は機能ブロック間に共用通信バスを提供する。図示の機能ブロックの一部は、インターフェースモジュールに接続され、該インターフェースモジュールを介して機能ブロックが共用通信バス１１２又は共用通信バス１１４と信号を送受信する。インターフェース相互接続１１５は、インターフェースモジュールを機能ブロックに接続するローカルなポイント・ツー・ポイントの相互接続である。
【００１１】
インターフェースモジュール１２０〜１２８のようなエージェントは、図示のように、種々の機能ブロックに接続される。この実施形態では、インターフェースモジュール１２０、１２２、１２３、１２４は、これらが接続される機能ブロック（夫々、Ａ、Ｂ、Ｃ、Ｅ、Ｆ）から物理的に分離されている。インターフェースモジュール１２１、１２５〜１２８は、本質的にこれらのそれぞれの機能ブロック又はサブシステムの一部である。１０２Ｄのような幾つかの機能ブロックは、専用のインターフェースモジュールを必要としない。サブシステム、機能ブロック、インターフェースモジュールの配置は柔軟性があり、システム設計者によって決定される。
【００１２】
１つの実施形態では、機能ブロックの４つの基本的なタイプがある。４つの基本的なタイプは、イニシエータ、ターゲット、ブリッジ、スヌーピングブロックである。代表的なターゲットは、メモリデバイスであり、代表的なイニシエータは、中央演算処理装置（ＣＰＵ）である。しかしながら、あらゆるブロックがターゲット又はイニシエータであってもよい。代表的なブリッジは、共用通信バス１１２、１１４を接続する。機能ブロックは全て、共用通信バス１１２又は共用通信バス１１４と１つの実施形態のプロトコルとを介して互いに通信する。イニシエータとターゲットの機能ブロックは、インターフェースモジュールを介して共用通信バスと通信できる。イニシエータ機能ブロックは、イニシエータのインターフェースモジュールを介して共用通信バスと通信することができ、ターゲット機能ブロックは、ターゲットのインターフェースモジュールを介して共用通信バスと通信することができる。
【００１３】
イニシエータのインターフェースモジュールは、関連するもの以外の別の機能ブロックへかつ機能ブロックから読み取り要求と書き込み要求を発行し、受け取る。１つの実施形態では、イニシエータのインターフェースモジュールは通常、ＣＰＵ、ディジタル信号処理（以後「ＤＳＰ」）コア又はダイレクトメモリアクセス（以後「ＤＭＡ」）エンジンに接続される。
【００１４】
共用通信バス１１２は、イニシエータのインターフェースモジュールとターゲットのインターフェースモジュールとの間でデータ幅を変換するエンドツーエンドの幅変換機構を有する。共用バス内の経路の２つ又はそれ以上の可能な分岐は、イニシエータエージェントと２つ又はそれ以上の潜在的ターゲットのインターフェースモジュールとの間に存在する。変換機構は、イニシエータのインターフェースモジュール及び２つ又はそれ以上のターゲットのインターフェースモジュールへの経路の２つ又はそれ以上の潜在的な分岐のデータ幅情報を含むルックアップテーブルを使用して、ターゲットエージェント分岐の各々について幅変換信号を同時に事前計算する。
【００１５】
同様に、イニシエータのインターフェースモジュールは、これらのバースト機能を適合させることを必要としているイニシエータとターゲットの機能ブロックとは無関係に、バースト変換信号を生成することによって、イニシエータとターゲットの機能ブロックが通信できるようにするエンドツーエンドのバースト変換機構を含む。
【００１６】
図１に示す相互接続は、バスベースの相互接続を示す点に留意されたい。しかしながら、相互接続は、ポイント・ツー・ポイントネットワーク、スイッチドネットワーク、又はルーテッド・ネットワークのような多くの方式で実装可能である。
【００１７】
図２は、インテレクチャルプロパティコア、これらの対応するエージェント、相互接続、そのロジックコアの例示的グループを示す。システム２００では、２つのイニシエータコア（以後「ＩＣ」）、すなわちイニシエータコア２０５とイニシエータコア２１０が存在する。ＩＣ２０５は、インターフェース通信ライン２１５を介してイニシエータエージェント（以後「ＩＡ」）２２５に結合される。ＩＣ２１０は、インターフェース通信ライン２２０を介してＩＡ２３０に結合される。更に、３つのターゲットコア（以後「ＴＣ」）、すなわちターゲットコア２７０、ターゲットコア２７５、ターゲットコア２８０が存在する。ＴＣ２７０は、インターフェース通信ライン２５５を介してターゲットエージェント（以後「ＴＡ」）２４０に結合される。ＴＣ２７５は、インターフェース通信ライン２６０を介してＴＡ２４５に結合される。ＴＣ２８０は、インターフェース通信ライン２６５を介してＴＡ２５０に結合される。
【００１８】
相互接続２０１は、全てのイニシエータエージェントとターゲットエージェント（例えば、ＩＡ２２５、ＩＡ２３０、ＴＡ２４０、ＴＡ２４５、ＴＡ２５０）だけでなくロジックコア２３５をも含む。ＩＡ２２５は、インターフェース通信ライン２３２を介してロジックコア２３５に結合される。ＩＡ２３０は、インターフェース通信ライン２３４を介してロジックコア２３５に結合される。ＴＡ２４０は、インターフェース通信ライン２３６を介してロジックコア２３５に結合される。ＴＡ２４５は、インターフェース通信ライン２３７を介してロジックコア２３５に結合される。ＴＡ２５０は、インターフェース通信ライン２３８を介してロジックコア２３５に結合される。
【００１９】
通信システムにおいては、１）イニシエータエージェントが読込要求を送信し、ターゲットエージェントがデータ応答を送信して返事する場合と、２）イニシエータエージェントが書込み要求をデータと共にターゲットエージェントに送信し、ターゲットエージェントが応答を送信する場合の両方の可能性がる。従って、データ幅変換に対して２つの可能性が存在し、１つは書込み（この場合データはイニシエータからターゲットへ移動する）に関するものであり、１つは読込（この場合データはターゲットからイニシエータへ移動する）に関するものである。読込要求の場合では、イニシエータエージェントは、イニシエータＩＰコアの幅サポートに基づきデータ要求を送信し、ターゲットエージェントはデータ応答を送信する。その際、そのデータは続いてイニシエータエージェントへの相互接続の途中で数回の幅変換を受けることが必要となることがある。この場合、イニシエータエージェント内のロジックは、１つ又はそれ以上のヘルパー信号を生成する。ヘルパー信号はまさに、ターゲットエージェントへのデータ要求を伴い、データ応答と共に使用される。データ書込みの場合では、イニシエータエージェントは、要求とデータをターゲットエージェントに送信し、該データは続いてターゲットエージェントへの相互接続の途中で数回の幅変換を受けることが必要となることがある。ヘルパー信号は、イニシエータエージェントからターゲットエージェントまでの途中でデータ信号の幅変換を支援する。
【００２０】
イニシエータが書込み要求とデータを送信する事例を一例として使用して以下に説明する。
【００２１】
１つの実施形態では、ＩＣ２０５はＴＣ２８０にデータを送信する必要がある。ＩＣ２０５は、インターフェース通信ライン２１５を介してデータをＩＡ２２５に送信する。次いで、相互接続２０１の内側にあるＩＡ２２５は、インターフェース通信ライン２３２を介してデータをコアロジック２３５に送信する。行うことが必要となる任意の処理がコアロジック２３５内で行われる。次いで、データは、インターフェース通信ライン２３８を介してＴＡ２５０に送信される。最後にデータは、インターフェース通信ライン２６５を介してＴＣ２８０に到達する。
【００２２】
図３は、図２、特にエージェントとその対応するコアとの間のインターフェース通信ラインの拡大図を示す。ＴＡ２４０は、インターフェース通信ライン２５５を介してＴＣ２７０に結合され、ＩＡ２４５は、インターフェース通信ライン２５０を介してＩＣ２７５に結合される。本実施形態では、インターフェース通信ライン２５５の幅は１６ビット幅である。これは、通信ライン２５５内の複数のワイヤで示されている。一方、インターフェース通信ライン２６０の幅は３２ビット幅である。従って、インターフェース通信ライン２６０内にはより多くの個々のワイヤがある。データ幅、バーストサポート、その他のような特性によっては、通信ライン内の実際のワイヤ数が大幅に変化する場合がある。一般的な通信ライン幅は、８ビット、１６ビット、３２ビット、６４ビット、１２８ビット及び２５６ビットを含む。
【００２３】
図４は、データがＩＣ２０５からＴＣ２８０に送信されるプロセスを示す。この実施形態では、各インテレクチャルプロパティコアのデータ幅とバースト特性が異なるとする。従って、幅とバースト変換が必要となる。ＩＣ２０５とＴＣ２８０との間の相互接続は、ＩＡ２２５、ＴＡ２５０、コアロジック２３５を含む。ＩＡ２２５は、インターフェース通信ライン２１５を介してＩＣ２０５とデータを送受信することができる。ＩＡ２２５は、幅決定ユニット（以後「ＷＤＵ」）４１５とバースト変換ユニット（以後「ＢＣＵ」）４１０を含む。ＩＡ２２５は、インターフェース通信ライン２３２を介してコアロジック２３５に結合される。この実施形態では、インターフェース通信ライン２３２のデータ幅は１６ビットの幅である。コアロジック２３５は、第１のＷＣＵ４５０と第２のＷＣＵ４５１のような１つ又はそれ以上の幅変換ユニットを含む。
【００２４】
ＴＡ２５０は、インターフェース通信ライン２６５を介してＴＣ２８０とデータを送受信する。ＴＡ２５０はバースト変換ユニット４４０を含む。ＴＡ２５０は、インターフェース通信ライン２３８を介してコアロジック２３５に結合される。この実施形態では、インターフェース通信ライン２３８のデータ幅は３２ビット幅であり、これはインターフェース通信ライン２３２の幅の２倍となっている。
【００２５】
この実施形態では、ＩＣ２０５はデータをＴＣ２８０へ送信することを意図している。２つのコアのデータ幅は異なる。従って、データ幅変換が必要である。データ４２０が、ＩＣ２０５からインターフェース通信ライン２１５を介してＩＡ２２５に送信される。上述のように、データは１６ビットである。データ４２０がＩＡ２２５によって受信されると、ＷＤＵ４１５はデータルックアップテーブル４１８を照会し、ＩＡ２２５に物理的に結合された全ての利用可能なターゲットコアのデータ幅だけでなく、ＩＡ２２５と潜在的ターゲットコアとの間の全ての利用可能なパスのデータ幅を求める。データルックアップテーブル４１８によって与えられる情報を用いると、ＷＤＵ４１５は、各々の利用可能なターゲットコアのデータ幅を求めることができる（例えば、ＩＣ２０５からデータを物理的に受け取ることができるあらゆるターゲットコア）。別の実施形態では、ＷＤＵ４１５は、ＩＡ２２５と利用可能なターゲットコアとの間の全ての利用可能なパスのデータ幅を含む内部ロジックを所有し、従ってデータルックアップテーブル４１８の必要性を排除することができる。ＷＤＵ４１５は、どのターゲットコアが最終的なデータ受信者であるかに関わらず、全ての利用可能なターゲットコアと、これらの物理的パスに対して幅変換信号を生成する。全ての幅変換信号の生成は並行して行われる（図５で更に示す）。その結果として、全ての幅変換信号の生成はほぼ同時に完了する。
【００２６】
１つの実施形態では、エージェントの各インスタンスに対するデータルックアップテーブルは同一のデータを含む。本データは、完全なシステムにおける全ての潜在的なターゲットエージェントと、これらへの全ての物理的パスのデータ幅能力を含む。従って、あらゆるエージェントは、同一のデータルックアップテーブルを有することになる。別の実施形態では、エージェントのあらゆるインスタンスは、完全なシステムにおける全ての潜在的なターゲットエージェントと、これらへの全ての物理的パスのデータ幅能力を含む内部ロジックを所有するであろう。よって、各イニシエータエージェントのロジックは同一のデータを収容することになる。別の実施形態では、エージェントの各インスタンスは、当該イニシエータエージェントと通信可能なターゲットエージェントに関するデータだけを含むようにカスタマイズされたデータルックアップテーブルを含む。このような場合には、各データルックアップテーブルは異なるデータを含んでもよい。別の実施形態では、エージェントの各インスタンスは、当該イニシエータエージェントと通信可能なターゲットエージェントに関するデータだけを含むようにカスタマイズされた内部ロジックを所有することができる。従って、各イニシエータエージェント内のロジックは異なるデータを含むことがある。
【００２７】
更に、幅変換信号の生成は、最終的なターゲット（図５で更に説明する）のアドレス・デコーディングと並行して起こる。よって全ての幅変換信号の生成は、データ４２０を含む信号のターゲットアドレスデコーディングと並行して計算される。アドレス・デコードは、どの実際のターゲットコアがデータを必要としているかについてＩＡ２２５に通知する。アドレス・デコードと幅変換信号の並行処理は、そうでない場合にはＩＡ２２５がアドレス・デコードの完了を待機しているはずの間に、幅変更信号を事前計算するので従来技術よりも優れた利点を提供する。従来技術のシステムでは、アドレス・デコードと幅変換は、ひとつずつ完了する（例えば逐次的に）。このような手法は、図４に示すシステムよりも遅いものとなる。アドレス・デコードが完了すると、ＩＡ２２５は、データ４２０がＴＣ２８０に送信されるべきであることを認識する。ＴＡ２８０に対する幅変換の計算は既に完了しているので、従来技術の直列ベースの手法よりも時間が節約される。
【００２８】
また、イニシエータエージェントは幅決定ユニットの支援と共に、データのグループの特性やデータをどのように幅変換することができるかについて識別することでイニシエータエージェントとターゲットエージェントとの間のデータ幅変換を指示するヘルパー信号を生成して、後続の変換段階が幅変換を実行できるようにするロジックを含む。この実施例では、ＷＤＵ４１５は、ヘルパー信号４３０をＷＣＵ４５０に送信する。ヘルパー信号４３０は、１６ビットから３２ビットへのデータ４２０の実際の幅変換においてデータ４２０をどのように変換する必要があるかをＷＣＵ４５０に命令することによりＷＣＵ４５０を支援する。ＷＣＵ４５０はデータ４２０をＩＡ２２５から受け取る。従って、ＷＣＵ４５０はここでは、データ４２０とヘルパー信号４３０を所有し、幅変換を完了することができる。コアロジック２３５は、ヘルパー信号４３０の支援によりデータ４２０の第２の幅変換を実行する第２のＷＣＵ４５１を含む。２つの幅変換の例を説明したが、コアロジック２３５内で行う幅変換の数は、そのように制限されるべきではない。データ４２０がＴＣ２８０に向って通過する前に、コアロジック２３５で多数の幅変換を行うことが可能である。（注、図７はヘルパー信号のタイプと各タイプの利用のテーブルを示す）。この手法の下ではコアロジック２３５内では処理はほとんど行われない。処理のほとんどは、相互接続外側周辺（例えば、イニシエータエージェントとターゲットエージェント）で実行される。これは、他のタスクに対するコアロジック２３５の制限を開放し、コアロジック２３５が小さく高速であるのを可能にする。
【００２９】
コアロジック２３５は、少ない時間量を費やして幅変換ヘルパー信号４３０の支援により、１６ビットから３２ビットへのデータ４２０の実際の幅変換を実行する。変換されたデータ４３５は、３２ビットインターフェース通信ライン２３８を介してＴＡ２５０に３２ビット形式で送信される。また、コアロジック２３５はヘルパー信号４３０をＴＡ２５０に中継する。これは、ＴＡ２５０がデータをＩＡ２２５に返す場合に有用になる。ＴＡ２５０は、ヘルパー信号が既に利用可能であるので、該ヘルパー信号を生成する必要がなくなる。最後にＴＡ２５０は、インターフェース通信ライン２６５を介してデータをＴＣ２６５に送信する。
【００３０】
別の実施形態では、ＩＣ２０５はバーストデータをＴＣ２８０に送信する必要がある。しかしながら、ＩＣ２０５は、ＴＣ２８０とは異なるバースト機能を有する。相互接続に結合された１つ又はそれ以上の潜在的なターゲットコアが、バースト変換ユニットが潜在的なターゲットコアの各々ごとにバースト変換信号を生成するように、イニシエータコアのバースト機能とは異なるバースト機能を有する。このようなケースでは、イニシエータエージェントは、そのサポートされたバースト機能をターゲットエージェントのサポートされたバースト機能と比較し、相互接続を介したイニシエータエージェントからターゲットエージェントへのバースト要求の送信方法を決定する。図８は、幾つかの異なるタイプのバースト特性及び各々に対する選択肢／選択を示す。バーストタイプの更なる特性は、２００３年１１月にｔｈｅ  ＯＣＰ／ＩＰ  Ｏｒｇａｎｉｚａｔｉｏｎにより刊行されたＯｐｅｎ  Ｃｏｒｅ  Ｐｒｏｔｏｃｏｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｒｅｌｅａｓｅ  ２．０で見ることができ、これは引用により本明細書に組み込まれる。この例では、ＩＣ２０５とＴＣ２８０は、異なるバースト長の精度と要求タイプを有する。従って、バーストデータは、ＴＣ２８０がこれをＩＣ２０５から受信できるように変換される必要がある。（注、図９では、異なるタイプのバースト変換及びこれらの実行方法を引き続き説明している）。
【００３１】
最初に、バーストデータは、ＩＣ２０５からインターフェース通信ライン２１５を介してＩＡ２２５に受信される。ＢＣＵ４１０がバーストデータをターゲットコアと適合性のある特性への変換を担う。ＢＣＵ４１０は、バーストデータを物理的に受け取ることができる全ての可能なターゲットコアに対してバースト変換信号を生成する。データルックアップテーブルが各ターゲットコアのバースト特性を提供する。
【００３２】
１つの実施形態では、データルックアップテーブルは、ＩＡ２２５がターゲットエージェントと通信するか否かに関係なく、全システム内の全てのターゲットエージェントのバーストデータを含む。本実施形態は、全てのエージェントに対して同一である汎用のバーストデータルックアップテーブルを用意する。この実施形態では、バースト変換信号の生成は、このようなバースト特性を備えるエージェントがＩＡ２２５と通信するか否かに関係なく、システム内のあらゆる可能なバーストタイプに対して生成される変換信号を有する。別の実施形態では、あらゆるエージェントは、完全なシステムにおける全ての潜在的なターゲットエージェントのバースト機能を含む内部ロジックを所有するであろう。従って、各イニシエータエージェントのロジックは同じバーストデータを含む。別の実施形態では、バーストデータルックアップテーブルは、ＩＡ２２５と通信するターゲットエージェントに対するバーストデータだけを含むようにカスタマイズされる。このような１つの実施形態は、各データルックアップテーブル内で異なる情報を可能になる。本実施形態の下では、バースト変換信号の生成は、ＩＡ２２５と通信可能なターゲットエージェントのバースト特性に対してのみ生成される変換信号が生じる結果となる。別の実施形態では、各エージェントは、当該イニシエータエージェントと通信可能なターゲットエージェントのバースト機能だけを含むようにカスタマイズされた内部ロジックを所有することができる。従って、各イニシエータエージェント内のロジックは、異なるデータを含むことができる。
【００３３】
変換信号の生成は並行して行われ、信号変換がほぼ同時に完了することができるようにする。更にアドレス・デコードも処理する必要がある。アドレス・デコードは、ＩＡ２２５にどのターゲットコアがバーストデータを必要とするかを通知する。幅変換と同様に、アドレス・デコード処理は、バースト変換信号の生成と並行して行われる。これにより、最初にアドレス・デコードを処理し、次いでバースト変換信号の生成を後で行う従来技術の利点が得られる。アドレス・デコードが完了すると、ＩＡ２２５は、バーストデータがＴＣ２８０に送信されるべきであることを認識する。ＴＡ２８０に対するバースト変換の計算は既に完了しているので、従来技術の逐次手法よりも時間が節約される。
【００３４】
この時点で、ＢＣＵ４１０は、変換されたバーストデータ４２５をインターフェース通信ライン２３２を介してコアロジック２３５に送信する。バースト変換の計算は既に完了しているので、コアロジック２３５は、どのような処理も実行する必要はない。全ての処理は、相互接続２０１の周辺外に対して用意された。コアロジック２３５は、どのようなバーストデータ４２５をも処理する必要がないので、データは、直接コアロジック２３５を介して（破線で示す）、及びインターフェース通信ライン２３８を介してＴＡ２５０に渡される。最後にバーストデータ４２５は、インターフェース通信ライン２６５を介してＴＣ２８０に渡す前に、ＢＣＵ４４０内で起こる何らかの最後の変換を受ける。
【００３５】
図５は更に、幅変換がアドレス・デコーディングに並行して行われるプロセスを示している。ＩＡ２２５は、ＷＤＵ４１５とアドレス・デコーダ５２５を含む。この実施形態では、ＩＡ２２５からデータを物理的に受け取ることができる３つのターゲットエージェントがある。これらは、ＴＡ２４０、ＴＡ２４５、ＴＡ２５０を含む。この例では、データは、ＩＣ２０５（図示せず）からインターフェース通信ライン２１５を介してＩＡ２２５に渡される。このデータは、アドレス・デコード情報を含む。この時点で、アドレス・デコーダ５２５は、このデータを待ち受けるターゲットコアのアドレスのデコードを開始する。アドレス・デコーディングを行っている間に、ＷＤＵ４１５は、データルックアップテーブル４１８から情報を受け取る。このテーブルは、ＩＡ２２５からデータを物理的に受け取ることができる全てのターゲットエージェントのリストとこれらのデータ幅をＷＤＵ４１５に与える。ＷＤＵ４１５は、この情報を使用して、全ての３つの可能なターゲットエージェントに対する幅変換信号を同時に生成する。これは、ＷＤＵ４１５内で並行して実行中の３つの処理により分かるであろう。処理５４０は、ＴＡ２４０に対する幅変換信号を生成し、処理５４５は、ＴＡ２４５に対する幅変換信号を生成し、処理５５０は、ＴＡ２５０に対する幅変換信号を生成する。
【００３６】
アドレス・デコーダ５２５は、そのアドレス・デコードを完了すると、ターゲットのアイデンティティー５４７をＷＤＵ４１５に渡す。ＷＤＵ４１５は、ここでＴＡ２４５がデータを受け取るべきであることを認識する。従って、処理５４５によって生成されたヘルパー信号５４３が、ロジックコア２３５内の幅変換ロジック４５０に渡される。図４で説明したように、処理の大部分は、ロジックコア２３５の外側で完了され、相互接続２０１の外側周辺にプッシュされる。ロジックコア２３５によって実行された処理は、実際の幅変換である（ヘルパー信号５４３の支援により）。幅変換が完了すると、幅変換されたデータ５４８はＴＡ２４５に渡される。
【００３７】
図６は、相互接続コアで行うことができる異なるタイプの幅変換を示している。これらの４つのタイプは、単に説明に過ぎず、利用可能な唯一のタイプであることを意味するものではない。ＷＣＵ６１０は、２Ｘ幅があるが、単に半ワードの大きさのデータの２ワードを変換するストリップ技術の使用を担う。例えば、第２のワードは、第２の半ワード内に「Ｂ」を含み、第１の半ワード内には無意味コードが埋められている。第１のワードは、第１の半ワード内に「Ａ」を含み、第２の半ワード内には無意味コードが埋められている。ＷＣＵ６１０は、各ワード内に埋められたスペースを除去することによって、２Ｘ幅のワードを１Ｘ幅に変換する。結果は、１Ｘ幅の２ワードであるが、それでも「Ａ」及び「Ｂ」からなる完全なデータを含む。
【００３８】
ＷＣＵ６２０は、２Ｘ幅の２ワードを１Ｘ幅の４ワードに変換するアンパック技術の使用を担う。第１のワードは、「Ａ」と「Ｂ」を含み、第２のワードは、「Ｃ」と「Ｄ」を含む。ＷＣＵ６２０は、各ワードの２つの部分をアンパックすることによって２つの２Ｘ幅のワードを１Ｘ幅の個別のワードに変換する。結果は、１Ｘ幅の４ワードであり、各ワードは、「Ａ」、「Ｂ」、「Ｃ」、「Ｄ」を連続的に含む。
【００３９】
ＷＣＵ６３０は、１Ｘ幅の２ワードを２Ｘ幅の２ワードに変換するためのパッド技術の使用を担う。第１のワードは「Ａ」を含み、第２のワードは「Ｂ」を含む。結果として得られるワードは開始ワードの２倍の幅であるので、ＷＣＵ６３０は、各２Ｘ幅のワードに１つのスペースを埋める。結果は、第１の半ワードに１つのスペース及び第２の半ワードに「Ｂ」を有する第１の２Ｘワードと、その後に、第１の半ワードに１つのスペース及び第２の半ワードに「Ａ」を有する第２の２Ｘワードが続く。
【００４０】
ＷＣＵ６４０は、１Ｘ幅の４ワードを２Ｘ幅の２ワードに変換するためのパック技術の使用を担う。４つの１Ｘワードは、「Ａ」、「Ｂ」、「Ｃ」、「Ｄ」を連続的に含む。ＷＣＵ６４０は、１Ｘワードの２つを単一の２Ｘワードにパックする。結果は、第１の半ワードに「Ｂ」と第２の半ワードに「Ａ」を有する第１の２Ｘワードと、その後に、第１の半ワードに「Ｄ」を有し、第２の半ワードに「Ｃ」を有する第２の２Ｘワードが続く。
【００４１】
図９は、バーストデータをターゲットエージェントに送信するイニシエータエージェント内でバースト変換ユニットによって行うことができる異なるタイプのバースト変換のフローチャートを示す。このフローチャートは、例示的な実施形態を提供し、バースト変換の唯一のタイプとして意図されたものではない。図９は、３つのタイプのバースト変換、すなわち１）チョップなし通過、２）繰り返しチョップ、３）単一転送チョップを説明する。バースト長を可能な限り長く保持するのが望ましく、従って、単一転送チョップは、最も好ましくない変換となり、チョップなし通過が好ましい変換となる。「チョップなし通過」とは、バースト変換が実際には必要とされず、データが変更されることなく直接渡すことができることを意味する。この技術は、ターゲットが到来バーストシーケンスのタイプと長さをサポートし、他の特定のチョップ条件が存在しない場合に使用される。「繰り返しチョップ」とは、バーストデータを繰り返しチョップし、各送出相互接続バーストのサイズを制限することを意味する。具体的にはこれは、追加のバースト要求に関係付けられたより小さなバースト長を備える追加のバースト要求を生成し、当初のバースト長からゼロになるまで継続的に差し引くことを意味する。この技術は、ターゲットが到来バーストシーケンスタイプであるがバースト長が異なるものをサポートし、他の特定のチョップ条件が存在しない場合に使用される。「単一転送チョップ」は、バーストを単一のイニシエータ転送のストリームに変換し、従ってバーストを完全に除去し、これを複数の単一転送に変換することを意味する。この技術は、１）ターゲットが到来バーストタイプをサポートしないか、バーストサポートがない場合、２）ターゲットが正確なバーストサポートのみを有するが到来バーストが不正確である場合、３）バーストがインクリメントアドレス（ＩＮＣＲ）バースト要求である  ＡＮＤ  ターゲットがバーストにアライメントされているが、到来バーストはバーストアライメントルールには従わない場合、或いは、４）バーストがバースト要求（ＷＲＡＰ）バーストである  ＡＮＤ  （ターゲットが到来バーストのバースト長をサポートしない）ＯＲ［（ターゲットがイニシエータよりも広い）ＡＮＤ（開始アドレスがターゲットワードにアライメントされていない）］場合に使用されることになる。このような単一転送要求は、１つの要求につき求められる１つの応答の正確なバーストとして取り扱われる。
【００４２】
一定の基準を用いて、どのバースト変換が使用可能であるかを判定する。図９のフロープロセスの開始部分で、ターゲットがバーストサポートを有するかどうか、及びバーストシーケンスタイプをサポートしているか否かを判定する必要がある９１０。答えが「ＮＯ」の場合には、使用されるバースト変換のタイプは、「単一転送チョップ」９６０であり、フローが終了する。答えが「ＹＥＳ」の場合には、ターゲットが正確なバーストサポートだけを有するかどうか、及びバーストが不正確であるかどうかを判定されなければならない９２０。答えが「ＹＥＳ」の場合には、使用されるバースト変換のタイプが「単一転送チョップ」９６０であり、フローが終了する。答えが「ＮＯ」の場合には、バーストがインクリメントアドレス（ＩＮＣＲ）バースト要求であるかどうか、及びターゲットがバーストアライメントされているかどうか、及びバーストがバーストアライメントルールに従わないかどうかが判定されなければならない９３０。答えが「ＹＥＳ」の場合には、使用されるバースト変換のタイプは、「単一転送チョップ」９６０であり、フローは終了する。答えが、「ＮＯ」の場合には、バーストが２つの多重イニシエータワードバースト要求（ＷＲＡＰ）バーストを覆うラッピングアドレス（ＷＲＡＰ）であるかどうか、及び（ターゲットがバースト長をサポートしないかどうか）ＯＲ（ターゲットデータ幅サポートがイニシエータよりも広いかどうか）、及びバースト開始アドレスがターゲットワードにアライメントされていないかどうかが判定されなければならない９４０。答えが「ＹＥＳ」の場合には、使用されるバースト変換のタイプは、「単一転送チョップ」９６０であり、フローが終了する。答えが、「ＮＯ」の場合には、ターゲットがバースト長をサポートするかどうかが判定されなければならない９５０。答えが「ＹＥＳ」の場合には、使用されるバースト変換のタイプは、「通過」９８０であり、フローは終了する。答えが「ＮＯ」の場合には、使用されるバースト変換のタイプは、「繰り返しチョップ」９７０であり、フローが終了する。
【００４３】
上述のように、説明された３つのバースト変換技術は決定的なものではない。別の技術又は基準を用いて、バーストストリームを変えることもできる。当業者でれば、別のバースト変換技術を実装できるであろう。
【００４４】
１つの実施形態では、幅とバースト変換に関係するプロトコルやアルゴリズムを容易にするために使用されるソフトウエアは、機械可読媒体に記録することができる。機械可読媒体は、機械（例えばコンピュータ）によって読むことが可能な形態の情報を提供（例えば格納及び／又は伝送）するいずれかの機構を含む。例えば、コンピュータ可読媒体は、読取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、ＤＶＤ、電子的、光学的、音響学的、又は他の形態の伝播信号（例えば、搬送波、赤外線信号、ディジタル信号）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＦＬＡＳＨ、磁気又は光カード、又は、電子命令を格納するのに好適ないずれかのタイプの媒体を含む。機械可読媒体上に格納された装置及び／又は方法を表す情報は、本明細書で説明した装置及び／又は方法をもたらすプロセスで使用することができる。例えば、装置及び／又は方法を表す情報は、ＩＰジェネレータ又はこの情報を格納する同様なコンピュータ可読媒体におけるインスタンス、ソフト命令で含むことができる。
【００４５】
ＩＰジェネレータは、データ、制御、デバッグとテストフロー、その他のアプリケーションを統合管理する、高度に構成可能で拡張可能なシステムオンチップブロック間通信システムを製作するのに用いることができる。１つの実施形態では、例示的なインテレクチャルプロパティジェネレータは、以下すなわち、グラフィックユーザインターフェイス、処理要素の共通セットを含み、さらにインテレクチャルプロパティジェネレータを定義する回路、制御ロジック、セルアレイのような設計要素を含むファイルのライブラリを含むことができる。１つの実施形態では、設計者は、相互接続構成の仕様を選択し、要求された相互接続インスタンスを定義するファイルのセットを生成する。相互接続インスタンスは、フロントエンドビューやバックエンドファイルを含むことができる。フロントエンドビューは、ドキュメンテーション、シミュレーション、デバッグ、テストをサポートする。レイアウト、物理的ＬＥＦ、その他のようなバックエンドファイルは、レイアウトや製作のためのものである。
【図面の簡単な説明】
【００４６】
【図１】複雑な電子システムのブロック図を示す。
【図２】インテレクチャルプロパティコアのグループ及びこれらがどのように相互接続されているかを示す図である。
【図３】図２において、特にインテレクチャルプロパティコアとこれらの対応するエージェントとの間の接続パスの拡大図である。
【図４】イニシエータエージェント内の幅とバースト変換ユニットと、このようなユニットが相互接続コア及びターゲットエージェントとどのように相互接続されるかを示す図である。
【図５】幅／バースト変換信号とアドレス・デコーディングとの並行処理を示す図である。
【図６】インテレクチャルプロパティコア間でのデータ送信時に起こる可能性がある幅変換タイプの例示的タイプを示す図である。
【図７】幅変換中に用いることができるヘルパー信号の様々なタイプの表を示す図である。
【図８】オープンコアプロトコル（ＯＣＰ）のバースト特性及び各特性が利用可能なオプションの表を示す図である。
【図９】バーストデータがイニシエータからターゲットに送信される時にどのバースト変換タイプを使用すべきかを決定するフロープロセスを示す図である。
【図１】
2007528560.tif 000003
【図２】
2007528560.tif 000004
【図３】
2007528560.tif 000005
【図４】
2007528560.tif 000006
【図５】
2007528560.tif 000007
【図６】
2007528560.tif 000008
【図７】
2007528560.tif 000009
【図８】
2007528560.tif 000010
【図９】
2007528560.tif 000011
【国際調査報告】
2007528560.tif 000012
2007528560.tif 000013
2007528560.tif 000014
2007528560.tif 000015
2007528560.tif 000016