(57)【要約】  異種が混合した構成可能な回路中の２重メッシュ状相互接続ネットワークは、データ通信と制御通信との間で割当てられる。
2007527666.tif 000002
【特許請求の範囲】
【請求項１】
異種が混合した再構成可能な装置中にデータおよび制御のための複数のメッシュ状ネットワークを割当てる段階を含むことを特徴とする方法。
【請求項２】
メモリからプロトコル・ファイルを読み出す段階と、
異種が混合した複数の処理要素を形成する段階と、をさらに含む方法であって、
前記プロトコル・ファイルは、前記複数のメッシュ状ネットワークのための割当て情報を含む、
ことを特徴とする請求項１記載の方法。
【請求項３】
前記複数のメッシュ状ネットワークは、第１平面および第２平面を含み、割当てる段階は、前記第１平面を制御専用に、および、前記第２平面をデータ専用にする段階を含むことを特徴とする請求項１記載の方法。
【請求項４】
前記第１平面をデータと制御との間で共有するために再割当てをする段階をさらに含むことを特徴とする請求項３記載の方法。
【請求項５】
前記複数のメッシュ状ネットワークは、第１平面および第２平面を含み、割当てる段階は、データと制御との間で共有される前記第１平面を割当てる段階を含むことを特徴とする請求項１記載の方法。
【請求項６】
前記複数のメッシュ状ネットワークは、第１平面および第２平面を含み、割当てる段階は、データと制御との間で共有される前記第１平面および前記第２平面の両方を割当てる段階を含むことを特徴とする請求項１記載の方法。
【請求項７】
設計記述を異種が混合した複数の処理要素のための構成に変換する段階と、
データと制御との間の複数のメッシュ状相互接続ネットワークを割当てる段階と、
を含むことを特徴とする方法。
【請求項８】
割当てる段階は、レイテンシ制限が共有されたデータおよび制御のメッシュ状ネットワークに合致しているかどうかを決定する段階を含むことを特徴とする請求項７記載の方法。
【請求項９】
変換および割当てる段階は、プロトコル・ファイルに帰する結果になり、前記方法は、前記プロトコル・ファイルをメモリに格納する段階をさらに含むことを特徴とする請求項７記載の方法。
【請求項１０】
第２の設計記述を変換して第２の割当てを行なう段階、第２のプロトコル・ファイルに帰する結果となる段階、および前記第２プロトコル・ファイルを前記メモリ中に格納する段階をさらに含むことを特徴とする請求項９記載の方法。
【請求項１１】
機械アクセス可能な命令を保持する媒体を含む装置において、アクセスされたとき、機械は、
異種が混合した再構成可能な装置中にデータおよび制御のための複数のメッシュ状ネットワークを割当てる段階を実行する、
ことを特徴とする装置。
【請求項１２】
前記複数のメッシュ状ネットワークは、第１平面および第２平面を含み、割当てる段階は、前記第１平面を制御専用に、および、前記第２平面をデータ専用にする段階を含むことを特徴とする請求項１１記載の装置。
【請求項１３】
データと制御との間で共有される前記第１平面を再割当てする段階をさらに含むことを特徴とする請求項１２記載の装置。
【請求項１４】
前記複数のメッシュ状ネットワークは、第１平面および第２平面を含み、割当てる段階は、データと制御との間で共有される前記第１平面を割当てる段階を含むことを特徴とする請求項１１記載の装置。
【請求項１５】
異種が混合した処理要素のネットワークと、
前記異種が混合した処理要素のネットワークに結合された第１および第２メッシュ状ネットワークであって、前記装置は、データおよび制御のあらゆる組合せのために前記第１および第２メッシュ状ネットワークを利用するためにプログラム可能である、第１および第２メッシュ状ネットワークと、
を含むことを特徴とする装置。
【請求項１６】
データと制御との間で前記第１および第２メッシュ状ネットワークをダイナミックに割当てるためのプロセッサをさらに含むことを特徴とする請求項１５記載の装置。
【請求項１７】
前記異種が混合した処理要素のネットワークは、情報のパケットを使用して、前記第１および第２メッシュ状ネットワークを介して通信するために構成可能であることを特徴とする請求項１５記載の装置。
【請求項１８】
前記異種が混合した処理要素のネットワークは、データ通信のために前記第１メッシュ状ネットワークを、制御通信のために前記第２メッシュ状ネットワークを利用するために構成可能であることを特徴とする請求項１５記載の装置。
【請求項１９】
前記異種が混合した処理要素のネットワークは、データ通信のために前記第１メッシュ状ネットワークを、データおよび制御通信の両方のために前記第２メッシュ状ネットワークを利用するために構成可能であることを特徴とする請求項１８記載の装置。
【請求項２０】
前記異種が混合した処理要素のネットワークは、データおよび制御通信の両方のために前記第１および第２メッシュ状ネットワークの両方を利用するために構成可能であることを特徴とする請求項１８記載の装置。
【請求項２１】
２重のメッシュ状相互接続ネットワークと、
前記２重のメッシュ状相互接続ネットワークに結合された複数の処理要素であって、前記複数の処理要素は、データと制御のあらゆる組合せのために前記２重のメッシュ状相互接続ネットワークを利用するために構成可能である、複数の処理要素と、
を含むことを特徴とする装置。
【請求項２２】
前記複数の処理要素を形成するためのプロセッサをさらに含むことを特徴とする請求項２１記載の装置。
【請求項２３】
前記２重のメッシュ状相互接続ネットワークと前記複数の処理要素との間に結合された複数のルータをさらに含むことを特徴とする請求項２１記載の装置。
【請求項２４】
前記２重のメッシュ状相互接続ネットワークは、第１平面および第２平面を含み、前記複数の処理要素は、データ通信のために前記第１平面を、制御通信のために前記第２平面を利用するために構成可能であることを特徴とする請求項２１記載の装置。
【請求項２５】
前記複数の処理要素は、データ通信のために前記第１平面を、データおよび制御通信の両方のために前記第２平面を利用するために構成可能であることを特徴とする請求項２４記載の装置。
【請求項２６】
前記複数の処理要素は、データおよび制御通信の両方のために前記第１および第２平面の両方を利用するために構成可能であることを特徴とする請求項２４記載の装置。
【請求項２７】
アンテナと、
前記アンテナから通信信号を受け取る無線周波数回路と、
前記無線周波数回路に結合された再構成可能な装置であって、前記再構成可能な装置は、２重のメッシュ状相互接続ネットワークを含む、再構成可能な装置、および、前記２重のメッシュ状相互接続ネットワークに結合された複数の処理要素であって、前記複数の処理要素は、データおよび制御のあらゆる組合せのために前記２重のメッシュ状相互接続ネットワークを利用するために構成可能である、複数の処理要素と、
を含むことを特徴とする電子システム。
【請求項２８】
前記複数の処理要素を形成するためのプロセッサをさらに含むことを特徴とする請求項２７記載の電子システム。
【請求項２９】
前記２重のメッシュ状相互接続ネットワークは、第１平面および第２平面を含み、前記複数の処理要素は、データ通信のために前記第１平面を、制御通信のために前記第２平面を利用するために構成可能であることを特徴とする請求項２７記載の電子システム。
【請求項３０】
前記複数の処理要素は、データ通信のために前記第１平面を、データおよび制御通信の両方のために前記第２平面を利用するために構成可能であることを特徴とする請求項２９記載の電子システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に再構成可能な回路に関し、より詳細には、プログラミング再構成可能な回路に関する。
【背景技術】
【０００２】
いくつかの集積回路は、プログラム可能または構成可能（configurable）である。実施例には、マイクロプロセッサやフィールド・プログラム可能なゲート・アレイを含む。プログラム可能で構成可能な集積回路がより複雑になるにつれ、それらをプログラムしたり設定したりする作業はさらにより複雑になる。
【発明の開示】
【０００３】
以下の詳細な説明では、本発明が実施される特定の実施例を示す添付図面が言及される。これらの実施例は、当業者が本発明を実施することができるように十分詳細に説明される。本発明の様々な実施例は、異なっていても、必ずしも相互に排他的ではないことを理解すべきである。例えば、一実施例に関してここに説明される特定の特徴、構造または特性は、本発明の精神および範囲から逸脱せずに、他の実施例内で実施される。加えて、開示された各実施例内の個々の要素の位置または配置は、本発明の思想および範囲から逸脱せずに、修正されてもよいことが理解される。したがって、以下の詳細な説明は、制限する意味に捉えるべきではなく、本発明の範囲は、請求項が与える均等の全範囲と共に、添付の請求項によってのみ定義され、適切に解釈される。図面では、類似の数字は、図面全体に亘り、同一または類似の機能を参照する。
【０００４】
図１は、再構成可能な（reconfigurable）回路のブロック図を示す。再構成可能回路１００は、複数の処理要素（ＰＥ：processing elements）および相互に連結した複数のルータ（Ｒ：routers）を含む。いくつかの実施例では、各ＰＥは単一のルータに結合され、そのルータは環状に配置され、結合される。例えば、図１に示されるように、ＰＥ１０２はルータ１１２に結合される。また、ＰＥ１０４はルータ１１４に結合される。さらに、例えば図１の中で示されるように、ルータ１１２，１１４は、ルータ１１６，１１８，１２０を通って共に結合されて、相互接続１２２（Ｒ１１２の左と、Ｒ１１４の右に示される）によって共に直接結合される。再構成可能回路１００中の様々なルータ（およびＰＥ）は、ルータの行がそれぞれ環状に相互に連結され、またルータの列がそれぞれ環状に相互に連結されるように、最も近い隣接相互接続で行および列に配置される。いくつかの実施例では、各ルータは単一のＰＥに結合されており、また、他の実施例では、各ルータは２以上のＰＥに結合されてもよい。
【０００５】
本発明のいくつかの実施例では、構成可能回路１００は、様々な異なったタイプのＰＥを含む「異種が混合したアーキテクチャ」を具備してもよい。例えば、ＰＥ１０２は、特定の論理機能を行なうために形成されるプログラム可能ロジック・アレイを含む一方、ＰＥ１０４は、機械語命令でプログラムされるプロセッサ・コアを含んでいてもよい。いくつかの実施例では、いくつかのＰＥは、様々なタイプの「マイクロ・コード化されたアクセラレータ」（ＭＣＡ）を実行する。ＭＣＡは、特定の機能、例えばデータのフィルタ、デジタル信号処理（ＤＳＰ）タスクの実行、または畳込み符号化または復号化を加速するために使用される。一般に、広範囲の種類のアーキテクチャを備えたあらゆる数のＰＥが構成可能回路１００内に含まれる。
【０００６】
図１中に示されるように、ＰＥは２重のメッシュ状相互接続ネットワークによって接続される。２重メッシュ状相互接続ネットワークは、第１のメッシュ、あるいは「平面」（ＰＥ間の実線の矢印で示される）、および第２のメッシュあるいは「平面」（ＰＥ間の点線の矢印で示される）を含む。いくつかの実施例では、第１のメッシュはＰＥ間でデータ通信のために利用され、また、第２のメッシュはＰＥ間で制御通信のために利用される。他の実施例では、２重メッシュ状相互接続ネットワークにおける１つまたは両方の平面は、制御とデータとの間で共有される。例えば、いくつかの実施例では、ネットワーク上で通信されるデータのプロトコルが帯域内周波信号方式をサポートするので、制御とデータの平面は、一部同じメッシュ上で結合される。あるいは、制御平面はデータ平面から分離され、専用制御および構成メッシュ（ＣＣＭ）として提供されてもよい。さらに以下に説明されるように、制御とデータ間で２重メッシュ状相互接続のダイナミックな（動的な）割当て（allocation）が行なわれてもよい。動的割当ては、構成可能回路１００内の処理要素によって行なわれてもよく、または、動的割当ては構成可能回路１００の外部のプロセッサによって行なわれてもよい。
【０００７】
いくつかの実施例では、ルータは、情報のパケットを使用して、互いにまたＰＥと通信する。例えば、ＰＥ１０２がＰＥ１０４へ送る情報を有する場合、ＰＥ１０２はデータのパケットをルータ１１２に送り、それからＰＥ１０４へ配送するためのルータ１１４へそのパケットを送る。パケットは制御またはデータ情報を含み、任意のサイズである。いくつかの実施例では、データ・パケットは２重メッシュ状相互接続ネットワークの１つの平面を使用して、ＰＥ間で発送され、また、制御パケットは別の平面を使用して、ＰＥ間で発送される。他の実施例では、データ・パケットと制御パケットは、同じ平面上のＰＥ間で発送される。いくつかの実施例では、ＰＥは、データと制御との間のメッシュで動的割当てを許容する方法でプログラム可能である。ＰＥをプログラムまたは構成することによって、メッシュは、データと制御との間で割当てられ、あるいは再割当てが行なわれてもよい。
【０００８】
図１に示されるように、構成可能回路１００は、入出力（ＩＯ）要素１３０，１３２を含む。入出力要素１３０，１３２は、他の回路と通信するために構成可能回路１００によって使用されてもよい。例えば、ＩＯ要素１３０はホスト・プロセッサと通信するために使用され、また、ＩＯ要素１３２は、無線周波数（ＲＦ）受信機または送信機のようなアナログ・フロント・エンドと通信するために使用されてもよい。あらゆる数のＩＯ要素が構成可能回路１００に含められ、また、それらのアーキテクチャは広く変化する。ＰＥのように、ＩＯは構成可能で、またプログラム可能であり、それらの基本的なアーキテクチャに基づく異なったレベルの構成を有していてもよい。
【０００９】
構成可能回路１００は、ＩＯ要素を介して構成パケットを受け取ることにより形成される。例えば、ＩＯ要素１３０は、様々なＰＥおよびＩＯのための構成情報を含む構成パケットを受け取り、その構成パケットは適切な要素に発送される。構成可能回路１００は、専用プログラミング・インターフェイスを通って構成情報を得ることにより形成されてもよい。例えば、構成可能回路１００をプログラムするためにシリアル・スキャン・チェーンのようなシリアル・インターフェイスを利用することができる。
【００１０】
構成可能回路１００によって受け取られた構成パケットは、２重メッシュ状相互接続ネットワークのための割当て情報を含む。例えば、いくつかの実施例では、構成パケットは、２重メッシュ状相互接続ネットワークの１つの平面をデータ通信に、別の平面を通信の制御のために割当てるためのＰＥプログラミング情報を含む。他の実施例では、構成パケットは、データと制御通信との間で共有される１つまたは両方の平面を割当てるためのＰＥプログラミング情報を含んでもよい。
【００１１】
いくつかの実施例では、構成可能回路１００内のＰＥまたはＩＯは、構成パケットを受け取り、２重メッシュ状相互接続ネットワーク中の資源を割当てる処理要素として働く。例えば、ＩＯ１３０は、ホスト・インターフェイス・ノードとして働くプロセッサを含む。ホスト・インターフェイス・ノードは、構成パケットを受け取り、構成可能回路１００内の様々な要素をプログラムすることにより２重メッシュ状相互接続ネットワーク内の資源を割当てる。
【００１２】
本発明の様々な実施例は、構成可能回路１００内の処理要素によって実行される。例えば、図４に関して以下に説明される様々な方法は、構成可能回路１００内のプロセッサによって実行される。
【００１３】
構成可能回路１００は、多くの用途を有する。例えば、構成可能回路１００は、通信システムにおける特定の物理層（ＰＨＹ）の実現を示すため、または通信システムにおける特定のメディア・アクセス制御層（ＭＡＣ）の実現を示すために形成することができる。例えば、構成可能回路１００は、ＡＮＳＩ／ＩＥＥＥ  Ｓｔｄ．８０２．１１，１９９９年版のようなワイヤレス・ネットワーク標準規格に従って動作するために形成されるが、これは本発明を制限するものではない。ここに使用されるように、用語「８０２．１１」は、過去、現在、将来のあらゆるＩＥＥＥ８０２．１１標準規格に関するものであり、１９９９年版に制限されるものではない。
【００１４】
様々なＰＨＹおよびＭＡＣ構成は、データおよび制御の結合平面から恩恵を受ける。例えば、高帯域データ要求およびより柔軟なレイテンシ制限を備えるアプリケーションでは、全帯域幅を改善するためにデータおよび制御のために両方のメッシュ状ネットワークを使用する。データおよび制御の結合平面から恩恵を受けるＰＨＹを実現する例は、広帯域符号分割多重接続（ＷＣＤＭＡ）の基地局ＰＨＹを含み、比較的緩いレイテンシ制限を有してもよいが、複数のアンテナから入るデータを受信する。ＷＣＤＭＡは例として引用され、また、本発明はこの点に制限されるものではない。
【００１５】
様々なＰＨＹおよびＭＡＣ構成は、個別のデータおよび制御平面から恩恵を受ける。例えば、厳しいレイテンシ制限を有するアプリケーションでは、通常の決定性データ・フローを考慮に入れて、個別のデータおよび制御平面から恩恵を受ける。厳しいレイテンシ要求を有するＰＨＹを実現する例は、ＩＥＥＥ８０２．１１標準規格に従って動作する直交周波数分割多重化（ＯＦＤＭ）の実現を含む。さらに例えば、高い制御オーバーヘッドあるいは迅速な再構成のための能力を備えるアプリケーションは、制御とデータのための個別のメッシュ状構造から恩恵を受ける。個別の制御および構成メッシュ状（ＣＣＭ）ネットワークによって、要素は通常のネットワークのデータ・トラフィックに影響を与えずに再構成されることを可能にする。加えて、タイム・クリティカルな（時間的制約のある）制御機能を各要素に直接送信することを可能にする。
【００１６】
いくつかの実施例では、構成可能回路１００のための複数の構成が存在し、ある構成から別の構成に変化することによって、通信システムはあるＰＨＹから別のＰＨＹへ、あるＭＡＣから別のＭＡＣへ、あるいは、複数の構成のあらゆる組合せの間で迅速に変更することができる。さらに、様々な構成は、２重メッシュ状相互接続ネットワークを違った風に利用することができる。いくつかの実施例では、ある構成から別の構成へ変化する場合、２重メッシュ状相互接続ネットワークは、データと制御との間で再割当てされる。さらに、いくつかの実施例では、２重メッシュ状相互接続ネットワークは、完全に構成を変更せずに、再割当てが行なわれる。
【００１７】
いくつかの実施例では、構成可能回路１００は集積回路の一部である。これらの実施例のいくつかでは、構成可能回路１００は、構成可能回路１００以外の回路を含む集積回路ダイに含められる。例えば、構成可能回路１００は、プロセッサ、メモリまたは他の適切な回路を備える集積回路ダイ上に含められてもよい。いくつかの実施例では、通信装置の集積度を増加させるために、構成可能回路１００は、同じ集積回路ダイ上の無線周波数（ＲＦ）回路と共存させることができる。さらに、いくつかの実施例では、構成可能回路１００は、複数の集積回路ダイに跨ってもよい。
【００１８】
図２は、電子システムのブロック図を示す。システム２００は、プロセッサ２１０、メモリ２２０、構成可能回路１００、ＲＦインターフェイス２４０、およびアンテナ２４２を含む。いくつかの実施例では、システム２００は、構成可能回路１００で使用するための構成を展開するコンピュータ・システムである。例えば、システム２００は、パーソナル・コンピュータ、ワークステーション、専用の開発用ステーション、または構成可能回路１００のための構成を形成することのできるあらゆるコンピューティング装置である。他の実施例では、システム２００は、特定の構成でプログラムされた後、構成可能回路１００を利用する「最終用途」システムであってもよい。さらに、いくつかの実施例では、システム２００は、構成を開発すると同様にその構成を使用することができるシステムであってもよい。
【００１９】
いくつかの実施例では、プロセッサ２１０は、図３および図４に関して以下説明される方法を実行することができるプロセッサである。例えば、プロセッサ２１０は、設計記述（design description）を構成可能回路１００のための構成に変換する方法を実行し、プロセッサ２１０は、また構成可能回路１００を形成する方法を実行する。構成可能回路１００のための構成は、メモリ２２０に格納され、構成可能回路１００を形成するとき、プロセッサ２１０はメモリ２２０からその構成を読み出す。さらに、設計記述を構成可能回路１００のための構成に変換するとき、プロセッサ２１０は、メモリ２２０に１またはそれ以上の構成を格納する。プロセッサ３１０は、あらゆるタイプのプロセッサを表わし、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセサ、パーソナル・コンピュータ、ワークステーションまたは同種のものを含むが、これらに限定されることはない。
【００２０】
いくつかの実施例では、システム２００は、通信システムであり、プロセッサ２１０は、通信システム内の様々なタスクを実行するコンピューティング装置である。例えば、システム２００は、コンピュータにワイヤレス・ネットワーク能力を提供するシステムである。これらの実施例では、プロセッサ２１０は、デバイス・ドライバのすべてまたは一部を実行することができ、あるいはＭＡＣのすべてまたは一部を実行することができる。さらに、これらの実施例では、構成可能回路１００は、ワイヤレス・ネットワーク接続のための１またはそれ以上のプロトコルを実行する。いくつかの実施例では、構成可能回路１００は複数のプロトコルを同時に実行することができ、また、他の実施例では、プロセッサ２１０は、構成可能回路１００の再構成により使用中のプロトコルを変更することができる。さらに、プロセッサ２１０は、構成可能回路１００の一部を再構成することにより使用中のプロトコルの動きを変更することもできる。
【００２１】
メモリ２２０は、機械読取り可能な媒体を含む物品を表わす。例えば、メモリ２２０は、ハードディスク、フロッピー・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、リード・オンリ・メモリ（ＲＯＭ）、フラッシュ・メモリ、ＣＤＲＯＭ、または他のあらゆるタイプの物品を示し、プロセッサ２１０のようなマシンによって読取り可能な媒体を含む。いくつかの実施例では、メモリ２２０は、本発明の様々な実施例を実行するための命令を格納することができる。さらに、いくつかの実施例では、メモリ２２０は、構成可能回路１００のために１またはそれ以上の構成を格納することができる。
【００２２】
いくつかの実施例の動作では、プロセッサ２１０は、メモリ２２０から命令とデータを読取り、それに応答する動作を実行する。例えば、本発明の様々な実施例は、メモリ２２０から命令を読み出している間、プロセッサ２１０によって実行される。
【００２３】
アンテナ２４２は、指向性アンテナまたは無指向性アンテナのいずれかである。例えば、いくつかの実施例では、アンテナ２４２は、ダイポール・アンテナのような無指向性アンテナ、または４分の１波長アンテナである。さらにいくつかの実施例では、例えば、アンテナ２４２は、パラボラ・ディッシュ・アンテナまたは八木アンテナのような指向性アンテナであってもよい。いくつかの実施例では、アンテナ２４２は省略されてもよく、また、他の実施例では、アンテナ２４２は複数のアンテナまたは複数のアンテナ素子を含む。
【００２４】
いくつかの実施例では、アンテナ２４２によって送信され、または受信されたＲＦ信号は、音声信号、データ信号またはそのあらゆる組合せに対応する。例えば、いくつかの実施例では、構成可能回路１００は、ワイヤレス・ローカル・エリア・ネットワーク・インターフェイス、携帯電話インターフェイス、全地球測位システム（ＧＰＳ）インターフェイス、または同種のインターフェイスのためのプロトコルを実行することができる。これらの様々な実施例では、ＲＦインターフェイス２４０は、構成可能回路１００によって実行されるプロトコルに対して適切な周波数で動作する。ＲＦインターフェイス２４０は、増幅器、フィルタ、ミキサおよびその他同種のものを含むあらゆる適切なコンポーネントを含む。いくつかの実施例では、ＲＦインターフェイス２４０は省略される。
【００２５】
図３は、本発明の様々な実施例に従うフローチャートを示す。いくつかの実施例では、方法３００あるいはその一部は、電子システム、または人の行為と協働する電子システムによって行なわれる。他の実施例では、方法３００のすべてまたはその一部は、コントロール回路またはプロセッサによって行なわれ、その実施例はいくつかの図面中に示される。方法３００は、特定のタイプの装置、ソフトウェア要素、またはその方法を行なう人によって制限されることはない。方法３００の様々な動作は、示された順に行なわれてもよく、また異なる順に行なわれてもよい。さらに、いくつかの実施例では、図３にリストされたいくつかの動作が方法３００から省略されることもある。
【００２６】
方法３００は、ブロック３１０から始まり、設計記述が、複数の異種が混合した処理要素（ＰＥ）のための構成に変換される。例えば、構成可能回路１００（図１，図２）のような構成可能回路のための最終構成を表わす設計記述は、図１の中で示される構成のようなＰＥのための構成に変換訳される。いくつかの実施例では、設計記述の変換は、多くの動作を含む。例えば、設計記述は高位言語で表わされ、その設計記述の変換は分割、分解、グループ化、配置およびその他同種の処理を含む。他の実施例では、設計記述の変換はほとんどの動作を含まないこともある。例えば、設計記述は中間表現を使用して表わされることがあり、また、設計記述の変換は様々なＰＥのためにコードを生成することを含む。
【００２７】
いくつかの実施例では、ブロック３１０中の設計記述によって指定された構成は、特定のＰＨＹ、ＭＡＣまたはそれらの組合せを実行することになるアルゴリズムの形式をしている。そのアルゴリズムは、手続き形言語またはＣまたはＣ＋＋のような目的向き言語の形で書かれ、高位言語に特定化し、あるいは「様式化した」バージョンであってもよい。
【００２８】
いくつかの実施例では、設計記述の変換をガイドする制限が明示される。その制限は、レイテンシやスループットの制限のように、完成した構成が満たすべき最小の必要条件を含む。いくつかの実施例では、様々な制限がウェイトとして割当てられ、それ結果、設計記述の変換中に様々な量の遅延処理が与えられる。いくつかの実施例では、制限は要求または優先選択としてリストされることがあり、また、いくつかの実施例では、制限はパラメータ値の範囲としてリストされる。いくつかの実施例では、制限は絶対的なものではない。例えば、目標の再構成可能回路がパケットで通信するデータ経路を含む場合、その設計の一部を通した測定レイテンシは固定値ではなくてもよく、その代り、統計的変動を備えた値であってもよい。
【００２９】
３２０で、複数のメッシュ状相互接続ネットワークは、データと制御との間で割当てられる。この状況において、「割当てる」は、構成可能回路内のメッシュ状相互接続ネットワークのどの部分が制御情報に使用されることになっているか、また、どの部分がデータ情報に使用されることになっているかを決めることを指す。上述されるように、個別のメッシュは、個別のデータおよび制御平面のために割当てられることがあり、または、１またはそれ以上のメッシュがデータおよび制御が結合した平面のために割当てられてもよい。
【００３０】
いくつかの実施例中で、「割当てられる」ことによる１つの結果によって、ＰＥのための構成情報が生成される。例えば、一般にＰＥは、図１に示されるメッシュ状相互接続のいずれかまたは両方にデータまたは制御情報を送りまたは受け取る。ＰＥのための構成情報を生成することによって、方法３００はメッシュ状相互接続の使用に関するＰＥの動きを決定する。
【００３１】
方法３００は、構成の「品質」を測定し、３１０または３２０にリストされた動作のすべてまたは一部を繰り返す。例えば、現在の構成品質は、ハードウェアまたはソフトウェアで実行される「プロファイラ」によって測定される。いくつかの実施例では、プロファイラは、現在の構成の品質を決定するために、制限に対して比較する情報を収集することができる。例えば、プロファイラは、レイテンシまたはスループットの要求が現在の構成で満たすことができるかどうかを決めるために利用される。制限を満たさない場合、あるいはそのマージンには適合するが望ましくない場合、ブロック３１０または３２０の一部が繰り返される。例えば、設計上は異なる配置または経路付けされ、または、メッシュ状相互接続は異なった風に割当てられることがあり、または、変更のあらゆる組合せは構成内に作成される。評価には、制限を含む多くの可能なパラメータを考慮に入れるコスト関数を評価することを含む。
【００３２】
その制限に合致するとき、完成した構成は３２０から出力される。いくつかの実施例では、完成した構成は、構成可能回路１００（図１）のような構成可能回路の構成を指定するファイル形式をしている。いくつかの実施例では、完成した構成は、構成可能回路１００のような構成可能回路にロードされる構成パケットの形式をしている。完成した構成によって得られた形式は、本発明を制限するものではない。
【００３３】
方法３００の３３０で、構成ファイルが書き込まれる。いくつかの実施例では、そのファイルは、１またはそれ以上のメッシュ状相互接続ネットワークの割当てを管理する情報を含む、ＰＥのための構成情報を含む。１を越える設計記述が変換されることになっている場合、ブロック３４０によって方法３００は別の設計を変換する。そうでなければ、方法３００は３５０で終了する。
【００３４】
方法３００の完了で、１またはそれ以上の構成ファイルが存在し、そこでは、各構成ファイルは、構成可能回路のための構成を指定する。各構成は、２重メッシュ状相互接続ネットワークを違った風に割当てる。例えば、ある構成ファイルは個別の制御およびデータ平面を有してもよく、また、別のプロトコル・ファイルは結合された制御とデータの平面を有していてもよい。
【００３５】
図４は、本発明の様々な実施例に従うフローチャートを示す。いくつかの実施例では、方法４００、またはその一部は、電子システム、制御回路、プロセッサ、構成可能回路、または処理要素（ＰＥ）によって実行され、それらの実施例は様々な図で示される。方法４００は、特定のタイプの装置またはその方法を実行するソフトウェア要素によって制限されることはない。方法４００の様々な動作は示された順序で実行されるが、異なる順序で実行されてもよい。さらに、いくつかの実施例では、図４にリストされたいくつかの動作が、方法４００から省略されてもよい。
【００３６】
方法４００は、ブロック４１０から開始し、メモリから構成ファイルが読み込まれる。構成ファイルは、電子システムのプロセッサによって読み込まれてもよいが、構成可能回路内の要素によって読み込まれてもよい。例えば、プロセッサ２１０（図２）のようなプロセッサが構成ファイルを読み込んでもよく、あるいは、ＩＯ１３０（図１）のような処理要素または入出力要素が構成ファイルを読み込んでもよい。メモリは、システム２００（図２）のような電子システム内のメモリであり、または構成可能回路内で専用されるメモリであってもよい。
【００３７】
４２０で、異種が混合した再構成可能な装置中の複数の処理要素が形成される。いくつかの実施例では、これは、構成パケットを構成可能回路１００（図１，図２）のような構成可能回路に送る電子システムのプロセッサに対応する。他の実施例では、これは、構成情報を受け取り、それを適切な処理要素を転送する構成可能回路内の要素に対応する。
【００３８】
いくつかの実施例では、異種が混合した再構成可能な装置の一部のみが４２０で形成される。例えば、再構成可能な装置は、複数のワイヤレス・ネットワーク・プロトコルを同時に実行することができ、また複数のプロトコルの一部が変更される一方で、他の装置が存続してもよい。このような装置を形成する場合、構成情報は、データ・トラフィックを錯綜させないで、再構成可能な装置内の専用制御メッシュを介して送られる。個別のデータおよび制御平面を有することによって、ブロック４２０中の動作は、データの帯域幅上で有害なインパクトなく実行される。さらに、いくつかの実施例では、構成情報は、結合したデータおよび制御平面を使用して、異種が混合した再構成可能な装置の一部に送り込まれてもよい。これらの実施例では、制御情報は帯域幅を利用してもよく、そうでない場合それはデータ・トラフィックに利用可能である。
【００３９】
４３０で、複数のメッシュ状ネットワークは、異種が混合した再構成可能な装置中でデータおよび制御のために割当てられる。この状況で、「割当てられる」は、メッシュ状相互接続の使用に関してＰＥの動きに影響を与えるために構成情報をＰＥへ送ることに関連する。例えば、構成ファイルが個別のデータおよび制御平面の形成のための構成情報を含む場合、様々な処理要素は、あるメッシュを制御通信に割当て、データ通信のために別のメッシュを割当てる方法で形成される。さらに、例えば、構成ファイルが共有したデータおよび制御の平面を形成するための構成情報を含む場合、様々な処理要素は、１またはそれ以上のメッシュをデータおよび制御の通信のために共有するために割当てる方法で形成される。
【００４０】
本発明はある実施例と共に説明されたが、理解されることになっている‥‥修正と変更は、当業者が容易に理解できるように、本発明の思想および範囲から逸脱せずに、行なわれる。そのような修正および変更は、本発明および添付された請求項の範囲内であると考えられる。
【図面の簡単な説明】
【００４１】
【図１】再構成可能回路のブロック図を示す。
【図２】本発明の様々な実施例に従う電子システムのダイヤグラムを示す。
【図３】本発明の様々な実施例に従うフローチャートを示す。
【図４】本発明の様々な実施例に従うフローチャートを示す。
【図１】
2007527666.tif 000003
【図２】
2007527666.tif 000004
【図３】
2007527666.tif 000005
【図４】
2007527666.tif 000006
【国際調査報告】
2007527666.tif 000007
2007527666.tif 000008
2007527666.tif 000009