JP3801214B2 - 再構成可能な演算システム - Google Patents

再構成可能な演算システム Download PDF

Info

Publication number
JP3801214B2
JP3801214B2 JP51054098A JP51054098A JP3801214B2 JP 3801214 B2 JP3801214 B2 JP 3801214B2 JP 51054098 A JP51054098 A JP 51054098A JP 51054098 A JP51054098 A JP 51054098A JP 3801214 B2 JP3801214 B2 JP 3801214B2
Authority
JP
Japan
Prior art keywords
dram
array
configuration
bit
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP51054098A
Other languages
English (en)
Other versions
JP2000516418A (ja
Inventor
チャッター,マケッシュ
Original Assignee
ネオ・ラム・リミテッド・ライアビリティー・カンパニー
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ネオ・ラム・リミテッド・ライアビリティー・カンパニー filed Critical ネオ・ラム・リミテッド・ライアビリティー・カンパニー
Publication of JP2000516418A publication Critical patent/JP2000516418A/ja
Application granted granted Critical
Publication of JP3801214B2 publication Critical patent/JP3801214B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Logic Circuits (AREA)
  • Dram (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Electrotherapy Devices (AREA)

Description

本発明は再構成可能な演算に関し、より詳細には、専ら書き換え可能ゲートアレイ(FPGA)及び同様の構造に関するのではない、再構成可能な演算に関する。
発明の背景
書き換え可能ゲートアレイ(FPGA)として公知である、再構成可能ゲートアレイは、産業界で広く使用され、種々のデジタル回路を動作させる。その応用範囲は、コンピュータ、ワークステーション、制御システム等を含む。代表的な従来のFPGAデバイスは、特定の設計要求を満足するように構成される幾つかの論理セルからなる。プログラムされていないFPGAは、後述するような所定の論理セル構造からなる。これらのセルは各々、特定のタスク(論理回路)を実行するように構成され、所望の機能性を達成する。一般にプログラム情報は、比較的遅いプロセス(幾つかのデバイスは、さらに非常に遅いプロセスである8ビット長バスを介してロードされ、)としてFPGA内に連続的にロードされ、典型的には分散スタティックRAM(SRAM)として実行される構成記憶素子によって、電力がデバイスに供給されている限りは、プログラム情報は内部に維持される。またこのデバイスは、前述した再構成データの遅い連続ロードを含む予め定められたプログラムシーケンスに続くことによって、電力が加えられると、再構成することが可能となる。例としては、従来のFPGAである、Xilinx CorporationのデバイスXC4025は、422,128ビットのプログラム情報を必要とし、ほぼ42msでデバイスのプログラム(再構成)を完了する。
FPGAが一度電力が入れられるだけでプログラムされ、再構成性が問題ではない、ある種のアプリケーションに対しては、この相当に大きな構成時間は一般に容認され得る。しかし再構成時間が実質上縮められるとしても、性能を著しく向上させることができる他の種類のアプリケーションの要求を満足させることができない。この問題は、リアルタイムシミュレーション、双対プロセッサ、デジタル信号処理、他の種々のアルゴリズム等を含む、全ての型式のアプリケーションにあてはまる。
本発明は、最近の再構成の制限及びそれに関する問題を排除することを意図し、また結果的にオンザフライ変更可能チップもしくは他の論理構成を提供するような、多くのアプリケーションに対して実質上万能に利用することができる、非常に高められたシステム性能を低コストで提供することを意図する。
特に高速コンピュータ及びワークステーションの、非常に多くのこのようなシステム設計は、機能ユニットの固定構造のために、それらの特定のドメインを外れる如何なる動作の実行も幾分遅らせる、シミュレーションのようなアプリケーションのあるクラスの性能を確実に制限する。このような問題は、「オンザフライ」再構成性により最もよく解決されるが、これはさらに再構成に必要な時間のために未解決の部分を残す。
したがってある種の広く利用されるアプリケーションが必要とする動的再構成可能論理に対する低コスト、高性能装置の可能性は、十分に分かりにくいまま残った。この問題は、これらの問題を排除し、このように特に低コストで相当に高い性能を提供する、革新的な自己更新オンザフライ再構成可能FPGA構成をここで提供する本発明の出現まで、解決されなかった。
実例となるシミュレーション及び双対プロセッサが、これらの問題及び本発明がその問題を克服する方法のより一層の理解のために例として以下に示されるが、本発明はこれらの例示の範囲にのみ限定されて論じられるものではない。
シミュレーションアプリケーション例
大規模デジタル集積回路設計は、その不経済性及び組立サイクルでの時間の浪費以前に、組立後正確に機能するその機会を最大化するようにシミュレートされる。この設計は、刺激を与えて応答を認めることによって、全ての可能な入力状態を高性能エンジニアリングワークステーションで広く照会する。応答が予想された結果と一致しなければ、この設計は正当性に対して照会される。この繰り返されるプロセスは、全ての可能な予定の計画が確認されるまで続けられる。シミュレーションは、極度に時間を浪費し、不経済であり、市場への時間を余計にかけるが、しかしこの問題は、設計技法の欠くことのできない部分であり、一般に大規模シミュレーションタスクを何人かの技術者の間で分配して結果をまとめることにより成し遂げられる。この分配してまとめる方法は、実質上より高いコストでタスクの速度向上がなされるにも関わらず、非常にエラーを生じやすいプロセスである。最近のIntel Pentiumマイクロプロセッサの浮動小数点ユニットにともなう失敗は適例である。
例として、次世代CPUとしての、2つのクロックサイクルで2つの32ビット数を加えて設計された、新しい高速機能ユニットを考える。このソフトウエアを基にしたゲートレベルシミュレーションは、高速ワークステーションで幾千ものクロックサイクルを取る。多重動作サイクルがこのような新しい機能ユニット設計に対して照会することが必要であるならば、現行の設計の動作よりも非常に劣る結果の遅れは、全シミュレーションの相当な時間を消費する。
この問題に対する他のアプローチは、外部ハードウエアを介して接続される非常に多くの数の従来のFPGA上に設計がマッピングされる、「設計エミュレーション」(例えばQuick Turn Corporationのエミュレーションパンフレットに記載される)であり、これは動作速度よりもより一層遅い速度でリアルタイムで実行される。このエミュレーション装置は非常に高価であり、各エミュレーションサイクルに対して設定するために長時間を必要とし、時に現行の設計でさえも全くマップすることができず、したがって広範に使用できない。
演算アプリケーション例
説明的な背景用途として、複雑な反復型64ビット乗算機能が付加的な機能により引き続いて行われ、1024のサンプルに対して32ビットCPUによって実行される演算アプリケーション例を考える。CPUはこのタスクを実行する専用機能ユニットを備えないので、このタスクは64ビット乗算の多重ステップ32ビット実施を含む種々のサブタスクに分割され、結果は多重32ビット加算を実行することにより他の64ビット数に加えられる。このプロセスは1024回繰り返される。明らかにこの実行はCPU時間の相当な時間数を消費し、それによって実質上性能は低下する。
確かにこれらの及び同様な火急の問題の効果的な解法に対して、本発明は向けられ、この発明は、新しい型式のFPGA及び関係した構成の展開及び方法の展開において解決をなすと信じられ、本発明は:
a.純然たるデバイス速度よりはむしろ新規な構成をオンザフライ再構成性に与え;
b.能率的な高速パイプライン実施を考慮する自己変更性能を与え;
c.チップの内部に非常に多くの数の構成を格納し;
d.与えられた機能性に対して少ない数のピンを与え;
e.ピンの総数を減少させるために相応の低コストを与え;さらに
f.単純なシステムインタフェースを与えて設計努力を最小とする。
発明の目的
したがって本発明の目的は、新規のDRAMを基にした構成制御構造を利用し、一方低コストで非常に高められたシステム性能を与える、それによって無数のアプリケーションに対して実質上万能に利用可能である、新しくかつ改良された動的再構成可能ゲートアレイシステム、構造、方法を提供することであり、この制御構造は、これらの上記の及び関係する問題を含む再構成性の制限を除去する。
他の目的は、所定の基準を基にした論理実行を自己変更する方法及び装置を提供することである。
さらなる目的は、非常に多くのメモリが、再構成時間が従来のアプローチよりも4桁も速く、かつ特に低コストであるように、FPGAの内部で利用することができ、かつわずかな数のピンにアクセスされる、このような新規のシステムを提供することである。
さらに他の目的は、非再構成及び再構成どちらのアプリケーションにおいても等しく効果的に作用する、この新規な構造を基にしたシステムを提供することである。
他の及びさらなる目的は、これ以降に明らかにされ、添付される請求項により詳細に記される。
要約
より広範は観点の1つから、要約すれば、結合された構成ビットメモリによって制御される論理機能を各々有するプログラム可能論理セルのアレイを構成する方法を本発明は高める。ビットメモリは、DRAMコア内で多重プログラム構成を画定するビット情報を格納し;アレイにバスを接続して所望の構成を画定するビット情報を備えるセルの構成ビットメモリのDRAM行長ロードを可能にし;さらに構成コマンド上で、DRAMコアから少なくとも一度に一行、構成ビット情報を検索し、セルのビットメモリにこのような情報をロードして対応するセル論理機能を所望の構成プログラムが達成されるように制御する。
好適な及び最適な態様の設計及び技術はこれ以降に詳細が説明される。
図面
さらに本発明が、添付の図面に関連して記述される。添付の図面の内で図1〜3は、従来の技術を説明する。
図1は、代表的な従来技術のFPGAインタフェースのブロックダイアグラムである;
図2は、代表的な従来技術のFPGA内部論理セル構造もしくはアレイ、及びチャンネルの経路を示す;
図3は、図2のような構成において使用される、代表的な従来技術の構成可能論理セルを図解する;
図4は、本発明にしたがって構成され、ここでは「SONAL」構造と称する構造の部分的な上面のブロックダイアグラムであり、この「SONAL」なる用語は自己変更オンザフライ可変論理を意味する;
図5は、自己変更論理機能の実行を可能にするこのような新規の構造のブロックダイアグラムである;
図6は、また本発明にしたがって構成されるシステム構造のブロックダイアグラムであり、本発明が「SONAL」FPGAと称する、自己変更「オンザフライ」可変論理を具現化している;
図7は、本発明の「SONAL」FPGAに対して有効なピンアウトの例を示す;
図8は、図7に言及する前の「SONAL」FPGAの変更であり、「PARAS」と呼ばれるインタフェース及びアクセスとの使用に適合し、1994年10月7日出願の同時係続中の米国特許出願第08/320,058号に開示され、少ない数のピンでメモリ構造が集積されている。
発明の好適実施例
さらに再構成遅延及び、この新しい「SONAL」にしたがって他の前述された障害を排除するような本発明を開示することを目的とする。この新しい「SONAL」は、FPGAの再構成において消費する総時間数を劇的に減少させることにより、所望であれば自己変更形態を提供することにより解法の中心であり、それによって外部の介入なしに機能変更でき、その結果大変に速い実行時間が得られる。他の利点は、FPGA内部に大規模メモリを利用できることが含まれ、結果として前述のようにシステムのコストが縮小される。
前述のように図1は、主メモリと共に動作するCPUによってラベル付けされ、バスシステムを介してプログラムされるFPGAユニット(#1〜#n)を利用する従来技術のFPGAインタフェースを示す。FPGAユニットは、内部論理セル構造もしくはアレイ及び図2のチャンネル経路を備え、内部論理セルは図3に示されるような結合される構成静的RAM(SRAM)によって制御される論理機能を有する各構成可能論理セルを備え、そこで構成データが静的RAMビットの内部に配置される縮小部分に格納される。しかしながら本発明においては、図4に示すようにDRAMコアが使用されて多重構成を格納する。またデバイス構成に対して要求される構成SRAMビットが与えられる。DRAMの行長バス(ここで使用されるような用語「行」は行の部分又は小数部を包含する)が与えられ、これは、プログラム可能な要素をその後さらに制御する、SRAMビットに直接接続される。構成コマンドが与えられた後、全ての必要な構成記憶素子がロードされてしまうまで、行は常に検索されて前記SRAMビット内に格納される。一部分の再構成は、変更される必要のあるそれらのSRAMビットをロードすることにのみによって達成される。この発明のさらなる改良は、変更される必要のあるビットのみが構成SRAM内にロード可能となるように、マスクする機能を与える。またチップの動作中、DRAM内に新たな構成データをロードすることも可能である。また同じDRAMが、外部I/O双方からもしくは内部論理を介してアクセス可能である記憶空間として使用可能である。外部インタフェース側からは、狭いI/O長データインタフェースを備えるが、内部ではその行長バスは、1つのアクセスにおいて行長データの格納/検索の最大を使用可能である。一度行が内部に選択されると、非常に高速度でコラムデータにアクセスする機能がステートマシーン処理に対してこれを仮想空間とする。従来と等しい行の数及びコラムアプローチに従う必要はなく、ある場合にはコラムを区別するような行に向かう相当なバイアスを備える構造を有することが有利であり、より速い動的な再構成さえ考慮される。全ての機能性は例として最もよく例示される。
全てのそのプログラム可能な素子を構成するのに32768ビット必要とされ、それが再構成可能である際に、10MHzの最大シリアルレートを備える従来のFPGAを考える。さらにこの再構成時間はおおよそ3.3msである。対応する「SONAL」が、図4に示すようにその構造の部分として、256K×8DRAMコアからなると仮定する。再構成コマンドを受信後、4096ビット(1行あたり512ビット×8ビット長)からなる行は、「SONAL」FPGA内で検索され、対応する構成SRAMビット内に格納される。この行検索及び次の格納プロセスは、この例では8回繰り返され、全ての要求構成SRAMビットがロードされる。行検索レートが40nsであれば、合計320nsがFPGAの再構成を完了するのに必要とされる。これは3.3msを必要とする今日の現行のFPGA解法を越える本発明の最も大きな利点である。したがって本発明は、従来のアプローチをおおよそ4桁上回る改良を提供する。さらにバスは、対応する性能の低下を伴って、最大限の行長を有さずに、前述のようにここで依然として「行」と称される行の部分とすることが可能であることに注意されなければならない。
「SONAL」のこの速い再構成時間は、デバイスを構成するのに「r」行が必要とされ、行を検索するのに「t」ナノ秒かかるとするような多重DRAMバンク「m」コを組み込むことによって、さらに向上させることが可能である。この場合
構成時間=r×t/m
である。
構成SRAMビットを備える1つの理由はDRAMコアの再生要求にある。部分に集中したDRAMセルによってこれらSRAMビットを置き換えることもまた確実に可能であるが、しかしこれは再生要求によって生じる干渉のために好ましい解法ではない。これらのビットの除去は、コスト及びデバイスの電力消費を低減させる。本発明の代替的な実施態様は、DRAMの2つの同一のバンクを使用することに関し、同一の構成データがそれらの双方にロードされる。行が全部のFPGAを構成するのに十分なデータを提供すると仮定すると、SRAMビットは必要とされず;1つのバンクが再生されるともう一方のバンクが構成データを提供する。この概念は、「m/2」バンクが同一の構成情報を他の「m/2」バンクとして有するような、「m」バンクに拡張することが可能である。
このデバイスの1つのアプリケーションにおいて、多重化されたデータの逐次流れは、パラレルフォーマットに変換されて同時にDRAM行に異なる所定のコラムアドレスでロードされる、その構成要素である逐次流れの中に分配可能である。
本発明の他の代替的な実施態様では、他の内部バンクが一般用途メモリに関して使用されるのみであるのに対して、内部DRAMバンクが再構成データに関して使用され、それにより双方のバンクが同じインタフェースを介して外部にアクセスしてコストを最小とする。
本発明のさらに他の実施態様では、自己変更回路が、図5に示される1つの可能な実施とともに設計可能である。ここで各行アドレス特有にデコードする必要がビットの数に等しいデータ長を備える小さなSRAMは、DRAMの選択された行アドレスを駆動する。この自己変更構造内に位置するSRAMコアアドレスの数は、再構成機能の必要とされる深度に支配される。この場合例えば、32×9SRAMとして示されている。FPGA制御論理によって駆動される、このSRAMコアに対して5アドレスビットが存在する。論理セルアレイからの構成データビットコマンドに応答してもしくは適当な事象又はある論理状態が遭遇する他の時点で、SRAMコアの出力は行長構成データ検索するのに使用される。この新しい実施は、種々の回路素子の状態を仮定し、結果としてすでに他の回路機能の実施を生じる;その他諸々、機械的にSRAMコアアドレス入力を駆動する、異なる制御論理を備えることができる。したがってチップの機能は、ある論理状態の結果を仮定して所定の論理実施に動的に変更可能である。この技術は、結合されるCPUから最小の介入を必要とする、したがって全体のシステム性能を著しく向上する高効率自己変更回路を提供し、またこの技術は、パイプライン設計等のデジタル信号処理アルゴリズムにおいて広範なアプリケーションを有する。1つの潜在的なアプリケーションは、大規模なパイプライン設計を多重構成にセグメント化することであり、これらの構成は処理ハードウエアによって要求されるようにロードされる。これはゲートの再使用のための設計を実行するのに要求されるゲートの数を著しく減少させ、それによってチップコストが減少する。非常に高速の「オンザフライ」自己変更機能の故にのみ達成可能である。
またSRAMコアはフラッシュメモリもしくはEEPROMのような他の技術とともに実施することも可能である。
システムレベルにおいて、このような多重「SONAL」デバイスは、システムバスに接続可能であり、図6に示すように機械の性能を高めることが可能である。再構成もしくは自己変更回路に対するこのオンザフライアプローチは、FPGAのみに制限されず、同様の再構成可能素子からなるCPUの部分とすることも可能であることに注意されなければならない。
例えばプラットフォームから独立しているように特に設計され、それによって種々の機械の中で完全な可搬性を提供する「JAVA」(最も広く使用されるインターネット言語)を考える。種々のCPUの特有の構造性能の利点を受けることができないので、「JAVA」は極めて遅く実行する点で不利である。「JAVA」の実効速度を向上させる1つのアプローチは、それを与えることにより、(従来のCPU機能に付加して)共通の仮想ハードウエアプラットフォームを非常に高速で変更可能とすることである。この仮想ハードウエアは、どちらかのCPU自体の「SONAL」性能を再構成可能性に与えることにより実行されもしくは独立した「SONAL」FPGAとして実行される。したがってこの構造は、より高速の実行を提供してもなお、プラットフォームから独立するキーエレメントを持ち続ける。
「SONAL」I/Oインタフェース
チップはその特有の構造を示す幾分異なるピンアウトを備える。独立したアドレスとデータバスを備える従来のDRAMインタフェースを与える、1つの可能なピンアウトが図7に例示される。256K×8DRAMを備える「SONAL」の例を考える。従来のDRAMアクセスアプローチを使用すると、21ピン(アドレスのために9ピン、データのために8ピン、「RAS」、「CAS」、「書込」、「出力可能」のそれぞれに対して1ピン)が必要とされる。またFPGAセルとDRAMコアの間の内部転送が発生するときには常に、「待ち」信号がシステムバスインタフェースに与えられる。CPU(もしくは他の主コントローラ)は、アクセスの開始を遅らせるようにどちらもそれを使用することができ、もしくは交互に実行する際には、このアクセスを続ける前に、内部転送が完了するようにアクセスサイクルを延長することが可能である。さらに本発明の改良は、ピンの数すなわちコストを減少させることができる。前記係属中の出願の、「PARAS」DRAMと呼ばれるインタフェースアクセス機構が「SONAL」と一緒に使用される。[この出願は、新規なインタフェース及びアクセス方法によって非同期及び同期のダイナミックランダムアクセスメモリのアクセス性能を向上させるための方法及び装置を開示し、そこでは同一のピンが、行、コラム、データアクセスに対して、読出及び書込どちらのサイクルにおいても使用され;このような効果的な機能が、より少数のピンによって実質上同一の寸法のパッケージ内でデータのバンド幅及びアドレス範囲を増加させる。]このような「PARAS」モデルを使用して、わずか13ピン及び「待ち」に関する1ピンが図8に示されるように必要とされる。さらに構成データがロードされてしまった後DRAMとアクセスする必要がない及びこれにより外部アクセスが必要とされないアプリケーションにおいて、同じピンが従来のFPGA I/Oピンとして使用可能であることに注意されなければならない。
また行及びコラムアドレスを多重サブアドレスに分割することにより、またデータ及び制御ピンを同じライン上で共有することにより、I/Oピンの数をさらに減少させることが可能である。これは明らかにCPUのような外部デバイスからのアクセス時間を減速させるが、より少ないピン数、低減されたコスト、動作中のオンザフライ変更可能FPGAを提供する。
「SONAL」を使用するシミュレーションアプリケーション
例として、2つの32ビット数を2クロックサイクルで加算可能な高速32ビット加算器が次世代CPUに対して設計され、ワークステーションが双対プロセッサとして動作する「SONAL」型式のFPGAを備えるとすれば、典型的には加算器シミュレーションは幾つかのクロックサイクルをとる。好適な実施態様によれば、「SONAL」は動的に再構成することが可能であり、さらにこのような構成された「SONAL」でリアルタイムにタスクを実行することにより、この機能を照会することが可能である。これは、典型的には何千回ものサイクルを行う、「SONAL」アプローチのない従来のワークステーションに十分に匹敵する。
「SONAL」を使用する演算アプリケーション
背景を説明する目的に対して、複雑な反復型64ビット乗算機能が加算機能に引続く、演算アプリケーション例を使用すると、この例が1024サンプルに対して32ビットCPUにより実行されるならば、「SONAL」を備えるCPUは、ステップにおいて反復64ビット機能を実行する機能が限定されたユニットとして動作してそれを構成し、それによって既に記述された従来のアプローチに比較される機械の性能が実質上向上する。
したがって本発明を利用するこのような新規のFPGA構造の利点は、既に示されたように、純然たるデバイス速度よりはむしろ構造上の考案を有するオンザフライ再構成の提供であり;効率的な高速パイプライン実施を見越す自己変更性能;チップの内部に多くの構成を格納すること;ピンの数の減少のために比較的低コストで、提供される機能に対するピンの数を減少させること;及び現行のFPGAユニットとほぼ同一のシステム設計インタフェースを提供すること、したがって設計サイクルを最小とする。
またさらなる変更が当業の熟練者に思い起こされ、その変更とは、ネットワーク、マルチメディア、他のアプリケーションに関してDRAM内に高速シリアルデータロードを可能にする論理を提供すること、外部デバイスよりもむしろCPUそれ自体の部分としてこのアプローチを実行すること、もしくはFPGAとは異なるデバイスに高速再構成に関して内部接続とともに外部DRAMインタフェースを適用することの中で行われ、これらを含むが、このような変更は添付の請求の範囲に定義されるような発明の精神及び範囲の内にあると見なされる。

Claims (26)

  1. 接続される構成ビットメモリによって制御される論理機能を各々備えるプログラム可能論理セルのアレイを構成する方法であって、
    DRAMコアに多重プログラム構成を画定するビット情報を格納するステップ;
    アレイをバスに接続して、所望の構成を画定するビット情報を備えるセルの構成ビットメモリのDRAM行長ロードを可能にするステップ;
    さらに構成コマンドによって、DRAMコアから少なくとも一度に1行構成ビット情報を検索して、この情報をセルのビットメモリにロードして所望の構成プログラムが達成されるように対応するセル論理機能を制御するステップを含む方法。
  2. 一度に1行検索されてロードされるステップが、再構成オンザフライ可能である、請求項1記載の方法。
  3. アレイがFPGAデバイスからなり、論理セルビットメモリがSRAM分割ビットからなる、請求項1記載の方法。
  4. 論理セルのアレイによる機能の完了によって、ビットコマンドが発生してアレイの新しく所望される機能を指示し;
    追加のメモリコアがDRAM行のビットアドレスを含むことを提供し、次の機能ビットコマンドに応答しかつ対応してDRAMを駆動するように接続され、構成ビット情報を検索してロードすることがセルのビットメモリ内の前記次の機能を表し、対応するセル論理機能を制御し、それによって次の機能を実行するようにアレイを自己変更する、請求項1記載の方法。
  5. 前記自己変更することが、次に続く所望の機能コマンドによって機械的に続けられる、請求項4記載の方法。
  6. 部分的な再構成が、変更を必要とするSRAMビットにのみロードされることによって達成される、請求項3記載の方法。
  7. またDRAMコアが、外部I/Oインタフェース及び内部論理双方からアクセス可能な記憶空間として使用される、請求項1記載の方法。
  8. 外部にインタフェースする際に、内部行長バスが1つのアクセスにおける行長データの最大を格納し/検索し;
    さらに一度行が内部で選択されると迅速にコラムデータにアクセスする、請求項7記載の方法。
  9. デバイスが動作中に新しい構成データが、DRAMコア内にロードされる、請求項1記載の方法。
  10. 接続される構成ビットメモリによって制御される論理機能を各々備えるプログラム可能論理セルのアレイを構成する装置であって、
    多重プログラム構成を画定するビット情報を格納するためのDRAMコアと;
    所望の構成を画定するビット情報を備える論理セルのアレイの構成ビットメモリのDRAM行長ロードを可能にするように、アレイとDRAMを内部接続するバスと;
    構成コマンドを発生するための手段と;
    さらにこのような構成コマンドによって、このような構成コマンドに応答して、DRAMコアから少なくとも一度に1行構成ビット情報を検索するための手段と;
    さらに前記論理セルのビットメモリにこの情報をロードして、所望の構成プログラムを達成するように対応するセル論理機能を制御するための手段とを組み合わせて備える装置。
  11. アレイがFPGAデバイスからなり、論理セルビットメモリがSRAM分割ビットからなる、請求項10記載の装置。
  12. アクセス制御回路が、DRAMコア内に接続され、論理セルのアレイから及び外部DRAMインタフェースから内部に生じる構成コマンドに応答してDRAM仲裁及び再生論理モジュールの双方もしくは一方に接続される、請求項10記載の装置。
  13. アクセス制御回路が、DRAM内部に接続され、DRAM行アドレス特有にデコードされるように要求されるビットの数に等しいデータ長からなるSRAMメモリコアユニットから発生するDRAM行アドレスに対応するデータビットに応答して、それによってDRAM内部に選択された行アドレスを駆動し、さらにSRAMユニットが、論理セルのアレイからアドレスビット構成コマンド信号を受信するように接続される、請求項11記載の装置。
  14. 前記構成コマンド信号が、アレイの次に所望される機能に関する新しい構成として、論理セルのアレイによって機能の完了で発生され;
    さらに指定されるDRAM行アドレスによって、アクセス制御手段からDRAMコアを対応してデコードし;
    DRAMコアから戻るように、論理セルのビットメモリに、前記次の機能を表す構成ビット情報をロードするための手段と、それによって対応するセル論理機能を制御し、したがって次の機能を実行するようにアレイを自己再構成し、この自己再構成が後に続く所望の機能コマンドによって機械的に続けられる、請求項13記載の装置。
  15. 論理セルアレイが5アドレスビットを発生し、SRAMユニットがDRAM行アドレスに対応する9データビットを発生し、SRAMユニットが32×9ビットからなる、請求項14記載の装置。
  16. 機能の完了によって、論理セルアレイが、アレイの次の所望の機能を表すようにビットコマンドを発生し;
    DRAM行のビットアドレスからなる追加のメモリコアをさらに与え、前記次の機能ビットコマンドに応答するように、かつアレイのセルのビットメモリに前記次の機能を表す構成ビット情報を検索してロードするように対応してDRAMを駆動するようにアレイとDRAMコアの間に接続され、それによって前記次の機能を実行するアレイの自己再構成が可能となる、請求項10記載の装置。
  17. 追加のメモリコアがSRAMコアを含む、請求項16記載の装置。
  18. 前記自己再構成が次に続く所望の機能コマンドによって機械的に続けられる、請求項16記載の装置。
  19. 部分的な再構成のみが達成され、ロード手段が変更を必要とするSRAMビットのみにロードする、請求項11記載の装置。
  20. またDRAMコアが、外部I/Oインタフェース及び内部論理双方からアクセス可能な記憶空間として使用される、請求項10記載の装置。
  21. 外部にインタフェースする際に、内部行長バスが1つのアクセスにおける行長データの最大を格納し/検索し;
    さらに一度行が内部で選択されると手段が迅速にコラムデータにアクセスするように与えられる、請求項20記載の装置。
  22. アレイがプログラム可能なデバイスの部分であり、新しい構成データが、デバイスの動作中にDRAMコア内にロードされる、請求項10記載の装置。
  23. デバイスがFPGAを含む、請求項22記載の装置。
  24. 一度に1行の検索及びロードが、再構成オンザフライを可能とする、請求項11記載の装置。
  25. DRAMの2つの一致するバンクが、互いの中にロードされる一致する構成データを与える、請求項11記載の装置。
  26. 1つのバンクが再生されたそのDRAMコアを備える際、他方のバンクが構成データを与える、請求項24記載の装置。
JP51054098A 1996-08-21 1997-08-12 再構成可能な演算システム Expired - Fee Related JP3801214B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/700,966 US5838165A (en) 1996-08-21 1996-08-21 High performance self modifying on-the-fly alterable logic FPGA, architecture and method
US08/700,966 1996-08-21
PCT/IB1997/000987 WO1998008306A1 (en) 1996-08-21 1997-08-12 Reconfigurable computing system

Publications (2)

Publication Number Publication Date
JP2000516418A JP2000516418A (ja) 2000-12-05
JP3801214B2 true JP3801214B2 (ja) 2006-07-26

Family

ID=24815539

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51054098A Expired - Fee Related JP3801214B2 (ja) 1996-08-21 1997-08-12 再構成可能な演算システム

Country Status (11)

Country Link
US (1) US5838165A (ja)
EP (1) EP0931380B1 (ja)
JP (1) JP3801214B2 (ja)
KR (1) KR100458371B1 (ja)
CN (1) CN1188948C (ja)
AT (1) ATE220263T1 (ja)
AU (1) AU3705297A (ja)
CA (1) CA2264060C (ja)
DE (1) DE69713784T2 (ja)
HK (1) HK1023458A1 (ja)
WO (1) WO1998008306A1 (ja)

Families Citing this family (226)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943242A (en) * 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
DE19651075A1 (de) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
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
DE59710317D1 (de) 1996-12-27 2003-07-24 Pact Inf Tech Gmbh VERFAHREN ZUM SELBSTÄNDIGEN DYNAMISCHEN UMLADEN VON DATENFLUSSPROZESSOREN (DFPs) SOWIE BAUSTEINEN MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN (FPGAs, DPGAs, o.dgl.)
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.)
DE19704728A1 (de) 1997-02-08 1998-08-13 Pact Inf Tech Gmbh Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
DE19704742A1 (de) * 1997-02-11 1998-09-24 Pact Inf Tech Gmbh Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand
US6160419A (en) * 1997-11-03 2000-12-12 Altera Corporation Programmable logic architecture incorporating a content addressable embedded array block
US6011407A (en) * 1997-06-13 2000-01-04 Xilinx, Inc. Field programmable gate array with dedicated computer bus interface and method for configuring both
US6092123A (en) * 1997-07-17 2000-07-18 International Business Machines Corporation Method and apparatus for changing functions of a hardware device using two or more communication channels
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US6034542A (en) * 1997-10-14 2000-03-07 Xilinx, Inc. Bus structure for modularized chip with FPGA modules
US5923892A (en) * 1997-10-27 1999-07-13 Levy; Paul S. Host processor and coprocessor arrangement for processing platform-independent code
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
US6034538A (en) * 1998-01-21 2000-03-07 Lucent Technologies Inc. Virtual logic system for reconfigurable hardware
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.
US6038627A (en) * 1998-03-16 2000-03-14 Actel Corporation SRAM bus architecture and interconnect to an FPGA
US7146441B1 (en) * 1998-03-16 2006-12-05 Actel Corporation SRAM bus architecture and interconnect to an FPGA
US6237129B1 (en) 1998-03-27 2001-05-22 Xilinx, Inc. Method for constraining circuit element positions in structured layouts
US6292925B1 (en) 1998-03-27 2001-09-18 Xilinx, Inc. Context-sensitive self implementing modules
US6243851B1 (en) 1998-03-27 2001-06-05 Xilinx, Inc. Heterogeneous method for determining module placement in FPGAs
US6216258B1 (en) 1998-03-27 2001-04-10 Xilinx, Inc. FPGA modules parameterized by expressions
US6430732B1 (en) 1998-03-27 2002-08-06 Xilinx, Inc. Method for structured layout in a hardware description language
US6260182B1 (en) * 1998-03-27 2001-07-10 Xilinx, Inc. Method for specifying routing in a logic module by direct module communication
US6332215B1 (en) 1998-12-08 2001-12-18 Nazomi Communications, Inc. Java virtual machine hardware for RISC and CISC processors
US20050149694A1 (en) * 1998-12-08 2005-07-07 Mukesh Patel Java hardware accelerator using microcode engine
US7225436B1 (en) 1998-12-08 2007-05-29 Nazomi Communications Inc. Java hardware accelerator using microcode engine
US6826749B2 (en) 1998-12-08 2004-11-30 Nazomi Communications, Inc. Java hardware accelerator using thread manager
US6081473A (en) * 1998-12-15 2000-06-27 Lattice Semiconductor Corporation FPGA integrated circuit having embedded sram memory blocks each with statically and dynamically controllable read mode
US6262596B1 (en) * 1999-04-05 2001-07-17 Xilinx, Inc. Configuration bus interface circuit for FPGAS
JP2003505753A (ja) 1999-06-10 2003-02-12 ペーアーツェーテー インフォルマツィオーンステヒノロギー ゲゼルシャフト ミット ベシュレンクテル ハフツング セル構造におけるシーケンス分割方法
US6347346B1 (en) * 1999-06-30 2002-02-12 Chameleon Systems, Inc. Local memory unit system with global access for use on reconfigurable chips
DE19946752A1 (de) * 1999-09-29 2001-04-12 Infineon Technologies Ag Rekonfigurierbares Gate-Array
US6555398B1 (en) * 1999-10-22 2003-04-29 Magic Corporation Software programmable multiple function integrated circuit module
US6438737B1 (en) * 2000-02-15 2002-08-20 Intel Corporation Reconfigurable logic for a computer
DE10018374A1 (de) * 2000-04-13 2001-10-18 Siemens Ag Mobiles Endgerät
EP2226732A3 (de) * 2000-06-13 2016-04-06 PACT XPP Technologies AG Cachehierarchie für einen Multicore-Prozessor
US7119576B1 (en) 2000-09-18 2006-10-10 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
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
KR20020028814A (ko) * 2000-10-10 2002-04-17 나조미 커뮤니케이션즈, 인코포레이티드 마이크로코드 엔진을 이용한 자바 하드웨어 가속기
DE10105987A1 (de) * 2001-02-09 2002-08-29 Infineon Technologies Ag Datenverarbeitungsvorrichtung
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
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
US7752419B1 (en) 2001-03-22 2010-07-06 Qst Holdings, Llc Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US7653710B2 (en) 2002-06-25 2010-01-26 Qst Holdings, Llc. Hardware task manager
US8843928B2 (en) 2010-01-21 2014-09-23 Qst Holdings, Llc Method and apparatus for a general-purpose, multiple-core system for implementing stream-based computations
US7962716B2 (en) 2001-03-22 2011-06-14 Qst Holdings, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific 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
US7249242B2 (en) 2002-10-28 2007-07-24 Nvidia Corporation Input pipeline registers for a node in an adaptive computing engine
US6577678B2 (en) 2001-05-08 2003-06-10 Quicksilver Technology Method and system for reconfigurable channel coding
JP3561506B2 (ja) * 2001-05-10 2004-09-02 東京エレクトロンデバイス株式会社 演算システム
US7657877B2 (en) 2001-06-20 2010-02-02 Pact Xpp Technologies Ag Method for processing data
US10031733B2 (en) * 2001-06-20 2018-07-24 Scientia Sol Mentis Ag Method for processing data
US6574130B2 (en) 2001-07-25 2003-06-03 Nantero, Inc. Hybrid circuit having nanotube electromechanical memory
US6706402B2 (en) 2001-07-25 2004-03-16 Nantero, Inc. Nanotube films and articles
US6643165B2 (en) 2001-07-25 2003-11-04 Nantero, Inc. Electromechanical memory having cell selection circuitry constructed with nanotube technology
US6919592B2 (en) 2001-07-25 2005-07-19 Nantero, Inc. Electromechanical memory array using nanotube ribbons and method for making same
US6911682B2 (en) 2001-12-28 2005-06-28 Nantero, Inc. Electromechanical three-trace junction devices
US7259410B2 (en) 2001-07-25 2007-08-21 Nantero, Inc. Devices having horizontally-disposed nanofabric articles and methods of making the same
US6835591B2 (en) 2001-07-25 2004-12-28 Nantero, Inc. Methods of nanotube films and articles
US6924538B2 (en) 2001-07-25 2005-08-02 Nantero, Inc. Devices having vertically-disposed nanofabric articles and methods of making the same
US7566478B2 (en) 2001-07-25 2009-07-28 Nantero, Inc. Methods of making carbon nanotube films, layers, fabrics, ribbons, elements and articles
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US8769508B2 (en) 2001-08-24 2014-07-01 Nazomi Communications Inc. Virtual machine hardware for RISC and CISC processors
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US7380100B2 (en) * 2001-09-07 2008-05-27 Ipflex Inc. Data processing system and control method utilizing a plurality of date transfer means
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US6901473B2 (en) * 2001-10-16 2005-05-31 Sun Microsystems, Inc. Apparatus and method for configuring an external device
US7046635B2 (en) 2001-11-28 2006-05-16 Quicksilver Technology, Inc. System for authorizing functionality in adaptable hardware devices
US8412915B2 (en) 2001-11-30 2013-04-02 Altera Corporation Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements
US6986021B2 (en) 2001-11-30 2006-01-10 Quick Silver Technology, Inc. Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US7215701B2 (en) 2001-12-12 2007-05-08 Sharad Sambhwani Low I/O bandwidth method and system for implementing detection and identification of scrambling codes
US6784028B2 (en) * 2001-12-28 2004-08-31 Nantero, Inc. Methods of making electromechanical three-trace junction devices
US7176505B2 (en) 2001-12-28 2007-02-13 Nantero, Inc. Electromechanical three-trace junction devices
US7403981B2 (en) * 2002-01-04 2008-07-22 Quicksilver Technology, Inc. Apparatus and method for adaptive multimedia reception and transmission in communication environments
DE10392560D2 (de) 2002-01-19 2005-05-12 Pact Xpp Technologies Ag Reconfigurierbarer Prozessor
DE50310198D1 (de) 2002-02-18 2008-09-04 Pact Xpp Technologies Ag Bussysteme und rekonfigurationsverfahren
US7386717B2 (en) * 2002-03-07 2008-06-10 Intel Corporation Method and system for accelerating the conversion process between encryption schemes
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US7335395B2 (en) 2002-04-23 2008-02-26 Nantero, Inc. Methods of using pre-formed nanotubes to make carbon nanotube films, layers, fabrics, ribbons, elements and articles
US7660984B1 (en) 2003-05-13 2010-02-09 Quicksilver Technology Method and system for achieving individualized protected space in an operating system
US7328414B1 (en) 2003-05-13 2008-02-05 Qst Holdings, Llc Method and system for creating and programming an adaptive computing engine
US7024654B2 (en) 2002-06-11 2006-04-04 Anadigm, Inc. System and method for configuring analog elements in a configurable hardware device
US20040133795A1 (en) * 2002-07-26 2004-07-08 Eric Murray Method and system for handling multiple security protocols in a processing system
WO2004021176A2 (de) 2002-08-07 2004-03-11 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US8108656B2 (en) 2002-08-29 2012-01-31 Qst Holdings, Llc Task definition for specifying resource requirements
US6978435B2 (en) 2002-08-29 2005-12-20 Anadigm, Inc. Apparatus for programming a programmable device, and method
US20040044988A1 (en) * 2002-08-29 2004-03-04 Schene Christopher Robin Generation of compiled code for simulator speed up
US20040122643A1 (en) * 2002-08-29 2004-06-24 Anderson Howard C. Apparatus and method for simulating switched-capacitor circuits
WO2004038599A1 (de) 2002-09-06 2004-05-06 Pact Xpp Technologies Ag Rekonfigurierbare sequenzerstruktur
US7937591B1 (en) 2002-10-25 2011-05-03 Qst Holdings, Llc Method and system for providing a device which can be adapted on an ongoing basis
US8276135B2 (en) 2002-11-07 2012-09-25 Qst Holdings Llc Profiling of software and circuit designs utilizing data operation analyses
US7225301B2 (en) 2002-11-22 2007-05-29 Quicksilver Technologies External memory controller node
US7560136B2 (en) 2003-01-13 2009-07-14 Nantero, Inc. Methods of using thin metal layers to make carbon nanotube films, layers, fabrics, ribbons, elements and articles
JP4700611B2 (ja) 2003-08-28 2011-06-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データ処理装置およびデータ処理方法
US7860915B2 (en) 2003-12-29 2010-12-28 Xilinx, Inc. Digital signal processing circuit having a pattern circuit for determining termination conditions
US7472155B2 (en) 2003-12-29 2008-12-30 Xilinx, Inc. Programmable logic device with cascading DSP slices
US7882165B2 (en) 2003-12-29 2011-02-01 Xilinx, Inc. Digital signal processing element having an arithmetic logic unit
US7840630B2 (en) * 2003-12-29 2010-11-23 Xilinx, Inc. Arithmetic logic unit circuit
US7480690B2 (en) 2003-12-29 2009-01-20 Xilinx, Inc. Arithmetic circuit with multiplexed addend inputs
US7467175B2 (en) 2003-12-29 2008-12-16 Xilinx, Inc. Programmable logic device with pipelined DSP slices
US7853634B2 (en) 2003-12-29 2010-12-14 Xilinx, Inc. Digital signal processing circuit having a SIMD circuit
US8495122B2 (en) 2003-12-29 2013-07-23 Xilinx, Inc. Programmable device with dynamic DSP architecture
US7870182B2 (en) 2003-12-29 2011-01-11 Xilinx Inc. Digital signal processing circuit having an adder circuit with carry-outs
US7849119B2 (en) 2003-12-29 2010-12-07 Xilinx, Inc. Digital signal processing circuit having a pattern detector circuit
US7865542B2 (en) 2003-12-29 2011-01-04 Xilinx, Inc. Digital signal processing block having a wide multiplexer
US7853636B2 (en) 2003-12-29 2010-12-14 Xilinx, Inc. Digital signal processing circuit having a pattern detector circuit for convergent rounding
US7844653B2 (en) 2003-12-29 2010-11-30 Xilinx, Inc. Digital signal processing circuit having a pre-adder circuit
US7567997B2 (en) 2003-12-29 2009-07-28 Xilinx, Inc. Applications of cascading DSP slices
US7853632B2 (en) 2003-12-29 2010-12-14 Xilinx, Inc. Architectural floorplan for a digital signal processing circuit
US7840627B2 (en) 2003-12-29 2010-11-23 Xilinx, Inc. Digital signal processing circuit having input register blocks
US7987312B2 (en) * 2004-07-30 2011-07-26 Via Technologies, Inc. Method and apparatus for dynamically determining bit configuration
US7346759B1 (en) 2004-08-06 2008-03-18 Xilinx, Inc. Decoder interface
US7546441B1 (en) 2004-08-06 2009-06-09 Xilinx, Inc. Coprocessor interface controller
US7590823B1 (en) * 2004-08-06 2009-09-15 Xilinx, Inc. Method and system for handling an instruction not supported in a coprocessor formed using configurable logic
US7590822B1 (en) 2004-08-06 2009-09-15 Xilinx, Inc. Tracking an instruction through a processor pipeline
JP4527571B2 (ja) * 2005-03-14 2010-08-18 富士通株式会社 再構成可能演算処理装置
JP4900717B2 (ja) * 2005-05-31 2012-03-21 富士ゼロックス株式会社 再構成可能な装置
US8386722B1 (en) 2008-06-23 2013-02-26 Google Inc. Stacked DIMM memory interface
GB2441726B (en) * 2005-06-24 2010-08-11 Metaram Inc An integrated memory core and memory interface circuit
US7386656B2 (en) 2006-07-31 2008-06-10 Metaram, Inc. Interface circuit system and method for performing power management operations in conjunction with only a portion of a memory circuit
US7609567B2 (en) 2005-06-24 2009-10-27 Metaram, Inc. System and method for simulating an aspect of a memory circuit
US9507739B2 (en) 2005-06-24 2016-11-29 Google Inc. Configurable memory circuit system and method
US8796830B1 (en) 2006-09-01 2014-08-05 Google Inc. Stackable low-profile lead frame package
US8041881B2 (en) 2006-07-31 2011-10-18 Google Inc. Memory device with emulated characteristics
US8081474B1 (en) 2007-12-18 2011-12-20 Google Inc. Embossed heat spreader
US8077535B2 (en) 2006-07-31 2011-12-13 Google Inc. Memory refresh apparatus and method
US8397013B1 (en) 2006-10-05 2013-03-12 Google Inc. Hybrid memory module
US8244971B2 (en) 2006-07-31 2012-08-14 Google Inc. Memory circuit system and method
US8335894B1 (en) 2008-07-25 2012-12-18 Google Inc. Configurable memory system with interface circuit
US10013371B2 (en) 2005-06-24 2018-07-03 Google Llc Configurable memory circuit system and method
US9542352B2 (en) 2006-02-09 2017-01-10 Google Inc. System and method for reducing command scheduling constraints of memory circuits
US8438328B2 (en) 2008-02-21 2013-05-07 Google Inc. Emulation of abstracted DIMMs using abstracted DRAMs
US8060774B2 (en) 2005-06-24 2011-11-15 Google Inc. Memory systems and memory modules
US20080082763A1 (en) 2006-10-02 2008-04-03 Metaram, Inc. Apparatus and method for power management of memory circuits by a system or component thereof
US8327104B2 (en) 2006-07-31 2012-12-04 Google Inc. Adjusting the timing of signals associated with a memory system
US8055833B2 (en) 2006-10-05 2011-11-08 Google Inc. System and method for increasing capacity, performance, and flexibility of flash storage
US8169233B2 (en) 2009-06-09 2012-05-01 Google Inc. Programming of DIMM termination resistance values
US8089795B2 (en) 2006-02-09 2012-01-03 Google Inc. Memory module with memory stack and interface with enhanced capabilities
US8130560B1 (en) 2006-11-13 2012-03-06 Google Inc. Multi-rank partial width memory modules
US20080028136A1 (en) 2006-07-31 2008-01-31 Schakel Keith R Method and apparatus for refresh management of memory modules
US9171585B2 (en) 2005-06-24 2015-10-27 Google Inc. Configurable memory circuit system and method
US8359187B2 (en) 2005-06-24 2013-01-22 Google Inc. Simulating a different number of memory circuit devices
US8090897B2 (en) 2006-07-31 2012-01-03 Google Inc. System and method for simulating an aspect of a memory circuit
US8111566B1 (en) 2007-11-16 2012-02-07 Google, Inc. Optimal channel design for memory devices for providing a high-speed memory interface
JP5242397B2 (ja) 2005-09-02 2013-07-24 メタラム インコーポレイテッド Dramをスタックする方法及び装置
US8620980B1 (en) 2005-09-27 2013-12-31 Altera Corporation Programmable device with specialized multiplier blocks
JP4909588B2 (ja) 2005-12-28 2012-04-04 日本電気株式会社 情報処理装置及び再構成デバイスの利用方法
EP1974265A1 (de) 2006-01-18 2008-10-01 PACT XPP Technologies AG Hardwaredefinitionsverfahren
US8041759B1 (en) 2006-02-09 2011-10-18 Altera Corporation Specialized processing block for programmable logic device
US8266198B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US9632929B2 (en) 2006-02-09 2017-04-25 Google Inc. Translating an address associated with a command communicated between a system and memory circuits
US8301681B1 (en) 2006-02-09 2012-10-30 Altera Corporation Specialized processing block for programmable logic device
US8266199B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US7836117B1 (en) 2006-04-07 2010-11-16 Altera Corporation Specialized processing block for programmable logic device
US7539967B1 (en) 2006-05-05 2009-05-26 Altera Corporation Self-configuring components on a device
US7822799B1 (en) 2006-06-26 2010-10-26 Altera Corporation Adder-rounder circuitry for specialized processing block in programmable logic device
US7724589B2 (en) 2006-07-31 2010-05-25 Google Inc. System and method for delaying a signal communicated from a system to at least one of a plurality of memory circuits
US8386550B1 (en) 2006-09-20 2013-02-26 Altera Corporation Method for configuring a finite impulse response filter in a programmable logic device
US7930336B2 (en) 2006-12-05 2011-04-19 Altera Corporation Large multiplier for programmable logic device
US8386553B1 (en) 2006-12-05 2013-02-26 Altera Corporation Large multiplier for programmable logic device
US7814137B1 (en) 2007-01-09 2010-10-12 Altera Corporation Combined interpolation and decimation filter for programmable logic device
US7865541B1 (en) 2007-01-22 2011-01-04 Altera Corporation Configuring floating point operations in a programmable logic device
US8650231B1 (en) 2007-01-22 2014-02-11 Altera Corporation Configuring floating point operations in a programmable device
US8645450B1 (en) 2007-03-02 2014-02-04 Altera Corporation Multiplier-accumulator circuitry and methods
JP4852149B2 (ja) * 2007-05-21 2012-01-11 ルネサスエレクトロニクス株式会社 半導体装置
WO2008142767A1 (ja) * 2007-05-21 2008-11-27 Renesas Technology Corp. 半導体装置
US8209479B2 (en) 2007-07-18 2012-06-26 Google Inc. Memory circuit system and method
US7949699B1 (en) 2007-08-30 2011-05-24 Altera Corporation Implementation of decimation filter in integrated circuit device using ram-based data storage
US8080874B1 (en) 2007-09-14 2011-12-20 Google Inc. Providing additional space between an integrated circuit and a circuit board for positioning a component therebetween
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US8244789B1 (en) 2008-03-14 2012-08-14 Altera Corporation Normalization of floating point operations in a programmable integrated circuit device
US8626815B1 (en) 2008-07-14 2014-01-07 Altera Corporation Configuring a programmable integrated circuit device to perform matrix multiplication
US8255448B1 (en) 2008-10-02 2012-08-28 Altera Corporation Implementing division in a programmable integrated circuit device
US8307023B1 (en) 2008-10-10 2012-11-06 Altera Corporation DSP block for implementing large multiplier on a programmable integrated circuit device
US8479133B2 (en) 2009-01-27 2013-07-02 Xilinx, Inc. Method of and circuit for implementing a filter in an integrated circuit
US8543635B2 (en) 2009-01-27 2013-09-24 Xilinx, Inc. Digital signal processing block with preadder stage
US8886696B1 (en) 2009-03-03 2014-11-11 Altera Corporation Digital signal processing circuitry with redundancy and ability to support larger multipliers
US8468192B1 (en) 2009-03-03 2013-06-18 Altera Corporation Implementing multipliers in a programmable integrated circuit device
US8549055B2 (en) 2009-03-03 2013-10-01 Altera Corporation Modular digital signal processing circuitry with optionally usable, dedicated connections between modules of the circuitry
US8706790B1 (en) 2009-03-03 2014-04-22 Altera Corporation Implementing mixed-precision floating-point operations in a programmable integrated circuit device
US8645449B1 (en) 2009-03-03 2014-02-04 Altera Corporation Combined floating point adder and subtractor
US8805916B2 (en) 2009-03-03 2014-08-12 Altera Corporation Digital signal processing circuitry with redundancy and bidirectional data paths
US8650236B1 (en) 2009-08-04 2014-02-11 Altera Corporation High-rate interpolation or decimation filter in integrated circuit device
US8396914B1 (en) 2009-09-11 2013-03-12 Altera Corporation Matrix decomposition in an integrated circuit device
US8412756B1 (en) 2009-09-11 2013-04-02 Altera Corporation Multi-operand floating point operations in a programmable integrated circuit device
US7948267B1 (en) 2010-02-09 2011-05-24 Altera Corporation Efficient rounding circuits and methods in configurable integrated circuit devices
US8539016B1 (en) 2010-02-09 2013-09-17 Altera Corporation QR decomposition in an integrated circuit device
US8601044B2 (en) 2010-03-02 2013-12-03 Altera Corporation Discrete Fourier Transform in an integrated circuit device
US8458243B1 (en) 2010-03-03 2013-06-04 Altera Corporation Digital signal processing circuit blocks with support for systolic finite-impulse-response digital filtering
US8484265B1 (en) 2010-03-04 2013-07-09 Altera Corporation Angular range reduction in an integrated circuit device
US8510354B1 (en) 2010-03-12 2013-08-13 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8539014B2 (en) 2010-03-25 2013-09-17 Altera Corporation Solving linear matrices in an integrated circuit device
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8589463B2 (en) 2010-06-25 2013-11-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8577951B1 (en) 2010-08-19 2013-11-05 Altera Corporation Matrix operations in an integrated circuit device
WO2012022496A2 (en) 2010-08-19 2012-02-23 Per Sonne Holm Method for killing tumor stem cells
US9582266B2 (en) 2011-02-28 2017-02-28 Microsemi SoC Corporation Apparatus and methods for in-application programming of flash-based programable logic devices
US8645451B2 (en) 2011-03-10 2014-02-04 Altera Corporation Double-clocked specialized processing block in an integrated circuit device
US9600278B1 (en) 2011-05-09 2017-03-21 Altera Corporation Programmable device using fixed and configurable logic to implement recursive trees
US8812576B1 (en) 2011-09-12 2014-08-19 Altera Corporation QR decomposition in an integrated circuit device
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8762443B1 (en) 2011-11-15 2014-06-24 Altera Corporation Matrix operations in an integrated circuit device
BR112014024312B1 (pt) * 2012-03-30 2022-04-12 Intel Corporation Sistema e método de implementação de uma matriz de dispositivo programável em um sistema eletrônico
US8543634B1 (en) 2012-03-30 2013-09-24 Altera Corporation Specialized processing block for programmable integrated circuit device
US9098332B1 (en) 2012-06-01 2015-08-04 Altera Corporation Specialized processing block with fixed- and floating-point structures
US8996600B1 (en) 2012-08-03 2015-03-31 Altera Corporation Specialized processing block for implementing floating-point multiplier with subnormal operation support
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
KR102032895B1 (ko) 2013-01-28 2019-11-08 삼성전자주식회사 기능 유닛들 간의 기능 로직 공유 장치, 방법 및 재구성 가능 프로세서
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
CN104636151B (zh) * 2013-11-06 2018-06-05 京微雅格(北京)科技有限公司 基于应用存储器的fpga芯片配置结构和配置方法
CN104636290B (zh) * 2013-11-06 2018-05-25 京微雅格(北京)科技有限公司 基于多配置链组的fpga芯片配置结构和配置方法
US9379687B1 (en) 2014-01-14 2016-06-28 Altera Corporation Pipelined systolic finite impulse response filter
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
US20180081834A1 (en) * 2016-09-16 2018-03-22 Futurewei Technologies, Inc. Apparatus and method for configuring hardware to operate in multiple modes during runtime
US10242728B2 (en) * 2016-10-27 2019-03-26 Samsung Electronics Co., Ltd. DPU architecture
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device
CN111459874A (zh) * 2020-04-02 2020-07-28 京微齐力(北京)科技有限公司 一种现场可编程门阵列配置闪存的复用方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62269422A (ja) * 1986-05-16 1987-11-21 Matsushita Electric Ind Co Ltd 半導体装置
JPS62269420A (ja) * 1986-05-16 1987-11-21 Matsushita Electric Ind Co Ltd 半導体装置
US4831573A (en) * 1987-03-06 1989-05-16 Altera Corporation Programmable integrated circuit micro-sequencer device
US4940909A (en) * 1989-05-12 1990-07-10 Plus Logic, Inc. Configuration control circuit for programmable logic devices
EP0877385B1 (en) * 1992-07-02 2001-10-17 Atmel Corporation Non-disruptive, randomly addressable memory system
GB9223226D0 (en) * 1992-11-05 1992-12-16 Algotronix Ltd Improved configurable cellular array (cal ii)
US5317212A (en) * 1993-03-19 1994-05-31 Wahlstrom Sven E Dynamic control of configurable logic
US5504440A (en) * 1994-01-27 1996-04-02 Dyna Logic Corporation High speed programmable logic architecture
US5430687A (en) * 1994-04-01 1995-07-04 Xilinx, Inc. Programmable logic device including a parallel input device for loading memory cells
US5426378A (en) * 1994-04-20 1995-06-20 Xilinx, Inc. Programmable logic device which stores more than one configuration and means for switching configurations
US5581198A (en) * 1995-02-24 1996-12-03 Xilinx, Inc. Shadow DRAM for programmable logic devices
US5646544A (en) * 1995-06-05 1997-07-08 International Business Machines Corporation System and method for dynamically reconfiguring a programmable gate array

Also Published As

Publication number Publication date
US5838165A (en) 1998-11-17
EP0931380A1 (en) 1999-07-28
ATE220263T1 (de) 2002-07-15
WO1998008306A1 (en) 1998-02-26
JP2000516418A (ja) 2000-12-05
EP0931380B1 (en) 2002-07-03
CA2264060C (en) 2008-01-08
AU3705297A (en) 1998-03-06
KR20000068256A (ko) 2000-11-25
CN1188948C (zh) 2005-02-09
CA2264060A1 (en) 1998-02-26
DE69713784D1 (de) 2002-08-08
KR100458371B1 (ko) 2004-11-26
HK1023458A1 (en) 2000-09-08
DE69713784T2 (de) 2003-03-13
CN1234923A (zh) 1999-11-10

Similar Documents

Publication Publication Date Title
JP3801214B2 (ja) 再構成可能な演算システム
TWI706256B (zh) 加速器控制器及其方法
US10203878B2 (en) Near memory accelerator
US7237091B2 (en) Multiprocessor computer architecture incorporating a plurality of memory algorithm processors in the memory subsystem
US5652904A (en) Non-reconfigurable microprocessor-emulated FPGA
AU2002318809B2 (en) Integrated circuit device
JP3587095B2 (ja) 情報処理装置
JPH05502125A (ja) 後入れ先出しスタックを備えるマイクロプロセッサ、マイクロプロセッサシステム、及び後入れ先出しスタックの動作方法
CN111433758A (zh) 可编程运算与控制芯片、设计方法及其装置
JP7381429B2 (ja) ストレージ周辺の階層的ソート加速のためのストレージシステム及び方法
JPH05224929A (ja) コンピユータ、パイプライン処理方法及び命令処理方法
KR20200108774A (ko) 순환 큐 기반의 명령어 메모리를 포함하는 메모리 장치 및 그 동작방법
JP2022548641A (ja) システムオンチップ及びアクセラレータチップを接続するメモリチップ
US20200293452A1 (en) Memory device and method including circular instruction memory queue
US8607029B2 (en) Dynamic reconfigurable circuit with a plurality of processing elements, data network, configuration memory, and immediate value network
Zhang et al. DRAM-less: Hardware acceleration of data processing with new memory
JPS6027965A (ja) 記憶システム
US7400550B2 (en) Delay mechanism for unbalanced read/write paths in domino SRAM arrays
JPH04229488A (ja) 仮想マルチポートram構造
TWI249130B (en) Semiconductor device
US10180847B2 (en) Circuitry for configuring entities
US7043417B1 (en) High speed software driven emulator comprised of a plurality of emulation processors with improved multiplexed data memory
JPH0462648A (ja) 記憶装置
JPS5870357A (ja) マイクロプログラムド・ブロセツサおよびその作動方法
JPS63646A (ja) メモリアクセス待ち制御回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060328

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060425

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100512

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees