JP4146519B2 - プログラミング可能なコンポーネントにおけるコンフィグレーション可能な各エレメントの自己同期を確立する方法 - Google Patents
プログラミング可能なコンポーネントにおけるコンフィグレーション可能な各エレメントの自己同期を確立する方法 Download PDFInfo
- Publication number
- JP4146519B2 JP4146519B2 JP53356398A JP53356398A JP4146519B2 JP 4146519 B2 JP4146519 B2 JP 4146519B2 JP 53356398 A JP53356398 A JP 53356398A JP 53356398 A JP53356398 A JP 53356398A JP 4146519 B2 JP4146519 B2 JP 4146519B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- trigger
- configurable
- configuration
- instruction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000000034 method Methods 0.000 claims description 40
- 239000013598 vector Substances 0.000 claims description 28
- 230000007246 mechanism Effects 0.000 claims description 25
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000001360 synchronised effect Effects 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 5
- 230000007704 transition Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000009956 central mechanism Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000010977 unit operation Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
- Microcomputers (AREA)
Description
1.1 従来の技術
1.1.1 問題点
今日のコンポーネント(FPGA,DPGA等)の場合、コンフィグレーション可能なエレメントの同期はたいてい、コンポーネントのクロックにより確立される。このような形式の時間的に制御される同期によって、多くの問題点がもたらされる。それというのも、有効な結果が得られるまでにタスクがどの程度の長さを必要とするかが、事前には既知でないからである。時間制御される同期確立の別の問題点は、同期確立の対象となるイベントが、同期をとるべきエレメント自体によってトリガされるのではなく、無関係のエレメントによってトリガされることである。このような場合には、2つの異なるエレメントが同期確立に関与することになる。このことによって、管理が非常に煩雑になってしまう。
ヨーロッパ特許EP-A-0,726,532によれば、アレイとして配置された複数のプロセッサから成るSIMDマシンへのおよびそこからのデータ流をコントロールする方法が公知である。この場合、データ伝送の目標プロセッサをダイナミックに選択する命令がすべてのプロセッサへ送られる。この命令は、上位の機構からすべてのプロセッサへ送られるものであり(broadcast instruction)、方向フィールド(destination field)と目標フィールド(target field)から成る。結果を送るべき隣接するプロセッサエレメントをダイナミックに求めるために、方向フィールドによってプロセッサエレメント内のユニットがコントロールされる。また、目標フィールドによって、別の結果を格納すべき別のプロセッサエレメントのオペランドレジスタがダイナミックに選択される。
1.1.2 本発明による改善点
本発明によれば、同期確立が同期をとるべきエレメント自体に基づくようにする方法が提供される。この場合、同期確立はもはや中央の機構によって実行されず、また、もはや中央の機構によって管理もされない。同期確立の場所を各エレメントに移すことにより、多くの同期確立タスクを同時に実行することもできる。なぜならば、独立した各エレメントが中央の同期機構へのアクセスの際に互いに邪魔し合うことがないからである。
請求の範囲には、本発明による同期確立方法の詳細や特別な形態ならびに特徴が記載されている。
2.発明の説明
2.1 発明の概要、要約
2次元または3次元で配置されたプログラミング可能なセル構造を備えたコンポーネント(DFP,DPGA)において、コンフィグレーション可能な各エレメントはメッシュ構造を介して、コンフィグレーション可能な他のエレメントのコンフィグレーションレジスタまたはステータスレジスタにアクセスすることができ、そのことでそれらの機能や動作に対しアクティブに作用を及ぼすことができる。この種のセルから成るマトリクスを以下ではプロセッシングアレイProcessingArray(PA)と称する。したがって通常の方法に加えてプロセッシングアレイ(PA)からのロードロジックにより、コンフィグレーションを行うことができる。
2.2 発明の詳細な説明
この場合、ランタイムに自由にプログラミング可能なコンポーネントを前提としており、これはランタイムに付加的に再コンフィグレーション可能である。チップに含まれているコンフィグレーション可能なエレメントは、種々の役割のために1つまたは複数のコンフィグレーションレジスタを有している。このコンフィグレーションレジスタに対しては、読み出しアクセスおよび書き込みアクセスが可能である。この方法において前提とするのは、以下に挙げる情報についてコンフィグレーションすべきエレメントにおいてコンフィグレーションを設定できることである。すなわち、
−メッシュ結合レジスタ:他のセルとの結合形式がこのレジスタに設定される。
−命令レジスタ:コンフィグレーション可能なエレメントの実行すべき機能がこのレジスタにエントリされる。
−状態レジスタ:セルはこのレジスタにそれらの目下の状態を格納する。この状態によって、セルがどの処理サイクルにあるかに関する情報がコンポーネントにおける他のエレメントへ与えられることになる。
1つのセルは、そのセルが実行すべき機能を定める命令によってコンフィグレーションされる。さらに、他のセルとのメッシュ結合と状態レジスタの内容を設定するために、コンフィグレーションデータがエントリされる。この過程の後、セルはスタンバイ状態となる。
多数のセルをフレキシブルかつダイナミックに共働させることができるようにする目的で、各セルは他のセルのすべてのコンフィグレーションレジスタを読み出しアクセスまたは書き込みアクセス可能である。多数のコンフィグレーションレジスタのうちのいずれに対し読み出しアクセスまたは書き込みアクセスするかは、セルをコンフィグレーションした命令の形式によって決まる。セルが実行可能な各命令は、コンフィグレーションすべきエレメント内に存在する互いに無関係な種々のコンフィグレーションレジスタと同じように種々のアドレッシング形式で存在している。
実例:あるセルが上述のコンフィグレーションレジスタ(メッシュ結合、命令および状態)を有しており、加算を行う命令ADDを実行しようとしている。ADD命令の種々の形式により、その機能の結果がどこへ伝送されるのかを選択することができる。
ADD−A:結果は目標セルのオペランドレジスタAへ伝送される。
ADD−B:結果は目標セルのオペランドレジスタBへ伝送される。
ADD−V:結果は目標セルのメッシュ結合レジスタへ伝送される。
ADD−S:結果は目標セルの状態レジスタへ伝送される。
ADD−C:結果は目標セルの命令レジスタへ伝送される。
2.2.1 制御および同期のトリガ
結果のほかに、各セルは一群のトリガ信号を発生させることができる。トリガ信号は、コンフィグレーションされた命令の処理結果と必ずしも同じ目標セルに伝送されなくてもよい。トリガ信号によって、または複数のトリガ信号が組み合わさってはじめて、目標セルにおいて特定のアクションがトリガされ、あるいはそのセルが特定の状態に移される。状態の記述については後述する。この場合、以下のトリが信号がある。すなわち、
−GOトリガ:GOトリガによって目標セルは状態READYに移される。
−RECONFIGトリガ:RECONFIGトリガによって目標セルは状態RECONFIGに移され、その結果、セルをプログラミングしなおすことができるようになる。
−殊にスイッチングテーブルとの共働においてこのトリガは非常に有用である。処理すべきデータがクロックの立ち上がり縁とともにオペランドレジスタへロードされ、Hレベル期間中に処理され、立ち下がり縁で出力レジスタに書き込まれるものとすれば、セルの再コンフィグレーションは立ち下がり縁で可能である。この立ち下がり縁とともに、新たなコンフィグレーションデータが命令レジスタへ書き込まれる。Lレベルの期間は、再コンフィグレーションを首尾よく完了するのに十分な期間である。
−STEPトリガ:STEPトリガにより、状態WAITにある目標セルにおいてコンフィグレーションされた命令の1回かぎりの実行がトリガされる。
−STOPトリガ:STOPトリガは目標セルを停止させ、そこにおいてセルは状態STOPにセットされる。
処理すべきセルにおいて、目標セルのいずれのレジスタへ結果をエントリすべきか、ならびにいずれの形式のトリガ信号を発生させるべきかを表すことができるため、データ流から一群の管理データを生成することができる。この管理データは、チップにより実行される本来のタスクの結果を表すものではなく、内部状態の管理、同期確立や最適化などの管理にのみ用いられる。
各セルは、状態レジスタにおける適切なコーディングにより表される以下の状態をとることができる。
−READY:セルは有効な命令によってコンフィグレーション済みであり、データを処理することができる。この処理は各クロックサイクルごとに行われる。データは、データ送り手のセルのアドレッシング形式に基づき目標セルのレジスタへ読み込まれる。
−WAIT:セルは有効な命令によってコンフィグレーション済みであり、データを処理することができる。処理は、コンポーネントの他のエレメントにより生成可能なトリガ信号に基づき行われる。データは、データ送り手のセルのアドレッシング形成に基づき目標セルのレジスタへ読み込まれる。
−CONFIG:セルは有効な命令によってコンフィグレーションされていない。次のクロックサイクルでセルへ送られるデータパケットが、命令レジスタへ読み込まれる。データパケットは、データ送り手のセルがどのようなアドレッシング形式を利用していようと、いずれにせよ命令レジスタへ読み込まれる。
−CONFIG−WAIT:セルは有効な命令でコンフィグレーションされていない。データパケットは、コンポーネントの他のエレメントにより生成可能な次のトリガ信号によって読み込まれ、命令レジスタへ書き込まれる。データパケットは、データ送り手のセルがどのようなアドレッシング形式を利用していようと、いずれにせよ命令レジスタに読み込まれる。
−RECONFIG:セルは有効な命令でコンフィグレーションされ処理されているが、新たなデータはないし、新たなデータを受け入れることもしない。セルはコンポーネントの別のエレメントによってコンフィグレーションしなおすことができる。
−STOP:セルは有効な命令によってコンフィグレーションされ処理されているが、目下のところデータはない。データはセルによって受け入れられる(入力レジスタへ伝送される)が、続いて処理されることはない。
これらの種々の状態と、1つのセルの種々のレジスタに対する書き込みアクセスと読み出しアクセスが可能であることから、各セルはアクティブな管理の役割を受け入れることができる。これに対し、この種の形式の既存のあらゆるコンポーネントは中央の管理機構を有しており、これはコンポーネントのすべての状態を常に把握して処理しなければならない。
フレキシビリティをさらに高める目的で、命令について別のクラスが存在しており、それらは最初の実行後にその形式を変えるものでる。ADD命令の実例に基づき説明すると、命令は以下のようになる。すなわち、
−ADD−C−A:ADDファンクションの結果は、命令の最初の実行時には目標セルの命令レジスタへ書き込まれる。さらに実行されるたびに、結果はオペランドレジスタAへ書き込まれる。
これらの可能性は自由に拡張することができるので、ADD−C−V−A−C−...−Bといったような形式の命令も考えられる。各命令は、種々のアドレッシング形式およびトリガ形式の入れ換えられたあらゆる組み合わせをとることができる。
2.2.2 RECONFIGトリガによる再コンフィグレーション制御
従来の方法において必要とされていたのは、状態「コンフィグレーション可能」へ移行させるために、コンフィグレーションすべき各エレメントは外部の機構からRECONFIGトリガを受け取らなければならなかったことである。このことの欠点は、RECONFIGトリガを分け与えるためにメッシュ結合とコンフィグレーションが非常に煩雑にならざるを得なかったことである。
メッシュ結合の構造により、この欠点を取り除くことができる。メッシュ結合情報によりつながっているコンフィグレーション可能なすべてのエレメントによって、方向づけられた1つのグラフが描かれる。この種のグラフは、複数の根ないしはルート(源)と複数のリーフ(目標)をもつことができる。コンフィグレーション可能なエレメントは、到来するRECONFIGトリガをそれらのエレメントがその出力側のレジスタの方向、入力側のレジスタの方向、またはそれらの組み合わせの方向で伝播させるように拡張される。この伝播によって、コンフィグレーション可能なエレメントとダイレクトに結合されているコンフィグレーション可能なすべてのエレメントも同様に、RECONFIGトリガを得ることになる。
この場合、あるコンフィグレーション(グラフ)を、完全に状態「コンフィグレーション可能」へ移すことができ、これはすべてのルートに対しRECONFIGトリガが送られ、それによってRECONFIGトリガが出力レジスタ方向へ伝播することによって可能となる。RECONFIGトリガを送る必要のある1つのグラフ内のルートの量は、グラフにおけるすべてのノードの個数よりも著しく少ない。このことで、煩雑さやコストが最低限に抑えられる。もちろん、RECONFIGトリガをすべてのリーフに送ることもできる。その場合にはRECONFIGトリガは、入力レジスタの方向へと伝播される。
両方の可能性を利用することにより、あるいは両方のやり方を混在させることにより、RECONFIGトリガを導く必要のあるコンフィグレーション可能な最小量のエレメントを算定することができる。
コンフィグレーション可能なエレメントはそれらの状態レジスタに対する補足を受けることができ、これによって到来するRECONFIGトリガを伝播させるべきか否かが表される。この情報が必要とされるのは、2つまたはそれよりも多くの種々のグラフが1つまたは複数の個所でつながっており(つまり移行部を有しており)、別のグラフのうちの1つが状態「再コンフィグレーション可能」へ移行するのがやはり望ましくないときである。つまり、1つまたは複数のコンフィグレーション可能なエレメントはゲートのように振る舞う。
さらに状態レジスタは、到来するRECONFIGトリガをいずれの方向へ転送すべきであるかを付加的なエントリによって表すよう、拡張できる。
既述の方法は、あらゆる形式のトリガおよび/またはデータに適用できる。これにより、始動させるのに外部からの著しく僅かなアクセスの機会しか必要としない自動的な割り当て階層を形成することができる。
3.コンフィグレーション可能な同じエレメントへ同時に複数の機能をインプリメント
3.1 基本機能および必要とされるトリガ
ある条件による様々なマクロの呼び出しの著しく複雑な変形は、以下のように表される:
ある条件(IF COMP THEN A ELSE B;ここでCOMPは比較を表し、AとBは実行すべきオペレーションである)を実行する場合、GOトリガとSTOPトリガは生成されない。これらの代わりにトリガベクトル(TRIGV)が生成され、これは比較COMPによってどのような結果に至るのかを表すものである。したがってトリガベクトルは状態「等しい」、「大きい」あるいは「小さい」をとる可能性がある。
ベクトルは後続のセルへ送られ、そのセルはベクトルの状態に基づき複数のコンフィグレーションレジスタから1つの特定のコンフィグレーションレジスタ(AまたはBに対応する)を正確に選択する。このことにより、先行する比較の結果に応じてデータについて別の機能が実行されるようになる。「大きい−等しい」、「小さい−等しい」、「等しい−等しくない」といった状態は、2つのコンフィグレーションレジスタが同じコンフィグレーションデータによって記述されることにより分解される。たとえば「大きい−等しい」の場合には、コンフィグレーションレジスタ「大きい」とコンフィグレーションレジスタ「等しい」に同じコンフィグレーションワードが書き込まれる一方、コンフィグレーションレジスタ「小さい」には別のコンフィグレーションワードが含まれる。
トリガベクトル(TRIGV)をインプリメントする場合、状態「大きい」、「小さい」ならびに「等しい」に対しいかなる制限も不要である。大きい”CASE...OF”構造を評価するために、CASEの状態を表す任意の数値nをトリガベクトル(TRIGV−m)として、1つまたは複数の後続セルへ転送することができる。換言すれば、nはCASE内部の比較を表し、これは到来するデータの評価にあたり合致したものである。CASE内部で比較に対応づけられた機能を実行するために、実行すべきセルにnが転送され、これによって対応する機能を選ぶことができる。「大きい/小さい/等しい」という場合、セルは少なくとも3つのコンフィグレーションレジスタを必要とするのに対し、TRIGV−mを用いた場合にはコンフィグレーションレジスタの個数は少なくともnの最大値(max(n))に相応する。
3.2 トリガによる必要とされる機能の伝播
特別な事例ではトリガが存在しないことに対し応答する必要があり、すなわちその場合、トリガ状態が発生しているけれどもトリガベクトルの変化引き起こされない。さらにこの場合にも、有用かつ重要な情報を後続のセルへ伝送することができる。実例として挙げると、「大きい」、「小さい」、「等しい」についての比較にあたり、状態「小さい」から状態「大きい」へ移行してもトリガ信号「等しい」が存在せず変化しない場合である。それにもかかわらず「等しい」が存在しないということには1つの情報が含まれ、つまりは「等しくない」という情報が含まれる。このような2つの状態「存在している」および「存在していない」に応答できるようにする目的で、セルのコンフィグレーションレジスタに対し1つのエントリが加えられ、これによって各状態のうちのいずれに対し応答すべきであるかが表される。
しかも状態「等しい」、「大きい」および「小さい」を表すトリガベクトルTRIGVに対し、トリガの発生を表す信号TRIGRDYが加えられる。これが必要とされる理由は、複数のベクトルのうちの1つにおける状態「存在していない」によっても、トリガ自体の存在以上の情報が与えられないからである。
TRIGRDYは、送信側のセルと受信側のセルとの間のハンドシェークプロトコルのために利用でき、これは受信側のセルがトリガベクトルを評価するとただちにTRIGACKを生成することによって行われる。TRIGACKが到来した後ではじめて、送信側のセルはトリガ状態を撤回する。その際、コンフィグレーションレジスタへのエントリに基づき、トリガベクトル送信時にTRIGACKの受け取りを待つべきであるか、あるいはトリガチャネルが非同期で流れているか否かが判定される。
3.4 マイクロプロセッサでの使用
最新のアーキテクチャをもつマイクロプロセッサの場合にはもはや、分岐予測つまりジャンプの予測という既知の方式によっては、条件付きジャンプは実行されない。プロセッサの性能向上をもたらしたジャンプの投機的な予測によれば、投機的なアルゴリズムに基づきジャンプが事前に計算され、計算に誤りがあればプロセッサパイプライン全体を新たにロードしなければならず、このことによって著しい性能損失が生じていた。
このような損失をなくす目的で、新たな述語/NOP方式が導入された。これによれば各命令に対し、命令を実行すべきか否かを表す1bit幅のステータスフラグが割り当てられる。この場合、任意の量のステータスフラグを存在させることができる。命令とステータスフラグとの対応づけは、符号変換中にコンパイラによって行われる。ステータスフラグは、それらに割り当てられた実行時間に対する比較演算により管理され、それらは個々の比較の結果を表す。ある命令に割り当てられたステータスフラグの状態に応じて、(ステータスフラグが「実行」を表していれば)その命令はプロセッサによって実行されるし、(ステータスフラグが「実行せず」を表していれば)その命令は実行されず、NOPで置き換えられる。NOPとは”No OPeration”のことであり、つまりプロセッサはそのサイクル中はオペレーションを実行しない。これにより、有用なオペレーションのためのサイクルが失われることになる。
サイクルの損失を最適化するために2つの可能性を提案する:
3.5.1 計算ユニットごとの複数の命令レジスタ
最新のマイクロプロセッサは相対的に独立した複数の算術演算機構を有している。ここで提案するトリガ方式によれば、個々の算術演算機構は複数の命令レジスタを装備することができ、ここでマイクロプロセッサ算術演算機構の命令レジスタは、通常のFPGA,DFPまたは他のコンポーネントによるコンフィグレーションレジスタと同義である。個々のアクティブな命令レジスタの選択は、
a)比較により他の算術演算機構によって生成されたトリガベクトルに基づく。
b)複数ビットのステータスフラグ(以下ではステータスベクトルと称する)に基づく。これは従来技術による現在の方式では比較命令に対応づけられている。
3.5.2 変形されたVLIW命令セット
特別な実施形態はVLIW命令セットにより提供される。この場合、1つの命令ワード内において、比較に依存する複数の可能な命令を1つの命令にまとめることができる。任意の幅のVLIWワードは、任意の量の命令(コード)に分割される。このコードの各々は、トリガベクトルまたはステータスベクトルにより参照される。つまりランタイムに、存在するコードのうちの1つがVLIWワードから選択されて処理される。
以下の表には、4つのコードを有する可能なVLIWワードが描かれており、これに対し2bitのトリガベクトルまたは2bitのステータスフラグが参照される。
VLIW命令ワード:
対応づけ:
トリガベクトル/ステータスフラグ:
4.通常のFPGAおよびDFPに対するハードウェアの拡張
4.1 付加的なレジスタ
DFPにおいて一般的であるコンフィグレーションレジスタに対し、ステータスレジスタとコンフィグレーションレジスタが加わる。両方のレジスタはPLUバスにより制御され、個々のセルにおけるシーケンスコントロールの状態マシンと接続されている。
4.2 PLUバスの変形
FPGAおよびDFPにおいて、コンフィグレーション可能なレジスタM−/F−PLUREGはもっぱら、ロードロジックへの接続ラインを成すPLUバスを介して管理される。ここで本発明による機能を保証する目的で、付加的なアクセスの機会が通常のシステムバスによって各セル間で可能でなければならない。同じことは新たなステータスレジスタおよびコンフィグレーションレジスタについてもあてはまる。この場合、レジスタにとってはシステムバスの一部分だけが重要であり、これはBM−UNITすなわちシステムバスとPAEとの間のインタフェースを介して、PAEとメッシュ結合されている。
このためバスはBM−UNITからレジスタへ転送され、そこにおいて前置接続されたマルチプレクサあるいは前置接続されたゲートによって、PLUバスとPAEにとって重要なシステムバスとの間の切り替え動作が行われる。その際、マルチプレクサまたはゲートは、コンポーネントがリセット(RESET)された後や、RECONFIGトリガ信号がアクティブであるとき以外は、PAEにとって重要なシステムバスを常に導通接続するようにスイッチングを行う。
4.3 通常のFPGAとDFPに対するコンフィグレーション可能なエレメント(PAE)の拡張
4.3.1 トリガソース
コンフィグレーション可能なエレメントは、複数のソースから同時にトリガを受け取ることができる。この構成により、マスキングレジスタを用いることでトリガのフレキシブルなセマンティクスを達成できる。
4.3.2 複数のコンフィグレーションレジスタ
1つのコンフィグレーションレジスタの代わりに、PAEは複数(max(n))のコンフィグレーションレジスタを有する。
4.3.3 コンフィグレーション状態マシンおよびマルチプレクサ
コンフィグレーションレジスタにはマルチプレクサが後置接続されており、これは可能なコンフィグレーションのうちの1つを選択する。マルチプレクサの制御は、別個のまたはPAE状態マシンに統合された状態マシンにより行われ、これは到来するトリガベクトルに基づきマルチプレクサを制御する。
4.3.4 トリガの評価とコンフィグレーション
コンフィグレーション可能なエレメントはマスキングレジスタを有することができ、そこにおいてどのトリガ入力側にトリガ信号が到来しなければならないのかを設定することができ、その結果、コンフィグレーション可能なエレメントのアクションに対する動作が満たされることになる。コンフィグレーション可能なエレメントは1つのトリガに応答するだけでなく、複数のトリガから生じた組み合わせにも応答する。さらにコンフィグレーション可能なエレメントは、同時に到来するトリガの優先順位を付けることができる。渡来するトリガは、TRIGRDY信号に基づき識別される。その際、トリガベクトルは、付加的にコンフィグレーションレジスタ内に存在するコンフィグレーションデータに基づき評価される。
4.3.5 トリガハンドシェーク
トリガベクトルが評価されるとただちに、トリガベクトル受領確認のためTRIGACKが生成される。
4.3.6 BM−UNIT
BM−UNITは、バスから到来するトリガがM−PLUREG内のコンフィグレーションに従ってSyncユニットとSMユニットまで到達するように拡張される。EALUから発せられたトリガ(たとえば比較値「大きい」、「小さい」、「等しい」、0検出器、極性符号、変換、誤り状態(0による除算等)など)は、M−PLUREG内の結線情報に従ってBM−UNITからバスへ伝送される。
4.4 システムバスの拡張
システムバスすなわち各セル(PAE)間のバスシステムは、目標レジスタに関する情報がデータとともに伝送されるように拡張される。つまり、データ受信機において望ましいレジスタを選択するアドレスがいっしょに送られる。また、システムバスも、トリガベクトルやトリガハンドシェークとは別個の伝送の点で拡張される。
【図面の簡単な説明】
図1は、トリガの使用によりループ構造をインプリメントする様子を示す図である。
図2は、複数のトリガの使用によりループ構造をインプリメントする様子を示す図である。
図3は、複数のトリガとそれらの結線を使用して、複数の出力をもつ比較構造をインプリメントする様子を示す図である。
図4は、通常のFPGAおよびDFPに対し必要な拡張を示す図である。
図5は、コンフィグレーション可能なエレメントの種々の機能をトリガにより選択する機能の実例を示す図である。
図6は、種々の機能を実行するため、トリガにより制御される複数のコンフィグレーションレジスタをインプリメントする様子を示す図である。
図7は、図6による方法をマイクロプロセッサにおいてインプリメントする様子を示す図である。
6.図面と実施例の詳細な説明
図1
マクロ0103はこの実施例では70回、実行されることになる。マクロの実行のためには26クロックサイクルが必要とされる。つまり26クロックサイクルごとに、カウンタ0101は1だけカウントダウンすればよいことになる。この場合、自由にプログラミング可能なコンポーネントにおける問題点とは、実践でも26個のクロックの後にマクロ0103の実行が完了することが、必ずしも保証されないことである。たとえば、マクロ0103のための入力データを供給すべきあるマクロが突然10クロックサイクルを余計に必要としたことにより、遅延の発生する可能性がある。この理由から、セルはマクロ0103においてトリガ信号をカウンタ0101へ送り、これによって計算結果が別のマクロへ送られる。これと同時に、マクロ0103の処理が同じセルにより停止される。このセルは、計算終了のための条件が達成されたことを正確に「知っている」。
この場合、送られたトリガ信号はSTEPトリガであり、これによってカウンタ0101は1回、コンフィグレーションされたその機能を実行するようになる。カウンタはその計数値を1だけカウントダウンし、値0に達したか否かを比較する。値0に達していなければ、GOトリガがマクロ0103へ送られる。そしてこのGOトリガ信号によって、マクロ0103はその機能を再び開始するようになる。
この過程は、カウンタ0101が値0に到達するまで繰り返される。その場合、トリガ信号がマクロ0102へ送られ、そこにおいて機能がトリガされる。トリガのこのような共働により、著しく細分化された同期確立を達成することができる。
図2
図2は、図1による基本原理に対応するものである。しかし、エレメント0202における機能はここではカウンタではなく比較器である。マクロ0201は処理を実行するたびに、比較値をいっしょに比較器0202へ送る。比較の出力に応じて、たとえばマクロ0203におけるアクションを促す目的で、やはり種々のトリガが制御される。図2にインプリメントされている構造は、プログラミング言語におけるIF構文の問い合わせに対応する。
図3
図2のように比較器が用いられるが、ここでは複数の比較器0301,0302が用いられ、これによってIF−ELSE−ELSE構文の構造(つまり多重選択)をインプリメントすることができる。そして様々な形式のトリガを利用し、それらのトリガをマクロ0303,0304と結び付けることで、非常に複雑なシーケンスを簡単に実装することができる。
図4
図4には、通常のFPGAおよびDFPとの相違点が示されている。追加されているコンフィグレーションレジスタ(0401)および追加されている状態レジスタ(0402)は、バス(0407)を介してSM−UNITと接続されている。レジスタ0401,0402,F−PLUREGおよびM−PLUREGは、内部バス0206を介してゲート0403と接続されている。これによって、PLUによるコンフィグレーションを可能にする目的で、内部バス(0406)は位置に応じてPLU−BUS0405と接続され、あるいはバス0408を介してBM−UNITと接続される。これによりアドレッシングに応じて、データバス0404を介してデータはO−REGへ送られるかまたは、アドレッシングされたレジスタ0401,0402,F−PLUREGまたはM−PLUREGへ送られる。
BM−UNIT(0411)は、0415を介してトリガ信号をSync−UNIT(0412)へ送る。EALUから0411は0414を介して結果(「等しい」、「大きい」、「小さい」、「結果=0」、「結果 ポジティブ」、「結果 ネガティブ」、オーバーフロー(ポジティブとネガティブ)などを受け取り、それらをトリガベクトルへ変換する。これに対する代案として、Sync−UNITまたはSTATE−MACHINEから発せられた状態を、0415を介してBM−UNITへ伝えることができる。BM−UNITからバス(0404)へ伝送されるトリガ信号を、評価を行うコンフィグレーション可能なエレメントのコンフィグレーションに応じて、そこにおいてSTEP/STOP/GO−Trigger,RECONFIG−Triggerとして利用できるし、あるいはコンフィグレーションレジスタを選択するために利用できる。評価を行うコンフィグレーション可能なエレメントにおいて発せられたトリガがどのような機能を果たすかは、メッシュ結合(0404)およびコンフィグレーション可能な個々のエレメントのコンフィグレーションにより定められる。1つの同じトリガが、コンフィグレーション可能な種々のエレメントにおいてそれぞれ異なる機能を有することができる。0416は、R−REGsftからバスシステム0404およびそれに続くコンフィグレーション可能なエレメントへの結果出力である。
図5
図5には、発せられたトリガとトリガにより選択されたコンフィグレーションレジスタとの間における時間上の振る舞いが実例として描かれている。0501は比較によりトリガベクトルTRIGVを発生し、これは値”equal”(等しい)、”greater”(大きい)または”less”(小さい)をとることができる。コンフィグレーション可能なエレメント0502〜0504は、比較(0501)に依存してデータを処理する。この場合、処理は比較値”equal”,”greater”および”less”に依存する。この処理はパイプライン化されており、つまりデータワードは相前後して0502により、ついで0503により、最後に0504により修正される。
同様に0505も、0501に依存してデータを処理する。しかし、ここでは依存性は比較値”less”に限られている。”greater”および”equal”は、同じ機能を実行する。つまりここでは値”小さい”と”大きいまたは等しい”が区別される。パイプライン0505において、0506が後置接続されている。ここで0506は”equal”,”greater”および”less”に対し、それぞれ異なるかたちで応答する(0503参照)。0507もやはり0501に依存するが、この場合には値”等しい”と”等しくない(小さいまたは大きい)”が区別される。
この実施例は時点t(図5a)で始まり、時点(t+3)で終了する。データがパイプライン(0502,0503,0504ないしは0505,0606)のうちの1つを通り抜けていくとき、マクロ(0502〜0506)のうちの1つが実行されるたびに、データは1クロックサイクルだけ遅延される。これよりも長い遅延や殊にそのつど異なる遅延が発生する可能性もある。データとトリガ信号との間には自動的な同期確立のためにハンドシェークメカニズムが存在するので(従来技術ないしはそれらの書類(TRIGACK/TRIGRDY)参照)、その事例についてはここでは特に触れる必要はない。遅延により、時点tにおいてたとえば第2のパイプライン段と第3のパイプライン段との間で先行の時点t−2のデータとトリガ信号が滞る。図5a〜図5dには、3クロックサイクル(t〜t+2)の流れが描かれている。
0501から発せられたトリガベクトル(つまり比較結果)は、tに関して考察すると以下のようになる:
図6には、複数のコンフィグレーションレジスタを1つのコンフィグレーションエレメントに統合した様子が描かれている。この実施例の場合、図4による3つのコンフィグレーションレジスタ(0409)が存在する。これらはバス0406を介してコンフィグレーションされる。バスシステム0411を介して、制御ユニット(0601)(これは状態マシンとしても構成可能)は信号TRIGVとTRIGRDYを受け取る。制御ユニットはTRIGVに従って、コンフィグレーションレジスタのうちの1つをマルチプレクサ(0602)を介してバスシステム0410へスイッチングし、このバスシステムはコンフィグレーション可能なエレメントの制御機構につながっている。トリガ信号をコンフィグレーション可能なエレメントの内部シーケンスと同期させるために、0601は同期出力側を有しており、これは同期ユニット(0412)または状態マシン(0413)へ導かれている。トリガソースを同期させるため、0601は到来したトリガの処理後にハンドシェーク信号TRIGACKを発生させる。
この実施例によれば、コンフィグレーションレジスタ(0409)の各々はタイプ(”equal”,”greater”,”less”)のTRIGVに割り当てられている。トリガタイプの各々において別のオペレーションが実行されると、コンフィグレーションレジスタの各々はそれぞれ異なるように割り当てられる。たとえば”equal”と”not equal”だけを区別する場合、コンフィグレーションレジスタはタイプ”less”と”greater”に対し同じようにセットされ、つまり”not equal”に対するコンフィグレーションによって割り当てられる。”equal”に対するコンフィグレーションレジスタは、別の割り当てを有している。すなわち、コンフィグレーションレジスタの割り当てに基づき比較をいっそう精確に記述することができ、その際、コンフィグレーション可能な各エレメントは、そのような記述をそれぞれ異なるように構成できる。
レジスタ0603を介して、後続のコンフィグレーション可能なエレメントへTRIGVが結果といっしょに転送され、これにより図5a〜dによるパイプラインを実現することができる。レジスタおよびハンドシェーク信号は、0412または0413により制御される。トリガ情報はR−REGsftから結果といっしょにあるいは時間的にずらされて、つまり結果の前に、インタフェース0416を介して後続のコンフィグレーション可能なエレメントへ伝送することができる。
時間的にずらして伝送することにより得られる利点は、後続のコンフィグレーション可能なエレメントにおいてコンフィグレーションレジスタをセットするための付加的な時間が不要なことである。それというのも、設定はデータを受け取る前にすでに(結果がイネーブルにされると同時に)行われるからである。図6aには、これに相応するタイミングが(DFPに関して通常の流れについて)描かれている。トリガベクトル(0615)は、コンポーネントクロック(0614)の立ち上がり縁(0613)とともに生成される。立ち下がり縁(0612)とともに、コンフィグレーション可能なエレメントにおいてトリガが評価される。データは位相シフトされて進み、すなわちそれらは0612においてイネーブルにされ、0613で読み込まれる。0610の間、トリガベクトルはバスを介して伝送され、データが計算される。0611の間、データはバスを介して伝送され、トリガが計算され、ないしはコンフィグレーション可能なエレメントにおけるコンフィグレーションレジスタが、0613で記憶されたデータに従って選択され、それに応じてコンフィグレーションが設定される。
図7aには、従来技術による述語/NOP方式に従ったジャンプの管理について描かれている。ある比較を実行する場合、述語レジスタ(0704)にエントリがセットされる。このエントリは命令実行中、問い合わせられ、命令が実行されるのか(命令が条件付きジャンプにより応答するコードシーケンス内に位置するのか)、あるいはNOP命令により置き換えられるのか(命令は条件付きジャンプにより応答するコードシーケンスとは異なるコードシーケンスに位置するのか)、を決定する。この場合、命令は命令レジスタ0701内にある。述語レジスタは、複数のオペレーションおよび/または複数の算術演算機構に割り当てられた複数のエントリを有している。この割り当ては、プログラムのコンパイル時点にコンパイラによって与えられる。割り当て情報(0707)は、命令レジスタにエントリされる命令に対応づけられ、その結果、個々の命令により一義的なエントリが参照されることになる。
0703により、0701からの命令が実行されるのか、あるいはNOPが実行されるのかが選択される。NOPが実行されるときには1クロックサイクルが失われる。ここで0703はシンボリックなキャラクタをもっている。それというのも、基本的には実行ユニット(0702)を0704によりじかに制御することもできるからである。
図7bによれば、n個の命令レジスタ(0701:Func1...Func n)が設けられている。比較/条件付きジャンプの実行にあたり、アドレッシングすべき命令レジスタつまり比較の結果は、エントリ(0708)として述語レジスタ0706に格納され、ここで0706は多数のそのようなエントリから成る。この場合、0706における個々のエントリ(0708)は、実行ユニット(0702)におけるすべての可能な命令レジスタをそれによってアドレッシングできるような幅であり、すなわちn個の命令レジスタであればエントリ幅はlog2(n)である。述語レジスタは、複数のオペレーションおよび/または複数の算術演算機構に割り当てられた複数のエントリを有する。この割り当ては、プログラムのコンパイル時点にコンパイラによって与えられる。割り当て情報(0707)は、命令レジスタにエントリされる多数の命令に割り当てられ、その結果、個々の命令により一義的なエントリが参照されるようになる。さらにマルチプレクサを介して、どの命令レジスタが目下の実行のためのコードを供給するのかが選択される。この技術により条件付きジャンプにおいて、不利な状況であってもNOPの代わりに有効な命令が実行され、これによりクロックサイクルの浪費がなくなる。
名前を付ける際の取り決め
コンポーネント −−UNIT
動作形式 −−MODE
マルチプレクサ −−MUX
否定信号 not−−
PLUから見えるレジスタ −PLUREG
内部のレジスタ −REG
シフトレジスタ −sft
機能に関する取り決め
用語の定義
BM−UNIT
PAE外部のバスシステムへデータを供給するユニット。この供給は、データ入力についてはマルチプレクサを介して行われ、データ出力についてはゲートを介して行われる。oACKラインはオープンコレクタドライバとして実装される。BM−UNITはM−PLUREGにより制御される。
データ受信側
PAEの結果をさらに処理するユニット
データ送信側
PAEのためのデータをオペランドとして利用するユニット
データワード
1つのデータワードは、任意の長さのビット列から成る。このビット列は、ある構成のための1つの処理単位を成す。1つのデータワード内に、プロセッサ等のための命令ならびに純粋なデータをコーディングすることができる。
DFP
ドイツ連邦共和国特許出願DE 44 16 881によるデータフロープロセッサ
DPGA
ダイナミックにコンフィグレーション可能なFPGA。従来技術。
EALU
拡張された算術論理ユニット。ドイツ連邦共和国特許出願DE 441 16 881 A1によるデータ処理装置を作動させるのに必要とされるまたは有用な特別機能について拡張されたALU。これはたとえばカウンタである。
エレメント
それ自体で完結したあらゆる形式のユニットに対する総称であり、部品として電子コンポーネントにおいて使用可能である。つまりエレメントとは、
−あらゆる形式のコンフィグレーション可能なセル
−クラスタ
−RAMブロック
−ロジック
−演算機構
−レジスタ
−マルチプレクサ
−チップのI/Oピン
である。
イベント
あるイベントは、用途に適した何らかの形式や方式のハードウェアエレメントにより評価することができ、その評価に対するリアクションとして条件付きアクションを引き起こすことができる。つまりイベントとはたとえば以下のようなものである:
−計算装置のクロックサイクル
−内部または外部の割り込み信号
−コンポーネント内の他のエレメントからのトリガ信号
−データ流および/または命令流とある値との比較
−入出力イベント
−カウンタの満了、オーバーフロー、新たなセットなど
−比較の評価
FPGA
プログラミング可能なロジックコンポーネント。従来の技術。
F−PLUREG
PAEの機能がセットされるレジスタ。OneShotモードおよびSleepモードもセットされる。レジスタはPLUにより書き込まれる。
H−レベル
利用される技術に応じて、論理値1のレベル。
コンフィグレーション可能なエレメント
1つのコンフィグレーション可能なエレメントはロジックコンポーネントの1つの単位を成し、固有の機能に対するコンフィグレーションワードにより設定可能である。したがってコンフィグレーション可能なエレメントとは、あらゆる形式のRAMセル、マルチプレクサ、算術論理ユニット、レジスタ、ならびにあらゆる形式の内部および外部のメッシュ結合記述などである。
コンフィグレーション可能なセル
ロジックセルを参照。
コンフィグレーション
論理ユニット、(FPGA)セルまたはPAEの機能の設定やメッシュ結合のこと(再コンフィグレーションを参照)。
コンフィグレーションデータ
任意の量のコンフィグレーションワード。
コンフィグレーションメモリ
コンフィグレーションメモリは1つまたは複数のコンフィグレーションデータを含んでいる。
コンフィグレーションワード
1つのコンフィグレーションワードは任意の長さのビット列から成る。このビット列は、ある機能を果たす能力のあるユニットが生じるように、コンフィグレーションすべきエレメントに対する有効な設定を成す。
ロードロジック
PAEのコンフィグレーションおよび再コンフィグレーションのためのユニット。特別にその役割に整合されたマイクロコントローラにより構成される。
ロジックセル
DFP,FPGA,DPGAにおいて使用されるコンフィグレーション可能なセルであり、それらのコンフィグレーションに従って簡単な論理的または算術的な役割を果たす。
L−レベル
利用する技術に応じて、論理値0のレベル
M−PLUREG
PAEのメッシュ結合がセットされるレジスタ。このレジスタはPLUにより書き込まれる。
O−REG
EALUのオペランドを記憶するためのオペランドレジスタ。データ送信側からのPAEの時間的および機能的独立性を実現する。これにより、データ転送が簡略化される。それというのも、非同期またはパケット指向で行えるからである。これと同時に、データ送信側をPAEとは無関係に、あるいはPAEをデータ送信側とは無関係に、再コンフィグレーションできるようになる。
PLU
PAEのコンフィグレーションおよび再コンフィグレーションのためのユニットであり、特別にその役割に整合されたマイクロコントローラにより構成される。
伝播
受信信号のコントロールされた転送。
RECONFIG
PAEの再コンフィグレーション可能な状態。
RECONFIGトリガ
再コンフィグレーション可能な状態へのPAEの移行。
SM−UNIT
状態マシン(StateMachine)ユニット。EALUを制御する状態マシン。
スイッチングテーブル
スイッチングテーブルはリングメモリであって、これは制御部により呼び出される。スイッチングテーブルのエントリは、任意のコンフィグレーションワードをとることができる。この制御部は命令を実行可能である。スイッチングテーブルはトリガ信号に応答し、リングメモリ内のエントリに基づきコンフィグレーション可能なエレメントを再コンフィグレーションする。
同期信号
コンフィグレーション可能なエレメントまたは演算機構により生成される状態信号であって、これはデータ処理の制御と同期確立のためコンフィグレーション可能な他のエレメントまたは演算機構へ転送される。また、同期信号を時間的に遅延させて(記憶させて)同一のコンフィグレーション可能なエレメントまたは演算機構へ戻すことも可能である。
TRIGACK/TRIGRDY
トリガのハンドシェーク。
トリガ
同期信号の同義語。
再コンフィグレーション
任意の量のPAEの新たなコンフィグレーションであって、その間、任意の残りの量のPAEはそれらの本来の機能を継続する(コンフィグレーションを参照)。
処理サイクル
処理サイクルは、定義されたおよび/または有効なある状態から定義されたおよび/または有効な次の状態へ達するために、あるユニットが必要とする期間を表す。
VLIW
Very Large Instruction Word、マイクロプロセッサのコーディング、従来技術による方式。
セル
コンフィグレーション可能なエレメントに対する同義語。
Claims (19)
- プログラミング可能な2次元または多次元のセル構造をもつコンポーネント(DFP,FPGA,DPGA,RAWマシン)内で、コンフィグレーション可能なバスシステムによりコンフィグレーション可能な複数のエレメントが互いに結合されていて、該複数のエレメントにおけるデータ処理のシーケンスコントロールの同期をとるための、およびそれらのエレメントの再コンフィグレーションの同期をとるための、
ならびに、バスシステムにより複数の計算機構が互いに結合されていて、各計算機構上で構築される通常のマイクロプロセッサ、ディジタル信号プロセッサおよびマイクロコントローラにおける条件付きジャンプによるデータ処理のシーケンスコントロールの同期をとるための方法において、
データの比較、数値の極性符号、算術演算のキャリー、誤り状態など(0202)を用いて、処理を行うコンフィグレーション可能なエレメントにより処理中に同期信号を発生させ、該同期信号を別のエレメント(0201,0203)へバスシステムを介して送り、
受け取ったエレメントは、データ処理の同期をとるための情報と、データ処理のシーケンスの制御を使用することを特徴とする方法。 - 同期確立にあたりトリガによりコンフィグレーション可能なエレメントまたは計算機構を励起して、ただ1つのオペレーションを実行させる(STEPトリガ、図2)、請求項1記載の方法。
- 同期確立にあたりトリガによりコンフィグレーション可能なエレメントまたは計算機構を励起して、多数のオペレーションを実行させる(GOトリガ、図2)、請求項1記載の方法。
- 同期確立にあたりトリガにより、コンフィグレーション可能なエレメントの実行を停止させる(STOPトリガ、図2)、請求項1記載の方法。
- 同期確立にあたりトリガにより、コンフィグレーション可能なエレメントに再コンフィグレーション許可を与える(図6)、請求項1記載の方法。
- コンフィグレーション可能なエレメントまたは計算機構は、該エレメントの目下の状態を状態レジスタ(0402)で表す、請求項1〜5のいずれか1項記載の方法。
- 同期信号を、データ受信側、データ送信側または独立したコンフィグレーション可能なエレメントまたは計算機構へ伝送する(図1〜3)、請求項1〜6のいずれか1項記載の方法。
- 同期信号の伝送を阻止可能である、請求項1〜7のいずれか1項記載の方法。
- 種々の同期信号を選択的に伝送し(比較、誤り状態等)、ここで同期信号の形式は生成を行うユニットにおいて自由に選択可能であり、同期信号の作用は受信側のユニットで自由に選択可能である(図5)、請求項1〜8のいずれか1項記載の方法。
- 同期信号を複数の受信側へ伝送可能である(0501)、請求項1〜9のいずれか1項記載の方法。
- 同期信号に受領確認ラインを対応づける(図6:TRIGACK)、請求項1〜10のいずれか1項記載の方法。
- 1つまたは複数の同期信号から同期ベクトルを形成する(図6:TRIGV)、請求項1〜11のいずれか1項記載の方法。
- 同期ベクトルにより、複数のコンフィグレーションレジスタから1つのコンフィグレーションレジスタを選択し、あるいは複数の命令レジスタから1つ命令レジスタを選択する(図7b)、請求項1〜12のいずれか1項記載の方法。
- 同期信号により、レジスタの選択過程をクロックサイクルを失うことなくデータ処理と同期させる(図6)、請求項1〜13のいずれか1項記載の方法。
- 複数のレジスタから選択された1つのオペレーションに割り当てられたレジスタに、生成された同期信号の値を格納して、割り当てられた別のオペレーションがそれに対しアクセス可能とし、その情報に基づき実行可能な有効な命令ないしは実行可能な有効なコンフィグレーションを複数の命令/コンフィグレーションから選択する、請求項1〜14のいずれか1項記載の方法。
- プログラミング可能な2次元または多次元のセル構造をもつコンポーネント(DFP,FPGA,DPGA,RAWマシン)内で、コンフィグレーション可能なバスシステムによりコンフィグレーション可能な複数のエレメントが互いに結合されていて、該複数のエレメントにおけるデータ処理のシーケンスコントロールの同期をとるための、およびそれらのエレメントの再コンフィグレーションの同期をとるための、
ならびに、バスシステムにより複数の計算機構が互いに結合されていて、各計算機構上で構築される通常のマイクロプロセッサ、ディジタル信号プロセッサおよびマイクロコントローラにおける条件付きジャンプによるデータ処理のシーケンスコントロールの同期をとるための方法において、
適切な命令に基づき、コンフィグレーション可能なエレメントまたは計算機構の内部でコンフィグレーションワードを発生させ、データバスを介して応答すべきレジスタのアドレスとともに別のコンフィグレーション可能なエレメントまたは計算機構へ伝送し、該エレメントまたは計算機構は伝送されたコンフィグレーションワードをアドレッシングされたレジスタへ書き込むことを特徴とする方法。 - コンフィグレーション可能なエレメントまたは計算機構はその目下の状態を状態レジスタ(0402)で表す、請求項16記載の方法。
- 制御すべきレジスタの情報を命令にコーディングし、データバスを介して伝送する、請求項16または17記載の方法。
- 複数のレジスタから選択された1つのオペレーションに割り当てられたレジスタに、生成された同期信号の値を格納して、割り当てられた別のオペレーションがそれに対しアクセス可能とし、その情報に基づき実行可能な有効な命令ないしは実行可能な有効なコンフィグレーションを複数の命令/コンフィグレーションから選択する、請求項16〜18のいずれか1項記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19704728A DE19704728A1 (de) | 1997-02-08 | 1997-02-08 | Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines |
DE19704728.9 | 1997-02-08 | ||
PCT/DE1998/000334 WO1998035299A2 (de) | 1997-02-08 | 1998-02-07 | Verfahren zur selbstsynchronisation von konfigurierbaren elementen eines programmierbaren bausteines |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001511325A JP2001511325A (ja) | 2001-08-07 |
JP4146519B2 true JP4146519B2 (ja) | 2008-09-10 |
Family
ID=7819640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP53356398A Expired - Fee Related JP4146519B2 (ja) | 1997-02-08 | 1998-02-07 | プログラミング可能なコンポーネントにおけるコンフィグレーション可能な各エレメントの自己同期を確立する方法 |
Country Status (10)
Country | Link |
---|---|
US (3) | US6081903A (ja) |
EP (2) | EP1669885A3 (ja) |
JP (1) | JP4146519B2 (ja) |
CN (1) | CN1252144A (ja) |
AT (1) | ATE298907T1 (ja) |
AU (1) | AU740243B2 (ja) |
CA (1) | CA2279917A1 (ja) |
DE (3) | DE19704728A1 (ja) |
EA (1) | EA001823B1 (ja) |
WO (1) | WO1998035299A2 (ja) |
Families Citing this family (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002071248A2 (de) * | 2001-03-05 | 2002-09-12 | Pact Informationstechnologie Gmbh | Verfahren und vorrichtungen zur datenbe- und/oder verarbeitung |
US7266725B2 (en) | 2001-09-03 | 2007-09-04 | Pact Xpp Technologies Ag | Method for debugging reconfigurable architectures |
DE19651075A1 (de) | 1996-12-09 | 1998-06-10 | Pact Inf Tech Gmbh | Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen |
DE19654595A1 (de) | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen |
US6338106B1 (en) * | 1996-12-20 | 2002-01-08 | Pact Gmbh | I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures |
DE19654846A1 (de) * | 1996-12-27 | 1998-07-09 | Pact Inf Tech Gmbh | Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.) |
DE59710317D1 (de) | 1996-12-27 | 2003-07-24 | Pact Inf Tech Gmbh | VERFAHREN ZUM SELBSTÄNDIGEN DYNAMISCHEN UMLADEN VON DATENFLUSSPROZESSOREN (DFPs) SOWIE BAUSTEINEN MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN (FPGAs, DPGAs, o.dgl.) |
US6542998B1 (en) | 1997-02-08 | 2003-04-01 | Pact Gmbh | Method of self-synchronization of configurable elements of a programmable module |
DE19704728A1 (de) | 1997-02-08 | 1998-08-13 | Pact Inf Tech Gmbh | Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines |
DE19704742A1 (de) * | 1997-02-11 | 1998-09-24 | Pact Inf Tech Gmbh | Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand |
US8686549B2 (en) | 2001-09-03 | 2014-04-01 | Martin Vorbach | Reconfigurable elements |
DE19861088A1 (de) | 1997-12-22 | 2000-02-10 | Pact Inf Tech Gmbh | Verfahren zur Reparatur von integrierten Schaltkreisen |
DE19807872A1 (de) | 1998-02-25 | 1999-08-26 | Pact Inf Tech Gmbh | Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl. |
US6243836B1 (en) * | 1998-08-17 | 2001-06-05 | Lucent Technologies, Inc. | Apparatus and method for circular buffering on an on-chip discontinuity trace |
DE10081643D2 (de) | 1999-06-10 | 2002-05-29 | Pact Inf Tech Gmbh | Sequenz-Partitionierung auf Zellstrukturen |
JP2004506261A (ja) | 2000-06-13 | 2004-02-26 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | パイプラインctプロトコルおよびct通信 |
US20040015899A1 (en) * | 2000-10-06 | 2004-01-22 | Frank May | Method for processing data |
US8058899B2 (en) | 2000-10-06 | 2011-11-15 | Martin Vorbach | Logic cell array and bus system |
DE10059270B4 (de) * | 2000-11-29 | 2012-08-02 | Heidelberger Druckmaschinen Ag | Vorrichtung und Verfahren zur Synchronisation von an mehreren Einheiten ablaufende Prozesse |
US6990555B2 (en) * | 2001-01-09 | 2006-01-24 | Pact Xpp Technologies Ag | Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.) |
US9037807B2 (en) | 2001-03-05 | 2015-05-19 | Pact Xpp Technologies Ag | Processor arrangement on a chip including data processing, memory, and interface elements |
US7210129B2 (en) * | 2001-08-16 | 2007-04-24 | Pact Xpp Technologies Ag | Method for translating programs for reconfigurable architectures |
US7444531B2 (en) | 2001-03-05 | 2008-10-28 | Pact Xpp Technologies Ag | Methods and devices for treating and processing data |
US7844796B2 (en) | 2001-03-05 | 2010-11-30 | Martin Vorbach | Data processing device and method |
US20090210653A1 (en) * | 2001-03-05 | 2009-08-20 | Pact Xpp Technologies Ag | Method and device for treating and processing data |
US20090300262A1 (en) * | 2001-03-05 | 2009-12-03 | Martin Vorbach | Methods and devices for treating and/or processing data |
US7624204B2 (en) * | 2001-03-22 | 2009-11-24 | Nvidia Corporation | Input/output controller node in an adaptable computing environment |
US7657877B2 (en) | 2001-06-20 | 2010-02-02 | Pact Xpp Technologies Ag | Method for processing data |
US10031733B2 (en) * | 2001-06-20 | 2018-07-24 | Scientia Sol Mentis Ag | Method for processing data |
US7996827B2 (en) | 2001-08-16 | 2011-08-09 | Martin Vorbach | Method for the translation of programs for reconfigurable architectures |
US7434191B2 (en) | 2001-09-03 | 2008-10-07 | Pact Xpp Technologies Ag | Router |
US8686475B2 (en) | 2001-09-19 | 2014-04-01 | Pact Xpp Technologies Ag | Reconfigurable elements |
AU2002338729A1 (en) | 2001-09-19 | 2003-04-01 | Pact Xpp Technologies Ag | Router |
US7594229B2 (en) * | 2001-10-09 | 2009-09-22 | Nvidia Corp. | Predictive resource allocation in computing systems |
US7644279B2 (en) * | 2001-12-05 | 2010-01-05 | Nvidia Corporation | Consumer product distribution in the embedded system market |
US7577822B2 (en) * | 2001-12-14 | 2009-08-18 | Pact Xpp Technologies Ag | Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization |
WO2003071418A2 (en) * | 2002-01-18 | 2003-08-28 | Pact Xpp Technologies Ag | Method and device for partitioning large computer programs |
WO2003060747A2 (de) | 2002-01-19 | 2003-07-24 | Pact Xpp Technologies Ag | Reconfigurierbarer prozessor |
EP2043000B1 (de) | 2002-02-18 | 2011-12-21 | Richter, Thomas | Bussysteme und Rekonfigurationsverfahren |
US20060075211A1 (en) * | 2002-03-21 | 2006-04-06 | Martin Vorbach | Method and device for data processing |
US8914590B2 (en) | 2002-08-07 | 2014-12-16 | Pact Xpp Technologies Ag | Data processing method and device |
US7093255B1 (en) * | 2002-05-31 | 2006-08-15 | Quicksilver Technology, Inc. | Method for estimating cost when placing operations within a modulo scheduler when scheduling for processors with a large number of function units or reconfigurable data paths |
US7620678B1 (en) | 2002-06-12 | 2009-11-17 | Nvidia Corporation | Method and system for reducing the time-to-market concerns for embedded system design |
US7802108B1 (en) | 2002-07-18 | 2010-09-21 | Nvidia Corporation | Secure storage of program code for an embedded system |
US7657861B2 (en) | 2002-08-07 | 2010-02-02 | Pact Xpp Technologies Ag | Method and device for processing data |
US20110238948A1 (en) * | 2002-08-07 | 2011-09-29 | Martin Vorbach | Method and device for coupling a data processing unit and a data processing array |
AU2003286131A1 (en) | 2002-08-07 | 2004-03-19 | Pact Xpp Technologies Ag | Method and device for processing data |
US7394284B2 (en) | 2002-09-06 | 2008-07-01 | Pact Xpp Technologies Ag | Reconfigurable sequencer structure |
US7502915B2 (en) * | 2002-09-30 | 2009-03-10 | Nvidia Corporation | System and method using embedded microprocessor as a node in an adaptable computing machine |
US8949576B2 (en) * | 2002-11-01 | 2015-02-03 | Nvidia Corporation | Arithmetic node including general digital signal processing functions for an adaptive computing machine |
US7617100B1 (en) | 2003-01-10 | 2009-11-10 | Nvidia Corporation | Method and system for providing an excitation-pattern based audio coding scheme |
JP2006524850A (ja) * | 2003-04-04 | 2006-11-02 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | データ処理方法およびデータ処理装置 |
US8296764B2 (en) * | 2003-08-14 | 2012-10-23 | Nvidia Corporation | Internal synchronization control for adaptive integrated circuitry |
EP1676208A2 (en) | 2003-08-28 | 2006-07-05 | PACT XPP Technologies AG | Data processing device and method |
US8018463B2 (en) * | 2004-05-10 | 2011-09-13 | Nvidia Corporation | Processor for video data |
US8130825B2 (en) * | 2004-05-10 | 2012-03-06 | Nvidia Corporation | Processor for video data encoding/decoding |
JP2006011705A (ja) * | 2004-06-24 | 2006-01-12 | Fujitsu Ltd | プロセッサおよび半導体装置 |
TWI256013B (en) * | 2004-10-12 | 2006-06-01 | Uli Electronics Inc | Sound-effect processing circuit |
JP2008530642A (ja) * | 2005-02-07 | 2008-08-07 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | 低レイテンシーの大量並列データ処理装置 |
WO2007062327A2 (en) * | 2005-11-18 | 2007-05-31 | Ideal Industries, Inc. | Releasable wire connector |
US8250503B2 (en) | 2006-01-18 | 2012-08-21 | Martin Vorbach | Hardware definition method including determining whether to implement a function as hardware or software |
US7999820B1 (en) | 2006-10-23 | 2011-08-16 | Nvidia Corporation | Methods and systems for reusing memory addresses in a graphics system |
US20080111923A1 (en) * | 2006-11-09 | 2008-05-15 | Scheuermann W James | Processor for video data |
US7904863B2 (en) * | 2006-12-04 | 2011-03-08 | Fujitsu Limited | Circuit-design supporting apparatus, circuit-design supporting method, computer product, and printed-circuit-board manufacturing method |
US8169789B1 (en) | 2007-04-10 | 2012-05-01 | Nvidia Corporation | Graphics processing unit stiffening frame |
US7987065B1 (en) | 2007-04-17 | 2011-07-26 | Nvidia Corporation | Automatic quality testing of multimedia rendering by software drivers |
US8572598B1 (en) | 2007-04-18 | 2013-10-29 | Nvidia Corporation | Method and system for upgrading software in a computing device |
US8726283B1 (en) | 2007-06-04 | 2014-05-13 | Nvidia Corporation | Deadlock avoidance skid buffer |
US7944453B1 (en) | 2007-06-07 | 2011-05-17 | Nvidia Corporation | Extrapolation texture filtering for nonresident mipmaps |
US7948500B2 (en) * | 2007-06-07 | 2011-05-24 | Nvidia Corporation | Extrapolation of nonresident mipmap data using resident mipmap data |
US7932227B1 (en) | 2007-09-17 | 2011-04-26 | University Of Virginia Patent Foundation | Lacritin-syndecan fusion proteins |
US8438522B1 (en) | 2008-09-24 | 2013-05-07 | Iowa State University Research Foundation, Inc. | Logic element architecture for generic logic chains in programmable devices |
US8661394B1 (en) | 2008-09-24 | 2014-02-25 | Iowa State University Research Foundation, Inc. | Depth-optimal mapping of logic chains in reconfigurable fabrics |
CN101616175B (zh) * | 2009-07-24 | 2013-01-09 | 中国科学院上海技术物理研究所 | 用于分布式多dsp系统的网络拓扑结构获取方法和装置 |
WO2015138604A1 (en) | 2014-03-12 | 2015-09-17 | University Of Virginia Patent Foundation | Compositions and methods for treating eye infections and disease |
CN104967783B (zh) * | 2015-07-01 | 2018-01-09 | 西北工业大学 | 面向微纳星的多路微图像采集系统 |
Family Cites Families (214)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US34363A (en) * | 1862-02-11 | Improvement in machinery for cleaning cotton | ||
US2067477A (en) | 1931-03-20 | 1937-01-12 | Allis Chalmers Mfg Co | Gearing |
GB971191A (en) | 1962-05-28 | 1964-09-30 | Wolf Electric Tools Ltd | Improvements relating to electrically driven equipment |
US3681572A (en) | 1970-08-11 | 1972-08-01 | Siegfried Johannes Gerathewohl | Air traveler's rest period calculator |
DE2057312A1 (de) | 1970-11-21 | 1972-05-25 | Bhs Bayerische Berg | Planetenradgetriebe mit Lastdruckausgleich |
US3855577A (en) | 1973-06-11 | 1974-12-17 | Texas Instruments Inc | Power saving circuit for calculator system |
US4498134A (en) | 1982-01-26 | 1985-02-05 | Hughes Aircraft Company | Segregator functional plane for use in a modular array processor |
US4489857A (en) | 1982-03-22 | 1984-12-25 | Bobrick Washroom Equipment, Inc. | Liquid dispenser |
JPS5936857A (ja) | 1982-08-25 | 1984-02-29 | Nec Corp | プロセツサユニツト |
US4663706A (en) | 1982-10-28 | 1987-05-05 | Tandem Computers Incorporated | Multiprocessor multisystem communications network |
US4739474A (en) * | 1983-03-10 | 1988-04-19 | Martin Marietta Corporation | Geometric-arithmetic parallel processor |
US4566102A (en) | 1983-04-18 | 1986-01-21 | International Business Machines Corporation | Parallel-shift error reconfiguration |
US5123109A (en) * | 1983-05-31 | 1992-06-16 | Thinking Machines Corporation | Parallel processor including a processor array with plural data transfer arrangements including (1) a global router and (2) a proximate-neighbor transfer system |
USRE34363E (en) | 1984-03-12 | 1993-08-31 | Xilinx, Inc. | Configurable electrical circuit having configurable logic elements and configurable interconnects |
US4870302A (en) * | 1984-03-12 | 1989-09-26 | Xilinx, Inc. | Configurable electrical circuit having configurable logic elements and configurable interconnects |
US4761755A (en) * | 1984-07-11 | 1988-08-02 | Prime Computer, Inc. | Data processing system and method having an improved arithmetic unit |
US4682284A (en) | 1984-12-06 | 1987-07-21 | American Telephone & Telegraph Co., At&T Bell Lab. | Queue administration method and apparatus |
EP0190813B1 (en) | 1985-01-29 | 1991-09-18 | The Secretary of State for Defence in Her Britannic Majesty's Government of the United Kingdom of Great Britain and | Processing cell for fault tolerant arrays |
US5023775A (en) * | 1985-02-14 | 1991-06-11 | Intel Corporation | Software programmable logic array utilizing "and" and "or" gates |
US5247689A (en) * | 1985-02-25 | 1993-09-21 | Ewert Alfred P | Parallel digital processor including lateral transfer buses with interrupt switches to form bus interconnection segments |
US4706216A (en) * | 1985-02-27 | 1987-11-10 | Xilinx, Inc. | Configurable logic element |
US5225719A (en) * | 1985-03-29 | 1993-07-06 | Advanced Micro Devices, Inc. | Family of multiple segmented programmable logic blocks interconnected by a high speed centralized switch matrix |
US5015884A (en) * | 1985-03-29 | 1991-05-14 | Advanced Micro Devices, Inc. | Multiple array high performance programmable logic device family |
US4967340A (en) * | 1985-06-12 | 1990-10-30 | E-Systems, Inc. | Adaptive processing system having an array of individually configurable processing components |
US4720780A (en) | 1985-09-17 | 1988-01-19 | The Johns Hopkins University | Memory-linked wavefront array processor |
EP0221360B1 (en) * | 1985-11-04 | 1992-12-30 | International Business Machines Corporation | Digital data message transmission networks and the establishing of communication paths therein |
US4852048A (en) | 1985-12-12 | 1989-07-25 | Itt Corporation | Single instruction multiple data (SIMD) cellular array processing apparatus employing a common bus where a first number of bits manifest a first bus portion and a second number of bits manifest a second bus portion |
US5021947A (en) * | 1986-03-31 | 1991-06-04 | Hughes Aircraft Company | Data-flow multiprocessor architecture with three dimensional multistage interconnection network for efficient signal and data processing |
GB8612396D0 (en) | 1986-05-21 | 1986-06-25 | Hewlett Packard Ltd | Chain-configured interface bus system |
US4910665A (en) | 1986-09-02 | 1990-03-20 | General Electric Company | Distributed processing system including reconfigurable elements |
US4860201A (en) | 1986-09-02 | 1989-08-22 | The Trustees Of Columbia University In The City Of New York | Binary tree parallel processor |
US5367208A (en) * | 1986-09-19 | 1994-11-22 | Actel Corporation | Reconfigurable programmable interconnect architecture |
FR2606184B1 (fr) | 1986-10-31 | 1991-11-29 | Thomson Csf | Dispositif de calcul reconfigurable |
US4811214A (en) * | 1986-11-14 | 1989-03-07 | Princeton University | Multinode reconfigurable pipeline computer |
US5226122A (en) * | 1987-08-21 | 1993-07-06 | Compaq Computer Corp. | Programmable logic system for filtering commands to a microprocessor |
US5115510A (en) | 1987-10-20 | 1992-05-19 | Sharp Kabushiki Kaisha | Multistage data flow processor with instruction packet, fetch, storage transmission and address generation controlled by destination information |
US4918690A (en) | 1987-11-10 | 1990-04-17 | Echelon Systems Corp. | Network and intelligent cell for providing sensing, bidirectional communications and control |
US5113498A (en) | 1987-11-10 | 1992-05-12 | Echelon Corporation | Input/output section for an intelligent cell which provides sensing, bidirectional communications and control |
US5303172A (en) * | 1988-02-16 | 1994-04-12 | Array Microsystems | Pipelined combination and vector signal processor |
JPH06101043B2 (ja) | 1988-06-30 | 1994-12-12 | 三菱電機株式会社 | マイクロコンピュータ |
US5204935A (en) * | 1988-08-19 | 1993-04-20 | Fuji Xerox Co., Ltd. | Programmable fuzzy logic circuits |
US4901268A (en) * | 1988-08-19 | 1990-02-13 | General Electric Company | Multiple function data processor |
US5353432A (en) | 1988-09-09 | 1994-10-04 | Compaq Computer Corporation | Interactive method for configuration of computer system and circuit boards with user specification of system resources and computer resolution of resource conflicts |
ATE98833T1 (de) | 1988-09-22 | 1994-01-15 | Siemens Ag | Schaltungsanordnung fuer fernmeldevermittlungsanlagen, insbesondere pcmzeitmultiplex-fernsprechvermittlungsanlagen mit zentralkoppelfeld und angeschlossenen teilkoppelfeldern. |
DE68926783T2 (de) * | 1988-10-07 | 1996-11-28 | Martin Marietta Corp | Paralleler datenprozessor |
US5014193A (en) * | 1988-10-14 | 1991-05-07 | Compaq Computer Corporation | Dynamically configurable portable computer system |
US5136717A (en) * | 1988-11-23 | 1992-08-04 | Flavors Technology Inc. | Realtime systolic, multiple-instruction, single-data parallel computer system |
US5081375A (en) * | 1989-01-19 | 1992-01-14 | National Semiconductor Corp. | Method for operating a multiple page programmable logic device |
GB8906145D0 (en) * | 1989-03-17 | 1989-05-04 | Algotronix Ltd | Configurable cellular array |
US5203005A (en) * | 1989-05-02 | 1993-04-13 | Horst Robert W | Cell structure for linear array wafer scale integration architecture with capability to open boundary i/o bus without neighbor acknowledgement |
US5109503A (en) * | 1989-05-22 | 1992-04-28 | Ge Fanuc Automation North America, Inc. | Apparatus with reconfigurable counter includes memory for storing plurality of counter configuration files which respectively define plurality of predetermined counters |
JP2584673B2 (ja) | 1989-06-09 | 1997-02-26 | 株式会社日立製作所 | テストデータ変更回路を有する論理回路テスト装置 |
CA2021192A1 (en) | 1989-07-28 | 1991-01-29 | Malcolm A. Mumme | Simplified synchronous mesh processor |
US5489857A (en) * | 1992-08-03 | 1996-02-06 | Advanced Micro Devices, Inc. | Flexible synchronous/asynchronous cell structure for a high density programmable logic device |
US5233539A (en) | 1989-08-15 | 1993-08-03 | Advanced Micro Devices, Inc. | Programmable gate array with improved interconnect structure, input/output structure and configurable logic block |
US5212652A (en) * | 1989-08-15 | 1993-05-18 | Advanced Micro Devices, Inc. | Programmable gate array with improved interconnect structure |
US5128559A (en) * | 1989-09-29 | 1992-07-07 | Sgs-Thomson Microelectronics, Inc. | Logic block for programmable logic devices |
JP2968289B2 (ja) * | 1989-11-08 | 1999-10-25 | 株式会社リコー | 中央演算処理装置 |
GB8925721D0 (en) * | 1989-11-14 | 1990-01-04 | Amt Holdings | Processor array system |
US5522083A (en) * | 1989-11-17 | 1996-05-28 | Texas Instruments Incorporated | Reconfigurable multi-processor operating in SIMD mode with one processor fetching instructions for use by remaining processors |
EP0428770B1 (de) | 1989-11-21 | 1995-02-01 | Deutsche ITT Industries GmbH | Datengesteuerter Arrayprozessor |
US5125801A (en) * | 1990-02-02 | 1992-06-30 | Isco, Inc. | Pumping system |
US5142469A (en) * | 1990-03-29 | 1992-08-25 | Ge Fanuc Automation North America, Inc. | Method for converting a programmable logic controller hardware configuration and corresponding control program for use on a first programmable logic controller to use on a second programmable logic controller |
US5198705A (en) * | 1990-05-11 | 1993-03-30 | Actel Corporation | Logic module with configurable combinational and sequential blocks |
US5483620A (en) * | 1990-05-22 | 1996-01-09 | International Business Machines Corp. | Learning machine synapse processor system apparatus |
US5193202A (en) | 1990-05-29 | 1993-03-09 | Wavetracer, Inc. | Processor array with relocated operand physical address generator capable of data transfer to distant physical processor for each virtual processor while simulating dimensionally larger array processor |
US5111079A (en) * | 1990-06-29 | 1992-05-05 | Sgs-Thomson Microelectronics, Inc. | Power reduction circuit for programmable logic device |
SE9002558D0 (sv) * | 1990-08-02 | 1990-08-02 | Carlstedt Elektronik Ab | Processor |
US5274593A (en) | 1990-09-28 | 1993-12-28 | Intergraph Corporation | High speed redundant rows and columns for semiconductor memories |
US5144166A (en) | 1990-11-02 | 1992-09-01 | Concurrent Logic, Inc. | Programmable logic cell and array |
US5794059A (en) | 1990-11-13 | 1998-08-11 | International Business Machines Corporation | N-dimensional modified hypercube |
US5588152A (en) * | 1990-11-13 | 1996-12-24 | International Business Machines Corporation | Advanced parallel processor including advanced support hardware |
US5590345A (en) * | 1990-11-13 | 1996-12-31 | International Business Machines Corporation | Advanced parallel array processor(APAP) |
US5734921A (en) | 1990-11-13 | 1998-03-31 | International Business Machines Corporation | Advanced parallel array processor computer package |
US5752067A (en) | 1990-11-13 | 1998-05-12 | International Business Machines Corporation | Fully scalable parallel processing system having asynchronous SIMD processing |
US5765011A (en) | 1990-11-13 | 1998-06-09 | International Business Machines Corporation | Parallel processing system having a synchronous SIMD processing with processing elements emulating SIMD operation using individual instruction streams |
US5301284A (en) | 1991-01-16 | 1994-04-05 | Walker-Estes Corporation | Mixed-resolution, N-dimensional object space method and apparatus |
US5301344A (en) * | 1991-01-29 | 1994-04-05 | Analogic Corporation | Multibus sequential processor to perform in parallel a plurality of reconfigurable logic operations on a plurality of data sets |
DE59107764D1 (de) * | 1991-02-22 | 1996-06-05 | Siemens Ag | Speicherprogrammierbare Steuerung |
JPH04290155A (ja) * | 1991-03-19 | 1992-10-14 | Fujitsu Ltd | 並列データ処理方式 |
JPH04293151A (ja) * | 1991-03-20 | 1992-10-16 | Fujitsu Ltd | 並列データ処理方式 |
US5617547A (en) | 1991-03-29 | 1997-04-01 | International Business Machines Corporation | Switch network extension of bus architecture |
WO1992018935A1 (en) * | 1991-04-09 | 1992-10-29 | Fujitsu Limited | Data processor and data processing method |
US5446904A (en) * | 1991-05-17 | 1995-08-29 | Zenith Data Systems Corporation | Suspend/resume capability for a protected mode microprocessor |
JPH06507990A (ja) * | 1991-05-24 | 1994-09-08 | ブリティッシュ・テクノロジー・グループ・ユーエスエイ・インコーポレーテッド | コンピュータのための最適化コンパイラ |
US5287344A (en) * | 1991-06-05 | 1994-02-15 | At&T Bell Laboratories | Transferring lines in a digital loop carrier transmission system |
US5659797A (en) | 1991-06-24 | 1997-08-19 | U.S. Philips Corporation | Sparc RISC based computer system including a single chip processor with memory management and DMA units coupled to a DRAM interface |
US5347639A (en) | 1991-07-15 | 1994-09-13 | International Business Machines Corporation | Self-parallelizing computer system and method |
US5338984A (en) * | 1991-08-29 | 1994-08-16 | National Semiconductor Corp. | Local and express diagonal busses in a configurable logic array |
US5260610A (en) * | 1991-09-03 | 1993-11-09 | Altera Corporation | Programmable logic element interconnections for programmable logic array integrated circuits |
FR2681791B1 (fr) | 1991-09-27 | 1994-05-06 | Salomon Sa | Dispositif d'amortissement des vibrations pour club de golf. |
US5223539A (en) * | 1991-11-22 | 1993-06-29 | G. D. Searle & Co. | N,n-di-alkyl(phenoxy)benzamide derivatives |
CA2073516A1 (en) | 1991-11-27 | 1993-05-28 | Peter Michael Kogge | Dynamic multi-mode parallel processor array architecture computer system |
AU2939892A (en) | 1991-12-06 | 1993-06-28 | Richard S. Norman | Massively-parallel direct output processor array |
US5208491A (en) * | 1992-01-07 | 1993-05-04 | Washington Research Foundation | Field programmable gate array |
FR2686175B1 (fr) | 1992-01-14 | 1996-12-20 | Andre Thepaut | Systeme de traitement de donnees multiprocesseur. |
JP2791243B2 (ja) * | 1992-03-13 | 1998-08-27 | 株式会社東芝 | 階層間同期化システムおよびこれを用いた大規模集積回路 |
US5452401A (en) | 1992-03-31 | 1995-09-19 | Seiko Epson Corporation | Selective power-down for high performance CPU/system |
US5611049A (en) * | 1992-06-03 | 1997-03-11 | Pitts; William M. | System for accessing distributed data cache channel at each network node to pass requests and data |
EP0643855A1 (en) * | 1992-06-04 | 1995-03-22 | Xilinx, Inc. | Timing driven method for laying out a user's circuit onto a programmable integrated circuit device |
US5475803A (en) * | 1992-07-10 | 1995-12-12 | Lsi Logic Corporation | Method for 2-D affine transformation of images |
US5590348A (en) | 1992-07-28 | 1996-12-31 | International Business Machines Corporation | Status predictor for combined shifter-rotate/merge unit |
US5581778A (en) * | 1992-08-05 | 1996-12-03 | David Sarnoff Researach Center | Advanced massively parallel computer using a field of the instruction to selectively enable the profiling counter to increase its value in response to the system clock |
US5425036A (en) | 1992-09-18 | 1995-06-13 | Quickturn Design Systems, Inc. | Method and apparatus for debugging reconfigurable emulation systems |
JPH06180653A (ja) | 1992-10-02 | 1994-06-28 | Hudson Soft Co Ltd | 割り込み処理方法および装置 |
US5329179A (en) * | 1992-10-05 | 1994-07-12 | Lattice Semiconductor Corporation | Arrangement for parallel programming of in-system programmable IC logical devices |
US5497498A (en) * | 1992-11-05 | 1996-03-05 | Giga Operations Corporation | Video processing module using a second programmable logic device which reconfigures a first programmable logic device for data transformation |
US5392437A (en) | 1992-11-06 | 1995-02-21 | Intel Corporation | Method and apparatus for independently stopping and restarting functional units |
US5361373A (en) * | 1992-12-11 | 1994-11-01 | Gilson Kent L | Integrated circuit computing device comprising a dynamically configurable gate array having a microprocessor and reconfigurable instruction execution means and method therefor |
US5428526A (en) | 1993-02-03 | 1995-06-27 | Flood; Mark A. | Programmable controller with time periodic communication |
GB9303084D0 (en) * | 1993-02-16 | 1993-03-31 | Inmos Ltd | Programmable logic circuit |
JPH06276086A (ja) * | 1993-03-18 | 1994-09-30 | Fuji Xerox Co Ltd | フィールドプログラマブルゲートアレイ |
US5548773A (en) * | 1993-03-30 | 1996-08-20 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Digital parallel processor array for optimum path planning |
US5596742A (en) | 1993-04-02 | 1997-01-21 | Massachusetts Institute Of Technology | Virtual interconnections for reconfigurable logic systems |
US5473266A (en) * | 1993-04-19 | 1995-12-05 | Altera Corporation | Programmable logic device having fast programmable logic array blocks and a central global interconnect array |
DE4416881C2 (de) * | 1993-05-13 | 1998-03-19 | Pact Inf Tech Gmbh | Verfahren zum Betrieb einer Datenverarbeitungseinrichtung |
US5349193A (en) | 1993-05-20 | 1994-09-20 | Princeton Gamma Tech, Inc. | Highly sensitive nuclear spectrometer apparatus and method |
US5444394A (en) * | 1993-07-08 | 1995-08-22 | Altera Corporation | PLD with selective inputs from local and global conductors |
JPH0736858A (ja) * | 1993-07-21 | 1995-02-07 | Hitachi Ltd | 信号処理プロセッサ |
US5457644A (en) * | 1993-08-20 | 1995-10-10 | Actel Corporation | Field programmable digital signal processing array integrated circuit |
US5440538A (en) | 1993-09-23 | 1995-08-08 | Massachusetts Institute Of Technology | Communication system with redundant links and data bit time multiplexing |
US5455525A (en) * | 1993-12-06 | 1995-10-03 | Intelligent Logic Systems, Inc. | Hierarchically-structured programmable logic array and system for interconnecting logic elements in the logic array |
US5535406A (en) * | 1993-12-29 | 1996-07-09 | Kolchinsky; Alexander | Virtual processor module including a reconfigurable programmable matrix |
CN1104683C (zh) | 1994-03-22 | 2003-04-02 | 海珀奇普公司 | 支持具有与系统操作者直接通信的装置的完全集成系统的高效直接单元替换容错结构 |
US5561738A (en) * | 1994-03-25 | 1996-10-01 | Motorola, Inc. | Data processor for executing a fuzzy logic operation and method therefor |
US5430687A (en) * | 1994-04-01 | 1995-07-04 | Xilinx, Inc. | Programmable logic device including a parallel input device for loading memory cells |
US5761484A (en) | 1994-04-01 | 1998-06-02 | Massachusetts Institute Of Technology | Virtual interconnections for reconfigurable logic systems |
US5896551A (en) * | 1994-04-15 | 1999-04-20 | Micron Technology, Inc. | Initializing and reprogramming circuitry for state independent memory array burst operations control |
US5426378A (en) * | 1994-04-20 | 1995-06-20 | Xilinx, Inc. | Programmable logic device which stores more than one configuration and means for switching configurations |
US5532693A (en) * | 1994-06-13 | 1996-07-02 | Advanced Hardware Architectures | Adaptive data compression system with systolic string matching logic |
US5513366A (en) * | 1994-09-28 | 1996-04-30 | International Business Machines Corporation | Method and system for dynamically reconfiguring a register file in a vector processor |
US5530946A (en) | 1994-10-28 | 1996-06-25 | Dell Usa, L.P. | Processor failure detection and recovery circuit in a dual processor computer system and method of operation thereof |
EP0721157A1 (en) * | 1994-12-12 | 1996-07-10 | Advanced Micro Devices, Inc. | Microprocessor with selectable clock frequency |
US5532957A (en) * | 1995-01-31 | 1996-07-02 | Texas Instruments Incorporated | Field reconfigurable logic/memory array |
US5493239A (en) * | 1995-01-31 | 1996-02-20 | Motorola, Inc. | Circuit and method of configuring a field programmable gate array |
US6052773A (en) | 1995-02-10 | 2000-04-18 | Massachusetts Institute Of Technology | DPGA-coupled microprocessors |
US5742180A (en) | 1995-02-10 | 1998-04-21 | Massachusetts Institute Of Technology | Dynamically programmable gate array with multiple contexts |
US5659785A (en) * | 1995-02-10 | 1997-08-19 | International Business Machines Corporation | Array processor communication architecture with broadcast processor instructions |
US5537057A (en) * | 1995-02-14 | 1996-07-16 | Altera Corporation | Programmable logic array device with grouped logic regions and three types of conductors |
US5892961A (en) | 1995-02-17 | 1999-04-06 | Xilinx, Inc. | Field programmable gate array having programming instructions in the configuration bitstream |
US5570040A (en) * | 1995-03-22 | 1996-10-29 | Altera Corporation | Programmable logic array integrated circuit incorporating a first-in first-out memory |
US5541530A (en) * | 1995-05-17 | 1996-07-30 | Altera Corporation | Programmable logic array integrated circuits with blocks of logic regions grouped into super-blocks |
US5646544A (en) * | 1995-06-05 | 1997-07-08 | International Business Machines Corporation | System and method for dynamically reconfiguring a programmable gate array |
US5889982A (en) * | 1995-07-01 | 1999-03-30 | Intel Corporation | Method and apparatus for generating event handler vectors based on both operating mode and event type |
US5559450A (en) * | 1995-07-27 | 1996-09-24 | Lucent Technologies Inc. | Field programmable gate array with multi-port RAM |
US5649176A (en) * | 1995-08-10 | 1997-07-15 | Virtual Machine Works, Inc. | Transition analysis and circuit resynthesis method and device for digital circuit modeling |
US5583450A (en) * | 1995-08-18 | 1996-12-10 | Xilinx, Inc. | Sequencer for a time multiplexed programmable logic device |
US5778439A (en) * | 1995-08-18 | 1998-07-07 | Xilinx, Inc. | Programmable logic device with hierarchical confiquration and state storage |
US5652894A (en) | 1995-09-29 | 1997-07-29 | Intel Corporation | Method and apparatus for providing power saving modes to a pipelined processor |
US5943242A (en) * | 1995-11-17 | 1999-08-24 | Pact Gmbh | Dynamically reconfigurable data processing system |
US5732209A (en) * | 1995-11-29 | 1998-03-24 | Exponential Technology, Inc. | Self-testing multi-processor die with internal compare points |
US7266725B2 (en) * | 2001-09-03 | 2007-09-04 | Pact Xpp Technologies Ag | Method for debugging reconfigurable architectures |
US5854918A (en) * | 1996-01-24 | 1998-12-29 | Ricoh Company Ltd. | Apparatus and method for self-timed algorithmic execution |
US5936424A (en) | 1996-02-02 | 1999-08-10 | Xilinx, Inc. | High speed bus with tree structure for selecting bus driver |
US6020758A (en) * | 1996-03-11 | 2000-02-01 | Altera Corporation | Partially reconfigurable programmable logic device |
US6173434B1 (en) * | 1996-04-22 | 2001-01-09 | Brigham Young University | Dynamically-configurable digital processor using method for relocating logic array modules |
US5894565A (en) | 1996-05-20 | 1999-04-13 | Atmel Corporation | Field programmable gate array with distributed RAM and increased cell utilization |
JP2000513523A (ja) * | 1996-06-21 | 2000-10-10 | オーガニック システムズ インコーポレイテッド | プロセスの即時制御を行う動的に再構成可能なハードウェアシステム |
US5892370A (en) * | 1996-06-21 | 1999-04-06 | Quicklogic Corporation | Clock network for field programmable gate array |
US6023742A (en) * | 1996-07-18 | 2000-02-08 | University Of Washington | Reconfigurable computing architecture for providing pipelined data paths |
US6023564A (en) * | 1996-07-19 | 2000-02-08 | Xilinx, Inc. | Data processing system using a flash reconfigurable logic device as a dynamic execution unit for a sequence of instructions |
US5838165A (en) | 1996-08-21 | 1998-11-17 | Chatter; Mukesh | High performance self modifying on-the-fly alterable logic FPGA, architecture and method |
US5859544A (en) * | 1996-09-05 | 1999-01-12 | Altera Corporation | Dynamic configurable elements for programmable logic devices |
US5828858A (en) * | 1996-09-16 | 1998-10-27 | Virginia Tech Intellectual Properties, Inc. | Worm-hole run-time reconfigurable processor field programmable gate array (FPGA) |
US6005410A (en) | 1996-12-05 | 1999-12-21 | International Business Machines Corporation | Interconnect structure between heterogeneous core regions in a programmable array |
DE19651075A1 (de) * | 1996-12-09 | 1998-06-10 | Pact Inf Tech Gmbh | Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen |
DE19654595A1 (de) | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen |
US6338106B1 (en) * | 1996-12-20 | 2002-01-08 | Pact Gmbh | I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures |
DE19654593A1 (de) * | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit |
DE19654846A1 (de) * | 1996-12-27 | 1998-07-09 | Pact Inf Tech Gmbh | Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.) |
DE19704044A1 (de) * | 1997-02-04 | 1998-08-13 | Pact Inf Tech Gmbh | Verfahren zur automatischen Adressgenerierung von Bausteinen innerhalb Clustern aus einer Vielzahl dieser Bausteine |
US5865239A (en) * | 1997-02-05 | 1999-02-02 | Micropump, Inc. | Method for making herringbone gears |
DE19704728A1 (de) * | 1997-02-08 | 1998-08-13 | Pact Inf Tech Gmbh | Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines |
US6542998B1 (en) * | 1997-02-08 | 2003-04-01 | Pact Gmbh | Method of self-synchronization of configurable elements of a programmable module |
DE19704742A1 (de) * | 1997-02-11 | 1998-09-24 | Pact Inf Tech Gmbh | Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand |
US5927423A (en) | 1997-03-05 | 1999-07-27 | Massachusetts Institute Of Technology | Reconfigurable footprint mechanism for omnidirectional vehicles |
US5884075A (en) * | 1997-03-10 | 1999-03-16 | Compaq Computer Corporation | Conflict resolution using self-contained virtual devices |
US6047115A (en) * | 1997-05-29 | 2000-04-04 | Xilinx, Inc. | Method for configuring FPGA memory planes for virtual hardware computation |
US6011407A (en) * | 1997-06-13 | 2000-01-04 | Xilinx, Inc. | Field programmable gate array with dedicated computer bus interface and method for configuring both |
US5966534A (en) * | 1997-06-27 | 1999-10-12 | Cooke; Laurence H. | Method for compiling high level programming languages into an integrated processor with reconfigurable logic |
US6038656A (en) * | 1997-09-12 | 2000-03-14 | California Institute Of Technology | Pipelined completion for asynchronous communication |
US5915123A (en) | 1997-10-31 | 1999-06-22 | Silicon Spice | Method and apparatus for controlling configuration memory contexts of processing elements in a network of multiple context processing elements |
US6108760A (en) | 1997-10-31 | 2000-08-22 | Silicon Spice | Method and apparatus for position independent reconfiguration in a network of multiple context processing elements |
US6122719A (en) | 1997-10-31 | 2000-09-19 | Silicon Spice | Method and apparatus for retiming in a network of multiple context processing elements |
US6127908A (en) | 1997-11-17 | 2000-10-03 | Massachusetts Institute Of Technology | Microelectro-mechanical system actuator device and reconfigurable circuits utilizing same |
EP0926594B1 (en) * | 1997-12-17 | 2007-05-23 | Hewlett-Packard Company, A Delaware Corporation | Method of using primary and secondary processors |
DE19861088A1 (de) * | 1997-12-22 | 2000-02-10 | Pact Inf Tech Gmbh | Verfahren zur Reparatur von integrierten Schaltkreisen |
US6049222A (en) * | 1997-12-30 | 2000-04-11 | Xilinx, Inc | Configuring an FPGA using embedded memory |
US6172520B1 (en) * | 1997-12-30 | 2001-01-09 | Xilinx, Inc. | FPGA system with user-programmable configuration ports and method for reconfiguring the FPGA |
US6034538A (en) | 1998-01-21 | 2000-03-07 | Lucent Technologies Inc. | Virtual logic system for reconfigurable hardware |
WO1999038071A1 (en) | 1998-01-26 | 1999-07-29 | Chameleon Systems, Inc. | Reconfigurable logic for table lookup |
US5965518A (en) | 1998-02-23 | 1999-10-12 | Nakatsu; Tetsuo | Fragrance compositions having antimicrobial activity |
DE19807872A1 (de) * | 1998-02-25 | 1999-08-26 | Pact Inf Tech Gmbh | Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl. |
US6282627B1 (en) | 1998-06-29 | 2001-08-28 | Chameleon Systems, Inc. | Integrated processor and programmable data path chip for reconfigurable computing |
US6202182B1 (en) | 1998-06-30 | 2001-03-13 | Lucent Technologies Inc. | Method and apparatus for testing field programmable gate arrays |
US6345346B1 (en) * | 1999-02-26 | 2002-02-05 | Voom Technologies | Substantially instantaneous storage restoration for non-computer forensics applications |
US6243808B1 (en) | 1999-03-08 | 2001-06-05 | Chameleon Systems, Inc. | Digital data bit order conversion using universal switch matrix comprising rows of bit swapping selector groups |
US6347346B1 (en) | 1999-06-30 | 2002-02-12 | Chameleon Systems, Inc. | Local memory unit system with global access for use on reconfigurable chips |
GB2352548B (en) * | 1999-07-26 | 2001-06-06 | Sun Microsystems Inc | Method and apparatus for executing standard functions in a computer system |
US6370596B1 (en) | 1999-08-03 | 2002-04-09 | Chameleon Systems, Inc. | Logic flag registers for monitoring processing system events |
US6341318B1 (en) | 1999-08-10 | 2002-01-22 | Chameleon Systems, Inc. | DMA data streaming |
US6311200B1 (en) | 1999-09-23 | 2001-10-30 | Chameleon Systems, Inc. | Reconfigurable program sum of products generator |
US6349346B1 (en) | 1999-09-23 | 2002-02-19 | Chameleon Systems, Inc. | Control fabric unit including associated configuration memory and PSOP state machine adapted to provide configuration address to reconfigurable functional unit |
US6288566B1 (en) | 1999-09-23 | 2001-09-11 | Chameleon Systems, Inc. | Configuration state memory for functional blocks on a reconfigurable chip |
DE19946752A1 (de) * | 1999-09-29 | 2001-04-12 | Infineon Technologies Ag | Rekonfigurierbares Gate-Array |
US6519674B1 (en) * | 2000-02-18 | 2003-02-11 | Chameleon Systems, Inc. | Configuration bits layout |
US6539477B1 (en) * | 2000-03-03 | 2003-03-25 | Chameleon Systems, Inc. | System and method for control synthesis using a reachable states look-up table |
JP2004506261A (ja) * | 2000-06-13 | 2004-02-26 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | パイプラインctプロトコルおよびct通信 |
US6538468B1 (en) * | 2000-07-31 | 2003-03-25 | Cypress Semiconductor Corporation | Method and apparatus for multiple boot-up functionalities for a programmable logic device (PLD) |
US20040015899A1 (en) * | 2000-10-06 | 2004-01-22 | Frank May | Method for processing data |
US6392912B1 (en) | 2001-01-10 | 2002-05-21 | Chameleon Systems, Inc. | Loading data plane on reconfigurable chip |
US7210129B2 (en) * | 2001-08-16 | 2007-04-24 | Pact Xpp Technologies Ag | Method for translating programs for reconfigurable architectures |
US20030055861A1 (en) * | 2001-09-18 | 2003-03-20 | Lai Gary N. | Multipler unit in reconfigurable chip |
US20030052711A1 (en) * | 2001-09-19 | 2003-03-20 | Taylor Bradley L. | Despreader/correlator unit for use in reconfigurable chip |
-
1997
- 1997-02-08 DE DE19704728A patent/DE19704728A1/de not_active Withdrawn
- 1997-10-08 US US08/946,812 patent/US6081903A/en not_active Expired - Lifetime
-
1998
- 1998-02-07 EP EP05008631A patent/EP1669885A3/de not_active Ceased
- 1998-02-07 DE DE59812895T patent/DE59812895D1/de not_active Expired - Lifetime
- 1998-02-07 CA CA002279917A patent/CA2279917A1/en not_active Abandoned
- 1998-02-07 WO PCT/DE1998/000334 patent/WO1998035299A2/de active IP Right Grant
- 1998-02-07 DE DE19880129T patent/DE19880129D2/de not_active Expired - Lifetime
- 1998-02-07 EA EA199900653A patent/EA001823B1/ru not_active IP Right Cessation
- 1998-02-07 AT AT98909346T patent/ATE298907T1/de not_active IP Right Cessation
- 1998-02-07 CN CN98803968A patent/CN1252144A/zh active Pending
- 1998-02-07 JP JP53356398A patent/JP4146519B2/ja not_active Expired - Fee Related
- 1998-02-07 AU AU63918/98A patent/AU740243B2/en not_active Ceased
- 1998-02-07 EP EP98909346A patent/EP0961980B1/de not_active Expired - Lifetime
-
2000
- 2000-03-29 US US09/537,932 patent/US6526520B1/en not_active Expired - Lifetime
-
2003
- 2003-02-24 US US10/373,595 patent/US6968452B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US20040052130A1 (en) | 2004-03-18 |
DE19880129D2 (de) | 2000-01-27 |
US6968452B2 (en) | 2005-11-22 |
EA001823B1 (ru) | 2001-08-27 |
ATE298907T1 (de) | 2005-07-15 |
CA2279917A1 (en) | 1998-08-13 |
US6081903A (en) | 2000-06-27 |
EA199900653A1 (ru) | 2000-08-28 |
JP2001511325A (ja) | 2001-08-07 |
DE59812895D1 (de) | 2005-08-04 |
US6526520B1 (en) | 2003-02-25 |
DE19704728A1 (de) | 1998-08-13 |
EP0961980B1 (de) | 2005-06-29 |
WO1998035299A2 (de) | 1998-08-13 |
EP0961980A2 (de) | 1999-12-08 |
WO1998035299A3 (de) | 1998-09-17 |
AU740243B2 (en) | 2001-11-01 |
AU6391898A (en) | 1998-08-26 |
CN1252144A (zh) | 2000-05-03 |
EP1669885A3 (de) | 2007-09-12 |
EP1669885A2 (de) | 2006-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4146519B2 (ja) | プログラミング可能なコンポーネントにおけるコンフィグレーション可能な各エレメントの自己同期を確立する方法 | |
US6542998B1 (en) | Method of self-synchronization of configurable elements of a programmable module | |
US10515046B2 (en) | Processors, methods, and systems with a configurable spatial accelerator | |
US5987620A (en) | Method and apparatus for a self-timed and self-enabled distributed clock | |
US8156312B2 (en) | Processor chip for reconfigurable data processing, for processing numeric and logic operations and including function and interconnection control units | |
US6088795A (en) | Process for automatic dynamic reloading of data flow processors (DFPs) and units with two or three-dimensional programmable cell architectures (FPGAs, DPGAs and the like) | |
US7003660B2 (en) | Pipeline configuration unit protocols and communication | |
US20060031595A1 (en) | Process for automatic dynamic reloading of data flow processors (DFPs) and units with two- or three-dimensional programmable cell architectures (FPGAs, DPGAs, and the like | |
JP2003505753A (ja) | セル構造におけるシーケンス分割方法 | |
US10310994B2 (en) | Asynchronous finite state machines | |
US8171259B2 (en) | Multi-cluster dynamic reconfigurable circuit for context valid processing of data by clearing received data with added context change indicative signal | |
WO2000005644A1 (en) | Reshuffled communications processes in pipelined asynchronous circuits | |
David et al. | Self-timed architecture of a reduced instruction set computer | |
JP2008092190A (ja) | 遅延回路及びプロセッサ | |
Jacobson et al. | Asynchronous microengines for efficient high-level control | |
US6065109A (en) | Arbitration logic using a four-phase signaling protocol for control of a counterflow pipeline processor | |
Talvala | Designing the Port Interface Unit for the Lutonium Asynchronous Microcontroller | |
Jacobson et al. | Asynchronous Microengines for E cient High-level Control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050119 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060905 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20061204 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20070129 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070305 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070424 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20070723 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20070910 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071024 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071218 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080414 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080501 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080521 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080620 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110627 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110627 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120627 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130627 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |