JP4206203B2 - プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース - Google Patents

プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース Download PDF

Info

Publication number
JP4206203B2
JP4206203B2 JP2000603150A JP2000603150A JP4206203B2 JP 4206203 B2 JP4206203 B2 JP 4206203B2 JP 2000603150 A JP2000603150 A JP 2000603150A JP 2000603150 A JP2000603150 A JP 2000603150A JP 4206203 B2 JP4206203 B2 JP 4206203B2
Authority
JP
Japan
Prior art keywords
conductors
input
signal
programmable logic
logic
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
JP2000603150A
Other languages
English (en)
Other versions
JP2002538634A5 (ja
JP2002538634A (ja
Inventor
ンガイ,トニー
ペダースン,ブルース
シューマレイブ,サーゲイ
シュライカー,ジェームズ
ヒュン,ウェイ−ジェン
ハットン,マイケル
マルリ,ビクター
パテル,ラケシュ
ジェイ カザリアン,ピーター
リーバー,アンドリュー
ダブリュー メンデル,ディビッド
パーク,ジム
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 JP2002538634A publication Critical patent/JP2002538634A/ja
Publication of JP2002538634A5 publication Critical patent/JP2002538634A5/ja
Application granted granted Critical
Publication of JP4206203B2 publication Critical patent/JP4206203B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/17736Structural details of routing resources
    • 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/1733Controllable logic circuits
    • H03K19/1737Controllable logic circuits using multiplexers
    • 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/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • 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
    • H03K19/17744Structural details of routing resources for input/output signals

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)
  • Semiconductor Integrated Circuits (AREA)

Description

【0001】
【発明の背景】
この発明は、プログラマブルロジックアレー集積回路デバイス(“プログラマブルロジックデバイス”または“PLD”)に係り、より具体的には、プログラマブルロジックデバイスに適用してこの種のデバイスの動作速度を増加するための相互接続リソースに関する。本発明はさらに、(例えばクロックおよびクリア信号等の)二次信号配分、入力/出力回路、ロジックモジュール間のカスケード接続等の、PLDの他の要素に関する。
【0002】
プログラマブルロジックデバイスは、典型的に、(1)多数の領域のプログラマブルロジックと、(2)これらのロジック領域間において相互に信号を伝送するためのプログラマブル相互接続リソースとを備えている。各ロジック領域は、いくつかの比較的単純なロジック機能を実施するためにプログラム可能である。相互接続リソースは複数のロジック領域が共に動作して個々のロジック領域が実施するものよりもはるかに複雑なロジック機能を実施し得るようにプログラム可能である。既知のPLDの例としては、ウォールストロームの米国特許第3473160号公報、フリーマンの米国特許第34363号公報、クリフ氏等の米国特許第5689195号公報、クリフ氏等の米国特許第5909126号公報、ジェファーソン氏等の米国特許出願第09/266235号公報に記載されており、これらはここにおいて参照に組み入れてある。
【0003】
PLDが動作する最大速度の典型的な尺度は、信号がデバイスを通じてあるロジック領域のレジスタ(またはレジスタを有するその他のリソース)から他のロジック領域のレジスタ(またはレジスタを有するその他のリソース)へ伝送されるために必要とされる最長時間である。PLDは、この最長信号伝送時間よりも短い周期を有するクロック速度に安定的に同期させることはできない。殆どのPLDにおいて重要な設計目標は、最長信号伝送時間を短縮することである。従って、ロジック領域および相互接続リソースの両方が、この点を考慮して時間効率化を目的として設計される。しかしながら、このことを一度達成すると、所与の集積回路製造技術において、最長信号伝送時間をさらに大幅に短縮することは困難である。例えば、相互接続速度を増加させるために、より大きなドライバおよびパストランジスタが使用されるが、これに対応してルーティングチャネル上に付加される拡散も増加する。金属RC遅延を縮小するためにコンダクタの相互接続に幅の大きい金属トラックを使用するが、これによってサイズが拡大する。結果として、最終的な速度の向上が低減する。
【0004】
前述の視点から、本発明の目的は、改善されたプログラマブルロジックデバイスを提供することである。
【0005】
さらに、本発明のより具体的な目的は、プログラマブルロジックデバイス用の改善された相互接続リソースを提供することである。
【0006】
さらに、本発明の別の具体的な目的は、プログラマブルロジックデバイスの最長信号伝送時間特性を、単純に全てのリソースの速度を増加させた際に生じる問題点を伴うことなく短縮するための相互接続リソースを提供することである。
【0007】
本発明のさらに別の目的は、二次(例えばクロックおよびクリア)信号配分、入力/出力回路、ならびに2つまたはそれ以上のロジックモジュールをカスケード接続する回路等の要素に関してPLDを改善することである。
【0008】
【発明の概要】
本発明のこれらおよびその他の目的は、本発明の原理に従って、少なくとも部分的に実質的に平行な2つの形状体またはサブセット内に構成された相互接続リソースを備えるプログラマブルロジックデバイスを提供することによって解決される。第1のサブセット内の相互接続リソースは、いわゆる“ノーマル”信号伝送速度特性を有するように形成される。実質的に平行な第2のサブセット内の相互接続リソースは、充分に大きな信号伝送速度特性を有するように形成される。例えば、第1のサブセットと比べて、第2のサブセットはより大きなドライバおよびパスゲートと、より幅広かつ広く離間して配置されたコンダクタ用のメタルトラックと、さらに信号伝送速度を増加させるためのその他の特性をもって構成される。両方の形式の相互接続リソースが存在する場合、殆どのリソースはノーマル速度のものとし、少数(20%ないし33%、好適には25%)のリソースを高速度形式とすることが好適である。
【0009】
高速相互接続リソースは、デバイス上において充分に広域に広げて配置することが好適であり、これによって実質的に任意のデバイス上の2つ(またはそれ以上)のロジック領域間の信号のルーティングのために少なくとも部分的に使用することができる。(勿論、高速リソースは、略最高価値のものであり、従ってデバイス上において比較的に遠くにあるロジック領域間の接続を形成するために使用することに最も適していることが理解されよう。)従って、実質的にデバイス上の任意の位置のロジック領域間の相互接続は、全てノーマル速度相互接続リソースを介して形成されるか、または少なくとも部分的に高速相互接続リソースを介して形成される。
【0010】
高速度リソースに対する典型的な設計目標は、充分な量の充分に高速なリソースを設けることによってデバイスがクロックされる速度を倍増させることであり、従ってこれらのリソースはデバイスに最長の信号伝送時間をもたらす信号を伝送するために使用することができ、これによってこの信号の伝送時間を半減させることができる。他方、単にデバイス上の全ての相互接続リソースの速度を大幅に増加させる際の問題点を回避するために、任意の所与の種類の相互接続リソースのうちの少ない割合のみを高速度化する。多数の部分はノーマル速度のままとし、それほどの速度を必要としない大半の相互接続に使用される。
【0011】
本発明に従って、I/Oセル(I/O端子を含む)の配列をデバイス上のロジックおよび他の配列の中に点在させることによって、PLDの入力/出力(“I/O”)回路を改善することができる。これによってI/O端子がより均一にデバイスを横断して配置され、その結果デバイスの周囲にのみI/O端子を配置した場合に生じるI/O端子不足を軽減することができる。I/O端子をデバイスを横断して配分することによって、二次(例えばクロックおよびクリア)信号がデバイスの中央に近いI/O端子から伝送されるため、これらの信号の配分(例えばスキューを削減して)を容易化することができる。二次信号配分回路は、このような改善されたI/O端子配置の利点を使用するように形成される。隣接するまたは近接するロジック領域間のカスケード接続は、これらの接続の速度を増加させ、実用性を向上させ、これが使用されていない際のデバイス上における負担を軽減するように改善することができる。
【0012】
本発明のその他の特徴、特性ならびに種々の利点は、添付図面を参照しながら以下に詳細に記述する実施例の説明によって明らかにされる。
【0013】
【実施例の詳細な説明】
図1には、本発明に従って構成された例示的なプログラマブルロジックデバイス10が示されている。デバイス10は12行のプログラマブルロジック領域20を含んでいる。各行は40個の領域20からなる。従って、領域20はデバイス10上において12行40列の領域20からなる2次元行列として配置されている。
【0014】
各領域20は、10個のプログラマブルロジック小領域30を含んでいる。図1の煩雑化を避けるため、個々の小領域30は最上部左端の領域20についてのみ示してある。この点に関して後で詳細に述べるように、各小領域30はデバイス10のユーザがプログラムしていくつかの比較的小さなロジック機能のいずれかを実施することができる。非常に複雑なロジック機能は、相互接続コンダクタのプログラマブルネットワークおよびデバイス10上の他の適宜な相互接続リソースを介して小領域30を連結することによって実施することができる。
【0015】
領域20の行の中に、5行の入力/出力(“I/O”)端子および関連するI/O回路40が配分されている。I/O行40の1つは、領域20の行の最上部に配置されている。別のI/O行40は、領域20の行の最底部に配置されている。3番目のI/O行40は、3番目と4番目の領域20の行の間に配置されている。4番目のI/O行40は、6番目と7番目の領域20の行の間に配置されている。5番目のI/O行40は、9番目と10番目の領域20の行の間に配置されている。
【0016】
最上部のI/O行40の上方には、メモリ領域50の行が配置され、これはデバイス10のユーザがランダムアクセスメモリ(“RAM”)、リードオンリーメモリ(“ROM”)、積算項(“P項”)ロジック、内容アドレスメモリ等として使用することができる。別の同様なメモリ領域50の行は、最底部I/O行40の下方に配置されている。適宜なメモリ領域50の回路については、クリフ氏等の米国特許第5550782号公報、サング氏等の米国特許第5555214号公報、サング氏等の米国特許第5633830号公報、クリフ氏等の米国特許第5689195号公報、サング氏等の米国特許第5717901号公報、サング氏等の米国特許第5802540号公報、ヘイル氏の米国特許出願第09/034050号公報、ペダーソン氏の米国特許出願第09/023251号公報、レディ氏等の米国特許出願第09/107533号公報、レディ氏等の米国特許出願第09/107926号公報、ガイ氏等の米国特許出願第09/124649号公報、ヘイル氏の米国特許出願第09/292448号公報、ヘイル氏の米国特許出願第09/389995号公報に記載されており、これらは全てここにおいて全体的に参照に組み入れてある。
【0017】
メモリ領域50の各行の右端にはPLL回路の領域60が配置され、これは図1には示されていない外部回路からデバイス10に付加されるクロック信号に対して位相シフトされたクロック信号を形成するように使用される。適宜なPLL回路については、ジェファーソン氏の米国特許第5642082号公報、ジェファーソン氏の米国特許第5699020号公報、レディ氏等の米国特許第5847617号公報、サング氏等の米国特許出願第09/366940号公報、サング氏等の米国特許出願第09/368464号公報、サング氏等の米国特許出願第09/392095号公報、サング氏等の米国特許出願第09/393036号公報に記載されており、これらはここにおいて参照として全体的に組み入れてある。
【0018】
領域50の最上の行の左端には、制御ロジックおよび端子の領域70が配置されている。この回路は、デバイス10を通常のロジック動作に使用している際より優先してこれをデバイスのプログラミングおよびテストに使用している際にこのデバイスを制御するために使用される。
【0019】
領域50の最底部の行の左端にはJTAGロジックおよび端子の領域80が配置されている。領域80の回路は、デバイスの使用者が通常のロジック動作に優先してデバイス10のインシステムプログラミングおよびテストに使用することができる。領域80に使用される適宜な回路は、例えばチュー氏等の米国特許第5650734号公報、およびウォン氏等の米国特許第5699312号公報に記載されており、これらはここにおいて全体的に参照に組み入れてある。
【0020】
図1に示された回路の最上の行はアドレスおよびレジスタ回路90であり、これは通常のロジック動作に優先してデバイス10をプログラムする際に使用される。図1に示された回路の最も左の列はデータレジスタ回路100であり、これは通常のロジック動作に優先してプログラムを行っている際に使用される。図1に示された回路の最も右側の列はテストレジスタ回路110であり、これは通常のロジック動作に優先してプログラムを行っている際に使用される。典型的な使用に際して、プログラミングデータは図示されていない外部回路から回路100にロードされる。このデータはデバイス10を通じて左から右に流れ、回路90内のアドレス上方によって決定された垂直スライス位置に記録される。デバイス10が適正にプログラム可能であることと、および/または適正に動作可能であることを確認するために使用するデータは、レジスタ110を介してデバイス10から読み出すことができる。例示的な回路において、前述した説明および領域70についての記載によって示されたデバイス10のプログラミングおよびテスト特性に関しては、クリフ氏の米国特許第5237219号公報を参照すべきである。
【0021】
図1に示された要素でまだ説明してないものは、デバイス10の左右方向の中央またはその付近に配置されたいわゆる二次信号コンダクタと呼ばれる垂直配置領域120である。領域120は、信号伝送リソースのネットワークの一部であり、デバイス10全体で広く必要とされる信号を分配するために使用される。これらの信号の例としては、クロック信号、クリア信号、セット信号、リセット信号等が挙げられる。領域120および関連する回路の実施例が図7Aおよび図7Bに示されており、後でこの点に関して説明する。
【0022】
一般的に、プログラミングおよびテストモードと回路は実質的に本発明にとは関係なく、従ってデバイス10のこれらの機能をさらに詳しく説明する必要はない。このことは要素70,80,90,100,および110に該当する。デバイスのこの特性に関する構造および技術は当業者において周知であり、この点に関して先に挙げた参照文献に例が示されている。PLL回路60の構成、動作、ならびに使用方法は実質的に本発明とは関係なく、これらの回路についてより詳しく説明する必要はない。再び、適宜なPLL回路は当業者において周知であり、この点に関して先に挙げた参照文献に例が示されている。本発明は、メモリ領域50を補助するように拡張することができ、このような拡張可能性については以下の記述において説明され、これは主に本発明をロジック領域20、I/O領域40、これらのロジック領域およびI/O領域を含む相互接続に適用することに関する。従って、メモリ領域50についてもさらに詳しく説明する必要はない。
【0023】
図2には図1の一部であるが、デバイス10に設けられた相互接続リソースのいくつかが示されている。ロジック領域20の各列に結合し、かつメモリ行50へと延在する、複数のいわゆる広域垂直コンダクタ200が設けられている。煩雑化を避けるため、図1には代表的ないくつかのコンダクタ200のみが示されている。コンダクタ200の各グループは、参照符号200aで示される比較的大きなコンダクタのサブセットを有し、これは通常の信号伝送速度特性を有する。コンダクタ200の各グループはまた参照符号200bで示される比較的小さなコンダクタのサブセットを含んでおり、これは大幅に速い信号伝播速度特性を有する。例えば、各サブセット200aは該当するコンダクタ200のセットのうちの約67ないし80%(最も好適には約75%)を含んでおり、各サブセット200bは該当するコンダクタ200のセットのうちの約20ないし33%(最も好適には約25%)からなる。
【0024】
ロジック領域20の各列の上半分に結合し、またメモリ領域50の上の行に延在する、複数のいわゆる半垂直相互接続コンダクタ210が設けられている。半垂直相互接続コンダクタ210は、ロジック領域20の各列の下半分ならびにメモリ領域50の下方の行に結合されている。図面の煩雑化を避けるために、代表的なコンダクタ210のみが示されている。コンダクタ200の場合と同様に、コンダクタ210の各セットも比較的大きなノーマル速度コンダクタのサブセット210aと、比較的小さな高速コンダクタのサブセット210bを備えている。コンダクタ210aとコンダクタ210bの比率は、コンダクタ200aと200bの比率と同様なものにすることができる。
【0025】
ロジック領域20の各列に結合して、複数のいわゆる交互配置垂直(“IV”)コンダクタ220が設けられている。再び、図面の煩雑化を避けるため代表的なコンダクタ220のみが示されている。コンダクタ220の各グループは、上下に近接するロジック領域20とメモリ領域50との間を延在するとともに、間在しているI/O領域40のいずれかを介して延在している。コンダクタ200および210が交差する要素20,40および50のいずれかの間において信号を伝送するために使用されるのに対し、コンダクタ220は上下に近接する要素20および50の間において接続速度を高めるために使用されるとともに、デバイス10上の垂直相互接続に必要とされるコンダクタ200および210の数を削減するよう作用する。IVコンダクタに関しての追加的な詳細は、米国特許(出願番号、出願日不明、文書番号第174/173)に記載されており、これはここにおいて全体的に参照に組み入れてある。
【0026】
ロジック領域20の各行に結合して、複数のいわゆる広域水平相互接続コンダクタ230が設けられている。図面の煩雑化を避けるために代表的なコンダクタ230のみが図示されている。コンダクタ230の各セットは、比較的大きなノーマル速度コンダクタのサブセット230aと比較的小さな極めて高速のコンダクタのサブセット230bを含んでいる。ノーマル速度コンダクタと高速コンダクタとの比率は前述したノーマル速度コンダクタと高速コンダクタとの比率と同様である。
【0027】
ロジック領域20の各行の左半分に結合するとともにこれに沿って延在する、複数のいわゆる半または直接水平相互接続コンダクタ240が設けられている。半水平コンダクタ240はロジック領域20の各行の右半分に沿って延在している。再度、図面の煩雑化を避けるために少数の代表的なコンダクタ240のみが図示されている。
【0028】
さらに、ロジック領域20の各行に結合して、複数群のいわゆるHFNL(第1ライン水平ネットワーク)相互接続コンダクタ250が設けられている。いくつかのHNFLコンダクタを短くする必要がある行の末端部を除いて、NFNLコンダクタ250の各グループは10個のロジック領域20に架かっている。加えて、HNFLコンダクタ250の各グループ内のコンダクタは、ロジック領域20またはそのグループの中央付近にあるその他の信号源によってのみ駆動することができる(再度、行の末端のものは除いて)。コンダクタ230および240はこれらが架かっているロジック領域20のいずれかの間において信号を伝送することに使用され、コンダクタ250はロジック領域20またはこのコンダクタを含むグループの中央にある他の信号源から中央ロジック領域の左および/または右の固定数のロジック領域に伝送される。各行内の各ロジック領域20は、該当する複数のコンダクタ250に対する中央/駆動ロジック領域となる。HNFLコンダクタに関しての追加的な詳細は米国特許出願(出願番号、出願日不明、文書番号174/173号)に記載されており、これはここにおいて全体的に参照に組み入れられている。
【0029】
図3には、ロジック領域20の行に結合された水平コンダクタからこの行内のロジック領域に信号を伝送するための代表的な相互接続および回路が示されている。図3には、ロジック領域付近を通過する215本のノーマル速度広域水平コンダクタ230aと、そのロジック領域付近を通過する100本の高速広域水平コンダクタ230bと、そのロジック領域付近を通過する105本の半水平コンダクタ240と、そのロジック領域付近を通過する90本のHNFLコンダクタ250と、そのロジック領域付近を通過する12本の二次コンダクタ260とが存在することが示されている。前述したように、最後に挙げた二次コンダクタ260は、クロック、クリア等の信号を伝送することができる。これらの信号260のうちのいくつかは中央二次信号領域120(図1)から伝送することができ;その他の信号はより局所的(例えば隣接するロジック領域20の行内)に形成されソースの局所内(すなわちそのソースの行)においてのみ使用することができる(後述する図7Aおよび図7Bに関する詳細な説明を参照)。
【0030】
図3には、さらに代表的な論理領域フィーディングコンダクタ300が示されている。図示されたコンダクタ300は、図示されたコンダクタ230a,230b等が作用するロジック領域行内の水平に近接する2つのロジック領域20の間に配置された26本のコンダクタのグループのうちの1つである。26本のコンダクタ300は、全てのロジック領域行内の全ての水平に近接するロジック領域20の間に間在している。
【0031】
各コンダクタ300について、コンダクタ230a、230b、240、および260のうちの選択された1つが2つのプログラマブルロジックコネクタ(“PLC”;例えばマルチプレクサ)270−1および270−2の入力に接続される。PLC270は、それぞれ通常プログラマブル動作制御要素(“FCE”)272によって制御され、その入力のうちのいずれかの上の信号をその出力に適用する。(4つの入力が図示されているが、各PLC270はそれよりも少ないかまたは多い入力(例えば、2,3,6,7または8個の入力)を備えることもできることが理解されよう。)各PLC270出力信号は、該当する反転バッファ(増幅器)274に付加され、従って該当するPLC276の入力に付加される。PLC276への他の入力は、近接するコンダクタ230bおよび250のうちの選択された1つ、ならびに(伝送線280を介して)相関する(もし存在すれば)I/O領域40から通じている。PLC276はFCE(図示されていないがFCE272と同様である)によって制御され、その出力に入力のうちのいずれかの上の信号を付加する。PLC276の出力信号は、反転バッファ278を介してコンダクタ300に付加される。前述したI/O領域40とロジック領域20との相関は以下のようである:最上の行20と40、第2行40と第4行20、第3行40と第7行20、第4行40と第10行20、第5行40と第12行20である。
【0032】
図3に示された相互接続は、図示されたロジック領域20に近接するコンダクタ230,240,250,260および280のそれぞれがそのロジック領域の左または右の少なくとも1本のコンダクタ300へ通じる経路を有するように形成される。加えて、各コンダクタ230bおよび250は、PLC276を通じて直接的にかつPLC270を経由することなく、そのロジック領域の左または右の少なくとも1本のコンダクタ300へ通じる経路を有する。この最後の点は、コンダクタ230bおよび250が速度に関して最適化されているため重要であり、また要素276と278のみを介して信号をコンダクタ300に伝送する方が要素270および274も介して伝送するより高速である。
【0033】
図4には、水平に近接する領域20の間に配置されデバイスの他の相互接続リソースからこれらの領域に信号を伝送するとともにこれらの領域内の小領域30の中の局所的相互接続を形成するための代表的なコンダクタが示されている。これらのコンダクタの各グループは、26本のコンダクタ300(その信号ソースは図3に示されている)と、近接するHNFLコンダクタ250の1つの支線と、10本の局所フィードバックコンダクタ310とを含んでいる。これらの局所フィードバックコンダクタ310のうちの5本は、図示されたコンダクタグループの左側の領域20内の小領域30のうちの5つからの信号を受信する。これらのコンダクタ310の残りの5本は、図示されたコンダクタグループの右側の領域20内の小領域30のうちの5つからの信号を受信する。
【0034】
各小領域30は、時々入力A−Dで示される4つのデータ信号入力を備える。コンダクタ300および310は、いずれもこれらのコンダクタの右側の10個の小領域30の入力AおよびCへ付加される信号源、ならびにこれらのコンダクタの左側の10個の小領域30の入力BおよびDへ付加される信号源として使用することができる。他方、図示されたHNFLコンダクタ支線250は、最上右側の小領域の入力Aに付加される信号源、ならびに最上左側の小領域の入力Bに付加される信号源として使用することができる。中間の4本のコンダクタ320が各小領域入力A−Dに結合されている。これらのコンダクタ320に交差するコンダクタ250,300,および310のそれぞれが、各入力A−Dに結合された4本のコンダクタ320の1本に接続することができる。これらの接続は、FCE324によって4つずつのグループにおいて制御されるPLC322によって形成される。(4つずつのグループの例外として、HNFL支線250への接続のためにグループ分けが行われる。)従って、単一のFCE324は4本のコンダクタ300/310を各入力A−Dに結合された4本のコンダクタ320へ接続するようプログラムされる。各入力A−Dに付加される信号の最終的な選択は、この入力に結合された4つのFCE326の1つをプログラミングしてこの入力に結合されたPLC328のうちの1つを付勢することによって実施される。(他方、HNFL支線250上の信号は、該当するFCE324および326を適宜にプログラミングすることによってA入力またはB入力に付加することができる。
【0035】
前述のことから、図4に示されているように、HNFL信号はコンダクタ300等が作用するロジック領域20への2つの可能な経路を有する。これらの経路のうちの1つは、図3の要素276および278を介する比較的高速なルーティングである。1つの特定のHNFLコンダクタ250および図4に示されたコンダクタ300は作用する最上部の小領域30に対する他の経路は、図4に示されたコンダクタ支線250と関連する要素322および328を介するより高速のルーティングである。多少低速ではあるが、第1の経路は、近接するHNFL信号を図4の回路が作用するロジック領域20への少なくとも多数の入力へ伝送する点において、より広範な目的を有している。他方、高速の経路は、近接するHNFLの1つにのみ作用し、図4の回路が作用するロジック領域20のそれぞれの中の1つの小領域30の入力端子への入力のみを可能にする点において、より限定的なものとなる。
【0036】
図5Aおよび図5B(図5で総称することもある)には、代表的な小領域30の例示的な実施例が示されている。小領域30の核は、4入力ルックアップテーブル(要素402,404,406,および408)とレジスタ480である。この点に関して後に説明する他の特徴とともに記述されるが、小領域30の基本的な動作は、入力A−Dの任意の論理的組合わせとすることができるルックアップテーブルの出力信号(PLC408からの)を形成するようプログラム可能な4入力ルックアップテーブルである。ルックアップテーブル出力信号は、PLC482のいずれか1つまたはいくつかを介して直接的に出力される。他方、またはこれに加えて、ルックアップテーブル出力信号はレジスタ480によって記録され、その後記録されていないルックアップテーブル出力信号を出力するために使用されていないいずれかのPLC482を介して出力される。
【0037】
代表的な小領域30についてより詳細に説明すると、第1ステージの4入力ルックアップテーブルロジックは、4つの2入力ルックアップテーブル402a−402dとして構成されている。各ルックアップテーブル402は小領域入力AおよびBを受信し、これら2つの入力信号のいずれかの論理的組合わせである出力信号を形成する。4入力ルックアップテーブルの第2のステージは、2つのPLC404aおよび404bとして構成されている。PLC(例えばマルチプレクサ)404は、(1)小領域30へのC入力か、(2)小領域30へのD入力か、または(3)PLC410bによって選択されたキャリーイン信号によって制御することができる。選択肢(1)、(2)、および(3)からの選択は、PLC414aを適宜にプログラムすることによって実施される。小領域が特定のバイナリ計算動作(例えば、高速加算器、カウンタ、マルチプライア、およびワイドパリティ機能)の一部分を実施するために使用される場合、選択肢(3)が選択される。選択肢(1)と(2)の間の選択は、エレメント406,408および418に関連して詳細に説明する信号タイミング要件に基づいて実施される。出力信号PLC404aおよび404bは、それぞれ反転バッファ406aおよび406bによって増幅されている。(要素404はしばしばPLCと呼称されるが、これらはプログラム制御よりむしろ動的に制御される。言い換えると、FCEによってプログラム制御されデバイス10が一度プログラムされた通り常に同一の信号選択をするよりも、むしろ要素404はデバイスの通常ロジック動作中の異なった時間に異なった信号選択を実施し、これはその制御信号はそのロジック動作の結果に起因して変化するロジック信号であるためである。にもかかわらず、ここで404のような要素はPLCと呼称される。より正確にするために、これらの動的制御された要素は、しばしば代わりにロジックコネクタと呼称される。要素404のようにPLCと呼ばれたりロジックコネクタと呼ばれたりするその他の要素の例は、要素408,410,422,442,464,466である。)
4入力ルックアップテーブルロジックの最終ステージはPLC(例えばマルチプレクサ)408によって構成される。PLC408は、(1)小領域30へのC入力か、(2)小領域30へのD入力か、または(3)別の隣接するまたは近傍の小領域30からのいわゆる“直接接続”入力DCINによって制御することができる。これらの選択肢(1)、(2)、および(3)の中からの選択はPLC418を適正にプログラミングすることによって実施される。選択肢(3)は、図示された小領域30が他の近接するまたは近傍の小領域からの直接接続信号を受信することに(少なくとも部分的に)基づいたロジック機能を実施している場合に選択される。これらの小領域間の直接接続は、広範なファンインロジック機能等の操作を実施するために使用することができ、これはいくつかの小領域を直列接続することを必要とし、これはしばしばカスケードチェーンと呼称される。(プログラマブルロジックデバイス内のロジックモジュール間のカスケード接続についての詳しい説明に関しては、例えばクリフ氏等の米国特許第5258668号参照すべきである。この文献はここにおいて全体的に参照に組み入れてある。)選択肢(1)と(2)との間の選択は、信号タイミング要件に基づいて実施される。
【0038】
前記の2つの段落に関する信号タイミング要件は、4入力ルックアップテーブルロジックによって処理されそのロジックの最終ステージ(すなわちPLC408の制御入力端子)に伝送される最も低速のデータ信号のルーティングを含んでいる。このようにして、先に到達したデータ信号は、ルックアップテーブルロジックの最初の2つのステージによって処理されバッファ406aと406bの出力端子上に既にバッファされた2つの信号を形成する。最後に到達するデータ信号を受信すると、PLC408は最後に到達する信号の状態によって選択されたバッファ出力信号を直ちに出力することが可能となる。最後に到達するデータ信号をルックアップテーブルの最終ステージに付加することによって、ルックアップテーブル出力信号は、最後に到達するデータ信号をルックアップテーブルの前方ステージに付加する場合に比べて、著しく迅速なものにすることができる。このルックアップテーブルの高速化は、PLC408の下流側のバッファによって最終ルックアップテーブル信号を遅延させるよりも、むしろPLC408の上流側にバッファ406を設置することによりさらに増進することができる。
【0039】
前述した要素414aおよび418は、入力Cまたは入力Dのいずれか一方をルックアップテーブルの最終ステージに付加されるものとして選択することを可能にする。従って、最終ステージに対して選択されていない入力CまたはDは、ルックアップテーブルの最終前のステージに付加することができる。入力Dが小領域の右側のコンダクタ300/310から通じているのに対して入力Cは小領域30の左側のコンダクタ300/310(図4)から通じているため、入力Cまたは入力Dのどちらかを最後に到達する入力として選択する(PLC414aおよび418を使用して)可能性により、デバイス内のルーティングの制約が容易になる。従って、最後に到達する信号は、小領域の左側または右側のいずれかのコンダクタ300/310を介して到達するようルーティングすることができる。
【0040】
直接接続信号DCINは比較的遅く到達するため(例えば、比較的長いカスケードチェーンの下流端部付近で形成された場合)、この信号もPLC418によって選択してルックアップテーブルの最終ステージへ付加することができる。このこともカスケードチェーンの高速化を補助する。
【0041】
図5Aの他の要素について説明を続けると、小領域30がバイナリ加算、カウンティング等の一部を実行するために使用される場合、要素402a、402bは入力A、入力B、およびキャリーイン信号(PLC410bからの)の合計の2つの先行値を形成するようプログラムすることができる。PLC404aは、キャリーイン信号(PLC414aを介して)によって制御され、これらの2つの先行値のうちの適宜な1つを合計出力信号として選択する。PLC408は、合計出力信号を常に図5Bの回路に伝送するよう制御される。このPLC408の状態は、小領域に対してD入力を使用してPLC408を制御するとともに関連する全てのD入力要素328(図4)をオフ状態にプログラムすることによって達成され、このことによりD入力は高位の初期設定とされる。)要素402cおよび402dは、入力A、入力B、およびキャリーイン信号の合計からなるキャリーアウトの2つの先行値を形成するようにプログラムされる。この2つの先行値は、バッファ420aおよび420bによってそれぞれ反転され、平行して各PLC(例えばマルチプレクサ)422aおよび422bの2つのデータ入力に付加される。PLC422aおよび422bは、小領域30に付加されたC0INおよびC1IN信号に基づいてC0OUTおよびC1OUTとして出力する先行値をそれぞれ選択する。各小領域30のC0OUTおよびC1OUT信号は、キャリーチェーンの中の次の小領域30のC0INとC1IN信号となる。従って、高速化キャリーチェーンのための回路の一部として2つのキャリー信号が伝送される。この回路(PLC410bを制御するためのLABCINH信号の形成を含んでいる)は、本発明の構成要素ではなく、従ってさらに詳細な説明は省略する。しかしながら、これについては、米国特許(出願番号、出願日不明;文書番号174/176号)に記載されており、これはここにおいて全体的に参照に組み入れてある。
【0042】
要素430,432,434,436,438,440,442,および44は、小領域30の乗算動作を実行および高速化する回路の一部として設置される。回路(PLC410aを制御するためのLABCINV信号の形成を含む)も本発明の構成要素ではないので、その詳細な説明は省略する。しかしながら、これについては、米国特許(出願番号、出願日不明;文書番号174/175号)に記載されており、これはここにおいて全体的に参照に組み入れてある。
【0043】
要素450および452は、レジスタ480(図5B)がいわゆる“単独レジスタモード”において使用されることを可能にする回路の一部である。すなわち、レジスタ480がPLC408からのルックアップテーブル出力信号を記録するために必要とされていない場合、レジスタは代わりに入力Cおよび入力Dを記録するために使用される。C/Dの選択は、PLC414bによって実施される。PLC450は、選択された信号の真値または補数値のいずれか一方を伝送するようプログラムされる。バッファ452は、選択された信号を反転および増幅する。
【0044】
ここで、図5Bに示されている代表的な小領域30回路の部分について説明すると、要素454および456は、ルックアップテーブル出力信号(図5AのPLC408からの)をこの小領域の直接接続出力信号(DCOUT)として出力することを可能にする。各小領域30のDCOUT信号は、カスケードチェーンまたは小領域列内の次の小領域のDCIN信号となる。要素454はDCOUT信号用の反転バッファであり、要素456はこの信号用のレベル復元回路の一部である。
【0045】
要素460および462は、PLC464および466の状態を要素460のプログラミングと、バッファ452(図5A)の論理状態と、SCAN、SYNCLD、およびSYNCLR信号の論理状態とに基づいて制御するための回路である。SCAN信号は、デバイスをスキャンテストモードに設定するためのデバイス広域信号であり、このモードにおいてデバイス上のレジスタ480およびその他のレジスタはスキャンチェーン内で効率的に接続され、それらの内容を読み出すとともにこれによってデバイスが適正に動作するよう迅速に検査する。従って、SCAN信号が確認されると、デコーディングロジック462がPLC464および466を制御し、SCANIN信号をレジスタ480に付加する。各小領域30のSCANIN信号は、1つ前の小領域またはスキャンチェーン内の他のレジスタ回路SCANOUT信号である。レジスタ480のQ出力信号は、小領域30のSCANOUT信号として反転バッファ486を介して出力される。
【0046】
SYNCLDおよびSYNCLRは、小領域30を含む領域20について領域全体のベースで選択することが好適な信号である。これらの信号は、レジスタ480を同期的にロードするかまたは同期的にクリアするのに適した信号を付加するようデコーディングロジック462を付勢するために使用される。例えば、VSS(接地またはロジック0)はPLC464および466を介してレジスタ480のD入力端子に接続され、これによってレジスタの同期的なクリアを生じさせる。このロジック462への入力、ならびに結果としてこのロジックからの出力の他の状態は、レジスタ480がその出力信号を再登録するか、いわゆるバッファ44(図5A)からの“直接合計出力”信号DSOを記録するか、またはバッファ452(図5A)の出力信号を記録する単独レジスタモードで動作することを付勢する。ここで全体的に参照に組み入れられているペダーソン氏の米国特許第5835998号公報には、要素460および462として464,466,480等の要素(以下に詳細に説明する要素490,492,494および496等の要素)を制御するよう使用することができる回路の例が示されている。
【0047】
要素470,472,および474は、クロック信号CLK0またはCLK1のいずれか一方をレジスタ480のクロック入力端子に付加するクロック信号として選択することを可能にする。FCE470は、PLC472が2つのクロック信号のうちの1つを選択することを付勢し、これはバッファ474によって反転されレジスタ480に付加される。
【0048】
要素490−496は、レジスタ480を制御して、多様なプリセット、同期ロード、およびクリア動作を実施するようプログラム可能か、または動作可能である。要素490はFCE、要素492はインバータ、要素494aおよび494bはANDゲート、要素494cおよび494dはORゲート、要素496aはNORゲート、要素496bはNANDゲートである。PRE/ASYNLD信号は、非同期ロード制御信号である。NCLR信号はクリア信号である。
【0049】
PLC482a−cは、FCE(図示されてない)によってプログラムし、VSS(ロジック0)、レジスタ480のQ出力、またはPLC408(図5A)からの記録されていないルックアップテーブル出力信号のいずれかを出力することができる。PLC482dも、VSSに代えてVCC(論理1)を出力し得る点を除いて同様である。PLC482aの出力信号は、反転バッファ484aによって小領域30の第1出力線OUT0に付加される。PLC482bの出力信号は、反転バッファ484bによって小領域30の第2出力線OUT1に付加される。PLC482の出力信号は、反転バッファ484cによって小領域30のLOCAL出力線に付加される。PLC482dの出力信号は、反転バッファ484dおよび484d′によって交互配置垂直(“IV”)コンダクタ220に付加される。
【0050】
OUT0およびOUT1信号の目的は、図6に基づいて以下に説明する。LOCAL信号は、小領域30を含んでいる領域20の左側または右側の局所フィードバックコンダクタ310(図4)のうちの1本に付加される。特に(また既に記述したように)、各領域20内の小領域30の半分のLOCAL出力その領域の左側のコンダクタ310のそれぞれに付加され、各領域内の小領域の残り半分のLOCAL出力はその領域の右側のコンダクタ310に付加される。LOCAL出力信号と同様な方式で、各領域20内の小領域30の半分のIV出力線220はその領域から上方に延在しており、残り半分の小領域の出力線220はその領域から下方に延在している。
【0051】
図6には、小領域30からデバイスの相互接続コンダクタへの接続、ならびに種々の相互接続コンダクタ間の接続を形成するための代表的な回路が示されている(図4に示されたものと違うものであり、既に説明済みである)。図6は、ドライバ回路の代表的なブロック500を有することを特徴とする。4つの小領域30からなる各グループに結合された、この種のドライバ回路のブロックは、水平に隣接する2つの領域20のそれぞれから2つの小領域を含んでいる。
【0052】
まず、左側の上部小領域30の種々の出力信号について考えると、その小領域のOUT0信号がPLC502の1つの入力端子に付加される。(OUT0信号は図6に示されたものの左側のドライバブロックにも付加される。)PLC502へのその他の入力は、(1)図6に示された、同じ領域20の列であるが小領域を含む行の上または下の行内の小領域30からの交互配置垂直信号220のうちの1つ、(2)OUT0を生成するものと同じ小領域30からの直接合計出力信号DSO、および(3)図6に部分的に示されているドライバ回路ブロック500の列と結合された高速半垂直コンダクタ210bのうちの1つである。PLC502は、その4つの入力信号のうちの1つを選択して反転バッファ504に付加するようプログラム可能である(図6には図示されていないFCEによって)。バッファ504の出力信号は、図6の左側に示された小領域を含む領域20の列の中央に配置されたコンダクタのグループ内のHNFLコンダクタ250の1つに付加される。特に、バッファ504の出力信号は領域20の列の左側に延在するHNFLコンダクタセグメント250へ付加される。反転バッファ562(以下により詳細に説明する)の出力信号は、領域20の右側に延在する同一のHNFLコンダクタ250のセグメントに付加される(左右に延在する各HNFLコンダクタ250のセグメントは実質的に分離したコンダクタであり、これは分離して駆動可能であり、しばしば総称して単一のHNFLコンダクタ250と呼称される)。
【0053】
図6の上部左側の小領域30のOUT1出力信号は、各PLC510,522,530,540,550,および560の1入力端子に付加される。PLC560の他の入力は、前述したPLC502への入力(1)−(3)と同様になる。PLC560は、その4つの入力信号のうちのいずれか1つを反転バッファ562に付加して、前の段落で説明したように、右側に延在しているHNFLコンダクタ250のセグメントに付加するようプログラムすることができる。
【0054】
図6の上部左側の小領域30のいわゆるLOCAL出力信号は、近接する局所フィードバックコンダクタ310の1つに付加される。前述したように、各領域20内の小領域30の半分のLOCAL出力信号はその小領域の左側の局所フィードバックコンダクタ310に付加され、各領域内の小領域の残り半分のLOCAL出力信号はその小領域の右側の局所フィードバックコンダクタ310に付加される。
【0055】
図6内の上部左側の小領域30のIV出力信号は、図6に部分的に示された行の上方の行内の適宜な位置に延在しているIVコンダクタ220に付加される。
【0056】
図6の下部左側の小領域30の出力信号の目的は、一般的に前述した上部左側の小領域と同様である。OUT0信号は、PLC506への入力の1つである。(再び、このOUT0信号は左側の別のドライバブロック500にも付加される。)PLC506への別の入力は、(1)近接する高速広域垂直コンダクタ200bからの信号、(2)IV信号220、および(3)下部左側の小領域30の直接合計出力信号である。PLC506は、その入力信号のうちのいずれかを反転バッファ508に付加し、別の近接する、左側に延在するHNFLセグメント250に付加するようプログラムすることができる。
【0057】
下方左側の領域30のOUT1信号は、PLC510,522,530,540,550、および564に付加される。PLC564への他の入力は、前述したPLC506への入力(1)−(3)と同様であり、PLC564の出力は(バッファ566を介して)バッファ508が駆動するものと同じHNFLコンダクタの右方に延在するセグメントに付加される。下方左側の小領域30のLOCAL出力信号は、近接する局所フィードバックコンダクタ310に付加される。下方左側の小領域30のIV出力信号は、図6の回路を含む行の下側に近接する行内の適宜な位置に延在するIVコンダクタ220へ付加される。
【0058】
図6に示された上方右側の小領域30のOUT0信号は、各PLC510,522,530,540,および550の1入力端子に付加される。この信号は、図6に示されたものの右側の別の同様なドライバブロック500にも付加される。上方右側の小領域30のOUT1およびDSO出力信号は、右側のドライバブロックにも付加される。上部右側の小領域30のLOCAL出力信号は、近接する局所フィードバックコンダクタ310に付加される。上部右側小領域30のIV出力信号は、上方へ延在するIVコンダクタ220に付加される。
【0059】
下部右側小領域30の出力信号の目的は一般的に同様なものである。OUT0信号は、各PLC510,522,530,540,および550の1入力端子、ならびに図6に示されたものの右側のドライバブロック500に付加される。OUT1およびDSO信号も右側のドライバブロック500に付加される。LOCAL出力信号は、近接する局所フィードバックコンダクタ310に付加される。IV出力信号は、図6に部分的に示された行の下に近接する行内の同様な位置に向かって下方に延在するIVコンダクタ220へ付加される。
【0060】
PLC510は、(図示されてないFCEによって)その入力信号のうちのいずれかを選択してドライバ512に付加するようにプログラムすることができる。ドライバ512の出力信号は、PLC514(例えばデマルチプレクサ)に付加され、これはFCE(図示されていない)によってプログラムしその入力信号をその出力端子のいずれかに付加することができる。PLC514の1出力端子は、近接する高速広域垂直コンダクタ200bに接続される。PLC514の別の出力端子は、近接する高速半垂直コンダクタ210bに接続される。前述のことより、要素510,512,および514は、左側の小領域30のOUT1信号、または右側の小領域30のOUT0信号のうちのいずれか1つを、近接する高速広域垂直コンダクタ200bまたは近接する半垂直コンダクタ210bのいずれかに接続することを可能にする。この要素510,512,および514は、図6に示されたドライバブロック500が作用する4つの小領域30のいずれかが、高速広域垂直コンダクタ200bまたは高速半垂直コンダクタ210bのいずれかを駆動することを可能にする。
【0061】
まだ説明していないPLC522への入力は:(1)近接する1つの高速広域垂直コンダクタ200bの1つからの信号、(2)近接する高速半垂直コンダクタ210bの1つからの信号、(3)2つの交互配置垂直コンダクタ信号220(そのうち1つは図6に部分的に示された行の上の行から伝送され、他の1つは図6に部分的に示された行の下の行から伝送される)、(4)近接する4本の広域垂直コンダクタ200aのうちの1本からの信号(この4つのうちの1つの信号の選択はPLC520によって実施される)である。デバイス10上の他のPLCと同様に、PLC522はFCE(図示されていない)によってその入力のうちいずれか1つを選択してトリステートドライバ524に付加するようプログラム制御される。トリステートドライバ524は、FCE526によってオフ(高出力インピーダンス)またはオン(付加されたデータ入力信号を伝送および増幅することができる)のいずれかにプログラム制御される。トリステートドライバ524の出力信号は、高速広域水平コンダクタ230bのうちの近接する1つに付加される。前述のことから、要素522,524,および526が図6に示されたドライバブロック500が作用する小領域30のうちのいずれか1つの出力信号が近接する高速広域水平コンダクタ230bのうちの1つ上に伝送されることが理解される。他の例においては、要素522,524,および526は、近接する高速広域垂直または高速半垂直コンダクタ200bまたは210bのいずれかからの信号を転向させて前述した高速水平コンダクタ230b上に伝送することを可能にする。さらに別の変更例においては、要素522,524,および526は、2つの交互配置垂直コンダクタ信号220のいずれか一方を前述した高速広域水平コンダクタ230b上に伝送することを可能にする。最後の変更例においては、要素520,522,524,および526は、近接する4つの広域垂直コンダクタ信号200aのうちの1つを転向させて前述した高速広域水平コンダクタ230b上に伝送することを可能にする。
【0062】
次に、まだ説明していないPLC530への入力について考えると、PLC520に付加された4つの信号のうちの2つはPLC530にも付加され、近接する2つの半垂直コンダクタ210aからの信号と同様である。PLC522に付加される交互配置垂直コンダクタ信号の1つは、PLC530にも付加される。デバイス10上の他のPLCと同様に、PLC530は、FCE(図示されていない)によってその入力のいずれか1つをドライバ532に付加しそのデバイスによって使用するようにプログラムすることができる。ドライバ532の出力信号はPLC534に付加される(例えばデマルチプレクサ)。PLC534は、FCE(図示されていない)によってその入力信号をその出力線のいずれかに付加するようプログラム制御される。PLC534の出力線のうちの2つは、近接する2つの広域水平コンダクタ230aにそれぞれ接続される。PLC534の第3の出力線は、近接する半垂直コンダクタ210aに接続される。前述のことから、要素530,532,および534は、図6に示された4つの小領域30のうちのいずれか1つの出力信号を近接する通常(ノーマル速度)の水平および垂直コンダクタ230aおよび210aのいずれかに伝送するために使用することができる。他の例において、要素530,532,および534は、近接する通常(ノーマル速度)コンダクタ200aおよび210aからの信号または相互配置垂直コンダクタ220からの信号を通常の水平または垂直コンダクタ230aまたは210a上に伝送するために使用することができる。従って、530,532,および534は、例えば、信号を通常の垂直コンダクタから通常の水平コンダクタへ転向させることを可能にする。
【0063】
要素540,542,および544への入力およびこれからの出力は、一般的に前述した要素530,532,および540のものと同様である。異なるのは、(1)PLC530のものとは異なったコンダクタ220がPLC540に接続される点と、(2)コンダクタ210aの1つのみがPLC540に接続され、(3)PLC544の3番目の出力が半垂直コンダクタ210aではなく近接する広域垂直コンダクタ200aに付加される点である。しかしながら、要素540,542,および544は、要素530,532,および534に比べてより多くの同じ基本型のルーティング能力を提供する。
【0064】
まだ説明していないPLC550の入力は、近接する4つのコンダクタ200aおよび近接する3つのコンダクタ210aからの信号である。デバイス10上のその他の類似のPLCと同様に、PLC550は(図示されてないFCEによって)付加された信号のうちのいずれか1つを選択してドライバ552に使用するようプログラムすることができる。ドライバ552は受信した信号を増幅して、増幅された信号を近接する直接水平コンダクタ240のいずれか1つに付加する。従って、要素550および552は、図6に示された小領域30のいずれか、または複数の近接する垂直コンダクタ200aまたは210aのいずれかが、近接する直接水平コンダクタ240をドライブすることを可能にする。例えば、要素550および552は、垂直コンダクタ200aまたは210aからの信号を水平コンダクタ240に転向させることを可能にする。
【0065】
前述のことから、本発明に従って構成されたプログラマブルロジックデバイス10がノーマル速度形式およびより高い速度(“高速”)形式の両方の形式で設けられた相互接続リソースを少なくともいくつか備えることが理解されよう。両方の形式は、互いに“構造的に類似”していることが好適である。“構造的に類似”とは、両方の形式の相互接続リソースのいずれを使用しても一般的に同形式のルーティングが可能であることを意味する。いずれかの形式の相互接続リソースを使用する基本的に類似の経路を介して同一のソースからの信号が得られる。しかしながら、高速形式のリソースを介するとノーマル速度形式のリソースを介するよりも、信号は大幅に速く伝送される。
【0066】
高速形式の相互接続リソースは、いくつかの経路よりも高速に形成することができる。例えば、高速コンダクタは、通常速度コンダクタに比べて幅広かつ互いの離間距離を広げて構成することができる。特に、高速コンダクタはノーマル速度コンダクタに比べて2ないし3倍の幅をもって形成することができる。これに代えてまたは加えて、高速コンダクタ間の離間距離は、ノーマル速度コンダクタ間の離間距離に比べて2ないし3倍とすることができる。高速コンダクタに対して厚い上金属層を使用することが好適であり、他方通常のルーティングは薄い低金属層を使用する。この技術を使用することによって、高速コンダクタのRC時定数はノーマル速度コンダクタのRC時定数に比べて20%削減される。ドライバ(例512および524)およびパスゲートを提供する高速コンダクタは、より大きくかつより強力(例えば、ノーマル速度ドライバ532,542,552に比べて)に構成することができる。例えば、高速ドライバは、ノーマル速度ドライバのトランジスタサイズの約2倍のトランジスタサイズを有することができる。加えて、ノーマル速度ドライバは出力デマルチプレクサを有するドライバを使用して実施されるのに対して、構造的には同様な高速ドライバはより好適な速度を達成するために個別のトリステートドライバとして実施することが好適である。高速コンダクタに接続されるPLC(例えば、マルチプレクサ510およびデマルチプレクサ514)は、ノーマル速度コンダクタに接続された対応する要素(例えば530および534)に比べてより少ない入力(マルチプレクサに対し)およびより少ない出力(デマルチプレクサに対して)をもって形成することができる。高速コンダクタは、対応するノーマル速度コンダクタに比べて、より少ないタップを有し、従ってより少ないローディングを有する。これらの技術のいずれかまたは全てを、構造的には同様なノーマル速度コンダクタに比べて大幅に速い高速相互接続リソースを形成するために使用することができる。例えば、本発明に従って、デバイス10において、ノーマル速度相互接続リソースのみによって達成される同一の接続に比べて約2倍の速度を達成するいずれかの相互接続(特に比較的長い相互接続)の提供を少なくとも補助する高速相互接続リソースを得るという設計目的を達成することができる。
【0067】
デバイス10における構造上は類似のノーマル速度および高速相互接続リソースの特定の例は以下のものである:ノーマル速度相互接続リソースを介して領域20内の第1行第1列の第1小領域30から領域20の第2の遠隔行および第2の遠隔列の第2の小領域30へ信号を伝送するため、ノーマル速度要素540,542,および544を使用して第1の小領域から近接するノーマル速度垂直コンダクタ200aへ伝送する。ノーマル速度垂直コンダクタ200aを使用して第1の小領域30の行から第2の小領域30へ伝送する。目的の行において、ノーマル速度要素530,532,および534を使用して前記垂直コンダクタ200aからノーマル速度水平コンダクタ230aへ伝送する。目的の列において、ノーマル速度要素270,274,等を使用し、目的の小領域への入力回路300/320へ伝送する。反対に、高速相互接続リソースを介して同じ相互接続を形成するため、高速要素510,512,および514を使用して第1の小領域30の出力信号を近接する高速垂直コンダクタ200bまたは210bに付加する。目的の行において、高速要素522および524を使用して信号を高速垂直コンダクタから高速水平コンダクタ230bに転向させる。目的の列において、高速要素276を使用して信号を高速水平コンダクタ230bから目的小領域30の入力回路300/320に伝送する。
【0068】
前述のことより、符号“b”を付けた参照符号で示した高速コンダクタに加えて、デバイス10の高速相互接続リソースは、PLC、ドライバ等を含み、これらは主に前記の高速コンダクタに作用する。例として、PLC510,514,522,および276、ならびにドライバ512,524,および278が挙げられる。構造的に類似のノーマル速度PLCおよびドライバ(主にノーマル速度コンダクタ)としては、530,532,534,540,542,544,550,552,270,および274が挙げられる。
【0069】
構造的に類似する高速およびノーマル速度形式の特定の相互接続リソースの装備に加えて、デバイス10はデバイスの全体速度を増加させることを補助する他の相互接続リソースを備えることができる。これらのリソースの例としては、HNFLコンダクタ250(高速部分的相互接続コンダクタと呼ばれることもある)、およびこれらのコンダクタをドライブする結合されたPLC502,506,560,564,および504,508,562,ならびに566が挙げられる。コンダクタ250は比較的短く従って少数のタップを有するため高速である。これらをドライブするPLCおよびドライバは高速に形成することができる(例えば、比較的少ない入力を有するPLCと比較的大型かつ強力に形成されたドライバを使用することによって)。
【0070】
デバイス10上に設けられこのデバイスの速度を増加させる相互接続リソースの別の例は、IVコンダクタ220である(ブリッジング相互接続コンダクタと呼ばれることもある)。これらのコンダクタは、隣接するまたは近傍にある領域20の行の間において比較的直接および短い接続を形成する。これらは比較的強力なドライバ484によってドライブすることができる。これらを使用する場所において、1つの行から他の行への伝送を行うために長い、従ってより低速の汎用垂直相互接続コンダクタ200/210を使用する必要が除外される。
【0071】
図7Aには、二次信号コンダクタリソース領域120および関連する回路の実施例が詳細に示されている(図7Aの回路に示されている追加的な要素は図7Bに示されている)。4本のコンダクタ610は、実質的にデバイス10の垂直方向寸法全体にわたって垂直に延在している。コンダクタ610のそれぞれが、4つの専用のクロック信号入力端子612−1ないし612−4のうちのそれぞれ1つからの4つのクロック信号のうちの1つをそれぞれ伝送し、前記のクロック信号入力端子は、デバイス10の中央付近に配置され、デバイス全体にわたったクロック信号スキューを削減するよう作用する。コンダクタ610上のクロック信号は、各行に近接する水平クロックコンダクタ620を分岐させることによって水平に領域20,40等の各行にに対して配分される。コンダクタ620は、参照符号260によって既に特定されたコンダクタ(例えば図3)の中に含まれるものである。コンダクタ620上の信号は、近接する(従って結合された)ロジック領域20またはI/Oセル630に付加される。
【0072】
6本の追加的なコンダクタ640は、実質的にデバイス10の垂直方向の寸法全体にわたって垂直に延在している。各コンダクタ640は、6個のいわゆる高速信号のうちの1つをそれぞれ伝送する。これらの高速信号のそれぞれは、デバイス10の中央付近に配置された6個の専用入力端子642−1ないし642−6のうちの適宜な1つ、または同様にデバイス10の中央付近に配置されたロジック領域20−1/20−2のうちの選択されたもののいずれかから伝送される。前述した高速信号を供給するための追加出力線を有することを除いて、ロジック領域20−1ないし20−2はデバイス10上の他のロジック領域と同様なものとすることができる。PLC644は、各入力端子642と結合され、入力端子の信号またはロジック領域20−1あるいは20−2のいずれかを高速信号としてプログラム制御で選択する。各PLC644の出力信号は、相関するバッファ646を介してコンダクタ640のうちの1つにそれぞれ付加される。各PLC644の出力信号は、さらに、領域20−1および20−2を含む行と結合された6本の水平高速コンダクタ650のうちの1本、ならびに領域20−1および20−2を含むロジック領域の行と結合されたI/O行40と結合された6本の同様な水平高速コンダクタ650のうちの1本に付加される。(この点について先に説明したように、I/O行40とロジック領域行との間の完全な相関は以下のものである(図1参照):それらは、(1)最上のI/O行40と最上のロジック領域行、(2)上から2番目のI/O行40と上から4番目のロジック領域行、(3)上から3番目のI/O行40と上から7番目のロジック領域行、(4)上から4番目のI/O行40と上から10番目のロジック領域行、(5)最底部のI/O行40と最底部のロジック領域行である。
【0073】
前の段落で参照符号20−1および20−2として説明したもの以外のロジック領域行およびI/O行は、結合された水平高速コンダクタ650を備えている。これらの他のロジック領域行のそれぞれに対して、結合された各コンダクタ650上の信号がコンダクタ640またはその行内かつ領域120に近接するロジック領域20のいずれか一方からそれぞれ伝送される。PLC648は、これらの追加的な高速信号選択を形成するために設けられている。前の段落で説明したもの以外の各I/O行40に対して、結合されたコンダクタ650上の信号は、このI/O行に結合されたロジック領域行に結合されたコンダクタ650上の信号と同一である。
【0074】
コンダクタ650も先に参照符号260で示したコンダクタ(例えば図3)の中に含まれている。各ロジック領域行またはI/O行に結合されたコンダクタ650上の信号は、その行内のロジック領域20またはI/Oセル630に付加される。
【0075】
前述のことから、ロジック領域20(およびこのロジック領域行に結合された各I/O行40)の各行に結合された各高速コンダクタ650の信号は、局所的に形成するか(その行の中央付近のロジック領域20の1つによって)、またはより広域的に形成することができる(ロジック領域20−1/20−2の1つ、または入力ピン642から)。高速コンダクタ640/650を入力端子642またはロジック領域20のいずれかによってドライブ可能にすることにより、入力端子に加えて内部で形成されたロジックによってロースキュー二次信号のいくつかをドライブすることが可能になる。各高速コンダクタ640/650を好適にはただ1つの入力端子またはただ1つの特定ロジック領域によってドライブ可能にすることにより、ロジック領域出力信号または入力端子信号を広域二次信号コンダクタネットワーク上に伝送するために必要なルーティングの総量を削減することができる。広域クロック信号を専用の入力端子612によって直接ドライブ可能にすることにより、これらの信号を最大限に高速化することができる。専用ソース610/620/20−1/20−2等の全てを選択してデバイスの中央付近に配置することにより、デバイスを介する信号スキューの総量を削減することができる。ロジック領域20の各行に結合された高速コンダクタ650の信号を局所的な配置する可能性により、デバイス10が同時に作用する他の多数の二次信号を有することが可能なる(すなわち、10個の広域信号+N×6個の局所信号であり、Nはロジック領域の行数である)。加えて、ロジック領域によってその行内に配置される局所二次信号は、中央スパインから広域的にドライブされるために必要なものに比べて小さな遅延を有する。
【0076】
前述したコンダクタ620および650に加えて、ロジック領域20またはI/Oセル630の各行はその長さにわたって延在する2本の局所高速コンダクタ660を備えている。コンダクタ660は、既に参照符号260によって示されたコンダクタ(例えば図3において)に含まれる。図7Bには、これらのコンダクタの信号源が示されている。各I/Oセル行およびこのI/Oセル行に結合されたロジック領域行に対して、相関するコンダクタ660上の信号は、そのI/Oセル行の中央付近の入力端子662、またはそのロジック領域行の中央付近のロジック領域20のいずれかから伝送することができる。PLC664は、これらの入力端子とロジック領域の間で信号を選択する。I/Oセル行に結合されていない各ロジック領域行はに対して、コンダクタ660の信号はその行の中央付近のロジック領域20から伝送することができる。
【0077】
図7に示された回路への変更は、各ロジック領域内に局所的行入力端子(例えば入力端子662)を備えることを含み、これはその行内のロジック領域20からのコンダクタをドライブする代わりに、この行に対する二次信号650および/または660をドライブする。別の可能性は、局所的二次信号650/660をより繊細に処理するか、あるいはより粗く処理することである(例えば、これらの信号を半分の行によってグループ化するか、または局所二次信号を個々の行ではなくデバイス10の4分割によってグループ化することによって)。
【0078】
図7には、さらに各I/O行40がこれに結合されたロジック領域20の行と二次信号650/660を分割する方式が示されている。従って、図7の上端付近に示されている典型的なI/O行40は、このI/O行の直ぐ下にある結合されたロジック領域行と同一の二次信号650/660を有する。同様に、図7の底部付近に示された他のI/O行40も、このI/O行の直ぐ下にある結合されたロジック領域行と同一の二次信号650/660を有する。
【0079】
図7には、各I/O行40と対応するロジック領域20との間の相関性の別の側面も示されている。このことは、I/O行40内のI/Oセル630に対する追加的入力信号源として各I/O行40に対して結合されたロジック領域内における領域フィーディングコンダクタ300および局所フィードバックコンダクタ310の使用に関する。例えば、コンダクタ300/310は、図7内のロジック領域20−1に結合され、そのロジック領域の上側のI/Oセル630まで延在しており、従ってこれらのコンダクタ300/310上の信号はこのI/Oセルに対する追加的入力として使用することができる。別の例として、図7の上部右側付近に示されたロジック領域20に結合されたコンダクタ300/310は、そのロジック領域上側のI/Oセル630まで延在しており、従ってこれらのコンダクタ300/310上の信号はそのI/Oセルに対する追加的な入力として使用することができる。次に説明する図8は、代表的なI/Oセル630の好適な実施例の構成に関してより詳細に示しており、これにはこのセルに付加される種々の信号が使用される方式が含まれている。
【0080】
典型的なI/Oセル630の実施例が図8により詳細に示されている。I/Oセル630は、I/O端子710、入力レジスタ740、出力レジスタ720、およびトリステート制御信号(または出力付勢)レジスタ730を含んでいる。レジスタ720,730,および740のそれぞれは、データ入力D、クロック入力、クロック付勢入力EN、クリア/プリセット入力C/P、およびデータ出力Qを備えている。入力レジスタ740のデータ入力(I/O端子710から伝送される)を除いて、レジスタ720,730,および740への全ての入力は、I/Oセルへの4つのクロック入力620、I/Oセルへの6個の高速コンダクタ650入力、I/Oセルへ入力可能な36個のコンダクタ300/310上の種々の信号の中から選択することができる。円754は、種々のコンダクタ620/650/300/310と種々のレジスタ入力との間における可能な接続性を示している。各PLC756は、接続可能ないくつかの信号の中から1つの信号を選択することを実施する。プログラム可能な反転要素758(これは図5Aの回路450と同様である)は、各PLC756の出力信号をデバイスのユーザの要望に応じて反転するかまたは反転しないかを可能にする。
【0081】
図7に示されまた前の図においても説明したように、図8に示されているコンダクタ300/310は、領域フィーディングコンダクタ300および図8に示されたI/Oセル630を含んだI/O行40に結合されたロジック領域の行からのフィードバックコンダクタ310である。(これらの各行40内のいくつかのI/Oセルは、通常相関するロジック領域行内の異なった一つ一つの領域20からのコンダクタ300/310を備えている。)図8内のコンダクタ620および650は、図7に示された水平コンダクタ620および650の支線であり、これは図8のI/Oセル630を含むI/O行に結合されている。
【0082】
出力レジスタ720および出力付勢レジスタ730の両方をクロックするために同一の信号が使用される。全てのレジスタ720,730,および740は、同一のクリア/プリセット入力信号を有する。各レジスタはクリア/プリセット入力信号に応答してクリアまたはプリセットするようプログラムすることができる。
【0083】
出力レジスタ720のデータ出力信号Qは、PLC722の一入力端子に付加される。PLC722への他の入力は、レジスタ720へデータ入力である。従って、PLC722は、レジスタ720によって登録されているかまたはこのレジスタを迂回した、デバイス10の出力信号をトリステートドライバ724に付加するように使用することができる。出力付勢レジスタ730のデータ出力信号Qは、PLC732の一入力端子に付加される。PLC732への他の入力は、レジスタ730への未記録データ入力である。PLC732の出力信号は、トリステートドライバ724のトリステート制御入力端子に付加される。従って、トリステートドライバ制御信号は、レジスタ730に付加される記録されたまたは未記録のいずれかのデータ信号である。トリステートドライバ724の出力信号は、I/O端子710に付加される。
【0084】
入力側において、I/O端子710からの入力信号が入力レジスタ740のデータ入力端子Dに付加される。この信号は、各PLC742−1および742−2の一入力端子に付加される。これらのPLCのそれぞれへの別の入力は、入力レジスタ740のQ出力信号である。PLC742−1の出力信号はバッファ744−1を介してデバイス10のロジックへ付加される。同様に、PLC742−2の出力信号は、バッファ744−2を介してデバイス10のロジックに付加される。例えば、各バッファ744の出力信号は、デバイスの1つまたは複数の相互接続コンダクタ200a/b,210a/b,230a/b,240等に付加される(例えば、トリステートドライバまたはパスゲートデマルチプレクサ(図示されていない)を介して)。従って、経路742−1/744−1および742−2/744−2のいずれかまたは両方が、端子710からの記録されたまたは未記録のいずれかのI/O信号に対して使用される。言い換えると、端子710は記録されたまたは未記録の両方の形式でデバイス10のロジックに使用され得る。
【0085】
レジスタ720および730は、それぞれバッファ726および736を介してのデバイスのロジックへのフィードバック経路を有することが示されている。これらのフィードバック経路は、前述したようにトリステートドライバまたはパスゲートデマルチプレクサを介してデバイスの適宜な相互接続コンダクタに接続することもできる。
【0086】
図9には、I/Oセル630および結合されたI/O端子710が好適には各I/O行40を横切って配置されることが示されている。言い換えると、これらのI/O端子710は、デバイス10の周囲部には配置されていない。それに代えて、それらはいくつかのI/O行40のそれぞれを横断して離間させることによってデバイスの内部に配置されている。これによってデバイス10上に設けられるI/O端子の数を増加させることができる。
【0087】
例えば図5に示されているように小領域30をカスケード接続することによって(すなわち、DCINおよび/またはDCOUT信号を使用する)、2つまたはそれ以上の小領域を、各小領域が個々に有する4つの入力よりも多い入力を有する単一のルックアップテーブルとして、効果的に共に使用することができる(デバイスのより一般的な相互接続リソースに依存することなく)。例えば、2つの小領域30をカスケード接続し、5,6,または7入力の多数の(しかしながら全てではない)可能な論理的組合わせを形成することができる。一般的に、より大きなルックアップテーブルは、デバイスの一般的相互接続リソースを介して接続しなければならないいくつかの小さなルックアップテーブルに比べて、より多数かつより高速な入力の論理的組合わせを形成できるという利点を有する。他方、比較的少数の入力の論理的組合わせを形成することが求められている場合、大きなルックアップテーブルは不経済なものである。従って、比較的小さなルックアップテーブル(例えば4入力)をカスケード接続または直接接続する可能性は、良好な解決策を見出すものである。比較的多数の入力の論理的組合わせを形成する必要がある場合、2つまたはそれ以上の小領域30をカスケード結合することができる。他方、比較的少数の入力の論理的組合わせを形成する必要がある場合、ルックアップテーブルのリソースを過度に浪費することを防止するため小領域30を個別に使用することができる。勿論、既に説明したように、4入力より多い全ての論理的組合わせが2つまたはそれ以上の小領域30によって形成されるものではない。
【0088】
図10には、2つの小領域30内の4入力ルックアップテーブルがカスケード形式の直接接続を介して選択的に相互接続され、これによって真の5入力ルックアップテーブル(すなわち、5入力の全ての論理的組合わせを形成することが可能なルックアップテーブル)が形成される代替的な実施例が示されている。要素810−1および810−2は、第1小領域30−1の一部を形成する2つの3入力ルックアップテーブルである。PLC812−1もこの第1小領域30−1の一部を形成する。それ自体で使用するものとして、小領域30−1はOUT1としてその4つの入力A1−D1のいずれかの論理的組合わせ形成する。
【0089】
要素810−3および810−4は、第2の小領域30−2の一部を形成する2つの3入力ルックアップテーブルである。PLC812−2,814−1,814−2,および818、ならびにFCE816は、小領域30−2の追加的な要素である。小領域30−2がそれ自体によって使用されている場合、PLC814−1が入力D2をPLC812−2の制御入力端子に付加し、PLC814−2が固定VCC(論理1)をPLC818の制御入力端子に付加することを付勢するように、FCE816をプログラムすることができる。PLC818へのロジック1制御入力は、この要素がPLC812−2の出力信号を出力端子OUT2に伝送することを付勢する。このことは、小領域30−2がOUT2として小領域30−2の4つの入力A2−D2のいずれかの論理的組合わせを形成するために使用されることを可能にする。
【0090】
他方、図10に示されている全ての回路が5入力ルックアップテーブルとして共に使用される場合、FCE816は、PLC814−1がPLC812−2の制御入力端子に付加し、PLC814−2がPLC818の制御入力端子に入力D2を付加することを付勢するようにプログラムすることができる。加えて、同一の信号A−Cがそれぞれ入力A1−C1およびA2−C2に付加される。このことは、デバイス10の一般的な相互接続リソース(例えば図3および図4に示されている要素)を適宜にプログラムすることによって実施することができる。5入力ルックアップテーブルへの4番目の入力は入力Dであり(入力端子D1に付加される)、5入力ルックアップテーブルへの5番目の入力は入力Eである(入力端子D2に付加される)。入力Dに基づいて、PLC812−1および812−2は3入力ルックアップテーブル810−1ないし810−4の4つの出力のうちから2つの信号を選択する。PLC818は、これら2つの信号から入力Eに基づいて1つの信号(OUT2)の最終選択を行う。従って、この方式で共に使用される場合、図10に示された回路は5入力ルックアップテーブルとして5入力A−Eのいずれかの論理的組合わせを形成するよう使用される。
【0091】
図10には2つの4入力ルックアップテーブルを1つの5入力ルックアップテーブルに選択的に変換するための回路が示されているが、2つのM+1入力ルックアップテーブルを1つのM+2ルックアップテーブルに変換する原理は一般的に適用することができ、ここでMは要素810−1等の最初のルックアップテーブルの入力数である。図10において、Mは数値3を有しているが、図10に示された形式の回路は容易に2,4,5,6,7等の他のM数値に変更することができる。
【0092】
小領域30をカスケード接続するためのさらに別の回路が図11に示されている。図5に示された主要な実施例においては、PLC408の出力信号は、このPLC408を含む小領域のルックアップテーブル部分の直接接続出力信号DCOUTおよびメインデータ出力信号の両方を提供する。図11に示された代替的な実施例において、各小領域30−1と30−2は、2つのPLC912−1および912−2(小領域30−1について)、ならびに912−3および912−4(小領域30−2について)を備えている。各小領域30内において、両方のPLC912は、その小領域内のPLC914の出力信号によって並行して制御される。各小領域において、PLC914は結合されたFCE916によってプログラム制御され、その小領域に対してD入力またはカスケード入力のいずれかを出力する。最後に、各小領域において、PLC912のうちの1つがこの小領域のメインデータ出力信号を選択し、第2のPLC912は同じ信号選択を行ってこの小領域のカスケード出力信号を形成する。各小領域30内に2つの分離したPLC912を設けることによって、メインデータ出力信号およびカスケード出力信号のいずれもこれらの2つの信号以外によってロードされることはない。このことはこれら両方の信号の速度を増加させることを促進する。別の観点において、図11に示された実施例は図5に示された主要な実施例と論理的に同一である。
【0093】
図10および図11は、いずれも図5の主要な実施例に比べて簡略化して示されている。しかしながら、図5に示された他の特徴のいずれもが図10および図11に適用し得ることが理解される。
【0094】
図12には、データプロセッシングシステム1002内に設けられた本発明に係るプログラマブルロジックデバイス10が示されている。データプロセッシングシステム1002は:プロセッサ1004と;メモリ1006と;I/O回路1008と;および周辺装置1010のうちの1つまたは複数を備えることができる。これらの構成要素はシステムバス1020によって結合されるとともに、エンドユーザシステム1040内に含まれた回路基板上に装着される。
【0095】
システム1002は、コンピュータネットワーキング、データネットワーキング、計測、画像処理、デジタル信号処理、またはその他のプログラマブルまたはリプログラマブルロジックの利点を必要とする適用方法において、広範囲な適用分野で使用することができる。プログラマブルロジックデバイス10は、広範囲な異なったロジック機能を実行するために使用することができる。例えば、プログラマブルロジックデバイス10は、プロセッサ1004と共同動作するプロセッサまたはコントローラとして構成することができる。プログラマブルロジックデバイス10は、システム1002内において分配されたリソースへのアクセスを仲介するアービタとして使用することもできる。さらに別の例において、プログラマブルロジックデバイス10は、プロセッサ1004とシステム1002内の別の構成要素の1つとの間のインタフェースとして構成することができる。システム1002は単に例示的なものであり、本発明の真の視点および精神は請求の範囲によって定義されることが理解されよう。
【0096】
本発明の特徴ならびにデバイスの種々の構成要素(例えば前述したPLCおよびPLCを制御するFCE等)を備えるプログラマブルロジックデバイス10を実施するために、種々の技術を使用することができる。例えば、各PLCは、複数の入力のいずれか1つを出力に接続するためのスイッチまたはスイッチ群等の比較的に単純にプログラム可能なコンダクタとすることができる。他方、各PLCは、接続の形成と並んでロジックの実行(例えば複数の入力の論理的な結合)も可能な幾分複雑な要素とすることもできる。後者において、例えば、各PLCは、積算項ロジック、AND、NAND、OR、またはNOR等の命令実行機能とすることができる。PLCを実施するための好適な構成要素としては、EPROM、EEPROM、パストランジスタ、トランスミッションゲート、アンティヒューズ、レーザヒューズ、メタルオプション接続器等が挙げられる。前述したように、PLCの種々の要素は、種々のプログラマブル機能制御要素(“FCE”)によって制御することができる。(特定のPLC機器(例えば、ヒューズおよびメタルオプション接続器)においては、独立したFCEデバイスは必要とされない。)FCEもいくつかの異なった方式で実施することができる。例えば、FCEは、SRAM、DRAM、ファーストインファーストアウト(“FIFO”)メモリ、EPROM、EEPROM、機能制御レジスタ(例えば、ウォールストロムの米国特許第3473160号参照)、強誘電メモリ、ヒューズ、アンティヒューズ等とすることができる。前述した種々の例により、本発明は、一回のみプログラム可能なデバイス、またはリプログラマブルデバイスのいずれに適用することもできる。
【0097】
前述の説明は本発明の原理を単に例示するものであり、当業者においては本発明の精神を逸脱することなく、種々の設計変更をなし得ることが理解されよう。例えば、デバイス10上の多様な形式のリソースの数は、添付図面および説明において示された実施例の数字とは異なったものとすることができる。これは、種々の形式の回路の行および列の数、各領域20内の小領域30の数、種々の形式の相互接続コンダクタの数、種々の形式の相互接続コンダクタの間における相互接続を形成するためのPLCの数およびサイズ等に該当する。また、“垂直”および“水平”、“左”および“右”、“上”および“下”、“行”および“列”等の種々の方向および位置的な用語は、単に便宜的に使用しているものであり、これらの用語によって固定的または絶対的な方向的または位置的限定を意図するものではない。例えば、本発明に係るデバイスは任意の方向性を有することができる。方向を変更した場合、異なった方向的または位置的用語をその説明に使用することができるが、これは本発明の視点および精神に係る基本的な特徴を変更するものではない。“領域”および“小領域”等の用語も単に一般的に使用しているものであり、同様な回路に対して関連する用語またはその他用語を使用することもできる。従って、これらの用語は意味において逆転して使用することもでき、領域/小領域の序列は重要でない。他方、本発明の視点に係るデバイスは、小領域に分割されていないプログラマブルロジック領域を備えることもできる。ルックアップテーブルロジックも使用され、実施例において図示および説明しているが、必要に応じてこれに代えて他の種類のロジックを使用し得ることは勿論である。例えば、ペダーソン氏等の米国特許第5241224号およびパテル氏の米国特許第5371422号公報(これらはともに全体的に参照に組み入れてある)に関連する第1の例において考慮したように、ルックアップテーブルロジックに代えて積和ロジックを使用することもできる。ここでは特定のプログラマブルロジックデバイス構造に関して説明したが、本発明の種々の特徴は、フリーマン氏の米国特許第34363号公報、クリフ氏等の米国特許第5689195号公報、および1999年3月10日に出願されたジェファーソン氏等の米国特許出願09/266235号公報(これらは全て全体的に参照に組み入れてある)等に記載されているその他の多様な構造のプログラマブルロジックデバイスに適用することができる。
【図面の簡単な説明】
【図1】 本発明に従って構成される例示的なプログラマブルロジックデバイスの概略ブロック線図である。
【図2】 本発明に従った代表的かつ例示的な相互接続リソースを加えた図1のデバイスの部分拡大図である。
【図3】 本発明に従って図1および図2に示されたデバイスに追加的に使用する代表的かつ例示的な相互接続リソースを示す概略ブロック線図である。
【図4】 図1および図2のデバイスに適用される別の代表的かつ例示的な相互接続リソースを示す概略ブロック線図である。
【図5A】 本発明に従って図1および図2のデバイス上において使用する代表的かつ例示的なプログラマブルロジックおよび関連回路を示す概略ブロック線図である。
【図5B】 本発明に従って図1および図2のデバイス上において使用する代表的かつ例示的なプログラマブルロジックおよび関連回路を示す概略ブロック線図である(図5Aおよび図5Bは、図5と総称することもある)
【図6】 本発明に従って図1および図2に示されたデバイスに使用するさらに別の代表的かつ例示的な相互接続リソースを示す概略ブロック線図である。
【図7A】 図1の本発明の回路の別の代表的な部分の例示的な実施例を詳細に示した概略ブロック線図である。
【図7B】 図7Aの回路に関する追加的な要素で図7Aに示されていないものを示した概略ブロック線図である。図7Aおよび図7Bは、図7と総称することもある。
【図8】 図7の回路の代表的な部分を詳細に示した概略ブロック線図である。
【図9】 図1の本発明の回路のさらに別の代表的な部分の例示的な実施例を示す概略ブロック線図である。
【図10】 図5の一部分の本発明に従った別の実施例を示す概略ブロック線図である。
【図11】 図5の一部分の本発明に従ったさらに別の実施例を示す概略ブロック線図である。
【図12】 本発明に係るプログラマブルロジックデバイスを使用する例示的なシステムを示す概略ブロック線図である。

Claims (20)

  1. プログラマブルロジック集積回路装置であって、
    複数のプログラマブルロジックの領域の複数の行と複数の列とが交差する二次元配列で、該装置に配置された複数のプログラマブルロジックの領域と、
    該複数の領域の該複数の行のうちの2つの行の間に配置された行において該装置に配置された入力/出力回路の複数のセルと
    を備え、
    該複数のセルのそれぞれの回路は、該装置の入力/出力ピンを含み、該入力/出力ピンのうちの少なくともいくつかは、該装置の中央に隣接して配置されている、プログラマブルロジック集積回路装置。
  2. 前記複数のセルの少なくともいくつかは、前記複数の領域の前記複数の行のうちの1つの行の領域に関連付けられており、該複数の領域間の該複数のセルの行は、該関連付けられたセルと該複数の領域との間で延びる複数のコンダクタによって配置されており、該複数のコンダクタは、該関連付けられた領域から該関連付けられたセルにの出力信号を搬送するように構成されている、請求項1に記載の装置。
  3. プログラマブルロジック集積回路装置であって、
    複数のプログラマブルロジックの領域の複数の行と複数の列とが交差する二次元配列で、該装置に配置された複数のプログラマブルロジックの領域と、
    該複数の行に垂直に延び、該複数の行の中間点に隣接する複数の信号コンダクタと、
    該複数の信号コンダクタから分岐する複数の分岐コンダクタであって、該複数の行のそれぞれに隣接し、かつ、該隣接する行に沿って延び、各行に隣接する該複数の分岐コンダクタは、該複数の信号コンダクタから該隣接する行の領域に信号を搬送するように構成されている、複数の分岐コンダクタと、
    該装置の中央に隣接して配置された複数の入力ピンであって、該装置の外部の回路から受信された信号を該複数の信号コンダクタにそれぞれ供給するように構成されている、複数の入力ピンと
    を備えた、プログラマブルロジック集積回路装置。
  4. 前記複数の領域のそれぞれは、前記複数の分岐コンダクタを介して受信された信号をクロック信号として用いるように構成されている、請求項3に記載の装置。
  5. 前記複数のロジック領域の前記複数の行のうちの2つの行の間に配置された行において前記装置に配置された複数の入力/出力セルをさらに備え、該複数の入力/出力セルのそれぞれはまた、前記複数の分岐コンダクタを介して前記複数の信号コンダクタから信号を受信する、請求項3に記載の装置。
  6. 前記複数の入力/出力セルのそれぞれは、前記複数の分岐コンダクタを介して受信される信号をクロック信号として用いるように構成されている、請求項5に記載の装置。
  7. 前記複数の入力/出力セルのそれぞれは、
    入力/出力ピンと、
    該セルの該入力/出力ピンへの可能な印加のために、前記装置によって生成された信号を選択的に登録するように構成されている出力レジスタ回路と、
    トリステートドライバ回路であって、該トリステートドライバ回路がイネーブルされる場合には、該出力レジスタ回路の出力信号を該セルの入力/出力ピンに印加するように構成されているトリステートドライバ回路と、
    該トリステートドライバ回路への印加のために、該装置によって生成された出力イネーブル信号を信号として選択的に登録することにより、該トリステートドライバ回路を選択的にイネーブルするように構成されている出力イネーブルレジスタ回路と、
    該装置の他の回路への印加のために、該セルの入力/出力ピンからの入力信号を選択的に登録するように構成されている入力レジスタ回路と
    を備え、
    該複数の入力/出力セルのそれぞれは、該出力レジスタ回路と該出力イネーブルレジスタ回路と該入力レジスタ回路とをクロックするために、前記複数の分岐コンダクタを介して受信された信号を用いるように構成されている、請求項5に記載の装置。
  8. プログラマブルロジック集積回路装置であって、
    複数のプログラマブルロジックの領域の複数の行と複数の列とが交差する二次元配列で、該装置に配置された複数のプログラマブルロジックの領域と、
    該装置の中央に隣接して配置された複数の入力ピンであって、該装置の外部の回路からの信号を受信するように構成されている複数の入力ピンと、
    該複数の入力ピンによって受信される信号と該装置の中央に隣接する該複数の領域の一部によって出力される信号とから高速コンダクタ信号を選択するように構成されている第1のプログラマブルロジックコネクタ回路と、
    該複数の行に垂直に延び、該複数の行の中間点に隣接する複数の高速コンダクタであって、該第1のプログラマブルロジックコネクタ回路によって選択された該複数の高速コンダクタ信号を搬送するように構成されている、複数の高速コンダクタと、
    該複数の行のそれぞれに隣接する複数の分岐コンダクタであって、該隣接する行に沿って延び、各行に隣接する該複数の分岐コンダクタは、該隣接する行の領域に信号を搬送するように構成されている、複数の分岐コンダクタと、
    該複数の行のそれぞれに関連付けられた第2のプログラマブルロジックコネクタ回路であって、該第2のプログラマブルロジックコネクタ回路が関連付けられている該行に隣接する該複数の分岐コンダクタに該複数の高速コンダクタからの高速コンダクタ信号を選択的に印加するように構成されている、第2のプログラマブルロジックコネクタ回路と
    を備えた、プログラマブルロジック集積回路装置。
  9. プログラマブルロジック集積回路装置であって、
    次元配列で配置された複数のロジック領域と、
    次元配列内に位置する複数の入力/出力セルと
    を備え
    該複数のセルのそれぞれの回路は、該装置の入力/出力ピンを含み、該入力/出力ピンのうちの少なくともいくつかは、該装置の中央に隣接して配置されている、プログラマブルロジック集積回路装置。
  10. プログラマブルロジック集積回路装置であって、
    ロジック領域の所定の複数のグループに配置された複数のロジック領域と、
    該ロジック領域の所定の複数のグループ間に配置された複数のI/O領域と
    を備え
    該複数のI/O領域のそれぞれの回路は、該装置の入力/出力ピンを含み、該入力/出力ピンのうちの少なくともいくつかは、該装置の中央に隣接して配置されている、プログラマブルロジック集積回路装置。
  11. プログラマブルロジック集積回路装置であって、
    複数のロジック領域の複数の行と複数の列との二次元配列で、該装置に配置された複数のロジック領域と、
    該複数のロジック領域の該複数の行のうちの2つの行の間に配置された入力/出力回路の複数のセルと、
    該複数のロジック領域と該複数のセルとに隣接して水平および垂直に延びる複数のコンダクタと、
    該複数のコンダクタに信号を選択的に印加するように構成されている複数のプログラマブルロジックコネクタであって、少なくとも該複数のロジック領域から該信号を受信するように構成されている、複数のプログラマブルロジックコネクタと
    を備えた、プログラマブルロジック集積回路装置。
  12. 前記装置の中央に隣接して配置された複数の入力ピンをさらに備え、該複数の入力ピンは、該装置の外部の回路から受信された信号を前記複数のコンダクタにそれぞれ供給するように構成されている、請求項11に記載の装置。
  13. 前記複数の入力ピンは、前記複数の垂直コンダクタのうちの少なくとも2つに印加されるクロック信号を受信する、請求項11に記載の装置。
  14. 前記装置の中央に隣接して配置された第2の複数の入力ピンをさらに備え、該第2の複数の入力ピンは、前記複数のプログラマブルロジックコネクタのうちの少なくとも1つに関連付けられている、請求項11に記載の装置。
  15. 前記複数のプログラマブルロジックコネクタは、前記複数のコンダクタへの印加のために、前記複数の入力ピンまたは前記複数のロジック領域のいずれかによって提供される信号を選択する、請求項14に記載の装置。
  16. 前記複数のプログラマブルロジックコネクタは、前記複数のコンダクタへの印加のために、該複数のコンダクタまたは前記複数のロジック領域のいずれかによって提供される信号を選択する、請求項14に記載の装置。
  17. 前記複数のプログラマブルロジックコネクタは、前記複数の水平コンダクタに信号を提供するように構成されており、該複数の水平コンダクタは、該複数のプログラマブルロジックコネクタに関連付けられた前記複数のロジック領域に隣接して分岐している、請求項11に記載の装置。
  18. 前記複数のプログラマブルロジックコネクタは、前記複数の水平コンダクタに信号を提供するように構成されており、該複数の水平コンダクタは、該複数のプログラマブルロジックコネクタに関連付けられた前記複数のセルに隣接して分岐している、請求項11に記載の装置。
  19. 前記複数のプログラマブルロジックコネクタは、前記装置に沿って垂直に延びる複数のコンダクタに信号を提供するように構成されている、請求項11に記載の装置。
  20. 前記複数のコンダクタは、前記複数のプログラマブルロジックコネクタと、前記複数のロジック領域と、前記複数のセルとに信号を搬送するように構成されている、請求項11に記載の装置。
JP2000603150A 1999-03-04 2000-03-02 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース Expired - Fee Related JP4206203B2 (ja)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US12278899P 1999-03-04 1999-03-04
US60/122,788 1999-03-04
US14250899P 1999-07-06 1999-07-06
US14243199P 1999-07-06 1999-07-06
US14251399P 1999-07-06 1999-07-06
US60/142,508 1999-07-06
US60/142,513 1999-07-06
US60/142,431 1999-07-06
PCT/US2000/005628 WO2000052826A2 (en) 1999-03-04 2000-03-02 Interconnection and input/output resources for programmable logic integrated circuit devices

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2006146010A Division JP4637790B2 (ja) 1999-03-04 2006-05-25 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2006146009A Division JP4813257B2 (ja) 1999-03-04 2006-05-25 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース

Publications (3)

Publication Number Publication Date
JP2002538634A JP2002538634A (ja) 2002-11-12
JP2002538634A5 JP2002538634A5 (ja) 2006-07-20
JP4206203B2 true JP4206203B2 (ja) 2009-01-07

Family

ID=27494451

Family Applications (7)

Application Number Title Priority Date Filing Date
JP2000603150A Expired - Fee Related JP4206203B2 (ja) 1999-03-04 2000-03-02 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2006146010A Expired - Fee Related JP4637790B2 (ja) 1999-03-04 2006-05-25 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2006146009A Expired - Fee Related JP4813257B2 (ja) 1999-03-04 2006-05-25 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2008270378A Expired - Fee Related JP5144462B2 (ja) 1999-03-04 2008-10-20 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2011235492A Withdrawn JP2012044708A (ja) 1999-03-04 2011-10-26 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2012141122A Pending JP2012186863A (ja) 1999-03-04 2012-06-22 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2014131068A Expired - Fee Related JP5820508B2 (ja) 1999-03-04 2014-06-26 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース

Family Applications After (6)

Application Number Title Priority Date Filing Date
JP2006146010A Expired - Fee Related JP4637790B2 (ja) 1999-03-04 2006-05-25 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2006146009A Expired - Fee Related JP4813257B2 (ja) 1999-03-04 2006-05-25 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2008270378A Expired - Fee Related JP5144462B2 (ja) 1999-03-04 2008-10-20 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2011235492A Withdrawn JP2012044708A (ja) 1999-03-04 2011-10-26 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2012141122A Pending JP2012186863A (ja) 1999-03-04 2012-06-22 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
JP2014131068A Expired - Fee Related JP5820508B2 (ja) 1999-03-04 2014-06-26 プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース

Country Status (4)

Country Link
EP (1) EP1092268B1 (ja)
JP (7) JP4206203B2 (ja)
DE (1) DE60038659T2 (ja)
WO (1) WO2000052826A2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60012639T2 (de) 1999-03-04 2005-08-04 Altera Corp., San Jose Verbindungsressourcen für programmierbare logische integrierte schaltungen
US6590419B1 (en) 1999-10-12 2003-07-08 Altera Toronto Co. Heterogeneous interconnection architecture for programmable logic devices
US6930510B2 (en) 2003-03-03 2005-08-16 Xilinx, Inc. FPGA architecture with mixed interconnect resources optimized for fast and low-power routing and methods of utilizing the same
JP2005268536A (ja) 2004-03-18 2005-09-29 Matsushita Electric Ind Co Ltd プログラマブル・ロジック・デバイスおよびその設計方法
US7389485B1 (en) 2006-03-28 2008-06-17 Xilinx, Inc. Methods of routing low-power designs in programmable logic devices having heterogeneous routing architectures
KR101420817B1 (ko) 2008-01-15 2014-07-21 삼성전자주식회사 3 차원의 직렬 및 병렬 회로들을 가지고 차례로 적층된집적회로 모듈들을 전기적으로 접속하는 반도체 집적회로장치 및 그 장치의 형성방법
US8987868B1 (en) 2009-02-24 2015-03-24 Xilinx, Inc. Method and apparatus for programmable heterogeneous integration of stacked semiconductor die
US7893712B1 (en) 2009-09-10 2011-02-22 Xilinx, Inc. Integrated circuit with a selectable interconnect circuit for low power or high performance operation
JP5336398B2 (ja) 2010-02-01 2013-11-06 ルネサスエレクトロニクス株式会社 半導体集積回路、半導体集積回路の構成変更方法
US9015023B2 (en) 2010-05-05 2015-04-21 Xilinx, Inc. Device specific configuration of operating voltage
CN103828239B (zh) * 2011-08-12 2016-08-17 株式会社电装 集成电路

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4761768A (en) * 1985-03-04 1988-08-02 Lattice Semiconductor Corporation Programmable logic device
JPS6264124A (ja) * 1985-09-13 1987-03-23 Ricoh Co Ltd プログラマブル・ロジツク・デバイス
US4771285A (en) * 1985-11-05 1988-09-13 Advanced Micro Devices, Inc. Programmable logic cell with flexible clocking and flexible feedback
EP0428503B1 (en) * 1985-12-06 1995-09-20 Advanced Micro Devices, Inc. Programmable logic device with programmable output selection means
JPS6323419A (ja) * 1986-07-15 1988-01-30 Ricoh Co Ltd プログラマブル・ロジツク・デバイス
JPS63276327A (ja) * 1987-05-08 1988-11-14 Hitachi Ltd ダイナミック型ロジック・アレイ
JP2548301B2 (ja) * 1988-05-25 1996-10-30 富士通株式会社 プログラマブル論理回路装置
JP2772051B2 (ja) * 1988-09-08 1998-07-02 川崎製鉄株式会社 プログラマブル入出力回路及びプログラマブル論理素子
JPH02174249A (ja) * 1988-12-27 1990-07-05 Nec Corp Ecl型ゲートアレイ集積回路装置
JP3179800B2 (ja) * 1991-07-22 2001-06-25 株式会社日立製作所 半導体集積回路装置
US5633830A (en) * 1995-11-08 1997-05-27 Altera Corporation Random access memory block circuitry for programmable logic array integrated circuit devices
JP3429844B2 (ja) * 1994-04-22 2003-07-28 沖電気工業株式会社 モード切り替えインタフェース回路
US5465056A (en) * 1994-06-30 1995-11-07 I-Cube, Inc. Apparatus for programmable circuit and signal switching
JPH08102492A (ja) * 1994-08-02 1996-04-16 Toshiba Corp プログラム可能な配線回路及びテストボード装置
US5442306A (en) * 1994-09-09 1995-08-15 At&T Corp. Field programmable gate array using look-up tables, multiplexers and decoders
JPH09181598A (ja) * 1995-12-18 1997-07-11 At & T Corp フィールドプログラマブルゲートアレイ
JPH09293784A (ja) * 1996-04-26 1997-11-11 Nippon Telegr & Teleph Corp <Ntt> フィールドプログラマブルゲートアレイ
US5894565A (en) * 1996-05-20 1999-04-13 Atmel Corporation Field programmable gate array with distributed RAM and increased cell utilization
US5763556A (en) * 1996-05-21 1998-06-09 Exxon Chemical Patents Inc. Copolymers of ethylene and geminally disubstituted olefins
US5977793A (en) * 1996-10-10 1999-11-02 Altera Corporation Programmable logic device with hierarchical interconnection resources
US5999016A (en) * 1996-10-10 1999-12-07 Altera Corporation Architectures for programmable logic devices
US5963050A (en) * 1997-02-26 1999-10-05 Xilinx, Inc. Configurable logic element with fast feedback paths
US6215326B1 (en) * 1998-11-18 2001-04-10 Altera Corporation Programmable logic device architecture with super-regions having logic regions and a memory region

Also Published As

Publication number Publication date
JP5820508B2 (ja) 2015-11-24
WO2000052826A2 (en) 2000-09-08
DE60038659T2 (de) 2009-06-18
JP2009065694A (ja) 2009-03-26
JP2012044708A (ja) 2012-03-01
JP4813257B2 (ja) 2011-11-09
WO2000052826A3 (en) 2001-01-25
JP2002538634A (ja) 2002-11-12
JP2012186863A (ja) 2012-09-27
EP1092268B1 (en) 2008-04-23
JP4637790B2 (ja) 2011-02-23
JP2006246534A (ja) 2006-09-14
JP2014200106A (ja) 2014-10-23
JP5144462B2 (ja) 2013-02-13
JP2006287964A (ja) 2006-10-19
DE60038659D1 (de) 2008-06-05
EP1092268A2 (en) 2001-04-18

Similar Documents

Publication Publication Date Title
JP5820508B2 (ja) プログラマブルロジック集積回路デバイスの相互接続ならびに入力/出力リソース
US6989689B2 (en) Interconnection and input/output resources for programmable logic integrated circuit devices
US6323680B1 (en) Programmable logic device configured to accommodate multiplication
US5675262A (en) Fast carry-out scheme in a field programmable gate array
US5848285A (en) Macrocell having a dual purpose input register for use in a logic device
JP2002538562A (ja) 桁上げ選択加算付プログラマブルロジックデバイス
US7358765B2 (en) Dedicated logic cells employing configurable logic and dedicated logic functions
US7368941B2 (en) Dedicated logic cells employing sequential logic and control logic functions
US20030201794A1 (en) Programmable logic device with hierarchical interconnection resources
WO1998038740A1 (en) Fpga having logic element carry chains capable of generating wide xor functions
US6094064A (en) Programmable logic device incorporating and input/output overflow bus
WO2006076276A2 (en) Configurable dedicated logic cells in programmable logic and routing blocks with dedicated lines and local connections
EP1705798B1 (en) Interconnection and input/output resources for programmable logic integrated circuit devices

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060427

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060427

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060525

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060525

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20060525

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20060704

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070222

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20080129

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20080208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080214

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080513

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080514

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080521

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080523

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080814

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: 20081002

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081020

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

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

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: 20111024

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121024

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131024

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees