JP2000201066A - プログラマブルロジックデバイス構造 - Google Patents

プログラマブルロジックデバイス構造

Info

Publication number
JP2000201066A
JP2000201066A JP11327549A JP32754999A JP2000201066A JP 2000201066 A JP2000201066 A JP 2000201066A JP 11327549 A JP11327549 A JP 11327549A JP 32754999 A JP32754999 A JP 32754999A JP 2000201066 A JP2000201066 A JP 2000201066A
Authority
JP
Japan
Prior art keywords
interconnect
sub
programmable logic
regions
large area
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.)
Pending
Application number
JP11327549A
Other languages
English (en)
Inventor
David E Jefferson
イー ジェファースン デイビッド
Mcclintock Cameron
マクリントック キャメロン
James Schleicher
シュライカー ジェームズ
L Lee Andy
エル リー アンディー
Manuel Mejia
メヒーア マニュエル
Bruce B Pedersen
ビー ペダーセン ブルース
Christopher F Lane
エフ レーン クリストファー
Richard G Cliff
ジー クリフ リチャード
T Redi Surinibasu
ティー レディ スリニバス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Altera Corp
Original Assignee
Altera Corp
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 Altera Corp filed Critical Altera Corp
Publication of JP2000201066A publication Critical patent/JP2000201066A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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
    • H03K19/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories
    • 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
    • H03K19/17736Structural details of routing resources

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 デバイス上において過大な量の相互接続コン
ダクタリソースを必要とすることを防止することができ
る大容量プログラマブルロジックデバイス機構を提供す
る。 【解決手段】 プログラマブルロジックデバイスは、交
差する行および列からなる二次元の配列内に配置された
複数の大領域をこのデバイス上に備える。各大領域は、
複数のプログラマブルロジック領域およびプログラマブ
ルメモリ領域を備える。各ロジック領域は、プログラマ
ブルロジックからなる複数の小領域を備える。各大領域
は結合された相互接続リソースを備え、これによって、
同じくこのデバイス上に配設された長大な大領域間相互
接続リソースを比較的局部的な相互接続のために使用す
ることなく、この大領域内のロジックおよびメモリ領域
間の交信を可能にする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、プログラム可能なロ
ジック集積回路デバイスに係り、特にこの種のデバイス
上の各種のリソース(例えばロジック、メモリ、および
相互接続コンダクタ等)の組織に関する。
【0002】
【従来の技術】プログラマブルロジック集積回路デバイ
スを、プログラマブルロジックのブロック群と、ユーザ
がアクセス可能なメモリブロック群(例えばランダムア
クセスメモリ(“RAM”)またはリードオンリメモリ
(“ROM”)等)、ならびにロジックとメモリとの間
において相互に信号を選択的に伝送するための相互接続
コンダクタリソース(例えば、クリフ氏等による米国特
許第5550782号公報およびクリフ氏等による米国
特許第5689195号公報を参照、これらはともにこ
こにおいて全体的に参照に組み入れてある)。ロジック
ブロック群はユーザが必要とする様々な機能を実行する
ためにプログラムが可能である。メモリブロック群は、
ユーザがデータを蓄積してその後出力するかまたは所要
のロジック機能を実施するために使用することができ
る。相互接続コンダクタリソースは、デバイスの入力と
ロジックおよびメモリブロック群の入力との間、ロジッ
クおよびメモリブロック群の出力とデバイスの出力との
間、ならびにロジックおよびメモリブロック群の出入力
との間においてユーザが広範な接続を形成するために使
用することができる。しかしながら、個々のロジックモ
ジュール(そのうちいくつかは各ロジックブロック内に
ある)およびメモリブロックは、通常比較的小さなロジ
ックまたはメモリタスクのみを実行可能であり、相互接
続コンダクタリソースはこれらの個々のロジックおよび
メモリタスクを連結することを可能にし、従って必要に
応じて非常に複雑な機能を実行することができる。
【0003】集積回路製造技術の改良によって、非常に
大量のロジック、メモリ、および相互接続コンダクタリ
ソースを含むプログラマブルロジックデバイスを製造す
ることが可能になった。プログラマブルロジックデバイ
ス上のロジックおよびメモリが増加するに従って、それ
に比例するよりも多い量の相互接続コンダクタリソース
を備えることが必要になる。これは、少なくとも理論的
に、デバイス上のいずれかの入力および出力を、その他
の必要な接続を停止または妨害することなく接続し得る
ことが必要であるからである。ロジックおよびメモリブ
ロックの数が増えるに従って、入力および出力の数が略
直線比例的に増加する。しかしながら、入力および出力
間における必要な接続の数は指数倍的に増加する傾向が
ある。これにより、相互接続コンダクタおよび関連回路
に使用されるデバイスのリソースの総量が過度なものと
なる。
【0004】
【発明が解決しようとする課題】前述の観点により、本
発明の目的は、デバイス上において過大な量の相互接続
コンダクタリソースを必要とすることを防止することが
できる大容量プログラマブルロジックデバイス機構を提
供することである。
【0005】本発明のより具体的な目的は、比較的短い
相互接続コンダクタを使用して予想される “局部”的
基盤に基づいた多量の相互接続の形成を容易にする大容
量プログラマブルロジックデバイス上のロジックおよび
メモリブロック群の配置を提供することであり、従って
より“高価な”長い相互接続リソースの量を削減するこ
とができ、この結果相互接続リソースに使用されるデバ
イスリソース部分全体を制限することができる。
【0006】
【課題を解決するための手段】本発明のこれらおよびそ
の他の目的は、本発明の原理に従って、複数の大領域
(それぞれがプログラム可能なロジックおよびメモリを
備える)を有し、この大領域をデバイス上において交差
する2次元の配列内に配置することによって解決され
る。各大領域は、複数のプログラマブルロジック領域お
よびメモリ領域を有する。各ロジック領域は、複数のプ
ログラマブルロジック小領域を備える。各小領域は、こ
の小領域に付加される複数の入力信号上において比較的
基本的ないくつかのロジック機能を実行するためにプロ
グラム可能であり、これによって少なくとも一つの小領
域出力を生成する。各メモリ領域は複数のメモリ入力を
備え、これを介してメモリに信号を付加することができ
る(例えばメモリへの書き込みまたはメモリからの読み
取りに使用するため)。各メモリ領域は、複数の出力を
備え、これを介して信号がメモリから出力される。
【0007】第1のレベルの相互接続コンダクタリソー
スは、各大領域内の隣接する小領域間の通信を行うため
に配設される。(いくつかのケースにおいて、メモリ領
域が第1のレベルの相互接続コンダクタリソースに近接
する場合、この第1のレベルの相互接続コンダクタリソ
ースはメモリ領域と交信も可能にする。)第2のレベル
の相互接続コンダクタリソースは、大領域内における長
い距離の通信を行うために配設される(例えば、この大
領域内における論理領域とメモリ領域との間におい
て)。第3のレベルの相互接続コンダクタリソースは、
デバイス上において大領域間の交信を行うために配設さ
れる。
【0008】各大領域内にメモリ領域を包合すること
は、第3のレベルの相互接続コンダクタリソースの必要
性を削減するよう作用する。例えば、各メモリ領域は、
このメモリ領域を含む大領域の第1および第2のレベル
の相互接続コンダクタリソースのみを使用することによ
って、この大領域のロジック領域と共に動作することが
できる。このことは、本発明のプログラマブルロジック
デバイス組織(構造)が大容量プログラマブルロジック
デバイス上において必要とされる相互接続リソースの総
量を削減または少なくとも抑制する方式を示すものであ
る。
【0009】本発明のその他の詳細、特徴および種々の
利点は、添付図面および以下に記す好適な実施例の詳細
な説明によって明らかにされよう。
【0010】
【実施例】図1に示されるように、本発明に従って構成
された例示的なプログラマブルロジックデバイス10
は、112個のプログラマブルロジックおよびメモリ大
領域20からなり、これらは28行および4列の2次元
配列内に配置されている。各行は4個の大領域を含み、
各列は28個の大領域を含んでいる。上から14番目の
行は“予備”行であり、これはこの予備行の上の13行
のうちのいずれか1行が故障した場合のみにこれを補完
するために使用される。同様に下から14番目の行も予
備行であり、これはこの予備行の下の13行のうちのい
ずれか1行が故障した場合のみにこれを補完するために
使用される。従って、デバイス10上には一定量の“余
裕”が設けられている。
【0011】各大領域20は、16個のプログラマブル
ロジック領域30と1個のメモリ領域40からなる1行
を備え、これはデバイス10のユーザがRAM、ROM
等として使用することができる。
【0012】各ロジック領域30は、10個のプログラ
マブルロジック小領域50からなる1列を備える。図1
を煩雑化することを避けるため、最も左上のロジック領
域30のみについてその小領域50が個別に示されてい
る。
【0013】図1には、さらに大領域20の各行(予備
行を除いて)が各行の端部に近接して“水平”入力/出
力(“I/O”)端子60を備えていることが示されて
いる。最も上および最も下の列はそれぞれの端部に近接
して4つのI/O端子60を備え、一方予備行を除くそ
の他全ての行はそれぞれの端部に近接して5つのI/O
端子60を備えている。同様に、ロジック領域30の各
列の端部には、“垂直”I/O端子70がそれぞれ配設
されている。一般的に各列の端部にはそれぞれ2個のI
/O端子70が設けられており、例外としてロジック領
域30の最も左および最も右の列にはそれぞれ1個のI
/O端子70のみが設けられている。
【0014】図1において、ライン80およびライン9
0が回路を4つの同一四角形に分割している。ライン8
0および90は特定の相互接続コンダクタ内の分割バッ
ファを示しており、これについては以下により詳細に説
明する。
【0015】図2には、デバイス10上のより高いレベ
ルの相互接続コンダクタリソースの概略が示されてい
る。図2には、大領域20の各列に関連付けられた垂直
コンダクタ100と大領域20の各行に関連付けられた
水平コンダクタ110とが存在することが示されてい
る。例えば、ロジック領域30(図1)の各列と関連付
けられた80個の垂直コンダクタ100とメモリ領域4
0(図1)の各列と関連付けられた208個の垂直コン
ダクタ100とが存在し得る。大領域20の各行と関連
付けられた100個の水平コンダクタ110が存在し得
る。垂直コンダクタ100は、関連付けられた大領域列
内において大領域20間の交信を行うことを可能にす
る。水平コンダクタ110は、関連付けられた大領域行
内において大領域20間の交信を行うことを可能にす
る。
【0016】各垂直コンダクタ100は、その中間点に
おいてプログラム可能な分割バッファ120aおよび1
20bによって分割されている。各分割バッファ120
は関連付けられたプログラム可能な機能制御要素(“F
CE”)122aおよび122bによって制御される。
垂直コンダクタ100に関連付けられたFCE122は
関連付けられたバッファ120の両方を非能動化するよ
うプログラムすることができ、この場合、コンダクタ1
00の半分をそれぞれ分離かつ独立して使用することが
できる。他方、コンダクタ100に関連付けられたFC
Eのいずれか一つは、関連付けられたバッファ120を
能動化するようにプログラムすることができ、この場合
コンダクタの一方の半分が他方の半分を駆動する。例え
ば、コンダクタ100のバッファ120aが付勢されて
いる場合、このコンダクタの上半分が下半分を駆動す
る。このようにして、コンダクタ100の各半分を共に
使用することができる。
【0017】同様に、各水平コンダクタ110は、その
中間点において分割バッファ130aおよび130bに
よって分割することができ、それぞれFCE132aお
よび132bによって制御される。要素120および1
22と同様に動作することにより、要素130および1
32はコンダクタ110の各半分を分離して使用する
か、または一方の半分が他方の半分を駆動することがで
きる。
【0018】図2には、さらに、大領域20が、関連付
けられた大領域内においてロジックおよびメモリ領域3
0および40(図1)間で双方向に信号を伝送するため
の複数の“広域水平”コンダクタ140を備えることが
示されている。(コンダクタ140は関連付けられた大
領域20内の全ての領域30および40にわたって延在
するため時々“広域”と呼ばれるが、大きな観点から見
るとこれらは実際には前述した複数の大領域20にまた
がるコンダクタ100および110ほど広域なものでは
ない。)図示されている具体的な実施例においては、各
大領域20に個別または排他的に関連付けられた279
個のコンダクタ140を備えている。
【0019】図3には、典型的な大領域20内における
相互接続が示されている。一般的に異なった2種類から
なる局部的コンダクタ160aおよび160bは、各ロ
ジックおよびメモリ領域30または40(図1)の両側
に沿って延在している。局部コンダクタ160aは領域
供給コンダクタであり、これは関連付けられたコンダク
タ140および150から極近接するロジックまたはメ
モリ領域30/40(図1)に信号を伝送する。コンダ
クタ150は、クロックおよび“高速”コンダクタのネ
ットワークの一部であり、これはデバイス10全体にわ
たって延在しており、これによってデバイス上の多くの
位置で必要とされるクロック、消去、および/またはそ
の他の信号等の共有のまたは少なくとも他用途な信号を
提供する。プログラマブルロジックコネクタ(“PL
C”)170は、コンダクタ140/150をコンダク
タ160aにプログラム可能かつ選択的に接続するため
に設けられる。局部コンダクタ160bは、局部フィー
ドバックコンダクタであり、各小領域50(図1)の出
力信号を近接する小領域50に提供することを可能にす
る。コンダクタ180は、コンダクタ160からの信号
を近接するロジックまたはメモリ領域30/40に選択
的に付加するために設けられている。図3には示されて
いないが(図が煩雑化することを防止するため)、PL
Cは交差するコンダクタ160および180をプログラ
ム可能かつ選択的に接続するためのPLCが設けられ
る。従って、コンダクタ160と180の交差部分はこ
れらのPLCを示している。これらの交差部分の体表的
ないくつかは参照符号162によって示されている。
【0020】ロジックおよびメモリ領域30/40(図
1)の出力は、種々の形式のドライバに付加され、それ
らのいくつかは図3に示されている。図3に示されてい
ない(他の図には示されている)ものとして、ロジック
およびメモリ領域出力を近接するフィードバックコンダ
クタ160bに選択的に付加するためのドライバがあ
る。各領域30/40(図1)に関連付けられているそ
の他のドライバ190は、近接するコンダクタ100お
よび110からの信号と並んで領域出力を近接するコン
ダクタ140に選択的に付加する。各領域30/40
(図1)に関連付けられたさらに別のドライバ200
は、近接するコンダクタ100および110からの信号
と並んで領域出力を別の近接するコンダクタ100およ
び110に選択的に付加する。
【0021】図3には、さらにメモリ領域40(図1)
の各列も関連付けられたコンダクタ100は2つのグル
ープに分類することができ:それらは一般的コンダクタ
100とトライステートコンダクタ100′である。列
内の各メモリ領域40は、このメモリ領域の出力をこの
列に関連付けられたトライステートコンダクタ100′
のうちの任意の一つにプログラム可能かつ選択的に付加
するためのトライステートドライバ210を備えてい
る。ドライバ210およびコンダクタ100′は、一つ
のメモリ領域のみによって提供されるものよりも奥深い
メモリを提供するために列内の複数のメモリ領域が共に
使用される際に使用される。これらの複数メモリ領域を
共に使用する方式についての追加的な情報は、1998
年2月13日に提出されたペダーソン氏等の米国特許出
願第09/023251号を参照すれば得られる。前記
のペダーソン文献はここにおいて参照として全体的に組
み入れてある。
【0022】図4は、図3のコンダクタ150によって
部分的に示された高速コンダクタのネットワークをさら
に図示したものである。(図4には、図3のコンダクタ
150に含まれているクロックコンダクタは示されてい
ない。)8個の高速中継コンダクタ220a/bがデバ
イス10を横断して垂直に延在している。これらの中継
コンダクタ220aのうちの4つは専用の高速入力端子
230から延在している。他の4つの中継コンダクタ2
20bは、大領域20内のトライステートドライバ24
0からこれらのコンダクタの左および右側に駆動するこ
とができる。PLC246は大領域20内の各行に対し
て設けられ、この行と関連付けられた高速コンダクタ1
50のそれぞれに端子230から駆動されるコンダクタ
220aの一つからの信号またはトライステートドライ
バ240から駆動されるコンダクタ220bの一つから
の信号のいずれかを付加する。各コンダクタ220a/
bはその中間点にバッファ250を備えている。トライ
ステートドライバ240によって駆動可能な各コンダク
タ220bの場合、各方向についてバッファ250aお
よび250bが設けられており、さらにこれらのドライ
バのうちの一つをプログラム可能かつ選択的に能動化す
るとともに他のドライバを非能動化するためのFCE2
52を備えている。
【0023】図5には、クロックおよび高速コンダクタ
ネットワークの追加的な詳細が示されている。特に、図
5には、トライステートドライバ240のそれぞれがデ
バイス10の中心(従ってコンダクタ220b)に最も
近いとともにこのドライバにも近接するコンダクタ16
0aおよび160bのいずれかからの入力信号を受信す
ることが示されている。PLC241およびコンダクタ
241′は、各ドライバ240に入力信号を供給する。
各ドライバ240は、関連付けられたFCE242によ
って制御される。各ドライバ240の出力は、PLC2
44によって一つまたは複数の関連付けられたコンダク
タ220bに付加される。
【0024】図5には、さらに2つのクロックコンダク
タ150と4つの高速コンダクタ150と近接するコン
ダクタ160からの4つの入力180のうちのいずれか
の領域に対していわゆる二次信号を提供するために各領
域と結合された回路260が示されている。これらの二
次信号は、関連付けられた領域30の小領域50内のレ
ジスタを制御するために使用される。例えば、二次信号
は、レジスタが必要とするクロックおよびクリア等の信
号を提供する。
【0025】図5には、さらに近接する局部フィードバ
ックコンダクタ160bへの小領域出力を駆動するため
に使用されるドライバ270が示されている。ドライバ
270のより具体的な例が図7に示されており、これら
のドライバについては後に図7を参照して詳細に説明す
る。
【0026】図5に示されている2つのクロックコンダ
クタ150(すなわち図5の一番上の2つの水平コンダ
クタ)は、2つのクロック専用端子からデバイス10全
体にわたって延在するクロックコンダクタネットワーク
の一部である。クロックコンダクタネットワークは種々
の形態とし得るとともに本発明の重要点ではないため、
これ以上クロックコンダクタネットワークについて詳し
く説明する必要はないと判断される。
【0027】図6には、典型的な小領域50が(概略的
とはいえ)より詳細に示されている。小領域50の可能
的な構造の詳細については、1997年7月29日提出
のクリフ氏等の米国特許出願第08/902416号に
記載されており、これはここにおいて全体的に参照に組
み入れてある。しかしながら、これのついての詳細な説
明は本発明を理解するためには必要ないものである。
【0028】図6に示されているように、小領域50は
4入力ルックアップテーブル310を備えており、これ
はルックアップテーブルに付加される4つの入力信号1
80の論理的組み合わせからなる出力信号を形成するよ
うプログラムすることができる。ルックアップテーブル
の出力信号はレジスタ320によって記録することがで
きる。二次信号(すなわち図5の回路260からのクロ
ックおよびクリア信号)もレジスタ320に付加され
る。レジスタ320の出力信号は各PLC330aおよ
び330bの入力端子に付加される。ルックアップテー
ブル310の記録されない出力信号は、各PLC330
aおよび330bの別の入力端子に付加される。従っ
て、各PLC330aおよび330bは、それぞれ出力
信号340aおよび340bを形成するようにプログラ
ムすることができ、これはルックアップテーブル310
の記録された、または記録されていない出力信号のいず
れかである。
【0029】図7には、各小領域50が、コンダクタ1
60から2つの一次入力180を左側に受信し、コンダ
クタ160からの他の2つの一次入力180を右側に入
力することがより詳細に示されている。図7には、さら
に各小領域50がその一次出力340aのうちの一つを
ドライバ190/200/270の左側に付加し、別の
一次信号340bをドライバ190/200/270の
右側に付加する。各ドライバグループ190/200/
270は、4つの小領域50からの出力340を受信
し、そのうち2つを左側に、他の2つを右側に受信す
る。各ドライバグループ190/200/270の一部
分270は、2つの局部出力信号350aと350bと
を形成し、これらはこのドライバグループを内包する領
域30に近接する2つのコンダクタ160bに付加され
る。各出力信号350は、水平に近接する2つの小領域
50の出力340の中から選択される(この点をより詳
細に示している図8も参照)。大領域20の半分におい
て、図7に示された形式の回路が左右対称に配設され
る。
【0030】図8には、代表的なドライバグループ19
0/200/270の詳細が追加的に示されている。例
えば、PLC410は、左上に近接する小領域50の出
力信号340b、右下に近接する小領域50の出力信号
340a、近接する10個の垂直コンダクタの信号10
0、近接する一つの水平コンダクタの信号110の中か
ら一つを選択するようプログラムすることができる。P
LC410によって選択された信号は、ドライバ412
に付加され、さらに近接する広域コンダクタ140に付
加される。PLC420は、左上に近接する小領域50
の出力信号340b、右下に近接する小領域50の出力
信号340a、近接する8個の垂直コンダクタの信号1
00、近接する一つの水平コンダクタの信号110の中
から一つを選択するようプログラムすることができる。
PLC420によって選択された信号は、ドライバ42
2に付加され、さらに(PLC424を介して)近接す
る3つの垂直コンダクタ100の一つまたは近接する2
つの水平コンダクタ110のうちの一つに付加される。
【0031】PLC430は、左上に近接する小領域5
0の出力信号340b、右上に近接する小領域50の出
力信号340a、近接する12個の垂直コンダクタの信
号100、近接する一つの水平コンダクタの信号110
の中から一つを選択するようプログラムすることができ
る。PLC430によって選択された信号は、ドライバ
432に付加され、さらに近接する広域水平コンダクタ
140に付加される。
【0032】要素440,442および444は、付加
される小領域出力が左下に近接する小領域50および右
上に近接する小領域50からのものであることを除い
て、一般的に要素420,422および424に類似す
るものである。要素450および452は、付加される
小領域出力が左下に近接する小領域50および右上に近
接する小領域50からのものであることを除いて、一般
的に要素410および412に類似するものである。
【0033】図8には、さらに局部フィードバック出力
信号350aが左上に近接する小領域50の出力340
bと右上に近接する小領域50の出力340aとから
(PLC460によって)選択されることが示されてい
る。ドライバ462はPLC460によって選択された
信号を増幅する。局部フィードバック出力信号350b
は、左下に近接する小領域50の出力340bと右下に
近接する小領域50の出力340aとから(PLC47
0によって)選択される。
【0034】図8より、左上および右上の小領域50は
左下および右下の小領域50に比べてコンダクタ10
0,110および140に通じる経路をより多く有する
ことが理解されよう。この明らかな不均衡は、左下およ
び右下の小領域に図8に示されるドライバグループ19
0/200の左側および右側に通じる経路をより多く設
けることによって解消され、他方左上および右上の小領
域にはドライバグループ190/200内の左側および
右側に通じる経路がより少なく設けられる。各大領域2
0内の領域30の行に対して交互に水平交差させ、また
同様に大領域20内の小領域50の列を交互に垂直延在
させることによって、全ての小領域50において略均等
なアクセスが達成される。
【0035】図9には、典型的なメモリ領域40が示さ
れている。クリフ氏等の米国特許第5550782号公
報、クリフ氏等の米国特許第5689195号公報、お
よび1998年3月3日に提出されたハイル氏等の米国
特許出願第09/034050号に記載されている所定
のメモリ領域構造をメモリ領域40に適用することがで
きる。従って、メモリ領域40の特徴に関する追加的な
説明はここでは省略するものとし、これら全ての参考文
献はここにおいて全体的に参照に組み入れてある。これ
らの点に関する追加的な説明は本発明を理解するために
必要なものではないことが理解されよう。
【0036】メモリ領域40の主要な構成要素は、64
行32列のRAMビットからなるブロック510であ
る。(メモリ領域40(例えば、ROM、積算項(“p
項”)ロジック等)の使用方式については、RAMを参
考にできると理解される。)回路540および600
は、(図示されていないが、関連付けられたFCEによ
って)メモリ領域40が複数のワード長モードのうちの
いずれか一つにおいて動作し得るようにそれぞれプログ
ラムすることができる。ユーザが選択できるワード長
は、1ビット、2平行ビット、4平行ビット、8平行ビ
ット、および16平行ビットである。
【0037】5ビットの書き込みアドレス情報以上のも
のが導線512を介して回路540に付加される。16
ビットの書き込みアドレス情報以上のものが導線514
を介して回路に付加される。16未満のワード長が選択
された場合、データ用には必要のない導線514が追加
的な読み取り/書き込み列アドレスビットに使用され
る。回路540は、導線512/514を介して付加さ
れる情報およびプログラムされたワード長状態を使用し
て、導線542を介してRAMブロック510の1つま
たは複数の列を付勢し、また導線514からのデータを
導線544のうちの適正な一つに伝送する。書き込みア
ドレスデコーダ回路550には、導線516を介して追
加的な6ビットの書き込みアドレス情報が提供される。
回路550は、この情報を使用して、ANDゲート56
0が導線518上の書き込み許可信号によって付勢され
る際に、ANDゲート560および導線562を介して
RAMブロック510の64行のうちの1行を付勢す
る。従って、導線544を介して付加されるデータは、
RAMブロック510内の導線542を介して付勢され
た列内の導線562を介して付勢された行に蓄積され
る。
【0038】メモリ領域40は2つの異なったモードで
読み取ることができ:それらはRAMモードおよびp項
モードである。まずRAMモードについて説明すると、
6ビットの読み取りアドレス情報が導線520を介して
読み取りアドレスデコーダ570に付加される。デコー
ダ570は、この情報を使用して、ANDゲート580
が導線522上の読み取り許可信号によって付勢される
際に、RAMブロック510の64行のうち一つを選択
する。RAMモードPLC590は、ANDゲート58
0の出力信号をRAMブロック510の読み取り付勢導
線592に付加するようプログラムされる。RAMブロ
ックの行から読み取られ従って付勢されたデータは、導
線598を介して出力される。回路600は、導線52
4を介してさらに5ビット以上の読み取りアドレス情報
を受信する。回路600はこの情報およびそのプログラ
ムされた状態(前述したようにユーザによって選択され
たワード長を示すもの)を使用し、導線602を介する
出力について1,2,4,8または16のデータビット
の中から選択する。
【0039】p項モードにおいては、通常は高位の読み
取りアドレス信号に使用される16本の導線514、6
本の導線520、および4本の導線520からの導線5
30上に32ビットのいわゆる“p項定数”が形成され
る。前記の米国特許出願第09/023251号により
詳しく記載されているように、これらの高位のアドレス
ビットは、列内のいくつかのメモリ領域40を同時使用
して一つのメモリ領域のみによって提供されるものより
も奥深いメモリを提供する際に使用される。導線530
上の信号は、インバータ532によって反転され、導線
530の真数および補数バージョンの信号の両方が導線
534を介してPLC590に付加される。p項モード
においては、PLC590は導線534上の信号を導線
594に付加するようにプログラムされる。従って、R
AMブロック510内の半分の行は同時に読み取りを行
い、従ってこれらの行は導線530上のp項定数のビッ
トが論理1でありまたこれらビットが論理0であること
によって決定されて読み取りを行う。RAMブロック5
10内の各列は、付勢された行内に蓄積されたデータの
積を結合された導線598を介して出力する。回路60
0内におけるORゲートおよび関連する要素は、導線5
98上の積の合計を形成し導線602を介して出力す
る。従って、p項モードにおいてメモリ領域40は導線
602上の出力信号の積和を形成する。
【0040】図10には、RAMブロック510内の代
表的なメモリセルの構造が示されている。インバータ7
10および720は、1ビットのデータを蓄積するため
に閉ループ式に接続されている。データを真数および補
数形式において導線544および544バーにそれぞれ
付加し、書き込み列選択導線542および行書き込み導
線562に論理1を付加することによって、インバータ
710/720内にデータが書き込まれる。これらの論
理1信号は、トランジスタ730,740,750およ
び760を付勢し、これによってインバータ710/7
20が付加されたデータを記録することを誘引する。
【0041】行読み取り導線592に論理1を付加する
ことによってインバータ710/720からデータが読
み取られる。このことによってトランジスタ780が付
勢される。トランジスタ770もインバータ710から
の論理1出力によって付勢され、ソースライン598a
とドレインライン598bとの間に導電路が形成され
る。検出アンプ(図9の600)は、ライン598aと
598bの間にこのような導電路が存在するかどうかを
検出する。
【0042】図11には、典型的なメモリ領域40がど
のように近接する相互接続コンダクタに接続されるかが
示されている。図11には、大領域20の一部であるメ
モリ領域40が示されており、これにおいてロジック領
域30はメモリ領域40の左側にある。ロジック領域3
0がメモリ領域40の右側にある場合、回路は図11に
対して対称形となる。利便性のため、メモリ領域40の
側方のロジック30に近接するサイドを時々“領域サイ
ド”と呼称する。メモリ領域40の近接するロジック領
域30から遠い方のサイドは、時々メモリ領域の“大領
域サイド”と呼称する。
【0043】図9においてデータ信号514である信号
は、図11においては回路810から来るものとなる。
回路810はレジスタのグループであり、これは(1)
メモリ領域40のロジック領域サイドからこの回路に供
給を行う導線180からのレジスタ信号に使用するか、
または(2)これらの導線180の記録されていない接
続を導線514へバイパスさせることを可能にすること
ができる。従って、導線514を介してRAMブロック
510に付加されるデータは、回路810のプログラム
可能な制御によって、“記録するかまたはバイパス”さ
れる。“記録するかバイパスするか”の選択は、以下に
記述するように図11内の他の信号にも適用することが
できる。
【0044】回路820は、導線150から高速ライン
およびクロック信号を受信し、さらにメモリ領域40の
ロジック領域サイド上に結合された導線180からの別
の3つの信号を受信する。回路820への別の入力は、
回路830からの付勢信号であり、これは、単一のメモ
リ領域が生成するものよりもより奥深いメモリを提供す
るために同時に使用される複数のメモリ領域40のうち
の任意の一つへの書き込みを制御するために使用される
高位のアドレスビットをデコードする。回路820は、
少なくとも部分的に入力150および/または180に
基づきまたメモリ領域40の何処かで使用される複数の
信号を提供するようプログラムすることができる。例え
ば、回路820は、前述した回路810内のレジスタに
よって使用されるクロックおよびクリア信号を供給す
る。回路820は、さらに行書き込みアドレスデコーダ
回路550に対して書き込み許可信号を提供する。
【0045】回路840は、書き込み列デコーダ回路5
40による書き込み列選択のために使用されるアドレス
信号522のための“記録されるかまたはバイパスされ
る”選択を提供する。従って、回路540は、5つの信
号を受信することに加えて、回路810は受信するもの
と同じクロックおよびクリア信号を回路820から受信
する。
【0046】回路850は、メモリ40内の何処かにお
いて第1に出力制御に使用される信号を提供することを
除いて、回路820に類似するものとなる。例えば、回
路850はクロックおよびクリア信号を形成し、これは
“記録されたまたはバイパスされた”回路860および
870内および回路600の出力段640内のレジスタ
によって使用することができる。各回路860,870
および640は、回路820からのクロックおよびクリ
ア信号を交互に使用する。回路850は、メモリ領域4
0の大領域サイドからの入力を受信する。回路850
は、さらに回路880からの付勢信号を受信する。この
付勢信号を提供する際に、回路880は回路830にい
くらか似た動作を行う。特に、一つのメモリ領域による
ものよりも奥深いメモリを提供するために複数のメモリ
領域40を同時に使用する際に、回路880はより高位
のアドレス信号を受信およびデコードし、結合されてい
るメモリ領域が実際にデータを出力しているものかどう
かを判断する。そうである場合、回路880は回路85
0を付勢する信号を出力し、これは次に読み込み許可信
号522を回路590に付加する。
【0047】回路860は、回路600による読み取り
列選択のために使用されるアドレス信号に対して“記録
されるかまたはバイパスされる”選択を提供する。回路
600内の列デコーダ回路620が実際に列選択を実行
する。さらに他の列選択は、回路630によってプログ
ラムに基づいて16ビット、8ビット、4ビット、2ビ
ット、1ビットのいずれのワード長が使用されているか
を判断して実行される。回路860は、回路820また
は回路850のいずれかからのクロック信号およびクリ
ア信号を使用するようプログラムすることができる。
【0048】回路870は、回路550による書き込み
行選択、および回路590による読み取り行選択のため
に使用されるアドレスビットに対して“記録されるかま
たはバイパスされる”選択を提供する。回路870は、
回路820および回路850の両方からクロックおよび
クリア信号を受信する。回路870は、さらに、回路8
80によって実行されるより高位のアドレスビットデコ
ードに対して“記録されるかまたはバイパスされる”選
択を提供する際に回路880が使用するクロックおよび
クリア信号を送信する。回路880は、回路880内の
トライステートドライバ210(図3)およびPLC8
82(例えば、1対4デマルチプレクサ)を介してメモ
リ領域40からトライステート垂直コンダクタ100′
の一つに付加するために使用することができる。この特
徴は、特に一つのメモリ領域自体によるものよりも奥深
いメモリを提供するために複数のメモリ領域40が同時
に使用される際に適用される。回路880は、導線18
0を介して受信するより高位のアドレスビットをデコー
ドし、これによってトライステートドライバ210(図
3)をいつ付勢するかを決定する。
【0049】回路640は、回路630によって選択さ
れたメモリ出力信号を送信するか、または検出アンプ回
路610の出力によって表示される所要の積算項(“p
項”)の和を形成するようプログラムすることができ
る。回路630の構成に関する詳細な説明は前述したハ
イル氏等の米国特許出願第09/034050号に示さ
れている。従って、回路640は付加されたp項信号の
種々の和を形成するために必要とされるOR回路を含ん
でいる。回路640も回路820および850からのク
ロックおよびクリア信号を受信し、回路630の出力ま
たは回路640内で形成される積和信号のいずれかに対
する“記録されるかまたはバイパスされる”選択を提供
する際にこれらの信号を使用することができる。
【0050】図11の左側(すなわちメモリ領域40の
領域サイド上)のドライババンク190/200/27
0は、(1)領域30から左方への小領域出力信号34
0bと、(2)メモリ領域40の選択された出力と、
(3)垂直コンダクタ100から左方への信号と、
(4)このメモリ領域を内包する大領域20の行に結合
された水平コンダクタ110からの信号とを受信する。
このドライババンク190/200/270は、これら
の信号からの選択を行うとともに、これらを(1)近接
する局部フィードバックコンダクタ160bと、(2)
前記の垂直コンダクタ100および110と、(3)当
該メモリ領域40を内包する大領域20に結合された広
域水平コンダクタ140のうちから選択されたものに伝
送するようプログラムすることができる。
【0051】図11の右側(すなわちメモリ領域40の
大領域サイド上)のドライババンク190/200は、
(1)メモリ領域40の全ての出力と、(2)垂直コン
ダクタ100/100′から右方への信号と、(3)こ
のメモリ領域を内包する大領域20の行と結合された水
平コンダクタ110からの信号とを受信する。このドラ
イババンクは、これらの信号からの選択を行うととも
に、これらを前記の垂直コンダクタ100および110
と、当該メモリ領域40を内包する大領域20に結合さ
れた広域水平コンダクタ140のうちから選択されたも
のに伝送するようプログラムすることができる。
【0052】図11には、さらに回路590へのp項定
数信号530の付加が示されている。従って、回路59
0はさらに図9に示されたインバータ532およびマル
チプレクシング590を備えている。
【0053】図12には、図11に示された2つのドラ
イババンク190/200/270および190/20
0の例示的な構成がより詳細に示されている。図12に
おいて“A”のラベルを付けられたドライバグループ
は、図8に示されたドライバグループと同様のものとす
ることができる。(図8の部分270は、図12のグル
ープが駆動され得る局部コンダクタ160bに結合され
ているかどうかに依存して、図12内の各グループAに
含まれる場合と含まれない場合がある。)図12におい
て“B”でラベルされたドライバグループは、前述した
図8に代わるものと類似のものとすることができ、これ
は図8のドライバグループと交替してこれらのドライバ
によって提供される相互接続に対して略全体的な均一性
を提供する。図12には、メモリ領域の16個の出力6
02がどのように種々のドライバAおよびBの入力に分
配されるか示されており、図12における殆どの場合に
おいて図示された信号602は図8内の該当する位置に
ある小領域出力340を代替するものであることが理解
される。例えば、図12の左上のドライバグループA内
の小領域50からの2つの左側入力は図8のものと同様
であるが、2つの右側入力はビット0およびビット2に
対するメモリ領域出力602となる。別の例において
は、右上のドライバグループA内の左側の2つの個々の
入力は、ビット0およびビット1に対するメモリ領域出
力602となり、右側の2つの入力はビット8およびビ
ット9に対するメモリ領域出力602となる。図12に
おいて、各メモリ領域出力に対して近接するコンダクタ
100,110および140への複数の異なった経路を
提供するために充分な接続が設けられている。図12に
は、さらにPLC882を介してのコンダクタ100′
へのトライステート出力が示されている。
【0054】前記の説明から、本発明に係るプログラマ
ブルロジックデバイス構造は、メモリ領域40をデバイ
ス上のロジック領域30の各グループと結合して備える
ことが理解される。各メモリ領域40は、コンバータ1
40および160等の比較的局部的な相互接続リソース
を介して、結合されたロジック領域30と共に使用する
ことができる。一般的に、このようにメモリ領域40を
結合されたロジック領域30と共に使用するために、コ
ンダクタ100および110等のより高価で長大な相互
接続リソースを用いる必要はない。このようにロジック
領域30およびメモリ領域40は大領域内において互い
に関連付けられているが、これらの全ての領域は装置の
広域的なリソースとして機能することもできる。特に、
全てのロジック領域30およびメモリ領域40は、コン
ダクタ100および110等の相互接続リソースへのア
クセスも備えている。従って、デバイス上のいずれかの
領域30または40の入力および出力は、実質的にデバ
イス上の他のいずれかの領域30および40の入力およ
び出力に接続することができる。
【0055】図13には、データ処理システム1002
内に設置された本発明に係るプログラマブルロジックデ
バイスが示されている。データ処理システム1002
は:プロセッサ1004;メモリ1006;I/O回路
1008;および周辺機器1010のうちの一つまたは
複数を備えている。これらの要素はシステムバス102
0によって結合されるとともに、エンドユーザシステム
1040内に設けられた回路基板1030上に配設され
ている。
【0056】システム1002は、例えばコンピュータ
ネットワーキング、データネットワーキング、計測、ビ
デオ処理、デジタル信号処理、またはその他のプログラ
マブルまたはリプログラマブルロジックの利点を利用し
得る広範な適用方式において使用することができる。プ
ログラマブルロジックデバイス10は、種々の異なった
ロジック機能を実施するために使用することができる。
例えば、プログラマブルロジックデバイス10は、プロ
セッサ1004と連動して機能するプロセッサまたはコ
ントローラとして構成することができる。プログラマブ
ルロジックデバイス10は、さらにシステム1002内
の共用リソースへのアクセスを仲介するためのアービタ
として使用することもできる。さらに別の例において、
プログラマブルロジックデバイス10は、プロセッサ1
004とシステム1002内の別の構成要素との間のイ
ンタフェースとして構成することができる。システム1
002は単に説明のためのものであり、本発明の本質的
な視点および概念は請求の範囲によってのみ定義される
ことが理解されよう。
【0057】本発明に係るプログラマブルロジックデバ
イスを実施するために、種々の技術ならびにこれらのデ
バイスの種々の構成要素(例えば、前述したPLC、な
らびにPLCを制御するFCE)を使用することができ
る。例えば、各PLCはスイッチまたはスイッチ群等の
比較的単純なプログラマブルコネクタとすることがで
き、これによって複数の入力のうちのいずれか一つが出
力に接続する。他方、各PLCは、接続を形成するとと
もにロジック(例えば、入力のいくつかを論理的に接続
する)を実行することができるより複雑な要素とするこ
とができる。後者において、各PLCは、例えば、AN
D,NAND,OR,またはNOR等の関数を実行する
積算項ロジックとすることができる。PLCを実施する
ために適した構成要素の例としては、EPROM、EE
PROM、パストランジスタ、伝送ゲート、アンチヒュ
ーズ、レーザヒューズ、メタルオプショナル連係装置等
が挙げられる。前述したように、PLCの要素は、種々
のプログラム可能な機能制御要素(“FCE”)によっ
て制御することができる。(特定のPLC実施形態(例
えばヒューズおよびメタルオプショナル連係装置)にお
いては独立したFCEデバイスは不要である。)FCE
はさらに複数の異なった方式で実施することができる。
例えば、FCEは、SRAM、DRAM、ファーストイ
ンファーストアウト(“FIFO”)メモリ、EPRO
M、EEPROM、機能制御レジスタ(例えばウォール
ストロムの米国特許第3473160号公報参照)、強
誘電体メモリ、ヒューズ、アンチヒューズ等とすること
ができる。前述した種々の例から、本発明は一回のみプ
ログラム可能なデバイスおよび再プログラムが可能なデ
バイスの双方に適用し得ることが理解されよう。
【0058】以上の記述は単に本発明の原理を説明する
目的のものであり、当業者においては本発明の視点およ
び概念を逸脱することなく種々の設計変更をなし得るこ
とが理解されよう。例えば、ロジックユニット階層内の
各レベルにおけるロジックユニットの数は、ここで説明
した実施例と異なったものとすることができる。同様
に、種々の形式の相互接続コンダクタおよび他の要素の
数も前述の実施例と異なったものとすることができる。
必要に応じて、異なった形式およびサイズのロジックお
よびメモリユニットを使用することができる。さらに、
“行”および“列”、“水平”および“垂直”、“左”
および“右”、“最上部”および“底部”、ならびにそ
の他の方向および方向付け表現は、単に利便性のために
使用されており、これらの表現を使用する上で固定的ま
たは絶対的な方向を意図するものではない。例えば、上
記の各対の表記は、必要に応じて逆転させることができ
る。
【図面の簡単な説明】
【図1】本発明に従って構成された典型的なプログラマ
ブルロジックアレー集積回路デバイスの代表的な部分を
示す概略ブロック線図である。
【図2】図1のデバイスの追加的な要素を示す代表的な
部分の概略ブロック線図である。
【図3】図1のデバイスのさらに別の要素を示す代表的
な部分のより詳しいが依然として簡略化された概略ブロ
ック線図である。
【図4】図1のデバイスのさらに別の要素を示す代表的
な部分のより詳しいが依然として簡略化された概略ブロ
ック線図である。
【図5】図1のデバイスのさらに別の要素を示す代表的
な部分のより詳しいが依然として簡略化された概略ブロ
ック線図である。
【図6】図1のデバイスの別の側面を示す代表的な部分
のより詳しいが依然として簡略化された概略ブロック線
図である。
【図7】図1のデバイスのさらに別の側面を示す代表的
な部分のより詳しいが依然として簡略化された概略ブロ
ック線図である。
【図8】図7の回路の各部を示すより詳しいが依然とし
て簡略化された概略ブロック線図である。
【図9】図1のデバイスのさらに別の側面を示す代表的
な部分のより詳しいが依然として簡略化された概略ブロ
ック線図である。
【図10】図9の回路の代表的な部分を示す概略図であ
る。
【図11A】図9の回路の各部を示すより詳しいが依然
として簡略化された概略ブロック線図である。
【図11B】図11Aの分図である。
【図12】図1のデバイスのさらに別の側面を示す代表
的な部分の概略ブロック線図である。
【図13】本発明に係るプログラマブルロジックデバイ
スを使用する例示的なシステムを示す概略ブロック線図
である。
【符号の説明】 10 プログラマブルロジックデバイス 20 大領域 30 ロジック領域 40 メモリ領域 50 小領域 60,70 I/O端子 80,90 ライン 100,100′,110,140,150,160,
180,220,241′ コンダクタ 120,130,250 バッファ 122,132,242,252 FCE 162 交差部分 170,241,244,330,410,420,4
24,430,440,444,460,470,59
0,882 PLC 190,200,210,240,270,412,4
22,432,442,462 ドライバ 230 端子 260,540,550,600,610,620,6
30,640,810,820,830,840,85
0,860,870,880 回路 310 ルックアップテーブル 320 レジスタ 340,350 出力信号 510 ブロック 512,514,516,520,522,524,5
30,534,542,544,562,592,59
8,602 導線 532,710,720 インバータ 560,580 ANDゲート 570 デコーダ 730,740,750,760,770 トランジス
タ 1002 データ処理システム 1004 プロセッサ 1006 メモリ 1008 I/O回路 1010 周辺機器 1020 システムバス 1030 回路基板 1040 エンドユーザシステム
───────────────────────────────────────────────────── フロントページの続き (72)発明者 キャメロン マクリントック アメリカ合衆国、カリフォルニア 95134、 サン ホセ、イノベーション ドライブ 101、ケアオブ アルテラ コーポレーシ ョン (72)発明者 ジェームズ シュライカー アメリカ合衆国、カリフォルニア 95134、 サン ホセ、イノベーション ドライブ 101、ケアオブ アルテラ コーポレーシ ョン (72)発明者 アンディー エル リー アメリカ合衆国、カリフォルニア 95134、 サン ホセ、イノベーション ドライブ 101、ケアオブ アルテラ コーポレーシ ョン (72)発明者 マニュエル メヒーア アメリカ合衆国、カリフォルニア 95134、 サン ホセ、イノベーション ドライブ 101、ケアオブ アルテラ コーポレーシ ョン (72)発明者 ブルース ビー ペダーセン アメリカ合衆国、カリフォルニア 95134、 サン ホセ、イノベーション ドライブ 101、ケアオブ アルテラ コーポレーシ ョン (72)発明者 クリストファー エフ レーン アメリカ合衆国、カリフォルニア 95134、 サン ホセ、イノベーション ドライブ 101、ケアオブ アルテラ コーポレーシ ョン (72)発明者 リチャード ジー クリフ アメリカ合衆国、カリフォルニア 95134、 サン ホセ、イノベーション ドライブ 101、ケアオブ アルテラ コーポレーシ ョン (72)発明者 スリニバス ティー レディ アメリカ合衆国、カリフォルニア 95134、 サン ホセ、イノベーション ドライブ 101、ケアオブ アルテラ コーポレーシ ョン

Claims (21)

    【特許請求の範囲】
  1. 【請求項1】 デバイス上において交差する行および列
    からなる二次元の配列内に配置された複数の大領域を備
    え、前記大領域のそれぞれが複数のプログラマブルロジ
    ック領域およびメモリ領域を備え、前記ロジック領域の
    それぞれが複数の入力と複数の出力とを有するとともに
    その入力上で複数のロジック機能のうちのいずれかを実
    行して出力を形成するためにプログラムすることが可能
    であり、前記メモリ領域も複数の入力と複数の出力とを
    有するとともにその入力に応答してその入力ならびにメ
    モリ領域内に記録されたデータに少なくとも部分的に基
    づいた出力を生成し;前記出力を前記入力に対して選択
    的に接続するためのプログラム可能な相互接続回路を備
    えるプログラマブルロジックデバイス。
  2. 【請求項2】 各大領域について、相互接続回路が:こ
    の大領域と単独的に結合された複数の第1相互接続コン
    ダクタを備え、大領域に結合された第1のコンダクタの
    それぞれがこの大領域内の全ての領域に近接して実質的
    に連続的に延在する請求項1記載のデバイス。
  3. 【請求項3】 相互接続回路はさらに:大領域の前記行
    のそれぞれに沿って延在する複数の第2相互接続コンダ
    クタと;大領域の前記列のそれぞれに沿って延在する複
    数の第3相互接続コンダクタとを備える請求項2記載の
    デバイス。
  4. 【請求項4】 前記ロジック領域のそれぞれがプログラ
    マブルロジックからなる複数の小領域を備え、前記小領
    域のそれぞれがこの小領域を内包するロジック領域の小
    群の入力と少なくとも一つの出力とを備え、各小領域は
    その入力上において複数のロジック機能のうちのいずれ
    かを実行して出力を生成する請求項1記載のデバイス。
  5. 【請求項5】 前記ロジック領域のそれぞれがプログラ
    マブルロジックからなる複数の小領域を備え、前記小領
    域のそれぞれがこの小領域を内包するロジック領域の小
    群の入力と少なくとも一つの出力とを備え、各小領域は
    その入力上において複数のロジック機能のうちのいずれ
    かを実行して出力を生成する請求項2記載のデバイス。
  6. 【請求項6】 前記各大領域内の前記小群の小領域のそ
    れぞれについて、前記相互接続回路は:この小群に結合
    された複数の第4コンダクタをさらに備え、小群に結合
    された第4のコンダクタのそれぞれがこの小群の小領域
    の全てに近接して実質的に連続的に延在する請求項5記
    載のデバイス。
  7. 【請求項7】 前記相互接続回路は:各小領域の入力
    を、この小領域を含んだ小群に結合された第4の相互接
    続コンダクタの少なくともいくつかに選択的に接続する
    よう構成された第1のプログラマブルロジックコネクタ
    をさらに備える請求項6記載のデバイス。
  8. 【請求項8】 前記相互接続回路は:前記小群の小領域
    のそれぞれに結合された第4の相互接続コンダクタの少
    なくともいくつかを、これらの小領域を包合する領域に
    結合された第1の相互接続コンダクタの少なくともいく
    つかに選択的に接続するよう構成された第2のプログラ
    マブルロジックコネクタをさらに備える請求項6記載の
    デバイス。
  9. 【請求項9】 各小群について、前記相互接続回路はさ
    らに:この小群に結合された複数の第5コンダクタを備
    え、小群に結合された第5のコンダクタのそれぞれがこ
    の小群の小領域の全てに近接して実質的に連続的に延在
    し;前記小領域の出力のそれぞれを、この小領域を含ん
    だ小群に結合された第5のコンダクタの少なくとも一つ
    に選択的に接続するよう構成された第3のプログラマブ
    ルロジックコネクタを備える請求項6記載のデバイス。
  10. 【請求項10】 前記相互接続回路は:各小領域の入力
    を、この小領域を含んだ小群に結合された第5の相互接
    続コンダクタの少なくともいくつかに選択的に接続する
    よう構成された第4のプログラマブルロジックコネクタ
    をさらに備える請求項9記載のデバイス。
  11. 【請求項11】 各大領域について、相互接続回路は:
    この大領域に接続される第1の相互接続コネクタの少な
    くともいくつかを、この大領域を包合する行に沿って延
    在する第2の相互接続コンダクタの少なくともいくつか
    に選択的に接続するよう構成された第5のプログラマブ
    ルロジックコネクタをさらに備える請求項3記載のデバ
    イス。
  12. 【請求項12】 各大領域について、相互接続回路は:
    この大領域に接続される第1の相互接続コネクタの少な
    くともいくつかを、この大領域を包合する列に沿って延
    在する第3の相互接続コンダクタの少なくともいくつか
    に選択的に接続するよう構成された第6のプログラマブ
    ルロジックコネクタをさらに備える請求項3記載のデバ
    イス。
  13. 【請求項13】 各メモリ領域が異なった数の複数出力
    に平行して出力信号を提供するようプログラム的に構成
    可能である請求項1記載のデバイス。
  14. 【請求項14】 各メモリ領域がランダムアクセスメモ
    リモードおよび積算項モードのうちの一方を選択して動
    作するようプログラム的に構成可能である請求項1記載
    のデバイス。
  15. 【請求項15】 各大領域について、相互接続回路は:
    この大領域のメモリ領域の出力の少なくともいくつか
    を、この大領域に結合される第1の相互接続コンダクタ
    の少なくともいくつかに選択的に接続するよう構成され
    た第7のプログラマブルロジックコネクタをさらに備え
    る請求項2記載のデバイス。
  16. 【請求項16】 各大領域について、相互接続回路は:
    この大領域のメモリ領域の出力の少なくともいくつか
    を、この大領域を包合する行に沿って延在する第2の相
    互接続コンダクタの少なくともいくつかに選択的に接続
    するよう構成された第8のプログラマブルロジックコネ
    クタをさらに備える請求項3記載のデバイス。
  17. 【請求項17】 各大領域について、相互接続回路は:
    この大領域のメモリ領域の出力の少なくともいくつか
    を、この大領域を包合する列に沿って延在する第2の相
    互接続コンダクタの少なくともいくつかに選択的に接続
    するよう構成された第9のプログラマブルロジックコネ
    クタをさらに備える請求項3記載のデバイス。
  18. 【請求項18】 処理回路要素と;前記処理回路要素に
    結合されたメモリと;請求項1に定義されたものであ
    り、これらの処理回路要素およびメモリに結合されたプ
    ログラマブルロジックデバイスとからなるデジタル処理
    システム。
  19. 【請求項19】 請求項1に定義されたプログラマブル
    ロジックデバイスを実装したプリント回路基板。
  20. 【請求項20】 プリント回路基板上に実装されるとと
    もにプログラマブルロジックデバイスに結合されたメモ
    リをさらに備える請求項19記載のプリント回路基板。
  21. 【請求項21】 プリント回路基板上に実装されるとと
    もにプログラマブルロジックデバイスに結合された処理
    回路要素をさらに備える請求項19記載のプリント回路
    基板。
JP11327549A 1998-11-18 1999-11-17 プログラマブルロジックデバイス構造 Pending JP2000201066A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US10941798P 1998-11-18 1998-11-18
US09/266235 1999-03-10
US09/266,235 US6215326B1 (en) 1998-11-18 1999-03-10 Programmable logic device architecture with super-regions having logic regions and a memory region
US60/109417 1999-03-10

Publications (1)

Publication Number Publication Date
JP2000201066A true JP2000201066A (ja) 2000-07-18

Family

ID=26806956

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11327549A Pending JP2000201066A (ja) 1998-11-18 1999-11-17 プログラマブルロジックデバイス構造

Country Status (4)

Country Link
US (4) US6215326B1 (ja)
EP (1) EP1005163B1 (ja)
JP (1) JP2000201066A (ja)
DE (1) DE69933525T2 (ja)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252440A (ja) * 2005-03-14 2006-09-21 Fujitsu Ltd 再構成可能演算処理装置
JP2006287964A (ja) * 1999-03-04 2006-10-19 Altera Corp プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
US7446562B2 (en) 2004-06-15 2008-11-04 Nec Corporation Programmable semiconductor device
US7650448B2 (en) 1996-12-20 2010-01-19 Pact Xpp Technologies Ag I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US7657877B2 (en) 2001-06-20 2010-02-02 Pact Xpp Technologies Ag Method for processing data
US7822968B2 (en) 1996-12-09 2010-10-26 Martin Vorbach Circuit having a multidimensional structure of configurable cells that include multi-bit-wide inputs and outputs
US7840842B2 (en) 2001-09-03 2010-11-23 Martin Vorbach Method for debugging reconfigurable architectures
US7996827B2 (en) * 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US8099618B2 (en) 2001-03-05 2012-01-17 Martin Vorbach Methods and devices for treating and processing data
US8127061B2 (en) 2002-02-18 2012-02-28 Martin Vorbach Bus systems and reconfiguration methods
US8156284B2 (en) 2002-08-07 2012-04-10 Martin Vorbach Data processing method and device
US8209653B2 (en) 2001-09-03 2012-06-26 Martin Vorbach Router
US8230411B1 (en) 1999-06-10 2012-07-24 Martin Vorbach Method for interleaving a program over a plurality of cells
US8250503B2 (en) 2006-01-18 2012-08-21 Martin Vorbach Hardware definition method including determining whether to implement a function as hardware or software
US8301872B2 (en) 2000-06-13 2012-10-30 Martin Vorbach Pipeline configuration protocol and configuration unit communication
USRE44365E1 (en) 1997-02-08 2013-07-09 Martin Vorbach Method of self-synchronization of configurable elements of a programmable module
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US8812820B2 (en) 2003-08-28 2014-08-19 Pact Xpp Technologies Ag Data processing device and method
US8819505B2 (en) 1997-12-22 2014-08-26 Pact Xpp Technologies Ag Data processor having disabled cores
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements

Families Citing this family (166)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6556044B2 (en) 2001-09-18 2003-04-29 Altera Corporation Programmable logic device including multipliers and configurations thereof to reduce resource utilization
US20020088822A1 (en) * 1995-08-14 2002-07-11 Dresser, Inc. Multiproduct fuel dispenser using a common meter
US6300794B1 (en) * 1996-10-10 2001-10-09 Altera Corporation Programmable logic device with hierarchical interconnection resources
EP1329816B1 (de) 1996-12-27 2011-06-22 Richter, Thomas Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
US7146441B1 (en) * 1998-03-16 2006-12-05 Actel Corporation SRAM bus architecture and interconnect to an FPGA
US7196556B1 (en) 1998-07-02 2007-03-27 Altera Corporation Programmable logic integrated circuit devices with low voltage differential signaling capabilities
US6236231B1 (en) 1998-07-02 2001-05-22 Altera Corporation Programmable logic integrated circuit devices with low voltage differential signaling capabilities
US6215326B1 (en) * 1998-11-18 2001-04-10 Altera Corporation Programmable logic device architecture with super-regions having logic regions and a memory region
US6218876B1 (en) 1999-01-08 2001-04-17 Altera Corporation Phase-locked loop circuitry for programmable logic devices
US6177844B1 (en) 1999-01-08 2001-01-23 Altera Corporation Phase-locked loop or delay-locked loop circuitry for programmable logic devices
US6407576B1 (en) * 1999-03-04 2002-06-18 Altera Corporation Interconnection and input/output resources for programmable logic integrated circuit devices
US6480027B1 (en) 1999-03-04 2002-11-12 Altera Corporation Driver circuitry for programmable logic devices
US6366120B1 (en) * 1999-03-04 2002-04-02 Altera Corporation Interconnection resources for programmable logic integrated circuit devices
GB2391671B (en) * 1999-07-02 2004-04-28 Altera Corp Embedded memory blocks for programmable logic
US7227918B2 (en) 2000-03-14 2007-06-05 Altera Corporation Clock data recovery circuitry associated with programmable logic device circuitry
US7333570B2 (en) * 2000-03-14 2008-02-19 Altera Corporation Clock data recovery circuitry associated with programmable logic device circuitry
US6356110B1 (en) * 2000-04-03 2002-03-12 Altera Corporation San Jose Ca Multifunction memory array in a programmable logic device
US6738962B1 (en) 2000-06-12 2004-05-18 Altera Corporation Configuration and/or reconfiguration of integrated circuit devices that include programmable logic and microprocessor circuitry
US6629254B1 (en) * 2000-06-29 2003-09-30 Intel Corporation Clocking architecture to compensate a delay introduced by a signal buffer
US6429681B1 (en) * 2000-08-23 2002-08-06 Altera Corporation Programmable logic device routing architecture to facilitate register re-timing
US7133819B1 (en) 2000-08-24 2006-11-07 Altera Corporation Method for adaptive critical path delay estimation during timing-driven placement for hierarchical programmable logic devices
US6628140B2 (en) * 2000-09-18 2003-09-30 Altera Corporation Programmable logic devices with function-specific blocks
US6538470B1 (en) 2000-09-18 2003-03-25 Altera Corporation Devices and methods with programmable logic and digital signal processing regions
US20020089348A1 (en) * 2000-10-02 2002-07-11 Martin Langhammer Programmable logic integrated circuit devices including dedicated processor components
US6414513B1 (en) * 2000-10-03 2002-07-02 International Business Machines Corporation Customized system-readable hardware/firmware integrated circuit version information
AU2002220600A1 (en) * 2000-10-06 2002-04-15 Pact Informationstechnologie Gmbh Cell system with segmented intermediate cell structure
WO2002059779A1 (en) * 2001-01-25 2002-08-01 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for optimised indexing records of static data with different lenghts
US20070299993A1 (en) * 2001-03-05 2007-12-27 Pact Xpp Technologies Ag Method and Device for Treating and Processing Data
US7581076B2 (en) * 2001-03-05 2009-08-25 Pact Xpp Technologies Ag Methods and devices for treating and/or processing data
US9141390B2 (en) 2001-03-05 2015-09-22 Pact Xpp Technologies Ag Method of processing data with an array of data processors according to application ID
US9552047B2 (en) 2001-03-05 2017-01-24 Pact Xpp Technologies Ag Multiprocessor having runtime adjustable clock and clock dependent power supply
US9436631B2 (en) 2001-03-05 2016-09-06 Pact Xpp Technologies Ag Chip including memory element storing higher level memory data on a page by page basis
US9250908B2 (en) 2001-03-05 2016-02-02 Pact Xpp Technologies Ag Multi-processor bus and cache interconnection system
US9411532B2 (en) 2001-09-07 2016-08-09 Pact Xpp Technologies Ag Methods and systems for transferring data between a processing device and external devices
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7366267B1 (en) 2001-03-07 2008-04-29 Altera Corporation Clock data recovery with double edge clocking based phase detector and serializer/deserializer
US6978287B1 (en) 2001-04-04 2005-12-20 Altera Corporation DSP processor architecture with write datapath word conditioning and analysis
US10031733B2 (en) 2001-06-20 2018-07-24 Scientia Sol Mentis Ag Method for processing data
US6586966B1 (en) 2001-09-13 2003-07-01 Altera Corporation Data latch with low-power bypass mode
US6566906B1 (en) 2001-09-18 2003-05-20 Altera Corporation Specialized programmable logic region with low-power mode
US6937062B1 (en) 2001-09-18 2005-08-30 Altera Corporation Specialized programmable logic region with low-power mode
US6594810B1 (en) 2001-10-04 2003-07-15 M2000 Reconfigurable integrated circuit with a scalable architecture
US6633185B2 (en) 2001-10-16 2003-10-14 Altera Corporation PLL/DLL circuitry programmable for high bandwidth and low bandwidth applications
US8281108B2 (en) 2002-01-19 2012-10-02 Martin Vorbach Reconfigurable general purpose processor having time restricted configurations
US6765408B2 (en) 2002-02-11 2004-07-20 Lattice Semiconductor Corporation Device and method with generic logic blocks
US9170812B2 (en) 2002-03-21 2015-10-27 Pact Xpp Technologies Ag Data processing system having integrated pipelined array data processor
US7142011B1 (en) 2002-04-24 2006-11-28 Altera Corporation Programmable logic device with routing channels
US6781408B1 (en) 2002-04-24 2004-08-24 Altera Corporation Programmable logic device with routing channels
US6747480B1 (en) 2002-07-12 2004-06-08 Altera Corporation Programmable logic devices with bidirect ional cascades
US6977520B1 (en) * 2002-08-13 2005-12-20 Altera Corporation Time-multiplexed routing in a programmable logic device architecture
US7394284B2 (en) 2002-09-06 2008-07-01 Pact Xpp Technologies Ag Reconfigurable sequencer structure
US6940302B1 (en) * 2003-01-07 2005-09-06 Altera Corporation Integrated circuit output driver circuitry with programmable preemphasis
US7307446B1 (en) 2003-01-07 2007-12-11 Altera Corporation Integrated circuit output driver circuitry with programmable preemphasis
US6831480B1 (en) 2003-01-07 2004-12-14 Altera Corporation Programmable logic device multispeed I/O circuitry
US7107477B1 (en) 2003-01-31 2006-09-12 Altera Corporation Programmable logic devices with skewed clocking signals
US7082592B1 (en) 2003-06-16 2006-07-25 Altera Corporation Method for programming programmable logic device having specialized functional blocks
US7272677B1 (en) 2003-08-08 2007-09-18 Altera Corporation Multi-channel synchronization for programmable logic device serial interface
US7440964B2 (en) * 2003-08-29 2008-10-21 Vortaloptics, Inc. Method, device and software for querying and presenting search results
US6888376B1 (en) 2003-09-24 2005-05-03 Altera Corporation Multiple data rates in programmable logic device serial interface
US7131024B1 (en) 2003-09-24 2006-10-31 Altera Corporation Multiple transmit data rates in programmable logic device serial interface
US6954085B2 (en) * 2003-10-13 2005-10-11 International Business Machines Corporation System and method for dynamically executing a function in a programmable logic array
US20050102573A1 (en) * 2003-11-03 2005-05-12 Macronix International Co., Ltd. In-circuit configuration architecture for embedded configurable logic array
US7143312B1 (en) 2003-12-17 2006-11-28 Altera Corporation Alignment of recovered clock with data signal
US7486752B1 (en) 2003-12-17 2009-02-03 Altera Corporation Alignment of clock signal with data signal
US6970020B1 (en) 2003-12-17 2005-11-29 Altera Corporation Half-rate linear quardrature phase detector for clock recovery
US7698358B1 (en) 2003-12-24 2010-04-13 Altera Corporation Programmable logic device with specialized functional block
US7098707B2 (en) * 2004-03-09 2006-08-29 Altera Corporation Highly configurable PLL architecture for programmable logic
US7132852B2 (en) 2004-04-14 2006-11-07 Altera Corporation Routing architecture with high speed I/O bypass path
US7084665B1 (en) 2004-07-22 2006-08-01 Altera Corporation Distributed random access memory in a programmable logic device
US7042247B1 (en) 2004-08-12 2006-05-09 Altera Corporation Programmable look-up tables with reduced leakage current
US7598779B1 (en) 2004-10-08 2009-10-06 Altera Corporation Dual-mode LVDS/CML transmitter methods and apparatus
US7176718B1 (en) 2005-01-21 2007-02-13 Altera Corporation Organizations of logic modules in programmable logic devices
US7304497B2 (en) * 2005-04-29 2007-12-04 Altera Corporation Methods and apparatus for programmably powering down structured application-specific integrated circuits
US7365570B2 (en) * 2005-05-25 2008-04-29 Micron Technology, Inc. Pseudo-differential output driver with high immunity to noise and jitter
US7292070B1 (en) 2005-07-14 2007-11-06 Altera Corporation Programmable PPM detector
US7577929B1 (en) 2005-07-21 2009-08-18 Altera Corporation Early timing estimation of timing statistical properties of placement
US7265587B1 (en) 2005-07-26 2007-09-04 Altera Corporation LVDS output buffer pre-emphasis methods and apparatus
US7848318B2 (en) * 2005-08-03 2010-12-07 Altera Corporation Serializer circuitry for high-speed serial data transmitters on programmable logic device integrated circuits
US7659838B2 (en) 2005-08-03 2010-02-09 Altera Corporation Deserializer circuitry for high-speed serial data receivers on programmable logic device integrated circuits
US8189729B2 (en) 2005-08-03 2012-05-29 Altera Corporation Wide range and dynamically reconfigurable clock data recovery architecture
US7230451B1 (en) 2005-08-22 2007-06-12 Altera Corporation Programmable logic device with routing channels
US8010826B2 (en) * 2005-09-13 2011-08-30 Meta Systems Reconfigurable circuit with redundant reconfigurable cluster(s)
US7478261B2 (en) * 2005-09-13 2009-01-13 M2000 Reconfigurable circuit with redundant reconfigurable cluster(s)
US8620980B1 (en) 2005-09-27 2013-12-31 Altera Corporation Programmable device with specialized multiplier blocks
US7590676B1 (en) 2005-09-27 2009-09-15 Altera Corporation Programmable logic device with specialized multiplier blocks
US7268582B1 (en) 2005-11-22 2007-09-11 Altera Corporation DPRIO for embedded hard IP
US7275196B2 (en) * 2005-11-23 2007-09-25 M2000 S.A. Runtime reconfiguration of reconfigurable circuits
US7902864B1 (en) 2005-12-01 2011-03-08 Altera Corporation Heterogeneous labs
US7391236B2 (en) * 2005-12-27 2008-06-24 Altera Corporation Distributed memory in field-programmable gate array integrated circuit devices
US8301681B1 (en) 2006-02-09 2012-10-30 Altera Corporation Specialized processing block for programmable logic device
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
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
US7822799B1 (en) 2006-06-26 2010-10-26 Altera Corporation Adder-rounder circuitry for specialized processing block in programmable logic device
US7576570B1 (en) 2006-08-22 2009-08-18 Altera Corporation Signal amplitude detection circuitry without pattern dependencies for high-speed serial links
US8386550B1 (en) 2006-09-20 2013-02-26 Altera Corporation Method for configuring a finite impulse response filter in a programmable logic device
US7953162B2 (en) * 2006-11-17 2011-05-31 Intersil Americas Inc. Use of differential pair as single-ended data paths to transport low speed data
US8386553B1 (en) 2006-12-05 2013-02-26 Altera Corporation Large multiplier for programmable logic device
US7930336B2 (en) * 2006-12-05 2011-04-19 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
US7724031B2 (en) * 2007-03-21 2010-05-25 Altera Corporation Staggered logic array block architecture
US8111577B2 (en) 2007-04-17 2012-02-07 Cypress Semiconductor Corporation System comprising a state-monitoring memory element
US8026739B2 (en) 2007-04-17 2011-09-27 Cypress Semiconductor Corporation System level interconnect with programmable switching
US7737724B2 (en) * 2007-04-17 2010-06-15 Cypress Semiconductor Corporation Universal digital block interconnection and channel routing
US8516025B2 (en) 2007-04-17 2013-08-20 Cypress Semiconductor Corporation Clock driven dynamic datapath chaining
US9564902B2 (en) 2007-04-17 2017-02-07 Cypress Semiconductor Corporation Dynamically configurable and re-configurable data path
US7827433B1 (en) 2007-05-16 2010-11-02 Altera Corporation Time-multiplexed routing for reducing pipelining registers
US7949699B1 (en) 2007-08-30 2011-05-24 Altera Corporation Implementation of decimation filter in integrated circuit device using ram-based data storage
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US7733118B2 (en) * 2008-03-06 2010-06-08 Micron Technology, Inc. Devices and methods for driving a signal off an integrated circuit
US8244789B1 (en) 2008-03-14 2012-08-14 Altera Corporation Normalization of floating point operations in a programmable integrated circuit device
US7804325B1 (en) * 2008-04-22 2010-09-28 Altera Corporation Dedicated function block interfacing with general purpose function blocks on integrated circuits
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
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
US8805916B2 (en) * 2009-03-03 2014-08-12 Altera Corporation Digital signal processing circuitry with redundancy and bidirectional data paths
US8706790B1 (en) 2009-03-03 2014-04-22 Altera Corporation Implementing mixed-precision floating-point operations in a programmable integrated circuit device
US8886696B1 (en) 2009-03-03 2014-11-11 Altera Corporation Digital signal processing circuitry with redundancy and ability to support larger multipliers
US8645449B1 (en) 2009-03-03 2014-02-04 Altera Corporation Combined floating point adder and subtractor
US7948792B1 (en) 2009-04-15 2011-05-24 Altera Corporation Memory and techniques for using same
US8650236B1 (en) 2009-08-04 2014-02-11 Altera Corporation High-rate interpolation or decimation filter in integrated circuit device
US8412756B1 (en) 2009-09-11 2013-04-02 Altera Corporation Multi-operand floating point operations in a programmable integrated circuit device
US8396914B1 (en) 2009-09-11 2013-03-12 Altera Corporation Matrix decomposition in an integrated circuit device
US8255702B1 (en) 2009-12-03 2012-08-28 Altera Corporation Programmable logic device with improved security
CA2786812C (en) * 2010-01-18 2018-03-20 Telefonaktiebolaget L M Ericsson (Publ) Method and arrangement for supporting playout of content
US8811555B2 (en) 2010-02-04 2014-08-19 Altera Corporation Clock and data recovery circuitry with auto-speed negotiation and other possible features
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
US8589463B2 (en) 2010-06-25 2013-11-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8862650B2 (en) 2010-06-25 2014-10-14 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
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
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
US9553590B1 (en) 2012-10-29 2017-01-24 Altera Corporation Configuring programmable integrated circuit device resources as processing elements
US9442854B2 (en) 2012-11-15 2016-09-13 Elwha Llc Memory circuitry including computational circuitry for performing supplemental functions
US20140137119A1 (en) * 2012-11-15 2014-05-15 Elwha LLC, a limited liability corporation of the State of Delaware Multi-core processing in memory
US9582465B2 (en) 2012-11-15 2017-02-28 Elwha Llc Flexible processors and flexible memory
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
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
US9379687B1 (en) 2014-01-14 2016-06-28 Altera Corporation Pipelined systolic finite impulse response filter
US10452392B1 (en) 2015-01-20 2019-10-22 Altera Corporation Configuring programmable integrated circuit device resources as processors
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
US9973194B2 (en) 2015-09-01 2018-05-15 Flex Logix Technologies, Inc. Block memory layout and architecture for programmable logic IC, and method of operating same
US10110233B2 (en) 2016-06-23 2018-10-23 Altera Corporation Methods for specifying processor architectures for programmable integrated circuits
US10509757B2 (en) * 2016-09-22 2019-12-17 Altera Corporation Integrated circuits having expandable processor memory
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device
US10686447B1 (en) 2018-04-12 2020-06-16 Flex Logix Technologies, Inc. Modular field programmable gate array, and method of configuring and operating same

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3473160A (en) 1966-10-10 1969-10-14 Stanford Research Inst Electronically controlled microelectronic cellular logic array
USRE34363E (en) 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4617479B1 (en) 1984-05-03 1993-09-21 Altera Semiconductor Corp. Programmable logic array device using eprom technology
US4713792A (en) 1985-06-06 1987-12-15 Altera Corporation Programmable macrocell using eprom or eeprom transistors for architecture control in programmable logic circuits
US4774421A (en) 1984-05-03 1988-09-27 Altera Corporation Programmable logic array device using EPROM technology
US4609986A (en) 1984-06-14 1986-09-02 Altera Corporation Programmable logic array device using EPROM technology
US4642487A (en) 1984-09-26 1987-02-10 Xilinx, Inc. Special interconnect for configurable logic array
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
US4677318A (en) 1985-04-12 1987-06-30 Altera Corporation Programmable logic storage element for programmable logic devices
US4758745B1 (en) 1986-09-19 1994-11-15 Actel Corp User programmable integrated circuit interconnect architecture and test method
US5023606A (en) 1988-01-13 1991-06-11 Plus Logic, Inc. Programmable logic device with ganged output pins
US4871930A (en) 1988-05-05 1989-10-03 Altera Corporation Programmable logic device with array blocks connected via programmable interconnect
US4912342A (en) 1988-05-05 1990-03-27 Altera Corporation Programmable logic device with array blocks with programmable clocking
US4899067A (en) 1988-07-22 1990-02-06 Altera Corporation Programmable logic devices with spare circuits for use in replacing defective circuits
US5231588A (en) 1989-08-15 1993-07-27 Advanced Micro Devices, Inc. Programmable gate array with logic cells having symmetrical input/output structures
US5255203A (en) 1989-08-15 1993-10-19 Advanced Micro Devices, Inc. Interconnect structure for programmable logic device
US5212652A (en) 1989-08-15 1993-05-18 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure
US5073729A (en) 1990-06-22 1991-12-17 Actel Corporation Segmented routing architecture
US5132571A (en) 1990-08-01 1992-07-21 Actel Corporation Programmable interconnect architecture having interconnects disposed above function modules
US5218240A (en) 1990-11-02 1993-06-08 Concurrent Logic, Inc. Programmable logic cell and array with bus repeaters
US5144166A (en) 1990-11-02 1992-09-01 Concurrent Logic, Inc. Programmable logic cell and array
US5122685A (en) 1991-03-06 1992-06-16 Quicklogic Corporation Programmable application specific integrated circuit and logic cell therefor
US5220214A (en) 1991-04-22 1993-06-15 Altera Corporation Registered logic macrocell with product term allocation and adjacent product term stealing
US5121006A (en) 1991-04-22 1992-06-09 Altera Corporation Registered logic macrocell with product term allocation and adjacent product term stealing
US5338984A (en) 1991-08-29 1994-08-16 National Semiconductor Corp. Local and express diagonal busses in a configurable logic array
US5260611A (en) 1991-09-03 1993-11-09 Altera Corporation Programmable logic array having local and long distance conductors
US5371422A (en) 1991-09-03 1994-12-06 Altera Corporation Programmable logic device having multiplexers and demultiplexers randomly connected to global conductors for interconnections between logic elements
US5550782A (en) 1991-09-03 1996-08-27 Altera Corporation Programmable logic array integrated circuits
US5260610A (en) 1991-09-03 1993-11-09 Altera Corporation Programmable logic element interconnections for programmable logic array integrated circuits
US5208491A (en) 1992-01-07 1993-05-04 Washington Research Foundation Field programmable gate array
US5274581A (en) 1992-05-08 1993-12-28 Altera Corporation Look up table implementation of fast carry for adders and counters
US5258668A (en) 1992-05-08 1993-11-02 Altera Corporation Programmable logic array integrated circuits with cascade connections between logic modules
US5317698A (en) 1992-08-18 1994-05-31 Actel Corporation FPGA architecture including direct logic function circuit to I/O interconnections
GB9223226D0 (en) 1992-11-05 1992-12-16 Algotronix Ltd Improved configurable cellular array (cal ii)
US5498975A (en) 1992-11-19 1996-03-12 Altera Corporation Implementation of redundancy on a programmable logic device
JPH06276086A (ja) 1993-03-18 1994-09-30 Fuji Xerox Co Ltd フィールドプログラマブルゲートアレイ
US5350954A (en) 1993-03-29 1994-09-27 Altera Corporation Macrocell with flexible product term allocation
US5483178A (en) 1993-03-29 1996-01-09 Altera Corporation Programmable logic device with logic block outputs coupled to adjacent logic block output multiplexers
US5381058A (en) 1993-05-21 1995-01-10 At&T Corp. FPGA having PFU with programmable output driver inputs
GB9312674D0 (en) * 1993-06-18 1993-08-04 Pilkington Micro Electronics Configurabel logic array
US5457410A (en) 1993-08-03 1995-10-10 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US5467029A (en) 1993-10-28 1995-11-14 Cypress Semiconductor Corp. OR array architecture for a programmable logic device
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
WO1995022205A1 (en) 1994-02-15 1995-08-17 Xilinx, Inc. Tile based architecture for fpga
JP3570724B2 (ja) 1994-05-04 2004-09-29 アトメル・コーポレイション 領域信号経路指定およびユニバーサル信号経路指定を伴うプログラマブルロジックデバイス
US5689195A (en) 1995-05-17 1997-11-18 Altera Corporation Programmable logic array integrated circuit devices
US5543732A (en) 1995-05-17 1996-08-06 Altera Corporation Programmable logic array devices with interconnect lines of various lengths
US5909126A (en) 1995-05-17 1999-06-01 Altera Corporation Programmable logic array integrated circuit devices with interleaved logic array blocks
US5614840A (en) 1995-05-17 1997-03-25 Altera Corporation Programmable logic array integrated circuits with segmented, selectively connectable, long interconnection conductors
US5652529A (en) 1995-06-02 1997-07-29 International Business Machines Corporation Programmable array clock/reset resource
US5565793A (en) 1995-08-22 1996-10-15 Altera Corporation Programmable logic array integrated circuit devices with regions of enhanced interconnectivity
US5764080A (en) 1995-08-24 1998-06-09 Altera Corporation Input/output interface circuitry for programmable logic array integrated circuit devices
US5631576A (en) 1995-09-01 1997-05-20 Altera Corporation Programmable logic array integrated circuit devices with flexible carry chains
GB2305759A (en) * 1995-09-30 1997-04-16 Pilkington Micro Electronics Semi-conductor integrated circuit
US5670895A (en) 1995-10-19 1997-09-23 Altera Corporation Routing connections for programmable logic array integrated circuits
US5872463A (en) 1996-04-04 1999-02-16 Altera Corporation Routing in programmable logic devices using shared distributed programmable logic connectors
US5796269A (en) * 1996-04-09 1998-08-18 Xilinx, Inc. Composable memory array for a programmable logic device and method for implementing same
US5999015A (en) 1997-02-20 1999-12-07 Altera Corporation Logic region resources for programmable logic devices
US5914616A (en) 1997-02-26 1999-06-22 Xilinx, Inc. FPGA repeatable interconnect structure with hierarchical interconnect lines
US6020759A (en) * 1997-03-21 2000-02-01 Altera Corporation Programmable logic array device with random access memory configurable as product terms
US6072332A (en) 1997-10-14 2000-06-06 Altera Corporation Variable depth memories for programmable logic devices
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
US6215326B1 (en) * 1998-11-18 2001-04-10 Altera Corporation Programmable logic device architecture with super-regions having logic regions and a memory region

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7822968B2 (en) 1996-12-09 2010-10-26 Martin Vorbach Circuit having a multidimensional structure of configurable cells that include multi-bit-wide inputs and outputs
US8156312B2 (en) 1996-12-09 2012-04-10 Martin Vorbach Processor chip for reconfigurable data processing, for processing numeric and logic operations and including function and interconnection control units
US8195856B2 (en) 1996-12-20 2012-06-05 Martin Vorbach I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures
US7650448B2 (en) 1996-12-20 2010-01-19 Pact Xpp Technologies Ag I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures
US7899962B2 (en) 1996-12-20 2011-03-01 Martin Vorbach I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures
USRE44365E1 (en) 1997-02-08 2013-07-09 Martin Vorbach Method of self-synchronization of configurable elements of a programmable module
USRE45223E1 (en) 1997-02-08 2014-10-28 Pact Xpp Technologies Ag Method of self-synchronization of configurable elements of a programmable module
USRE45109E1 (en) 1997-02-08 2014-09-02 Pact Xpp Technologies Ag Method of self-synchronization of configurable elements of a programmable module
US8819505B2 (en) 1997-12-22 2014-08-26 Pact Xpp Technologies Ag Data processor having disabled cores
US8468329B2 (en) 1999-02-25 2013-06-18 Martin Vorbach Pipeline configuration protocol and configuration unit communication
JP2006287964A (ja) * 1999-03-04 2006-10-19 Altera Corp プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
US8726250B2 (en) 1999-06-10 2014-05-13 Pact Xpp Technologies Ag Configurable logic integrated circuit having a multidimensional structure of configurable elements
US8312200B2 (en) 1999-06-10 2012-11-13 Martin Vorbach Processor chip including a plurality of cache elements connected to a plurality of processor cores
US8230411B1 (en) 1999-06-10 2012-07-24 Martin Vorbach Method for interleaving a program over a plurality of cells
US8301872B2 (en) 2000-06-13 2012-10-30 Martin Vorbach Pipeline configuration protocol and configuration unit communication
US9047440B2 (en) 2000-10-06 2015-06-02 Pact Xpp Technologies Ag Logical cell array and bus system
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US8471593B2 (en) 2000-10-06 2013-06-25 Martin Vorbach Logic cell array and bus system
US8312301B2 (en) 2001-03-05 2012-11-13 Martin Vorbach Methods and devices for treating and processing data
US9075605B2 (en) 2001-03-05 2015-07-07 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
US8099618B2 (en) 2001-03-05 2012-01-17 Martin Vorbach Methods and devices for treating and processing data
US7657877B2 (en) 2001-06-20 2010-02-02 Pact Xpp Technologies Ag Method for processing data
US8869121B2 (en) 2001-08-16 2014-10-21 Pact Xpp Technologies Ag Method for the translation of programs for reconfigurable architectures
US7996827B2 (en) * 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US8209653B2 (en) 2001-09-03 2012-06-26 Martin Vorbach Router
US7840842B2 (en) 2001-09-03 2010-11-23 Martin Vorbach Method for debugging reconfigurable architectures
US8407525B2 (en) 2001-09-03 2013-03-26 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US8429385B2 (en) 2001-09-03 2013-04-23 Martin Vorbach Device including a field having function cells and information providing cells controlled by the function cells
US8069373B2 (en) 2001-09-03 2011-11-29 Martin Vorbach Method for debugging reconfigurable architectures
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US8127061B2 (en) 2002-02-18 2012-02-28 Martin Vorbach Bus systems and reconfiguration methods
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US8156284B2 (en) 2002-08-07 2012-04-10 Martin Vorbach Data processing method and device
US8281265B2 (en) 2002-08-07 2012-10-02 Martin Vorbach Method and device for processing data
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US8812820B2 (en) 2003-08-28 2014-08-19 Pact Xpp Technologies Ag Data processing device and method
US7446562B2 (en) 2004-06-15 2008-11-04 Nec Corporation Programmable semiconductor device
JP2006252440A (ja) * 2005-03-14 2006-09-21 Fujitsu Ltd 再構成可能演算処理装置
US7743236B2 (en) 2005-03-14 2010-06-22 Fujitsu Limited Reconfigurable processor
JP4527571B2 (ja) * 2005-03-14 2010-08-18 富士通株式会社 再構成可能演算処理装置
US8250503B2 (en) 2006-01-18 2012-08-21 Martin Vorbach Hardware definition method including determining whether to implement a function as hardware or software

Also Published As

Publication number Publication date
US20030080778A1 (en) 2003-05-01
US6480028B2 (en) 2002-11-12
US6215326B1 (en) 2001-04-10
US20020084801A1 (en) 2002-07-04
US6879183B2 (en) 2005-04-12
US20010006348A1 (en) 2001-07-05
DE69933525D1 (de) 2006-11-23
EP1005163A3 (en) 2001-10-24
EP1005163B1 (en) 2006-10-11
EP1005163A2 (en) 2000-05-31
DE69933525T2 (de) 2007-04-05

Similar Documents

Publication Publication Date Title
JP2000201066A (ja) プログラマブルロジックデバイス構造
US5371422A (en) Programmable logic device having multiplexers and demultiplexers randomly connected to global conductors for interconnections between logic elements
US6239613B1 (en) Tristate structures for programmable logic devices
US5942914A (en) PLD with split multiplexed inputs from global conductors
US6567969B1 (en) Configurable logic array including lookup table means for generating functions of different numbers of input terms
US6600337B2 (en) Line segmentation in programmable logic devices having redundancy circuitry
JP3471088B2 (ja) 改良されたプログラマブル論理セルアレイアーキテクチャ
US6154055A (en) Programmable logic array integrated circuit devices
US5652529A (en) Programmable array clock/reset resource
US6028808A (en) Programmable logic array integrated circuits
US6181162B1 (en) Programmable logic device with highly routable interconnect
US6882177B1 (en) Tristate structures for programmable logic devices
US6992947B1 (en) Dual-port SRAM in a programmable logic device
US20020130681A1 (en) Programmable logic array integrated circuits
US6725316B1 (en) Method and apparatus for combining architectures with logic option
EP0581461A2 (en) Reprogrammable interconnect architecture using fewer storage cells than switches
JP5412032B2 (ja) 半導体記憶装置
US6459303B1 (en) High speed programmable address decoder
JP4002749B2 (ja) 半導体装置
US7639557B1 (en) Configurable random-access-memory circuitry
US6819135B2 (en) Fast signal conductor networks for programmable logic devices
JPH06150690A (ja) 半導体記憶装置