(57)【要約】【課題】カスケード接続可能であり、その機能と網目化がフレキシブルにコンフィギュレートできる計算機構を提供することである。【解決手段】構築可能なセルユニットとしてプログラム可能な計算ユニットには、数学的および／または論理的基本演算を実行するための計算機構と、アドレシング可能な機能および／または網目化設定手段（Ｆ−Ｐｌｕｒｅｇ，Ｍ−Ｐｌｕｒｅｇ）が、構築すべき機能および／または網目化が処理データバスに依存しないようにするために設けられている。【選択図】図１
2007174701.tif 000002
【特許請求の範囲】
【請求項１】
再構築可能プロセッサ、とりわけＣＰＵ、データフロープロセッサ（ＤＦＰ）、デジタルシグナルプロセッサ（ＤＳＰ）、収縮性プロセッサおよび／またはプログラム可能論理構成素子（ＦＰＧＡ）であって、
当該再構築可能プロセッサは、処理データをデータ処理するために、複数の構築可能なセルユニットを有し、
該セルユニットは、機能および網目化の点で伝搬時間が再構築可能である形式の再コンフィギュラブルプロセッサにおいて、
構築可能なセルユニットとしてプログラム可能な計算ユニットには、数学的および／または論理的基本演算を実行するための計算機構と、アドレシング可能な機能および／または網目化設定手段（Ｆ−Ｐｌｕｒｅｇ，Ｍ−Ｐｌｕｒｅｇ）が、構築すべき機能および／または網目化が処理データバスに依存しないようにするために設けられている、
ことを特徴とする再構築可能プロセッサ。
【請求項２】
複数の再構築可能論理セルと、プログラム可能計算ユニット（ＥＡＬＵ）と、数学的および／または論理的基本演算を実行するための計算機構とを有するプロセッサ装置の駆動方法において、
構築すべき機能および網目化が、アドレシング可能な機能および網目化設定手段（Ｆ−Ｐｌｕｒｅｇ，Ｍ−Ｐｌｕｒｅｇ）において処理データバスに依存しないようにする、ことを特徴とする方法。
【請求項３】
再構築可能データ処理ユニット、とりわけＣＰＵ，データフロープロセッサ、デジタルシグナルプロセッサ、収縮性プロセッサおよび／またはプログラミング可能論理構成素子であって、
該再構築可能データ処理ユニットは、処理データをデータ処理するために、複数の構築可能セルユニットを有し、
該セルユニットは、伝搬時間が再構築可能である形式の再構築可能データ処理ユニットにおいて、
少なくとも複数の構築可能セルユニットは電流節約モードを有し、該電流節約モードは論理セルをスリープモードにするために調整可能である、ことを特徴とする再構築可能データ処理ユニット。
【請求項４】
再構築可能データ処理ユニット、とりわけＣＰＵ，データフロープロセッサ、デジタルシグナルプロセッサ、収縮性プロセッサおよび／またはプログラミング可能論理構成素子であって、
該再構築可能データ処理ユニットは、処理データをデータ処理するために、複数の構築可能セルユニットを有し、
該セルユニットは、機能および網目化の点で伝搬時間が再構築可能である形式の再構築可能データ処理ユニットにおいて、
少なくとも複数の構築可能セルユニットに対してワンショットモードを実現するものが使用される、ことを特徴とする再構築可能データ処理ユニット。
【請求項５】
多次元セルアーキテクチャにより再構築可能エレメントを有するデータ処理装置であって、
少なくとも複数のエレメントに対して予めロードしたコンフィギュレーションを記憶するためのレジスタが設けられており、
該レジスタはコンフィギュレーションを再構築可能エレメントに出力するためにコンフィギュレーション出力端を有し、
前記コンフィギュレーション出力端はマルチプレクサ回路に入力端と接続されており、
該マルチプレクサ回路はコンフィギュレーションデータを再構築可能エレメントに出力するために出力端と、再構築可能セルのどの入力端に送信するかを選択するための選択入力端とを有し、
該選択入力端は選択信号を受信するように構成されている、
ことを特徴とするデータ処理装置。
【請求項６】
数値演算および論理演算を処理するための構築可能ユニットにおいて、
該構築可能ユニットは、プログラムロードユニットによって制御され、
数学的機能および論理機能を実行するためのプログラ可能演算論理ユニットと、
該プログラム可能演算論理ユニットと通信し、該構築可能ユニットと複数の別の構築可能ユニットとを同期するための各同期ユニットと、
該プログラム可能演算論理ユニットと通信する状態ユニットとを有し、
該構築可能ユニットと該複数の別の構築可能ユニットは多次元パターンで配置されており、
該同期ユニットは、該複数の別の構築可能ユニットのうち、該多次元パターンにおいて該構築可能ユニットの最も近くに隣接しない少なくとも１つの構築可能ユニットから、ハンドシェーク信号を受け取り、ハンドシェーク信号を、該複数の別の構築可能ユニットのうち少なくとも１つへ送信し、
該状態ユニットは、状態情報を該プログラムロードユニットへ供給することを特徴とする、構築可能ユニット。
【請求項７】
構築可能データプロセッサにおいて、
算術演算および論理演算を処理するための複数の構築可能ユニットを有し、
該複数の構築可能ユニットは多次元パターンで配置されており、
該複数の構築可能ユニットはそれぞれ、データ受信装置およびデータ送信装置のうち少なくとも１つとして動作するように構成されており、
該複数の構築可能ユニットはそれぞれ、
数学的機能および論理機能を実行するためのプログラム可能演算論理ユニットと、
該プログラム可能演算論理ユニットと通信し、該構築可能ユニットと該複数の構築可能ユニットのうち少なくとも１つの別の構築可能ユニットとを同期する同期ユニットと、
該プログラム可能演算論理ユニットと通信する状態ユニットとを有し、
該同期ユニットは、該複数の別の構築可能ユニットのうち、該多次元パターンにおいて該構築可能ユニットに最も近くに隣接しない少なくとも１つの構築可能ユニットからハンドシェーク信号を受け取り、ハンドシェーク信号を該別の構築可能ユニットのうち少なくとも１つへ送信し、
該状態ユニットは状態情報をプログラムロードユニットへ供給し、
該プログラムロードユニットは、該構築可能ユニットの再構築を制御し、
該複数の構築可能ユニットのうち１つはデータ受信装置として動作し、受信されたデータに対して、該複数の構築可能ユニットのうちデータ送信装置として動作する別の１つの構築可能ユニットへデータ受信信号を送信することによって肯定応答することを特徴とする、構築可能データプロセッサ。
【請求項８】
数値演算および論理演算を処理するための構築可能ユニットにおいて、
該構築可能ユニットはプログラムロードユニットによって制御され、
複数の基本的な数学的機能および論理機能を実行するためのプログラム可能演算論理ユニットと、
該プログラム可能演算論理ユニットと通信し、該構築可能ユニットの機能に関するデータと、該構築可能ユニット内部のユニットの相互接続に関するデータとを記憶するための複数の第１のレジスタと、
該プログラム可能演算論理ユニットを制御するための第１の状態マシンと、
該プログラム可能演算論理ユニットと通信し、該プログラム可能演算論理ユニットの少なくとも１つのオペランドを記憶するための少なくとも１つのレジスタと、
少なくとも該結果レジスタの出力端に結合された入力端と、該プログラム可能演算論理ユニットの入力端に結合された出力端とを有するマルチプレクサと、
該結果レジスタと通信し、バスシステムからのデータのピックアップを供給し、該結果データを該バスシステムへ供給するためのバスユニットと、
少なくとも該第１の状態マシンと通信し、該バスシステム全体で行われるバス伝送の順序を自動制御するための第２の状態マシンと、
該結果ユニットと通信し、該プログラムロードユニットへ該構築可能ユニットの処理状態と再構築可能状態とを供給するための状態バックユニットとを有し、
該少なくとも１つのレジスタのうち少なくとも１つはシフトレジスタを有し、
該少なくとも１つのレジスタのうち少なくとも１つは結果レジスタであり、
該結果レジスタは結果データを記憶し、
該マルチプレクサは、該結果データを該プログラム可能演算論理ユニットの入力端に供給し、
該第２の状態マシンは、複数のハンドシェーク線路を有し、
該構築可能ユニットのコンフィギュレーションおよびリコンフィギュレーションのうちいずれか一方は、該プログラムロードユニットと通信する別のいずれかの構築可能ユニットに対して介入的作用を及ぼさないことを特徴とする、構築可能ユニット。
【請求項９】
データフローをデータフロープロセッサで同期する方法において、
該データフロープロセッサは、多次元パターンで配置された処理アレイエレメントを有し、
該処理アレイエレメントのうち第１のエレメントによってレディ信号を送信するステップと、
該処理アレイエレメントのうち、該処理アレイエレメントの第１のエレメントの最も近くに隣接しない第２のエレメントによって、該レディ信号を受信するステップと、
該レディ信号の受信後、該第２のエレメントがデータを受け入れられる状態である第１の状態に該第２のエレメントがある場合にのみ、該第２のエレメントから該第１のエレメントへ肯定応答信号を送信するステップと、
該肯定応答信号が１つのクロック周期で受信されない場合、該第１のエレメントによって待機状態に入るステップと、
第１の該肯定応答信号が受信された後、該第１のエレメントによって次のデータを処理するステップとを有する、ことを特徴とする方法。
【請求項１０】
数値演算および論理演算を処理するための構築可能ユニットにおいて、
該構築可能ユニットはプログラムロードユニットによって制御され、
数学的機能および論理機能を実行するように構成されたプログラム可能演算論理ユニットと、
該プログラム可能演算論理ユニットと通信し、該構築可能ユニットと複数の別の構築可能ユニットとを同期するために構成された各同期ユニットと、
該プログラム可能演算論理ユニットと通信し、該プログラムロードユニットへ状態情報を供給するための状態ユニットとを有し、
該同期ユニットは、外部バスを介して該複数の別の構築可能ユニットのうち少なくとも１つからハンドシェーク信号を受け取るように構成され、かつ、該外部バスを介して該複数の別のコンフィギュレーションユニットのうち少なくとも１つへハンドシェーク信号を送信するように構成されており、
該外部バスは、該構築可能ユニットと該複数の別のコンフィギュレーションユニットのうち少なくとも２つとをリンクするように構成されていることを特徴とする、構築可能ユニット。
【請求項１１】
構築可能データプロセッサにおいて、
数値演算および論理演算を処理するように構成された複数の構築可能ユニットと、
それぞれが該複数の構築可能ユニットのうち少なくとも３つを接続するように構成された複数のバスとを有し、
該複数の構築可能ユニットはそれぞれ、データ受信装置およびデータ送信装置のうち少なくとも１つとして動作するように構成されており、
該複数の構築可能ユニットはそれぞれ、
数学的機能および論理機能を実行するように構成されたプログラム可能演算論理ユニットと、
該プログラム可能演算論理ユニットと通信し、該構築可能ユニットと該複数の構築可能ユニットのうち少なくとも１つの別の構築可能ユニットとを同期するように構成された同期ユニットと、
該プログラム可能演算論理ユニットと通信し、状態情報をプログラムロードユニットへ供給するための状態ユニットとを有し、
該同期ユニットは、該複数のバスのうち少なくとも１つを介して該複数の別のコンフィギュレーションユニットのうち少なくとも１つからハンドシェーク信号を受信するように構成され、かつ、該複数のバスのうち少なくとも１つを介して該複数の別の構築可能ユニットのうち少なくとも１つへハンドシェーク信号を送信するように構成されており、
該プログラムロードユニットは、該構築可能ユニットの再構築を制御し、
該複数の構築可能ユニットのうち１つはデータ受信装置として動作し、受信されたデータに対し、該複数のバスのうち１つを介して該複数の構築可能ユニットのうちデータ送信装置として動作する別の１つの構築可能ユニットへデータ受信信号を送信することによって肯定応答することを特徴とする、構築可能データプロセッサ。
【請求項１２】
データフロープロセッサでデータフローを同期する方法において、
該データフロープロセッサは、多次元パターンで配置された処理アレイエレメントと、複数の外部バスとを有し、
各バスは、該処理アレイエレメントのうち少なくとも３つをリンクするように構成されており、
該処理アレイエレメントのうち第１のエレメントによって、該複数の外部バスのうち１つを介してレディ信号を送信するステップと、
該レディ信号を、該処理アレイエレメントのうち第２のエレメントによって受け取るステップと、
該レディ信号の受信後、該第２のエレメントがデータを受け入れられる状態である第１の状態に該第２のエレメントがある場合にのみ、該第２のエレメントから該第１のエレメントへ肯定応答信号を送信するステップと、
該肯定応答信号が１つのクロック周期で受信されない場合、該第１のエレメントによって待機状態に入るステップと、
第１の該肯定応答信号が受信された後、該第１のエレメントによって次のデータを処理するステップ
とを有することを特徴とする方法。
【請求項１３】
再構築可能プロセッサであって、
データを伝送する複数のデータバスを有し、
アドレシング可能複数のセルユニット構成体を多次元アレイとして有し、
該セルユニット構成体は、複数のデータバスによって相互接続されており、複数のデータバスによって伝送されたデータを処理し、
少なくとも複数の再構築可能セルユニットは、
数学的および論理的演算をデータ上で実行するための数学的論理ユニットを有し、
機能制御ユニットを有し、該機能制御ユニットは数学的論理ユニットと通信し、数学的論理ユニットにより実行される機能を制御し、
相互接続制御ユニットを有し、該相互接続制御ユニットは複数の構築可能セルユニットと他の構築可能セルユニットとの相互接続を制御し、
少なくとも複数の構築可能セルユニットは、複数の可能な指令の１つに応答して複数の可能な演算の１つを実行し、
少なくとも複数の構築可能セルユニットの１つの応答は静的であり、別の少なくとも複数の構築可能セルユニットの応答と同じである形式の再構築可能プロセッサにおいて、
複数の構築可能セルユニットは、それらの機能および相互接続の点で実行時間が再構築可能であり、
第１機能制御ユニットは、少なくとも複数の機能制御ユニットと少なくとも複数の相互接続制御ユニットを伝送した指令によって制御し、該伝送した指令は可能な演算の１つに静的に相当し、
少なくとも複数の構築可能セルユニットは、少なくとも複数の構築可能セルユニットを複数のデータバスから分離するように構成されており、
セル／バス分離により、構築可能セルユニットの少なくとも１つの実行時間が再構築され、その際に構築可能な他のセルユニットのコンフィギュレーションには影響しない、
ことを特徴とする再構築なプロセッサ。
【請求項１４】
複数の粗粒子状の処理アレイエレメントと、該処理アレイエレメントと通信的に接続された第１論理ユニットと、内部バスシステムとを有する回路であって、
各処理アレイエレメントは実行時間が再構築可能であり、その際に他の処理アレイエレメントに影響することなく、かつ送信器と受信器との間で通信されるデータ流に影響を与えず、
前記再構築は、所定の変更不能な指令セットの１つを、第１論理ユニットから送信され、当該処理アレイエレメントにアドレシングされたコンフィギュレーションに従い選択することによって行われ、
各処理アレイエレメントは内部バスシステムから分離される、ことを特徴とする回路。
【請求項１５】
再構築可能データプロセッサが、バスと、粗粒子状の再構築可能処理アレイエレメントとを有する、少なくとも１つのコンフィギュレーションレジスタと、論理回路と、出力レジスタとを有し、
前記処理アレイエレメントエレメントの各々は、処理アレイエレメントの１つをバスと接続するバスユニットと、入力レジスタとを有し、
該入力レジスタは、バスユニットを介して処理アレイエレメントの１つの少なくとも１つのアップストリームから受信されたオペランドを記憶し、
前記コンフィギュレーションレジスタはコンフィギュレーションデータを記憶し、該コンフィギュレーションデータは所定の変更不能な指令セットの１つを指示し、
該少なくとも１つのコンフィギュレーションレジスタはコンフィギュレーションを処理アレイエレメントの１つの少なくとも１つのアップストリームから受信し、
前記論理回路は、コンフィギュレーションデータに従ってオペランドの演算を実行し、
前記出力レジスタは論理回路から受信した結果データを記憶し、
該結果データは、バス上でバスユニットを介して処理アレイエレメントの１つの少なくとも１つのダウンストリームに伝送され、少なくとも１つのレジスタは論理回路をバスユニットに接続する、ことを特徴とする再構築可能データプロセッサ。
【請求項１６】
データ処理装置が、データ処理ユニットのアレイと、イネーブル／ディスエーブルデバイスとを有し、
前記データ処理ユニットは、電力供給ラインとクロックラインに少なくとも接続されており、
前記イネーブル／ディスエーブルデバイスは、ｉ）  複数のデータ処理ユニットへの電力供給をイネーブルまたはディスエーブルし、ｉｉ）  複数のデータ処理ユニットに対してフルクロック速度をブロックし、
前記複数のデータ処理ユニットの数はすべてのデータ処理ユニットよりも少なく、
前記イネーブル／ディスエーブルデバイスは、ドデータドライバとして構成されている、ことを特徴とするデータ処理装置。
【請求項１７】
データ処理装置が、データ処理ユニットのアレイと、イネーブル／ディスエーブルデバイスとを有し、
前記データ処理ユニットは、電力供給ラインとクロックラインに少なくとも接続されており、
前記イネーブル／ディスエーブルデバイスは、それぞれのデータ処理ユニットに対して使用されるデータに応答して、ｉ）  少なくとも１つのデータ処理ユニットへの電力供給を選択的にイネーブルまたはディスエーブルし、ｉｉ）  少なくとも１つのデータ処理ユニットに対してフルクロック速度を選択的にブロックし、
前記少なくとも１つのデータ処理ユニットは、アレイ中のすべてのデータ処理ユニットよりも少数である、ことを特徴とするデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、再構築可能プロセッサ、とりわけＣＰＵ、データフロープロセッサ（ＤＦＰ）、デジタルシグナルプロセッサ（ＤＳＰ）、収縮性プロセッサおよび／またはプログラム可能論理構成素子、データ処理ユニット、データ処理装置に関する。
より詳細には、再構築可能プロセッサ、とりわけＣＰＵ、データフロープロセッサ（ＤＦＰ）、デジタルシグナルプロセッサ（ＤＳＰ）、収縮性プロセッサおよび／またはプログラム可能論理構成素子（ＦＰＧＡ）であって、当該再構築可能プロセッサは、処理データをデータ処理するために、複数の構築可能なセルユニットを有し、該セルユニットは、機能および網目化の点で伝搬時間が再構築可能である形式の再コンフィギュラブルプロセッサに関する。
【背景技術】
【０００２】
１．  発明の背景
１．１  従来の技術
刊行物ＤＥ４４１６８８１Ａ１には、データ処理方法が記載されている。ここではその機能および網目化に、ほぼ任意にコンフィギュレートでき、均一に配置されたセルが使用される。
【０００３】
前記の刊行物とは関係なく、ますます多くのＦＰＧＡ構成ユニット（任意プログラム可能論理構成ユニット）が、多数の個々の論理セルからなるデータ処理装置を構成するために使用されている。
【０００４】
別の公知の方法では、データ処理装置を固定的にプログラム制御される計算機構から構成し、これはほぼ固定的な網目化、いわゆる収縮型プロセッサを備えている。
１．２  問題
１．２．１  ＤＥ４４１６８８１Ａ１による構成ユニット
ＤＥ４４１６８８１Ａ１に記載された方法（以下、ＶＰＵと称する）による構成ユニットは、小型論理セルが多数あるため、コンフィギュレーションが面倒である。論理セルを制御するために複数の制御ビットがスタティックメモリ（ＳＲＡＭ）に出力される。各論理セルに対して、１つのＳＲＡＭアドレスが存在する。コンフィギュレートすべきＳＲＡＭセルの数は非常に多い。このことはスペースを多大に必要とし、このような構成ユニットのコンフィギュレーションおよび再コンフィギュレーションに対して時間がかかる。スペース需要の大きいことはとりわけ不利である。なぜなら、ＶＰＵの処理能力はセル数の上昇と共に向上するからである。しかし構成ユニットの使用可能な面積はチップ製造技術によって制限される。チップの価格はチップ面積に対してほぼ２乗で上昇する。多重構成された隣接網目化構造のため、同報機能、すなわちデータを複数の受信器に同時に送信することは不可能である。ＶＰＵを動作中に再コンフィギュレーションすべき場合には、必然的に短い再コンフィギュレーション時間に到達することが必要である。しかしこれに対して多数のコンフィギュレーションデータが、チップの再コンフィギュレーションに必要な場合もある。この場合、セルを供給電圧から分離したり、緩慢にクロック制御したりして、損失電力を最小にすることはできない。
１．２．２  ＦＰＧＡ
前記使用領域に対して問題となるＦＰＧＡは、少なくともマルチプレクサまたはルックアップテーブル（ＬＵＴ）構造からなる。実現のためにはＳＲＡＭセルが使用される。小型のＳＲＡＭセルが多数あるため、これをコンフィギュレーションするのは非常に面倒である。大きなデータ量が必要であり、これは相応に多くの時間をコンフィギュレーションおよび再コンフィギュレーションに必要とする。ＳＲＡＭセルは非常に大きなスペースを必要とする。しかし構成ユニットの使用可能な面積はチップ製造技術により制限されている。価格はここでもチップ面積に対してほぼ２乗で上昇する。ＳＲＡＭを基礎とする技術はＳＲＡＭへのアクセス時間によって直接集積論理回路よりも緩慢である。多数のＦＰＧＡがバス構造に設けられるが、高速かつ効率的にデータを複数の受信器に同時に出力する同報手段はない。ＦＰＧＡを動作中に再コンフィギュレーションすべき場合には、必然的に短いコンフィギュレーション時間に達することが必要である。しかしこれに対して多数のコンフィギュレーションデータが必要になることもある。ＦＰＧＡは、動作中に意味のある再コンフィギュレーションを行うためのサポートは提供しない。プログラミングは、過程が正常に、データおよび周辺論理回路に障害となる影響を及ぼさないで経過するように注意しなければならない。損失電力を最小にするためのインテリジェント型論理回路は設けられていない。内部動作状態を、ＦＰＧＡを制御する論理回路にフィードバック可能な特別の機能ユニットは存在しない。
１．２．３  収縮型プロセッサ
収縮型プロセッサでは、再コンフィギュレーションが完全に省略される。しかしこのプロセッサにはフレキシビリティがない。なぜなら、固定的内部構造を有するからである。命令は各サイクルで新たにデコードされる。すでに前に述べたように、同報機能または損失電力を効率的に最小に維持する機能に欠けている。
【特許文献１】ＤＥ４４１６８８１Ａ１
【発明の開示】
【発明が解決しようとする課題】
【０００５】
１．３  本発明による改善、課題
本発明の課題は、カスケード接続可能であり、その機能と網目化がフレキシブルにコンフィギュレートできる計算機構を提供することである。
【０００６】
アルゴリズムの実行中にコマンドデコードを必要としない。動作中に再コンフィギュレーションすることができ、周辺計算機構、処理モジュールおよびデータ流に影響を及ぼすことがない。コンフィギュレーションデータの量は非常に小さく、このことはスペース需要およびコンフィギュレーション速度に有利に作用する。大きなデータ量を高速かつ効率的に分配するために、同報機能が内部バスシステムを介して支援される。計算機構には節電機能が装備されており、これにより電流消費が完全に遮断される。同じようにクロック分周器が設けられており、この分周器により計算機構を比較的に低いクロックで駆動することができる。内部状態を外部制御回路にフィードバックするため、特別の機構が使用される。
【課題を解決するための手段】
【０００７】
上記課題は、独立請求項に記載の構成によって解決される。
【発明を実施するための最良の形態】
【０００８】
２．  発明の説明
２．１  発明の概観、要約
本発明は、ＤＥ４４１６８８１Ａ１、収縮型アレイ、ＤＰＧＡ、ＦＰＧＡ等による構成素子に対するセル構造を記述する。これらセルには、特別機能を拡張するための演算論理ユニット（ＥＡＬＵ）が組み込まれており、この演算論理ユニットはデータ処理を実行する。ＥＡＬＵは機能レジスタを介してコンフィギュレートされ、このことによりコンフィギュレーションに必要なデータ量が格段に低減される。セルはバスシステムを介して任意にカスケードすることができ、ここでＥＡＬＵはバスシステムから入出力レジスタを介して減結合される。出力レジスタはＥＡＬＵの入力側にフィードバックされ、これによりシリアル動作を可能にする。バスへの接続はバス制御ユニットを引き受け、このユニットはバスをバスレジスタに相応して網目化する。ここでユニットは、データを複数の受信器に分配できる（同報）ように構成されている。同期回路は、複数セル間の、バスシステムを介したデータ交換を制御する。ＥＡＬＵ、同期回路、バス制御ユニットおよびレジスタは、セルがその周辺セルに依存しないで動作中に再コンフィギュレーションできるように構成されている。機能レジスタを介して節電モードをコンフィギュレートすることができ、この節電モードはセルを遮断し、またクロック分周器を動作周波数が低下するように調整する。
２．２  発明の詳細な説明
本発明は、ＤＥ４４１６８８１Ａ１または公知ＦＰＧＡセルのようなセル（ＰＡＥ＝プロセッシングアレイエレメント）の構造を記述する。ここでＰＡＥは１つのアレイ（プロセッシングアレイ＝ＰＡ）にカスケードすることができる。ＰＡＥは多数の機能ユニットから構成される。
２．３  ＥＡＬＵ
計算機構は、論理回路に固定的に実現された拡張演算論理ユニット（ＥＡＬＵ）からなる。ＥＡＬＵは通常は、従来技術による演算論理ユニット（ＡＬＵ）であり、カウンタのような特別機能により拡張されている。このＥＡＬＵは、多数の演算動作および論理動作を実行することができる。これについてはここで詳細に述べる必要はない。なぜなら、ＡＬＵは従来技術に相応して理解することができるからである。ＥＡＬＵはその固有の結果に直接アクセスし、この結果は以下に説明するようにオペランドとしてフィードバックされる。このことにより計数または連続乗算のような連続演算、割り算、級数展開が可能である。ＥＡＬＵはその結果の他に、信号、ＣａｒｒｙＯｕｔ−ＡｌｅｓｓＢとＡｅｑｕａｌＢ−０ｄｅｔｅｃｔを送出する。ＣａｒｒｙＯｕｔ−ＡｌｅｓｓＢは演算動作の場合はキャリーを表す、また２つの値の減算による比較の場合は、繰越、すなわちＣａｒｒｙＯｕｔ−ＡｌｅｓｓＢは、Ａ＜ＢないしＢ＜Ａを否定オペランドに依存して表す。この信号は全加算器により通常のキャリーを発生する。ＡｅｑｕａｌＢ−０ｄｅｔｅｃｔは、結果レジスタＲ−ＲＥＧｓｆｔにある結果が０であることを表す。信号はＮＯＲを介して結果から発生される。信号は簡単な状態評価に使用され、ＰＬＵにフィードバックすることができる。さらなる状態信号を適用に応じて実現することができる。
【０００９】
ＥＡＬＵの機能は機能レジスタ（Ｆ−ＰＬＵＲＥＧ）にコンフィギュレートされる。
２．３．１  ０−ＲＥＧ
ＥＡＬＵの入力オペランドは相互に独立した２つのオペランドレジスタ（Ｏ−ＲＥＧ）に記憶される。これによりＥＡＬＵは、状態に依存しないでデータを送出するユニット（データ送出器）を使用できる。このことは、バスから減結合し、ＰＡの任意の再コンフィギュレーションを可能にするために必要である。１つまたは２つのＯ−ＲＥＧはシフト機能を有し、このシフト機能はＥＡＬＵにより場合により各Ｏ−ＲＥＧに対して個別に制御される。シフト機能により、連続オペランドの実行が、ＥＡＬＵでの連続乗算または割り算のように可能となる。シフト機能を備えたＯ−ＲＥＧはＯ−ＲＥＧｓｆｔと示される。
２．３．２  Ｒ−ＲＥＧｓｆｔ
ＥＡＬＵの結果は結果レジスタに記憶される（Ｒ−ＲＥＧｓｆｔ）。これによって、結果を受信するユニット（データ受信器）に時間的に依存しなくなる。Ｒ−ＲＥＧｓｆｔはシフト機能を有し、このシフト機能はＥＡＬＵにより制御される。これによって連続オペランドが可能になる。
２．３．３  Ｒ２Ｏ−ＭＵＸ
Ｒ−ＲＥＧｓｆｔにある結果データはマルチプレクサ（Ｒ２Ｏ−ＭＵＸ）を介してＯ−ＲＥＧとＥＡＬＵとの間でオペランドとしてループされる。これは、結果が連続演算、カウンタおよび類似の機能に対してフィードバックされることを保証するためである。マルチプレクサはＦ−ＰＬＵＲＥＧにより調整される。
２．２．４  クロックサイクル
必須ではないが、Ｏ−ＲＥＧｓｆｔがクロックエッジで制御され、Ｒ−ＲＥＧｓｆｔは後続の否定クロックエッジで制御されるようにすると有利である。このことにより、ＥＡＬＵはその機能を実行するための第１の半クロックを有し、第２の半クロックが信号伝搬時間とマルチプレクサに対して使用される。これにより各クロックで完全な演算を実行することができる。
２．２．５  状態マシン、ＳＭ−ＵＮＩＴ
ＥＡＬＵでのフロー制御のためにＳＭ−ＵＮＩＴが設けられている。これはＯ−ＲＥＧとＲ−ＲＥＧｓｆｔ、およびそれらのシフト機能、並びにＲ２Ｏ−ＭＵＸを制御する。これによって、連続演算、シフト機能および計数機能が簡単にＥＡＬＵによって実行できる。状態マシンはここで従来技術により簡単に実現される。
２．２．６  Ｓｙｎｃ−ＵＮＩＴ
ＰＡＥを、ＰＡＥからなるアレイ（ＰＡ）内で同期するために、同期ユニット（Ｓｙｎｃ−ＵＮＩＴ）が設けられている。この同期ユニットは、ハンドシェークプロトコルを実行する一連の入力信号を評価する。
ｒＡＣＫ（ｈ／ｌ）：  データ受信器は受信したデータを受領確認する。ここでｒＡＣＫｈは、高位結果バイト（ビット８から１５）の受領であり、ｒＡＣＫｌは低位結果バイト（ビット０から７）の受領である。２つはＡＮＤ結合（ｒＡＣＫｈとｒＡＣＫｌ）され、信号ｒＡＣＫが発生する。１つまたは２つのデータ受信器がそのデータ処理に占有されているときはｒＡＣＫは真ではなく、２つのデータ受信器のデータ処理が終了し、結果がそれぞれのデータ受信器のＲ−ＲＥＧｓｆｔに記憶されると真になる。信号ｒＡＣＫ（ｈ／ｌ）は以降頻繁に、そのＡＮＤ結合形態でａＡＣＫ（＝ｒＡＣＫｈ  ＆  ｒＡＣＫｌ）と見なされる。
ｏＲＤＹ（１／２）：  データ送信器は、新たなデータ送信の準備ができていることを通報する。データ送信器がそのデータ処理に占有されている間は、ｏＲＤＹは真ではなく、ＰＡＥのオペランドであるデータ送信器の結果が使用されるときに真になる。ここでｏＲＤＹ１は第１のオペランドのデータ送信器のイネーブル信号であり、ｏＲＤＹ２は第２のオペランドのデータ送信器のイネーブル信号である。両者はＡＮＤ結合（ｏＲＤＹ１  および  ｏＲＤＹ２）され、結果は信号ｏＲＤＹである。ｏＲＤＹは、２つのデータ送信器がデータ送信の準備状態であるときだけ真である。信号ｏＲＤＹ（１／２）は以降頻繁に、そのＡＮＤ結合形態でｏＲＤＹ（＝ｏＲＤＹ１  ＆  ｐＲＤＹ２）と見なされる。
【００１０】
入力信号、およびＥＡＬＵのフロー制御と共にＰＡＥの全体状態を表すＳｙｎｃ−ＵＮＩＴの状態から、出力信号が発生され、この出力信号はデータ送信器およびデータ受信器のＳｙｎｃ−ＵＮＩＴからは入力信号と見なされる。ＥＡＬＵのフロー制御のためにその状態情報とレジスタＦ−ＰＬＵＲＥＧが使用される。
ｒＲＤＹ：  これは、ＰＡＥがそのデータ処理を終了し、結果がＲ−ＲＥＧｓｆｔで得られることを指示する。ｒＲＤＹはｒＲＤＹｈおよびｒＲＤＹｌとして両方のデータ受信器に伝送される。しかしこれらは同じ信号である！
ｏＡＣＫ：  これは、ＰＡＥがそのオペランドを処理し、新たなデータをＯ−ＲＥＧｓｆｔに記録できることを指示する。ｏＡＣＫはｏＡＣＫ１とｏＡＣＫ２として両方のデータ送信器に伝送される。しかしこれらは同じ信号である！
ＲＤＹ信号はそのレベルを、ＡＣＫによる受領確認の入力まで維持する。このことは、データ受信器がデータの準備中に再コンフィギュレートされる場合に必要である。ＲＤＹがＡＣＫによる受領確認までに発生すると、データ受信器は再コンフィギュレーション後にデータが存在することを識別し、これを受信する。
【００１１】
複数のＰＡＥを介した信号の結合は以下のとおりである。
【００１２】
【表１】
2007174701.tif 000003
これは例えば、データ送信器の出力信号ｒＲＤＹは、ＰＡＥの入力信号ｏＲＤＹ１またはｏＲＤＹ２を表すことを意味する。ＰＡＥの出力信号ｒＲＤＹはデータ受信器の入力信号ｏＲＤＹを表す。
【００１３】
Ｓｙｎｃ−ＵＮＩＴは次のフロー形式を有する：
【表２】
2007174701.tif 000004
【００１４】
Ｓｙｎｃ−ＵＮＩＴは、オペランドが使用されるとき、クロック信号だけをイネーブルする特別のモードを使用する。このモードは、データ送信器がデータを各プロセッサクロックで送信せず、各ｎ番目のクロックで送信する場合に特に有利である。ここでクロックはノーマルクロックの１期間に相当し、ｒＡＣＫまたはｏＲＤＹ（１／２）を介してイネーブルされる。イネーブルはワンショット（ＯｎｅＳｈｏｔ）として示される。モードはワンショットモードとして示される。ここでクロックはＡＮＤゲートを介してイネーブル信号とＡＮＤ結合される。モードおよび信号選択はＦ−ＰＬＵＲＥＧを介して行われる。イネーブル信号、ｒＡＣＫまたはｐＲＤＹ（１／２）を介して発生し、ＳＭ−ＵＮＩＴにより延長することができる。このことは、１クロック以上を必要とする演算をワンショットモードで実行できるようにするために必要である。このことを可能にするため、ＳＭ−ＵＮＩＴの相応の信号線路がイネーブル信号とＯＲ結合される。
【００１５】
レジスタ登録ＳＴＯＰがＦ−ＰＬＵＲＥＧにセットされると、Ｓｙｎｃ−ＵＮＩＴは連続する機能を終了させる。その後はそれ以上のオペランドは受信されず受領されない。ｒＡＣＫが、結果がデータ受信器により受信されたことを指示すると直ちに、ＰＬＵの再コンフィギュレーション準備が信号ＲｅＣｏｎｆｉｇにより指示される。この信号は、ｒＡＣＫがＦ−ＰＬＵＲＥＧの停止をＤフリップフロップに記憶することにより発生される。ＲｅＣｏｎｆｉｇは、ＰＬＵがＦ−ＰＬＵＲＥＧに読み出しアクセスすることにより停止ビット位置を問い合わせることができる。
【００１６】
同じように、Ｓｙｎｃ−ＵＮＩＴｈは、エラー状態または別の状態信号を発生し、評価するために使用することもできる。
２．２．７  ＢＭ−ＵＮＩＴ
オペランドおよび結果を外部バスシステムに切り替えるために、バスマルチプレクスユニット（ＢＭ−ＵＮＩＴ）が設けられている。このユニットは、２つのマルチプレクサおよび２つゲートからなり、２つのマルチプレクサオペランド（Ｏ−ＭＵＸ）に対して、２つのゲートは結果（Ｒ−ＧＡＴＥ）に対して設けられている。ここでそれぞれ１つのスイッチが高位結果と低位結果に対して使用される。マルチプレクサとスイッチはマルチプレクサレジスタ（Ｍ−ＰＬＵＲＥＧ）を介して制御される。Ｓｙｎｃ−ＵＮＩＴ信号はスイッチを介してバスへ制御される。ここで、マルチプレクサ／スイッチと信号との関連は次のとおりである。
Ｏ−ＭＵＸ１：      ｏＲＤＹ１，ｏＡＣＫ
Ｏ−ＭＵＸ２：      ｏＲＤＹ２，ｏＡＣＫ
ＲＨ−ＧＡＴＥ：    ｒＲＤＹ，ｒＡＣＫｈ
ＲＬ−ＧＡＴＥ：    ｒＲＤＹ，ｒＡＣＫｌ
Ｒ−ＧＡＴＥはＭ−ＰＬＵＲＥＧを介して、バスシステムが駆動しない状態へもたらすことができる。
【００１７】
次の表は信号並びにそれぞれのインターフェース構造を表す。
【００１８】
【表３】
2007174701.tif 000005
【００１９】
複数のデータ受信器がデータ送信器から応答することも可能である（同報）。このために複数のデータ受信器が同じバスに接続する。データの受領を保証するために、受領線路のドライバ段ｏＡＣＫはオープンコレクタドライバとして構成されている。ここでバスは配線式論理和素子として動作する。すなわち、すべてのデータ受信器が受領確認して初めて、受領確認に対して必要なＨレベルが発生する。このことは次のようにして達成される。すなわち、受領確認しない各データ受信器がバスをオープンコレクタドライバを介してＬレベルに引き下げることにより行われる。受領確認したデータ受信器はオープンコレクタドライバを制御せず、したがってバスを負荷しない。すべてのデータ受信器が受領確認したなら、バスはもはや負荷されず、プルアップ抵抗を介してＨレベルをとる。
２．２．８  ＳｔａｔｅＢａｃｋ−ＵＮＩＴ
ＰＡＥは、その動作状態についてのフィードバックをそのロード論理回路（以下ＰＬＵと称する）に送出することができる（ＤＥ４４１６８８１Ａ１参照）。ロード論理回路はＰＡをコンフィギュレートし、有意な再コンフィギュレートを行うために個々のＰＡＥの状態についての情報を必要とする。このことはＳｔａｔｅＢａｃｋ−ＵＮＩＴを介して行われる。このＳｔａｔｅＢａｃｋ−ＵＮＩＴは、Ｆ−ＰＬＵＲＥＧの記録内容に応じて、結果の下位３ビットをＲ−ＲＥＧｓｆｔから、計算値をＰＬＵに送出するために伝送するか、または信号ＣａｒｒｙＯｕｔ−ＡｌｅｓｓＢとＡｅｑｕａｌＢ−０ｄｅｔｅｃｔを３ビット状態バスに伝送する。信号の切り替えを複数のＰＡＥから可能にするため、オープンコレクタドライバを介した簡単な配線式ＯＲ法が使用される。ＰＡＥの再コンフィギュレーションが、受信器がデータを受領確認して初めて開始されるようにするため、信号とオープンコレクタドライバとの間にラッチ段を挿入接続するｋとができる。このラッチ段は信号を、ｒＡＣＫの入力後に初めてイネーブルする。状態バスはＰＬＵにより監視される。ＰＬＵはそのプログラム経過とその再コンフィギュレーションにおいて、バスから送出された状態に応答する。
２．２．９  Ｐｏｗｅｒ−ＵＮＩＹＴ
ＰＡＥは節電モード（スリープモード）を有しており、この節電モードもＥＡＬＵの機能と同じようにＦ−ＰＬＵＲＥＧで調整される。そのためにセットされたならスリープモードに切り替えるビットが存在する。このために、ＰＡＥのクロック線路が一定の論理０または１にセットされるか、またはトランジスタを介してＰＡＥの電圧が遮断される。Ｆ−ＰＬＵＲＥＧはＰＡＥ内で常に電圧がかかっており、遮断することはできない。それぞれ実行される機能に対して使用されない、ＰＡＥの領域（ゲート）はＦ−ＰＬＵＲＥＧの評価によって遮断される。このことは、この領域を電圧源から遮断するトランジスタを介して行われる。不所望のノイズの影響を阻止するため、この領域の出力はプルアップ／プルダウン抵抗を介して定められる。
【００２０】
付加的に、Ｓｙｎｃ−ＵＮＩＴにより制御されるワンショットモード内でパワーセーブモードを使用することができる。この場合ＰＡＥの全体部分が、Ｆ−，Ｍ−ＰＬＵＲＥＧとＳｙｎｃ−ＵＮＩＴを除いて供給電圧から分離される。Ｓｙｎｃ−ＵＮＩＴがワンショットを検出して初めて、必要なすべてのＰＡＥ部分がＰｏｗｅｒ−ＵＮＩＴを介して接続される。Ｓｙｎｃ−ＵＮＩＴはクロック信号を、新たに接続されたすべての部分が動作可能になるまで遅延する。
２．２．１０  レジスタ
レジスタＦ−ＰＬＵＲＥＧとＭ−ＰＬＵＲＥＧはＰＬＵバスと接続されている。ＰＬＵから送信されるデータパケットのアドレスは比較器でデコードされる。ＰＡＥのアドレスが識別されると、データがレジスタに記憶される。ＰＬＵバスは次のように構成されている：
ＡＸ７．．０：    Ｘ／ＹマトリクスのＸアドレス
ＡＹ７．．０：    Ｘ／ＹマトリクスのＹアドレス
ＲＳ：      レジスタセレクト、論理０はＦ−ＰＬＵＲＥＧを選択し、論理１はＭ−ＰＬＵＲＥＧを選択する。
ＡＥＮ：    アドレスイネーブル、バスは有効なアドレスを含む。アドレスは、ＡＥＮが論理０である限りデコードしなければならない。ＡＥＮは、全バスアクセス中、すなわちデータ伝送の間、論理０である。
Ｄ２３．．００：  データ
ＤＥＮ：    データイネーブル、バスは有効データを含んでいる。データは、信号ＤＥＮの上昇エッジでレジスタに伝送されなければならない。
ＯＥＮ：    出力イネーブル、ＰＬＵは有効データをＰＬＵＲＥＧから読み出す。
２．２．１１  Ｆ−ＰＬＵＲＥＧの構成
１．書き込みアクセス時のレジスタ構成
【表４】
2007174701.tif 000006
【００２１】
【表５】
2007174701.tif 000007
リセット状態はすべてのビットで０である。
２．読み出しアクセス時のレジスタ構成
【表６】
2007174701.tif 000008
【００２２】
【表７】
2007174701.tif 000009
リセット状態はすべてのビットで０である。
【００２３】
【表８】
2007174701.tif 000010
【００２４】
値Ｍ（ｎ＋５）．．ｎ＝００００００，ｎ∈｛０，６，１２，１８｝は、マルチプレクサ／スイッチがオープンであり、バス接続が存在しないことを意味する。Ｍ−ＰＬＵＲＥＧを信号ＲｅＣｏｎｆｉｇを介して阻止する、すなわちＲｅＣｏｎｆｉｇがアクティブになると直ちにＰＡＥがすべてのバスシステムから遮断される。
【００２５】
リセット状態はすべてのビットで０である。
３．  要約
レジスタＦ−ＰＬＵＲＥＧへのコンフィギュレーションデータを低減することにより、ＰＡＥの機能を公知技術（例えばＦＰＧＡ技術）における場合より、比較的簡単かつ高速にコンフィギュレートおよび再コンフィギュレートできる。計算機構の網目化はＭ−ＰＬＵＲＥＧにおいて行われる。一方従来技術では、相互に関連しない多数の個々のコンフィギュレーションビットをセットしなければならない。レジスタの明快な構造によって（再）コンフィギュレーションが簡単になる。
【００２６】
ＰＡＥのスペース需要は、計算機構としての直接構成によって従来技術よりも小さい。従来技術において計算機構は、多数の論理セルによって実現されていた。同時に伝搬遅延は小さくなり、達成可能なクロック周波数は相応に高くなる。
【００２７】
同報機能はＢＭ−ＵＮＩＴにより保証される。このＢＭ−ＵＮＩＴは受領確認を自動的に行う。入出力側のレジスタ（Ｏ−ＲＥＧ，Ｒ−ＲＥＧ）により、時間にほぼ依存しないデータ伝送が保証される。
【００２８】
コンフィギュレーションおよび再コンフィギュレーションは、各ＰＡＥをシステム全体からレジスタＯ−ＲＥＧおよびＲ−ＲＥＧを介して減結合することにより格段に簡単になる。なぜなら個々のＰＡＥがほぼ相互に依存しないからである。ＰＬＵへのフィードバック、並びにＳＴＯＰとＲｅＣｏｎｆｉｇの共働によって、（再）コンフィギュレーションの効率的な制御が可能である。
【００２９】
節電機能の実現により、一部自動的（ＯｎｅＳｈｏｔ−ＭＯＤＥ）に、電力消費が低減される。
【００３０】
ＰＡＥ構造は、アーキテクチュアにおけるＦＰＧＡの効率を向上させるために実現することができる。このことにより、算術演算能力の格段の向上が実現される。
【実施例】
【００３１】
４．１  図面の詳細な説明
図１は、ＤＥ４４１６８８１Ａ１によるプロセッサを簡単化して示す。ことにＰＬＵ（０１０１）とそのバスシステム（０１０２）が示されている。ＰＡＥ（０１０３）はアレイとして示されており、チップ内部バス（０１０４）は概略的に示されている。
【００３２】
図２は、ＰＡＥの構造を概略的に示す。チップ内部バス（０２０１）はＢＭ−ＵＮＩＴ（０２０２）により導かれる。このＢＭ−ＵＮＩＴは、Ｍ−ＲＥＧ（０２０３）により選択されたバスをＯ−ＲＥＧ１ｓｆｔ（０２０４）にオペランド１として、Ｏ−ＲＥＧ（０２０５）にオペランド２としてさらに導通する。オペランド２のデータ経路では、Ｒ２Ｏ−ＭＵＸ（０２０６）を介して、結果レジスタＲ−ＲＥＧｓｆｔ（０２０７）にある結果が選択的にループされる。Ｏ−ＲＥＧｓｆｔ（０２０４）とＲ２Ｏ−ＭＵＸ（０２０６）からのデータはＥＬＡＵ（０２０８）で処理される。ＳｔａｔｅＢａｃｋ−ＵＮＩＴ（０２０９）を介して、ＰＬＵへのフィードバックが行われる。ＰＬＵバス（０２１０）はレジスタＦ−ＰＬＵＲＥＧ（０２１１）とＭ−ＰＬＵＲＥＧ（０２１２）への接続、並びにＳｔａｔｅＢａｃｋ−ＵＮＩＴ（０２０９）への接続を有する。このバスを介してＰＡＥはコンフィギュレートされ、監視される。Ｆ−ＰＬＵＲＥＧは、すべての機能的コンフィギュレーションデータを含み、Ｍ−ＰＬＵＲＥＧはＰＡＥの網目化情報を含んでいる。Ｓｙｎｃ−ＵＮＩＴ（０２１２）は、データ送信器、データ受信器および処理ＰＡＥ間のデータ交換の関係を制御する。ＳＭ−ＵＮＩＴ（０２１３）は、ＰＡＥの全内部経過を制御する。Ｐｏｗｅｒ−ＵＮＩＴ（０２１４）は電流供給部を制御し、電流消費の低減に用いる。
【００３３】
図３には、レジスタＭ−ＰＬＵＲＥＧとＦ−ＰＬＵＲＥＧの作用が示されている。ＰＬＵバス（０３０８）のアドレスＡＸとＡＹは、ＡＥＮ（アドレスイネーブル）が有効なバス転送率を指示する限り、比較器（０３０１）でＰＡＥのアドレスと比較される。ここで各ＰＡＥは一義的なアドレスを有しており、このアドレスはＰＡ内のその行および列からなる。ＤＥＮ（データイネーブル）がデータ伝送を指示すれば、ＲＳ（レジスタセレクト）を介してＭ−ＰＬＵＲＥＧ（０３０２）またはＦ−ＰＬＵＲＥＧ（０３０３）が選択される。ＤＥＮの上昇エッジでデータが該当するレジスタに記憶される。レジスタはＤフリップフロップ（０３０４）として実現されている。フローを明確にするためにタイミング線図０３０５が用いられる。Ｆ−ＰＬＵＲＥＧに読み出しアクセスするために、単にゲート（０３０６）を介して信号ＲｅＣｏｎｆｉｇがＳｙｎｃ−ＵＮＩＴからＰＬＵバスに出力される。イネーブルは比較器（０３０１）の結果と信号ＯＥＮを介して行われる。
【００３４】
図４ａはＯ−ＲＥＧのブロック回路図を示す。図４ｂにはＤフリップフロップからなるＯ−ＲＥＧの構造が示されている。タイミング線図が図４ｃに示されている。クロックはＳＴＮＣ−ＳＭから発生される。
【００３５】
図５ａはＯ−ＲＥＧのブロック回路図を示す。図５ｂにはＤフリップフロップ（０５０１）からなるＯ−ＲＥＧｓｆｔの構造が示されている。ＡＮＤゲート（０５０２）とＯＲゲート（０５０３）はインバータ（０５０４）を介して、モードにより制御されるマルチプレクサ（０５０６）を形成する。このマルチプレクサは、入力データをＤフリップフロップ（０５０１）に切り替えるか、またはＤフリップフロップの出力データを１ビットだけシフトし、その入力側に導く。ＡＮＤゲート（０５０５）は必要ではない。なぜなら入力は永久的に論理０だからである。これはただ見やすくするだけのモノである。図５ｃにはタイミング線図が信号Ｍｏｄｅに依存して示されている。クロックはＳＹＮＣ−ＳＭから発生される。
【００３６】
図６ａは、Ｒ−ＲＥＧｓｆｔの構造を示す。ここではレジスタ（０６０１）にマルチプレクサ（０６０２）が前置されており、このマルチプレクサは入力データをレジスタ（０６０１）に切り替えるか、またはレジスタ（０６０１）の出力データをシフトしてその入力側に導く。ＳＹＮＣ−ＳＭにより発生されたクロックは半クロックだけシフトされてレジスタに供給される。デコーダ（０６０３）を介してＭｏｄｅ０−２は、ＡＮＤゲートと後置されたＯＲゲートからなるマルチプレクサ（０６０６）を切り替える。ここで破線で示されたゲート（０６０５および以降）はわかりやすくするためにだけ示されている。これらは機能しない。なぜなら入力は常時、Ｌだからである。マルチプレクサは、状態Ｍｏｄｅ０−２＝０１０で入力信号をレジスタ（０６０７）に切り替える。この状態Ｍｏｄｅ０−２＝０００からＭｏｄｅ０−２＝００１ではレジスタ（０６０７）の出力値は左へ、状態Ｍｏｄｅ０−２＝０１１からＭｏｄｅ０−２＝１００では右へ、１ビットないし２ビットだけシフトされ、レジスタの入力側に供給される。シフト機能は、Ｍｏｄｅ０−２の状態に依存してタイミング線図、図６ｃに示されている。
【００３７】
図７ａはマルチプレクサＲ２Ｏ−ＭＵＸの構造を示す。このマルチプレクサはモードに依存して、オペランドまたは結果をＥＡＬＵにさらに供給する。ここで図７ａは従来のマルチプレクサとして構成されており、一方図７ｂには、ＣＭＯＳを使用することによりスペースおよび電力節電型の、転送ゲート（０７０１）の変形が示されている。この明細書に記載されたマルチプレクサはすべて転送ゲートによって構成することができる。
【００３８】
ゲートは、転送ゲートからなるマルチプレクサと等しく構成されている。しかしここではデータ交換の方向が全く逆である。
【００３９】
図８は、ＰＡＥ内部クロックＣＬＫと行われるアクティビティとの関係を示す。上昇エッジ（０８０１）でオペランドがＯ−ＲＥＧに記憶される。Ｈレベル（０８０２）の間、ＰＡＥはデータ（ΔＰＡＥ＝処理フェーズ）を処理する。これにはＯ−ＲＥＧとＲ−ＲＥＧとの間のデータ交換も含まれる。下降エッジ（０８０３）で結果はＲ−ＲＥＧに記憶される。Ｌ
レベル（０８０４）は、バスシステムに含まれるＢＭ−ＵＮＩＴの分配に使用される（ΔＮｅｔｗｏｒｋ＝バスフェーズ）。ＳＹＮＣ−ＳＭにより発生された信号（ｏＲＤＹとｏＡＣＫ、ｒＲＤＹとｒＡＣＫ）の時間経過が時間線図に示されている。
【００４０】
Ｓｙｎｃ−ＵＮＩＴのフローチャートが図９に示されている。状態マシンは２つの固定的状態ＤＡＴＥＮ（０９０１）ととＥＲＧＥＢＮＩＳ（０９０２）を識別する。ＤＡＴＥＮは上昇エッジに同期され、ＥＲＧＥＢＮＩＳは下降エッジに同期される。ここでは入力パラメータのそれぞれの状態が評価され、結果に応じて分岐路ＪＡ（０９０３／０９０４）またはＮＥＩＮ（０９０５／０９０６）にジャンプする。ＤＡＴＥＮにオペランドが用意されていなければＮＥＩＮにジャンプする。次のステップでは、マシンがＤＡＴＥＮの後へ戻りジャンプし、新たに評価するまで演算は実行されない。次にｏＲＤＹにより指示されるオペランドが用意されると、オペランドがＯ−ＲＥＧ（０９０７）に記憶される。オペランドは処理され（０９０８）、同時に評価される。
【００４１】
（０９０９）は、最後のサイクルがマルチサイクル演算（１クロックサイクル以上を必要とする連続演算）であるか否か、または１サイクル演算が経過したかを判断する。これらの場合には、オペランドがｏＡＣＫにより受領確認される（０９１０）。下降エッジにより、ＥＲＧＥＢＮＩＳが同期される。ここではフラグ"結果存在"がセットされているか否かを検査する（０９１１）。このフラグは、処理された結果がｒＲＤＹにより通報される（０９１２）ときに常にセットされる。２つの場合でＪＡ分岐路（０９０４）へジャンプする：
１．先行する結果が存在しない（フラグ"結果存在"が否定）。
２．先行する結果が存在し（フラグ"結果存在"が真）、これがｒＡＣＫにより受領確認される。この場合は（そしてこの場合だけ！）、０９０２が結果がリセットする（０９１３）。
【００４２】
それ以外の場合、ＮＥＩＮ分岐路（０９０６）へジャンプし、状態マシンがＥＲＧＥＢＮＩＳ（０９０２）へ戻りジャンプするまで演算は実行されない。ＪＡ分岐路（０９０４）では、結果が出力レジスタＲ−ＲＥＧｓｆｔに記憶される（０９１４）。その後、マルチサイクル演算の最後のサイクルであるか（０９１５）（０９０９参照）否か、または１サイクル演算が実行されたか否かが評価され、肯定の場合には結果の存在がｒＲＤＹにより通報される（０９１６）。状態マシンはＤＡＴＥＮ（０９０１）へ戻りジャンプする。演算の最後のサイクルであるか否か、または１サイクル演算であるか否かの識別は、信号ＦＩＮＩＳＨ（０９１６）を介してＳＭ−ＵＮＩＴにより問い合わされる。この信号は、最後の、またはただ１つのサイクルが実行された場合にアクティブとなる。ＳＭ−ＵＮＩＴにはＳＹＮＣ−ＵＮＩＴの状態がＲＵＮ（０９１７）を介して通報される。ＲＵＮは、演算が行われる場合にアクティブであり、それ以外の場合には非アクティブである。Ｆ−ＰＬＵＲＥＧでのＳＴＯＰ記録、およびそこから発生するＲｅＣｏｎｆｉｇのメカニズムは図９に示されていない。なぜなら、フローは通常のものであり、ＳＹＮＣ−ＵＮＩＴの説明から理解できるからである。
【００４３】
図１０は、Ｐｏｗｅｒ−ＵＮＩＴの基本構造を示す。信号ＳｌｅｅｐはＦ−ＰＬＵＲＥＧからトランジスタまたはトランジスタ段（１００１）に導通される。このトランジスタ段は、接続可能なすべてのセル機能に対する電圧供給を制御する。Ｓｙｎｃ−ＵＮＩＴはＯｎｅＳｈｏｔＰｏｗｅｒＳａｖｅ信号を送出する（図１６参照）。この信号を介して残りのセル機能の電圧供給がトランジスタまたはトランジスタ段（１００２）によりイネーブルされる。セルで実際に使用される機能に依存して、トランジスタまたはトランジスタ段（１００３）は不要な機能を遮断する（パワーダウン）。正常な電圧供給とＥＭＣ特性に対しては別の相応の措置、例えばコンデンサ等を取らなければならないことは自明である。
【００４４】
図１１は、図９のマシンの実現を示す。ＢＭ−ＵＮＩＴ（１１０１）を介して信号ｏＲＤＹ（１／２）とｒＡＣＫ（簡単に示すが実際には、ｒＡＣＫｈとｒＡＣＫｌ、ｒＡＣＫ＝  ｒＡＣＫｈ  ＆  ｒＡＣＫｌ）がＣＣＬＫにより制御されるラッチ（１１０２）に供給される。ここでラッチは、ＣＣＬＫのＬフェーズ（バスフェーズ）では透過であり、Ｈフェーズ（処理フェーズ）では状態を保持するように接続されている。ラッチの出力側ではＳｙｎｃ−ＳＭ（１１０３）に対する信号が得られる。ｒＲＤＹ（簡単化して示されている：実際にはｒＲＤＹｈとｒＲＤＹｌが存在する。これらは完全に同じであるが異なる受信器に導かれる）は１１０３からＢＭ−ＵＮＩＴ（１１０１）で否定され、再び反転オープンコレクタバスドライバ（１１０４）に送出される。バスは抵抗（１１０５）を介してＨにプルアップされる。ＢＭ−ＵＮＩＴは、以下の場合に切り替わる。
１．相応のバスがＢＭ−ＵＮＩＴにより制御されず、トランジスタ（１１０４）のベースにＬが印加されている。このことによりトランジスタはバスを負荷しない。
２．相応のバスがＢＭ−ＵＮＩＴにより制御され、信号が受領されず、トランジスタ（１１０４）のベースにＨが印加されている。これは、バスがＬにプルダウンされることを意味する。結果が同報機能を介して複数のでデータ受信器に分配されると、結果をまだ受領確認しておらず、待機サイクルを必要とするすべてのＰＡＥはバスをＬにプルダウンする。
３．相応のバスがＢＭ−ＵＮＩＴにより制御され、信号が受領され、トランジスタ（１１０４）のベースにＬが印加される。このことは、バスが負荷されないことを意味する。結果が同報機能を介して複数のデータ受信器に分配されると、結果データを受領確認し、待機サイクルを必要としないすべてのＰＡＥはバスを負荷しない。
【００４５】
バスはその基本状態でＨレベルである、すなわち受領確認する。場合２による非受領はバスをＬにプルダウンする。ここでバスは、すべてのＰＡＥが受領確認して初めてＨレベル、すなわち受領状態へ移行する。これにより配線式ＡＮＤ回路が実現される。Ｓｙｎｃ−ＳｔａｔｅＭａｃｈｉｎｅはＳＭ−ＵＮＩＴ（１１０６）の信号ＲＵＮ（１１０７）を使用する。これはＲＵＮに基づいて経過する。ＳＭ−ＵＮＩＴが処理の最後のサイクル、またはただ１つのサイクルに存在していれば、このユニットはそのことをＦＩＮＩＳＨ（１１０８）を介してＳｙｎｃ−ＳｔａｔｅＭａｃｈｉｎｅに通報する。ＦＩＮＩＳＨは評価ユニットで最後のサイクル（０９０７０９１５）の識別のために評価される。ＳＭ−ＵＮＩＴはＰＡＥ内部クロックＣＬＫに同期する。
【００４６】
図１２は、ＢＭ−ＵＮＩＴの構造を示す。Ｍ−ＰＬＵＲＥＧへの記録に依存して、マルチプレクサ（１２０１，１２０２）はオペランドを内部バス（１２０３）からＯ−ＲＥＧへ接続する。同じようにゲート（１２０４，１２０５）は結果の上位半分と下位半分をバスに接続する。マルチプレクサ１２０６は、ｒＲＤＹ（１／２）を１２０１と１２０２の位置にしたがって接続し、またｒＡＣＫを１２０４と１２０５の位置にしたがってバスからＰＡＥへ接続する。ここで２つのデータ受信器のｒＡＣＫは相互にＡＮＤ結合される。１つのデータ受信器しか存在しない場合、マルチプレクサは欠けているｒＡＣＫの代わりにこれが論理１へ戻すように接続されている。１２０７はゲートを有しており、このゲートは信号ｏＡＣＫ（１／２）とｒＲＤＹをバスに接続する。ここで信号ｏＡＣＫ（１／２）はまず反転され、次にオープンコレクタドライバ（１１０４）を介してバスに接続される。
【００４７】
図１３は、Ｏ−ＭＵＸの構造を示す。ここには３：５デコーダ（１３０１）が、Ｍ−ＰＬＵＲＥＧからの信号Ｍｏｄｅ２．．０の評価のために設けられている。マルチプレクサはＡＮＤゲート（１３０２）を介して後置接続されたＯＲゲート（１３０３）により形成される。ここでデコーダ（１３０１）のＭｏｄｅ２．．０＝０００の評価信号は直接ＯＲゲートに接続される（１３０４）。このことにより開放状態、すなわちバスシステムへの接続がない場合には、常に論理１に戻るようになる（図１２のｒＡＣＫ参照）。簡単にするためここには少数のバスしか示されていない。
【００４８】
図１４には、Ｒゲートの構造が示されている。ここでは、Ｍ−ＰＬＵＲＥＧからの信号Ｍｏｄｅ２．．０を評価するために３：４デコーダ（１４０１）が設けられている。デコーダのＭｏｄｅ２．．０＝０００の評価信号は使用されない。これにより、このビットコンビネーションではバス接続が行われない。ゲート（１４０２）はＡＮＤゲートまたは透過ゲート（０７０１参照）により形成される。ここにはバス負荷をドライブするための増幅段が前置または後置接続される。簡単にするため少数のバスしか示されていない。
【００４９】
ＳｔａｔｅＢａｃｋ−ＵＮＩＴが図１５に示されている。Ｍ−ＰＬＵＲＥＧでの調整にしたがってマルチプレクサ（１５０１）は、ＥＡＬＵからの信号ＣａｒｒｙＯｕｔ−ＡｌｅｃｃＢ，ＡｅｑｕａｌＢ−０ｄｅｔｅｃｔ、またはＲ−ＲＥＧ、Ｒ−ＲＥＧ２．．０の出力側を導通接続する。信号はオープンコレクタトランジスタ段（１５０２）に達し、ＰＬＵバスに接続される。ここでＰＬＵバスは外部の、ＰＬＵの近傍にプルアップ抵抗（１５０３）を必要とする。ラッチ１５０４はオプションである。１５０１からの出力信号がループされると、この信号は、データ受信器がデータをｒＡＣＫを介して受領確認した後に初めてバス（１５０３）に接続される。このことにより、データが記録されたときにも、再コンフィギュレーションの準備性が状態信号を介して初めて指示されるようになる。通常、このことはＳＴＯＰとＲｅＣｏｎｆｉｇの共働によってＳｙｎｃ−ＵＮＩＴで制御される。したがって、ラッチはオプションである。ここでｒＡＣＫはラッチクロックとして使用される。ラッチはｒＡＣＫ＝１のときに透過であり、ｒＡＣＫ＝０のときに記憶する。
【００５０】
図１６は、ワンショットモードの機能を説明する図である。マルチプレクサ（１６０１）を介して信号
１．Ｖｃｃ
２．ｏＲＤＹ１
３．ｏＲＤＹ２
４．（ｏＲＤＹ１＆ｒＡＣＫ）
は、Ｆ−ＰＬＵＲＥＧの調整に依存してセルクロックを導通する。ここでＶｃｃを介した導通によりクロックは常にフリーランする（タイミング線図の"通常動作"参照）。
【００５１】
３つの他のモードでは、クロックは信号または信号コンビネーションがクロックをイネーブルして初めてフリーランする。イネーブルはラッチ（１６０２）によりクロックＣＣＬＫに同期して行われる。これによりイネーブル信号が短すぎてもフェーズが早期に中止されることがない。ここでラッチは、ＣＣＬＫのＬフェーズでは透過であり、Ｈフェーズで値を保持する。イネーブル信号はＡＮＤゲートペア（１６０３と１６０４）に達し、このゲートペアがクロックをイネーブルする。インバータ（１６０５）を介して反転されたクロック信号！ＣＬＫが形成される。ＣＬＫは、同じ位相であることを保証するために遅延素子（１６０６）を通過する（タイミング線図"ワンショット動作"参照）。ここでＣＣＬＫは、１６０４への線路で２つの遅延回路（１６１０）で遅延され、１６０３に印加されるＣＣＬＫ（これはマルチプレクサ（１６０８）により遅延される）と同じ位相であることが保証される。ＰＡＥがパワーセーブモードにもたらされると、セルの供給電圧はほとんど遮断される。このことはＯＲゲート１６１１を介して行われる。パワーセーブモードがスイッチオンされると、すなわちＰｏｗｅｒＳａｖｅ＝１になると、否定信号がＬになる。さらにワンショットモードが投入接続され、レジスタ１６０２がＬになると、電圧供給トランジスタのワンショットパワーセーブ信号を介してＰｏｗｅｒ−ＵＮＩＴ（図１７参照）が遮断される。しかしレジスタ１６０２が論理１にあると（またはＰｏｗｅｒＳａｖｅ＝０）、電圧供給トランジスタは１６１１を介してスイッチオンされる。以下の表がこの機能の概観を示す。
【００５２】
【表９】
2007174701.tif 000011
【００５３】
供給電圧を投入接続する場合には、セルが動作可能になるまで時間的に所定の待機時間が発生する。しかし正常に機能させるには、信号を相応に遅延させなければならない。このためにＣＣＬＫは遅延線路（１６０７）を介して導かれる。マルチプレクサ（１６０８）は、Ｆ−ＰＬＵＲＥＧからの信号ＰｏｗｅｒＳａｖｅに相応して、通常のクロックまたは遅延したクロックをセルに導くかを選択する。非反転クロックだけが時間＄／Ｄｅｌｔａ＄ＰｏｗｅｒＯｎだけ遅延され、反転クロックは遅延されない。このことにより、結果は残りの構成素子機能に対して同期して使用される。これにより使用可能な処理時間がΔｐｒｏｃｅｓｓに減少する。構成素子の最大クロック周波数はしたがって、ΔＰｏｗｅｒＯｎ＋Δｐｒｏｃｅｓｓに依存する（タイミング線図"パワーセーブによるワンショット動作"参照）。
【００５４】
図１７は、ＰＡＥの実現例を示す。ここには、ＢＭ−ＵＮＩＴ、Ｐｏｗｅｒ−ＵＮＩＴ、ＳｔａｔｅＢａｃｋ−ＵＮＩＴ、ＰＬＵバスおよびＭ−ＰＬＵＲＥＧは示されていない。
【００５５】
ＰＡＥは３つの入力側ｏＲＥＧ１（１７０１）、ｏＲＥＧ２（１７０２），ｏＲＥＧ３（１７０３）を処理すべきデータに対して有する。それらのデータを入力レジスタはＢＭ−ＵＮＩＴを介して先行するＰＡＥから受け取る。すべての入力レジスタはシフト機能を有していないレジスタである。
【００５６】
Ｆ−ＰＬＵＲＥＧ（１７０４，１７０５，１７０６）は、ＰＡＥの多数のコンフィギュレーションを決定する。これらはＰＬＵからＰＬＵバスを介してロードされる。これらにはそれぞれ１つのコンフィギュレーションが記憶されており、マルチプレクサ（１７２３）を介して選択される。マルチプレクサ（１７２３）はレジスタ（１７２４）により制御される。レジスタ（１７２４）はデータまたはトリガを、先行するＰＡＥからＢＭ−ＵＮＩＴにより受け取る。このＰＡＥは、データを入力レジスタに対して送出するＰＡＥと同じではない。Ｆ−ＰＬＵＲＥＧの数はさらに多数であるものも、さらに少数であるものも考えられる。
【００５７】
第３の入力レジスタｏＲＥＧ３（１７０３）はオペランドをマルチプル加算機能に対して送出する。ここでｏＲＥＧ１（１７０１）の内容は、ｏＲＥＧ２（１７０２）の内容とマルチプレクサ（１７０３）と乗算され、引き続きｏＲＥＧ３（１７０３）の内容が加算／比較器（１７１８）に加算される。ここで加算／比較器は、加算を実行するように構成されている。乗算だけを実行すべき場合、ｏＲＥＧ３（１７０３）には値０がロードされる。加算だけを実行すべき場合には、Ｆ−ＰＬＵＲＥＧはマルチプレクサ（１７１１）を切り替える。これによりｏＲＥＧ１（１７０１）の値は直接、加算／比較器（１７１８）に到達する。加算／比較器（１７１８）の第２の機能がｏＲＥＧ１（１７０１）の値と、ｏＲＥＧ３（１７０３）の値を取れば、２つの値を比較する。出力信号ＣａｒｒｙＯｕｔ−ＡｌｅｓｓＢとＡｅｑｕａｌＢ−０ｄｅｔｅｃｔ（１７１９）は、２つの値が同じであるか、またはｏＲＥＧ３（１７０３）の値がｏＲＥＧ１（１７０１）の値よりも大きいかまたは小さいかを指示する。
【００５８】
ＰＡＥで実現されるさらなる機能は、シフトレジスタ（１７１２）、ディバイダ（１７１３）、ＡＮＤ、ＯＲ、ＮＯＴのような論理機能（１７１４）およびカウンタ（１７１５）である。カウンタ（１７１５）は、所定の値から０まで計数すると直ちにトリガ信号（１７２０）を形成する。カウンタ（１７１５）に、ｏＲＥＧ３（１７０３）も受け取る値が直接ロードされる。カウントアップカウンタのような別のカウンタを使用することも考えられる。この場合は、ゼロから所定の値まで計数し、トリガ信号を発生する。
【００５９】
機能ユニットの結果はマルチプレクサ（１７１６）により２つの出力レジスタｒＲＥＧ１（１７１０）とｒＲＥＧ２（１７１７）にさらに導通される。これらのレジスタはＢＭ−ＵＮＩＴと接続しており、データを後続のＰＡＥにさらに出力する。フローは、トリガ論理回路（１７０７）と接続されたＳｙｎｃ−ＵＮＩＴ（１７０８）により制御される。このＳｙｎｃ−ＵＮＩＴはさらにＣｏｎｆｉｇ−Ｓｔａｔｅマシンと制御信号を交換し、この制御信号はコンフィギュレーションが変更される際に正しいフローをマルチプレクサ（１７２３）により保証する。トリガ論理回路（１７０７）はＦ−ＰＬＵＲＥＧと接続しており、到来する信号（１７２２）をＦ−ＰＬＵＲＥＧに記憶されているコンフィギュレーションに依存して評価する。到来する信号はＲｅＣｏｎｆｉｇ、一般的トリガ信号およびハンドシェーク信号ｏＲＤＹとｒＡＣＫを含んでいる。コンフィギュレーションに依存して、トリガ論理回路（１７０７）はハンドシェーク信号をＳｙｎｃ−ＵＮＩＴ（１７０８）へさらに出力する。このＳｙｎｃ−ＵＮＩＴもまたイネーブル信号を入力レジスタ、出力レジスタおよびカウンタに対して発生する。さらにＳｙｎｃ−ＵＮＩＴ（１７０８）はハンドシェーク信号ｏＡＣＫとｒＲＤＹを形成し、これらの信号をトリガ論理回路（１７０７）にさらに送出する。コンフィギュレーションに依存して信号（１７１９）またはカウンタ（１７２０）のトリガが一般的なトリガ信号として使用され、トリガ論理回路（１７０７）に供給される。トリガ論理回路（１７０７）から出て信号（１７２１）ＲｅＣｏｎｆｉｇ、ハンドシェークｏＲＤＹとｒＡＣＫおよび一般的トリガ信号が再びＢＭ−ＵＮＩＴに供給される。
【００６０】
図１８は、図１７に示したＰＡＥと同じ機能を有するＰＡＥを示す。ここではＢＭ−ＵＮＩＴ、Ｐｏｗｅｒ−ＵＮＩＴ、ＳｔａｔｅＢａｃｋ−ＵＮＩＴおよびＭ−ＰＬＵＲＥＧの表示が省略されている。これらは３つの入力レジスタｏＲＥＧ１（１８０１）、ｏＲＥＧ２（１８０２）、ｏＲＥＧ３（１８０３）、２つの出力レジスタｒＲＥＧ１（１８０４）、ｒＲＥＧ２（１８１８）、３つのＦ−ＰＬＵＲＥＧ（１８１３，１８１４，１８１５）、マルチプレクサ（１８１８）、Ｓｙｎｃ−ＵＮＩＴ（１８０５）およびトリガ論理回路（１８０６）からなる。関数ユニットはディバイダ（１８０７）、マルチプレクサ（１８１７）、加算／比較器（１８０９）、論理関数（１８１０）、シフトレジスタ（１８１１）およびカウンタ（１８１２）である。個々のユニットの機能は図１７の機能に相応する。別の関数をＰＡＥに組み込むことも考えられる。これは例えば三角関数、ルート関数、指数関数等である。このことはもちろん、図１７に示されたＰＡＥに対しても当てはまる。個々の関数は整数ユニットまたは浮動小数点ユニットとして実現される。図１７との相違は、個々の関数ユニットバスシステム（１８１６）を介して結合されており、これにより個々の関数を任意の順序で相互に結合できることである。接続は、Ｆ−ＰＬＵＲＥＧにファイルされているコンフィギュレーションによって定められる。バスシステム（１８１６）は様々に構成することができる。１つまたは複数のセグメント化されたバスが可能であり、それらのセグメントはそれぞれ２つの相互に網目化された機能を接続するか、またはそれぞれ２つの関数ユニットとを相互に網目化する多数の貫通バスである。さらに個々の関数ユニットとレジスタが目的アドレスを発送し、これにより接続を形成することができる。
【００６１】
図１９は、Ｃｏｎｆｉｇ−Ｓｔａｔｅマシンを示す。このマシンはコンフィギュレーションレジスタを管理する。開始時にＣｏｎｆｉｇ−Ｓｔａｔｅマシンはアイドル状態（１９０１）にある。この状態は、ｒＲＤＹ信号がＣｏｎｆｉｇＰＡＥに到達し、ＣｏｎｆｉｇＰＡＥがコンフィギュレーションレジスタを選択した後に初めて終了する。その後、Ｃｏｎｆｉｇ−Ｓｔａｔｅマシンはストップ状態（１９０２）に移行し、ストップ信号をＰＡＥのＳｙｎｃ−ＵＮＩＴ（１９０２）に送信する。ＰＡＥはその演算を取り敢えず可能な時点で終了し、ストップ応答をＣｏｎｆｉｇ−Ｓｔａｔｅマシンに送信する。次にこのマシンはリロード状態（１９０３）へ移行し、イネーブル信号をＣｏｎｆｉｇＰＡＥのレジスタに送信する。その後、Ｃｏｎｆｉｇ−Ｓｔａｔｅマシンは再スタート状態（１９０４）へ移行し、スタート信号をＳｙｎｃ−ＵＮＩＴへ送信し、これがその処理を再び開始する。同時にＳｙｎｃ−ＵＮＩＴはｒＡＣＫ信号をＣｏｎｆｉｇＰＡＥに送信する。続いてＣｏｎｆｉｇ−Ｓｔａｔｅマシンは再びアイドル状態（１９０１）へジャンプする。
【００６２】
図２０は、ＰＡＥの種々のコンフィギュレーションを自動的に実行するためのＳｔａｔｅマシンを示す。このマシンは以下、ループ状態マシンと称する。なぜなら、複数のＦ−ＰＬＵＲＥＧが備わっているからであり、有利には複数の演算を順次実行し、続いてデータ、並びにトリガ信号とハンドシェーク信号を後続のＰＡＥにさらに出力する。
【００６３】
個々の演算結果はＰＡＥのｒＲＥＧからすでに説明した帰還結合を介して入力レジスタにフィードバックされる。この過程は、外部ストップループ信号または内部カウンタにより制御される。
【００６４】
開始時にループ状態マシンはアイドル状態（２００１）にある。アイドル状態（２００１）でループ状態マシンはリセット信号をカウンタに出力する。このカウンタは、Ｆ−ＰＬＵＲＥＧの選択に用いる。先行するＰＡＥのｒＲＤＹの後で、ループ状態マシンはコンフィギュレーション状態（２００２）へ移行する。ここでループ状態マシンは、ＰＡＥに対するハンドシェーク信号とＣｏｎｆｉｇ−Ｓｔａｔｅマシンに対するコントロール信号を形成する。さらにイネーブル信号がカウンタに対して形成され、カウンタの値が１だけカウントアップされる。ループ状態マシンがストップループ信号を受け取らないか、またはＰＡＥの内部カウンタがその最終値に達していなければ、ループ状態マシンはコンフィギュレーション状態（２００２）に留まり、前に説明した経過が繰り返される。ストップループ信号の到来時、またはＰＡＥの内部カウンタがその最終値に達していなければ、状態マシンはアイドル状態（２００１）へ戻り、ｒＲＤＹ信号が後続のＰＡＥに供給される。
【００６５】
図２１は、シーケンシャルフローに対するＰＡＥの部分を示し、Ｆ−ＰＬＵＲＥＧに記憶されたコンフィギュレーションを必要とする。Ｆ−ＰＬＵＲＥＧ（２１０４）はそのデータをＰＬＵ（２１０７）から受け取る。このＦ−ＰＬＵＲＥＧは前に説明した実施例から多少変形されている。各Ｆ−ＰＬＵＲＥＧは付加的ビットを受け取り、このビットはいわゆるループビット（２１０６）である。このループビットは図２０で説明したループ状態マシン（２１０１）に接続部（２１１２）を介してフィードバックされる。そしてそこでストップループ信号として使用される。すなわちループビットがセットされると（２１０６）ループ過程が終了し、それ以外の場合、ループ過程はループビットがセットされるか、または図２０で説明したループ状態マシン（２１０１）の内部カウンタがその最終値に達するまで続けられる。ループ状態マシン（２１０１）はカウンタを制御し、カウンタの値はＦ−ＰＬＵＲＥＧ（２１０４）の選択をマルチプレクサ（２１０５）により制御する。Ｃｏｎｆｉｇ−Ｓｔａｔｅマシンのコントロール信号とＰＡＥのハンドシェーク信号は接続部（２１１３）により伝送される。Ｆ−ＰＬＵＲＥＧのコンフィギュレーションデータは接続部（２１０８）を介してＰＡＥの機能ユニットへさらに出力される。
【００６６】
カウンタ（２１０２）はイネーブル信号（２１１０）を受け取り、これによりカウンタ（２１０２）の値は１つアップされる。さらにループ状態マシン（２１０１）はループ過程が終了すると直ちにリセット信号（２１１１）をカウンタに出力する。マルチプレクサ（２１０３）を介してループモードとＰＡＥでの通常フロートを選択することができる。通常フローではマルチプレクサ（２１０３）は、Ｆ−ＰＬＵＲＥＧ（２１０４）を選択するための日付（２１０９）をマルチプレクサさらに出力する。
５．概念定義
ＡｅｑｕａｌＢ−０ｄｅｔｅｃｔ  ＥＡＬＵにより発生された信号。この信号は算術演算時に、結果が０であることを指示する。比較の際には、オペランドＡがオペランドＢに等しいことが指示される。
ＡＬＵ  算術論理ユニット。データ処理のための基本ユニット。このユニットは、加算、減算、場合により乗算、割り算、級数展開等の算術演算を実行する。ここでこのユニットは整数ユニットまたは浮動小数点ユニットとして構成することができる。同じようにこのユニットは論理演算、例えば論理和、論理積並びに比較を実行することができる。
ＢＭ−ＵＮＩＴ  データをＰＡＥの外にあるバスシステムに供給するためのユニット。供給はデータ入力に対してマルチプレクサを介し、データ出力に対してゲートを介して行われる。ｏＡＣＫ線路はオープンコレクタドライバとして実現される。ＢＭ−ＵＮＩＴはＭ−ＰＬＵＲＥＧにより制御される。
同報機能  ＰＡＥのデータを複数のデータ受信器に送信すること。
ＣａｒｒｙＯｕｔ−ＡｌｅｓｓＢ  ＥＡＬＵにより発生された信号、この信号は算術演算の際に伝送を指示する。比較の際には、オペランドＡがオペランドＢより小さいことを指示する。
データ受信器  ＰＡＥに対するデータをオペランドとして使用するユニット。
Ｄフリップフロップ  信号をクロックの上昇エッジで記憶する記憶素子。
ＥＡＬＵ  拡張算術論理ユニット。ＤＥ４４１１６８８１Ａ１によるデータ処理装置の駆動の際に必要とされる、または有利な特別機能だけＡＬＵが拡張される。これは特にカウンタである。
ＦＰＧＡ  プログラム可能論理構成素子。従来技術
Ｆ−ＰＬＵＲＥＧ  ＰＡＥの機能がセットされるレジスタ。同じようにワンショットモードおよびスリープモードがセットされる。このレジスタはＰＬＵにより書き込まれる。
ゲート  論理基本機能を実行するトランジスタ群。基本機能は例えば、ＮＡＮＤ、ＮＯＲ、透過ゲートである。
Ｈレベル  論理１レベル。使用される技術に依存する。
ハンドシェーク  信号Ａが状態を指示し、別の信号Ｂが、信号Ａが許容され、これに基づき応答したことを確認する信号プロトコル。
コンフィギュレーション  論理ユニット、（ＦＰＧＡ）セル、またはＰＡＥの機能および網目化の決定（再コンフィギュレーション、参照）
ラッチ  信号を通常はＨレベルの間、透過してさらに導通し、Ｌレベルの間は記憶する記憶素子。ＰＡＥには部分的ラッチが設けられており、このラッチではレベルの機能が正確に反転される。ここでは通常のラッチの前にインバータが接続される。
Ｍ−ＰＬＵＲＥＧ  ＰＡＥの網目化がセットされるレジスタ。このレジスタはＰＬＵにより書き込まれる。
Ｏ−ＭＵＸ  ＢＭ−ＵＮＩＴ内のマルチプレクサ。このマルチプレクサはオペランドのバスシステムを選択する。
ワンショット  ＰＡＥがプロセッサクロックよりも少ないクロックで動作するモード。このクロックはプロセッサクロックに同期し、期間は相応する。位相シフトは存在しない。このクロックは、信号ｏＲＤＹ（１／２）またはｒＲＤＹを介してイネーブルされる。このモードは、データ送信器またはデータ受信器がプロセッサクロックよりも緩慢にデータを送信または受信する場合に、節電のために用いる。
オープンコレクタ  トランジスタのコレクタがプルアップを介して、Ｈレベルに関連するバス信号にある回路技術。トランジスタのエミッタはアースに接続される。トランジスタのスイッチングは、バス信号をＬレベルに引き下げることにより行われる。この方法の利点は、多数のこのようなトランジスタがバスを電気的衝突なしに制御できることである。ここでの信号はＯＲ結合であり、いわゆる配線式ＯＲが得られる。
Ｏ−ＲＥＧ  ＥＡＬＵのオペランドを記憶するためのオペランドレジスタ。ＰＡＥがデータ送信に時間的および機能的に依存しないようにする。このことによりデータ伝送が簡単化される。なぜなら、データ伝送を非同期、またはパケット指向で行うことができるからである。同時に再コンフィギュレーションのために、データ送信器がＰＡＥに依存しないか、またはＰＡＥがデータ送信器に依存しないようにできる。
Ｏ−ＲＥＧｓｆｔ  ＳＭ−ＵＮＩＴにより制御されるシフトレジスタを備えたＯ−ＲＥＧ
ＰＡ  プロセッシングアレイ：ＰＡＥからなるアレイ
ＰＡＥ  プロセッシングアレイ素子：Ｏ−ＲＥＧ、Ｒ−ＲＥＧ、Ｒ２Ｏ−ＭＵＸ、Ｆ−ＰＬＵＲＥＧ、Ｍ−ＰＬＵＲＥＧ、ＢＭ−，ＳＭ−，Ｓｙｎｃ−，ＳｔａｔｅＢａｃｋ−ＵＮＩＴおよびＰｏｗｅｒ−ＵＮＩＴを備えたＥＡＬＵ。
ＰＬＵ  ＰＡＥをコンフィギュレーションおよび再コンフィギュレーションするためのユニット。そのタスクに対して専用に適合されたマイクロコントローラによって構成される。
パワーセーブモード  ワンショットモード内での節電モード。オペランドが実行されないとき、Ｆ−，Ｍ−ＰＬＵＲＥＧおよびＳｙｎｃ−ＵＮＩＴを除くＰＡＥのすべての部分には電圧が供給されない。
Ｐｏｗｅｒ−ＵＮＩＴ  節電機能を制御するユニット。
プルダウン  バス線路をＬレベルに下げる抵抗。
プルアップ  バス線路をＨレベル上げる抵抗。
Ｒゲート  ＢＭ−ＵＮＩＴ内のスイッチ。このスイッチは結果を相応のバスシステムに接続する。ここでいくつかの信号はオープンコレクタドライバを介して接続される。Ｒゲートはバスドライバとして動作し、バスニュートラルモードへ移行することができる。
Ｒ２Ｏ−ＭＵＸ  結果をＲ−ＲＥＧｓｆｔ内でループさせるためのマルチプレクサ。Ｏ−ＲＥＧとＥＡＬＵとの間のデータ経路に配置される。
Ｒ−ＲＥＧｓｆｔ  ＥＡＬＵの結果を記憶するための結果レジスタ。ＰＡＥがデータ受信器に時間的および機能的に依存しないようにする。このことによりデータ伝送が簡単化される。なぜなら、データ伝送を非同期またはパケット指向で実行できるからである。同時に再コンフィギュレーションのために、データ受信器がＰＡＥに依存しないように、またはＰＡＥがデータ受信器に依存しないようにできる。レジスタにはシフト機能が設けられており、この機能はＳＭ−ＵＮＩＴにより制御される。
シリアル（連続）演算  データ語またはアルゴリズムがシリアル処理により実行される演算。連続乗算、連続割り算、級数展開。
スリープモード  Ｆ−ＰＬＵＲＥＧ以外にＰＡＥには電圧が印加されない節電モード。
ＳＭ−ＵＮＩＴ  ＳｔａｔｅＭａｃｈｉｎｅ−ＵＮＩＴ。ＥＡＬＵを制御する状態マシン。
ＳｔａｔｅＢａｃｋ−ＵＮＩＴ  状態信号のＰＬＵへのフィードバックを制御するユニット。マルチプレクサとオープンコレクタバスドライバ段からなる。
Ｓｙｎｃ−ＵＮＩＴ  ＰＡＥをデータ送信器およびデータ受信器に同期させ、ＰＡＥの再コンフィギュレーションを監視するユニット。同時にワンショット機能が引き受けられる。
【００６７】
ゲート（Ｔｏｒ）  信号をさらに導通し、または阻止するスイッチ。簡単な比較：リレー。
【００６８】
再コンフィギュレーション  ＰＡＥの任意の量を、ＰＡＥの任意の残量がその固有機能を継続している間に新たにコンフィギュレーションすること。（コンフィギュレーション、参照）
状態マシン  種々の状態を取ることができる論理回路。状態間の移行は種々の入力パラメータに依存する。このマシンは複雑な機能を制御するのに使用され、従来技術に相応する。
６  取り決め
６．１  名称取り決め
構成群                      −ＵＮＩＴ
動作形式                    −ＭＯＤＥ
マルチプレクサ              −ＭＵＸ
否定信号                    ｎｏｔ−
ＰＬＵに対するレジスタ      −ＰＬＵＲＥＧ
内部レジスタ                −ＲＥＧ
シフトレジスタ              −ｓｆｔ
６．２  機能取り決め
【表１０】
2007174701.tif 000012
【図面の簡単な説明】
【００６９】
【図１】図１は、ＰＬＵを有する１つのＰＡへの複数のＰＡＥの構成を示す。入／出力システムノードメモリへの接続はない。
【図２】図２は、ＰＡＥの構造を示す。
【図３】図３は、Ｆ−ＰＬＵＲＥＧとＭ−ＰＬＵＲＥＧの構造を示す。
【図４】図４は、Ｏ−ＲＥＧの構造を示す。
【図５】図５は、右シフト機能を有するＯ−ＲＥＧｓｆｔの構造を示す。
【図６】図６は、右／左１−２ビットバレル型シフタを有するＲ−ＲＥＧｓｆｔの構造を示す。
【図７】図７は、Ｒ２Ｏ−ＭＵＸの構造、並びに伝送ゲート技術でのＭＵＸの実現を示。
【図８】図８は、クロック同期、遅延および同期信号を示す。
【図９】図９は、Ｓｙｎｃ−ＵＮＩＴの機能を説明する図である。
【図１０】図１０は、Ｐｏｗｅｒ−ＵＮＩＴの構造を示す。
【図１１】図１１は、Ｓｙｎｃ−ＵＮＩＴの構造を示す。
【図１２】図１２は、ＢＭ−ＵＮＩＴの構造を示す。
【図１３】図１３は、４バスシステムに制限されたＯ−ＭＵＸの構造を示す。
【図１４】図１４は、４バスシステムに制限されたＲ−ＧＡＴＥの構造を示す。
【図１５】図１５は、ＳｔａｔｅＢａｃｋ−ＵＮＩＴの構造を示す。
【図１６】図１６は、ＯｎｅＳｈｏｔ−ＭＯＤＥおよびＯｎｅＳｈｏｔ／ＰｏｗｅｒＳａｖｅ−ＭＯＤＥの基本原理を示す。
【図１７】図１７は、ＰＡＥの実施例を示す。
【図１８】図１８は、ＰＡＥの構造を示し、ここでは個々の機能の接続をバスシステムを介して行う。
【図１９】図１９は、コンフィギュレーションステートマシンの機能を示す。
【図２０】図２０は、ループステートマシンの機能を示す。
【図２１】図２１は、コンフィギュレーションデータのサイクル処理を示す。
【図１】
2007174701.tif 000013
【図２】
2007174701.tif 000014
【図３】
2007174701.tif 000015
【図４】
2007174701.tif 000016
【図５】
2007174701.tif 000017
【図６】
2007174701.tif 000018
【図７】
2007174701.tif 000019
【図８】
2007174701.tif 000020
【図９−１】
2007174701.tif 000021
【図９−２】
2007174701.tif 000022
【図１０】
2007174701.tif 000023
【図１１】
2007174701.tif 000024
【図１２】
2007174701.tif 000025
【図１３】
2007174701.tif 000026
【図１４】
2007174701.tif 000027
【図１５】
2007174701.tif 000028
【図１６】
2007174701.tif 000029
【図１７】
2007174701.tif 000030
【図１８】
2007174701.tif 000031
【図１９】
2007174701.tif 000032
【図２０】
2007174701.tif 000033
【図２１】
2007174701.tif 000034