(57)【要約】本発明は代数的および／または論理的な機能を実施する機能セル手段と、情報を受信、記憶および／または出力するメモリセル手段とを備えたデータ処理のためのセルエレメントフィールドに関する。機能セル・メモリセル組合せが形成されており、この機能セル・メモリセル組合せにおいては、機能セル手段から制御コネクションがメモリセル手段に案内されている。
2006501782.tif 000002
【特許請求の範囲】
【請求項１】
代数的および／または論理的な機能を実施する機能セル手段と、情報を受信、記憶および／または出力するメモリセル手段とを備えたデータ処理のためのセルエレメントフィールドにおいて、
機能セル・メモリセル組合せが形成されており、該機能セル・メモリセル組合せにおいては前記機能セル手段から制御コネクションが前記メモリセル手段に案内されていることを特徴とする、セルエレメントフィールド。
【請求項２】
機能および／または配線をリコンフィギュレーション可能および／または予め設定可能である複数のユニット、例えば機能セルおよび／またはメモリセルを備えたプロセッサ、コプロセッサおよび／またはマイクロコントローラを形成する、請求項１記載のセルエレメントフィールド。
【請求項３】
前記機能セルは算術的な論理ユニットとして形成されている、請求項１または２記載のセルエレメントフィールド。
【請求項４】
前記算術的な論理ユニットは拡張されたＡＬＵとして形成されている、請求項１から３までのいずれか１項記載のセルエレメントフィールド。
【請求項５】
前記メモリセルはデータを揮発性および／または不揮発性に記憶するよう構成されている、請求項１から４までのいずれか１項記載のセルエレメントフィールド。
【請求項６】
前記メモリセルは処理すべきデータおよび／または処理すべきプログラムステップを記憶するよう構成されている、請求項１から５までのいずれか１項記載のセルエレメントフィールド。
【請求項７】
前記メモリセルは該メモリセルを制御する機能セルの制御に基づき、記憶されている情報を前記機能セルに案内されているバスに直接的および／または間接的に供給するよう構成されている、請求項１から６までのいずれか１項記載のセルエレメントフィールド。
【請求項８】
少なくとも１つのメモリセルおよび／または機能セルにレジスタ、例えばメモリセルと機能セルとの間の情報経路に配置されている逆方向レジスタが配属されている、請求項１から７までのいずれか１項記載のセルエレメントエレメント。
【請求項９】
前記メモリセルは、該メモリセルを制御する機能セル、入出力セルおよび／または算術的論理ユニットを備えた該メモリセルを制御しないセルからの情報を受信するよう配置されている、請求項１から８までのいずれか１項記載のセルエレメントフィールド。
【請求項１０】
前記機能セル・メモリセル組合せには、外部ユニットおよび／または他の機能セル、機能セル・メモリセル組合せおよび／またはメモリセルに情報を送信する、および／または外部ユニットおよび／または他の機能セル、機能セル・メモリセル組合せおよび／またはメモリセルから情報を受信する、少なくとも１つの入出力手段が配属されている、請求項１から９までのいずれか１項記載のセルエレメントフィールド。
【請求項１１】
前記入出力手段は同様に前記機能セルから制御命令を受信するよう構成されている、請求項１から１０までのいずれか１項記載のセルエレメントフィールド。
【請求項１２】
制御部は以下の命令の少なくとも一部、殊に全てを伝送するよう構成されている、および／または前記メモリセルないし入出力セルは以下の命令を復号するよう構成されている：それぞれ例えば内部および／または外部アクセスに関するＤＡＴＡ  ＷＲＩＴＥ／ＲＥＡＤ、ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＷＲＩＴＥ／ＲＥＡＤ、ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＷＲＩＴＥ／ＲＥＡＤ、ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＩＮＣＲＥＭＥＮＴ、ＳＴＡＣＫＰＯＩＮＴＥＲ  ＷＲＩＴＥ／ＲＥＡＤならびにＰＵＳＨ、ＰＯＰ、ＯＰＣＯＤＥ、ＦＥＴＣＨ、
請求項１から１１までのいずれか１項記載のセルエレメントフィールド。
【請求項１３】
前記機能セルはただ１つのマスタとして、制御コネクションおよび／または制御コネクションとして使用されるバス部にアクセス可能である、請求項１から１２までのいずれか１項記載のセルエレメントフィールド。
【請求項１４】
前記機能セルはメモリセルおよび入出力セルのうちの少なくとも１つに隣接して配置されている、請求項１から１３までのいずれか１項記載のデータ処理のためのセルエレメントフィールド。
【請求項１５】
前記セルエレメントは多次元、例えばマトリクス状に配置されており、前記機能セルおよび／または隣接するメモリセルないし入出力セルは上の列からデータを受信可能であり、下の列にデータを出力可能であり、列内にバスが設けられており、前記機能セルおよび少なくとも１つのメモリセルおよび／または入出力セルは同一の列に存在する、請求項１から１４までのいずれか１項記載のセルエレメントフィールド。
【請求項１６】
代数的および／または論理的な機能を実施する機能セルおよび情報供給セル、例えばメモリセルおよび／または情報を受信および／または出力するおよび／または記憶する入出力セルを備えたセルエレメントフィールド、例えば多次元セルエレメントフィールドを動作させる方法において、
少なくとも１つの前記機能セルは制御命令を少なくとも１つの情報供給セルに出力し、該情報供給セルにおいては前記機能セルに対する制御命令情報に応答して処理を行い、
前記機能セルはシーケンサ的にデータを処理するために前記情報供給セルから供給される情報に応答して別のデータ処理を実施するよう構成されていることを特徴とする、セルエレメントフィールドを動作させる方法。
【請求項１７】
前記機能セルは以下の制御命令：
ＯＰＣＯＤＥ  ＦＥＴＣＨ、
ＤＡＴＡ  ＷＲＩＴＥ  ＩＮＴＥＲＮ、
ＤＡＴＡ  ＷＲＩＴＥ  ＥＸＴＥＲＮ、
ＤＡＴＡ  ＲＥＡＤ  ＩＮＴＥＲＮ、
ＤＡＴＡ  ＲＥＡＤ  ＥＸＴＥＲＮ、
ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＩＮＴＥＲＮ、
ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＥＸＴＥＲＮ、
ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＲＥＡＤ  ＩＮＴＥＲＮ、
ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＲＥＡＤ  ＥＸＴＥＲＮ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＩＮＴＥＲＮ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＥＸＴＥＲＮ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＲＥＡＤ  ＩＮＴＥＲＮ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＲＥＡＤ  ＥＸＴＥＲＮ、
ＳＴＡＣＫＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＩＮＴＥＲＮ、
ＳＴＡＣＫＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＥＸＴＥＲＮ、
ＳＴＡＣＫＰＯＩＮＴＥＲ  ＲＥＡＤ  ＩＮＴＥＲＮ、
ＳＴＡＣＫＰＯＩＮＴＥＲ  ＲＥＡＤ  ＥＸＴＥＲＮ、
ＰＵＳＨ、
ＰＯＰ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＩＮＣＲＥＭＥＮＴ
のうちの少なくとも一部を出力し、前記セルエレメントの動作中に前記制御命令の少なくとも一部、殊に全てを必要に応じて出力する、請求項１６記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はセルエレメントフィールドおよびこのセルエレメントフィールドを動作させる方法に関する。したがって本発明は殊にリコンフィギュアラブルなデータ処理アーキテクチャに関する。
【０００２】
リコンフィギュアラブルなアーキテクチャとは殊に、動作時に機能および／または配線が変更される複数のエレメントを有するモジュール（ＶＰＵ）と解される。これらのエレメントには算術的な論理ユニット、ＦＰＧＡ領域、入出力セル、メモリセル、アナログのコンポーネントなどが属する。この種のモジュールは例えばＶＰＵとして知られている。これらのモジュールは典型的にはＰＡＥと称される１次元または多次元に配置されている算術的および／または論理的および／またはアナログ的なおよび／または記憶性および／または配線されたコンポーネントおよび／または通信性の周辺コンポーネント（ＩＯ）を包含し、これらのコンポーネントは直接的にまたは１つまたは複数のバスシステムを介して相互に接続されている。ＰＡＥは任意の構造、組合せおよび階層で配置構成されており、このような配置構成はＰＡＥアレイまたは省略してＰＡと称される。ＰＡＥアレイにはコンフィギュレーションされるユニットを配属することができる。原則的にＶＰＵモジュールの他にシストリックアレイ、ニューラルネット、マルチプロセッサシステム、複数の計算ツールおよび／または論理セルを備えたプロセッサ、配線モジュールおよびネットワークモジュール例えばクロスバー回路などもＦＰＧＡ、ＤＰＧＡ、トランスピュータなどと同様に公知である。
【０００３】
ＶＰＵ技術の本質的な観点は例えば本出願人の以下の保護権ならびに引用する保護権に属する他の出願に記載されている：
P 44 16 881.0-53,  DE 197 81 412.3,  DE197 81 483.2,  DE 196 54 846.2-53,
DE 196 54 593.5-53,  DE 197 04 044.6-53,  DE 198 80 129.7,  DE 198 61 088.2-53,
DE 199 80 312.9,  PCT/DE 00/01869,  DE 100 36 627.9-33,  DE100 28 397.7,
DE 101 10 530.4,  DE 101 11 014.6,  PCT/DE 00/10516,  EP 01 102 674.7,
DE 102 06 856.9,  60/317,876,  DE 102 02 044.2,  DE 101 29 237.6-53,
DE 101 39 170.6。
【０００４】
前述の刊行物が殊にアーキテクチャエレメントの配線、コンフィギュレーション、構成、トリガ方法などの特徴および詳細に関する開示を目的として組み入れられていることを言及しておく。
【０００５】
このアーキテクチャはしたがってデータ処理ステップの並列的および／またはベクトル的な割合が高いやり方でデータ処理が行われる限り、従来のプロセッサアーキテクチャに比べ顕著な利点を有する。しかしながら配線および所与のプロセッサアーキテクチャ的な特徴の利点がもはや全面的に実現できない場合には、他のプロセッサユニット、コプロセッサユニットまたは一般的なデータ処理ユニットに対するこのアーキテクチャの利点は僅かなものとなる。
【０００６】
このことは殊に、従来通り最善にはシーケンサ構造においてマッピングできるデータ処理ステップを実行すべき場合である。典型的にはシーケンサでもって殊に良好に実行できるデータ処理ステップを殊に迅速且つ効果的に実行できるようにリコンフィギュアラブルなアーキテクチャを構成して使用することが望ましい。
【０００７】
本発明の課題は産業的な用途のために新たなものを提供することである。
【０００８】
この課題の解決手段は独立請求項に記載されている。有利な実施形態は従属請求項に記載されている。
【０００９】
したがって本発明の第１の重要な観点によれば、粗粒度の代数的および／または論理的な機能を実施する機能セル手段と、情報を受信、記憶および／または出力するメモリセル手段とを有する、殊にリコンフィギュレーションされないエレメントを妨害することなく実行時に機能および／または配線をリコンフィギュレーション可能である、データ処理を行うセルエレメントフィールドにおいて、機能セル・メモリセル組合せが形成されており、この機能セル・メモリセル組合せにおいては機能セル手段から制御コネクションがメモリセル手段に案内されていることが提案される。この制御コネクションはメモリからのアドレス入力／出力および／またはデータ入力／出力を、典型的にはＡＬＵ−ＰＡＥの所属の機能セルが制御できるようにするために使用される。つまり次に伝送される情報がアドレスとしてまたはデータとして処理されるべきか否か、また読み出しアクセスおよび／または書き込みアクセスが必要であるか否かを表すことができる。例えばＲＡＭ−ＰＡＥが考えられるメモリセルないしメモリセル手段から、例えばＡＬＵ−ＰＡＥが考えられる機能セル手段へのデータの伝送は、ＡＬＵによって実行されるべき新たな命令をこのＡＬＵにロードできることを可能にする。機能セル手段とメモリセル手段を集積することによって１つの構造的なユニットに統合できることを言及しておく。そのような場合には、データをメモリセル手段および／またはＡＬＵに供給するために単一のバス接続を使用することが可能である。適切な入力レジスタおよび／または出力レジスタを設けることができ、また望ましい場合には、これとは異なる付加的なデータレジスタおよび／またはコンフィギュレーションレジスタをメモリセル手段として設けることができる。
【００１０】
複数の異なるセルないしセルグループを包含するセルエレメントフィールドを構成できることも言及しておく。この場合有利には種々のセルを用いてストライプなどの規則的なパターンが設けられ、何故ならばこの非常に規則的な配置構成によってハードウェア的な構造および動作を同様に容易にすることができるからである。少数の異なるセルエレメントからなるそのようなストライプ状または他の規則的な構造においては、例えば集積されている機能セル手段・メモリセル手段組合せ、すなわち本発明による機能セル手段とメモリセル手段とが集積されているセルをフィールドの中央に設けることができ、この中央においては上述のように従来のデータストリーム用途に対して非常に良好な結果をもたらすので、典型的には極僅かなプログラムステップがシーケンサ構造内部で実行されるにすぎず、これに対しフィールド端部では複雑なシーケンサ構造を構成することができ、このフィールド端部におけるシーケンサ構造においては、独立したユニットを表すＡＬＵ−ＰＡＥを相応の制御線またはコネクションを使用ないし配置することによって、独立したＲＡＭ−ＰＡＥまた必要に応じて一連のＩ／Ｏ−ＰＡＥの隣に配置することができる。何故ならばこのフィールド端部においては例えばセルエレメントフィールドのフィールド中央領域において生じた結果を中間記憶するため、および／またはデータストリームに対してこの結果によって必要とされるデータを事前に格納するため、および／または相応に処理するために頻繁に多数のメモリが必要とされるからである。
【００１１】
メモリセル手段および機能セル手段を集積しているセルが例えばフィールドの中央に設けられている場合には、このセルにＡＬＵのような機能セル手段によって実施されるべき種々の命令のための小さいメモリを設けることができる。ここでは殊に命令メモリないしコンフィギュレーションメモリをデータメモリから分離することができ、また択一的に複数、例えば２つの異なるシーケンスを実行できる程の大きさの機能メモリを構成することができる。実行すべきそれぞれのシーケンスをセルにおいて発生した結果および／または外部からセルに到来した制御信号、例えばキャリー、オーバフロー信号、トリガ信号に応答して行うことができる。このようにしてこの配置構成をウェーブ・リコンフィギュレーション（Wave-Reconfiguration）の方法に使用することもできる。
【００１２】
このようにして、機能セルないし機能セル手段とメモリセルないしメモリセル手段との間に機能セルを専門に制御する専用の制御コネクションを設けるだけで、適切なバスを介して接続されている単に２つのエレメントを用いてその他のさらなる措置および／または構造的な変更を必要とすることなくセルエレメントフィールドにシーケンサ構造を既に構成することができる。メモリセルにはデータ、アドレス、プログラムステップを従来のプロセッサからそれ自体公知のやり方で格納することができる。２つのエレメントは異なるやり方でも相応のコンフィギュレーションであれば使用できるので、シーケンサ構造もベクトル的および／または並列化可能な構造も殊に良好に適合させることができる殊に効果的な構造形態が得られる。つまり適切にＰＡＥを構成することによって、例えば空間的に異なる２つの方向において機能するＰＡＥを設けることによって、および／または、データを通過させるレジスタが設けられているセルユニットによって並列化を支援することができる。
【００１３】
セルエレメントフィールドにおける単に２つのセル、すなわち機能セルと情報供給セルを使用することによって、リコンフィギュアラブルなセルエレメントフィールド内に複数のシーケンサ的な構造を構成できることは明らかである。このことは、例えばマルチタスク機能を備えたオペレーションシステムでのデータ処理において頻繁に、種々のそれ自体相互に異なる一連のタスクを実行する必要がある場合には有利である。この場合このような複数のタスクを単一のセルフィールドにおいて効果的に同時に処理することができる。リアルタイムの用途に関する利点も明らかである。さらには、本発明による制御コネクションが設けられているセルエレメントフィールドにおいて構成される個々のシーケンサ構造を、例えば優先順位の低いタスクが緩慢に実行されることによって電流消費を低減させるために異なるクロックレートで動作させることも可能である。さらには、それ自体で十分に並列的であるアルゴリズムを実施する際に、シーケンサ的なプログラム部をフィールドにおいて並列的またはベクトル的に実行する、またこれとは逆も実行することが可能である。
【００１４】
しかしながら典型的には、セルエレメントフィールド内のシーケンサ的な構造は、このシーケンサ的な構造が隣接セルまたはバスとのコネクションによって接続されている領域にあっても、または空間的に異なっても良い独立した別個に使用することもできる、ＡＬＵ−ＰＡＥのような機能セルエレメントとＲＡＭ−ＰＡＥのようなメモリセルエレメントとの組合せであっても、クロック周波数が高いことは有利である。このことは、必要とあれば非常に高速に並列化される逐次的なプログラミング部が全体のデータ処理を妨害することなく、一般的なデータフロー処理に使用されるという利点を有する。この例は例えばハフマン符号化によって表されており、このハフマン符号化は並列的よりも逐次的な方が実質的により良好に実行可能であり、またそれと同時にＭＰＥＧ４符号化のような用途にとって重要な役割を担う。しかしながらこの場合ＭＰＥＧ４符号化の他の実質的な部分は良好に並列化が可能である。並列的なデータ処理がアルゴリズムの大分部に使用され、また逐次的な実行ブロックがこのアルゴリズムに設けられる。典型的にはシーケンサ領域においてクロック周波数をファクタ２〜４高めれば既に十分である。
【００１５】
種々のセルエレメントのストライプ状の配置構成に代わり、他のグループ化、殊に多次元的なグループ化も選択できることを言及しておく。
【００１６】
機能および／または配線をコンフィギュレーション可能なセルを有するセルエレメントフィールドは明らかであるようにプロセッサ、コプロセッサおよび／またはマイクロコントローラ、ないしこれらが並列的に複数構成されたもの、またはこれらの組合せを形成することができる。
【００１７】
機能セルは典型的には算術的な論理ユニットとして形成されており、この場合機能セルは殊に粗粒度のエレメントとして表されているが、例えば細粒度の状態マシンを設けてもよい。殊に有利な実施例においては、ＡＬＵはいわゆる拡張されたＡＬＵ（ＥＡＬＵ）であり、このようなＥＡＬＵは本出願人の先の明細書に記載されている。拡張は殊に制御線制御、命令復号ユニットなどを包含し、その限りにおいては必要である。
【００１８】
メモリセルはデータおよび／または情報を揮発性および／または不揮発性に記憶することができる。メモリセルに格納されている情報が、プログラムステップであれ、データにアクセスするためのアドレスであれ、またはレジスタ的ないしヒープ的に格納されているデータであれ、揮発性のデータとして格納されている場合には、動作中に完全なリコンフィギュレーションを行うことができる。択一的に、不揮発性のメモリセルを設けることもできる。不揮発性のメモリは例えばＥＥＰＲＯＭ領域として設けることができ、この領域には装置の起動時に実施すべき基本的なＢＩＯＳプログラムが格納される。このようにして別の構成要素を要することなくデータ処理装置を起動させることができる。コスト的および／または空間的な理由により何度も同一のプログラム部を実行すべきことが決定される場合であっても不揮発性のデータメモリを設けることができ、そのような一定のプログラム部においても、例えばウェーブリコンフィギュレーションの様式に応じて動作時に変更することができる。このような不揮発性のメモリを設けて使用する可能性は本出願人の別の保護権の対象である。例えばＢＩＯＳプログラムを固定に格納し、それにもかかわらずメモリセルを他の目的に使用できるようにするために、揮発性のデータも不揮発性のデータも記憶することができる。
【００１９】
メモリセルは有利には、十分な数の処理すべきデータおよび／または実行すべきプログラム部を記憶できるように構成されている。これらのプログラム部は、単一の機能セル、殊に所属のＰＡＥ、すなわち殊にメモリセルを制御する機能セルが次のステップにおいて何をすべきかをそれぞれ設定するプログラムステップも、フィールド領域または他のフィールドに関する全体のコンフィギュレーションも包含できることを言及しておく。そのような場合には、構成されたシーケンサ構造が命令を出力し、この命令に基づきセルエレメントフィールド領域のリコンフィギュレーションを行うことが容易に可能である。したがってこのコンフィギュレーションをトリガする機能セルはこの場合同時にロードロジックとしても機能する。
【００２０】
他のセルもやはりそのセルにおいてシーケンサ的なデータ処理が行われるようにコンフィギュレーションを行うことができ、またそのセルにおいてプログラム処理の経過時に他のセルをコンフィギュレーションないしリコンフィギュレーションすることがやはり可能であることを言及しておく。したがってセルエレメント領域の反復的なコンフィギュレーションおよびシーケンサ構造および並列構造を有するプログラムの入れ子が可能であり、これらのプログラムはバブーシュカのように相互に入れ込まれている。
【００２１】
ここでは殊に入出力セルによって、単一の集積された構成要素の外部からの別のセルエレメントフィールドにアクセスすることができ、このことは全体の計算能力を大幅に向上できることを言及しておく。殊にコンフィギュレーションが行われている際に、セルエレメントフィールドにコンフィギュレーションされるシーケンサ構造のコード部内では、必要に応じて、それぞれのシーケンサ構造によってのみ監視される割り当てられたセルエレメントフィールドにおいてコンフィギュレーション要求を実施する、および／または全てのセルエレメントフィールドの均等の占有が行われることを保証するためにこのような要求をコンフィギュレーションマスタユニットに出力することが可能である。したがって、必要なコンフィギュレーションをセルまたはロードロジックに伝送することによっていわばサブプログラムの呼び出しが行われる。このことはそれだけで保護に値するものとみなされる。
【００２２】
セル自体が他のセルエレメントフィールド領域のコンフィギュレーションに対する権限を有する限り、このセルにハードウェア的またはソフトウェア的に実施されるＦＩＬＭＯ構造などを規則的なリコンフィギュレーションを保証するために設けることができることを言及しておく。命令の実行中に、実行すべきコードないし実行すべきプログラムが変わるようメモリセルに書き込みを行う可能性を示しておく。しかしながら殊に有利な変形形態においてはこの種の自己修正（ＳＭ）は機能セルを介する相応の制御によって抑制されている。
【００２３】
メモリセルは記憶している情報を、このメモリセルを制御する機能セルの制御に基づき機能セルに案内されているバスに直接的または間接的に供給することが可能である。殊に間接的な出力は、２つのセルが隣接しており且つメモリセルの出力側に直接は接続することができないバスセグメントを介して、制御によって要求される情報がＡＬＵ−ＰＡＥに到来する必要がある場合に行うことができる。そのような場合には、メモリセルはデータをバスシステムへと、殊に逆方向レジスタ（Backward-Register）を介して出力することができる。したがって、メモリセルおよび／または機能セルの内の少なくとも１つがメモリセルと機能セルとの間の情報経路内に配置できる逆方向レジスタを有する場合には有利である。そのような場合これらのレジスタには別の機能を設ける必要はない。このことは例えばＬＯＡＤ＋＋を実現するために、ＰＡＥへのロード前のデータの変更について、典型的なマイクロプロセッサの従来のＬＯＡＤ命令に応じて、さらなる処理のためにメモリセルからデータを要求する場合には容易に可能であるにもかかわらず行う必要はない。
【００２４】
有利にはメモリセルが、このメモリセルを制御する機能セルから情報を受信するよう配置され、この際入出力セルおよび／またはメモリセルを制御しないセルを介する情報供給もさらに可能である。殊に、データが入出力セルからメモリセルに書き込まれるべき場合には、この入出力セル（Ｉ／Ｏ−ＰＡＥ）が機能セルによって制御されるとしても有利である。例えば、メモリセルに書き込まれるべき情報、または必要に応じて直接的に機能セル（ＰＡＥ）に伝送される情報も読み出すことができるアドレスをＩ／Ｏ−ＰＡＥへとＡＬＵ−ＰＡＥから伝送することができる。この関係において、このアドレスをＩ／Ｏ−ＰＡＥにおけるアドレス置換テーブル（アドレス変換テーブル）、アドレス変換バッファまたはＭＭＵのような構造を介して設定できることを言及しておく。そのような場合には典型的なマイクロプロセッサの完全な機能が得られる。機能セル手段、メモリセル手段および／または機能セル手段・メモリセル手段組合せにＩ／Ｏ機能も統合できることを言及しておく。
【００２５】
したがって機能セルとメモリセルとの組合せには、たとえ集積された機能セル・メモリセル組合せであれ、または別個のユニットから構成された機能セル・メモリセルの組合せであれ、有利な変形形態においては少なくとも１つの入出力手段が配属されており、この入出力手段を用いて外部ユニット、他の機能セル、機能セル・メモリセル組合せおよび／またはメモリセルに情報を送信することができる、および／またはこれらから情報を受信することができる。
【００２６】
入出力ユニットは有利には同様に機能セルないし機能セル手段から制御命令を受信するために構成される。
【００２７】
有利な変形形態では制御コネクションが以下の命令の内の少なくとも一部、有利には全てを伝送するために構成されている：
ＯＰＣＯＤＥ  ＦＥＴＣＨ、
ＤＡＴＡ  ＷＲＩＴＥ  ＩＮＴＥＲＮ、
ＤＡＴＡ  ＷＲＩＴＥ  ＥＸＴＥＲＮ、
ＤＡＴＡ  ＲＥＡＤ  ＩＮＴＥＲＮ、
ＤＡＴＡ  ＲＥＡＤ  ＥＸＴＥＲＮ、
ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＩＮＴＥＲＮ、
ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＥＸＴＥＲＮ、
ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＲＥＡＤ  ＩＮＴＥＲＮ、
ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＲＥＡＤ  ＥＸＴＥＲＮ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＩＮＴＥＲＮ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＥＸＴＥＲＮ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＲＥＡＤ  ＩＮＴＥＲＮ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＲＥＡＤ  ＥＸＴＥＲＮ、
ＳＴＡＣＫＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＩＮＴＥＲＮ、
ＳＴＡＣＫＰＯＩＮＴＥＲ  ＷＲＩＴＥ  ＥＸＴＥＲＮ、
ＳＴＡＣＫＰＯＩＮＴＥＲ  ＲＥＡＤ  ＩＮＴＥＲＮ、
ＳＴＡＣＫＰＯＩＮＴＥＲ  ＲＥＡＤ  ＥＸＴＥＲＮ、
ＰＵＳＨ、
ＰＯＰ、
ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＩＮＣＲＥＭＥＮＴ。
【００２８】
このことは制御線の相応のビット幅および受信器での対応する復号によって行われる。それぞれ必要とされる制御手段および復号手段を問題なく且つ廉価に設けることができる。明白であるように、これらの命令でもって配置構成の実際上完全なシーケンサ性能が得られる。このようにして汎用プロセッサデータ処理ユニットが得られることを言及しておく。
【００２９】
典型的に配置構成は機能セルが唯一のマスタとして制御コネクションおよび／または制御コネクションとして使用されるバスセグメントないしバスシステムにアクセスできるよう選択される。したがって、従来のプロセッサにおいて設けられているような、制御線が命令線として機能する配置構成が得られる。
【００３０】
機能セルおよびメモリセルないしＩ／Ｏセルは有利には隣接して配置されている。隣接とは有利には、セルが直接的に相並んで配置されていることと解することができる。直接とは殊に、フィールドを形成するためにセルエレメントフィールドないしこのセルエレメントフィールドの部分として繰り返し設けられる集積されたユニットにそのようなセルを組合せることを意味する。択一的にセルを少なくとも密に隣接して設けることができる。集積されたないし狭小な近傍に機能セルおよびメモリセルを相並んで配置することによって、機能セルには要求される情報の制御とデータ入力との間の待ち時間は生じない、もしくは生じたとしてもそれはいずれにせよ著しいものではない。何故ならばこのような待ち時間はセル間のコネクションが過度に長い場合のみに生じるからである。このことは「直接的」と解される。待ち時間を考慮しなければならない場合には、シーケンサ構造におけるパイプライン化も行うことができる。このことはクロック周波数が非常に高い装置においては殊に重要となる。
【００３１】
従来技術においてそれ自体公知である、相応に高い周波数でクロッキングされるセルユニットを設け、また相応に高速に適切なメモリセルにアクセスできることは容易に可能であることを言及しておく。例えば、それ自体公知のアーキテクチャエレメントが機能セルに使用されるような場合であっても、これと同時に機能セルエレメントおよび所属の配線のリコンフィギュレーションが行われる。
【００３２】
殊に有利な変形形態においては、機能セル、メモリセルのような情報供給セル、Ｉ／Ｏセルなどが多次元に配置されており、殊にマトリクス状ないし１次元の格子の格子点などに配置されている。この場合のように規則的な構造が存在する場合、セルに典型的には最初の列から情報、すなわちオペランド、コンフィギュレーション、トリガ信号などが供給され、他方その下にある列においてはデータ、トリガ信号および他の情報が出力される。そのような事例では、セルが同一の列に存在し、情報供給セルから機能セルの必要な入力側への情報伝送が逆方向レジスタを介して行われる場合には有利である。パイプライン化のためにレジスタを利用する可能性を言及しておく。
【００３３】
さらには、代数的および／または論理的な機能を実施する機能セルおよび情報セル、殊にメモリセル、および／または情報を受信および／または出力および／または情報を記憶するための入出力セルを備えたセルエレメントフィールド、殊に多次元セルエレメントフィールドを動作させる方法に対する保護も主張され、ここでは少なくとも１つの機能セルが制御命令を少なくとも１つの情報供給セルに出力し、この情報供給セルでは制御命令に応答して機能セルのための情報が供給され、機能セルは供給された情報に応答してさらなるデータ処理を実施し、少なくとも一次的にシーケンサ的にデータを処理するよう構成されている。
【００３４】
すなわちリコンフィギュアラブルなフィールドにおいては、制御命令をシーケンサ構造のメモリセルに出力することによってシーケンサ的なデータ処理が実現される。制御命令として機能セルから出力することができる命令は、従来のプロセッサから公知であるようなシーケンサ的な動作を実現する。上述した命令の一部のみを実施し、それにもかかわらず完全にシーケンサ的なデータ処理を保証することは容易に可能であることを言及しておく。
【００３５】
本発明を以下においてまた例示的に図面に基づき説明する。図面において：
図１は本発明によるセルエレメントフィールドを示し、
図２ａはセルエレメントフィールドの詳細を示し、
図２ｂ，ｃは異なるデータ処理時間にある図２ａの詳細を示し、
図３は図２の詳細の代替的な実施形態を示し、
図４は図２の詳細の殊に有利な変形形態を示し、
図５は本発明の機能セル・メモリセル組合せにおける機能折りたたみの例を示し、
図６ａは逐次並列的なデータ処理の例を示し、
図６ｂは本発明の殊に有利な実施例を示し、
図７は機能折りたたみユニットの代替形態を示す。
【００３６】
図１によれば全体的に１で表されているデータ処理のためのセルエレメントフィールド１が算術的および／または論理的な機能を実施する機能セル手段２と、情報を受信、記憶および／または出力するメモリセル３とを包含し、制御コネクション４が機能セル２からメモリセル３に案内されている。
【００３７】
セルエレメントフィールド１はエレメント２，３，４の配線を自由にコンフィギュレーションでき、しかも新たにコンフィギュレーションすべきではないセルエレメント部の継続的な動作を妨害することなくコンフィギュレーションできる。
【００３８】
バスシステム５が必要に応じて切り換えられることによって、コネクションをコンフィギュレーションすることができる。さらには機能セル２をそれぞれの機能に関してコンフィギュレーションすることができる。機能セルは、リコンフィギュレーションを実現する所定の回路に拡張されている、例えば状態マシン、外部ロードロジック６との通信のためのインタフェース回路のような算術的な論理ユニットである。本出願人の相応の先行出願に示唆されている。
【００３９】
セルエレメントフィールド１のセルエレメント２，３は２次元で列と行に配置されており、それぞれのメモリセル３が機能セル２の直ぐ隣に配置されており、ここでは列毎に３つのメモリセル・機能セル組が存在し、この組において機能セルおよびメモリセルがそれぞれ制御コネクション４を介して相互に接続されている。機能セル２およびメモリセル３ないしこれらの組合せは入力側を有し、この入力側はそれぞれのセルエレメントが存在している列の上方にあるバスシステムと接続され、このバスシステムからデータを受信する。さらにセル２，３は出力側を有し、この出力側は列の下方にあるバスシステムにデータを出力する。さらに説明するように、それに加え各メモリセル３には逆方向レジスタ（ＢＷ）が設けられており、この逆方向レジスタによって列の下方にあるバスからのそれぞれの列の上方にあるバスへとデータを通過させることができる。
【００４０】
メモリセル３は同時に有利には少なくとも３つのメモリ領域、すなわちいわゆるデータ領域、プログラム記憶領域およびスタック領域などを有する。もっとも本発明の別の変形形態においては、単に２つの領域、すなわちそれぞれがメモリセル手段の部分を形成することができるデータメモリとプログラム記憶領域を設けさえすれば十分である。殊に、それ自体同種でありまたハードウェア側では同一であるメモリを異なる領域に単に分離するのではなく、物理的ないしハードウェア技術的に実際に分離されたメモリ領域を設けることができる。殊に、メモリ領域および／または深さをそれぞれの要求に適合させることができる。メモリが動作時にプログラム領域およびデータ領域を有するようにメモリを設計する場合、このメモリないしメモリ領域をデータ領域およびプログラム領域に同時にアクセスするために例えばデュアル・ポートメモリとして構成することは有利となる。また、殊に１つの集積された領域に形成されているメモリセル手段・機能セル手段組合せの内部において密に結合されているメモリ領域を純粋なキャッシュメモリとして設けることも可能であり、このキャッシュメモリには殊に、離れたメモリスペースからのデータがデータ処理中の高速アクセスのために予めロードされる。
【００４１】
制御コネクション４および機能セル内の所属の回路（図２のＡＬＵ）ないしメモリセル（図２のＲＡＭ）を除いて、図１のデータ処理のためにセルエレメントフィールドはリコンフィギュアラブルなデータ処理装置、例えば本出願人のＸＰＰテクノロジに応じるＶＰＵにおいては慣例且つ公知であるような従来のセルエレメントフィールドである。殊に、図１のセルエレメントフィールドが公知のように動作できるならば、ウェーブリコンフィギュレーション、デバッギング、トリガ信号の伝送などのための相応の回路を有する。
【００４２】
本発明のセルエレメントフィールドの第１の特徴は、図２ａ〜２ｃに関連させて以下詳細に説明する制御コネクション４と所属の回路から生じる。図１において制御コネクション４は常に左に位置する機能セルエレメントから右に位置するメモリセルが案内されており、しかもにまさにそのようなメモリセルのみが示されているが、メモリセルが受信、記憶および／または出力できる情報に対するメモリ要求が広範である場合には、他の位置にあるメモリセルに問い合わせる、および／または、必要に応じて１つ以上のメモリセルに問い合わせることができるようにするために、制御線路の代わりにコンフィギュレーション可能な配線を設けることも勿論可能であることを言及しておく。しかしながら明瞭にするために、図１および図２においては固定的に設けられている個々の制御コネクションのみが参照され、このことは本発明の理解を実質的に容易にする。制御コネクションはそれ以外では必要に応じて、相応のプロトコルを前提として、従来の線路に置換することが可能である。
【００４３】
図２では機能セル２がＡＬＵと表されており、またメモリセル３がＲＡＭと表されている。セルが存在する列の上方にはバス５ａが延びており、このバス５ａは前述の逆方向レジスタ３ａをメモリセルの入力側３ｂよびＡＬＵの入力側２ｂと接続する。列の下方において延びているバスシステムは５ｂで表されている。バスシステム５ａ，５ｂは関連する部分のみが示されている。バスシステム５ｂはデータをＡＬＵ２の出力側２ｃ、ＲＡＭ３の出力側３ｃからデータを受け取り、データを逆方向レジスタの入力側３ａ１に供給することが分かる。
【００４４】
ＡＬＵ２はこれと同時に別の入力側２ａ１および出力側２ａ２を有し、これらの入出力側を別のバス部分に切り換えることができ、このバス部分を介してＡＬＵはオペランドのようなデータを受信する、ないし結果を出力する。
【００４５】
制御コネクション４はＡＬＵの拡張された回路によって継続的に制御されており、ここでは多数のビットを伝送できるコネクションを表す。制御コネクション４の幅は少なくとも次の制御命令：ＤＡＴＡ  ＷＲＩＴＥ、ＤＡＴＡ  ＲＥＡＤ、  ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＷＲＩＴＥ、  ＡＤＲＥＳＳＰＯＩＮＴＥＲ  ＲＥＡＤ、  ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＷＲＩＴＥ、  ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＲＥＡＤ、ＰＲＯＧＲＡＭＭＰＯＩＮＴＥＲ  ＩＮＣＲＥＭＥＮＴ、  ＳＴＡＣＫＰＯＩＮＴＥＲ  ＷＲＩＴＥ、ＳＴＡＣＫＰＯＩＮＴＥＲ  ＲＥＡＤ、ＰＵＳＨ、ＰＯＰをメモリセルに伝送できるように選定されている。メモリセル３はこれと同時に少なくとも３つのメモリ領域、すなわちいわゆるスタック領域、ヒープ領域およびプログラム領域を有する。各領域には固有のポインタが割り当てられており、このポインタを介してスタック領域、ヒープ領域、プログラム領域それぞれのどの領域が読み出しまたは書き込みアクセスされるかを決定する。
【００４６】
バス５ａは時間多重でユニット２および３によって共通して使用される。このことは図２ｂ、２ｃに示されている。つまり図２ｂにおいてはＡＬＵ−ＰＡＥの出力側２ａ２から逆方向レジスタを介してＲＡＭセルの入力側にデータを送信することができるが、これに対し、使用されないにもかかわらず時間的に同時に存在する、バス５ｂからＲＡＭの出力側３ｃへのコネクションおよび逆方向レジスタＢＷの出力側からＡＬＵ−ＰＡＥの入力側２ｂへのコネクションは図２ｂの時点では重要ではなく、したがって破線で示唆されている。これに対して図２ｃは、メモリセル３が出力側３ｃを介して制御線路４によって決定されるメモリ領域すなわちスタック領域、ヒープ領域またはプログラム領域から情報を逆方向レジスタを介してＡＬＵ−ＰＡＥ２の入力側２ｂに供給するが、ＡＬＵ−ＰＡＥ２の出力側は非活動であり、ＲＡＭ−ＰＡＥの入力側３ｂでは信号が受信されない時点を示している。
【００４７】
ＲＡＭセル３内では回路３ｄが設けられており、この回路３ｄにおいて制御線路４ないし制御線路バス部分４を介して受信された情報が復号される。
【００４８】
本発明は以下のように使用される：
先ずＡＬＵ２がコンフィギュレーション情報を従来技術において既に公知であるような中央ロードロジックから受信する。情報伝送をそれ自体公知のやり方でＲＤＹ／ＡＣＫプロトコルなどを使用して行うことができる。装置の規則通りのコンフィギュレーションを実現するためにロードロジックにＦＩＬＭＯメモリなどが設けられる可能性を言及しておく。
【００４９】
これと同時にＡＬＵ２のコンフィギュレーションについてのデータと共に、シーケンサ的に実行すべきプログラムないしプログラム部分を表す一連のデータがロードロジックから伝送される。これに関しては単に例示を目的としたものが図６ａに示されており、この図６ａにおいてはハフマン符号化がそれ自体はデータフロー的に行われるＭＰＥＧ４符号化の中央シーケンス部として示されている。したがってＡＬＵはコンフィギュレーションの間に線４において相応の命令を出力し、この命令は書き込みのためのプログラムポインタをＲＡＭ内の所定の値にセットする。
【００５０】
続いて、ＡＬＵにおいて受信されたロードロジックからのデータが出力側２ｃ、バス５ｂ１および逆方向レジスタ３ａを介して供給およびロードされて、この逆方向レジスタ３ａからＲＡＭ−ＰＡＥ３の入力側に供給およびロードされる。ユニット３ｄによって制御線４における制御命令に応じて、データが指示されたプログラムメモリスペースに書き込まれる。このことは、コンフィギュレーション時にロードロジックから受信した全てのプログラム部がメモリセル３に格納されるまで繰り返される。
【００５１】
ＡＬＵのコンフィギュレーションが終了すると、ＡＬＵは制御線４における相応の命令の出力により、ＡＬＵによってシーケンサ的に実行されるべき次のプログラムステップを要求し、出力側３ｃ、バス５ｂ、ＲＡＭ−ＰＡＥ３の逆方向レジスタおよびバス５ａを介してＡＬＵの入力側において受信される。プログラムの実行中に、プログラム記憶領域内でのジャンプが必要とされる状況、データがＲＡＭ−ＰＡＥからＡＬＵ−ＰＡＥにロードされる状況、データをスタックに格納しなければならない状況などが発生する可能性がある。ＡＬＵ−ＰＡＥとＲＡＭ−ＰＡＥとの間のこれに関する通信は制御線４を介して行われ、その結果ＡＬＵ−ＰＡＥはいつの時点でも復号を実施することができる。さらには従来のマイクロプロセッサの場合のように、データをスタックまたは他のＲＡＭメモリ領域から受信することもでき、またさらにはデータを外部からオペランドとしてＡＬＵ−ＰＡＥにおいて受信することができる。
【００５２】
ＲＡＭ−ＰＡＥにおいてロードロジックによって事前にコンフィギュレートされたプログラムシーケンスが実行される。これと同時にＡＬＵ−ＰＡＥにおいては、それ自体必要であるように、命令の復号が行われる。このことはそれ自体は同一の回路でもって行われ、この回路はロードロジックから受け取った命令の復号に既に使用される。
【００５３】
ＡＬＵを介していつの時点でも、ＲＡＭセルがＡＬＵによって設定されているメモリアクセスの方式に常に正確に従うよう制御線４は制御される。このようにして、バス素子５ａ、ｂが時間多重で使用されるにもかかわらず、取り出すべきおよび／または書き込むべきデータまたはコードについてのアドレスがバスに存在するか否か、またはデータは書き込まれるべきか否か、また必要に応じてどこにデータを書き込むべきかについて、シーケンサ構造内に存在するエレメントは設定されていることが保証される。
【００５４】
図２に関連して示した装置を種々のやり方で拡張または変更することができる。図３、４および６に示されている変形形態は殊に関連がある。
【００５５】
図３によれば、上側のバスと下側のバスを接続するために、ＲＡＭ−ＰＡＥに単に逆方向レジスタが設けられているだけではなく、ＲＡＭ−ＰＡＥに順方向レジスタまたＡＬＵ−ＰＡＥに順方向レジスタおよび逆方向レジスタが設けられている。これらのレジスタは複数の矢印によって示されているように別のユニット、例えば外部ホスト、ハードディスク、メインメモリなどのような外部周辺機器および／または他のシーケンサ構造、ＰＡＥ、ＲＡＭ−ＰＡＥなどからデータを受信し、またこれらにデータを送信するために使用することができる。ＡＬＵ−ＰＡＥおよびＲＡＭ−ＰＡＥによって形成されているシーケンサ構造から新たなプログラム部についての相応の要求命令が送信される場合には、ＲＡＭ−ＰＡＥに記憶可能なプログラムブロックよりも遙かに大きいプログラムブロックをシーケンサ構造において処理することが可能である。このことは殊にデータ処理タスク、広範な範囲にわたるジャンプ、殊にサブプログラムへのジャンプなどが複雑である場合には非常に有利である。
【００５６】
さらに別の有利な変形形態が図４に示されている。ここではＡＬＵ−ＰＡＥはＲＡＭ−ＰＡＥとだけではなく、それと同時に入力／出力−ＰＡＥとも通信し、この入力／出力−ＰＡＥはハードディスク、他のＸＰＰ−ＶＰＵ、外部プロセッサおよびコプロセッサなどのような外部構成要素との通信用のインタフェース回路を設けるために設計されている。ここでもまたＡＬＵ−ＰＡＥは「ＣＭＤ」と称される制御線のためのマスタとして機能するユニットであり、またバスはやはり多重に使用される。ここでもまた列の下方のバスから列の上方のバスへのデータ伝送を逆方向レジスタによって行うことができる。
【００５７】
図４に示されている装置は、メモリセルＲＡＭ−ＰＡＥには記憶できない情報への外部アクセスを容易に簡単に構成することができ、したがって入出力セルにおいてアドレス変換手段、記憶管理ユニット（ＭＭＵ機能）などを実施できる限り、既存の従来のＣＰＵテクノロジおよびその動作方法へのシーケンサ構造のさらに広範な適合が可能である。ＲＡＭ−ＰＡＥはここでは例えばキャッシュとして使用できるが、殊に事前ロードされたキャッシュとして使用することができる。
【００５８】
複数のシーケンサ構造を同時に同一のフィールドにコンフィギュレーションでき、機能セルおよびメモリセルまた必要に応じて入出力セルを選択的にシーケンサ構造および／またはＸＰＰテクノロジにとって慣例のやり方に関してコンフィギュレーションでき、ＡＬＵをシーケンサ的にコンフィギュレーションするデータをＡＬＵが他のＡＬＵに出力するおよび／または所定のコンフィギュレーションが実行されるセルエレメントフィールドの一部にすることは勿論可能であることを言及しておく。
【００５９】
図６によれば、本発明の２つの実施形態が同一のセルエレメントフィールドに統合されている。つまり端部はそれぞれ２つのＰＡＥ、すなわちそれぞれ１つのＲＡＭ−ＰＡＥおよびＡＬＵ−ＰＡＥから形成されたシーケンサからなり、また内部は集積された機能セル・メモリセルユニットを形成するシーケンサとしての集積ＲＡＭ−ＡＬＵ−ＰＡＥを有し、フィールド内部のセルの一部のみを組合せセルとして形成することが可能である。
【００６０】
図５は右側（図５ｃ）に機能セル・メモリセル手段組合せを示す。
【００６１】
図５ｃによれば、全体を５０で表した機能セル・メモリセル手段組合せは、オペランドデータおよびコンフィギュレーションデータならびに、ここでは殊に有利に可能であるように、トリガ信号（図示せず）などを入力するためのバスコネクションないしバス入力側５１と、相応のデータないし信号を出力するためのバス出力側５２を有する。機能セル手段・メモリセル手段組合せの内部にはＡＬＵ５３が設けられており、またオペランドデータのための入力レジスタＲｉ０〜Ｒｉ３およびトリガ信号入力レジスタ（図示せず）が設けられている。コンフィギュレーションデータないしＡＬＵ操作符号データのためのコンフィギュレーションデータレジスタＲｃ０〜Ｒｃ７、結果ないし出力すべきトリガ信号のための結果データレジスタＲｄ０′〜Ｒｄ３′および出力レジスタＲｏ０〜Ｒｏ３が設けられている。コンフィギュレーションデータないし操作符号データのためのレジスタＲｃおよびＲｄはＡＬＵ５３から制御命令線４を介して制御され、適切なデータ線路を介してデータをＡＬＵに供給する、ないしＡＬＵから結果データを受信する。さらには、データレジスタＲｄ０から情報をＡＬＵだけでなく出力レジスタにも供給できるように、バス５１ないし入力レジスタＲｉから情報を直接的に出力レジスタないしバス５２に供給することも可能である。必要に応じてメモリ領域ＲｄとＲｃとの間に、例えば自己修正符号の可能性を実現するために、コネクションを設けることができる。
【００６２】
コンフィギュレーションデータ領域Ｒｃ０〜Ｒｃ７は制御部を有し、この制御部によって領域の部分において機能する、殊に繰り返し周期的および／またはジャンプによって機能することができる。これによって例えば、第１の部分コンフィギュレーションにおいてＲｃ０〜Ｒｃ３にある命令が反復的に実行でき、択一的に、例えばバス線５１を介する相応の他のトリガ信号の入力に基づき、Ｒｃ４〜Ｒｃ７にあるコンフィギュレーション命令を実行することができる。したがってウェーブ・コンフィギュレーションの実施が保証されている。格納されているコンフィギュレーション命令が典型的には単にＡＬＵへの指示を表すが、完全なバスコネクションなどを規定するものではないことを言及しておく。
【００６３】
図５に示された前述のユニットはここでは、メモリセル手段および／または制御線４を有さない通常のＰＡＥに比べ数倍のクロックで動作するよう構成されている。
【００６４】
そのように形成された機能折りたたみユニット（function-folding-unit）においてシーケンサ的にデータフローにおけるデータを実行するために、所定のアルゴリズムに先ず図５によるデータフローグラフないしデータフロー領域が作成される。グラフにおいて実行すべき各操作にメモリ領域Ｒｃ０が割り当てられ、グラフ部分領域に到来するデータが内部の入力レジスタＲｉ０に割り当てられ、中間結果がメモリＲｄ０〜Ｒｄ３に割り当てられ、出力結果がレジスタＲｏに割り当てられる。この割り当てでもってグラフ領域を機能折りたたみユニットにおいて実行することができる。このハードウェアによるいわばデータフロー・シーケンサ変換が行われる。
【００６５】
この関係において、相応の分割を行うために先ずデータ処理プログラムに関してコンパイラを用いてデータフローグラフおよび制御フローグラフが作成されるよう本発明の配置構成を使用することは全く一般的に有利となることを言及しておく。分割によって得られた部分を完全にまたは部分的に、例えば本発明により形成できるようなシーケンサユニットにおいて実行することができる。このようにして、あるセルから次のセルへと進む際にいわばデータフロー的なデータ処理が達成されるが、セル内では逐次的な実行が行われる。このことは、装置の非常に高い計算能力に基づきックロック周波数が高められるべきであるが、反対に面積ないしセルの数は低減されるべき場合には有利である。純粋なデータフロー的なデータ処理から局所的に逐次であるデータフロー処理部へのこの変換的な移行を、反復的なプロセスが実施されるよう、例えば先ず第１の分割が行われるように行い、分割された部分のシーケンサユニットにおける続く「巻き込み」において、例えばシーケンサまたはその他の個所において使用可能なリソースが十分でないことが確認される場合にはこれを考慮した別の分割および新たな「巻き込み」を行うことが可能であることを言及しておく。機能折りたたみユニットを集中的に使用することが所望される場合には、レジスタの数を必要に応じて増やすことができる。
【００６６】
本発明ではレジスタはメモリセル手段またはメモリセルの部分と解されることも言及しておく。メモリセル領域を拡大することによって複雑なタスクもシーケンサ的に配置することができ、しかしながら前述の僅かな大きさでもって重要なアルゴリズムの本質的な部分を既に処理でき、しかも高い効率で処理できることは明らかである。
【００６７】
この例において機能折りたたみユニットは有利には、データをＡＬＵにおいて処理されることなくこの機能組み込みユニットによってスイッチングすることができるよう構成される。このことは、本出願人のアーキテクチャから公知であるようなような順方向レジスタを使用する必要なく、例えばデータパケットが種々の分岐を介して処理され、（再び）一緒に供給しなければならない経路バランスを達成するために十分利用することができる。これと同時におよび／または択一的に、セルエレメントフィールドにおけるデータフロー方向は、幾つかの機能セル手段、メモリセル手段、機能折りたたみユニットを相応に配向することによって、厳格に１つの方向に延ばされるのではなく、２つの反対の方向に延ばされることも考えられる。つまり例えば、各偶数列においてＡＬＵは入力オペランドを左側から受け取り、各奇数列においてＡＬＵは入力オペランドを右側から受け取る。
【００６８】
データが何度もフィールドを通って送信されなければならない場合には、例えば圧延された環状基体（Schleifenkoerper）におけるそのような配置構成が有利である。択一的な配置構成は厳密である必要もない。特定の用途に関しては他の幾何学を選択することもできる。つまり、フィールドの中央においては端部とは異なる経過方向を選択することができる、などである。相並んだ同一の経過方向にある機能セルユニットの配置構成はバスコネクションに関して有利なものとなる。１つのフィールドにおいて配向されている複数の機能セルの逆方向に延在する配置構成およびこれと共に生じる改善されたデータ処理は制御線などを設けることに依存せずに発明性のあるものと見なされる。
【００６９】
図５に示された機能折りたたみユニットの択一形態が図７に示されている。
【図面の簡単な説明】
【００７０】
【図１】本発明によるセルエレメントフィールド。
【図２ａ】セルエレメントフィールドの詳細。
【図２ｂ】異なるデータ処理時間にある図２ａの詳細。
【図２ｃ】異なるデータ処理時間にある図２ａの詳細。
【図３】図２の詳細の代替的な実施形態。
【図４】図２の詳細の殊に有利な変形形態。
【図５】本発明の機能セル・メモリセル組合せにおける機能折りたたみの例。
【図６ａ】逐次並列的なデータ処理の例。
【図６ｂ】本発明の殊に有利な実施例。
【図７】機能折りたたみユニットの代替形態。
【図１】
2006501782.tif 000003
【図２】
2006501782.tif 000004
【図３】
2006501782.tif 000005
【図４】
2006501782.tif 000006
【図５】
2006501782.tif 000007
2006501782.tif 000008
【図７】
2006501782.tif 000009
【国際調査報告】
2006501782.tif 000010
2006501782.tif 000011
2006501782.tif 000012
2006501782.tif 000013
2006501782.tif 000014
2006501782.tif 000015