(57)【要約】本発明は、ビット集合（ビット「ワード」）に関する計算を実行するリコンフィギュラブル論理素子からなる論理計算アーキテクチャに関する。前記リコンフィギュラブル論理素子は、複数の方法でプログラム可能であり、すなわち、アーキテクチャのグローバルコンフィギュレーションを管理する中央処理装置によって直接プログラムされるか、あるいは前記中央処理装置から命令セットを受け取ったローカルコントローラによってプログラムされる。ローカルコントローラは、前記命令セットに従って、それが接続された論理素子を自動的に再構成する。【特許請求の範囲】
【請求項１】
−複数のコンフィギュラブル計算コンポーネントと、
−複数の相互接続コンポーネントと、
−アーキテクチャを構成し、すなわち前記計算コンポーネントと前記相互接続コンポーネントとを接続するための第一の信号の集合と、
−前記第一のコンフィギュレーション信号の集合を管理するプロセッサとを含む、論理計算アーキテクチャであって、さらに、
−各制御コンポーネントが前記計算コンポーネントの一つに接続されており、前記制御コンポーネントが、前記計算コンポーネントに向けて少なくとも一つの計算命令を発生可能な、複数のコンフィギュラブル制御コンポーネントと、
−前記制御コンポーネントを構成するための第二の信号の集合とを含むことを特徴とする論理計算アーキテクチャ。
【請求項２】
前記計算コンポーネントが、データ集合について計算を実施し、各集合が複数のビットを含むことを特徴とする特許請求の範囲第１項に記載の論理計算アーキテクチャ。
【請求項３】
前記制御コンポーネントが、前記プロセッサに接続されることを特徴とする特許請求の範囲第１項または第２項に記載の論理計算アーキテクチャ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブル電子装置の分野に関する。この分野の一つの大きな課題は、利用できる時間および場所をできるだけ有効に活用することにある。そのため、様々な開発により、ダイナミック・リコンフィギュラブルな解決方法、すなわち計算を止めない解決方法を提供することが試みられてきた。そのために最も簡単な概念は、独立した別の部分が計算中であるときアーキテクチャの一部を構成することである。
【０００２】
本発明は、特にマルチレベルのコンフィギュレーションモードの設計に関し、すなわち、多数のプログラマブルコンポーネントを含むアーキテクチャにおいて前記プログラマブルコンポーネントの二つのコンフィギュレーションモードを共存させ、アーキテクチャ全体を構成するグローバルモードと、プログラマブルコンポーネントの小さい部分集合を構成するローカルモードとを共存させることに関する。
【背景技術】
【０００３】
従来技術では、既に、米国特許第６０２３７４２号明細書によって、スタティック制御およびダイナミック制御の組み合わせにより機能性が管理されるコンフィギュラブル計算アーキテクチャが知られている。スタティック制御は、メモリに含まれるコンフィギュレーションであり、ダイナミック制御は、コントローラから送られる信号を制御経路により解釈し、これらの命令に応じて論理ユニットを構成するものである。この従来技術文献は、ローカルレベルとグローバルレベルとの二つのコンフィギュレーションレベルをサポートするアーキテクチャを提案している。しかしながら、ワード（たとえば８ビットバイト）に関して作用する論理素子に対してこのアーキテクチャは構成されない。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、複数のコンフィギュレーションモードを含み、ワードに関する論理計算コンポーネントを用いた、コンフィギュラブル論理コンポーネントのアーキテクチャを提案することにより、従来技術の不都合を解消することをめざしている。
【課題を解決するための手段】
【０００５】
このため、本発明は上記のタイプのものであり、その最も広い意味において、
−複数のコンフィギュラブル計算コンポーネントと、
−複数の相互接続コンポーネントと、
−アーキテクチャを構成し、すなわち、前記計算コンポーネントと前記相互接続コンポーネントとを接続するための第一の信号の集合と、
−前記第一のコンフィギュレーション信号の集合を管理するプロセッサとを含む、論理計算アーキテクチャに関し、このアーキテクチャは、さらに、
−各制御コンポーネントが前記計算コンポーネントの一つに接続されており、前記制御コンポーネントが、前記計算コンポーネントに向けて少なくとも一つの計算命令を発生可能な、複数のコンフィギュラブル制御コンポーネントと、
−前記制御コンポーネントを構成するための第二の信号の集合とを含むことを特徴とする。
【０００６】
好適には、前記計算コンポーネントが、データ集合について計算を実施し、各集合が複数のビットを含む。
【０００７】
有利には、前記制御コンポーネントが、前記プロセッサに接続される。
【０００８】
本発明は、添付図面に関して単に例として挙げた本発明の実施形態の以下の説明により、いっそう理解されるであろう。
【発明を実施するための最良の形態】
【０００９】
コンフィギュラブル論理計算アーキテクチャは、
−計算ユニットとルーティングユニットとからなるネットワークを含んで外部素子から供給されるデータについて論理計算を実施する操作層と、
−前記計算ユニットおよびルーティングユニットをアレンジすることによりデータの循環方向を組織可能にする一方で、所定の計算を実施するように前記計算ユニットを構成可能にするコンフィギュレーション層との、２つの層を含む。
【００１０】
このアーキテクチャの実施形態では、コンフィギュレーション層が、計算ユニットの構成素子にコンフィギュレーション情報を直接送る。このアーキテクチャが多数の計算ユニットおよびルーティングユニットを含む場合、操作層のコンフィギュレーションを長くすることができる。
【００１１】
本発明によるアーキテクチャは、いわゆる「グローバル」モードと、いわゆる「ローカル」モードと、いわゆる「ハイブリッドモード」との複数のモードに従って操作層の素子を再構成可能である。各モードによる再構成はダイナミックである。
【００１２】
「グローバル」モードのために使用されるアーキテクチャは、操作層と、コンフィギュレーション層と、「コンフィギュレーションコントローラ」と呼ばれるコンフィギュレーション操作特有のプロセッサとを含む。コンフィギュレーション層と操作層とは、複数のグループに分割され、操作層のグループが、コンフィギュレーション層のグループにより構成される。操作層の各グループは、複数のコンフィギュラブル論理素子を含む。操作層のグループ全体をクロック周期ごとに再構成可能である。操作層の第一のグループにより計算を実施する間、コンフィギュレーションコントローラは、操作層の第二のグループに対応するコンフィギュレーション層のグループのコンフィギュレーションを修正する。次のクロックのときに、操作層の第二のグループが、対応するコンフィギュレーション層のグループに応じて再構成される。さらに、コンフィギュレーション管理専用のプロセッサの存在により、条件付きのコンフィギュレーション管理が許可される。すなわち、操作層の素子により計算される結果が、アーキテクチャのコンフィギュレーションに影響を及ぼしうる。そのため、アーキテクチャは、操作層とコンフィギュレーションコントローラとの間に通信バスを配置している。
【００１３】
さらに、本発明によるアーキテクチャは、「ローカル」コンフィギュレーションモードの実施に関する。本発明によるアーキテクチャは、計算ユニットに、いわゆる制御ユニットを付加することを提案する。これらの制御ユニットは、少なくとも一つ（好適には８個）の命令のシーケンサと、コントロールユニットの状態をいつでも知ることができる最終的な状態装置とを含んでいる。コンフィギュレーション層は、制御ユニットに、計算ユニットの制御命令を含む情報を送る。これらの命令の集合が、マイクロプログラムを形成する。次に、シーケンサは、計算ユニットへのマイクロプログラムの送付を命令する。このようにして、計算ユニットは、コンフィギュレーションコントローラを用いずに、異なるコンフィギュレーションを必要とする一連の命令を実行する。
【００１４】
図１は、「計算ユニット−制御ユニット」のアセンブリを示している。計算ユニット（１）は、少なくとも一つの入力データフロー（３）と、少なくとも一つの出力データフロー（４）とに接続されている。計算ユニットは、さらに、接続線（５）により制御ユニット（２）に接続されている。制御ユニット（２）は、デマルチプレクサ（２１）と、モードコントローラ（２２）と、ローディングモジュール（２３）と、レジスタ装置（２４）と、出力モジュール（２５）とからなる。モードコントローラ（２２）は、アーキテクチャのコンフィギュレーションに応じて、入ってくるコンフィギュレーション信号をルーティングするようデマルチプレクサ（２１）に命令する。
−グローバルモード、すなわち計算ユニット（１）がコンフィギュレーション層により直接構成されるモードでは、信号は、接続線（２６）によりデマルチプレクサ（２１）から出力モジュール（２５）に直接伝達される。出力モジュール（２５）は、接続線（５）により計算ユニット（１）にコンフィギュレーション情報を伝達する。
−ローカルモード、すなわち計算ユニット（１）が制御ユニット（２）により構成されるモードでは、デマルチプレクサ（２１）は、ローディングモジュール（２３）にコンフィギュレーション情報を伝達し、その場合、ローディングモジュールは、レジスタ装置（２４）にマイクロプログラムをダウンロードする。マイクロプログラムは、このマイクロプログラムを指定する命令の制御下でロードされると、制御ユニットにより実行される。
【００１５】
マイクロプログラムの実行は、次の二つの手続に従うことができる。
−第一の手続は、制御ユニットのレジスタに保存された命令を一回だけ実行することからなる。
−第二の手続は、ループ状に、すなわちコンフィギュレーションコントローラによる実行の停止まで、命令を実行することからなる。
【００１６】
追加レジスタが計算ユニットに存在し、前記追加レジスタは、マイクロプログラムの終了アドレスを含む。
【００１７】
さらに、アーキテクチャの他の実施形態では、アーキテクチャの幾つかの論理計算素子が、「グローバル」に構成され、他の論理素子が「ローカル」に構成される。
【００１８】
このアーキテクチャは、好適には、ビット「ワード」すなわちビットの集合に作用する計算ユニットから構成される。計算ユニットへの計算のプログラムはさらに難しいが、クロックごとにずっと多くのビットが処理されるので、計算プロセスが加速される。ワードごとに計算アーキテクチャを用いる場合、実施される計算が複雑化するので、コンフィギュレーションが難しくなる。本発明によるアーキテクチャの使用により、アーキテクチャのコンフィギュレーションの難易度を下げることができる。
【００１９】
図２は、論理計算ユニットを示している。図２に示された論理計算ユニットは、ダイナミック・リコンフィギュラブルユニットであり、ワードに関して簡単な論理演算操作を実行できる。このコンポーネントは、複数のレジスタ（好適には４個）と、乗算器を含む論理演算ユニット（ＡＬＵ：「Ａｒｉｔｈｍｅｔｉｃ  ａｎｄ  Ｌｏｇｉｃ  Ｕｎｉｔ」）と、状態装置とから構成される。
【００２０】
以上、本発明について例として説明した。当業者が、この特許範囲を逸脱することなく本発明の様々な変形実施形態を実現できることはいうまでもない。
【図面の簡単な説明】
【００２１】
【図１】「計算ユニット−制御ユニット」のアセンブリを示す図である。
【図２】論理計算ユニットを示す図である。
【符号の説明】
【００２２】
１  計算ユニット
２  制御ユニット
３  入力データフロー
４  出力データフロー
５  接続線
２１  デマルチプレクサ
２２  モードコントローラ
２３  ローディングモジュール
２４  レジスタ
２５  出力モジュール
【図１】
2005521949.tif 000002
【図２】
2005521949.tif 000003
【国際調査報告】
2005521949.tif 000004
2005521949.tif 000005
2005521949.tif 000006
2005521949.tif 000007
2005521949.tif 000008
2005521949.tif 000009