JP2007504688A - データ処理装置およびデータ処理方法 - Google Patents
データ処理装置およびデータ処理方法 Download PDFInfo
- Publication number
- JP2007504688A JP2007504688A JP2006524345A JP2006524345A JP2007504688A JP 2007504688 A JP2007504688 A JP 2007504688A JP 2006524345 A JP2006524345 A JP 2006524345A JP 2006524345 A JP2006524345 A JP 2006524345A JP 2007504688 A JP2007504688 A JP 2007504688A
- Authority
- JP
- Japan
- Prior art keywords
- register
- data
- input
- pae
- bus
- 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.)
- Granted
Links
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/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
- G06F15/8023—Two dimensional arrays, e.g. mesh, torus
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17337—Direct connection machines, e.g. completely connected computers, point to point communication networks
- G06F15/17343—Direct connection machines, e.g. completely connected computers, point to point communication networks wherein the interconnection is dynamically configurable, e.g. having loosely coupled nearest neighbor architecture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17356—Indirect interconnection networks
- G06F15/17368—Indirect interconnection networks non hierarchical topologies
- G06F15/17381—Two dimensional, e.g. mesh, torus
-
- 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/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
-
- 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/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
- G06F15/803—Three-dimensional arrays or hypercubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
- G06F9/3893—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator
- G06F9/3895—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros
- G06F9/3897—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros with adaptable data path
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
Description
1.1 ALU−PAEアーキテクチャ
ここで提案される改善されたアーキテクチャでは、PAEは例えば4個の入力ポートおよび4個の出力ポートを有する。各PAEにはMERGE,SWAP,DEMUX,ELUTなどのデータフロー手段を備えたFREGパスが組み込まれている。これは新たにDFパスと称される。
例えばグラフィクスおよびイメージングに対して8bit幅および16bit幅のデータ語を支援するALU内にはSIMD演算がインプリメントされている。
1.2.1 基礎および入力/出力パラダイム
本章では、より良く理解してもらうために、XPPアーキテクチャの基礎演算パラダイムをPETRI‐NETに基づいて繰り返しておく。PETRI‐NETに加え、より良く理解してもらうために、以下に現行のXPPアーキテクチャの変更点を説明する。
1.必要な全てのデータが利用可能となる
2.必要な全てのイベントが利用可能となる
ことを意味している。データおよびイベントの数量はデータアンドコントロールフローによって定義されている。利用可能であることは動作中にハンドシェイクプロトコルRDY/ACKにより表示される。
最も重要な拡張の1つは、複数のPAE機能を1つのPAE上にたたみ込み、シーケンシャルに実行させる手段である。この手段はシーケンシャル処理またはマイクロコントローラ手段をサポートしないことを理解されたい。ファンクションフォールディングの意図は複数のデータフロー演算を行い、各機能間のネットワークに代わるレジスタ構造を用いてこれらを単一のPAE上にマッピングすることである。
1.データフローモデル
各レジスタr’はデータがレジスタに書き込まれると直ちにセットされ、読み出されると直ちにリセットされる有効bitを有する。データは有効bitがセットされると書き込むことができず、有効ビットがセットされないと読み出すことができない。このアプローチにより100%互換性のあるデータフロー挙動がインプリメントされる。
2.シーケンサモデル
レジスタは関連する有効bitを有さない。PAEはシーケンサとして動作し、PAEのエッジ(バス接続部)ではパラダイムがXPP状のデータフロー挙動へ変更される。
ファンクションフォールディングコンセプトは
a)PAE内でvon NeumanプロセッサおよびHavardプロセッサと同じ法則が通用するシーケンシャルモデル
b)任意の順序でPETRI‐NETモデルデータが計算または演算されるPACT VPUモデル
の2つの異なるデータ処理モデルを実現している。
(有限状態機械&プログラムポインタアプローチ)
(イネーブラ&アービタアプローチ)
‐1つの命令が1クロックごとに実行されるということから大幅な高速化が達成され、
‐無視されたサイクルでエネルギが無駄にならず、特に定常的な電流消費に対して有利に電流消費量が低減され、さらに
‐中小サイズのコンフィギュレーションメモリRCを使用すれば、シーケンシャル手段と同様のハードウェアコストひいては同様の費用しかかからない
ということである。
‐大きなRCでは大幅にコストが高く、したがって所定のアプリケーションセットに適用するには最適化が必要となり、
‐シーケンサモードをインプリメントするには(アプリケーションの他の部分参照)、FSMを有するプログラムカウンタを設けなければならない
ということである。ただし後者の場合、FSMのタスクはシーケンサのタスクに制限されるので、付加的なコストおよび費用はそれほど大きくはならない。
所定のPAEに割り当てられた全てのバスはPAEの入力レジスタIRに接続されており、またPAEの出力レジスタは全てのバスに接続されている(例えば独国出願第10050442.6号明細書または本出願人によるXPP/VPU-handbookを参照)。
次表にはXPU128、XPP64Aとして知られる従来技術のPAEインプリメンテーションが示されている。これは独国出願第10050442.6号明細書に記載されているものである。
a)マルチプレクサ
ALU内のコンフィギャラブルマルチプレクサは、ALU入力側がALUをバイパスして出力側に直接接続されるように接続されている。
b)MOVE命令
Rc0...Rcn内に記憶されているMOVE命令とは、ファンクションフォールディングの相応の処理クロックにおいてデータを命令の専用入力にしたがって専用出力側へ転送させる命令である。
例えば、MULオペコードを使用する場合であっても、バスクロック当たり2,4,8つの演算を計算するスーパースカラFF ALU−PAE,@FF=2,4,8を大まかに提供することは可能であり、また性能を改善する第1の方法として提案される。
ADD Ro0, Rd1, Ri2;
コンフィギュレーション後の最初のバスサイクル(t0)において、(Ri0/1においてデータが利用可能であると仮定すると)MULが実行される。レジスタペアRd0/1は、このバスサイクル間中、つまり2つのFF−PAE内部クロックサイクル中、無効である。したがってADDは、2番目のクロックサイクルにおいて実行されない。t0の後、MULの結果は、このレジスタペアに書き込まれ、そのVALIDフラグは同時にセットされる。
XPP IIIにおいてもコントロールフローが支配的なアプリケーションを実行できるようにしたいというニーズがあるため、シーケンサPAEを導入する。このようなPAEは、XPP内でシーケンシャルなコードを実行可能な極めて単純な形のプロセッサとみなすことができる。これにより、H.264コーデックのようなコントロールフロー優位のアプリケーションをアレイ上に効率的に実現することができる。これに対してSEQ−PAEがなければ、この実現は一層困難になり、資源が一層消費されることになる。
拡張したALU−PAEはつぎの表に示されている。右側の縁部には別のモジュールを制御するレジスタが見える。これらのレジスタは、通常モードでもSEQモードでも共に使用される。したがってローカルのコンフィギュレーションマネージャおよびRAM−PAEからの適切な制御信号が、まずORゲートによってマージされ、つぎにこれらレジスタに転送される。ここで保証しなければならないのは、通常モードにおいてRAM−PAEからの信号は0であり、またこの逆が成り立つことである。
各ステージの手短な説明
SEQ−PAEを動作させるため、さらに一層機能を設けなければならない。ここではRAM−PAEがそれを担当している。シーケンサを実現するための最初のアプローチとして、4ステージパイプラインを選択した。これらのステージは、表25に示されているように、
・ フェッチステージ
・ デコードステージ
・ 実行ステージ1
・ 実行ステージ2
である。
以下のセクションでは上記の4つのステージにおいて実施されるアクションの手短な概要をいくつかの基本的な命令に対して示す。これはパイプラインの動作を理解するために一助となるはずである。ここで述べようとする命令は、命令レジスタにおいて利用可能であり、フェッチステージのアクションはここでは省略する。
DR:データレジスタ
DB:データバンク
SBR: ストア/ブランチレジスタ
命令: データバンクからR[n]に値をロードする
従来技術と比較した場合の第1の利点は、ファンクションフォールディングPAEを使用することによって得られる。これらのPAEも、別のPAEも共に改良することができる。
この章では、所要の面積およびバスの量を低減し得る複数の最適化を説明する。これらの変更にはいくつかの提案が含まれている。それはこれらの変更は実際のアルゴリズムに基づいて評価しなければならないからである。例えば、アンケートを作成して、アプリケーションプログラムからの所要のインプットを集めることが可能である。
XPP−IIアーキテクチャでは、2つのPAEブロック間にある水平方向の直接のデータパスは、垂直方向データバスである。この結果、XPP内で必要な垂直方向のバスが増大し、コストも不必要に高めている。このためXPP−IIIでは水平方向のPAE間に直接のフィードパスを提案する。
XPP−IIでは垂直方向のバスに複数のレジスタが設けられており、これらレジスタは、より一層長いパスに対してコンフィギュレーションによってスイッチオン可能である。さらにこれらのレジスタは、コンフィギュレーションによってプリロード可能であり、これによって極めて大きな量のシリコン面積が必要である。ここで提案されるのは、もはやバスにレジスタを実装せずに、PAE内の拡張されたDFまたはバイパス(BF)部を使用することである。このPAEは、DFまたはBPの内部レジスタを代用することによって、パスを同じバスに再ルーティングすることができる。
XPP−IIではn:1および1:nのトランジションはバスによってサポートされており、これには極めて大量の資源が必要である。すなわちハンドシェーク信号のサンプルアンドホールドステージに対して大量の資源が必要なのである。
n ≦ 2 要求された演算はPAEのDFパス内で行われる
2 ≦ n ≦ 4 4つのポートが必要なためALUパスが必要である
n > 4 複数のALUを組み合わせなければならない
のである。
XPP−IIアーキテクチャにおいて制御構造の実現には極めてコストがかかり、多くの資源を要し、またプログラミングも極めて複雑である。
8 アドレスビット
24 データビット(22ビットを使用)
4 次アドレス
8 マルチプレクサセレクタ
6 カウンタ制御(付加的な4ビットの次アドレスと共用)
4 出力
8 アドレスビット
16 データビット(16ビットを使用)
4 次アドレス
4 マルチプレクサセレクタ
3 カウンタ制御(付加的な3ビットの次アドレスと共用)
4 出力
1.6.1 アドレス発生器およびビット反転アドレッシング
IOインタフェースに実現されるのは、いかなるALU−PAE資源を使用することなく、例えば1〜3次元の直接のアドレッシングをサポートするアドレス発生器である。この場合にアドレス発生は3つのカウンタによって行われ、各カウンタは例えばコンフィギュレーション可能なベースアドレスと、長さと、ステップ幅とを有する。
一般的にPAEアレイ内では複数のワード幅をサポートする必要がある。8および16ビット幅のデータワードが、多くのアルゴリズムに対して、すなわちグラフィックに対して有利である。すでに述べたSIMD演算に加えて、IOAGにより、上記のような比較的短いデータワードの分割およびマージが可能になる。
PAEおよびバスは、作業負荷に依存して動作するように構成されている。したがってクロック周波数は、データ帯域幅にしたがってコンフィギャラブルであり、さらにレジスタに対するクロックゲーティングがサポートされており、またバスはANDゲートの行を使用してデカップリングされる。処理可能なデータがない場合にはいつでも、クロックパルスは動的にゲート制御される。
μPとXPPとを密に結合するため、キャッシュおよびレジスタインタフェースは、Cコンパイラのような高レベルツールに対して有利な構造である。しかしながらこのような密結合は、極めて初期の段階で実行可能でないと予想される。
a) 長いデータストリームに対するメモリ結合: 最も高性能でもっとも便利な手法は、直接のキャッシュ結合である。これに対してスタート時にはAMBAベースのメモリ結合で十分である(ATAIRに関連して後述する)。
2.1 概要
有利な実施形態ではALU−PAEは3つのパスを有する。すなわち、
ALU 算術、論理およびデータフロー処理
BP バイパス
この場合に上記の各パスは、2つのデータパスおよび1つのイベントバスを有する。DFパスのバスは、コンフィギュレーションによってALUパスに再ルーティングすることができる。
ALUパスには12個のデータレジスタが含まれる。すなわち、
Ri0−3 バスからの入力データレジスタ0−3
Rv0−3 バスへの仮想出力データレジスタ
Rd0−3 内部汎用レジスタ0−3
Vi0−3 バスからのVイベント入力0−3
Ui0−3 バスからのUイベント入力0−3
Ev0−3 バスへの仮想Vイベント出力レジスタ
Eu0−3 バスへの仮想Uイベント出力レジスタ
Fu0−3
Fv0−3 XPP−II PAEイベントバスによる内部フラグuおよびvレジスタ
Acc アキュムレータ
ここでは8つの命令レジスタが実装されている。オペコードのフォーマットにしたがって24ビット幅である。すなわち、
Rc0−7 命令レジスタ
である。
Rlc CMによってコンフィギュレーションされ、ALU−PAEそれ自体からは直接にアクセスできないループカウンタ。JLオペコードにしたがってデクリメントされる。値0の後、リロードされる。
Rjb Rc[0…7]において使用されるエントリの数を定めるジャンプバックレジスタである。ALU−PAEそれ自体からは直接にアクセスできない。RppとRjbとが等しい場合、Rppは直ちに0にリセットされる。ジャンプバックは1つの条件、すなわち到来するイベントに制限することができる。この条件がない場合、このジャンプバックは遅延される。
Rpp プログラムポインタ
2.3 データ複製と複数入力の読み込み
ファンクションフォールディングは、純粋なデータストリームモードでも、シーケンシャルモード(1.2を参照されたい)でも共に動作できるため、データフローモード(単一の読み出しのみ)およびシーケンシャルモード(複数の読み出し)においてRi読み出しをサポートすることが有利である。相応するプロトコルを以下に示す。すなわち、
各入力レジスタRiは、相異なる2つのモードのうちの1つで動作するようにコンフィギュレーションすることができる。すなわち、
データフローモード:
XPP−II実装の標準プロトコルである。つまりレジスタが空の場合、1つのデータパケットがバスから読み出されて取り出され、ACKハンドシェークが生成される。このレジスタが空でない場合、このデータはラッチされず、またACKは生成されない。
RDY & 空 → フル
→ ACK
RDY & フル → ACKしない
READ & 空 → 停止
READ & フル → データ読み出し
→ 空
ここの説明およびプロトコルではパイプラインの作用は考慮されていないことに注意されたい。
入力インタフェースは、バスプロトコル定義にしたがってつぎのようになる。すなわち、レジスタが空の場合、1つのデータパケットがバスから読み出されて取り出され、ACKハンドシェークが生成される。レジスタが空でない場合、このデータはラッチされず、またACKは生成されない。
RDY & 空 → フル
→ ACK
RDY & フル → ACKしない
READ & 空 → 停止
READ & フル → データ読み出し
(Rpp == Rjb)→ 空
ここの説明およびプロトコルではパイプラインの作用は考慮されていないことに注意されたい。
データレジスタは直接アドレッシングされ、各データレジスタは個別に選択することができる。3つのアドレスオペコード形式が使用される。すなわちrt ← rs1,rs0である。仮想出力レジスタは、レジスタの後に「o」を付加することによって選択される。結果は、ルール
op out (rv,rt) ← rs1,rs0
にしたがってrtに格納され、また仮想出力レジスタrvにもコピーされる。
低い電力消費を達成し、またDSPライクなアルゴリズムをより良好にサポートするため、アキュムレータレジスタが利用可能であり、結果レジスタ(ao)およびオペランドレジスタ(ai)に対して1ビットをセットするだけでこれをアドレッシング可能である。可換の演算に対してつねにオペランドレジスタ1はaiによって置き換えられる。SUBtractのような可換でない演算に対してはオペランドおよびレジスタ1により、aiが第1のオペランドであるか、または第2のオペランドであるかが選択される。オペランドレジスタ2により、相応して他方のオペランドが定められる。
オペコードレジスタRcの未使用のエントリは、定数およびパラメタに対するスタックとして動作することができる。Rpp == 0000においてRps PStackレジスタはRjb+1をポイントする。これはPStack領域が、オペコードレジスタファイルの最後のエントリの直後からはじまることを意味する。
n:1のトランジションはもはやバス内ではサポートされない。択一的に複数の出力レジスタRoおよびイベント出力側Eoへの単純な書き込みがサポートされる。仮想出力レジスタ(Rv)および仮想イベント(Ev)は実出力レジスタ(Ro)および実イベント(Eo)に変換され、ここで1つの仮想レジスタを複数の出力レジスタにマッピングすることができる。
マルチコンフィグモードによって可能になるのは、格納された最大4つのコンフィギュレーションから1つを選択できるようにすることである。Fui0,1およびFvi0,1に到来するイベントにより、4つのコンフィギュレーションのうちの1つが選択される。1クロックサイクルにおいて1つのイベントだけがアクティブになるべきである。この選択は単純な変換によって行われ、各イベントにより、特定のメモリアドレスがポイントされる。
有利な実施形態では24ビット幅の3アドレスオペコードが使用される。すなわち、
op rt ← ra,rb
である。
op (rt,rot) ← ra,rb
である。
SKIPEコマンドにより、条件付き実行がサポートされる。イベントまたはALUフラグが、所定の値になっている否かがテストされる。このチェックに依存して、つぎの2つのアドレスが実行される(Rpp+1)か、またはスキップされる(Rpp+3)。到来するイベントをチェックする場合、イベントがイベントポートに到着するまでプログラムの実行はストップする(RDYハンドシェークのセット)。
PAEは、
1×バスクロック
2×バスクロック
4×バスクロック
[8×バスクロック]
のコンフィギュレーション可能な周波数で動作することができる。
データフローパスは、データレジスタBri0…3およびBro0…3ならびにイベントレジスタBui/Bvi0…3およびBuo/Bvo0…3を含む。
1.ADD,SUB
2.NOT,AND,OR,XOR
3.SHL,SHR,DSHL,DSHR,DSHRU
4.EQ,CMP,CMPU
5.MERGE,DEMUX,SWAP
6.SORT,SORTU
7.ELUT
が実現される。
パラメタおよび定数は、入力レジスタRi3およびイベント入力Ei7を使用することにより、高速かつ同期して更新することができる。
IOAGはRAM−PAEに配置されており、バスに通じる同じレジスタを共用する。1つのIOAGは、キャリーが転送される3つのカウンタを含む。カウンタ値と、アレイからのイミディエートアドレス入力値とは、加算されてアドレスが形成される。
通例のDSPライクなアドレッシングをサポートするため、いくつかのアドレッシングモードがIOAGによってサポートされる。すなわち、
モード 説明
イミディエート PAEアレイによって形成されるアドレス
xD計数 IOAG内部カウンタを使用した多次元
アドレッシング
xDは1D,2D,3Dを意味する
xD循環 IOAG内部カウンタを使用した多次元
アドレッシング
オーバーフローの後、カウンタには
ベースアドレスがリロードされる
xDとイミディエートスタックとの和
xDと、PAEアレイから得られる値との和
「push」処理の後、デクリメントされる
「read」処理の後、インクリメントされる
リバースキャリー FFTなどのアプリケーション用の
リバースキャリー
である。
アドレスは、アレイで形成され、加算器を介してアドレス出力側に直接供給される。すべてのカウンタは使用不可にされ、0に設定される。
カウンタは、所要の次元(x次元にはxのカウンタが必要である)に依存して使用可能にされる。カウンタ毎にベースアドレスと、ステップ幅と、最大アドレスとがコンフィギュレーションされる。各キャリーはつぎの次数の使用可能なカウンタに転送される。キャリーの後、このカウンタには開始アドレスがリロードされる。
この処理は、xD計数に対するのと等しいが、最も高次の使用可能なカウンタにおけるキャリーによってイベントが形成され、すべてのカウンタにはそのベースアドレスがリロードされ、計数が継続されるという違いがある。
1つのカウンタ(CNT1)は、データの書き込みの後、デクリメントされ、またデータ読み出しの後、インクリメントされるために使用される。このカウンタのベース値は、コンフィギュレーション(ベースアドレス)することができるか、またはPAEによってロードされる。
キャリーはふつう、LSBからMSBに転送される。キャリーを逆方向に転送する(リバースキャリー)ことによって、FFTなどのアプリケーションに極めて適したアドレスパターンを形成することができる。このキャリーはMSBにおいて廃棄される。
ベース = 0h
ステップ = 1000b
アレイの左または右側エッジの各ALU−PAEは、IPオプションとして隣のRAM−PAEに密に結合して、シーケンサをコンフィギュレーションすることができる。互換上の理由により、シーケンサのデータおよびオペコード幅は16ビットである。
CodeBank 現在のコードセグメントをポイントする
DataBank 現在のデータセグメントをポイントする
StackBank 現在のスタックセグメントをポイントする
AuxiliariyBank 任意のセグメント(ただしコード)をポイントして、セグメン
ト間でコピーを可能にする。
LOADSEG データ/補助/スタックバンクをロードして有効にする
STOREDSET データ/補助/スタックバンクを記憶して無効にする
LOADCSEG コードバンクをロードして有効にする
IOAGインタフェースのアドレス発生器は、DMAエンジンとして再利用可能である。
VALIDATESSEG バンクを有効にする
INVALIDATESEG バンクを無効にする
である。
IOAGは、外部レイテンシを平衡化し、外部バスまたは外部メモリのレイテンシに関係なく、同じデータアドレスをデータの書き込み直後に読み出すことのできる4〜8段のデータ出力バッファを有する。
ADD
説明:
rs1とrs2とを加算する。
Rpp++
rs: ソースレジスタ
rt: ターゲットレジスタ
et4: ターゲットイベント
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
F, Ei
ADD with Carry
説明:
キャリーつきでrs1とrs2とを加算する。
Rpp++
rs: ソースレジスタ
rt: ターゲットレジスタ
es4: ソースイベント
et4: ターゲットイベント対
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
F, Ei
Logical AND
説明:
論理AND演算を行う。
Barrel SHift Left
説明:
rs1をrs2の位置分だけ左方へシフトし、0で埋める。
Barrel SHift Right
説明:
rs1をrs2の位置分だけ右方へシフトし、符号ビットを複製する。
Barrel SHift Right Unsigned
説明:
rs1をrs2の位置分だけ右方へシフトし、0で埋める。
Count Leading Zeros
説明:
数が正である場合、先頭の0を計数し、数が負である場合、先頭の1を計数する。
Count Leading Zeros Unsigned
説明:
符号のない数の先頭の0を計数する。
CoMPare
説明:
2つの値を比較する。
CoMPare Unsigned
説明:
符号のない2つの値を比較する。
DEMUltipleX data stream
説明:
フラグに依存して入力を2つの入力側のうち一方へ移動する。
rt: ターゲットレジスタ
rs: ソースレジスタ
es4: ソースイベント
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro, Rd / Ro
入力フラグ:
Ei / F
出力フラグ:
−。
DIVide
説明:
rs1をrs2で除算する。結果をrtpに、余りをrtp+1に入れる。
DIVide Unsigned
説明:
符号のないrs1をrs2で除算する。結果をrtpに、余りをrtp+1に入れる。
Double SHift Left
説明:
rs1, rs2を左方へシフトする。LSBをイベントで埋める。
Rpp++
rs: ソースレジスタ
rtp: ターゲットレジスタ対
etp: ターゲットイベント対
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
F, Ei
Double SHift Right
説明:
rs1, rs2を右方へシフトし、符号bitを複製する。
Rpp++
rs: ソースレジスタ
rtp: ターゲットレジスタ対
etp: ターゲットイベント対
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
Ei, F
Double SHift Right Unsigned
説明:
rs1, rs2を右方へシフトし、イベントで埋める。
Rpp++
rs: ソースレジスタ
rtp: ターゲットレジスタ対
etp: ターゲットイベント対
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
Ei, F
EQual
説明:
2つの値が等しいか否かをチェックする。
JuMP immediate
説明:
直接の定数によって定義されたアドレスへジャンプする。CodeBankを定数にしたがって変更する。
動作:
const[0...3] → CodeBank
const[4...15] → Rpp
入力レジスタ:
−
出力レジスタ:
−
入力フラグ:
−
出力フラグ:
−。
Jump Relative Immediate
説明:
直接の符号を有する定数にしたがうRppに対して相対的にジャンプする。CodeBankには影響しない。
動作:
Rpp + const → Rpp
入力レジスタ:
−
出力レジスタ:
−
入力フラグ:
−
出力フラグ:
−。
Jump Relative Register
説明:
レジスタの符号を有するコンテンツにしたがうRppに対して相対的にジャンプする。CodeBankには影響しない。
動作:
Rpp + Rd[rbs] → Rpp
入力レジスタ:
−
出力レジスタ:
−
入力フラグ:
−
出力フラグ:
−。
LOAD data register with constant
説明:
内部データレジスタまたは出力レジスタに直接の定数をロードする。
MERGE data streams
説明:
フラグに依存して2つの入力のうち一方を出力側へ移動する。
rt: ターゲットレジスタ
rs: ソースレジスタ
es: ソースイベント
入力レジスタ:
Ri / Rd , Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
Ei, F
出力フラグ:
−。
MOVE internal data register
説明:
レジスタバンクレジスタの内容を別の内部レジスタに移動する。
動作:
Rd[rbs] → rd[rbt]
Rpp++
rbs: レジスタバンクソース
rbt: レジスタバンクターゲット
入力レジスタ:
Rd
出力レジスタ:
Rd
入力フラグ:
−
入力フラグ:
−。
MOVE flag register
説明:
フラグレジスタの内容を別のフラグレジスタに移動する。
動作:
F[fs] → F[ft]
Rpp++
fs: フラグソース
ft: フラグターゲット
入力レジスタ:
−
出力レジスタ:
−
入力フラグ:
−
出力フラグ:
F。
MULtiply
説明:
rs1とrs2とを乗算する。
MULtiply Unsigned
説明:
符号なし整数rs1とrs2とを乗算する。
No Operation
説明:
ノーオペレーション、Rppをインクリメントする。
動作:
Rpp++
入力レジスタ:
−
出力レジスタ:
−
入力フラグ:
−
出力フラグ:
−。
Logical inverse
説明:
レジスタを論理的に反転する
Logical OR
説明:
論理的なOR演算
READ data input register
説明:
指定されたデータ入力レジスタを読み出して内部レジスタバンクまたは出力レジスタに書き込む。READは、入力レジスタにおいてデータが利用可能になるまで待つ。
READ event input register
説明:
指定されたイベント入力レジスタを読み出して内部フラグバンクまたはイベント出力レジスタに書き込む。READEは、入力レジスタにおいてイベントが利用可能になるまで待つ。
SATurate
説明:
キャリー(Fu0)フラグおよび飽和モードに依存してレジスタを飽和させる。
rs: ソースレジスタ
rt: ターゲットレジスタ
as: 加算/減算モード
es4: イベントソース
入力レジスタ:
Rd
出力レジスタ:
Rd / Ro
es4入力フラグ:
SEQモード: キャリー
FF-モード: Ei / F
出力フラグ:
−。
SET Flag with constraint
説明:
フラグレジスタまたは出力イベントにイミーディエイト定数をロードする。
SHift Left
説明:
rs1を左にシフトする。LSBにはイベントが充填される。
Rpp++
rs: ソースレジスタ
rt: ターゲットレジスタペア
et4: ターゲットイベントペア
es4: ソースイベントレジスタ
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
F, Ei
SHift Right
説明:
rs1を右にシフトする。MSBにはイベントが充填される。
Rpp++
rs: ソースレジスタ
rt: ターゲットレジスタペア
et4: ターゲットイベントペア
es4: ソースイベントレジスタ
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
F, Ei
SKIP next two commands depending on Event
説明:
イベントまたはフラグに基づいてつぎの2つのコマンドをスキップする。ソースとしてイベントが選択された場合、イベントが利用可能になるまで実行は停止する。
es4: イベントソース
入力レジスタ:
−
出力レジスタ:
−
入力フラグ:
Ei / F
出力フラグ:
−。
SORT data stream
説明:
2つの入力を値に応じてソートする。
O2 = I1およびI2の大きい方の値
E1 = I1 < I2の場合1,その他の場合0
E2 = I1 <= I2の場合1,その他の場合0
Rpp++
rt: ターゲットレジスタ
rs: ソースレジスタ
et4: ターゲットイベント
入力レジスタ:
Ri / Rd, Ri / Rd
出力レジスタ:
Rd / Ro, Rd / Ro
入力フラグ:
−
出力フラグ:
Ei / F。
SORT data stream Unsigned
説明:
2つの符号なし入力値を値に応じてソートする。
O2 = I1およびI2の大きい方の値
E1 = I1 < I2の場合1,その他の場合0
E2 = I1 <= I2の場合1,その他の場合0
Rpp++
rt: ターゲットレジスタ
rs: ソースレジスタ
et4: ターゲットイベント
入力レジスタ:
Ri / Rd, Ri / Rd
出力レジスタ:
Rd / Ro, Rd / Ro
入力フラグ:
−
出力フラグ:
Ei / F。
SUBtract
説明:
rs1からrs2を減算する。
Rpp++
rt: ターゲットレジスタ
rs: ソースレジスタ
et4: ターゲットイベント
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
F, Ei
ADD with Carry
説明:
キャリー付きでrs1からrs2を減算する。
Rpp++
rs: ソースレジスタ
rt: ターゲットレジスタ
es4: ソースイベント
etp: ターゲットイベントペア
入力レジスタ:
Ri / Rd
出力レジスタ:
Rd / Ro
入力フラグ:
F, Ei
SWAP data stream
説明:
フラグに依存して2つの入力をスワップする。
rt: ターゲットレジスタ
rs: ソースレジスタ
es4: ソースイベント
入力レジスタ:
Ri / Rd, Ri / Rd
出力レジスタ:
Rd / Ro, Rd / Ro
入力フラグ:
Ei / F
出力フラグ:
−。
UPDATE parameters
説明:
Ei7が設定されている場合、レジスタRd3,Rd2,Rd1をRi3からの値によって更新する。Ri3に続くデータパケットをRo3に移動してEo7を設定する。
WAIT for incoming Event
説明:
実行を中断し、定めた値のイベントが到来するのを待つ。到来したイベントに肯定応答する。
es3: イベントソース
Rpp++
入力レジスタ:
−
出力レジスタ:
−
入力フラグ:
−
出力フラグ:
−。
WRITE output register
説明:
入力レジスタまたは内部レジスタバンクからのデータを出力レジスタに書き込む。書き込みの前または後に、到来するACKを待つ。
WRITE Event output register
説明:
入力レジスタまたはフラグからのイベントをイベント出力レジスタに書き込む。書き込みの前または後に、到来するACKを待つ。
Logical XOR
説明:
論理的なXOR演算。
以下では、ファンクションフォールディングを使用する例を示す。
Ri0 = x
Ri1 = y
accを使用し、3重にフォールディングされたFIR
レジスタRd1, Rd2, Rd3に対する高速パラメタ更新
例1:UPM3、Rd3, 2, 1にそれぞれにアクセスしてパラメタを更新(Ei7が設定されている場合)。
upmcfg = 1100
#第1段階
mul acc, Rio, Rd3;
add Rd0, acc, Ri1;
#第2段階
mul acc, Rio, Rd2;
add Rd0, acc, Rd0;
#第3段階
mul acc, Rio, Rd1;
add Ro1, acc, Rd3;
write Ro0, RiO;
MACオペコード、パラメタpopおよびルーピングを使用した択一的な例
read Rd0, Ri1;
lh, lt[3]: mac Rd0, Ri0, pop;
write Ro1, Rd0;
write Ro0, Rio;。
upmcfg = 1110
#第1段階
mul acc, Rio, Rd3;
add Rd0, acc, Ri1;
#第2段階
mul acc, Rio, Rd2;
add Rd0, acc, Rd0;
#第3段階
mul acc, Rio, Rd1;
add Ro1, acc, Rd3;
write Ro0, Rio;
update 3。
upmcfg = 1101
#第1段階
mul acc, Rio, Rd3;
add Rd0, acc, Ri1;
#第2段階
mul acc, Rio, Rd2;
add Rd0, acc, Rd0;
#第3段階
mul acc, Rio, Rd1;
add Ro1, acc, Rd3;
write Ro0, Rio;。
ここで提案され以下で説明される改良は、リコンフィギャラブルアレイアーキテクチャに対するスタティックルーティングネットワークに関する。ここでこのスタティックネットワークは、アダプティブランタイムルーティングに付加的なロジックを実現することによって強化される。
到来するデータの解析およびデータのバッファリングのため、各入力ポートはいわゆるイン-レジスタ(InReg in-register)を有する。この標準的なレジスタに加えて、InRegコントローラ(InRegCtrl)が実現されている。この有限状態機械(FSM finite state machine)の役割は、入力リンクの最新の状態を記憶し、この最新の状態に依存してルーティング要求をトリガするかまたは不要のルーティングを解放することである。この役割を遂行するため、各InRegCtrlはイン-コントローラ(InCtrl in-controller)に接続されており、これはFU毎にちょうど1つだけ実現される。新しいルーティングを要求するための重要な要件は、上記の入力資源(InReg,InRegCtrl)が使用されておらず、物理リンクの状態にあることである。
論理的に設定されたルーティングを解放するため、複数の固有の命令、いわゆる終了パケットを導入する。これらの命令のただ1つの目的は、上記の論理的に設定されたルーティングに所要の終了パケットを挿入することによって、ルートを解消することである。ルーティングを解放できるようにするためには2つのやり方がある。1つの可能性はグローバルな解放である。すなわち、終了パケットが挿入されるルートに続くすべてのルートを解放することである。この機能は、単一の命令ですべてのコンフィギュレーションを消去するのに有効である。このために重要であるのは、FMが、内部データパスを介して上記の終了パケットを変更せずに転送できることである。
優先度を制御するため、優先システムを導入して、到来するルーティング要求がRUによって扱われる順番を変更する。このために上記の命令には、優先度レベルを表す優先度フィールドが含まれる。このフィールドの値が大きい場合、優先度は高く、ランタイムのルーティング中にRUによって優先的に処理される。この優先度フィールドは、InRegCtrlからInCtrlに到来するルーティング要求の選択に直接的に影響を与える。
複数のポイントツーポイントコースグレインリンクに加えて、一層フレキシブルな複数のマルチグレインポイントツーポイントリンクを導入する。ここでは個々のポイントツーポイントリンクによって、それぞれのRUの隣り合う2つのセルが、これらのセル内でリンクされる。1つのコースグレインリンクには一組のワイヤ、例えば1つの32リンクに対して32本のワイヤと、付加的なプロトコル信号とから構成されている。一まとまりベクトルは、複数の制御信号からなる単一の集合によって処理されるため、通信資源はマルチグレイン通信に使用できない。
マルチグレインチャネルをルーティングするためにはコースグレインリンクを使用して、ルーティング処理をサポートしなければならない。このアイデアは、2つのリンクを並列にルーティングすること、すなわちマルチグレインルーティングをサポートする1コースグレインリンクと、最終的なマルチグレインストリームを含む1つのマルチグレインリンクとをルーティングすることである。このために、所要のデータフィールドを有する2つのパケットルーティング命令を定める。第1の命令パケットは(コースグレインルーティング命令と比較して)、使用するマルチグレインサブリンクを指定するための付加的なビットマスクと、関連するマルチグレインリンクを識別するためのマルチグレインリンクIDを含む。上に説明したような別の機能(最適ビット、速度パス、優先度ルーティング)もこのルーティングモードにおいてサポートされている。上記のRU内のルーティング処理は、コースグレインルーティングと同様に行われる。
ファンクションフォールディングを用いてリコンフィギャラブル算術アレイのシリコン効率を高める手法
筆者:(ブラインドレビューのため削除)
要約
この論文はファンクションフォールディングFunction Folding、すなわちリコンフィギャラブル算術アレイ(コースグレインアレイ)のシリコン効率を高めるための設計原理に関する。このアレイでは高度に並列にインプリメンテーションされたDSPアルゴリズムが実行されるものの、現行のデバイスの全シリコン効率はアレイに要求される多数のALUと満足とは云えない速度との双方によって制限されている。動作周波数は主としてノンローカルルーティング接続部の要求によって制限されている。われわれはこうした制限を克服する新たなファンクションフォールディングのアプローチ、つまり同じコンフィギュレーションに属する明確な少数の演算子を同じALUにたたみ込み、1つの処理素子上でシーケンシャルに実行することを提案する。ALUは同じ命令シーケンスを反復して実行するプログラムによって制御される。局所的にしか要求されないデータはローカルレジスタファイルに格納される。こうしたシーケンシャルアプローチにより個別のALUリソースがより効率的に用いられ、しかもアレイの全ての処理素子が現行デバイスと同様に並列に動作する。さらにALUおよびローカルレジスタはノンローカルルーティング接続部よりも高い周波数でクロック制御することができる。全体として、現行のデバイスよりも高い計算密度を得ることができる。
フィールドプログラマブルゲートアレイFPGAはアプリケーション専用集積回路ASICに代わるフレキシブルなプログラマブル回路としてビット指向アプリケーションに使用される。FPGAは文献[1]に示されているようにNREコストが低く、しかもタイムツーマーケットが速い。同様にリコンフィギャラブル算術アレイもワードレベルの算術アプリケーションに対する選択手段として使用されているが、こちらはビットレベルのルックアップテーブルよりもむしろコースグレインALUに基づいている。幾つかの研究プロジェクト(例えば文献[2]のRapid、文献[1][3]のKressArray)および商業的開発(例えば文献[4]のPACT XPP Technologies、文献[5]のMorphotech、文献[6]のElixent)がこの分野で行われている。これらのアーキテクチャは高度に並列的にインプリメンテーションされたDSPアルゴリズムが提供されるにもかかわらず、まだ広汎には使用されていない。その明らかな原因の1つは現行のデバイスのシリコン効率が制限されているということであり、このために多数のALUが必要となり、また不充分な速度しか得られないのである。動作周波数は主として要求されるノンローカルルーティング接続部により制限されている。
文献[4]に記載されている現行のXPPアーキテクチャはコースグレイン適応化処理素子の2Dアレイ、内部メモリおよび相互接続部リソースに基づいている。64個のALUおよび16個の内部メモリを備えた24bitプロトタイプチップがPACT XPP Technologiesによって製造されている。このXPP64Aチップの開発ボードは入手可能である。
相互接続部リソースは2つの独立のバスのセット、すなわちデバイスごとのbit幅を有するデータバスと1bit幅のイベントバスから成る。XPPバスは論理回路を接続するワイヤであるだけでなく、処理素子で処理されたデータおよびイベントを同期するためにハードウェア内にインプリメントされたready / acknowledgeプロトコルである。したがって処理素子の演算は、必要な全ての入力値が利用可能となり、かつ先行の結果が消費されるとただちに実行される。このようにデータフローグラフを直接にアレイにマッピングし、このアレイを通る入力データストリームをパイプライニングすることができる。パイプラインの機能停止中にもデータは失われない。ストリームのマージ、マルチプレクスなどに対する専用のデータフロー演算も同様に行うことができる。
FPGAに比べてXPPコアはコースグレイン性のために迅速にコンフィギュレーションできる。オペコードおよび接続部のみセットすればよい。またコンフィギュレーションが必要なのは実際に使用されるアレイオブジェクトのみである。
次に拡張XPP PEすなわちファンクションフォールディング処理素子の機能およびハードウェアデザインについて説明する。
adr=offs+x+256*y
として計算する。表121のような単純な処理素子に基づくXPPインプリメンテーションでは、この計算は標準的には直接に表123(a)のデータフローグラフへマッピングされる。各加算子および各乗算子は自身のALUへマッピングされる。ゆえに新たなアドレスがサイクルごとに計算される。ただしセクション1で述べたように、動作周波数はALUそのものではなく、バス接続部によって制限されている。
表122に示されているハードウェアデザインでは次のようなファンクションフォールディングが行われる。表121の単純な処理素子と同様に、新たな処理素子はready / acknowledgeプロトコルにしたがうデータおよびイベントの入出力ポートを介して相互接続ネットワークと通信する。各ポートは処理素子の高速の内部クロックとn倍遅いバスクロックとを同期させる。入力データはバスクロックサイクルの全期間にわたって安定であり、処理素子の内部クロックサイクルごとにサンプリングすることができる。出力データはバスサイクルの開始時にバスレジスタへコピーされる。ファンクションフォールディング処理素子は演算のクラスタ全体を実行するため、単純な処理素子より多くのポートを要する。しかし単純な処理素子のポートのn倍を要するわけではない。なぜならコンフィギュレーション時に内部レジスタにロードされる入力およびクラスタ内のローカル接続部が一定であるため、外部コネクションが大きく制限されていることが多いからである。良好なクラスタリングアルゴリズムを用いれば外部コネクションを最小化することができる。表3(b)に点線の囲みで使用されているように、n=4の実施例のクラスタに対しては2つの入力ポートおよび1つの出力ポートがあればよい。
add r3 ← r1 , i1
mul r4 ← r2, i2
add o1 ← r3 , r4
がクラスタを記述している。
・Cフロントエンド(オプショナル):構造的NMLコード(セクション2を参照)を標準Cのサブセットから形成する
・NML構文解析系:入力NMLファイルを構文解析し、XPP演算子にマッピングする
・プレーシングおよびルーティング:処理素子(つまり現行のアーキテクチャにおける演算子)をXPPアレイへプレーシングし、接続部をルーティングする
・バイナリ形成:XBINバイナリファイルを形成する
は現行のXPPツールフローに既に存在している。
ファンクションフォールディングPEに対する演算子クラスタリングの問題は、例えば[7]のFPGAに対するモジュールのマッピングおよび慣用のプロセッサに対してコードジェネレータにおいて発生するグラフカバリング(graph covering )問題と類似している。したがってこれらのアルゴリズムをまず検討する。[7]で使用される効率的ダイナミックプログラミングアルゴリズム(efficient dynamic-programming algorithm)および類似のアプローチは、実質的にツリーカバリング(tree-covering)アルゴリズムである。これは演算のツリーに対して最適なカバリングを形成する。しかしながらこれは任意のデータフローグラフを処理することはできない。このため、オリジナルのグラフからフィードバックサイクル(feedback cycle)およびファンアウトエッジ(fanout edge)を取り除く前処理フェーズが必要である。結果的に得られるのは、効率的に覆うことのできるツリーからなる森である。しかしながら得られた最適なツリーカバリングは、オリジナルのデータフローグラフに対して最適ではない。
・ (n個の演算子よりも多くの演算子を有する)大きなフィードバックサイクルをグラフから取り除く。この場合、小さなサイクルはなお1クラスタ内で実行され、わずかに数クラスタだけが除外され得るだけであり、再帰呼び出しの数は大きく低減される。
演算子クラスタリングの後、各クラスタに対するPEプログラムコードが形成される。これについてはセクション3に示した例のアセンブラコードを参照されたい。慣用のレジスタ割り当てを簡易にしたものが使用されて、内部的な接続が内部的なレジスタにマッピングされる。命令は、クラスタのデータフローグラフから直接抽出することができる。
5.1 PEの速度および面積
ファンクションフォールディングPEの面積は、ポートおよびレジスタの数に依存して、対応する単純なPEの面積よりも約15%〜25%大きいと見積もられる。16ビットのデータパスに対し、予備的な統合結果により、130nmシリコンプロセスに対して400〜500MHzのPE周波数が達成された。
セクション1で述べたようにリコンフィギャラブル算術アレイについていくつかのプロジェクトがあるが、知る限りでは刊行物にはファンクションフォールディングに類似した解決手段はない。以下のアーキテクチャは本発明のアプローチとは大きく異なるが、PEによって実行される演算を高速に変更することができる。
ここまでは、強化されたPACT XPPアーキテクチャに対するファンクションフォールディング処理素子のアーキテクチャおよび機能を述べて来た。ハードウェアでの実現およびこのアーキテクチャへのアプリケーションのマッピングの両方を事前に分析することによって示されたのは、ファンクションフォールディングが、現在のリコンフィギャラブル算術アレイに比較してシリコン効率を極めて大きく増大させ、また電力消費を低減する可能性を有することである。
[1] R. Hartenstein. A decade of reconfigurable computing: a visionary retrospective. In Proc. Design, Automation and Test in Europe, 2001.
[2] D. C. Cronquist, P. Franklin, C. Fischer, M. Figueroa, and C. Ebeling. Architecture design of reconfigurable pipelined datapaths. In Proc. 20th Anniversary Conference on Advanced Research in VLSI, Atlanta, GA, March 1999.
[3] R. Hartenstein, R. Kress, and H. Reinig. A new FPGA architecture for word-oriented datapaths. In Proc. Field-Programmable Logic; 4th International Workshop. Springer-Verlag, September 1994.
[4] V. Baumgarte, G. Ehlers, F. May, A. Nueckel, M. Vorbach, and M. Weinhardt. PACT XPP a self-reconfigurable data processing architecture. The Journal of Supercomputing, 26(2), September 2003.
[5] M.-H. Lee, H. Singh, G. Lu, N. Bagherzadeh, and F. J. Kurdahi. Design and implementation of MorphoSys reconfigurable computing processor. Journal of VLSI and Signal Processing-Systems for Signal, Image and Video Technology, March 2000. March 2000.
[6] T. Stansfield. Using multiplexers for control and data in D-Fabrix. In Field Programmable Logic and Applications, LNCS 2778, pages 416-425. Springer, 2003.
[7] T. J. Callahan, P. Chong, A. DeHon, and J. Wawrzynek. Fast module mapping and placement for datapaths in FPGAs. In Proc. FPGA'98, Monterrey, CA, 1998.
[8] M. B. Taylor et al. The Raw microprocessor: A computational fabric for software circuits and general-purpose programs. IEEE Micro, March/April 2002.
[9] B. Salefski and L. Caglar. Re-configurable computing in wireless. In Proc. 38th Design Automation Conference, Las Vegas, NV, June 2001.
Claims (10)
- コースグレインロジック素子(PAE)からなる多次元アレイを含むデータ処理装置であって、
該コースグレインロジック素子は、データを処理し、第1クロックレートで動作して互いに通信し、および/または第2クロックレートで動作する通信ラインおよび/またはバスを介して別の素子と通信する形式のデータ処理装置において、
前記の第1クロックレートは第2クロックレートよりも高く、また
前記のコースグレインロジック素子は、処理しなければならないデータを記憶するための記憶手段を有することを特徴とする、
コースグレインロジック素子(PAE)からなる多次元アレイを含むデータ処理装置。 - 前記のアレイのデータ処理は、データフローと類似の方式で制御される、
請求項1に記載のデータ処理装置。 - 前記のデータ記憶手段は、オペランドおよび/または中間結果を記憶するために適合されており、
エントリ毎に有効ビットが設けられている、
請求項2に記載のデータ処理装置。 - 前記のアレイのコースグレイン論理素子のデータ処理を適合化して、所要のトリガおよび/またはデータのすべての有効ビットが有効であることに応答して作用を及ぼすようにした、
請求項1から3までのいずれか1項に記載のデータ処理装置。 - 処理アレイにおいて、
該処理アレイは、主たるデータフロー方向を有しており、
該処理アレイは、コースグレインロジック素子を有しており、
該コースグレインロジック素子、例えばアップストリーム入力側およびデータダウンストリーム出力側を有するALUを適合化して、該コースグレインロジック素子により、前記の方向でデータが流れるようにしてデータ処理に作用が及ぼすようにし、
前記のコースグレインロジック素子のうちの少なくともいくつかは、逆方向のデータフローを可能にする第2ALUのようなデータ処理手段を有することを特徴とする、
例えば請求項1から4までのいずれか1項に記載の処理アレイ。 - 1方向におけるALUに対する命令セットと、逆方向におけるALUの命令セットとは異なる、
請求項5に記載の処理アレイ。 - 少なくとも1つのコースグレインロジック素子には1方向のALUと、逆方向のALUとが含まれる、
請求項5または6に記載の処理アレイ。 - 処理装置において、
コースグレイン素子はバスに接続されており、
該コースグレイン素子の行はバスを介して相互接続されており、
少なくとも1つの入力側は上側の行に、また少なくとも1つの入力側はセルの下側で行に接続されており、および/または
当該接続が出力側に対しても成り立つことを特徴とする
処理装置。 - 前記コースグレイン素子はバスに接続されており、
少なくとも2つの入力/出力バス接続部が1つの行に設けられており、
入力側および/または出力側の間のセグメントにゲートまたはバッファまたはマルチプレクサおよび/またはスイッチがバス構造体に設けられている、
請求項8に記載の処理装置。 - 処理アレイのルーティング方法において、
該方法を適合化して段階的に、接続できないトレースを無視するようにし、また1コンフィギュレーションおよび/または複数のコンフィギュレーションの別個のフラグメントを自動的に接続するようにしたことを特徴とする、
処理アレイのルーティング方法。
Applications Claiming Priority (29)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP03019428.6 | 2003-08-28 | ||
EP03019428 | 2003-08-28 | ||
EP03025911 | 2003-11-05 | ||
EP03025911.3 | 2003-11-05 | ||
DE10357284A DE10357284A1 (de) | 2003-12-05 | 2003-12-05 | Multispannungsversorgung |
DE10357284.8 | 2003-12-05 | ||
EP03079015.8 | 2003-12-17 | ||
EP03028953.2 | 2003-12-17 | ||
EP03028953 | 2003-12-17 | ||
EP03079015 | 2003-12-17 | ||
EP04002604 | 2004-02-05 | ||
EP04002604.9 | 2004-02-05 | ||
EP04002719.5 | 2004-02-06 | ||
EP04002719 | 2004-02-06 | ||
EP04003258.3 | 2004-02-13 | ||
EP04003258 | 2004-02-13 | ||
EP04075654.6 | 2004-03-02 | ||
EP04004885.2 | 2004-03-02 | ||
EP04004885 | 2004-03-02 | ||
EP04075654 | 2004-03-02 | ||
EP04005403.3 | 2004-03-08 | ||
EP04005403 | 2004-03-08 | ||
EP04013557 | 2004-06-09 | ||
EP04013557.6 | 2004-06-09 | ||
EP04077206.3 | 2004-08-02 | ||
EP04018267.7 | 2004-08-02 | ||
EP04077206 | 2004-08-02 | ||
EP04018267 | 2004-08-02 | ||
PCT/EP2004/009640 WO2005045692A2 (en) | 2003-08-28 | 2004-08-30 | Data processing device and method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007504688A true JP2007504688A (ja) | 2007-03-01 |
JP4700611B2 JP4700611B2 (ja) | 2011-06-15 |
Family
ID=34578045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006524345A Expired - Fee Related JP4700611B2 (ja) | 2003-08-28 | 2004-08-30 | データ処理装置およびデータ処理方法 |
Country Status (4)
Country | Link |
---|---|
US (3) | US8812820B2 (ja) |
EP (1) | EP1676208A2 (ja) |
JP (1) | JP4700611B2 (ja) |
WO (1) | WO2005045692A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009027324A (ja) * | 2007-07-18 | 2009-02-05 | Fuji Xerox Co Ltd | 演算処理装置及び演算処理プログラム |
JP2010002986A (ja) * | 2008-06-18 | 2010-01-07 | Nec Corp | 再構成可能電子回路装置 |
Families Citing this family (73)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6542998B1 (en) | 1997-02-08 | 2003-04-01 | Pact Gmbh | Method of self-synchronization of configurable elements of a programmable module |
US8058899B2 (en) | 2000-10-06 | 2011-11-15 | Martin Vorbach | Logic cell array and bus system |
US7444531B2 (en) | 2001-03-05 | 2008-10-28 | Pact Xpp Technologies Ag | Methods and devices for treating and processing data |
US9037807B2 (en) | 2001-03-05 | 2015-05-19 | Pact Xpp Technologies Ag | Processor arrangement on a chip including data processing, memory, and interface elements |
US7996827B2 (en) | 2001-08-16 | 2011-08-09 | Martin Vorbach | Method for the translation of programs for reconfigurable architectures |
US8914590B2 (en) | 2002-08-07 | 2014-12-16 | Pact Xpp Technologies Ag | Data processing method and device |
US7425841B2 (en) * | 2004-02-14 | 2008-09-16 | Tabula Inc. | Configurable circuits, IC's, and systems |
US7167025B1 (en) * | 2004-02-14 | 2007-01-23 | Herman Schmit | Non-sequentially configurable IC |
US7317331B2 (en) | 2004-11-08 | 2008-01-08 | Tabula, Inc. | Reconfigurable IC that has sections running at different reconfiguration rates |
US7330050B2 (en) | 2004-11-08 | 2008-02-12 | Tabula, Inc. | Storage elements for a configurable IC and method and apparatus for accessing data stored in the storage elements |
US7788478B2 (en) | 2005-07-15 | 2010-08-31 | Tabula, Inc. | Accessing multiple user states concurrently in a configurable IC |
WO2007149494A2 (en) * | 2006-06-21 | 2007-12-27 | Element Cxi, Llc. | Resilient integrated circuit architecture |
US7535252B1 (en) | 2007-03-22 | 2009-05-19 | Tabula, Inc. | Configurable ICs that conditionally transition through configuration data sets |
US8069425B2 (en) | 2007-06-27 | 2011-11-29 | Tabula, Inc. | Translating a user design in a configurable IC for debugging the user design |
US8344755B2 (en) | 2007-09-06 | 2013-01-01 | Tabula, Inc. | Configuration context switcher |
WO2009039462A1 (en) * | 2007-09-19 | 2009-03-26 | Tabula, Inc. | Method and system for reporting on a primary circuit structure of an integrated circuit (ic) using a secondary circuit structure of the ic |
US8525548B2 (en) | 2008-08-04 | 2013-09-03 | Tabula, Inc. | Trigger circuits and event counters for an IC |
US8650514B2 (en) | 2010-06-23 | 2014-02-11 | Tabula, Inc. | Rescaling |
WO2011162858A1 (en) | 2010-06-23 | 2011-12-29 | Tabula, Inc. | Rescaling |
US8760193B2 (en) | 2011-07-01 | 2014-06-24 | Tabula, Inc. | Configurable storage elements |
US9148151B2 (en) | 2011-07-13 | 2015-09-29 | Altera Corporation | Configurable storage elements |
US9203397B1 (en) | 2011-12-16 | 2015-12-01 | Altera Corporation | Delaying start of user design execution |
US10157060B2 (en) | 2011-12-29 | 2018-12-18 | Intel Corporation | Method, device and system for control signaling in a data path module of a data stream processing engine |
US9000801B1 (en) | 2013-02-27 | 2015-04-07 | Tabula, Inc. | Implementation of related clocks |
US20150012903A1 (en) | 2013-07-04 | 2015-01-08 | Tabula, Inc. | Non-intrusive monitoring and control of integrated circuits |
US10331583B2 (en) | 2013-09-26 | 2019-06-25 | Intel Corporation | Executing distributed memory operations using processing elements connected by distributed channels |
US8750365B1 (en) * | 2013-11-27 | 2014-06-10 | Redline Communications, Inc. | System and method for multi-threaded OFDM channel equalizer with coprocessor |
US9218443B1 (en) * | 2014-11-12 | 2015-12-22 | Xilinx, Inc. | Heterogeneous multiprocessor program compilation targeting programmable integrated circuits |
US9846660B2 (en) | 2014-11-12 | 2017-12-19 | Xilinx, Inc. | Heterogeneous multiprocessor platform targeting programmable integrated circuits |
US9984037B1 (en) | 2015-04-27 | 2018-05-29 | Synaptic Engines, Llc | Scheduler for a fine grained graph processor |
US10402168B2 (en) | 2016-10-01 | 2019-09-03 | Intel Corporation | Low energy consumption mantissa multiplication for floating point multiply-add operations |
US10558575B2 (en) * | 2016-12-30 | 2020-02-11 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10474375B2 (en) | 2016-12-30 | 2019-11-12 | Intel Corporation | Runtime address disambiguation in acceleration hardware |
US10572376B2 (en) | 2016-12-30 | 2020-02-25 | Intel Corporation | Memory ordering in acceleration hardware |
US10416999B2 (en) | 2016-12-30 | 2019-09-17 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10445234B2 (en) | 2017-07-01 | 2019-10-15 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with transactional and replay features |
US10387319B2 (en) | 2017-07-01 | 2019-08-20 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with memory system performance, power reduction, and atomics support features |
US10467183B2 (en) | 2017-07-01 | 2019-11-05 | Intel Corporation | Processors and methods for pipelined runtime services in a spatial array |
US10469397B2 (en) | 2017-07-01 | 2019-11-05 | Intel Corporation | Processors and methods with configurable network-based dataflow operator circuits |
US10445451B2 (en) | 2017-07-01 | 2019-10-15 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with performance, correctness, and power reduction features |
US10515049B1 (en) | 2017-07-01 | 2019-12-24 | Intel Corporation | Memory circuits and methods for distributed memory hazard detection and error recovery |
US10515046B2 (en) | 2017-07-01 | 2019-12-24 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US11086816B2 (en) | 2017-09-28 | 2021-08-10 | Intel Corporation | Processors, methods, and systems for debugging a configurable spatial accelerator |
US10496574B2 (en) | 2017-09-28 | 2019-12-03 | Intel Corporation | Processors, methods, and systems for a memory fence in a configurable spatial accelerator |
US10445098B2 (en) | 2017-09-30 | 2019-10-15 | Intel Corporation | Processors and methods for privileged configuration in a spatial array |
US10380063B2 (en) | 2017-09-30 | 2019-08-13 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator having a sequencer dataflow operator |
US10956241B1 (en) | 2017-12-20 | 2021-03-23 | Xilinx, Inc. | Unified container for hardware and software binaries |
US10565134B2 (en) | 2017-12-30 | 2020-02-18 | Intel Corporation | Apparatus, methods, and systems for multicast in a configurable spatial accelerator |
US10417175B2 (en) | 2017-12-30 | 2019-09-17 | Intel Corporation | Apparatus, methods, and systems for memory consistency in a configurable spatial accelerator |
US10445250B2 (en) | 2017-12-30 | 2019-10-15 | Intel Corporation | Apparatus, methods, and systems with a configurable spatial accelerator |
US11307873B2 (en) | 2018-04-03 | 2022-04-19 | Intel Corporation | Apparatus, methods, and systems for unstructured data flow in a configurable spatial accelerator with predicate propagation and merging |
US10564980B2 (en) | 2018-04-03 | 2020-02-18 | Intel Corporation | Apparatus, methods, and systems for conditional queues in a configurable spatial accelerator |
WO2019241979A1 (en) * | 2018-06-22 | 2019-12-26 | Huawei Technologies Co., Ltd. | Method of deadlock detection and synchronization-aware optimizations on asynchronous processor architectures |
US10853073B2 (en) | 2018-06-30 | 2020-12-01 | Intel Corporation | Apparatuses, methods, and systems for conditional operations in a configurable spatial accelerator |
US10459866B1 (en) | 2018-06-30 | 2019-10-29 | Intel Corporation | Apparatuses, methods, and systems for integrated control and data processing in a configurable spatial accelerator |
US11200186B2 (en) | 2018-06-30 | 2021-12-14 | Intel Corporation | Apparatuses, methods, and systems for operations in a configurable spatial accelerator |
US10891240B2 (en) | 2018-06-30 | 2021-01-12 | Intel Corporation | Apparatus, methods, and systems for low latency communication in a configurable spatial accelerator |
US11803507B2 (en) | 2018-10-29 | 2023-10-31 | Secturion Systems, Inc. | Data stream protocol field decoding by a systolic array |
US11263011B2 (en) * | 2018-11-28 | 2022-03-01 | International Business Machines Corporation | Compound instruction set architecture for a neural inference chip |
US10678724B1 (en) | 2018-12-29 | 2020-06-09 | Intel Corporation | Apparatuses, methods, and systems for in-network storage in a configurable spatial accelerator |
US10789401B1 (en) * | 2019-03-06 | 2020-09-29 | Xilinx, Inc. | Folding multiply-and-accumulate logic |
US10915471B2 (en) | 2019-03-30 | 2021-02-09 | Intel Corporation | Apparatuses, methods, and systems for memory interface circuit allocation in a configurable spatial accelerator |
US11029927B2 (en) | 2019-03-30 | 2021-06-08 | Intel Corporation | Methods and apparatus to detect and annotate backedges in a dataflow graph |
US10817291B2 (en) | 2019-03-30 | 2020-10-27 | Intel Corporation | Apparatuses, methods, and systems for swizzle operations in a configurable spatial accelerator |
US10965536B2 (en) | 2019-03-30 | 2021-03-30 | Intel Corporation | Methods and apparatus to insert buffers in a dataflow graph |
US11037050B2 (en) | 2019-06-29 | 2021-06-15 | Intel Corporation | Apparatuses, methods, and systems for memory interface circuit arbitration in a configurable spatial accelerator |
US11907713B2 (en) | 2019-12-28 | 2024-02-20 | Intel Corporation | Apparatuses, methods, and systems for fused operations using sign modification in a processing element of a configurable spatial accelerator |
US11809908B2 (en) | 2020-07-07 | 2023-11-07 | SambaNova Systems, Inc. | Runtime virtualization of reconfigurable data flow resources |
RU2755274C1 (ru) * | 2020-12-04 | 2021-09-14 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Ростовский государственный экономический университет (РИНХ)" | Устройство для формирования минимальных двоичных чисел |
US11237880B1 (en) | 2020-12-18 | 2022-02-01 | SambaNova Systems, Inc. | Dataflow all-reduce for reconfigurable processor systems |
US11392740B2 (en) * | 2020-12-18 | 2022-07-19 | SambaNova Systems, Inc. | Dataflow function offload to reconfigurable processors |
US11182221B1 (en) | 2020-12-18 | 2021-11-23 | SambaNova Systems, Inc. | Inter-node buffer-based streaming for reconfigurable processor-as-a-service (RPaaS) |
US11782760B2 (en) | 2021-02-25 | 2023-10-10 | SambaNova Systems, Inc. | Time-multiplexed use of reconfigurable hardware |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01501671A (ja) * | 1986-11-07 | 1989-06-08 | コンカーレント・ロジック・インコーポレーテッド | プログラム可能なロジック・セルおよびアレイ |
JPH0369138A (ja) * | 1989-05-02 | 1991-03-25 | Tandem Comput Inc | 線形配列ウェーハ規模集積回路アーキテクチャ |
JPH05119964A (ja) * | 1991-04-02 | 1993-05-18 | American Teleph & Telegr Co <Att> | 配置可能機能エレメント |
JP2001510650A (ja) * | 1996-12-27 | 2001-07-31 | ペーアーツェーテー インフォルマツィオーンステヒノロギー ゲゼルシャフト ミット ベシュレンクテル ハフツング | データフロープロセッサ(dfp)の自動的なダイナミックアンロード方法並びに2次元または3次元のプログラミング可能なセルストラクチャを有するモジュール(fpga,dpga等) |
JP2002033457A (ja) * | 2000-07-18 | 2002-01-31 | Hitachi Ltd | 半導体集積回路装置 |
WO2002071196A2 (de) * | 2001-03-05 | 2002-09-12 | Pact Informationstechnologie Gmbh | Verfahren und vorrichtung zu datenbe- und/oder verarbeitung |
Family Cites Families (587)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10450A (en) * | 1854-01-24 | Thomas peossbr | ||
US34363A (en) * | 1862-02-11 | Improvement in machinery for cleaning cotton | ||
US34444A (en) * | 1862-02-18 | Improvement in pumps for deep wells | ||
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 |
US3564506A (en) | 1968-01-17 | 1971-02-16 | Ibm | Instruction retry byte counter |
GB1253309A (en) | 1969-11-21 | 1971-11-10 | Marconi Co Ltd | Improvements in or relating to data processing arrangements |
US3753008A (en) | 1970-06-20 | 1973-08-14 | Honeywell Inf Systems | Memory pre-driver circuit |
US3855577A (en) | 1973-06-11 | 1974-12-17 | Texas Instruments Inc | Power saving circuit for calculator system |
DE2713648A1 (de) | 1976-03-26 | 1977-10-06 | Tokyo Shibaura Electric Co | Stromzufuhr-steuervorrichtung fuer speichervorrichtungen |
US4044243A (en) * | 1976-07-23 | 1977-08-23 | Nestor Associates | Information processing system |
US4233667A (en) | 1978-10-23 | 1980-11-11 | International Business Machines Corporation | Demand powered programmable logic array |
US4442508A (en) | 1981-08-05 | 1984-04-10 | General Instrument Corporation | Storage cells for use in two conductor data column storage logic arrays |
US4498134A (en) | 1982-01-26 | 1985-02-05 | Hughes Aircraft Company | Segregator functional plane for use in a modular array processor |
US4590583A (en) | 1982-07-16 | 1986-05-20 | At&T Bell Laboratories | Coin telephone measurement circuitry |
US4498172A (en) | 1982-07-26 | 1985-02-05 | General Electric Company | System for polynomial division self-testing of digital networks |
US4667190A (en) | 1982-07-30 | 1987-05-19 | Honeywell Inc. | Two axis fast access memory |
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 |
US4594682A (en) | 1982-12-22 | 1986-06-10 | Ibm Corporation | Vector processing |
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 |
US4571736A (en) | 1983-10-31 | 1986-02-18 | University Of Southwestern Louisiana | Digital communication system employing differential coding and sample robbing |
US4870302A (en) | 1984-03-12 | 1989-09-26 | Xilinx, Inc. | Configurable electrical circuit having configurable logic elements and configurable interconnects |
USRE34363E (en) | 1984-03-12 | 1993-08-31 | Xilinx, Inc. | Configurable electrical circuit having configurable logic elements and configurable interconnects |
JPS60198618A (ja) | 1984-03-21 | 1985-10-08 | Oki Electric Ind Co Ltd | ダイナミツク論理回路 |
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 |
US4623997A (en) | 1984-12-13 | 1986-11-18 | United Technologies Corporation | Coherent interface with wraparound receive and transmit memories |
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 |
US4720778A (en) | 1985-01-31 | 1988-01-19 | Hewlett Packard Company | Software debugging analyzer |
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 |
US5015884A (en) | 1985-03-29 | 1991-05-14 | Advanced Micro Devices, Inc. | Multiple array high performance programmable logic device family |
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 |
US4972314A (en) | 1985-05-20 | 1990-11-20 | Hughes Aircraft Company | Data flow signal processor method and apparatus |
US4967340A (en) | 1985-06-12 | 1990-10-30 | E-Systems, Inc. | Adaptive processing system having an array of individually configurable processing components |
GB8517376D0 (en) | 1985-07-09 | 1985-08-14 | Jesshope C R | Processor array |
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 |
US4882687A (en) | 1986-03-31 | 1989-11-21 | Schlumberger Technology Corporation | Pixel processor |
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 |
US5034914A (en) | 1986-05-15 | 1991-07-23 | Aquidneck Systems International, Inc. | Optical disk data storage method and apparatus with buffered interface |
GB8612396D0 (en) | 1986-05-21 | 1986-06-25 | Hewlett Packard Ltd | Chain-configured interface bus system |
US4791603A (en) | 1986-07-18 | 1988-12-13 | Honeywell Inc. | Dynamically reconfigurable array logic |
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 |
US4884231A (en) | 1986-09-26 | 1989-11-28 | Performance Semiconductor Corporation | Microprocessor system with extended arithmetic logic unit |
GB2211638A (en) | 1987-10-27 | 1989-07-05 | Ibm | Simd array processor |
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 |
CA1299757C (en) | 1987-08-28 | 1992-04-28 | Brent Cameron Beardsley | Device initiated partial system quiescing |
US5119290A (en) | 1987-10-02 | 1992-06-02 | Sun Microsystems, Inc. | Alias address support |
CA1286421C (en) | 1987-10-14 | 1991-07-16 | Martin Claude Lefebvre | Message fifo buffer controller |
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 |
US5113498A (en) | 1987-11-10 | 1992-05-12 | Echelon Corporation | Input/output section for an intelligent cell which provides sensing, bidirectional communications and control |
US4918690A (en) | 1987-11-10 | 1990-04-17 | Echelon Systems Corp. | Network and intelligent cell for providing sensing, bidirectional communications and control |
JPH01103715U (ja) * | 1987-12-28 | 1989-07-13 | ||
NL8800053A (nl) | 1988-01-11 | 1989-08-01 | Philips Nv | Videoprocessorsysteem, alsmede afbeeldingssysteem en beeldopslagsysteem, voorzien van een dergelijk videoprocessorsysteem. |
USRE34444E (en) | 1988-01-13 | 1993-11-16 | Xilinx, Inc. | Programmable logic device |
NL8800071A (nl) | 1988-01-13 | 1989-08-01 | Philips Nv | Dataprocessorsysteem en videoprocessorsysteem, voorzien van een dergelijk dataprocessorsysteem. |
EP0325421B1 (en) | 1988-01-20 | 1994-08-10 | Advanced Micro Devices, Inc. | Organization of an integrated cache unit for flexible usage in supporting multiprocessor operations |
US5303172A (en) | 1988-02-16 | 1994-04-12 | Array Microsystems | Pipelined combination and vector signal processor |
US4959781A (en) | 1988-05-16 | 1990-09-25 | Stardent Computer, Inc. | System for assigning interrupts to least busy processor that already loaded same class of interrupt routines |
US4939641A (en) | 1988-06-30 | 1990-07-03 | Wang Laboratories, Inc. | Multi-processor system with cache memories |
JPH06101043B2 (ja) | 1988-06-30 | 1994-12-12 | 三菱電機株式会社 | マイクロコンピュータ |
US5287511A (en) | 1988-07-11 | 1994-02-15 | Star Semiconductor Corporation | Architectures and methods for dividing processing tasks into tasks for a programmable real time signal processor and tasks for a decision making microprocessor interfacing therewith |
WO1990001192A1 (en) | 1988-07-22 | 1990-02-08 | United States Department Of Energy | Data flow machine for data driven computing |
US5010401A (en) | 1988-08-11 | 1991-04-23 | Mitsubishi Denki Kabushiki Kaisha | Picture coding and decoding apparatus using vector quantization |
US4901268A (en) | 1988-08-19 | 1990-02-13 | General Electric Company | Multiple function data processor |
US5204935A (en) | 1988-08-19 | 1993-04-20 | Fuji Xerox Co., Ltd. | Programmable fuzzy logic circuits |
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 |
EP0363631B1 (de) | 1988-09-22 | 1993-12-15 | Siemens Aktiengesellschaft | Schaltungsanordnung für Fernmeldevermittlungsanlagen, insbesondere PCM-Zeitmultiplex-Fernsprechvermittlungsanlagen mit Zentralkoppelfeld und angeschlossenen Teilkoppelfeldern |
DE68929518T2 (de) | 1988-10-05 | 2005-06-09 | Quickturn Design Systems, Inc., Mountain View | Verfahren zur Verwendung einer elektronisch wiederkonfigurierbaren Gatterfeld-Logik und dadurch hergestelltes Gerät |
JP2930341B2 (ja) | 1988-10-07 | 1999-08-03 | マーチン・マリエッタ・コーポレーション | データ並列処理装置 |
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 |
US5041924A (en) | 1988-11-30 | 1991-08-20 | Quantum Corporation | Removable and transportable hard disk subsystem |
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 |
US5237686A (en) | 1989-05-10 | 1993-08-17 | Mitsubishi Denki Kabushiki Kaisha | Multiprocessor type time varying image encoding system and image processor with memory bus control table for arbitration priority |
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 | 株式会社日立製作所 | テストデータ変更回路を有する論理回路テスト装置 |
US5343406A (en) | 1989-07-28 | 1994-08-30 | Xilinx, Inc. | Distributed memory architecture for a configurable logic array and method for using distributed memory |
CA2021192A1 (en) | 1989-07-28 | 1991-01-29 | Malcolm A. Mumme | Simplified synchronous mesh processor |
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 |
US5489857A (en) | 1992-08-03 | 1996-02-06 | Advanced Micro Devices, Inc. | Flexible synchronous/asynchronous cell structure for a high density programmable logic device |
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 |
GB8925723D0 (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 |
US5212777A (en) | 1989-11-17 | 1993-05-18 | Texas Instruments Incorporated | Multi-processor reconfigurable in single instruction multiple data (SIMD) and multiple instruction multiple data (MIMD) modes and method of operation |
DE58908974D1 (de) | 1989-11-21 | 1995-03-16 | Itt Ind Gmbh Deutsche | Datengesteuerter Arrayprozessor. |
US5099447A (en) | 1990-01-22 | 1992-03-24 | Alliant Computer Systems Corporation | Blocked matrix multiplication for computers with hierarchical memory |
AU7305491A (en) | 1990-01-29 | 1991-08-21 | Teraplex, Inc. | Architecture for minimal instruction set computing system |
US5125801A (en) | 1990-02-02 | 1992-06-30 | Isco, Inc. | Pumping system |
US5036493A (en) | 1990-03-15 | 1991-07-30 | Digital Equipment Corporation | System and method for reducing power usage by multiple memory modules |
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 |
US5555201A (en) | 1990-04-06 | 1996-09-10 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information |
EP0463721A3 (en) | 1990-04-30 | 1993-06-16 | Gennum Corporation | Digital signal processing device |
US5355508A (en) | 1990-05-07 | 1994-10-11 | Mitsubishi Denki Kabushiki Kaisha | Parallel data processing system combining a SIMD unit with a MIMD unit and sharing a common bus, memory, and system 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 |
CA2045773A1 (en) | 1990-06-29 | 1991-12-30 | Compaq Computer Corporation | Byte-compare operation for high-performance 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 |
DE4129614C2 (de) | 1990-09-07 | 2002-03-21 | Hitachi Ltd | System und Verfahren zur Datenverarbeitung |
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 |
ATE180586T1 (de) | 1990-11-13 | 1999-06-15 | Ibm | Paralleles assoziativprozessor-system |
US5590345A (en) | 1990-11-13 | 1996-12-31 | International Business Machines Corporation | Advanced parallel array processor(APAP) |
US5617577A (en) | 1990-11-13 | 1997-04-01 | International Business Machines Corporation | Advanced parallel array processor I/O connection |
US5625836A (en) | 1990-11-13 | 1997-04-29 | International Business Machines Corporation | SIMD/MIMD processing memory element (PME) |
US5713037A (en) | 1990-11-13 | 1998-01-27 | International Business Machines Corporation | Slide bus communication functions for SIMD/MIMD array processor |
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 |
US5734921A (en) | 1990-11-13 | 1998-03-31 | International Business Machines Corporation | Advanced parallel array processor computer package |
US5588152A (en) | 1990-11-13 | 1996-12-24 | International Business Machines Corporation | Advanced parallel processor including advanced support hardware |
US5794059A (en) | 1990-11-13 | 1998-08-11 | International Business Machines Corporation | N-dimensional modified hypercube |
CA2051222C (en) | 1990-11-30 | 1998-05-05 | Pradeep S. Sindhu | Consistent packet switched memory bus for shared memory multiprocessors |
US5613128A (en) | 1990-12-21 | 1997-03-18 | Intel Corporation | Programmable multi-processor interrupt controller system with a processor integrated local interrupt controller |
US5276836A (en) | 1991-01-10 | 1994-01-04 | Hitachi, Ltd. | Data processing device with common memory connecting mechanism |
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 |
JP2867717B2 (ja) | 1991-02-01 | 1999-03-10 | 日本電気株式会社 | マイクロコンピュータ |
US5212716A (en) | 1991-02-05 | 1993-05-18 | International Business Machines Corporation | Data edge phase sorting circuits |
US5218302A (en) | 1991-02-06 | 1993-06-08 | Sun Electric Corporation | Interface for coupling an analyzer to a distributorless ignition system |
DE59109046D1 (de) | 1991-02-22 | 1998-10-08 | Siemens Ag | Programmierverfahren für einen Logikbaustein |
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 |
JPH04328657A (ja) | 1991-04-30 | 1992-11-17 | Toshiba Corp | キャッシュメモリ |
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 | ブリティッシュ・テクノロジー・グループ・ユーエスエイ・インコーポレーテッド | コンピュータのための最適化コンパイラ |
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 |
JP3259969B2 (ja) | 1991-07-09 | 2002-02-25 | 株式会社東芝 | キャッシュメモリ制御装置 |
US5347639A (en) | 1991-07-15 | 1994-09-13 | International Business Machines Corporation | Self-parallelizing computer system and method |
US5317209A (en) * | 1991-08-29 | 1994-05-31 | National Semiconductor Corporation | Dynamic three-state bussing capability in a configurable logic array |
US5581731A (en) | 1991-08-30 | 1996-12-03 | King; Edward C. | Method and apparatus for managing video data for faster access by selectively caching video data |
US5633830A (en) | 1995-11-08 | 1997-05-27 | Altera Corporation | Random access memory block circuitry for programmable logic array integrated circuit devices |
US5260610A (en) | 1991-09-03 | 1993-11-09 | Altera Corporation | Programmable logic element interconnections for programmable logic array integrated circuits |
US5550782A (en) | 1991-09-03 | 1996-08-27 | Altera Corporation | Programmable logic array integrated circuits |
FR2681791B1 (fr) | 1991-09-27 | 1994-05-06 | Salomon Sa | Dispositif d'amortissement des vibrations pour club de golf. |
US5450339A (en) * | 1991-10-10 | 1995-09-12 | Harris Corp | Noncanonic fully systolic LMS adaptive architecture |
CA2073516A1 (en) | 1991-11-27 | 1993-05-28 | Peter Michael Kogge | Dynamic multi-mode parallel processor array architecture computer system |
WO1993011503A1 (en) | 1991-12-06 | 1993-06-10 | Norman Richard S | 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. |
US5412795A (en) | 1992-02-25 | 1995-05-02 | Micral, Inc. | State machine having a variable timing mechanism for varying the duration of logical output states of the state machine based on variation in the clock frequency |
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 |
JP2647327B2 (ja) | 1992-04-06 | 1997-08-27 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 大規模並列コンピューティング・システム装置 |
US5493663A (en) | 1992-04-22 | 1996-02-20 | International Business Machines Corporation | Method and apparatus for predetermining pages for swapping from physical memory in accordance with the number of accesses |
JP2572522B2 (ja) * | 1992-05-12 | 1997-01-16 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピューティング装置 |
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 |
WO1993024895A2 (en) | 1992-06-04 | 1993-12-09 | Xilinx, Inc. | Timing driven method for laying out a user's circuit onto a programmable integrated circuit device |
DE4221278C2 (de) | 1992-06-29 | 1996-02-29 | Martin Vorbach | Busgekoppeltes Mehrrechnersystem |
US5475803A (en) | 1992-07-10 | 1995-12-12 | Lsi Logic Corporation | Method for 2-D affine transformation of images |
JP3032382B2 (ja) | 1992-07-13 | 2000-04-17 | シャープ株式会社 | デジタル信号のサンプリング周波数変換装置 |
US5386154A (en) | 1992-07-23 | 1995-01-31 | Xilinx, Inc. | Compact logic cell for field programmable gate array chip |
US5365125A (en) | 1992-07-23 | 1994-11-15 | Xilinx, Inc. | Logic cell for field programmable gate array having optional internal feedback and optional cascade |
US5590348A (en) | 1992-07-28 | 1996-12-31 | International Business Machines Corporation | Status predictor for combined shifter-rotate/merge unit |
US5802290A (en) | 1992-07-29 | 1998-09-01 | Virtual Computer Corporation | Computer network of distributed virtual computers which are EAC reconfigurable in response to instruction to be executed |
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 |
ATE237861T1 (de) | 1992-09-03 | 2003-05-15 | Sony Corp | Datenaufzeichnungsgerät und -verfahren |
US5572710A (en) | 1992-09-11 | 1996-11-05 | Kabushiki Kaisha Toshiba | High speed logic simulation system using time division emulation suitable for large scale logic circuits |
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 | 割り込み処理方法および装置 |
US5857109A (en) | 1992-11-05 | 1999-01-05 | Giga Operations Corporation | Programmable logic device for real time video processing |
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 |
GB9223226D0 (en) | 1992-11-05 | 1992-12-16 | Algotronix Ltd | Improved configurable cellular array (cal ii) |
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 |
US5311079A (en) | 1992-12-17 | 1994-05-10 | Ditlow Gary S | Low power, high performance PLA |
US5428526A (en) | 1993-02-03 | 1995-06-27 | Flood; Mark A. | Programmable controller with time periodic communication |
US5386518A (en) | 1993-02-12 | 1995-01-31 | Hughes Aircraft Company | Reconfigurable computer interface and method |
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 |
US5418953A (en) | 1993-04-12 | 1995-05-23 | Loral/Rohm Mil-Spec Corp. | Method for automated deployment of a software program onto a multi-processor architecture |
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 |
AU6774894A (en) | 1993-04-26 | 1994-11-21 | Comdisco Systems, Inc. | Method for scheduling synchronous data flow graphs |
DE4416881C2 (de) | 1993-05-13 | 1998-03-19 | Pact Inf Tech Gmbh | Verfahren zum Betrieb einer Datenverarbeitungseinrichtung |
US5435000A (en) | 1993-05-19 | 1995-07-18 | Bull Hn Information Systems Inc. | Central processing unit using dual basic processing units and combined result bus |
US5349193A (en) | 1993-05-20 | 1994-09-20 | Princeton Gamma Tech, Inc. | Highly sensitive nuclear spectrometer apparatus and method |
IT1260848B (it) | 1993-06-11 | 1996-04-23 | Finmeccanica Spa | Sistema a multiprocessore |
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 | 信号処理プロセッサ |
US5581734A (en) | 1993-08-02 | 1996-12-03 | International Business Machines Corporation | Multiprocessor system with shared cache and data input/output circuitry for transferring data amount greater than system bus capacity |
CA2129882A1 (en) | 1993-08-12 | 1995-02-13 | Soheil Shams | Dynamically reconfigurable interprocessor communication network for simd multiprocessors and apparatus implementing same |
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 |
GB2282244B (en) | 1993-09-23 | 1998-01-14 | Advanced Risc Mach Ltd | Integrated circuit |
US6219688B1 (en) | 1993-11-30 | 2001-04-17 | Texas Instruments Incorporated | Method, apparatus and system for sum of plural absolute differences |
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 |
US5680583A (en) | 1994-02-16 | 1997-10-21 | Arkos Design, Inc. | Method and apparatus for a trace buffer in an emulation system |
EP0752132B1 (en) | 1994-03-22 | 2000-11-15 | Hyperchip Inc. | Cell-based defect tolerant architecture with beneficial use of unassigned spare cells |
US5574927A (en) | 1994-03-25 | 1996-11-12 | International Meta Systems, Inc. | RISC architecture computer configured for emulation of the instruction set of a target computer |
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 |
US5504439A (en) | 1994-04-01 | 1996-04-02 | Xilinx, Inc. | I/O interface cell for use with optional pad |
US5761484A (en) | 1994-04-01 | 1998-06-02 | Massachusetts Institute Of Technology | Virtual interconnections for reconfigurable logic systems |
US5781756A (en) | 1994-04-01 | 1998-07-14 | Xilinx, Inc. | Programmable logic device with partially configurable memory cells and a method for configuration |
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 |
JP2671804B2 (ja) | 1994-05-27 | 1997-11-05 | 日本電気株式会社 | 階層型資源管理方法 |
US5532693A (en) | 1994-06-13 | 1996-07-02 | Advanced Hardware Architectures | Adaptive data compression system with systolic string matching logic |
EP0690378A1 (en) | 1994-06-30 | 1996-01-03 | Tandem Computers Incorporated | Tool and method for diagnosing and correcting errors in a computer programm |
JP3308770B2 (ja) | 1994-07-22 | 2002-07-29 | 三菱電機株式会社 | 情報処理装置および情報処理装置における計算方法 |
US5600845A (en) | 1994-07-27 | 1997-02-04 | Metalithic Systems Incorporated | Integrated circuit computing device comprising a dynamically configurable gate array having a microprocessor and reconfigurable instruction execution means and method therefor |
JP3365581B2 (ja) | 1994-07-29 | 2003-01-14 | 富士通株式会社 | 自己修復機能付き情報処理装置 |
US5574930A (en) | 1994-08-12 | 1996-11-12 | University Of Hawaii | Computer system and method using functional memory |
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 |
US5619720A (en) | 1994-10-04 | 1997-04-08 | Analog Devices, Inc. | Digital signal processor having link ports for point-to-point communication |
US5450022A (en) | 1994-10-07 | 1995-09-12 | Xilinx Inc. | Structure and method for configuration of a field programmable gate array |
EP0707269A1 (en) | 1994-10-11 | 1996-04-17 | International Business Machines Corporation | Cache coherence network for a multiprocessor data processing system |
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 |
US5815726A (en) | 1994-11-04 | 1998-09-29 | Altera Corporation | Coarse-grained look-up table architecture |
JPH08137824A (ja) | 1994-11-15 | 1996-05-31 | Mitsubishi Semiconductor Software Kk | セルフテスト機能内蔵シングルチップマイコン |
US6154826A (en) | 1994-11-16 | 2000-11-28 | University Of Virginia Patent Foundation | Method and device for maximizing memory system bandwidth by accessing data in a dynamically determined order |
US5584013A (en) | 1994-12-09 | 1996-12-10 | International Business Machines Corporation | Hierarchical cache arrangement wherein the replacement of an LRU entry in a second level cache is prevented when the cache entry is the only inclusive entry in the first level cache |
EP0721157A1 (en) | 1994-12-12 | 1996-07-10 | Advanced Micro Devices, Inc. | Microprocessor with selectable clock frequency |
US5537580A (en) | 1994-12-21 | 1996-07-16 | Vlsi Technology, Inc. | Integrated circuit fabrication using state machine extraction from behavioral hardware description language |
US5682491A (en) | 1994-12-29 | 1997-10-28 | International Business Machines Corporation | Selective processing and routing of results among processors controlled by decoding instructions using mask value derived from instruction tag and processor identifier |
US6128720A (en) | 1994-12-29 | 2000-10-03 | International Business Machines Corporation | Distributed processing array with component processors performing customized interpretation of instructions |
US5696791A (en) | 1995-01-17 | 1997-12-09 | Vtech Industries, Inc. | Apparatus and method for decoding a sequence of digitally encoded data |
US5493239A (en) | 1995-01-31 | 1996-02-20 | Motorola, Inc. | Circuit and method of configuring a field programmable gate array |
US5532957A (en) | 1995-01-31 | 1996-07-02 | Texas Instruments Incorporated | Field reconfigurable logic/memory array |
US6052773A (en) | 1995-02-10 | 2000-04-18 | Massachusetts Institute Of Technology | DPGA-coupled microprocessors |
US5659785A (en) | 1995-02-10 | 1997-08-19 | International Business Machines Corporation | Array processor communication architecture with broadcast processor instructions |
US5742180A (en) | 1995-02-10 | 1998-04-21 | Massachusetts Institute Of Technology | Dynamically programmable gate array with multiple contexts |
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 |
DE69632424T2 (de) | 1995-02-17 | 2005-05-12 | Kabushiki Kaisha Toshiba, Kawasaki | Server für kontinuierliche Daten und Datentransferschema für mehrfache gleichzeitige Datenzugriffe |
US5675743A (en) | 1995-02-22 | 1997-10-07 | Callisto Media Systems Inc. | Multi-media server |
US5757207A (en) | 1995-03-22 | 1998-05-26 | Altera Corporation | Programmable logic array integrated circuit incorporating a first-in first-out memory |
US5570040A (en) | 1995-03-22 | 1996-10-29 | Altera Corporation | Programmable logic array integrated circuit incorporating a first-in first-out memory |
US5752035A (en) | 1995-04-05 | 1998-05-12 | Xilinx, Inc. | Method for compiling and executing programs for reprogrammable instruction set accelerator |
US5748979A (en) | 1995-04-05 | 1998-05-05 | Xilinx Inc | Reprogrammable instruction set accelerator using a plurality of programmable execution units and an instruction page table |
JP3313007B2 (ja) | 1995-04-14 | 2002-08-12 | 三菱電機株式会社 | マイクロコンピュータ |
US5933642A (en) | 1995-04-17 | 1999-08-03 | Ricoh Corporation | Compiling system and method for reconfigurable computing |
US6077315A (en) | 1995-04-17 | 2000-06-20 | Ricoh Company Ltd. | Compiling system and method for partially reconfigurable computing |
US5794062A (en) | 1995-04-17 | 1998-08-11 | Ricoh Company Ltd. | System and method for dynamically reconfigurable computing using a processing unit having changeable internal hardware organization |
JP3948494B2 (ja) | 1995-04-28 | 2007-07-25 | ザイリンクス,インコーポレイテッド | プログラム可能論理装置によってアクセス可能な分散レジスタを有するマイクロプロセサ |
US5701091A (en) | 1995-05-02 | 1997-12-23 | Xilinx, Inc. | Routing resources for hierarchical FPGA |
US5600597A (en) | 1995-05-02 | 1997-02-04 | Xilinx, Inc. | Register protection structure for FPGA |
GB9508931D0 (en) | 1995-05-02 | 1995-06-21 | Xilinx Inc | Programmable switch for FPGA input/output signals |
US5541530A (en) | 1995-05-17 | 1996-07-30 | Altera Corporation | Programmable logic array integrated circuits with blocks of logic regions grouped into super-blocks |
US5649179A (en) | 1995-05-19 | 1997-07-15 | Motorola, Inc. | Dynamic instruction allocation for a SIMD processor |
US5821774A (en) | 1995-05-26 | 1998-10-13 | Xilinx, Inc. | Structure and method for arithmetic function implementation in an EPLD having high speed product term allocation structure |
JPH08328941A (ja) | 1995-05-31 | 1996-12-13 | Nec Corp | メモリアクセス制御回路 |
JP3677315B2 (ja) | 1995-06-01 | 2005-07-27 | シャープ株式会社 | データ駆動型情報処理装置 |
US5652529A (en) | 1995-06-02 | 1997-07-29 | International Business Machines Corporation | Programmable array clock/reset resource |
US5671432A (en) | 1995-06-02 | 1997-09-23 | International Business Machines Corporation | Programmable array I/O-routing resource |
US5815715A (en) | 1995-06-05 | 1998-09-29 | Motorola, Inc. | Method for designing a product having hardware and software components and product therefor |
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 |
US5978583A (en) | 1995-08-07 | 1999-11-02 | International Business Machines Corp. | Method for resource control in parallel environments using program organization and run-time support |
US5649176A (en) | 1995-08-10 | 1997-07-15 | Virtual Machine Works, Inc. | Transition analysis and circuit resynthesis method and device for digital circuit modeling |
US5996083A (en) | 1995-08-11 | 1999-11-30 | Hewlett-Packard Company | Microprocessor having software controllable power consumption |
GB2304438A (en) | 1995-08-17 | 1997-03-19 | Kenneth Austin | Re-configurable application specific device |
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 |
US5784313A (en) | 1995-08-18 | 1998-07-21 | Xilinx, Inc. | Programmable logic device including configuration data or user data memory slices |
US5646545A (en) | 1995-08-18 | 1997-07-08 | Xilinx, Inc. | Time multiplexed programmable logic device |
US5737565A (en) | 1995-08-24 | 1998-04-07 | International Business Machines Corporation | System and method for diallocating stream from a stream buffer |
US5737516A (en) | 1995-08-30 | 1998-04-07 | Motorola, Inc. | Data processing system for performing a debug function and method therefor |
US5734869A (en) | 1995-09-06 | 1998-03-31 | Chen; Duan-Ping | High speed logic circuit simulator |
US6430309B1 (en) | 1995-09-15 | 2002-08-06 | Monogen, Inc. | Specimen preview and inspection system |
US5652894A (en) | 1995-09-29 | 1997-07-29 | Intel Corporation | Method and apparatus for providing power saving modes to a pipelined processor |
US5745734A (en) | 1995-09-29 | 1998-04-28 | International Business Machines Corporation | Method and system for programming a gate array using a compressed configuration bit stream |
US5754827A (en) | 1995-10-13 | 1998-05-19 | Mentor Graphics Corporation | Method and apparatus for performing fully visible tracing of an emulation |
US5642058A (en) | 1995-10-16 | 1997-06-24 | Xilinx , Inc. | Periphery input/output interconnect structure |
US5815004A (en) | 1995-10-16 | 1998-09-29 | Xilinx, Inc. | Multi-buffered configurable logic block output lines in a field programmable gate array |
US5608342A (en) | 1995-10-23 | 1997-03-04 | Xilinx, Inc. | Hierarchical programming of electrically configurable integrated circuits |
US5675262A (en) | 1995-10-26 | 1997-10-07 | Xilinx, Inc. | Fast carry-out scheme in a field programmable gate array |
US5656950A (en) | 1995-10-26 | 1997-08-12 | Xilinx, Inc. | Interconnect lines including tri-directional buffer circuits |
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 |
US5773994A (en) | 1995-12-15 | 1998-06-30 | Cypress Semiconductor Corp. | Method and apparatus for implementing an internal tri-state bus within a programmable logic circuit |
JPH09231788A (ja) | 1995-12-19 | 1997-09-05 | Fujitsu Ltd | シフトレジスタ及びプログラマブル論理回路並びにプログラマブル論理回路システム |
US7266725B2 (en) | 2001-09-03 | 2007-09-04 | Pact Xpp Technologies Ag | Method for debugging reconfigurable architectures |
US5804986A (en) | 1995-12-29 | 1998-09-08 | Cypress Semiconductor Corp. | Memory in a programmable logic device |
JP3247043B2 (ja) | 1996-01-12 | 2002-01-15 | 株式会社日立製作所 | 内部信号で障害検出を行う情報処理システムおよび論理lsi |
DE59607143D1 (de) * | 1996-01-15 | 2001-07-26 | Infineon Technologies Ag | Prozessor zur bildverarbeitung |
US5760602A (en) | 1996-01-17 | 1998-06-02 | Hewlett-Packard Company | Time multiplexing a plurality of configuration settings of a programmable switch element in a FPGA |
JP2795244B2 (ja) | 1996-01-17 | 1998-09-10 | 日本電気株式会社 | プログラムデバッグシステム |
US5854918A (en) | 1996-01-24 | 1998-12-29 | Ricoh Company Ltd. | Apparatus and method for self-timed algorithmic execution |
US5898602A (en) | 1996-01-25 | 1999-04-27 | Xilinx, Inc. | Carry chain circuit with flexible carry function for implementing arithmetic and logical functions |
US5936424A (en) | 1996-02-02 | 1999-08-10 | Xilinx, Inc. | High speed bus with tree structure for selecting bus driver |
US5635851A (en) | 1996-02-02 | 1997-06-03 | Xilinx, Inc. | Read and writable data bus particularly for programmable logic devices |
US5754459A (en) | 1996-02-08 | 1998-05-19 | Xilinx, Inc. | Multiplier circuit design for a programmable logic device |
KR0165515B1 (ko) | 1996-02-17 | 1999-01-15 | 김광호 | 그래픽 데이터의 선입선출기 및 선입선출 방법 |
GB9604496D0 (en) | 1996-03-01 | 1996-05-01 | Xilinx Inc | Embedded memory for field programmable gate array |
US6020758A (en) | 1996-03-11 | 2000-02-01 | Altera Corporation | Partially reconfigurable programmable logic device |
US5841973A (en) | 1996-03-13 | 1998-11-24 | Cray Research, Inc. | Messaging in distributed memory multiprocessing system having shell circuitry for atomic control of message storage queue's tail pointer structure in local memory |
US6279077B1 (en) | 1996-03-22 | 2001-08-21 | Texas Instruments Incorporated | Bus interface buffer control in a microprocessor |
US6311265B1 (en) | 1996-03-25 | 2001-10-30 | Torrent Systems, Inc. | Apparatuses and methods for programming parallel computers |
US6154049A (en) | 1998-03-27 | 2000-11-28 | Xilinx, Inc. | Multiplier fabric for use in field programmable gate arrays |
US5956518A (en) | 1996-04-11 | 1999-09-21 | Massachusetts Institute Of Technology | Intermediate-grain reconfigurable processing device |
US5687325A (en) | 1996-04-19 | 1997-11-11 | Chang; Web | Application specific field programmable gate array |
US6173434B1 (en) | 1996-04-22 | 2001-01-09 | Brigham Young University | Dynamically-configurable digital processor using method for relocating logic array modules |
US5960200A (en) | 1996-05-03 | 1999-09-28 | I-Cube | System to transition an enterprise to a distributed infrastructure |
US5894565A (en) | 1996-05-20 | 1999-04-13 | Atmel Corporation | Field programmable gate array with distributed RAM and increased cell utilization |
US5784636A (en) | 1996-05-28 | 1998-07-21 | National Semiconductor Corporation | Reconfigurable computer architecture for use in signal processing applications |
EP0978051A1 (en) | 1996-06-21 | 2000-02-09 | Mirage Technologies, Inc. | Dynamically reconfigurable hardware system for real-time control of processes |
US5892370A (en) | 1996-06-21 | 1999-04-06 | Quicklogic Corporation | Clock network for field programmable gate array |
US6785826B1 (en) | 1996-07-17 | 2004-08-31 | International Business Machines Corporation | Self power audit and control circuitry for microprocessor functional units |
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 |
KR100280285B1 (ko) | 1996-08-19 | 2001-02-01 | 윤종용 | 멀티미디어 신호에 적합한 멀티미디어 프로세서 |
US5838165A (en) | 1996-08-21 | 1998-11-17 | Chatter; Mukesh | High performance self modifying on-the-fly alterable logic FPGA, architecture and method |
US5933023A (en) | 1996-09-03 | 1999-08-03 | Xilinx, Inc. | FPGA architecture having RAM blocks with programmable word length and width and dedicated address and data lines |
US6624658B2 (en) | 1999-02-04 | 2003-09-23 | Advantage Logic, Inc. | Method and apparatus for universal program controlled bus architecture |
US5859544A (en) | 1996-09-05 | 1999-01-12 | Altera Corporation | Dynamic configurable elements for programmable logic devices |
US6049866A (en) | 1996-09-06 | 2000-04-11 | Silicon Graphics, Inc. | Method and system for an efficient user mode cache manipulation using a simulated instruction |
JP3934710B2 (ja) | 1996-09-13 | 2007-06-20 | 株式会社ルネサステクノロジ | マイクロプロセッサ |
US5828858A (en) * | 1996-09-16 | 1998-10-27 | Virginia Tech Intellectual Properties, Inc. | Worm-hole run-time reconfigurable processor field programmable gate array (FPGA) |
US6178494B1 (en) | 1996-09-23 | 2001-01-23 | Virtual Computer Corporation | Modular, hybrid processor and method for producing a modular, hybrid processor |
US5694602A (en) | 1996-10-01 | 1997-12-02 | The United States Of America As Represented By The Secretary Of The Air Force | Weighted system and method for spatial allocation of a parallel load |
US5832288A (en) | 1996-10-18 | 1998-11-03 | Samsung Electronics Co., Ltd. | Element-select mechanism for a vector processor |
US5901279A (en) | 1996-10-18 | 1999-05-04 | Hughes Electronics Corporation | Connection of spares between multiple programmable devices |
US5892962A (en) | 1996-11-12 | 1999-04-06 | Lucent Technologies Inc. | FPGA-based processor |
US5844422A (en) | 1996-11-13 | 1998-12-01 | Xilinx, Inc. | State saving and restoration in reprogrammable FPGAs |
US5860119A (en) | 1996-11-25 | 1999-01-12 | Vlsi Technology, Inc. | Data-packet fifo buffer system with end-of-packet flags |
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 |
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 |
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 |
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.) |
US6427156B1 (en) | 1997-01-21 | 2002-07-30 | Xilinx, Inc. | Configurable logic block with AND gate for efficient multiplication in FPGAS |
EP0858167A1 (en) | 1997-01-29 | 1998-08-12 | Hewlett-Packard Company | Field programmable processor device |
EP0858168A1 (en) | 1997-01-29 | 1998-08-12 | Hewlett-Packard Company | Field programmable processor array |
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 |
US6055619A (en) | 1997-02-07 | 2000-04-25 | Cirrus Logic, Inc. | Circuits, system, and methods for processing multiple data streams |
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 |
US6150837A (en) | 1997-02-28 | 2000-11-21 | Actel Corporation | Enhanced field programmable gate array |
US5927423A (en) | 1997-03-05 | 1999-07-27 | Massachusetts Institute Of Technology | Reconfigurable footprint mechanism for omnidirectional vehicles |
US5857097A (en) | 1997-03-10 | 1999-01-05 | Digital Equipment Corporation | Method for identifying reasons for dynamic stall cycles during the execution of a program |
US5884075A (en) | 1997-03-10 | 1999-03-16 | Compaq Computer Corporation | Conflict resolution using self-contained virtual devices |
US6125408A (en) | 1997-03-10 | 2000-09-26 | Compaq Computer Corporation | Resource type prioritization in generating a device configuration |
US6085317A (en) | 1997-08-15 | 2000-07-04 | Altera Corporation | Reconfigurable computer architecture using programmable logic devices |
US6272257B1 (en) | 1997-04-30 | 2001-08-07 | Canon Kabushiki Kaisha | Decoder of variable length codes |
AUPO647997A0 (en) | 1997-04-30 | 1997-05-22 | Canon Information Systems Research Australia Pty Ltd | Memory controller architecture |
US6389379B1 (en) | 1997-05-02 | 2002-05-14 | Axis Systems, Inc. | Converification system and method |
US6321366B1 (en) | 1997-05-02 | 2001-11-20 | Axis Systems, Inc. | Timing-insensitive glitch-free logic system and method |
US6035371A (en) | 1997-05-28 | 2000-03-07 | 3Com Corporation | Method and apparatus for addressing a static random access memory device based on signals for addressing a dynamic memory access device |
US6047115A (en) | 1997-05-29 | 2000-04-04 | Xilinx, Inc. | Method for configuring FPGA memory planes for virtual hardware computation |
US6421817B1 (en) | 1997-05-29 | 2002-07-16 | Xilinx, Inc. | System and method of computation in a programmable logic device using virtual instructions |
US6339840B1 (en) | 1997-06-02 | 2002-01-15 | Iowa State University Research Foundation, Inc. | Apparatus and method for parallelizing legacy computer code |
US6011407A (en) | 1997-06-13 | 2000-01-04 | Xilinx, Inc. | Field programmable gate array with dedicated computer bus interface and method for configuring both |
US5996048A (en) | 1997-06-20 | 1999-11-30 | Sun Microsystems, Inc. | Inclusion vector architecture for a level two cache |
US5838988A (en) | 1997-06-25 | 1998-11-17 | Sun Microsystems, Inc. | Computer product for precise architectural update in an out-of-order processor |
US6240502B1 (en) | 1997-06-25 | 2001-05-29 | Sun Microsystems, Inc. | Apparatus for dynamically reconfiguring a processor |
US5970254A (en) | 1997-06-27 | 1999-10-19 | Cooke; Laurence H. | Integrated processor and programmable data path chip for reconfigurable computing |
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 |
US6437441B1 (en) | 1997-07-10 | 2002-08-20 | Kawasaki Microelectronics, Inc. | Wiring structure of a semiconductor integrated circuit and a method of forming the wiring structure |
US6020760A (en) | 1997-07-16 | 2000-02-01 | Altera Corporation | I/O buffer circuit with pin multiplexing |
US6282701B1 (en) | 1997-07-31 | 2001-08-28 | Mutek Solutions, Ltd. | System and method for monitoring and analyzing the execution of computer programs |
US6170051B1 (en) | 1997-08-01 | 2001-01-02 | Micron Technology, Inc. | Apparatus and method for program level parallelism in a VLIW processor |
US6078736A (en) | 1997-08-28 | 2000-06-20 | Xilinx, Inc. | Method of designing FPGAs for dynamically reconfigurable computing |
US6038656A (en) | 1997-09-12 | 2000-03-14 | California Institute Of Technology | Pipelined completion for asynchronous communication |
JP3612186B2 (ja) | 1997-09-19 | 2005-01-19 | 株式会社ルネサステクノロジ | データ処理装置 |
US6539415B1 (en) | 1997-09-24 | 2003-03-25 | Sony Corporation | Method and apparatus for the allocation of audio/video tasks in a network system |
US5966143A (en) | 1997-10-14 | 1999-10-12 | Motorola, Inc. | Data allocation into multiple memories for concurrent access |
SG82587A1 (en) | 1997-10-21 | 2001-08-21 | Sony Corp | Recording apparatus, recording method, playback apparatus, playback method, recording/playback apparatus, recording/playback method, presentation medium and recording medium |
JP4128251B2 (ja) | 1997-10-23 | 2008-07-30 | 富士通株式会社 | 配線密度予測方法およびセル配置装置 |
US6076157A (en) | 1997-10-23 | 2000-06-13 | International Business Machines Corporation | Method and apparatus to force a thread switch in a multithreaded processor |
US6212544B1 (en) | 1997-10-23 | 2001-04-03 | International Business Machines Corporation | Altering thread priorities in a multithreaded processor |
US6247147B1 (en) | 1997-10-27 | 2001-06-12 | Altera Corporation | Enhanced embedded logic analyzer |
US6122719A (en) | 1997-10-31 | 2000-09-19 | Silicon Spice | Method and apparatus for retiming 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 |
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 |
US6127908A (en) | 1997-11-17 | 2000-10-03 | Massachusetts Institute Of Technology | Microelectro-mechanical system actuator device and reconfigurable circuits utilizing same |
JP4197755B2 (ja) | 1997-11-19 | 2008-12-17 | 富士通株式会社 | 信号伝送システム、該信号伝送システムのレシーバ回路、および、該信号伝送システムが適用される半導体記憶装置 |
US6212650B1 (en) | 1997-11-24 | 2001-04-03 | Xilinx, Inc. | Interactive dubug tool for programmable circuits |
US6128724A (en) * | 1997-12-11 | 2000-10-03 | Leland Stanford Junior University | Computation using codes for controlling configurable computational circuit |
US6091263A (en) | 1997-12-12 | 2000-07-18 | Xilinx, Inc. | Rapidly reconfigurable FPGA having a multiple region architecture with reconfiguration caches useable as data RAM |
WO1999031574A1 (en) | 1997-12-17 | 1999-06-24 | Hewlett-Packard Company | Implementation of multipliers in programmable arrays |
DE69841256D1 (de) | 1997-12-17 | 2009-12-10 | Panasonic Corp | Befehlsmaskierung um Befehlsströme einem Prozessor zuzuleiten |
EP0926594B1 (en) | 1997-12-17 | 2007-05-23 | Hewlett-Packard Company, A Delaware Corporation | Method of using primary and secondary processors |
DE69827589T2 (de) | 1997-12-17 | 2005-11-03 | Elixent Ltd. | Konfigurierbare Verarbeitungsanordnung und Verfahren zur Benutzung dieser Anordnung, um eine Zentraleinheit aufzubauen |
DE19861088A1 (de) | 1997-12-22 | 2000-02-10 | Pact Inf Tech Gmbh | Verfahren zur Reparatur von integrierten Schaltkreisen |
US6260114B1 (en) | 1997-12-30 | 2001-07-10 | Mcmz Technology Innovations, Llc | Computer cache memory windowing |
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 |
US6301706B1 (en) | 1997-12-31 | 2001-10-09 | Elbrus International Limited | Compiler method and apparatus for elimination of redundant speculative computations from innermost loops |
US6105106A (en) | 1997-12-31 | 2000-08-15 | Micron Technology, Inc. | Computer system, memory device and shift register including a balanced switching circuit with series connected transfer gates which are selectively clocked for fast switching times |
US6216223B1 (en) | 1998-01-12 | 2001-04-10 | Billions Of Operations Per Second, Inc. | Methods and apparatus to dynamically reconfigure the instruction pipeline of an indirect very long instruction word scalable processor |
US6034538A (en) | 1998-01-21 | 2000-03-07 | Lucent Technologies Inc. | Virtual logic system for reconfigurable hardware |
US6389579B1 (en) | 1998-01-26 | 2002-05-14 | Chameleon Systems | Reconfigurable logic for table lookup |
US6230307B1 (en) | 1998-01-26 | 2001-05-08 | Xilinx, Inc. | System and method for programming the hardware of field programmable gate arrays (FPGAs) and related reconfiguration resources as if they were software by creating hardware objects |
DE69919059T2 (de) | 1998-02-04 | 2005-01-27 | Texas Instruments Inc., Dallas | Datenverarbeitungssytem mit einem digitalen Signalprozessor und einem Koprozessor und Datenverarbeitungsverfahren |
US7152027B2 (en) | 1998-02-17 | 2006-12-19 | National Instruments Corporation | Reconfigurable test system |
US6086628A (en) | 1998-02-17 | 2000-07-11 | Lucent Technologies Inc. | Power-related hardware-software co-synthesis of heterogeneous distributed embedded systems |
US6198304B1 (en) | 1998-02-23 | 2001-03-06 | Xilinx, Inc. | Programmable logic device |
US6096091A (en) | 1998-02-24 | 2000-08-01 | Advanced Micro Devices, Inc. | Dynamically reconfigurable logic networks interconnected by fall-through FIFOs for flexible pipeline processing in a system-on-a-chip |
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. |
US6088800A (en) | 1998-02-27 | 2000-07-11 | Mosaid Technologies, Incorporated | Encryption processor with shared memory interconnect |
FR2776093A1 (fr) * | 1998-03-10 | 1999-09-17 | Philips Electronics Nv | Circuit processeur programmable muni d'une memoire reconfigurable, pour realiser un filtre numerique |
US6298043B1 (en) | 1998-03-28 | 2001-10-02 | Nortel Networks Limited | Communication system architecture and a connection verification mechanism therefor |
US6374286B1 (en) | 1998-04-06 | 2002-04-16 | Rockwell Collins, Inc. | Real time processor capable of concurrently running multiple independent JAVA machines |
US6421808B1 (en) | 1998-04-24 | 2002-07-16 | Cadance Design Systems, Inc. | Hardware design language for the design of integrated circuits |
US6084429A (en) | 1998-04-24 | 2000-07-04 | Xilinx, Inc. | PLD having a window pane architecture with segmented and staggered interconnect wiring between logic block arrays |
US6173419B1 (en) | 1998-05-14 | 2001-01-09 | Advanced Technology Materials, Inc. | Field programmable gate array (FPGA) emulator for debugging software |
US6449283B1 (en) | 1998-05-15 | 2002-09-10 | Polytechnic University | Methods and apparatus for providing a fast ring reservation arbitration |
US5999990A (en) | 1998-05-18 | 1999-12-07 | Motorola, Inc. | Communicator having reconfigurable resources |
US6092174A (en) | 1998-06-01 | 2000-07-18 | Context, Inc. | Dynamically reconfigurable distributed integrated circuit processor and method |
US6298396B1 (en) | 1998-06-01 | 2001-10-02 | Advanced Micro Devices, Inc. | System for loading a current buffer desciptor register with a value different from current value to cause a previously read buffer descriptor to be read again |
JP3123977B2 (ja) | 1998-06-04 | 2001-01-15 | 日本電気株式会社 | プログラマブル機能ブロック |
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 |
EP0978944B1 (en) | 1998-07-06 | 2002-01-02 | Hewlett-Packard Company, A Delaware Corporation | Wiring of cells in logic arrays |
US6609088B1 (en) | 1998-07-24 | 2003-08-19 | Interuniversitaire Micro-Elektronica Centrum | Method for determining an optimized memory organization of a digital device |
US6137307A (en) | 1998-08-04 | 2000-10-24 | Xilinx, Inc. | Structure and method for loading wide frames of data from a narrow input bus |
DE19835189C2 (de) | 1998-08-04 | 2001-02-08 | Unicor Rohrsysteme Gmbh | Vorrichtung zur kontinuierlichen Herstellung von nahtlosen Kunststoffrohren |
US20020152060A1 (en) | 1998-08-31 | 2002-10-17 | Tseng Ping-Sheng | Inter-chip communication system |
JP2000076066A (ja) | 1998-09-02 | 2000-03-14 | Fujitsu Ltd | 信号処理回路 |
US7100026B2 (en) | 2001-05-30 | 2006-08-29 | The Massachusetts Institute Of Technology | System and method for performing efficient conditional vector operations for data parallel architectures involving both input and conditional vector values |
US6205458B1 (en) | 1998-09-21 | 2001-03-20 | Rn2R, L.L.C. | Adder and multiplier circuits employing logic gates having discrete, weighted inputs and methods of performing combinatorial operations therewith |
US6421757B1 (en) * | 1998-09-30 | 2002-07-16 | Conexant Systems, Inc | Method and apparatus for controlling the programming and erasing of flash memory |
JP3551353B2 (ja) | 1998-10-02 | 2004-08-04 | 株式会社日立製作所 | データ再配置方法 |
US6215326B1 (en) | 1998-11-18 | 2001-04-10 | Altera Corporation | Programmable logic device architecture with super-regions having logic regions and a memory region |
EP1138001B1 (en) | 1998-11-20 | 2003-08-27 | Altera Corporation | Reconfigurable programmable logic device computer system |
US6977649B1 (en) | 1998-11-23 | 2005-12-20 | 3Dlabs, Inc. Ltd | 3D graphics rendering with selective read suspend |
JP2000181566A (ja) | 1998-12-14 | 2000-06-30 | Mitsubishi Electric Corp | マルチクロック並列処理装置 |
US6044030A (en) | 1998-12-21 | 2000-03-28 | Philips Electronics North America Corporation | FIFO unit with single pointer |
US6434695B1 (en) | 1998-12-23 | 2002-08-13 | Apple Computer, Inc. | Computer operating system using compressed ROM image in RAM |
US6757847B1 (en) | 1998-12-29 | 2004-06-29 | International Business Machines Corporation | Synchronization for system analysis |
US6496902B1 (en) | 1998-12-31 | 2002-12-17 | Cray Inc. | Vector and scalar data cache for a vector multiprocessor |
JP3585800B2 (ja) | 1999-01-13 | 2004-11-04 | 株式会社東芝 | 情報処理装置 |
US6539438B1 (en) | 1999-01-15 | 2003-03-25 | Quickflex Inc. | Reconfigurable computing system and method and apparatus employing same |
US6490695B1 (en) | 1999-01-22 | 2002-12-03 | Sun Microsystems, Inc. | Platform independent memory image analysis architecture for debugging a computer program |
US6321298B1 (en) | 1999-01-25 | 2001-11-20 | International Business Machines Corporation | Full cache coherency across multiple raid controllers |
DE10028397A1 (de) | 2000-06-13 | 2001-12-20 | Pact Inf Tech Gmbh | Registrierverfahren |
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 |
US6512804B1 (en) | 1999-04-07 | 2003-01-28 | Applied Micro Circuits Corporation | Apparatus and method for multiple serial data synchronization using channel-lock FIFO buffers optimized for jitter |
US6286134B1 (en) | 1999-04-23 | 2001-09-04 | Sun Microsystems, Inc. | Instruction selection in a multi-platform environment |
JP2000311156A (ja) | 1999-04-27 | 2000-11-07 | Mitsubishi Electric Corp | 再構成可能並列計算機 |
US6381624B1 (en) | 1999-04-29 | 2002-04-30 | Hewlett-Packard Company | Faster multiply/accumulator |
US6298472B1 (en) | 1999-05-07 | 2001-10-02 | Chameleon Systems, Inc. | Behavioral silicon construct architecture and mapping |
US7007096B1 (en) | 1999-05-12 | 2006-02-28 | Microsoft Corporation | Efficient splitting and mixing of streaming-data frames for processing through multiple processing modules |
US6748440B1 (en) | 1999-05-12 | 2004-06-08 | Microsoft Corporation | Flow of streaming data through multiple processing modules |
US6211697B1 (en) | 1999-05-25 | 2001-04-03 | Actel | Integrated circuit that includes a field-programmable gate array and a hard gate array having the same underlying structure |
DE19926538A1 (de) | 1999-06-10 | 2000-12-14 | Pact Inf Tech Gmbh | Hardware und Betriebsverfahren |
EP1061439A1 (en) | 1999-06-15 | 2000-12-20 | Hewlett-Packard Company | Memory and instructions in computer architecture containing processor and coprocessor |
US6757892B1 (en) | 1999-06-24 | 2004-06-29 | Sarnoff Corporation | Method for determining an optimal partitioning of data among several memories |
JP3420121B2 (ja) | 1999-06-30 | 2003-06-23 | Necエレクトロニクス株式会社 | 不揮発性半導体記憶装置 |
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 |
US6745317B1 (en) | 1999-07-30 | 2004-06-01 | Broadcom Corporation | Three level direct communication connections between neighboring multiple context processing elements |
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 |
US6204687B1 (en) | 1999-08-13 | 2001-03-20 | Xilinx, Inc. | Method and structure for configuring FPGAS |
US6438747B1 (en) | 1999-08-20 | 2002-08-20 | Hewlett-Packard Company | Programmatic iteration scheduling for parallel processors |
US6507947B1 (en) | 1999-08-20 | 2003-01-14 | Hewlett-Packard Company | Programmatic synthesis of processor element arrays |
US6606704B1 (en) | 1999-08-31 | 2003-08-12 | Intel Corporation | Parallel multithreaded processor with plural microengines executing multiple threads each microengine having loadable microcode |
US6311200B1 (en) | 1999-09-23 | 2001-10-30 | Chameleon Systems, Inc. | Reconfigurable program sum of products generator |
US6288566B1 (en) | 1999-09-23 | 2001-09-11 | Chameleon Systems, Inc. | Configuration state memory for functional blocks on a reconfigurable chip |
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 |
US6631487B1 (en) | 1999-09-27 | 2003-10-07 | Lattice Semiconductor Corp. | On-line testing of field programmable gate array resources |
DE19946752A1 (de) | 1999-09-29 | 2001-04-12 | Infineon Technologies Ag | Rekonfigurierbares Gate-Array |
US6412043B1 (en) | 1999-10-01 | 2002-06-25 | Hitachi, Ltd. | Microprocessor having improved memory management unit and cache memory |
US6598128B1 (en) | 1999-10-01 | 2003-07-22 | Hitachi, Ltd. | Microprocessor having improved memory management unit and cache memory |
US6665758B1 (en) | 1999-10-04 | 2003-12-16 | Ncr Corporation | Software sanity monitor |
US6434642B1 (en) | 1999-10-07 | 2002-08-13 | Xilinx, Inc. | FIFO memory system and method with improved determination of full and empty conditions and amount of data stored |
WO2001037083A2 (en) * | 1999-11-18 | 2001-05-25 | Sun Microsystems, Inc. | Decompression bit processing with a general purpose alignment tool |
JP2001167066A (ja) | 1999-12-08 | 2001-06-22 | Nec Corp | プロセッサ間通信方法及びマルチプロセッサシステム |
US6625654B1 (en) | 1999-12-28 | 2003-09-23 | Intel Corporation | Thread signaling in multi-threaded network processor |
US6633181B1 (en) | 1999-12-30 | 2003-10-14 | Stretch, Inc. | Multi-scale programmable array |
DE60138145D1 (de) | 2000-01-07 | 2009-05-07 | Nippon Telegraph & Telephone | Funktionsrekonfigurierbare Halbleitervorrichtung und integrierte Schaltung zum Konfigurieren der Halbleitervorrichtung |
JP2001202236A (ja) | 2000-01-20 | 2001-07-27 | Fuji Xerox Co Ltd | プログラマブル論理回路装置によるデータ処理方法、プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路再構成方法 |
US6701431B2 (en) | 2000-01-28 | 2004-03-02 | Infineon Technologies Ag | Method of generating a configuration for a configurable spread spectrum communication device |
US6496971B1 (en) | 2000-02-07 | 2002-12-17 | Xilinx, Inc. | Supporting multiple FPGA configuration modes using dedicated on-chip processor |
US6487709B1 (en) | 2000-02-09 | 2002-11-26 | Xilinx, Inc. | Run-time routing for programmable logic devices |
US6519674B1 (en) | 2000-02-18 | 2003-02-11 | Chameleon Systems, Inc. | Configuration bits layout |
JP2001236221A (ja) | 2000-02-21 | 2001-08-31 | Keisuke Shindo | マルチスレッドを利用するパイプライン並列プロセッサ |
WO2001063434A1 (en) | 2000-02-24 | 2001-08-30 | Bops, Incorporated | Methods and apparatus for dual-use coprocessing/debug interface |
JP3674515B2 (ja) | 2000-02-25 | 2005-07-20 | 日本電気株式会社 | アレイ型プロセッサ |
US6434672B1 (en) | 2000-02-29 | 2002-08-13 | Hewlett-Packard Company | Methods and apparatus for improving system performance with a shared cache memory |
US6539477B1 (en) | 2000-03-03 | 2003-03-25 | Chameleon Systems, Inc. | System and method for control synthesis using a reachable states look-up table |
KR100841411B1 (ko) | 2000-03-14 | 2008-06-25 | 소니 가부시끼 가이샤 | 전송장치, 수신장치, 전송방법, 수신방법과 기록매체 |
US6657457B1 (en) | 2000-03-15 | 2003-12-02 | Intel Corporation | Data transfer on reconfigurable chip |
US6871341B1 (en) | 2000-03-24 | 2005-03-22 | Intel Corporation | Adaptive scheduling of function cells in dynamic reconfigurable logic |
US6624819B1 (en) | 2000-05-01 | 2003-09-23 | Broadcom Corporation | Method and system for providing a flexible and efficient processor for use in a graphics processing system |
US6362650B1 (en) | 2000-05-18 | 2002-03-26 | Xilinx, Inc. | Method and apparatus for incorporating a multiplier into an FPGA |
US6373779B1 (en) | 2000-05-19 | 2002-04-16 | Xilinx, Inc. | Block RAM having multiple configurable write modes for use in a field programmable gate array |
US6725334B2 (en) | 2000-06-09 | 2004-04-20 | Hewlett-Packard Development Company, L.P. | Method and system for exclusive two-level caching in a chip-multiprocessor |
US7340596B1 (en) | 2000-06-12 | 2008-03-04 | Altera Corporation | Embedded processor with watchdog timer for programmable logic |
ATE476700T1 (de) | 2000-06-13 | 2010-08-15 | Richter Thomas | Pipeline ct-protokolle und -kommunikation |
US6285624B1 (en) | 2000-07-08 | 2001-09-04 | Han-Ping Chen | Multilevel memory access method |
DE10129237A1 (de) | 2000-10-09 | 2002-04-18 | Pact Inf Tech Gmbh | Verfahren zur Bearbeitung von Daten |
DE10036627A1 (de) | 2000-07-24 | 2002-02-14 | Pact Inf Tech Gmbh | Integrierter Schaltkreis |
JP2002041489A (ja) | 2000-07-25 | 2002-02-08 | Mitsubishi Electric Corp | 同期信号生成回路、それを用いたプロセッサシステムおよび同期信号生成方法 |
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) |
US6542844B1 (en) | 2000-08-02 | 2003-04-01 | International Business Machines Corporation | Method and apparatus for tracing hardware states using dynamically reconfigurable test circuits |
AU2001283549A1 (en) | 2000-08-07 | 2002-02-18 | Altera Corporation | Software-to-hardware compiler |
US6754805B1 (en) | 2000-08-07 | 2004-06-22 | Transwitch Corporation | Method and apparatus for configurable multi-cell digital signal processing employing global parallel configuration |
EP1182559B1 (en) | 2000-08-21 | 2009-01-21 | Texas Instruments Incorporated | Improved microprocessor |
US7249351B1 (en) | 2000-08-30 | 2007-07-24 | Broadcom Corporation | System and method for preparing software for execution in a dynamically configurable hardware environment |
US6829697B1 (en) | 2000-09-06 | 2004-12-07 | International Business Machines Corporation | Multiple logical interfaces to a shared coprocessor resource |
US6538470B1 (en) | 2000-09-18 | 2003-03-25 | Altera Corporation | Devices and methods with programmable logic and digital signal processing regions |
US7346644B1 (en) | 2000-09-18 | 2008-03-18 | Altera Corporation | Devices and methods with programmable logic and digital signal processing regions |
US6518787B1 (en) | 2000-09-21 | 2003-02-11 | Triscend Corporation | Input/output architecture for efficient configuration of programmable input/output cells |
AU2002220600A1 (en) | 2000-10-06 | 2002-04-15 | Pact Informationstechnologie Gmbh | Cell system with segmented intermediate cell structure |
US6525678B1 (en) | 2000-10-06 | 2003-02-25 | Altera Corporation | Configuring a programmable logic device |
US20040015899A1 (en) | 2000-10-06 | 2004-01-22 | Frank May | Method for processing data |
US20020045952A1 (en) | 2000-10-12 | 2002-04-18 | Blemel Kenneth G. | High performance hybrid micro-computer |
US6398383B1 (en) | 2000-10-30 | 2002-06-04 | Yu-Hwei Huang | Flashlight carriable on one's person |
JP3636986B2 (ja) | 2000-12-06 | 2005-04-06 | 松下電器産業株式会社 | 半導体集積回路 |
GB2370380B (en) | 2000-12-19 | 2003-12-31 | Picochip Designs Ltd | Processor architecture |
JP4022147B2 (ja) | 2000-12-20 | 2007-12-12 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 設定可能な機能ユニットを備えるデータ処理装置 |
US6483343B1 (en) | 2000-12-29 | 2002-11-19 | Quicklogic Corporation | Configurable computational unit embedded in a programmable device |
US6426649B1 (en) | 2000-12-29 | 2002-07-30 | Quicklogic Corporation | Architecture for field programmable gate array |
US6392912B1 (en) | 2001-01-10 | 2002-05-21 | Chameleon Systems, Inc. | Loading data plane on reconfigurable chip |
US7020673B2 (en) | 2001-01-19 | 2006-03-28 | Sony Corporation | Reconfigurable arithmetic device and arithmetic system including that arithmetic device and address generation device and interleave device applicable to arithmetic system |
US20020099759A1 (en) | 2001-01-24 | 2002-07-25 | Gootherts Paul David | Load balancer with starvation avoidance |
US6633242B2 (en) * | 2001-02-08 | 2003-10-14 | Sun Microsystems, Inc. | Entropy coding using adaptable prefix codes |
US6847370B2 (en) | 2001-02-20 | 2005-01-25 | 3D Labs, Inc., Ltd. | Planar byte memory organization with linear access |
US7444531B2 (en) | 2001-03-05 | 2008-10-28 | Pact Xpp Technologies Ag | Methods and devices for treating and processing data |
US7210129B2 (en) | 2001-08-16 | 2007-04-24 | Pact Xpp Technologies Ag | Method for translating programs for reconfigurable architectures |
GB2373595B (en) * | 2001-03-15 | 2005-09-07 | Italtel Spa | A system of distributed microprocessor interfaces toward macro-cell based designs implemented as ASIC or FPGA bread boarding and relative common bus protocol |
US7325123B2 (en) * | 2001-03-22 | 2008-01-29 | Qst Holdings, Llc | Hierarchical interconnect for configuring separate interconnects for each group of fixed and diverse computational elements |
US6836839B2 (en) * | 2001-03-22 | 2004-12-28 | Quicksilver Technology, Inc. | Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements |
US20020143505A1 (en) | 2001-04-02 | 2002-10-03 | Doron Drusinsky | Implementing a finite state machine using concurrent finite state machines with delayed communications and no shared control signals |
US6792588B2 (en) | 2001-04-02 | 2004-09-14 | Intel Corporation | Faster scalable floorplan which enables easier data control flow |
US20030086300A1 (en) | 2001-04-06 | 2003-05-08 | Gareth Noyes | FPGA coprocessing system |
US6836842B1 (en) | 2001-04-24 | 2004-12-28 | Xilinx, Inc. | Method of partial reconfiguration of a PLD in which only updated portions of configuration data are selected for reconfiguring the PLD |
US6999984B2 (en) | 2001-05-02 | 2006-02-14 | Intel Corporation | Modification to reconfigurable functional unit in a reconfigurable chip to perform linear feedback shift register function |
US6802026B1 (en) | 2001-05-15 | 2004-10-05 | Xilinx, Inc. | Parameterizable and reconfigurable debugger core generators |
US6976239B1 (en) | 2001-06-12 | 2005-12-13 | Altera Corporation | Methods and apparatus for implementing parameterizable processors and peripherals |
JP2004533691A (ja) | 2001-06-20 | 2004-11-04 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | データを処理するための方法 |
JP3580785B2 (ja) | 2001-06-29 | 2004-10-27 | 株式会社半導体理工学研究センター | ルックアップテーブル、ルックアップテーブルを備えるプログラマブル論理回路装置、および、ルックアップテーブルの構成方法 |
US7043416B1 (en) | 2001-07-27 | 2006-05-09 | Lsi Logic Corporation | System and method for state restoration in a diagnostic module for a high-speed microprocessor |
US7383421B2 (en) | 2002-12-05 | 2008-06-03 | Brightscale, Inc. | Cellular engine for a data processing system |
US7036114B2 (en) | 2001-08-17 | 2006-04-25 | Sun Microsystems, Inc. | Method and apparatus for cycle-based computation |
US6868476B2 (en) | 2001-08-27 | 2005-03-15 | Intel Corporation | Software controlled content addressable memory in a general purpose execution datapath |
US7216204B2 (en) | 2001-08-27 | 2007-05-08 | Intel Corporation | Mechanism for providing early coherency detection to enable high performance memory updates in a latency sensitive multithreaded environment |
US6874108B1 (en) | 2001-08-27 | 2005-03-29 | Agere Systems Inc. | Fault tolerant operation of reconfigurable devices utilizing an adjustable system clock |
US20030056091A1 (en) | 2001-09-14 | 2003-03-20 | Greenberg Craig B. | Method of scheduling in a reconfigurable hardware architecture with multiple hardware configurations |
US7472230B2 (en) | 2001-09-14 | 2008-12-30 | Hewlett-Packard Development Company, L.P. | Preemptive write back controller |
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 |
US6854073B2 (en) | 2001-09-25 | 2005-02-08 | International Business Machines Corporation | Debugger program time monitor |
US6625631B2 (en) * | 2001-09-28 | 2003-09-23 | Intel Corporation | Component reduction in montgomery multiplier processing element |
US6798239B2 (en) | 2001-09-28 | 2004-09-28 | Xilinx, Inc. | Programmable gate array having interconnecting logic to support embedded fixed logic circuitry |
US7000161B1 (en) | 2001-10-15 | 2006-02-14 | Altera Corporation | Reconfigurable programmable logic system with configuration recovery mode |
WO2003044962A2 (en) | 2001-11-16 | 2003-05-30 | Morpho Technologies | Viterbi convolutional coding method and apparatus |
US6886092B1 (en) | 2001-11-19 | 2005-04-26 | Xilinx, Inc. | Custom code processing in PGA by providing instructions from fixed logic processor portion to programmable dedicated processor portion |
US6668237B1 (en) | 2002-01-17 | 2003-12-23 | Xilinx, Inc. | Run-time reconfigurable testing of programmable logic devices |
US20030154349A1 (en) | 2002-01-24 | 2003-08-14 | Berg Stefan G. | Program-directed cache prefetching for media processors |
US6476634B1 (en) | 2002-02-01 | 2002-11-05 | Xilinx, Inc. | ALU implementation in single PLD logic cell |
DE10204044A1 (de) | 2002-02-01 | 2003-08-14 | Tridonicatco Gmbh & Co Kg | Elektronisches Vorschaltgerät für Gasentladungslampe |
US6961924B2 (en) | 2002-05-21 | 2005-11-01 | International Business Machines Corporation | Displaying variable usage while debugging |
WO2005010632A2 (en) | 2003-06-17 | 2005-02-03 | Pact Xpp Technologies Ag | Data processing device and method |
US6865662B2 (en) * | 2002-08-08 | 2005-03-08 | Faraday Technology Corp. | Controlling VLIW instruction operations supply to functional units using switches based on condition head field |
US6976131B2 (en) | 2002-08-23 | 2005-12-13 | Intel Corporation | Method and apparatus for shared cache coherency for a chip multiprocessor or multiprocessor system |
US6803787B1 (en) | 2002-09-25 | 2004-10-12 | Lattice Semiconductor Corp. | State machine in a programmable logic device |
US7873811B1 (en) | 2003-03-10 | 2011-01-18 | The United States Of America As Represented By The United States Department Of Energy | Polymorphous computing fabric |
US7412581B2 (en) | 2003-10-28 | 2008-08-12 | Renesas Technology America, Inc. | Processor for virtual machines and method therefor |
US7472155B2 (en) | 2003-12-29 | 2008-12-30 | Xilinx, Inc. | Programmable logic device with cascading DSP slices |
US7870182B2 (en) | 2003-12-29 | 2011-01-11 | Xilinx Inc. | Digital signal processing circuit having an adder circuit with carry-outs |
US7840627B2 (en) | 2003-12-29 | 2010-11-23 | Xilinx, Inc. | Digital signal processing circuit having input register blocks |
US8495122B2 (en) | 2003-12-29 | 2013-07-23 | Xilinx, Inc. | Programmable device with dynamic DSP architecture |
US7567997B2 (en) | 2003-12-29 | 2009-07-28 | Xilinx, Inc. | Applications of cascading DSP slices |
US7038952B1 (en) | 2004-05-04 | 2006-05-02 | Xilinx, Inc. | Block RAM with embedded FIFO buffer |
US7759968B1 (en) | 2006-09-27 | 2010-07-20 | Xilinx, Inc. | Method of and system for verifying configuration data |
DE102006054052B4 (de) | 2006-11-16 | 2018-11-29 | Siemens Aktiengesellschaft | Drehübertrager |
US7971051B2 (en) | 2007-09-27 | 2011-06-28 | Fujitsu Limited | FPGA configuration protection and control using hardware watchdog timer |
US20090193384A1 (en) | 2008-01-25 | 2009-07-30 | Mihai Sima | Shift-enabled reconfigurable device |
WO2009094862A1 (fr) | 2008-01-29 | 2009-08-06 | Jiangsu Super-Power Machinery Co., Lt | Compresseur rotatif |
JP2010277303A (ja) | 2009-05-28 | 2010-12-09 | Renesas Electronics Corp | 半導体装置及び異常検出方法 |
-
2004
- 2004-08-30 WO PCT/EP2004/009640 patent/WO2005045692A2/en active Application Filing
- 2004-08-30 EP EP04803091A patent/EP1676208A2/en not_active Withdrawn
- 2004-08-30 JP JP2006524345A patent/JP4700611B2/ja not_active Expired - Fee Related
-
2009
- 2009-02-19 US US12/389,274 patent/US8812820B2/en active Active
-
2010
- 2010-06-01 US US12/791,322 patent/US20100241823A1/en not_active Abandoned
-
2014
- 2014-08-19 US US14/462,858 patent/US20140359255A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01501671A (ja) * | 1986-11-07 | 1989-06-08 | コンカーレント・ロジック・インコーポレーテッド | プログラム可能なロジック・セルおよびアレイ |
JPH0369138A (ja) * | 1989-05-02 | 1991-03-25 | Tandem Comput Inc | 線形配列ウェーハ規模集積回路アーキテクチャ |
JPH05119964A (ja) * | 1991-04-02 | 1993-05-18 | American Teleph & Telegr Co <Att> | 配置可能機能エレメント |
JP2001510650A (ja) * | 1996-12-27 | 2001-07-31 | ペーアーツェーテー インフォルマツィオーンステヒノロギー ゲゼルシャフト ミット ベシュレンクテル ハフツング | データフロープロセッサ(dfp)の自動的なダイナミックアンロード方法並びに2次元または3次元のプログラミング可能なセルストラクチャを有するモジュール(fpga,dpga等) |
JP2002033457A (ja) * | 2000-07-18 | 2002-01-31 | Hitachi Ltd | 半導体集積回路装置 |
WO2002071196A2 (de) * | 2001-03-05 | 2002-09-12 | Pact Informationstechnologie Gmbh | Verfahren und vorrichtung zu datenbe- und/oder verarbeitung |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009027324A (ja) * | 2007-07-18 | 2009-02-05 | Fuji Xerox Co Ltd | 演算処理装置及び演算処理プログラム |
JP2010002986A (ja) * | 2008-06-18 | 2010-01-07 | Nec Corp | 再構成可能電子回路装置 |
Also Published As
Publication number | Publication date |
---|---|
JP4700611B2 (ja) | 2011-06-15 |
US20140359255A1 (en) | 2014-12-04 |
WO2005045692A2 (en) | 2005-05-19 |
US20100241823A1 (en) | 2010-09-23 |
US8812820B2 (en) | 2014-08-19 |
EP1676208A2 (en) | 2006-07-05 |
US20090172351A1 (en) | 2009-07-02 |
WO2005045692A3 (en) | 2006-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4700611B2 (ja) | データ処理装置およびデータ処理方法 | |
US8145881B2 (en) | Data processing device and method | |
Baumgarte et al. | PACT XPP—A self-reconfigurable data processing architecture | |
Mai et al. | Smart memories: A modular reconfigurable architecture | |
Jacob et al. | Memory interfacing and instruction specification for reconfigurable processors | |
US5301340A (en) | IC chips including ALUs and identical register files whereby a number of ALUs directly and concurrently write results to every register file per cycle | |
Lodi et al. | A VLIW processor with reconfigurable instruction set for embedded applications | |
US8230408B2 (en) | Execution of hardware description language (HDL) programs | |
Enzler et al. | Virtualizing hardware with multi-context reconfigurable arrays | |
JP5762440B2 (ja) | 高効率の埋め込み型均一マルチコアプラットフォーム用のタイルベースのプロセッサアーキテクチャーモデル | |
WO2005045692A9 (en) | Data processing device and method | |
Nguyen et al. | Fifer: Practical acceleration of irregular applications on reconfigurable architectures | |
US20090119484A1 (en) | Method and Apparatus for Implementing Digital Logic Circuitry | |
Gohringer et al. | Runtime adaptive multi-processor system-on-chip: RAMPSoC | |
Hartenstein et al. | On reconfgurable co-processing units | |
Smit et al. | The chameleon architecture for streaming DSP applications | |
US9003168B1 (en) | Control system for resource selection between or among conjoined-cores | |
Balfour | Efficient embedded computing | |
Rettkowski et al. | Application-specific processing using high-level synthesis for networks-on-chip | |
Poznanovic | The emergence of non-von neumann processors | |
Gurumani et al. | Integrated CUDA-to-FPGA synthesis with Network-on-Chip | |
Tse et al. | NanoMesh: An asynchronous kilo-core system-on-chip | |
Cathey et al. | A reconfigurable distributed computing fabric exploiting multilevel parallelism | |
Fell et al. | Streaming FFT on REDEFINE-v2: An application-architecture design space exploration | |
Walstock | Pipelining streaming applications on a multi-core CGRA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070727 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100415 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100712 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100720 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100812 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100819 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100913 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100921 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101015 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101112 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20101228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110112 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110304 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |