JP3325657B2 - 集積回路 - Google Patents

集積回路

Info

Publication number
JP3325657B2
JP3325657B2 JP18530993A JP18530993A JP3325657B2 JP 3325657 B2 JP3325657 B2 JP 3325657B2 JP 18530993 A JP18530993 A JP 18530993A JP 18530993 A JP18530993 A JP 18530993A JP 3325657 B2 JP3325657 B2 JP 3325657B2
Authority
JP
Japan
Prior art keywords
programmable
input
logic
output
signal
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
JP18530993A
Other languages
English (en)
Other versions
JPH06188723A (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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JPH06188723A publication Critical patent/JPH06188723A/ja
Application granted granted Critical
Publication of JP3325657B2 publication Critical patent/JP3325657B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
    • H01L27/10Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
    • 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/1778Structural details for adapting physical parameters
    • H03K19/17796Structural details for adapting physical parameters for physical disposition of blocks
    • 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/17704Logic 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 the logic functions being realised by the interconnection of rows and columns
    • 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/1778Structural details for adapting physical parameters
    • H03K19/17792Structural details for adapting physical parameters for operating speed

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Logic Circuits (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の分野】この発明は、一般的にプログラム可能な
論理装置(PLD)に関し、より特定的には低密度から
非常に高密度まで比例縮小可能でありかつ入力スイッチ
マトリックス、出力スイッチマトリックス、および集中
スイッチマトリックスを含みかつ固定した予測可能な確
定信号伝搬時間遅延を与えるプログラム可能な論理装置
のためのアーキテクチュアに関する。
【0002】
【関連技術の説明】様々なPLDが低および中密度論理
の用途に利用可能である。PLDの違いを区別する主要
な特徴は、速度性能、密度、論理の柔軟性、ユーザの設
計をPLDにマップするために必要なソフトウェアの複
雑性および資源の効果的な利用である。残念なことに多
くのPLDのアーキテクチュアは速度を犠牲にしなけれ
ば非常に高密度まで簡単には比例縮小できない。典型的
には各々のPLDは積項を発生するプログラム可能な論
理アレイを含み、PLDの各々のマクロセルは1組の積
項によって駆動される。マクロセルからの出力信号はP
LDのピンを駆動する。
【0003】PLDの中には論理の柔軟性を促進するた
めに積項の拡張アレイを利用するものもある。概念的に
は、この拡張アレイの試みは、論理アレイからの「固定
数の積項」と拡張アレイからの「割当て可能な数の積
項」との組合せで積項アレイの論理の効率を解決しよう
とするものである。ある1つの試みでは、各々の出力マ
クロセルは論理アレイからの最小数の積項に拡張アレイ
から借りることができる可変数の積項を加えたものへの
アクセスを有する。各々の出力マクロセルが拡張アレイ
からの多数の積項を受け取ることができるため、この試
みの主要な利点は論理の柔軟性である。
【0004】しかしながら、拡張アレイの方法には幾つ
かの主要な欠点がある。第1には、拡張アレイはNAN
DアレイまたはNORアレイとして実現されることであ
る。拡張アレイからの出力ラインは各々の論理アレイの
入力ラインにフィードバックし、それによって論理アレ
イの入力ラインの数を大幅に増加させる。第2には、拡
張アレイは論理アレイへの入力ラインと同じ入力ライン
から駆動されることである。したがって、拡張アレイと
論理アレイとはともに多数の入力ラインを有し、論理ア
レイの積項の数が増加するに従って両方のアレイへの入
力ラインの数は増加する。
【0005】積項アレイへの入力ラインの数が増加する
に従って、PLDのシリコンダイの大きさは増加しかつ
PLDの速度性能は低下する。結果として、拡張アレイ
の試みは速度性能とダイの大きさとをともに犠牲にして
積の柔軟性を増加する。しかしながら、あるポイントに
おいて、アーキテクチュアがより高密度になるに従って
アレイの大きさは速度性能と同様に法外なものとなる。
したがって、非常に高性能で高密度のPLDへの拡張ア
レイの概念の応用は疑わしい。
【0006】ソフトウェアの複雑性を軽減しかつ信号の
経路指定を促進するために、PLDの中には、PLDで
プログラム可能な論理ブロックを相互接続するためにフ
ルクロスポイントのプログラム可能な相互接続アレイ
(PIA)を含むものもある。フルクロスポイントのプ
ログラム可能な相互接続アレイの試みにはすべての信号
に対して100%のグローバルな接続性があるという潜
在的な利点を有する。すべてのグローバル信号は典型的
には集中相互接続アレイに与えられ、PLDの各々のプ
ログラム可能な論理ブロックに対する入力信号は、この
集中相互接続アレイから発生される。
【0007】各々のプログラム可能な論理ブロックに対
する入力信号の数はグローバル信号の総数の部分集合で
あるが、各々の入力信号は本質的に同時にすべてのグロ
ーバル信号源の関数であり得る。このグローバルな接続
性は100%の接続性でありかつ「経路指定」ソフトウ
ェアを幾分か簡略化する。さらに、完全なグローバルな
接続性が常に利用可能であるため、信号の経路指定をす
るための特に複雑ないかなる自己決定をするためにも経
路指定ソフトウェアは必要とされない。
【0008】中央のPIAの試みの不利な点は主に、速
度の低下、シリコンダイの大きさ、増加した密度に対す
る比例縮小性および資源の浪費である。フルクロスポイ
ントのプログラム可能な相互接続アレイを組込むPLD
は、散在するスイッチマトリックスを備えた比較可能な
PLDよりも速度が遅くかつよりコストが高い傾向があ
る(およびそうなる可能性が大きい)。PIAがすべて
の論理ブロックのすべての内部論理マクロセルからのフ
ィードバック信号とすべてのI/Oピンのフィードバッ
ク信号とを受けるため、PIAへの入力信号の数はPL
Dの論理ブロックの総数および大きさならびにI/Oピ
ンの数に正比例する。PIAの大きさはPLDの密度の
増加に対してほぼ指数関数的に増加する。非常に大きい
プログラム可能な相互接続アレイは本質的に「速度が遅
く」、より大きなダイ区域の付加的なオーバヘッドを有
する。
【0009】これらの制限を考慮すると、PIAがより
低密度のPLDまたは高密度ではあるが性能の低いPL
Dに主に利用されてきたことは驚くべきことではない。
密度が増加してピンの数がより多くなりかつ論理がより
高密度になるに従って、PIAのオーバヘッドはかなり
大きくなる。概念的には同じ試みをより高密度な装置に
使用できるが、実際にはその試みを実現することは非常
に難しくなっている。したがって、フルクロスポイント
PIAの試みを使用する、より高性能でかつより高密度
なものへの比例縮小性は疑わしい。
【0010】最後となるが見逃すことのできないPIA
の欠点は、かなりの資源を浪費する可能性があることで
ある。PIAはモノリシックアレイであるため、それは
かなりの資源の浪費につながりがちである。必要とされ
る入力信号の数は、装置の完全な能力よりもかなり少な
い。結果として、ほとんどの信号経路は利用されないま
まである。
【0011】セグメント化されたブロックベースのPL
DにおけるPIAの代替例となるのは、マルチプレクサ
ベースの散在スイッチマトリックス構造である。PIA
の試みがシリコンを問題となるところに置くという粗雑
で強引な試みによって柔軟性を得ようとするものである
一方、マルチプレクサベースの散在スイッチマトリック
スの試みはより知的な方法で最適化された経路指定能
力、速度およびダイの大きさに焦点を当てる。マルチプ
レクサベースのスイッチマトリックスに対する最も重要
なパラメータのうちの2つは、スイッチマトリックスか
ら各々のプログラム可能な論理ブロックへの入力ライン
の数およびマルチプレクサの大きさである。マルチプレ
クサの大きさとプログラム可能な論理ブロックの入力ラ
インの数とが増加するに従って、信号経路指定能力も増
加する。残念なことに、入力ラインの数がより多くなり
かつマルチプレクサの構造がより大きくなれば速度性能
はより遅くなりダイの大きさはより大きくなる。
【0012】15ナノ秒(ns)のピン間の信号遅延を
有する先行技術の装置では、22ないし26本のプログ
ラム可能な論理ブロックの入力ラインおよび16:1マ
ルチプレクサベースのスイッチマトリックスが、3,0
00ないし3,600個のゲート相当物のゲート密度に
適切であった。26本の入力ラインおよび16:1マル
チプレクサによって、最大416個の異なる信号から2
6個のプログラム可能な論理ブロックの入力信号を選択
することができる。
【0013】散在スイッチマトリックスを備えるより高
密度のPLDに関して、各々の信号は各々のプログラム
可能な論理ブロックに入るための少なくとも2.5の経
路を有する。最大416個の異なる信号について、各々
の異なる信号に対して2.5通りの経路選択能力がある
ので、異なる入力信号の数は約152信号(すなわち、
416/2.5)に制限される。
【0014】もしPLDがこの数よりも多い信号を有せ
ば、「最も望ましいグローバルな」接続性を達成するた
めに信号は慎重に選択され経路指定されなければならな
い。しかしながら、経路選択可能係数が2.5だけで
は、PLDの密度が増加するに従って信号の経路指定は
ますます困難になる。
【0015】この単一の層のマルチプレクサベースのス
イッチマトリックス構造の主な利点は(ある特定の数の
入力ラインおよびマルチプレクサの大きさまで)、速度
およびダイの大きさである。16:1マルチプレクサを
介する信号伝搬遅延はその実現化例に依存して典型的に
は約1ないし2ナノ秒(ns)である。この遅延は常に
固定しており、かつスイッチマトリックスの構造に依存
してすべての信号に対して同一であり得る。さらに、す
べての信号が常に同じ態様でスイッチマトリックスを介
して通過するため、タイミング遅延の計算は相対的に単
純で容易である。
【0016】単純性、速度およびより小さいダイの大き
さがマルチプレクサベースのスイッチマトリックス構造
の主な利点である一方、プログラム可能な論理ブロック
の入力ラインおよびマルチプレクサの大きさが制限とな
り得る。入力ラインとマルチプレクサの大きさとが制限
するものは、PLDの密度またはピンの数に関する。2
6本の入力ラインおよび各々の入力ラインに対して1
6:1マルチプレクサを備えるプログラム可能な論理ブ
ロックが84個のピンのパッケージにおいて3,600
ゲートまでの密度に適切である。ピンの数または論理の
密度が増加するに従って、26本の入力ラインおよび1
6:1マルチプレクサという制限で最適なグローバルな
接続性を与えることは困難である。結果的に、マルチプ
レクサベースの単一の層の単一のスイッチマトリックス
もそれ自体でより高密度への比例縮小性が制限される。
【0017】より高密度なPLDに関する別の重要な問
題点は、回路ボード上でPLDを使用することに関連す
る。典型的には、ユーザの論理設計がPLDにプログラ
ムされるとPLDに対する特定の信号ピンアウトが得ら
れる。この信号ピンアウトは回路ボードをレイアウトす
るために使用される。回路ボードをテストする際にしば
しば、設計の変化を受け入れるようにPLDが再プログ
ラムされなければならないことが発見される。
【0018】PLDを再プログラムする際、信号ピンア
ウトが変化していないと仮定することはしばしばかなり
困難である。したがって、PLDを再プログラムするこ
とは回路ボードの設計からやり直すことを意味し得る。
これは開発を遅らせかつ開発のためのコストを大幅に増
加させる。したがって、先行技術のPLDのアーキテク
チュアは、一旦PLDの信号ピンアウトが確立されると
十分には柔軟ではなくなる。
【0019】
【発明の概要】この発明のプログラム可能な論理装置
(PLD)は、プログラム可能な入力スイッチマトリッ
クス(入力スイッチマトリックス)およびプログラム可
能な集中スイッチマトリックス(集中スイッチマトリッ
クス)を含むプログラム可能なスイッチマトリックスに
よって相互接続される2つ以上のプログラム可能な論理
ブロックを含む。各々のプログラム可能な論理ブロック
は、しばしば「プログラム可能な集中スイッチ相互接続
手段」と呼ばれる集中スイッチマトリックスからのみ入
力信号を受ける。
【0020】プログラム可能な論理ブロックからの出力
信号は、出力スイッチマトリックスすなわちプログラム
可能な出力スイッチ相互接続手段によって複数の入力/
出力(I/O)ピンに結合される。さらにプログラム可
能な論理ブロックからの出力信号はプログラム可能な入
力スイッチマトリックスに直接与えられる。それに加え
て、入力マクロセルは、入力マクロセルを駆動するI/
Oピンすなわち関連するI/Oピン上の信号をプログラ
ム可能な入力スイッチマトリックスに結合する。
【0021】この発明のプログラム可能な入力スイッチ
マトリックスは、プログラム可能な集中スイッチマトリ
ックスへのすべてのフィードバック信号を一様に処理
し、それによって(i)信号の経路指定を簡略化し、
(ii)機能性のバランスを向上し、(iii)グロー
バルなプログラム可能なスイッチマトリックスとのみ相
互接続される複数のプログラム可能な論理ブロックを備
える先行技術のPLDと比べてPLD内の資源の利用度
を向上する。経路指定能力が強化されることによって信
号の有用性と妥協することなくこの発明のアーキテクチ
ュアをより高密度に移行するように促進されるため、経
路指定能力の向上は重要である。
【0022】特定的には、ある1つの実施例において、
入力スイッチマトリックスは集中スイッチマトリックス
への各々のフィードバック信号に対して等しい数の信号
経路を与える。別の実施例では、入力スイッチマトリッ
クスに入る各々のフィードバック信号は、それを通過し
て集中スイッチマトリックスに入る機会を等しく有す
る。ここで「フィードバック信号」は入力スイッチマト
リックスへの入力信号である。ある1つの実施例におい
て、プログラム可能な論理ブロックに対するI/Oピン
信号およびフィードバック信号は入力スイッチマトリッ
クスのバンクの複数の入力ラインを駆動する。入力スイ
ッチマトリックスバンクは、この複数の入力ラインと入
力スイッチマトリックスの出力ラインとを選択的に接続
しかつ切り離す。
【0023】この発明の重要な局面は、各々のフィード
バック信号が入力スイッチマトリックスを通過して集中
スイッチマトリックスに到達することである。したがっ
て、各々のフィードバック信号がグローバルスイッチマ
トリックスへの経路を1つしか有さない先行技術のPL
Dと違って、上述のように各々の信号に対する多数の経
路または多数の機会によって信号経路指定能力が強化さ
れる。
【0024】さらに、各々のフィードバック信号はその
信号がI/Oピンからの入力信号であってもプログラム
可能な論理ブロックからのフィードバック信号であって
も、およびプログラム可能な論理ブロックのフィードバ
ック信号が埋込論理マクロセルからのものであっても出
力論理マクロセルからのものであっても一様に処理され
る。入力スイッチマトリックスを通過する各々の信号に
対する信号伝搬時間遅延は固定した予測可能な確定時間
遅延である。集中スイッチマトリックスと組合せたこの
発明の入力スイッチマトリックスのさらに他の利点は、
集中スイッチマトリックスへの入力信号の総数を縮小す
ることである。ある実施例において、プログラム可能な
論理ブロックに対する入力スイッチマトリックスバンク
は、合計32個の信号から集中スイッチマトリックスに
対する24個の入力信号を選択する。
【0025】この発明の出力スイッチマトリックスは、
先行技術の高密度PLDの多くの欠点を排除する。出力
スイッチマトリックスは、論理マクロセルの出力信号を
多数のI/Oピンの中のある1つのI/Oピンに選択的
に経路指定する。ある1つの実施例において、出力スイ
ッチマトリックスはPLDの各々のプログラム可能な論
理ブロックに対して1つのバンクを有する。このバンク
に結合される各々のI/Oピンに関して、バンクは複数
の出力信号の各々の出力信号と複数のI/Oピンとを結
合し切り離す。したがって、PLDのピンアウトが確立
されPLDを再プログラムすることが必要となった後で
も出力信号はいずれのI/Oピンにも容易に経路指定さ
れる。したがって、この発明のPLDでは、PLDが再
プログラムされるときPLDを使用する回路ボードの設
計を変更する必要はない。
【0026】さらに出力スイッチマトリックスはPLD
の機能上の対称性を向上し、それによってプログラム可
能な論理ブロック内で付加的な資源を必要とせずにPL
Dの機能性を高める。特定的には、ある1つの実施例に
おいて、プログラム可能な論理ブロック内の積項の数は
すべてのI/Oピンに対して同じというわけではない。
しかしながら、通常はその組の他のピンとは異なる数の
積項へのアクセスを有するI/Oピンを含むある特定の
組のI/Oピンで積項の対称性が必要とされれば、出力
スイッチマトリックスは必要とされる数の積項を有する
I/Oピンから通常は異なる数の積項を有するであろう
I/Oピンへの信号の経路選択を可能にする。したがっ
て、たとえばある特定の速度仕様を支持するためにPL
Dに課せられた制限はユーザの設計の妨げとならない。
【0027】出力スイッチマトリックスと入力スイッチ
マトリックスとはプログラム可能な論理ブロックと集中
スイッチマトリックスとをPLDのピンアウトおよびフ
ィードバックアーキテクチュアから切り離す。したがっ
て、出力スイッチマトリックスおよび入力スイッチマト
リックスは、様々なプログラム可能な相互接続構造およ
びプログラム可能な論理ブロックアーキテクチュアとと
もに効果的に使用され、資源の利用、経路指定能力およ
びこの発明の原理によって与えられる機能性を強化する
ことができる。
【0028】集中スイッチマトリックスは、専用入力信
号、プログラム可能な論理ブロックのフィードバック信
号およびI/Oピンからの信号を含むすべての信号に対
する最適なグローバルな接続性を与える。各々のプログ
ラム可能な論理ブロックは集中スイッチマトリックスか
らのこれらのグローバル信号すべてに対してアクセス可
能である。集中スイッチマトリックスは、集中スイッチ
マトリックスを横切る各々の信号に対して固定した、予
測可能な、均一な、かつ経路に無関係の確定信号伝搬時
間遅延を有する。各々のプログラム可能な論理ブロック
が集中スイッチマトリックスからのみ入力信号を受ける
ため、集中スイッチマトリックスによるすべての信号の
均一な処理は、PLDのピン間から固定した予測可能で
均一な確定信号伝搬時間遅延を得ることにおいて主要な
局面である。
【0029】ある1つの実施例において、この発明の各
々のプログラム可能な論理ブロックはプログラム可能な
論理アレイ、プログラム可能な論理アロケータおよびプ
ログラム可能な論理マクロセルを含む。プログラム可能
なグローバルスイッチマトリックスからプログラム可能
な論理ブロックへの入力ラインはプログラム可能な論理
アレイを駆動する。プログラム可能な論理アレイからの
出力ラインは、プログラム可能な論理アロケータに接続
される。論理アロケータは、プログラム可能な論理アレ
イの出力信号をプログラム可能な論理マクロセルにプロ
グラム可能に分配する。ある1つの実施例において、プ
ログラム可能な論理マクロセルは、論理アロケータから
の信号を一時記憶された信号、ラッチ信号または組合せ
信号のどれかとして構成しかつこれらの信号の極性を決
定する。プログラム可能な論理マクロセルからの出力信
号は、プログラム可能な論理ブロックの入力スイッチマ
トリックスおよび出力スイッチマトリックスの両方に与
えられる。
【0030】ある1つの実施例において、プログラム可
能な論理アレイは複数の積項のクラスタを含む。各々の
クラスタは多数の積項を有する。クラスタのある積項は
そのクラスタにプログラム可能に利用可能である。これ
は、ある1つの積項がその積項のクラスタにプログラム
可能に接続可能でありかつ切り離し可能であることを意
味する。積項がクラスタから切り離されると、積項は論
理マクロセルの出力信号の極性の制御のためまたは代替
的には非同期的な機能のために使用される。したがっ
て、プログラム可能に接続可能な積項は、同期的な動作
のためまたは非同期的な動作のために使用され得る。
【0031】他の実施例では、プログラム可能な論理ア
レイはさらに複数の積項のクラスタを含み、各々のクラ
スタは多数の積項を有する。しかしながら、クラスタの
複数の積項は、クラスタにプログラム可能に利用可能で
ある。これは、複数の積項が積項クラスタとプログラム
可能に接続可能でありかつ切り離し可能であることを意
味する。
【0032】この実施例において、プログラム可能に接
続可能でありかつ切り離し可能である積項のうちの1つ
は、論理制御または信号極性制御に利用可能である。プ
ログラム可能に接続可能でありかつ切り離し可能である
積項のうちの別の1つは、論理マクロセルに対する論理
または個々の非同期制御積項に利用可能である。プログ
ラム可能に接続可能でありかつ切り離し可能な積項のう
ちのさらに別の1つは論理マクロセルに対する論理また
は個々のクロック信号に利用可能である。
【0033】したがって、この実施例において、もしす
べてのプログラム可能に接続可能でありかつ切り離し可
能な積項が積項のクラスタに接続されれば、プログラム
可能な論理ブロックは同期的動作のために使用される。
しかしながら、各々の積項のクラスタが論理マクロセル
に関連するため、論理マクロセルは単に適切な積項を積
項のクラスタから切り離しかつその積項を所望の非同期
的機能のために使用することによって、非同期的動作の
ために個々に構成され得る。したがって、1つのPLD
は同期的および非同期的動作の両方を同時にサポートす
る。
【0034】各々のI/Oマクロセルは、出力スイッチ
マトリックスからの信号をI/Oピンに選択的に送る。
代替的には、I/Oマクロセルは出力イネーブル信号を
使用してI/Oピンが入力マクロセルへの入力信号を与
えかつ出力スイッチマトリックスがI/Oピンから切り
離されるように構成されることも可能である。I/Oピ
ン上の信号は、その源に関係なく常に入力論理マクロセ
ルに与えられる。
【0035】入力論理マクロセルは、I/Oマクロセル
からの入力信号を一時記憶された信号およびラッチ信号
のうちの1つとして構成し、組合せ信号を与える。入力
論理マクロセルからの出力信号は、入力スイッチマトリ
ックスに与えられる。
【0036】論理アロケータは多数のプログラム可能な
ルータ素子を含む。各々のルータ素子はプログラム可能
な論理アレイからの出力ラインに接続される。この出力
ラインはプログラム可能なデマルチプレクサの入力端子
を駆動する。プログラム可能なデマルチプレクサは複数
の出力ラインを有し、その各々は論理ゲートの入力ライ
ンに接続される。各々の論理ゲートの出力ラインはプロ
グラム可能な論理マクロセルのうちの1つの入力ライン
に接続される。入力選択信号に応答して、プログラム可
能なデマルチプレクサは自身を介してプログラム可能な
論理アレイの出力ライン上の信号を選択されたデマルチ
プレクサの出力ラインに通過させる。したがって、プロ
グラム可能な論理アレイからの出力ラインはどれも永久
的には論理マクロセルに結合されない。したがって、プ
ログラム可能な論理マクロセルが使用されないとき、プ
ログラム可能な論理アレイからの信号は他の論理マクロ
セルに経路指定され、そのため積項は浪費されない。
【0037】論理アロケータは可変配分でプログラム可
能な論理ブロックのすべてのマクロセルに積項の資源を
割り当てる。したがって、論理アロケータは使用されて
いないマクロセルを積項アレイから本質的に切り離し、
ある実施例においては、1つの論理マクロセルごとに2
0個までの積項を速度低下を最小限にとどめて割り当て
る。
【0038】集中スイッチマトリックスおよび入力スイ
ッチマトリックスを含むこの発明の高速スイッチマトリ
ックスは、集中スイッチマトリックスおよび入力スイッ
チマトリックスを通過するすべての信号に、固定した均
一で予測可能で経路に無関係な時間遅延を与える。さら
に、プログラム可能な論理アレイが集中スイッチマトリ
ックスからの信号だけを受けるため、集中スイッチマト
リックスはプログラム可能な論理ブロックの積項アレイ
をプログラム可能な論理マクロセルおよびアレイの大き
さから効果的に切り離す。さらに、出力スイッチマトリ
ックスはプログラム可能な論理ブロックの論理マクロセ
ルを入力/出力ピンから切り離す。したがって、出力ス
イッチマトリックスがプログラム可能な論理ブロックの
複数の論理マクロセルとある特定のI/Oピンとを選択
的に結合しかつ切り離すため、埋込論理マクロセルと出
力論理マクロセルとの間の区別はもはや重要ではない。
この発明の高速スイッチマトリックスは、接続性に制限
のある先行技術のスイッチマトリックスの利点をすべて
維持しながら同時に信号の有用性および経路指定能力を
強化する。
【0039】
【実施例の詳細な説明】この発明の原理に従って、非常
に高密度のプログラム可能な論理装置(PLD)は複数
のプログラム可能な論理ブロックを相互接続する複数の
プログラム可能なスイッチマトリックスを含む。以下に
より完全に説明するように、この複数のプログラム可能
なスイッチマトリックスは先行技術のPLDに対してプ
ログラム可能な論理ブロックの入力/出力ピンからの切
り離しを向上する。さらに、この複数のプログラム可能
なスイッチマトリックスは、PLDがより高密度に比例
縮小されるに従って真に固定した予測可能なピン間の確
定信号伝搬遅延を与える。
【0040】ある実施例において、この発明の電気的に
プログラム可能な論理装置PLD100(図1)は、プ
ログラム可能な集中スイッチマトリックス130とバン
ク120−Aないし120−Hを備えるプログラム可能
な入力スイッチマトリックス120との周りに、アレイ
好ましくは対称的なアレイで配列される好ましくは同一
の複数のプログラム可能な論理ブロック101−Aない
し101−Hを含む。プログラム可能な論理ブロック1
01−Aないし101−Hは、プログラム可能な集中ス
イッチマトリックス130(集中スイッチマトリックス
130)を介して相互接続される。プログラム可能な論
理ブロック101−Aないし101−Hは、好ましくは
集中スイッチマトリックス130と入力スイッチマトリ
ックス120との組合せによってのみ互いに交信し、か
つ好ましくはすべての入力信号を集中スイッチマトリッ
クス130から受ける。以下により完全に説明するよう
に、PLD100は8つの独立したPLDとしてまたは
代替的には1つ以上のモノリシックPLDとして機能す
ることができる。
【0041】集中スイッチマトリックス130からの入
力信号に応答してプログラム可能な論理ブロック101
−Aないし101−Hによって発生される信号は、バン
ク140−Aないし140−Hを含むプログラム可能な
出力スイッチマトリックス140に与えられる。プログ
ラム可能な論理ブロックの各々の出力ラインは、プログ
ラム可能な出力スイッチマトリックス140(出力スイ
ッチマトリックス140)に接続される。出力スイッチ
マトリックス140は、プログラム可能な論理ブロック
からの信号と複数の入力/出力セルとをプログラム可能
に接続しかつ切り離す。特定的には、出力スイッチマト
リックス140の各々のバンク140−Aないし140
−Hは複数の入力/出力(I/O)セル103−Aない
し103−Hをそれぞれ駆動する。各々のI/Oセル
は、出力スイッチマトリックス140からの信号と複数
のI/Oピン105のうちの1つのI/Oピンとを選択
的に結合しかつ切り離す。したがって、出力スイッチマ
トリックス140の出力ラインはI/Oピン105に結
合される。以下により完全に説明するように、PLD1
00の各々のI/Oピンは出力ピンのみ、入力ピンのみ
として、または入力ピンおよび出力ピンの両方として機
能し得る。
【0042】出力スイッチマトリックス140は、この
発明の主要な局面のうちの1つである。出力スイッチマ
トリックス140はプログラム可能な論理ブロック10
1−Aないし101−Hと入力/出力(I/O)ピン1
05−Aないし105−Hとをそれぞれプログラム可能
に結合しかつ切り離す。さらに、出力スイッチマトリッ
クス140の各々のバンクは、バンクを駆動するプログ
ラム可能な論理ブロックの出力信号とバンクに結合され
るI/Oピンとの間のプログラム可能な接続性を与え
る。以下により完全に説明するように、このプログラム
可能な接続性によって、先行技術のPLDのプログラム
可能な論理ブロック内の出力論理マクロセルと埋込論理
マクロセルとの間の区別がなくなる。
【0043】PLD100の各々のI/Oピンは、複数
の入力マクロセル106のうちの1つの入力マクロセル
に接続される。特定的には、複数のI/Oピン105−
Aないし105−Hの各々は複数の入力マクロセル10
6−Aないし106−Hにそれぞれ接続される。入力マ
クロセルのバンク106−Aないし106−Hの各々は
入力スイッチマトリックス120の対応のバンク120
−Aないし120−Hを駆動する。この実施例におい
て、この複数の入力マクロセル106の各々は第1の複
数のおよび第2の複数の信号を入力スイッチマトリック
ス120の対応するバンクに与える。
【0044】入力マクロセル106からのこの2つの複
数の信号に加えて、入力スイッチマトリックス120の
各々のバンクはさらにプログラム可能な論理ブロックの
出力ラインに接続される。したがって、入力スイッチマ
トリックス120の各々のバンクは、プログラム可能な
論理ブロックのすべての出力信号およびプログラム可能
な論理ブロックに関連するI/Oピン上のすべての信号
へのアクセスを有する。一般的に、入力スイッチマトリ
ックス120への入力信号のグループ全体は「フィード
バック信号」と呼ばれる。
【0045】ここで、「対応する構成要素」または「関
連する構成要素」と述べているのは、図面において参照
番号の後に同じ英数字を有する構成要素のことである。
たとえば、プログラム可能な論理ブロック101−A、
出力スイッチマトリックス140−A、I/Oセル10
3−A、I/Oピン105−A、入力マクロセル106
−Aおよび入力スイッチマトリックス120のバンク1
20−Aは、関連する構成要素である。
【0046】グローバルスイッチマトリックスを備える
先行技術のPLDでは、いくつかの論理マクロセルから
のフィードバック信号はグローバルスイッチマトリック
スの入力ラインに永久的に接続される。さらに、局所フ
ィードバック信号およびグローバルフィードバック信号
はグローバルスイッチマトリックスへの異なる経路を有
しその結果異なる遅延時間を有する。PLDのアーキテ
クチュアがより高密度に比例縮小されるに従って、これ
らの特徴はともに、PLDをプログラムするために使用
されるソフトウェアの付加的な複雑性と異なる時間遅延
とをもたらした。
【0047】入力スイッチマトリックス120はフィー
ドバック信号とグローバルスイッチマトリックス130
との固定した接続性を排除し、すべてのフィードバック
信号に対して均一な時間遅延で処理する。さらに、入力
スイッチマトリックス120は、先行技術のPLDに比
べて各々のフィードバック信号に対する信号経路指定能
力が強化される。
【0048】集中スイッチマトリックス130は、プロ
グラム可能な論理ブロック101−Aないし101−H
の各々に対する入力信号を選択するための手段である。
集中スイッチマトリックス130は、あるプログラム可
能な論理ブロックから別のプログラム可能な論理ブロッ
ク(ブロック)への信号、専用入力ピン150から1つ
のブロックまたは複数のブロックへの信号、およびブロ
ックからそのブロックに戻る信号の経路指定ができる。
集中スイッチマトリックス130を介する信号の転送は
非常に迅速であり、各々のプログラム可能な論理ブロッ
ク101に対する集中スイッチマトリックス130を介
する信号経路の柔軟性によって入力信号の多数の組合せ
が与えられ、これは以下により完全に説明される。さら
に、集中スイッチマトリックス130は、集中スイッチ
マトリックス130によって経路指定される信号のすべ
てに対して、経路に無関係であり均一で予測可能な固定
した確定時間遅延を与える。
【0049】ある実施例において、この発明の3つのス
イッチマトリックスはプログラム可能なマルチプレクサ
を使用して実現される。以下により完全に説明するよう
に、これらのスイッチマトリックスの多様な構成はプロ
グラム可能なマルチプレクサを使用すると実行可能であ
る。マルチプレクサの数と各々のマルチプレクサの大き
さとは、ダイの大きさ、シリコンの利用および速度性能
の間のトレードオフである。好ましい実施例は以下に説
明され、この議論を考慮すれば他の実施例は当業者に明
らかであろう。
【0050】この発明の重要な局面は、集中スイッチマ
トリックス130からプログラム可能な論理ブロック1
01の各々への固定数の入力ラインである。以下により
完全に説明するように、入力/出力能力が増加してもこ
の特徴によってPLD100の速度性能が維持され、こ
の特徴によって設計者は設計をこの発明のアーキテクチ
ュアを有する他の装置に移行することがよりいっそうで
きるようになる。
【0051】この発明のある実施例において、プログラ
ム可能な論理装置100は完全に対称である。PLD1
00のプログラム可能な論理ブロック101−Aないし
101−Hの各々は同一のものである。この対称性によ
って、シリコンチップ設計者によるシリコンダイの開発
とシステム設計者によるこの発明のPLDを使用するシ
ステムの設計とが簡略化される。さらに、この固有の対
称性がなければ、PLD100のためのソフトウェアツ
ールの開発はより困難となる。
【0052】PLD100は、この発明のPLDの一般
的なアーキテクチュアを例示的に示すだけのものであっ
て、この発明を示される実施例に制限するものではな
い。図1に示されるように、多数のプログラム可能な論
理ブロックはこの発明の集中スイッチマトリックスと入
力スイッチマトリックスと出力スイッチマトリックスと
を使用して相互接続され得る。
【0053】したがって、PLDのファミリーは、1
0,000強のゲートまでのゲート密度を含む論理能力
の程度を変えて、この発明のアーキテクチュアで作り出
されることができる。PLDのファミリーのPLDは、
(i)96ないし256個のマクロセル、(ii)14
4ないし384個の個々にプログラム可能に構成可能な
レジスタ/ラッチ(「レジスタ/ラッチ」は、プログラ
ム可能な素子がレジスタとラッチとのうちの1つとして
構成可能であることを意味する)、および(iii)5
44ないし1400強の積項を含む。PLDのファミリ
ーのPLDはPLCC、および48ないし128個の入
力/出力ピンを含む68ないし196強のピンを有する
微細ピッチのPQFPのパッケージに実装される。
【0054】この発明のPLDのアーキテクチュアは、
より高いゲート密度での論理能力の強化を達成する一方
で先行技術の高密度PLDに関して高速性能を維持す
る。この発明のPLDのファミリーのPLDの各々は、
PLDのピン間の実際に速く予測可能で経路に無関係の
固定した確定信号伝搬時間遅延を有する。特定的には、
ピン間の信号伝搬時間遅延は約15ないし20ナノ秒で
あり、好ましくは最も高密度のPLDに対してでも約1
5ナノ秒である。これらの速く予測可能な固定したタイ
ミングの特徴を有するので、この発明のPLDのファミ
リーは、比較可能なゲート密度を有する先行技術のフィ
ールドプログラマブルゲートアレイよりも2ないし4倍
速い。
【0055】PLDのファミリーのPLDは、0.65
ミクロンの2層金属CMOSの電気的に消去可能な技術
を使用して実現される。各々のPLDは100%テスト
可能である。好ましくは84個よりも多いピンを備える
PQFPパッケージのPLDに関しては、PLDは5ボ
ルトで回路内でプログラム可能でありIEEE114
9.1JTAGとの組込互換性を備える。1組の専用ピ
ンは回路内プログラミングとJTAG互換性との両方の
ために使用される。
【0056】この発明のPLDのための基本的な構成ブ
ロックは、図2により詳細に示されている。図2では、
PLD100(図1)の英数字「A」を含む構成要素の
ブロックが示されている。しかしながら、PLD100
の対称性とPLD100の構成要素の各々のブロックが
同一であるという事実とを考慮して、図2に示される構
成は、参照番号に同じ英数字を付したPLD100の構
成要素の各々のブロックとともにPLDのファミリーの
中の各々のPLDの各々のブロックを表わしている。
【0057】プログラム可能な論理ブロック201−A
は、プログラム可能な論理アレイ210−A、プログラ
ム可能な論理アロケータ215−Aおよび複数のプログ
ラム可能な論理マクロセルBC0ないしBC15を含
む。I/Oセル203−Aは複数のI/OセルIOC0
ないしIOC7を含み、入力マクロセル206−Aは複
数の入力マクロセルINC0ないしINC7(図示せ
ず)を含む。I/Oピン205−AはI/OピンIO0
ないしIO7を含む。
【0058】プログラム可能な論理ブロック201−A
は、集中スイッチマトリックス230から複数の入力信
号、たとえばこの実施例では33個までの入力信号を受
ける。以下により完全に説明するように、入力信号は、
(i)他のプログラム可能な論理ブロックからの信号、
(ii)I/Oピン205−Aからの信号、(iii)
論理マクロセルBC0ないしBC15からのフィードバ
ック信号または(iv)専用入力ピン250からの直接
の入力信号から選択され得る。したがって、プログラム
可能な論理ブロック201−Aは4つの異なる入力信号
源を有し、4つの源の各々は複数の信号を与える。集中
スイッチマトリックス230、およびプログラム可能な
論理ブロック201−Aに利用可能な各々の信号源から
の特定の信号の構成は以下により完全に説明される。
【0059】ある実施例において、プログラム可能な論
理アレイ210−Aは、プログラム可能なAND固定O
R論理アレイ(AND/ORアレイ)すなわちPAL構
造である。ここではPAL構造210−AはAND/O
Rアレイとして説明しているが、AND/ORアレイ
は、ある実施例においては、機能上はここに説明するA
ND/ORアレイと等しいNAND.NANDアレイを
備えるNOR.NOR論理として実現される。したがっ
て、AND/ORアレイ論理の使用は例示的に示すため
だけのものであって、この発明の範囲を制限するもので
はない。
【0060】集中スイッチマトリックス230からのプ
ログラム可能な論理ブロックの入力ライン211−A
は、入力信号をPAL構造210−Aのプログラム可能
なANDアレイに与える。より重要なことには、PAL
構造210−Aは、好ましくはそのすべての入力信号を
集中スイッチマトリックス230からのみ受ける。結果
的に、I/Oピン、フィードバックラインまたは専用入
力ラインの数が変化しても、PAL構造210−Aは影
響を受けない。固定数の入力ラインで固定したPAL構
造を維持することは、PLDの密度が増加するときにP
LDの速度性能を維持する助けとなる。
【0061】ある実施例において、各々の入力信号およ
びその補数はプログラム可能なANDアレイに与えら
れ、そのためプログラム可能なANDアレイは66本の
入力ラインを有する。PAL構造210−Aのプログラ
ム可能なANDアレイはこの実施例では合計90個の積
項を有する。制御機能と論理機能との間の積項の配分
は、PLDの実施例によって変わる。
【0062】あるPLDでは、80個の積項が論理機能
に利用可能であり、10個の積項が専用制御積項であ
る。80個の論理積項は5つの積項のクラスタに分けら
れ、その積項のうちの4つはクラスタに固定して利用可
能であり、1つの積項はクラスタにプログラム可能に利
用可能である。この実施例において、以下により完全に
説明するように、プログラム可能に利用可能な積項はマ
クロセル信号極性制御または論理制御に使用され得る。
5つの積項の各々のクラスタは、PAL構造210−A
の固定ORゲートアレイの1つのORゲートを駆動す
る。ORゲートからの積項の和は、この実施例では論理
アロケータ215−Aの16本の入力ライン212−A
の1つの入力ラインを駆動する。
【0063】多数の制御積項は第1の複数の出力イネー
ブル制御積項および第2の複数の非同期制御積項を含
む。ある実施例において、以下により完全に説明するよ
うに、非同期リセットおよび非同期プリセットのための
この複数の積項は、論理マクロセルBC0ないしBC1
5に与えられる。非同期リセットおよびプリセット積項
は、それらが接続される論理マクロセルのプログラム可
能な記憶素子を初期化するために使用される。
【0064】別のPLDでは、80個の積項は論理機能
のために利用可能であり、10個の積項は専用制御積項
である。この実施例において、以下により完全に説明す
るように、80個の積項の配分は、論理が同期的である
かまたは非同期的であるかに依存する。80個の論理積
項は5つの積項の16個のクラスタに分けられ、各々の
クラスタの積項のうちの2つはクラスタに固定して利用
可能であり、各々のクラスタの3つの積項はクラスタに
プログラム可能に利用可能である。3つのプログラム可
能に利用可能な積項のうちの1つはマクロセル信号極性
制御または論理制御に使用され得る。他の2つのプログ
ラム可能に利用可能な積項は、マクロセルに対する個々
の非同期リセット/プリセットおよびマクロセルに対す
る個々のクロックまたは論理に使用され得る。各々の積
項のクラスタはPAL構造210−Aの固定ORゲート
アレイの1つのORゲートを駆動する。ORゲートから
の積項の和は、この実施例では論理アロケータ215−
Aの16本の入力ライン212−Aの1つの入力ライン
を駆動する。
【0065】多数の制御積項は、第1の複数の出力イネ
ーブル制御積項および第2の複数の非同期制御積項を含
む。この実施例において、プログラム可能に利用可能な
個々の非同期制御積項に関する非同期制御積項の構成
は、以下により完全に説明される。
【0066】この発明の各々の実施例において、制御積
項の多数の出力イネーブル積項はI/Oマクロセル20
3−Aに接続される。出力イネーブル制御積項の構成お
よび使用法は以下により完全に説明される。
【0067】論理アロケータ215−Aはプログラム可
能であり、そのためPAL構造210−Aからの積項
は、この発明のPLDのユーザによる要求に応じて論理
マクロセルBC0ないしBC15に分配される。以下に
より完全に説明するように、この発明の論理アロケータ
215−Aは多数のルータ素子を含み、各々のルータ素
子はPAL構造210−Aからの選択された数の積項の
和の合計をプログラム可能に選択された論理マクロセル
に振り分ける。ある実施例において、ルータ素子からの
マクロセルに利用可能な積項の数は0から20の範囲で
ある。典型的には、利用可能な積項の数は各々の論理マ
クロセルに対して同じではない。
【0068】ルータ素子ごとの積項の数は、非常に多く
の方法で選択され得る。この実施例では、選択された積
項の数は好ましくは4または5個であり、各々の論理マ
クロセルに対して論理アロケータ230に1つのルータ
素子がある。しかしながら、どのルータ素子も論理マク
ロセルに永久的には接続されない。論理アロケータ21
5−AはPAL構造210−Aと論理マクロセルBC0
ないしBC15とをプログラム可能に結合しかつ切り離
す。
【0069】以下により完全に説明するように、論理マ
クロセルBC0ないしBC15は論理アロケータ215
−Aからの信号を形成する。各々の論理マクロセルは出
力信号を出力スイッチマトリックスバンク240−Aに
与え、かつフィードバック信号を入力スイッチマトリッ
クスバンク220−Aに与える。したがって、この実施
例では、各々の論理マクロセルがフィードバック論理機
能に利用可能でありかつ各々の論理マクロセルが出力ス
イッチマトリックスバンク240−Aを介してI/Oピ
ンに接続されることができるため、論理マクロセルBC
0ないしBC15は事実上同時に埋込および出力論理マ
クロセルである。各々の論理マクロセルは、出力スイッ
チマトリックスバンク240−Aの入力ラインを駆動す
る。
【0070】この発明の原理に従って、論理マクロセル
BC0ないしBC15は入力スイッチマトリックスバン
ク220−Aによって集中スイッチマトリックス230
から切り離され、かつ論理アロケータ215によってP
AL構造210から切り離される。PLDの論理マクロ
セルの総数が増加しても、プログラム可能な論理ブロッ
ク構造および集中スイッチマトリックス230はそれに
比例しては影響を受けない。したがって、先行技術の装
置とは違ってこの発明のPLD構造210−Aは、プロ
グラム可能な論理マクロセルの密度が増加しても速度性
能を低下しない。
【0071】実際に、プログラム可能な論理マクロセル
の密度が増加すると、出力スイッチマトリックスバンク
240−A、入力スイッチマトリックスバンク220−
Aおよび集中スイッチマトリックス230が固定した既
知の遅延を与えるためピン間の信号伝搬遅延時間はほぼ
一定に留まり、かつPAL構造への入力ラインの数は維
持される。したがって、PLDのピン間の時間遅延は相
対的に一定に留まる。したがって、この発明の1つのP
LDで実現される設計は、より多くの論理マクロセル能
力を有するより高密度のPLDで潜在的に比例縮小可能
である。
【0072】プログラム可能な論理マクロセルBC0な
いしBC15の出力ラインA0ないしA15はそれぞ
れ、出力スイッチマトリックスバンク240−Aおよび
入力スイッチマトリックスバンク220−Aを駆動す
る。出力スイッチマトリックスバンク240−Aは、論
理マクロセルBC0ないしBC15をI/Oピン205
−Aから効果的に切り離す。さらに、出力スイッチマト
リックスバンク240−Aは特定のプログラム可能な論
理マクロセルからの出力信号を特定のI/Oピンにプロ
グラム可能に振り分ける。この能力によって、付加的な
積項を加えずにプログラム可能な論理ブロック201−
Aの対称性が高められる。
【0073】特定的には、論理アロケータ215−Aは
完全なラップアラウンドをサポートしない。完全なラッ
プアラウンドをサポートしない論理アロケータを備える
先行技術のPLDでは、いくつかの論理マクロセルは他
の論理マクロセルよりも少ない数の積項にアクセスを有
した。たとえば1991年5月14日発行の「マルチア
レイの高性能のプログラム可能な論理装置のファミリー
(Multiple Array High Performance Programmable Log
ic Device Family) 」と題されたオム・ピィ・アグラワ
ル (Om P. Agrawal)他による米国特許番号第5,01
5,884号を参照されたい。これはそのままを引用に
よりここに援用しており、より詳細な議論は以下に示
す。これらの先行技術のPLDでは、これは幾つかのI
/Oピンは他のI/Oピンに対する固定した範囲の論理
能力とは異なる固定した範囲の論理能力を有することを
意味した。
【0074】しかしながら、この発明のPLDでは、出
力スイッチマトリックスバンク240−Aはプログラム
可能な論理マクロセルBC0ないしBC15からの信号
をI/Oピン205−Aに振り分け、そのため1つのグ
ループのI/Oピン205−Aは、より低い論理能力を
有する論理マクロセルとI/Oピンとの関係にかかわら
ず同じ論理能力を有するように構成され得る。したがっ
て、どのI/Oピンも固定した論理能力を有さないた
め、ユーザの用途に対してPLDは先行技術のPLDよ
りもよい対称性を有するようである。
【0075】ある実施例において、出力スイッチマトリ
ックスバンク240−Aは複数のプログラム可能なマル
チプレクサたとえば図2に示されるプログラム可能な
8:1マルチプレクサを含み、各々のプログラム可能な
マルチプレクサは出力スイッチマトリックスバンク24
0−Aのサブバンクである。したがって、この実施例で
は、8つのプログラム可能な論理マクロセルのうちのい
ずれの1つの出力信号もI/Oセルにプログラム可能に
接続され得る。結果的に、出力スイッチマトリックス2
40−Aは各々のプログラム論理ブロックの出力信号と
I/Oピンとをプログラム可能に接続しかつ切り離す。
したがって、この実施例では、出力スイッチマトリック
スバンク240−Aは論理マクロセルBC0ないしBC
15から16個の入力信号を受け、かつ8つの出力信号
をI/OピンIO0ないしIO7に与える。この発明の
原理に従って、出力スイッチマトリックスバンク240
−Aは、各々の入力信号に対して出力スイッチマトリッ
クスバンクを介する少なくとも3つの異なる経路、好ま
しくは4つの異なる経路を与える。特定的には、プログ
ラム可能な8:1マルチプレクサに対して、各々の信号
は出力スイッチマトリックスバンク240−Aへの4つ
の入力経路を有する。
【0076】I/Oセル203−Aは、出力スイッチマ
トリックスバンク240−Aからの出力信号をI/Oピ
ン205−Aに選択的に送る。入力マクロセル206−
Aは、ライン224−A上に信号を与える前にI/Oピ
ン205−Aから入力スイッチマトリックスバンク22
0−Aへの信号を構成する。この実施例において、各々
の入力マクロセルは、一時記憶された信号およびラッチ
信号のうちの1つを入力スイッチマトリックスバンク2
20−Aに与える。I/Oピン205−A上の信号も入
力スイッチマトリックスバンク220−Aに直接経路指
定される。
【0077】入力スイッチマトリックスバンク220−
Aは、論理マクロセルBC0ないしBC15からの16
個の信号、入力マクロセル206−Aからの8つの信号
およびI/Oピン205−Aからの8つの信号を受け
る。この実施例において、入力スイッチマトリックスバ
ンク220−Aは、32個の入力信号から24個の入力
信号を集中スイッチマトリックス230に与える。その
ため、この発明の原理に従って入力スイッチマトリック
スバンク220−Aは各々の入力信号に対して入力スイ
ッチマトリックスバンク220−Aを通過する少なくと
も3つの異なる機会を与える。ある実施例において、入
力スイッチマトリックスバンク220−Aは24個のプ
ログラム可能な4:1マルチプレクサを含む。
((((4本の入力ライン/マルチプレクサ)×24個
のマルチプレクサ)/(32個の入力信号))=3本の
入力ライン/入力信号)。したがって、この実施例で
は、各々の入力信号は入力スイッチマトリックスバンク
220−Aを通る3つの機会だけではなく、3つの経路
を有する。
【0078】他の実施例では、以下により完全に説明す
るように、入力スイッチマトリックスバンク220−A
は24個のプログラム可能な2:1マルチプレクサを含
む。この実施例では、各々の入力信号は入力スイッチマ
トリックスバンク220−Aを通過する3つの機会を有
する。
【0079】入力スイッチマトリックスバンク220−
Aは、すべてのフィードバック信号に集中スイッチマト
リックス230−Aに到達する等しい数の機会を与え
る。したがって、フィードバック信号が集中スイッチマ
トリックス230に到達する等しい数の多数の機会を有
するという点で、すべてのフィードバック信号は均一に
処理される。さらに、すべてのフィードバック信号は、
入力スイッチマトリックスバンク220−Aを介して経
路に無関係の同一の固定した時間遅延を有する。入力ス
イッチマトリックスバンク220−Aは、すべてのフィ
ードバック信号に対して集中スイッチマトリックス23
0に入る等しい数の多数の機会を与えることによってP
LDの論理の利用度を増加する。さらに、先行技術の集
中スイッチマトリックスへの固定した接続性では、信号
の中には集中スイッチマトリックスに入る機会が1つし
かないものもあったため、集中スイッチマトリックスを
1つしか備えない先行技術のPLDに対して信号経路指
定能力が向上される。PLDアーキテクチュアがより高
密度に比例縮小されるに従って、信号経路指定能力は特
に重要となる。
【0080】論理アロケータ この実施例において、論理アロケータ215−Aは16
個のルータ素子316(図3)を含む。各々のルータ素
子316は、1つの入力端子と4つの出力端子を有する
プログラム可能な1対4のデマルチプレクサ322を含
む。アーキテクチュア上の構成セル323および324
は、この入力端子と4つの出力端子のうちの1つだけと
の間の接続を形成するために使用される。ここに説明す
るルータ素子の構成は、その各々が選択されたマクロセ
ルに固定数の積項を振り分ける複数のルータ素子を例示
的に示すだけのものであって、この発明を説明した特定
の構成に制限するものではない。
【0081】デマルチプレクサ322の入力端子および
入力信号を受ける出力端子から通過する信号は、アーキ
テクチュア上のセル323および324の構成によって
決定される。したがって、プログラム可能なルータ素子
は、入力選択信号に応答して、選択された信号を自身を
介して出力端子に通過させる。入力選択信号の可能な値
はアーキテクチュア上のセル323および324によっ
て決定され、ここで、n=0,1,...,15であ
る。アーキテクチュア上のセル323および324のあ
る1つの可能な構成に対するデマルチプレクサ322の
構成は、表1に与えられる。もちろん、図3では、nの
値が使用され括弧の中の数字が負であるとき、デマルチ
プレクサ322のその出力端子には接続されない。表1
のアーキテクチュア上のセルの値は例示的に示すだけの
ものであって、この発明を示された特定の値に制限する
ものではない。
【0082】
【表1】
【0083】表1では、ゼロは論理ゼロに対応しかつプ
ログラムされた状態に相当し、1は論理1に対応しかつ
プログラムされていないまたは消去状態に相当する。
【0084】論理アロケータ215−A(図2)の第1
のルータ素子416(図4)は、論理マクロセルBC0
(図2)または論理マクロセルBC1に信号を与え得
る。第2のルータ素子516(図5)は、論理マクロセ
ルBC0(図2)、論理マクロセルBC1または論理マ
クロセルBC2に信号を与え得る。論理アロケータ21
5−Aの第16のルータ素子616(図6)は、論理マ
クロセルBC13(図2)、論理マクロセルBC14ま
たは論理マクロセルBC15に信号を与え得る。この実
施例では、ルータ素子からの出力ラインは論理ゲート、
たとえばOR論理ゲートへの入力ラインであり、かつ論
理ゲートの出力ラインは特定された論理マクロセルへの
入力ライン、たとえばこの実施例ではXORゲートへの
入力ラインである。典型的なルータ素子および論理ゲー
トの例については図9ないし図12を参照されたい。
【0085】論理アロケータ215−A(図2)の他の
13個の各々のルータ素子716(図7)は、4つの論
理マクロセルのうちの1つに信号を与え得る。デマルチ
プレクサ716からの4つの出力ラインは、マクロセル
BC(n−2)、BC(n−1)、BCnおよびBC
(n+1)へのラインとして与えられ、ここで、n=
2,4,...,14である。ここで、nは論理アロケ
ータ215−A内のルータ素子の列のルータ素子716
の位置を表わす。括弧は便宜上だけのものであって、
「n」が選択されると外されるべきである。
【0086】したがって、この実施例において論理マク
ロセルBC0およびBC14は、最大で合計15個の積
項まで受けることができ、一方論理マクロセルBC15
は最大で合計10個の積項まで受けることができる。こ
の実施例において、プログラム可能な論理ブロック20
1−Aの端での完全なラップアラウンドはサポートされ
ない。
【0087】論理アロケータ215−Aの動作は図8に
示される。その各々が数字「5」を含む図の左側のPA
L構造210−AのボックスL0ないしL15は、積項
群の合計を表わしており、その各々は5つの積項を有す
る。図8の右側にはボックスBC0ないしBC15があ
り、各々のボックスは論理マクロセルBC0ないしBC
15(図2)のうちの1つをそれぞれ表わす。ボックス
BC0ないしBC15の中の数は、論理アロケータ21
5−Aがその論理マクロセルに経路指定できる積項の最
大数である。論理アロケータ215−A内の数は、図の
左側の数字を付けた積項を表わす。したがって、図8は
この発明の論理アロケータ215−Aの積項操作能力を
明確に示している。
【0088】どの積項も論理アロケータ215−Aによ
って特定の論理マクロセルに永久的には割り当てられな
いということに注目することが重要である。したがっ
て、この実施例では、論理マクロセルが利用されないと
きその論理マクロセルに関連する積項は浪費されない。
【0089】他の実施例では、PAL構造210は上述
のものに対して付加的な15個の積項を含む。これらの
付加的な積項によって完全なラップアラウンドエミュレ
ーションが与えられ、そのためこの実施例では、論理ア
ロケータは各々の論理マクロセルに積項を20個まで与
える。
【0090】この発明のPLDアーキテクチュアには、
2つの基本的なタイプのマクロセル(i)論理マクロセ
ル、および(ii)入力マクロセルがある。しかしなが
ら、論理マクロセルの構成と機能とは、PLDの特定の
実施例に依存する。上述のように、ある実施例におい
て、プログラム可能な論理アレイは5つの積項のクラス
タを有し、その積項のうちの1つがクラスタにプログラ
ム可能に利用可能であり、他の実施例では、プログラム
可能な論理アレイは5つの積項のクラスタを有しその積
項のうちの3つがクラスタにプログラム可能に利用可能
である。したがって、以下の説明では、プログラム可能
な論理アレイの様々な特徴は論理マクロセルの説明に含
まれ、したがって論理マクロセルは第1および第2の実
施例に分けられる。その両方の実施例において、類似し
た構成要素が論理マクロセルに含まれるが、その構成要
素は異なる方法で構成されることに注目するべきであ
る。
【0091】論理マクロセルの第1の実施例 この実施例では、各々のプログラム可能な論理ブロック
は、5つの積項の16個のクラスタに分けられる80個
の論理積項を有する。各々の5つの積項のクラスタにお
いて、1つの積項はクラスタにプログラム可能に利用可
能であり、かつ他の4つの積項はクラスタに固定され
る。図9は、この実施例においてプログラム可能な論理
ブロックを構成するために使用されるプログラム可能な
論理ブロックセル900Aの概念的な概略図である。セ
ル900Aの各々はプログラム可能な論理アレイの積項
の16個のクラスタのうちの1つ910A、論理アロケ
ータのルータ素子915および論理マクロセル945A
を含む。それに加えて、セル900Aの各々は、プログ
ラム可能な論理ブロックの16個の論理マクロセルすな
わち複数のプログラム可能な論理マクロセルに共通であ
りかつ非同期プリセットおよびリセットのために使用さ
れる2つの制御積項990および991へのアクセスを
有し、これは以下により完全に説明される。論理マクロ
セル945Aはプログラム可能な一時記憶、組合せ、ま
たはラッチ能力を有する。もし論理マクロセル945A
がレジスタとしてプログラム可能に構成されれば、マク
ロセル記憶素子はエッジトリガD型フリップフロップお
よびT型フリップフロップのうちの1つとして構成され
る。各々の論理マクロセル945Aは、個々にプログラ
ム可能な出力信号の極性を有する。論理マクロセルの出
力信号「An」は、入力スイッチマトリックスバンク2
20−Aおよび出力スイッチマトリックスバンク240
−Aに常に利用可能である。
【0092】図9の実施例に示されるように、積項93
8は第1のプログラム可能な接続936およびプログラ
ム可能な極性素子937を駆動する。プログラム可能な
接続936は積項938とORゲート911とをプログ
ラム可能に接続しかつ切り離す。したがって、上述のよ
うに、ORゲート911を駆動する積項のクラスタは、
4つの固定積項およびクラスタにプログラム可能に利用
可能である5番目の積項である。
【0093】プログラム可能な接続936はさらに積項
938とプログラム可能な極性制御素子937とをプロ
グラム可能に接続しかつ切り離す。積項938がプログ
ラム可能な接続936によってプログラム可能な極性制
御素子937に振り分けられるとき、アーキテクチュア
上のセルは、素子937が積項938の論理レベルをラ
イン935に通過させるかまたは積項938の論理レベ
ルの補数をライン935に通過させるように、プログラ
ム可能な極性制御素子937を構成するために使用され
る。したがって、プログラム可能な極性制御素子937
は、積項938を所望の極性すなわちアクティブハイま
たはアクティブローにプログラム可能に構成する。
【0094】積項938がORゲート911に振り分け
られるとき、極性制御素子937は、ライン935上の
論理1信号または論理ゼロ信号を排他的ORゲート93
4に与えるようにアーキテクチュア上のセルによって構
成される。
【0095】ライン935上の信号は、排他的OR(X
OR)ゲート934の第1の入力端子を駆動する。論理
アロケータ915のORゲート933からの出力ライン
932は、XORゲート934の第2の入力端子に接続
される。さらにXORゲート934は極性制御手段であ
る。もしライン935上の信号が第1の論理値を有せ
ば、XORゲート934の出力信号はアクティブハイで
あり、その反対にもしライン935上の信号が第2の論
理値を有せば、XORゲート934の出力信号はアクテ
ィブローである。
【0096】別の実施例では(図示せず)、反転および
非反転入力端子を備える2:1のプログラム可能なマル
チプレクサは、以下に説明するプログラム可能な論理素
子の出力ラインに接続される。プログラム可能なマルチ
プレクサは論理マクロセルの出力信号の極性を決定す
る。XORゲートまたはプログラム可能なマルチプレク
サを極性制御手段として選択する際のトレードオフは、
マルチプレクサとアーキテクチュア上のセルとに必要な
シリコンおよびマルチプレクサの固有の時間遅延か、付
加的な積項とXORゲートとに必要な付加的なシリコン
およびより大きい積項アレイに関する付加的な時間遅延
かである。重要な局面は、論理マクロセル945が論理
信号の極性を制御するための手段を含むことである。
【0097】XORゲート934の出力信号は、プログ
ラム可能な論理素子946の入力端子D/T/L/Cを
駆動する。プログラム可能な論理素子946の出力端子
Qは、入力スイッチマトリックスバンク220−A(図
2)および出力スイッチマトリックスバンク240−A
に直接接続される。
【0098】第1の積項ライン990は、ORゲート9
31の第1の入力端子に接続される。ORゲート931
の第2の入力端子は、パワーアップリセット信号によっ
て駆動される。ORゲート931の出力信号は、プログ
ラム可能な信号コネクタ949の第1の入力端子に接続
される。第2の積項ライン991は、プログラム可能な
信号コネクタ949の第2の入力端子に接続される。非
同期プリセットラインは、プログラム可能な信号コネク
タ949の非同期プリセット出力端子をプログラム可能
な論理素子946の非同期プリセット端子APに接続す
る。非同期リセットラインは、プログラム可能な信号コ
ネクタ949の非同期リセット出力端子をプログラム可
能な論理素子946の非同期リセット端子ARに接続す
る。
【0099】
【表2】
【0100】プログラム可能な信号コネクタ949によ
る積項990および991と、非同期プリセット端子A
Pおよび非同期リセット端子ARとの結合は、アーキテ
クチュア上のセル939によって決定される。表2は、
セル939の特定の状態に対するプログラム可能な信号
コネクタ949の構成の1つの実施例を示している。
【0101】この実施例において、プログラム可能な論
理ブロック201−Aの論理マクロセルBC0ないしB
C15(図2)はすべて積項990および991を共有
する。しかしながら、アーキテクチュア上のセル939
によって各々の論理マクロセル945Aが積項990お
よび991の機能を交換することが可能となる。したが
って、プログラム可能な論理ブロック内で、各々の論理
マクロセル945Aは、ユーザの要求に応じて、積項9
90および991から選択された特定の制御積項によっ
て構成されることができる。この柔軟性によって、ユー
ザは多くの異なる方法で16個の論理マクロセルBC0
ないしBC15を構成して論理マクロセルの非同期プリ
セットおよびリセットを利用することができる。
【0102】アーキテクチュア上のセル947および9
48はプログラム可能な論理素子946を構成するため
に使用され、そのためプログラム可能な論理素子946
の出力端子Q上の信号は(i)D型フリップフロップの
出力信号、(ii)T型フリップフロップの出力信号、
(iii)ラッチ出力信号および(iv)組合せ出力信
号のうちの1つである。表3は、アーキテクチュア上の
セル947および948のプログラミング、ならびにプ
ログラム可能な論理素子946の対応する機能の1つの
実施例を示している。表3において、ゼロは論理ゼロに
対応しかつプログラムされた状態に相当し、1は論理1
に対応しかつプログラムされていないまたは消去状態に
相当する。もちろん、当業者に既知のように、この発明
の原理によるこの発明の高性能で高密度なプログラム可
能な論理構造のファミリーの別の実施例を規定するため
に、プログラムされた状態およびプログラムされていな
い状態を別に定義してもよい。
【0103】
【表3】
【0104】上述のおよび以下の議論において、説明を
簡略化するためにプログラム可能なアーキテクチュア上
のセルのみを説明する。これらの応用におけるセルは、
この発明に従ったヒューズ、EPROMセル、EEPR
OMセル、RAMセル、またはCMOSアンチヒューズ
技術であってもよい。アーキテクチュア上のセルは、入
力選択信号または出力選択信号をプログラム可能な構成
要素に与えるための手段であり、そのため構成要素はそ
こに所望の信号を通過させるか、またはその代わりにプ
ログラム可能な論理素子946に関して上で説明したよ
うな、構成要素のグループのうちの特定の構成要素とし
て機能する。
【0105】この実施例において、プログラム可能な論
理素子946がラッチとして構成されるとき、ラッチは
入力端子D/T/L/C、出力端子Q、ラッチイネーブ
ル端子CLK/LE、非同期プリセット端子APおよび
非同期リセット端子ARを有する。このラッチはトラン
スペアレントラッチである。ラッチイネーブル端子CL
K/LE上の信号がハイであるとき、ラッチはトランス
ペアレントモードであり、かつ出力端子Q上の信号は入
力端子D/T/L/C上の信号に応答する。ラッチイネ
ーブルCLK/LE端子上の信号がローであるとき、出
力信号は入力端子に設定されたデータを保持するために
ラッチされる。プリセット端子APおよびリセット端子
AR上の信号は、いずれかの信号がラッチイネーブル端
子CLK/LE上のロー信号とともにアクティブである
とき、優勢となる。ラッチイネーブルCLK/LE、プ
リセットAPおよびリセットAR端子上の信号の他の組
合せに関する他の動作モードは、「他の状態」または
「違法状態」と定義される。
【0106】
【表4】
【0107】表4の特定のビットシーケンスはこの発明
の1つの実施例を例示的に示すためだけのものであっ
て、この発明を開示する特定の実施例に制限するもので
はない。この開示を考慮すれば、当業者はプログラミン
グビットの様々な異なる値を使用してこの発明のプログ
ラム可能な特徴を構成することができるであろう。
【0108】2つのアーキテクチュア上のセル941お
よび942を備えるプログラム可能な4対1マルチプレ
クサ943Aの出力端子は、プログラム可能な論理素子
946のクロック/ラッチイネーブル端子CLK/LE
に接続される。1つの実施例において、この発明のPL
Dは、専用入力信号のためのピン、クロック/ラッチイ
ネーブル信号のためのピン、または入力信号およびクロ
ック/ラッチイネーブル信号のためのピンとして使用さ
れ得る4つの専用入力ピンを含む。これらの4つの専用
入力ピンCK0/LE0/I0、CK1/LE1/I
1、CK2/LE2/I2およびCK3/LE3/I3
からの信号は、プログラム可能な4対1マルチプレクサ
943Aへの入力信号である。
【0109】各々の論理マクロセル945Aは、プログ
ラム可能な4対1マルチプレクサ943Aからの信号に
よって個々のマクロセルごとにクロック/ラッチされ
る。この個々のクロック/ラッチ能動化によって、ユー
ザは単一のPLDで多数の柔軟なステートマシンを実現
することができる。さらに、グローバルクロック/ラッ
チイネーブル入力ピンのいずれがクロック/ラッチイネ
ーブル信号源として使用されても、ピンは入力ピンとし
てスイッチマトリックスになお利用可能である。
【0110】プログラム可能な4対1マルチプレクサ9
43Aを介してプログラム可能な論理素子946に通過
する信号は、アーキテクチュア上のセル941および9
42によって決定される。表5は、アーキテクチュア上
のセル941および942のプログラミング、およびプ
ログラム可能な4対1マルチプレクサ943Aを介して
プログラム可能な論理素子946の端子CLK/LEに
通過する対応の入力信号の1つの実施例を示している。
表5および以下の表の各々において、ゼロは論理ゼロに
対応しかつプログラムされた状態に相当し、1は論理1
に対応しかつプログラムされていないまたは消去状態に
相当する。もちろん、当業者に既知のように、この発明
の原理によるこの発明の高性能で高密度なプログラム可
能な論理構造のファミリーの別の実施例を規定するため
に、プログラムされたおよびプログラムされていない状
態を別に定義してもよい。
【0111】
【表5】
【0112】各々のレジスタに対して4つのクロック源
を備えるこの発明の各々のプログラム可能な論理ブロッ
ク201−A(図2)の論理マクロセルBC0ないしB
C15に利用可能である多数のレジスタによって、シス
テムの設計者は単一のPLDで複数の柔軟なステートマ
シンを実現することができる。
【0113】したがって、この発明に従って、論理マク
ロセル945Aは、出力信号が一時記憶、ラッチ、もし
くはアクティブハイまたはアクティブローの極性との組
合せのいずれかであるように構成され得る。論理マクロ
セルがレジスタとして使用されるとき、論理マクロセル
はさらにD型またはT型フリップフロップとして構成さ
れることができる。組込のT型フリップフロップの能力
に加えてプログラム可能な極性によって、幾つかの論理
機能を実現するのに必要な積項の数は最小限にとどめら
れる。
【0114】各々の論理マクロセル945Aはライン
「An」上の出力信号を出力スイッチマトリックスバン
ク240−Aに与え、さらにその出力信号を入力スイッ
チマトリックスバンク220−Aに送る。フィードバッ
ク信号は一時記憶、ラッチまたは組合せ信号に与えら
れ、出力スイッチマトリックスバンク240−Aの構成
にかかわらず常に利用可能であり、これは以下により完
全に説明される。フィードバック信号が一時記憶、ラッ
チまたは組合せのいずれでもあり得るため、フィードバ
ック信号は埋込順序付けまたは組合せ機能を可能にす
る。
【0115】さらに他の実施例では(図示せず)、プロ
グラム可能な論理素子946は、T型フリップフロッ
プ、D型フリップフロップ、J−Kフリップフロップ、
SRフリップフロップ、トランスペアレントラッチおよ
び組合せ信号経路のうちの1つとして機能するプログラ
ム可能な論理素子と置換えられる。この実施例ではプロ
グラム可能な論理素子が6つのモードのうちの1つで機
能するため、プログラム可能な論理素子に対して3つの
アーキテクチュア上のセルが必要とされる。さらに、J
−KフリップフロップまたはSRフリップフロップの機
能をサポートするために、付加的な1つまたは複数の入
力ラインが必要とされるかもしれない。この実施例で
は、プログラム可能な接続937によって制御される積
項を、J−KフリップフロップまたはSRフリップフロ
ップのエミュレーションのために使用することができ
る。
【0116】論理マクロセルの第2の実施例 この実施例では、各々のプログラム可能な論理ブロック
は、5つの積項の16個のクラスタに分けられる80個
の論理積項を有する。各々の5つの積項のクラスタにお
いて、3つの積項938、992および993(図1
0)はクラスタにプログラム可能に利用可能であり、他
の2つの積項はクラスタに固定される。図10は、この
実施例でプログラム可能な論理ブロックを構成するため
に使用されるプログラム可能な論理ブロックセル900
Bの概念的な概略図である。各々のセル900Bは、プ
ログラム可能な論理アレイの積項の16個のクラスタ9
10Bのうちの1つ、論理アロケータのルータ素子91
5、および論理マクロセル945Bを含む。論理マクロ
セル945Bは、プログラム可能な一時記憶、組合せま
たはラッチ能力を有する。もし論理マクロセル945B
がレジスタとしてプログラム可能に構成されれば、マク
ロセル記憶素子はエッジトリガD型フリップフロップお
よびT型フリップフロップのうちの1つとして構成され
る。各々の論理マクロセル945Bは、個々にプログラ
ム可能な出力信号の極性を有する。論理マクロセルの出
力信号「An」は、入力スイッチマトリックスバンク2
20−Aおよび出力スイッチマトリックスバンク240
−Aに常に利用可能である。
【0117】図10の実施例に示されるように、積項9
38はプログラム可能な接続936およびプログラム可
能な極性制御素子937を駆動する。プログラム可能な
接続936は、積項938とORゲート911とをプロ
グラム可能に接続しかつ切り離す。アーキテクチュア上
のセルはプログラム可能な接続936を構成するために
使用される。プログラム可能な接続912は、(i)第
1の積項993と、論理マクロセル945Bのクロック
マルチプレクサ943BおよびORゲート911とを、
ならびに(ii)第2の積項992と、論理マクロセル
945Bのプログラム可能な非同期信号源セレクタ95
0の入力端子およびORゲート911とを、プログラム
可能に接続しかつ切り離す。アーキテクチュア上のセル
914は、プログラム可能な接続912を構成し、かつ
アーキテクチュア制御信号をクロックマルチプレクサ9
43Bおよびプログラム可能な非同期信号源セレクタ9
50に与える。
【0118】したがって、上述のように、ORゲート9
11を駆動する積項のクラスタは、2つの固定積項なら
びにクラスタにプログラム可能に利用可能な3つの積項
938、992および993を含む。
【0119】プログラム可能な非同期信号源セレクタ9
50およびクロックマルチプレクサ943Bに加えてプ
ログラム可能な接続912は、高密度の同期/非同期P
LDの重要な進歩を表わすものであり、これらについて
は以下により完全に説明する。この発明のセル900B
で、1つのPLDが作られ、かつユーザは特定のクラス
タのためのプログラム可能な接続912を構成すること
によって非同期または同期動作のために積項の各々のク
ラスタおよび結果的にPLDの各々のプログラム可能な
ブロックの各々の論理マクロセルを構成する。したがっ
て、1つのPLDはユーザが利用できるレジスタの数を
減らさずに同期および非同期動作をサポートする。さら
に、積項を振り分けるためにはプログラム可能な接続の
みが必要とされるため、1つのPLDで同期および非同
期動作をサポートすることによってユーザが理解できな
いほどのかなりの複雑性はもたらされない。
【0120】この実施例において、1つのプログラム可
能なアーキテクチュアセル914は非同期機能のための
積項のクラスタの非同期積項992および993を構成
するために使用される。しかしながら、他の実施例で
は、非同期積項992および993が個々に振り分けで
きるように第2のアーキテクチュアセルが使用される。
個々の積項を振り分けるために個々のアーキテクチュア
セルを使用する主な利点は、積項の浪費の可能性を最小
限にすることである。この実施例のプログラム可能な極
性制御素子937は上述のセル900Aのプログラム可
能な極性制御素子937と同一であり、その説明はここ
に引用により援用される。ここでも、ライン935上の
信号はXORゲート934の第1の入力端子を駆動す
る。論理アロケータ915のORゲート933からの出
力ライン932は、XORゲート934の第2の入力端
子に接続される。XORゲート934は極性制御手段で
ある。XORゲート934の動作は、セル900Aに対
して上で説明したものと同一であり、その説明は引用に
よりここに援用される。
【0121】XORゲート934の出力信号は、プログ
ラム可能な論理素子946の入力端子D/T/L/Cを
駆動する。プログラム可能な論理素子946の出力端子
Qは入力スイッチマトリックスバンク220−Aおよび
出力スイッチマトリックスバンク240−Aの両方への
ライン「An」を駆動する。この実施例のプログラム可
能な論理素子946の構造および動作それ自体は、セル
900Aのプログラム可能な論理素子の構造および動作
と同一であり、その説明は引用によりここに援用され
る。
【0122】しかしながら、この実施例において、プロ
グラム可能な論理素子946の非同期リセット端子AR
および非同期プリセット端子APへの接続は、プログラ
ム可能な論理ブロック(PLB)の各々のプログラム可
能な論理素子に対する制御積項を許容する。特定的に
は、積項のクラスタ910Bからの振り分け可能な積項
のうちの1つ、たとえば積項992は、プログラム可能
な接続912によってプログラム可能な非同期信号源セ
レクタ950の第1の入力端子とプログラム可能に接続
されかつ切り離される。プログラム可能な非同期信号源
セレクタ950の第2の入力端子は接地され、第3の入
力端子は積項990に接続され、かつ第4の入力端子は
積項991に接続される。
【0123】プログラム可能な非同期信号源セレクタ9
50への入力選択信号は、(i)プログラム可能な非同
期信号源セレクタ950の第1および第2の入力端子と
それぞれ第1および第2の出力端子とを、ならびに(i
i)プログラム可能な非同期信号源セレクタ950の第
3および第4の入力端子とそれぞれ第1および第2の出
力端子とを、プログラム可能に接続しかつ切り離す。こ
の実施例において、プログラム可能な非同期信号源セレ
クタ950に対する入力選択信号の状態はアーキテクチ
ュア上のセル914によって決定される。アーキテクチ
ュア上のセル914が積項992をプログラム可能な非
同期信号源セレクタ950に振り分けるように構成され
るとき、プログラム可能な非同期信号源セレクタ950
は自身を介して積項992を第1の出力端子に通過させ
かつ第2の出力端子は接地される。その反対に、アーキ
テクチュア上のセル914が積項992および993を
ORゲート911に振り分けるとき、プログラム可能な
非同期信号源セレクタ950は自身を介して積項990
を第1の出力端子に通過させかつ自身を介して積項99
1を第2の出力端子に通過させる。
【0124】プログラム可能な非同期信号源セレクタ9
50の第1の出力端子はORゲート931の第1の入力
端子に接続される。ORゲート931の第2の入力端子
はパワーアップリセット信号によって駆動される。OR
ゲート931の出力信号はプログラム可能な信号コネク
タ949の第1の入力端子に接続される。プログラム可
能な非同期源セレクタ950の第2の出力端子はプログ
ラム可能な信号コネクタ949の第2の入力端子に接続
される。非同期プリセットラインは、プログラム可能な
信号コネクタ949の非同期プリセット出力端子をプロ
グラム可能な論理素子946の非同期プリセット端子A
Pに接続する。非同期リセットラインは、プログラム可
能な信号コネクタ949の非同期リセット出力端子をプ
ログラム可能な論理素子946の非同期リセット端子A
Rに接続する。
【0125】したがって、この実施例において、プログ
ラム可能な論理素子946の非同期動作はプログラム可
能な非同期信号源セレクタ950およびプログラム可能
な信号コネクタ949によって制御される。上述のよう
に、この実施例においてアーキテクチュア上のセル91
4が積項をプログラム可能な非同期信号源セレクタ95
0に振り分けるように構成されるとき、プログラム可能
な非同期信号源セレクタ950は自身を介して積項を出
力端子に通過させるように構成される。この実施例にお
いて、1つの積項992のみがプログラム可能な信号コ
ネクタ949に利用可能である。したがって、アーキテ
クチュア上のセル939は、効果的に信号をプログラム
可能な論理素子946の非同期プリセット端子APまた
は非同期リセット端子ARに与えることができる。表6
は、アーキテクチュア上のセル939の構成およびその
結果として生じる接続の1つの実施例を示している。ア
ーキテクチュア上のセル939のこの構成は、この発明
の原理を例示的に示すだけのものであって、この発明を
表6に与えられた特定の構成に制限するものではない。
【0126】
【表6】
【0127】したがって、この実施例において、アーキ
テクチュア上のセル939は各々の論理マクロセルが個
々の非同期プリセット能力または個々の非同期リセット
能力を備える論理マクロセルを与えるように構成され
る。
【0128】図11は、その2入力端子に積項クラスタ
からの積項992と接地とがそれぞれ接続されるプログ
ラム可能な信号コネクタ949のより詳細な構成を示す
図である。プログラム可能な信号コネクタ949は、そ
の入力端子のうちの一方にインバータを備えるANDゲ
ート962ならびに2つの2対1プログラム可能なマル
チプレクサ960および961を含む。
【0129】上述のように、この実施例において、アー
キテクチュア上のセル914が積項992および993
をORゲート911に振り分けるように構成されると
き、プログラム可能な非同期信号源セレクタ950は自
身を介して積項990および991を出力端子に通過さ
せるように構成される。したがって、この構成におい
て、積項991はORゲート931の1つの端子を駆動
しそれがプログラム可能な信号コネクタ949の第1の
入力端子を駆動し、積項991はプログラム可能な信号
コネクタ949の第2の入力端子を駆動するため、アー
キテクチュア上のセル939は、上述のプログラム可能
な論理ブロックセル900Aの第1の実施例と同じ態様
で機能するようにプログラム可能な信号コネクタ949
を構成する。したがって、プログラム可能な論理ブロッ
クセル900Aに対して上で説明したプログラム可能な
信号コネクタ949の機能および動作は引用によりここ
に援用される。
【0130】図12は、2つの入力端子に接続される積
項990および991を有するプログラム可能な信号コ
ネクタ949の1つの実施例のより詳細な構成図であ
る。上述のように、プログラム可能な信号コネクタ94
9は、2つの2対1プログラム可能なマルチプレクサ9
60および961、ならびにその入力端子のうちの一方
にインバータを備えるANDゲート962を含む。
【0131】この実施例において、上述のように、排他
的ORゲート934(図10)およびプログラム可能な
論理素子946は、セル900Aに対して上で説明した
ものと同一であり、その説明は引用によりここに援用さ
れる。しかしながら、この実施例においてクロックマル
チプレクサ943Bはクロックマルチプレクサ943A
と幾分異なる。アーキテクチュア上のセル914からの
アーキテクチュア上の構成信号を有しかつ2つのアーキ
テクチュア上のセル941および942を備えるプログ
ラム可能な6対1マルチプレクサ943Bの出力端子
は、プログラム可能な論理素子946のクロック/ラッ
チイネーブル端子CLK/LEに接続される。
【0132】以下により完全に説明するように、クロッ
クマルチプレクサ943Bは専用入力ピンからの信号か
ら来る4つの入力信号BKLCLK0ないしBKLCL
K3を受ける。第5および第6の入力信号は、アーキテ
クチュア上のセル914によって積項のクラスタから振
り分けられる積項993によって与えられる。積項99
3は第5の入力端子に与えられ、かつ積項993の補数
が第6の入力端子に与えられる。
【0133】プログラム可能な6対1マルチプレクサ9
43Bを通過する信号は、アーキテクチュア上のセル9
41および942の構成ならびにアーキテクチュア上の
セル914からの入力選択信号によって決定される。も
ちろん、別の実施例では、アーキテクチュア上のセル9
14からの入力選択信号を、マルチプレクサ943Bの
第3の個別のアーキテクチュア上のセルと置換えること
ができるであろう。
【0134】表7(A)は、アーキテクチュア上のセル
941および942ならびに同期モードすなわち入力選
択信号が論理1である、マルチプレクサ943Bに対す
る入力選択信号の第1の構成を示している。表7(B)
は、アーキテクチュア上のセル941および942なら
びに非同期モードすなわち入力選択信号が論理ゼロであ
る、マルチプレクサ943Bに対する入力選択信号の第
2の構成を示している。表7(A)および表7(B)の
アーキテクチュア上のセルの値および入力選択信号の値
は例示的に示すためだけのものであって、この発明を示
される特定の値に制限するものではない。
【0135】
【表7】
【0136】表7(A)および表7(B)において、ゼ
ロは論理ゼロに対応しかつプログラムされた状態に相当
し、1は論理1に対応しかつプログラムされていないま
たは消去状態に相当する。「X」はドントケア状態であ
る。
【0137】ある実施例において、この発明のPLD
は、専用入力信号のためのピン、クロック/ラッチイネ
ーブル信号のためのピンまたは入力信号およびクロック
/ラッチイネーブル信号のためのピンとして使用され得
る4つの専用入力ピンを含む。ある実施例において、こ
れらの4つの専用入力ピンCK0/LE0/I0、CK
1/LE1/I1、CK2/LE2/I2およびCK3
/LE3/I3からの信号は、それぞれプログラム可能
な6対1マルチプレクサ943Bへの入力信号BKLC
LK0ないしBKLCLK3である。
【0138】他の実施例において、入力ピンCK0/L
E0/I0からの信号は、第1のプログラム可能な2対
1マルチプレクサ1001(図13(A))の第1の入
力端子および第1のインバータ1002を駆動する。入
力ピンCK1/LE1/I1からの信号は、第2のプロ
グラム可能な2対1マルチプレクサ1003の第1の入
力端子および第2のインバータ1004を駆動する。イ
ンバータ1002からの出力信号はプログラム可能な2
対1マルチプレクサ1003の第2の入力端子を駆動
し、その一方でインバータ1004からの出力信号はプ
ログラム可能な2対1マルチプレクサ1001の第2の
入力端子を駆動する。
【0139】アーキテクチュア上のセル1005はプロ
グラム可能な2対1マルチプレクサ1001に入力選択
信号を与え、それに応答してプログラム可能な2対1マ
ルチプレクサ1001は2つの入力信号のうちの1つを
ラインBKLCLK0に通過させる。同様に、アーキテ
クチュア上のセル1006はプログラム可能な2対1マ
ルチプレクサ1006に入力選択信号を与え、それに応
答してプログラム可能な2対1マルチプレクサ1003
は2つの入力信号のうちの1つをラインBKLCLK1
に通過させる。マルチプレクサ1001および1003
の中の数は、数字の横の入力端子上の信号がマルチプレ
クサを通過するときのアーキテクチュア上のセルの状態
の1つの実施例を表わしている。
【0140】この実施例において、入力ピンCK2/L
E2/I2からの信号は、第1のプログラム可能な2対
1マルチプレクサ1011(図13(B))の第1の入
力端子および第1のインバータ1012を駆動する。入
力ピンCK3/LE3/I3からの信号は、第2のプロ
グラム可能な2対1マルチプレクサ1013の第1の入
力端子および第2のインバータ1014を駆動する。イ
ンバータ1012からの出力信号は、プログラム可能な
2対1マルチプレクサ1013の第2の入力端子を駆動
し、かつインバータ1014からの出力信号はプログラ
ム可能な2対1マルチプレクサ1011の第2の入力端
子を駆動する。
【0141】アーキテクチュア上のセル1015はプロ
グラム可能な2対1マルチプレクサ1011に入力選択
信号を与え、それに応答してプログラム可能な2対1マ
ルチプレクサ1011は2つの入力信号のうちの1つを
ラインBKLCLK2に通過させる。同様に、アーキテ
クチュア上のセル1016はプログラム可能な2対1マ
ルチプレクサ1016に入力選択信号を与え、それに応
答してプログラム可能な2対1マルチプレクサ1013
は2つの入力信号のうちの1つをラインBKLCLK3
に通過させる。マルチプレクサ1011および1013
の中の数字は、数字の横の入力端子上の信号がマルチプ
レクサを通過するときのアーキテクチュア上のセルの状
態の1つの実施例を表わしている。表8はアーキテクチ
ュア上のセル1005,1006,1015および10
16の可能な構成に対するラインBKLCLK0ないし
BKLCLK3上の信号の1つの実施例である。
【0142】
【表8】
【0143】表8では、「CLK0」は専用入力ピンC
K0/LE0/I0からの信号であり、「CLK1」は
専用入力ピンCK1/LE1/I1からの信号であり、
「CLK2」は専用入力ピンCK2/LE2/I2から
の信号であり、「CLK3」は専用入力ピンCK3/L
E3/I3からの信号である。「/CLK0」は信号
「CLK0」の補数、等である(ここで/はCLK0全
体に上線を付したものを意味するものとする)。
【0144】したがって、この実施例では、ユーザは4
つの入力ピン上の信号から得たクロック信号の16個の
異なる組合せから選択できる。当業者によって認められ
るであろうように、表8に表わされるような4つの専用
入力ピンから得られるクロック信号源はさらに、上述の
ようにセル900Aのクロックマルチプレクサ943A
を駆動するために使用されることができる。
【0145】それに加えて、各々のレジスタに対して4
つのクロック源を備えるこの発明の各々のプログラム可
能な論理ブロック201−A(図2)の論理マクロセル
BC0ないしBC15で利用可能な多数のレジスタによ
って、システム設計者は単一のPLDで複数の柔軟なス
テートマシンを実現することができる。
【0146】したがって、この発明のセル900Bでも
って、結果としてもたらされるプログラム可能な論理ブ
ロックはセル900Aを使用して構成されるプログラム
可能な論理ブロックの完全な同期能力を保持し、それに
加えて、セル900Bで形成されるプログラム可能な論
理ブロックのプログラム可能な論理マクロセルの各々
は、単に1つのアーキテクチュア上のセルを構成するこ
とによって非同期的な用途をサポートするために構成さ
れることができる。1つのPLDで、レジスタの能力を
損失せずかつ同期および非同期の用途に対して固定した
予測可能なピン間の確定信号伝搬遅延を与えて、同期お
よび非同期の用途をサポートするこの能力は、上述の先
行技術のPLDに対する非常に大きな進歩である。
【0147】表9はこの発明のセル900Bで形成され
るプログラム可能な論理ブロックの能力の概要である。
上述のように、表の同期モードの列は、この発明のセル
900Aまたはセル900Bで形成されるプログラム可
能な論理ブロックに適合する。
【0148】
【表9】
【0149】入力マクロセル 入力マクロセル206−A(図2)は、I/Oピンから
の一時記憶またはラッチおよび専用入力信号能力を集中
スイッチマトリックス130に与える。入力マクロセル
206−Aは、一時記憶されたおよび一時記憶されてい
ないデータ信号を同時に集中スイッチマトリックス13
0に与える。一時記憶されたおよび一時記憶されていな
いデータ信号が同時に集中スイッチマトリックス130
に利用可能であることによって、この発明のPLDはマ
ルチプレクスされるおよびマルチプレクスされない用途
に関してマイクロプロセッサへのインタフェースに先行
技術のPLDよりも遙かに有用となる。
【0150】もしI/Oピンが入力ピンとして利用され
なければ、入力マクロセル206−AはI/Oマクロセ
ル203−Aからの出力信号に対して入力スイッチマト
リックスバンク220−Aに付加的な一時記憶またはラ
ッチフィードバック信号能力を与える。入力マクロセル
206−Aから入力スイッチマトリックスバンク220
−Aへのフィードバック信号は、I/Oマクロセル20
3−Aの構成にかかわらず常に利用可能である。
【0151】図14は、入力マクロセル206−Aの1
つの入力マクロセル1185のより詳細な図である。こ
の実施例では、PLDのすべての入力マクロセルは同一
である。I/Oピン1105−mは、ライン1171−
mによってI/Oマクロセル1175に接続される。I
/Oマクロセル1175では、ライン1171−mはラ
イン1161−mに接続される。ライン1171−mは
さらにプログラム可能な記憶素子1181の入力端子D
/Lおよび入力スイッチマトリックスバンク220−A
に接続される。結果的に、ピン1105−m上のいかな
る信号も入力端子D/Lおよび入力スイッチマトリック
スバンク220−Aに与えられる。
【0152】プログラム可能な記憶素子1181の出力
端子Qは、入力スイッチマトリックスバンク220−A
に接続される。この実施例において、プログラム可能な
記憶素子1181はD型フリップフロップおよびトラン
スペアレントラッチのうちの1つとしてプログラム可能
である。プログラム可能な記憶素子1181の構成は、
アーキテクチュア上のセル1182によって決定され
る。アーキテクチュア上のセル1182の2つの値の構
成は表10に与えられる。
【0153】
【表10】
【0154】入力マクロセル1185はさらに、出力ラ
インがプログラム可能な記憶素子1181の端子CLK
/LEに接続されるプログラム可能な4対1マルチプレ
クサ1143を含む。プログラム可能な4対1マルチプ
レクサ1143の構成および動作は、論理マクロセル9
45Aに対して上で説明したものと同一であり、その説
明は引用によりここに援用される。
【0155】入力マクロセル1185の論理能力は論理
マクロセルの論理能力とともに上で説明した。別々の一
時記憶/ラッチ入力信号は入力スイッチマトリックスバ
ンク220−Aに利用可能であるため、この発明のPL
Dによって論理マクロセルのフィードバック信号および
一時記憶/ラッチ入力信号を同時に使用することができ
る。
【0156】I/Oセル この発明のI/Oセル1175も図14に示される。I
/Oマクロセル1175はI/Oピン1105−mに結
合される1つの3状態バッファ1172を有する。3状
態バッファ1172の入力端子は、出力スイッチマトリ
ックスバンク240−Aの出力ラインに接続される。3
状態バッファ1172の出力端子はライン1161−m
によってI/Oピン1105−mに接続される。3状態
バッファ1172の出力イネーブル端子は、上述の複数
の出力イネーブル積制御項のうちの1つの積制御項に接
続される。
【0157】出力イネーブル積項が第1の論理レベルを
有するとき、バッファ1172の入力端子上の信号は自
身を介して出力端子に通過する。したがって、I/Oピ
ン1105−mは出力ピンとして構成される。出力イネ
ーブル積項が第2の論理レベルを有するとき、バッファ
1172は高インピーダンス状態を有する。したがって
I/Oピン1105−mは、積項によって制御される双
方向のI/Oピンとして機能する。
【0158】上述のように、各々のI/Oセル1175
はそれ自身の出力イネーブル積項を有する。各々のI/
Oセル1175に対して個々の積項を使用することによ
って、バンク単位の出力イネーブル能力のみを有する先
行技術のPLDに対してこの発明のPLDの能力がかな
り強化される。
【0159】出力スイッチマトリックス この発明の出力スイッチマトリックスバンク240−A
は図15により詳細に示される。上述のように、この実
施例では、出力スイッチマトリックスバンク240−A
は多数の8対1プログラム可能なマルチプレクサを含
む。図15では、垂直ラインは出力スイッチマトリック
スバンク240−Aへの信号入力ラインを表わす。特定
的には、16本の垂直ラインA0ないしA15は論理マ
クロセルBC0ないしBC15からの出力信号をそれぞ
れ与える。8本の水平ラインはその各々がI/Oセル2
03−Aのうちの1つのI/Oセルへの入力ラインであ
る。水平および垂直ラインの交差の円はプログラム可能
な接続を表わす。したがって、特定の垂直ライン上の円
は、特定のマルチプレクサの8本の入力ラインと1本の
出力ラインとの間の8つのプログラム可能な接続を表わ
す。
【0160】この特定の構成では、第1のI/OセルI
OC0はプログラム可能な論理マクロセルBC0ないし
BC7のうちのいずれか1つからの信号を受けることが
できる。第2のI/OセルIOC1はプログラム可能な
論理マクロセルBC2ないしBC9のいずれか1つから
の信号を受けることができ、第3のI/OセルIOC2
はプログラム可能な論理マクロセルBC4ないしBC1
1のいずれか1つからの信号を受けることができる。第
8のI/OセルIOC7はプログラム可能な論理マクロ
セルBC14ないしBC5のいずれか1つからの信号を
受けることができる。
【0161】図15に示される出力スイッチマトリック
スバンク240−Aの特定の構成はこの発明の原理を例
示的に示すだけのものであって、この発明を示される構
成に制限するものではない。この開示を考慮すれば、当
業者はたとえば出力スイッチマトリックスバンク240
−Aにプログラム可能な4:1マルチプレクサ、プログ
ラム可能な12:1マルチプレクサ、プログラム可能な
16:1マルチプレクサまたは異なる大きさのプログラ
ム可能なマルチプレクサの組合せでも使用することがで
きるであろう。重要な局面は、(i)プログラム可能な
論理マクロセルはI/Oセルとプログラム可能に結合可
能かつ切り離し可能であり、そのためプログラム可能な
論理マクロセルは埋込論理マクロセルと出力論理マクロ
セルとの両方として機能し得ること、および(ii)プ
ログラム可能な論理マクロセルの出力信号は複数のI/
Oピンのうちのいずれの1つにもプログラム可能に振り
分けられ得ることである。
【0162】出力スイッチマトリックスバンク240−
Aの各々のプログラム可能な8対1マルチプレクサは、
マルチプレクサを構成するために使用される3つのアー
キテクチュア上のセルを有し、そのため入力ラインのう
ちの1本のみが出力ラインに接続される。アーキテクチ
ュア上のセルはマルチプレクサに入力選択信号を与え
る。表11は、3つのアーキテクチュア上のセルの特定
の構成に対するプログラム可能な論理ブロックの1つの
実施例を示す。表11のI/Oピンの参照番号の下の各
々の列は、出力スイッチマトリックスバンク240−A
の1つのプログラム可能な8:1マルチプレクサを表わ
す。
【0163】表11は、各々の出力信号がI/Oピンへ
の少なくとも3つの異なる経路を有することを示す。た
とえば、マクロセルBC0からの信号A0は、I/Oピ
ンIO0、IO5、IO6およびIO7に経路指定され
ることができる。特定的には、
【0164】
【数1】
【0165】である。
【0166】
【表11】
【0167】図16は、出力スイッチマトリックスバン
ク240−Aの8つのプログラム可能なマルチプレクサ
の代替例を示す図である。「**」を付した入力ライン
は、出力スイッチマトリックスバンク240−Aのデフ
ォルト構成において出力ラインに接続されるラインであ
る。
【0168】入力スイッチマトリックス 入力スイッチマトリックスバンク220−Aは32個の
入力信号を受ける。上述のように、ラインA0ないしA
15上の信号はプログラム可能な論理マクロセルBC0
ないしBC15からのものである。ラインA0^ないし
A15^上の信号は入力マクロセルからのものであり、
信号A0^、A2^、...、A14^は関連するI/
Oピンからの直接の信号であり、信号A1^、A3
^、...、A15^は一時記憶またはラッチ信号のい
ずれかである。
【0169】この発明の入力スイッチマトリックスバン
ク220−Aの1つの実施例は図17に示される。上述
のように、この実施例では、入力スイッチマトリックス
バンク220−Aは多数のプログラム可能な4対1マル
チプレクサを含む。図17では、垂直ラインは入力スイ
ッチマトリックスバンク220−Aへの信号入力ライン
を表わす。特定的には、32本の垂直ラインは4本のラ
インの組にクラスタにされる。図17の左側の第1のク
ラスタの4本のラインは、ラインA0、A1、A0^お
よびA1^にそれぞれ接続される。図17の左側の第2
のクラスタの4本のラインはラインA2、A3、A2^
およびA3^にそれぞれ接続される。入力ラインの接続
のこのパターンは継続し、図17の右側の最後のクラス
タの4本のラインはラインA14、A15、A14^お
よびA15^に接続される。
【0170】24本の水平ラインSAI0ないしSAI
23の各々は、集中スイッチマトリックス230への入
力ラインである。水平および垂直ラインの交差での円は
プログラム可能な接続を表わす。したがって、特定の水
平ライン上の円は、特定のプログラム可能なマルチプレ
クサの4本の入力ラインとその出力ラインとの間の4つ
のプログラム可能な接続を表わす。
【0171】特定のマルチプレクサへの入力ラインは図
18により詳細に示される。この実施例では、4本の入
力ラインのクラスタは3つの隣接するプログラム可能な
マルチプレクサに接続される。
【0172】この発明の入力スイッチマトリックスバン
ク220−Aの第2の実施例は図19に示される。この
実施例でも、入力スイッチマトリックスバンク220−
Aは多数のプログラム可能な4対1マルチプレクサを含
む。図19でも、垂直ラインは入力スイッチマトリック
スバンク220−Aへの信号入力ラインを表わす。特定
的には、32本の垂直ラインは4本のラインの組にクラ
スタにされる。図19の左側の第1のクラスタの4本の
ラインはラインA0、A1、A0^およびA1^にそれ
ぞれ接続される。図19の左側の第2のクラスタの4本
のラインはラインA2、A3、A2^およびA3^にそ
れぞれ接続される。このパターンの入力ラインの接続は
継続され、図19の右側の最後のクラスタの4本のライ
ンはラインA14、A15、A14^およびA15^に
接続される。
【0173】24本の水平ラインSAI0ないしSAI
23の各々は、ここでも集中スイッチマトリックス23
0への入力ラインである。水平および垂直ラインの交差
での円はプログラム可能な接続を表わす。したがって、
特定の水平ライン上の円は特定のプログラム可能なマル
チプレクサの4本の入力ラインとその出力ラインとの間
の4つのプログラム可能な接続を表わす。
【0174】特定のマルチプレクサへの入力ラインは図
20により詳細に示される。この実施例では、4本の入
力ラインのクラスタは24個のプログラム可能なマルチ
プレクサに接続される。この開示を考慮すれば、当業者
は入力スイッチマトリックスバンク220−Aに様々な
プログラム可能なマルチプレクサを使用することができ
る。重要な局面は、入力スイッチマトリックスバンク2
20−Aへの各々の入力信号はスイッチマトリックスを
通る少なくとも3つの異なる経路を有することである。
【0175】表12は、アーキテクチュア上のセルS1
2およびS13の特定の構成に対する、2つの隣接する
論理マクロセルからのフィードバック信号A(N)およ
びA(N+1)、それに関連するI/Oピンからのフィ
ードバック信号A(N)^、ならびにそれに関連する入
力マクロセルからのフィードバック信号A(N+1)^
の選択を示す。この実施例において、入力スイッチマト
リックスバンク220−Aは複数のプログラム可能な2
対1マルチプレクサである。
【0176】表12は、この実施例において各々のフィ
ードバック信号が集中スイッチマトリックス230に到
達する際に3つの変化を有し、そのため各々のフィード
バック信号は均一に処理されることを示す。
【0177】
【表12】
【0178】上述の議論では、参照番号に英数字「A」
を付したPLD100の構成要素の構造について検討し
た。PLD100の他の7組の構成要素は上述のものと
同一である。したがって、上述の説明は他の7組の構成
要素の各々に対して引用によりここに援用される。さら
に、プログラム可能な論理ブロック、入力スイッチマト
リックスバンクおよび出力スイッチマトリックスバンク
を備える一般的な構成は、これらの構成要素を含むいか
なる数のブロックをも備えるPLDを形成するために使
用されることができる。
【0179】集中スイッチマトリックス 集中スイッチマトリックス130(図1)はしばしば
「集中スイッチ相互接続手段」とも呼ばれるが、これは
入力スイッチマトリックス120の各々のバンクから2
4個の入力信号を受ける。したがって、この実施例で
は、入力スイッチマトリックス120から集中スイッチ
マトリックス130への入力ラインは192本ある。さ
らに6つの専用入力ピンは集中スイッチマトリックス1
30に入力信号を与える。したがって、集中スイッチマ
トリックス130への入力ラインは合計198本であ
る。
【0180】PLDアーキテクチュアがより高密度に比
例縮小されるときに適切な経路指定能力を保証するため
に、各々の入力信号は集中スイッチマトリックス130
を通る少なくとも3つの異なる経路を有さなければなら
ない。それに加えて、論理能力および信号経路指定能力
を強化するために、この実施例では集中スイッチマトリ
ックス130から各々のプログラム可能な論理ブロック
への出力ラインが33本ある。
【0181】出力ラインの数、入力信号の数および経路
指定可能係数は、中央スイッチマトリックスのプログラ
ム可能なマルチプレクサの最小の大きさを固定する。特
定的には、
【0182】
【数2】
【0183】である。したがって、この実施例では、集
中スイッチマトリックス130は33個のプログラム可
能な18:1マルチプレクサの8つのバンクを含む。集
中スイッチマトリックス130は入力スイッチマトリッ
クス120とともに、各々のプログラム可能な論理ブロ
ックがすべてのグローバル信号へのアクセスを有する完
全なグローバルな接続性を与える。
【0184】プログラム可能な論理セル900Aまたは
プログラム可能な論理セル900Bから構成されるプロ
グラム可能な論理ブロックとともに使用するのに適切で
ある集中スイッチマトリックス130の1つの実施例
は、図21ないし図24に示される。説明を簡略化する
ために、8つのプログラム可能な論理ブロック101−
Aないし101−Hはブロック「A」ないし「H」とし
てそれぞれ表わされる。各々のブロックに対する入力ス
イッチマトリックスラインには0ないし23という数字
が与えられる。したがって、入力スイッチマトリックス
140のバンク140−Aからのラインは、A00ない
しA23によって表わされる。図25ないし図28は図
21ないし図24と同じ名称を使用し、集中スイッチマ
トリックス130を通る信号の経路指定の別の方法を示
している。両方の実施例において、各々の入力信号は集
中スイッチマトリックス130を通る少なくとも3つの
経路を有する。したがって、集中スイッチマトリックス
130は少なくとも3の経路指定可能係数を有する。
【0185】図29および図30はこの発明の原理に従
ったプログラム可能な論理装置(PLD)のセル200
0の詳細な構成図である。PLDセル2000は、上述
のようにこの発明のプログラム可能な論理ブロックセル
900Bと同等のものである2つのプログラム可能な論
理ブロックセル2000Aおよび2000Bを含む。P
LDセル2000はさらに、I/Oセル2075および
入力マクロセル2085を含む。さらに、PLDセル2
000は、プログラム可能な出力スイッチマトリックス
バンク240−A(図2)のサブバンク2040A1お
よびプログラム可能な入力スイッチマトリックスバンク
220−A(図2)のサブバンク2020A1(図29
および図30)を含む。
【0186】したがって、この発明の原理に従って、P
LDはPLDセル2000を使用することによって形成
され、複数のI/Oセルおよび複数の入力マクロセルに
加えて入力スイッチマトリックスのバンクおよび出力ス
イッチマトリックスのバンクを備えるプログラム可能な
論理ブロックを構成する。形成されたプログラム可能な
論理ブロックは集中スイッチマトリックスからの信号に
よってのみ駆動される入力ラインを有し、集中スイッチ
マトリックスは入力スイッチマトリックスおよびオプシ
ョンとして複数の専用入力ピンからのみ入力信号を受け
る。もちろん、専用入力ピンからの信号も入力スイッチ
マトリックスを通って経路指定されることができるであ
ろう。
【0187】PLDセル2000では、入力マクロセル
2085およびI/Oセル2075の構成要素および動
作は、入力マクロセル1185およびI/Oセル117
5に対して上で説明したものと同一であり、その説明は
引用によりここに援用される。入力スイッチマトリック
スのサブバンク2020A1を形成する3つのプログラ
ム可能な2:1マルチプレクサの機能および動作は上の
表12によって規定され、それは引用によりここに援用
される。サブバンク2020A1は3つのプログラム可
能な2:1マルチプレクサへの入力信号の特定の構成を
示し、それは4つの入力信号A(N)^、A(N)、A
(N+1)およびA(N+1)^の各々にラインSAI
0、SAI1およびSAI2を介して集中スイッチマト
リックスに入る3つの機会を与える。特定的には、信号
A(N)^は6つの入力端子のうちの3つに与えられ、
信号A(N)、A(N+1)およびA(N+1)^は残
りの3つの入力端子に与えられ、そのため信号の各々は
異なる入力端子に与えられることになる。
【0188】この実施例において、出力スイッチマトリ
ックスのサブバンク2040A1はプログラム可能な
8:1マルチプレクサであり、その動作および機能は表
11のいずれかの列によって示され、それは引用により
ここに援用される。プログラム可能な論理ブロックセル
2000Aおよび2000Bでは、ORゲート2011
Aおよび2011B、デマルチプレクサ2022Aおよ
び2022B、ORゲート2033Aおよび2033
B、排他的ORゲート2034Aおよび2034B、プ
ログラム可能な論理素子2046Aおよび2046B、
プログラム可能な非同期信号源セレクタ2050Aおよ
び2050B、プログラム可能な信号コネクタ2049
Aおよび2049B、ならびにクロックマルチプレクサ
2043Aおよび2043Bは、セル900Bの対応の
構成要素と同一の態様で機能しかつ動作する。ここで、
対応の構成要素とは同じ構成要素のことを意味し、その
構成要素は参照番号の下2桁が同じであることによって
識別される。しかしながら、非同期制御積項2090お
よび2091が図29および図30の両方に示されてい
ることに注目されたい。これは便宜上だけのものであっ
て、上述のように実際にはそれらは同じ積項であって、
共有される。
【0189】プログラム可能な極性制御素子937およ
びそのアーキテクチュア上のセルならびにプログラム可
能な接続912およびその接続の1つの実施例は、図2
9および図30に示される。プログラム可能な論理ブロ
ックセル2000Aにおいてクラスタの5つの積項は積
項PT1ないしPT5として識別されプログラム可能な
論理ブロックセル2000Bにおいては積項PT6ない
しPT10として識別されることを除いて、これらの2
つの構成要素を構成する要素は同一である。したがっ
て、図29の構成要素のみをここに説明する。
【0190】プログラム可能な極性制御素子937は、
アーキテクチュア上のセル2098Aを備えるプログラ
ム可能な2:1マルチプレクサ2096Aと排他的OR
ゲート2099Aとを含む。プログラム可能な接続20
36Aは第1の入力端子に接続される積項PT1を有
し、第2の出力端子は接地される。アーキテクチュア上
のセル2097Aがプログラム可能な接続2036Aに
論理ゼロの入力選択信号を与えるように構成されると、
プログラム可能な接続2036Aは積項PT1をORゲ
ート2011Aに振り分けかつ他方の出力端子は接地さ
れ、そのため論理ゼロ信号は排他的ORゲート2099
Aの一方の入力端子に与えられる。
【0191】排他的ORゲート2099Aの他方の入力
端子は、プログラム可能な2:1マルチプレクサ209
6Aの出力端子に接続される。排他的ORゲート209
9Aの出力端子は、排他的ORゲート2034Aの一方
の入力端子に接続される。プログラム可能な2:1マル
チプレクサ2096Aの一方の入力端子は電源電圧Vc
cに接続され、他方の入力端子は接地される。
【0192】アーキテクチュア上のセル2098Aがプ
ログラム可能な2:1マルチプレクサ2096Aに論理
ゼロの入力選択信号を与えるように構成されると、マル
チプレクサ2096Aは接地レベルを出力端子に通過さ
せ、その逆の事も言える。したがって、積項PT1がO
Rゲート2011Aに振り分けられるとき排他的ORゲ
ート2034Aからアクティブハイの極性が望まれれ
ば、マルチプレクサ2096Aは接地レベルを排他的O
Rゲート2099Aに通過させるように構成され、それ
は論理ゼロレベルの信号を発生し、それは排他的ORゲ
ート2034Aの入力端子に与えられる。その反対に、
もしアクティブローの極性が望まれれば、電源電圧がマ
ルチプレクサ2096Aを介して排他的ORゲート20
99Aに通過し、結果的に排他的ORゲート2033A
に通過する。さらにマルチプレクサ2096Aは積項P
T1が排他的ORゲート2099Aに振り分けられると
きに極性を制御するために使用される。
【0193】この実施例において、プログラム可能な接
続912は2つのプログラム可能な接続2012A1お
よび2012A2を含む。プログラム可能な接続201
2A1の第1の入力端子は積項PT3によって駆動さ
れ、かつ第2の入力端子は接地される。第1の出力端子
はプログラム可能な非同期信号源セレクタ2050Aの
第1の入力端子を駆動し、かつ第2の出力端子はプログ
ラム可能な非同期信号源セレクタ2050Aの第2の入
力端子とORゲート2011Aの入力端子とを駆動す
る。
【0194】プログラム可能な接続2012A2の第1
の入力端子は積項PT2によって駆動され、かつ第2の
入力端子は接地される。第1の出力端子はプログラム可
能なクロックマルチプレクサ2043Aにクロック信号
を与えかつ第2の出力端子はORゲート2011Aの入
力端子を駆動する。
【0195】アーキテクチュア上のセル2014Aがプ
ログラム可能な接続2012A1に特定の入力選択信号
を与えるように構成されると、入力選択信号はさらにプ
ログラム可能な非同期信号源セレクタ2050A、プロ
グラム可能なクロックマルチプレクサ2043Aおよび
プログラム可能な接続2012Aに与えられる。したが
って、プログラム可能な接続2012A1が積項PT3
をORゲート2011Aに振り分けると、プログラム可
能な接続2012A2は積項PT2をORゲート201
1Aに振り分ける。1つの実施例において、アーキテク
チュア上のセル2014Aがプログラム可能な接続20
12A1および2012A2に論理1レベルの信号を与
えるように構成されるときに、このことが起こる。この
実施例において、積項PT3がORゲート2011Aに
振り分けられるとき、積項PT3はさらにプログラム可
能な非同期信号源セレクタの第2の入力端子に振り分け
られることに注目されたい。
【0196】アーキテクチュア上のセル2014Aがプ
ログラム可能な接続2012A1および2012A2に
論理ゼロレベルの信号を与えるように構成されると、積
項PT2およびPT3は非同期の用途のために使用され
る。積項PT2は個々のクロック信号であり、積項PT
3は非同期プリセットまたは非同期リセットのいずれに
も使用される。
【0197】図31は、上述のPLDのピンアウトの1
つの実施例を示す図である。84個のピンパッケージ
は、64個のI/OピンIO−0ないしIO−63、2
つの専用入力ピンI−2およびI−5、4つのグローバ
ルクロック/専用入力ピンI−0/CK0、I−1/C
K1、I−3/CK3およびI−4/CK4、6つの電
源ピンVCCならびに8つの接地ピンを有する。6つの
電源ピンは、パッケージの平行な2つの側の各々が2つ
の電源ピンを有しかつ残りの平行な2つの側の各々が1
つの電源ピンを有するように配列される。パッケージの
各々の側は2つの接地ピンを有する。
【0198】この発明の他の実施例では、PLDセル2
000はPLD2200でブロック2200−Aないし
2200−P(図32)を構成するために使用される。
したがって、PLD2200は、16バンクのプログラ
ム可能な入力スイッチマトリックス、16バンクのプロ
グラム可能な出力スイッチマトリックスおよび16個の
プログラム可能な論理ブロックを有する。PLD220
0は入力/出力ピンを合計128個有し、ブロックごと
に8個のI/Oピンを備える。
【0199】PLD2200は、合計で256個のマク
ロセル、128個の入力マクロセルおよび18個の専用
入力ピンを有する。したがって、集中スイッチマトリッ
クスへの入力信号の総数は402である(24個の信号
/入力スイッチマトリックスのバンク×16個のバンク
+18個の専用入力信号)。ある実施例において、40
2個の信号は、I/Oピンからの128個の信号、12
8個の入力マクロセルフィードバック信号、128個の
論理マクロセルフィードバック信号および18個の専用
入力信号である。
【0200】この実施例において、各々のプログラム可
能な論理ブロックは集中スイッチマトリックスから34
個の入力信号を受け、各々の入力ラインはプログラム可
能な36:1マルチプレクサによって駆動される。した
がって、集中スイッチマトリックスへの入力ラインの最
大数は、34個のマルチプレクサ×36本の入力ライン
/マルチプレクサ、または1,224本の入力ラインで
ある。402個の入力信号は1,224本の入力ライン
を駆動し、そのため各々の信号は集中スイッチマトリッ
クスを通る経路を平均で3.04個有する。
【0201】ある実施例において、PLD2200は1
96個のピンのQFPパッケージに含まれる。このパッ
ケージは、128個のI/Oピン、18個の専用入力ピ
ン、44個の電源および接地ピン、ならびに5ボルト回
路内プログラム能力およびJTAG互換の6つのピンを
有する。
【0202】上述のように、この発明のプログラム可能
な論理装置は複数のプログラム可能な接続を有する。あ
る実施例において、プログラム可能な接続は多数の電気
的に消去可能なセルによって制御される。電気的に消去
可能なセルの数は特定の実現化例に依存するが、図1に
示される実施例の電気的に消去可能なセルの数は表13
に与えられる。この開示を考慮すれば、当業者は消去可
能なセルの数を変えてこの発明の原理に従ったPLDを
設計することができる。したがって、以下の表は例示的
に示すためだけのものであって、この発明を示されたセ
ルの数に制限するものではない。
【0203】
【表13】
【0204】他の実施例における、プログラム可能な論
理ブロックセル900Bを使用して構成されるPLDの
電気的に消去可能なセルの数は、表14に与えられる。
【0205】
【表14】
【0206】さらに他の実施例における、プログラム可
能なPLDセル2000を使用して構成されるPLD2
200の電気的に消去可能なセルの数は表15に与えら
れる。
【0207】
【表15】
【0208】上述の議論では、説明を簡略化するために
プログラム可能なアーキテクチュア上のセルのみを説明
した。これらの用途におけるセルは、この発明に従った
ヒューズ、EPROMセル、EEPROMセル、RAM
セルまたはCMOSアンチヒューズ技術であってもよ
い。アーキテクチュア上のセルは、入力選択信号または
出力選択信号をプログラム可能な構成要素に与えるため
の手段であり、そのため構成要素はそこに所望の信号を
通過させる。
【0209】上述の議論では、プログラム可能なAND
/ORアレイを、論理変数の積を形成するために使用さ
れるANDゲートのアセンブリに続いてそのような積項
の和を形成するためのORゲートのアセンブリとして説
明してきた。しかしながら、ある実施例においては、当
業者に既知である論理変換を使用するとプログラム可能
なAND固定ORアレイ(AND/ORアレイ)はプロ
グラム可能なNOR固定NORアレイによって置換えら
れる。NOR論理を使用することによって、同等のプロ
グラム可能なAND/ORアレイに対して速度が向上さ
れるが、2つのアレイの論理機能は同等である。
【0210】AND/ORアレイはさらに入力信号
(A)の補数(/A(ここで/はAに上線を付したもの
を意味する))を形成するインバータを含んでもよい。
AND/ORアレイはさらに、以下のドモルガンの定理
【0211】
【数3】
【0212】を利用することによって当業者に周知であ
る態様で、論理変数の和を形成するためのORゲートの
アセンブリに続いてそのような和の積を形成するための
ANDゲートのアセンブリとして配列されてもよい。た
とえば、論理積項の和A・B+C・D+E・F・Gは変
数の補数の和の積の補数、すなわち、
【0213】
【数4】
【0214】として表わされてもよい。参照しやすくす
るために、論理積の論理和と論理和の論理積とはここで
はまとめて「論理和/積項」と呼ぶ。
【0215】上で適用したドモルガンの定理を使用しか
つ信号経路に信号インバータを組込むことによって、プ
ログラム可能なORゲートおよび固定ANDゲートに関
するゲート構成をも表わすことができる。より一般的に
は、ANDゲートおよびORゲートがともにプログラム
可能であるPLAモードでゲートを構成することができ
る。
【0216】この発明のPLDのプログラム可能な論理
マクロセルおよび入力マクロセルはすべてパワーアップ
の間にリセットされるように設計される。パワーアップ
の後に、プログラム可能な論理マクロセルおよび入力マ
クロセルはすべてクリアされ、出力信号を論理ゼロに設
定する。ステートマシンの初期化を簡略化するのにこの
特徴は特に重要である。
【0217】所有権を主張できるユーザの論理設計が許
可なくコピーされることを防ぐために、各々の装置には
セキュリティセルが与えられる。一旦プログラムされる
と、セキュリティセルはプログラミングおよび検査モー
ドを不能化する。保護セルを消去する唯一の方法は、ア
レイのアーキテクチュアセルのすべてを充電することで
ある。このセルは、好ましくは残りの装置が完全にプロ
グラムされた後でのみプログラムされるべきである。
【0218】この発明のプログラム可能な論理装置は、
超電圧で可能化されるプリロード回路で設計され、これ
は論理の機能性をテストする容易な方法を提供する。プ
リロード機能によって、いかなる任意の状態の値を論理
マクロセルにロードすることも可能となる。典型的な機
能のテストのシーケンスによって、テストされている装
置の可能な状態の遷移がすべて確かめられるであろう。
これには、レジスタを任意の「現在の状態」に設定す
る、および装置を任意の「現在の入力」値にセットする
能力が必要である。一旦これが行なわれると、ステート
マシンは新しい状態または次の状態にクロックされ、そ
れは「現在の状態」からの遷移を有効なものとするため
に検査される。この方法で、いかなる特定の状態の遷移
も検査することができる。
【0219】プリロード機能によって装置がいかなる所
望の状態にも直接移ることが可能となるため、テストの
シーケンスは大幅に短縮され得る。さらに、可能な値を
すべてテストすることができ、これによりテスト時間と
開発のコストを大幅に削減し正常なシステム内動作を保
証する。
【0220】観察モードによって、テスト容易性のため
に内部状態または対応するI/Oピン上の出力レジスタ
の内容を観察することができる。超電圧を特定のピンに
与えることによってこの観察モードに入る。一旦このモ
ードに入ると、それは組合せ出力データがI/Oピン上
に現われるのを抑制し、かつプログラム可能な論理マク
ロセルに対応する出力ピン上の出力レジスタの内容の観
察を可能にする。これによって、埋込レジスタのデバッ
グおよび追跡が容易にできるようになる。
【0221】この出願は、オム・ピィ・アグラワル(Om
P. Agrawal)他による「高密度のプログラム可能な論理
装置の柔軟な同期/非同期セル構造(FLEXIBLE SYNCHRO
NOUS/ASYNCHRONOUS CELL STRUCTURE FOR A HIGH DENSIT
Y PROGRAMMABLE LOGIC DEVICE)」と題された共通に譲渡
されかつ共通に出願された同時係属中の米国特許出願連
続番号第xx/xxx,xxx号、およびオム・ピィ・
アグラワル(Om P. Agrawal)による「複数のプログラム
可能なスイッチマトリックスを備えるマルチアレイのプ
ログラム可能な論理装置(A MULTIPLE ARRAY PROGRAMMA
BLE LOGIC DEVICE WITH A PLURALITY OF PROGRAMMABLE
SWITCH MATRICES )」と題され共通に譲渡されかつ共通
に出願された同時係属中の米国特許出願連続番号第xx
/xxx,xxx号に関し、その2つはどちらもそのま
ま引用によりここに援用される。
【0222】上述の実施例はこの発明の原理を例示的に
示すためだけのものであって、この発明を説明した特定
の実施例に制限するものではない。この開示を考慮すれ
ば、当業者は高速でかつより高密度に容易に比例縮小可
能である様々なPLDを作り出すことができるであろ
う。
【図面の簡単な説明】
【図1】プログラム可能な集中スイッチマトリックスお
よびプログラム可能な入力スイッチマトリックスを含む
プログラム可能なスイッチマトリックスによって相互接
続される複数の同一のプログラム可能な論理ブロックを
備えるこの発明の非常に高密度なPLDの1つの実施例
のブロック図である。
【図2】この発明のプログラム可能な論理ブロック、プ
ログラム可能な入力スイッチマトリックスバンク、プロ
グラム可能な出力スイッチマトリックスバンク、I/O
セル、入力マクロセルおよびI/Oピンを含むこの発明
の基本構成のより詳細なブロック図である。
【図3】この発明の論理アロケータの1つの実施例にお
ける一般的なデマルチプレクサの図である。
【図4】この発明の論理アロケータの1つの実施例にお
けるデマルチプレクサの図である。
【図5】この発明の論理アロケータの1つの実施例にお
けるデマルチプレクサの図である。
【図6】この発明の論理アロケータの1つの実施例にお
けるデマルチプレクサの図である。
【図7】この発明の論理アロケータの1つの実施例にお
けるデマルチプレクサの図である。
【図8】この発明の論理アロケータの動作を示すブロッ
ク図である。
【図9】この発明のプログラム可能な論理ブロックのセ
ルの1つの実施例の詳細なブロック図である。
【図10】この発明のプログラム可能な論理ブロックの
セルの他の実施例の詳細なブロック図である。
【図11】2つの異なる入力信号の構成のうちの一方を
備えるこの発明のプログラム可能な信号コネクタの詳細
図である。
【図12】2つの異なる入力信号の構成のうちの他方を
備えるこの発明のプログラム可能な信号コネクタの詳細
図である。
【図13】(A)と(B)とは、この発明の多数のクロ
ック信号の構成の発生回路の概略図である。
【図14】この発明の入力論理マクロセルおよび入力/
出力セルのより詳細なブロック図である。
【図15】この発明のプログラム可能な出力スイッチマ
トリックスバンクの1つの実施例の概略図である。
【図16】図15のプログラム可能な出力スイッチマト
リックスバンクの代替例を示す図である。
【図17】この発明のプログラム可能な入力スイッチマ
トリックスバンクの1つの実施例の概略図である。
【図18】図17のプログラム可能な入力スイッチマト
リックスバンクの代替例を示す図である。
【図19】この発明のプログラム可能な入力スイッチマ
トリックスの1つのバンクの別の実施例の概略図であ
る。
【図20】図19のプログラム可能な入力スイッチマト
リックスのバンクの代替例を示す図である。
【図21】この発明の集中スイッチマトリックスに対す
る入力信号の構成の1つの実施例を示す図である。
【図22】この発明の集中スイッチマトリックスに対す
る入力信号の構成の1つの実施例を示す図である。
【図23】この発明の集中スイッチマトリックスに対す
る入力信号の構成の1つの実施例を示す図である。
【図24】この発明の集中スイッチマトリックスに対す
る入力信号の構成の1つの実施例を示す図である。
【図25】この発明の集中スイッチマトリックスに対す
る入力信号の構成の別の実施例を示す図である。
【図26】この発明の集中スイッチマトリックスに対す
る入力信号の構成の別の実施例を示す図である。
【図27】この発明の集中スイッチマトリックスに対す
る入力信号の構成の別の実施例を示す図である。
【図28】この発明の集中スイッチマトリックスに対す
る入力信号の構成の別の実施例を示す図である。
【図29】この発明のプログラム可能な論理装置のセル
の詳細な構成図である。
【図30】この発明のプログラム可能な論理装置のセル
の詳細な構成図である。
【図31】この発明のPLDの1つの実施例に対するピ
ンアウトの詳細なブロック図である。
【図32】この発明の別のPLDのブロック図である。
【符号の説明】
201−A プログラム可能な論理ブロック 203−A I/Oセル 205−A I/Oピン 206−A 入力マクロセル 210−A プログラム可能な論理アレイ 215−A 論理アロケータ 220−A 入力スイッチマトリックスバンク 230 集中スイッチマトリックス 240−A 出力スイッチマトリックスバンク
───────────────────────────────────────────────────── フロントページの続き (72)発明者 オム・ピィ・アグラワル アメリカ合衆国、94024 カリフォルニ ア州、ロス・アルトス、ハイランド・サ ークル、891 (72)発明者 ジェリー・ディ・モエンチ アメリカ合衆国、78950 テキサス州、 オースティン、スペースウッド・パーク ウェイ、11305 (72)発明者 ケリー・エイ・イルゲンスタイン アメリカ合衆国、78735 テキサス州、 オースティン、サプリング・コーブ、 4900 (56)参考文献 特開 昭63−151115(JP,A) 特開 平4−219021(JP,A) S.KOPEC,Obtaining 70Mhz Performance in the MAX Archite cture,ELECTRONIC E NGINEERING,英国,1991年 5月,Vol.63 No.773,69,70, 72,74 (58)調査した分野(Int.Cl.7,DB名) H03K 19/173

Claims (18)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のピンを有する集積回路であって、 複数のプログラム可能な論理ブロックを含み、各々のプ
    ログラム可能な論理ブロックは複数の入力ラインおよび
    複数の出力ラインを有し、 少なくとも1つのプログラム可能な論理ブロックは、前
    記複数のプログラム可能な論理ブロックの入力ラインに
    結合される複数の入力ラインを有し、かつ複数の出力ラ
    インを有するプログラム可能なアレイを含み、 さらに前記プログラム可能なアレイは積項クラスタを含
    み、前記積項クラスタの積項のうちの1つは前記積項ク
    ラスタとプログラム可能に接続可能および切り離し可能
    であり、さらに、 前記プログラム可能な論理ブロックの各々に作動的に結
    合され、かつ各々が複数の入力ラインと複数の出力ライ
    ンとを有する複数のプログラム可能な入力スイッチマト
    リックスバンクを含む、プログラム可能な入力スイッチ
    相互接続マトリックスを含み、 前記プログラム可能な入力スイッチマトリックスバンク
    の前記複数の入力ラインのうちの入力ラインは1つのプ
    ログラム可能な論理ブロックの前記複数の出力ラインの
    うちの出力ラインに結合され、 さらに、前記プログラム可能な入力スイッチマトリック
    スバンクは前記プログラム可能な入力スイッチマトリッ
    クスバンクの前記複数の入力ラインのうちの前記入力ラ
    インと前記プログラム可能な入力スイッチマトリックス
    バンクの前記複数の出力ラインのうちの出力ラインとを
    選択的に接続しかつ切り離し、 さらに前記プログラム可能な論理ブロックの各々および
    前記プログラム可能な入力スイッチ相互接続マトリック
    スに作動的に結合され、複数の入力ラインおよび複数の
    出力ラインを有する、プログラム可能な集中スイッチ相
    互接続マトリックスを含み、 前記プログラム可能な集中スイッチ相互接続マトリック
    スの前記複数の入力ラインのうちの入力ラインは前記複
    数のプログラム可能な入力スイッチマトリックスバンク
    の前記複数の出力ラインに結合され、 さらに、前記プログラム可能な集中スイッチ相互接続マ
    トリックスは、前記プログラム可能な集中スイッチ相互
    接続マトリックスの前記複数の入力ライン上の信号と前
    記複数のプログラム可能な論理ブロックの前記複数の入
    力ラインとを選択的に接続しかつ切り離す、集積回路。
  2. 【請求項2】 前記プログラム可能な入力スイッチマト
    リックスバンクは前記プログラム可能な入力スイッチマ
    トリックスバンクの前記複数の入力ラインと前記複数の
    出力ラインとに接続される複数のプログラム可能なマル
    チプレクサを含む、請求項1に記載の集積回路。
  3. 【請求項3】 前記プログラム可能な集中スイッチ相互
    接続マトリックスが前記プログラム可能な集中スイッチ
    相互接続マトリックスの前記複数の入力ラインおよび前
    記複数の出力ラインに接続される複数のプログラム可能
    なマルチプレクサを含む、請求項1に記載の集積回路。
  4. 【請求項4】 前記プログラム可能な論理ブロックの各
    々および1組の前記複数のピンに作動的に結合され、各
    々が複数の入力ラインおよび複数の出力ラインを有する
    複数の出力スイッチマトリックスバンクを含むプログラ
    ム可能な出力スイッチ相互接続マトリックスをさらに含
    み、 前記プログラム可能な出力スイッチマトリックスバンク
    の前記複数の入力ラインは1つのプログラム可能な論理
    ブロックの前記複数の出力ラインに結合され、 さらに、前記プログラム可能な出力スイッチ相互接続マ
    トリックスは前記1組の前記複数の入力ラインの各々の
    ラインを前記複数のピンのうちの前記1組のピンの中の
    1つのピンと選択的に接続しかつ切り離す、請求項1に
    記載の集積回路。
  5. 【請求項5】 前記プログラム可能な出力スイッチマト
    リックスバンクが、前記プログラム可能な出力スイッチ
    マトリックスバンクの前記複数の入力ラインと前記複数
    の出力ラインとに接続される複数のプログラム可能なマ
    ルチプレクサを含む、請求項4に記載の集積回路。
  6. 【請求項6】 前記少なくとも1つのプログラム可能な
    論理ブロックが、 各々が前記プログラム可能な入力スイッチマトリックス
    に作動的に結合され、少なくとも1つの入力ラインおよ
    び出力ラインを有する、複数のプログラム可能な論理マ
    クロセルと、 前記プログラム可能なアレイに作動的に結合され、かつ
    前記複数のプログラム可能な論理マクロセルの各々に選
    択的かつ作動的に結合されおよびそれから切り離される
    論理アロケータとをさらに含み、 前記論理アロケータは前記プログラム可能なアレイの複
    数の出力信号を前記複数のプログラム可能な論理マクロ
    セルの選択された入力ラインに振り分け、 前記論理アロケータは前記複数のプログラム可能な論理
    マクロセルの選択されていない入力ラインを前記プログ
    ラム可能なアレイから切り離す、請求項1に記載の集積
    回路。
  7. 【請求項7】 前記プログラム可能な論理マクロセルの
    各々が、 前記プログラム可能な論理マクロセルの入力ラインに作
    動的に結合され、入力端子および出力端子を有するプロ
    グラム可能な論理素子と、 前記プログラム可能な論理素子に作動的に結合される論
    理信号極性制御素子とを含み、 第1の動作モードでは、前記論理信号極性制御素子は入
    力信号に応答して第1の出力信号を発生し、 第2の動作モードでは、前記論理信号極性制御素子は前
    記入力信号に応答して第2の出力信号を発生し、前記第
    2の出力信号は前記第1の出力信号の反転である、請求
    項6に記載の集積回路。
  8. 【請求項8】 前記論理信号極性制御素子は、 極性制御素子の論理ゲートをさらに含み、前記極性制御
    素子の論理ゲートは、(i)前記プログラム可能な論理
    マクロセルの入力ラインに接続される第1の入力端子、
    (ii)第1の信号および第2の信号のうちの1つを伝
    えるラインに接続される第2の入力端子および(ii
    i)前記極性制御素子の論理ゲートの出力信号のための
    出力ラインを有し、前記出力ラインは前記プログラム可
    能な論理素子の前記入力端子に接続される、請求項7に
    記載の集積回路。
  9. 【請求項9】 前記第1および第2の信号のうちの1つ
    を伝える前記ラインが前記積項クラスタからの前記1つ
    のプログラム可能に接続可能および切り離し可能である
    積項に結合される、請求項8に記載の集積回路。
  10. 【請求項10】 前記積項クラスタの複数の積項のうち
    の各積項が前記積項クラスタとプログラム可能に接続可
    能でありかつ切り離し可能である、請求項1から9のい
    ずれかに記載の集積回路。
  11. 【請求項11】 前記少なくとも1つのプログラム可能
    な論理ブロックが、 複数のプログラム可能な論理マクロセルをさらに含み、
    各々のプログラム可能な論理マクロセルは前記プログラ
    ム可能な入力スイッチ相互接続マトリックスに作動的に
    結合され、かつ少なくとも1つの入力ラインおよび1つ
    の出力ラインを有し、さらに、 前記プログラム可能なアレイに作動的に結合されかつ前
    記複数のプログラム可能な論理マクロセルの各々と選択
    的かつ作動的に結合される論理アロケータをさらに含
    み、 前記論理アロケータは前記プログラム可能なアレイの複
    数の出力信号を前記複数のプログラム可能な論理マクロ
    セルの選択された入力ラインに結合し、 前記論理アロケータは前記複数のプログラム可能な論理
    マクロセルの選択されていない入力ラインを前記プログ
    ラム可能なアレイから切り離す、請求項10に記載の集
    積回路。。
  12. 【請求項12】 前記プログラム可能な論理マクロセル
    の各々が、 前記プログラム可能な論理マクロセルの入力ラインに作
    動的に結合され、かつ入力端子および出力端子を有する
    プログラム可能な論理素子を含む、請求項11に記載の
    集積回路。
  13. 【請求項13】 前記プログラム可能な論理素子が非同
    期プリセット端子および非同期リセット端子をさらに含
    む、請求項12に記載の集積回路。
  14. 【請求項14】 複数のプログラム可能な入力/出力
    (I/O)セルをさらに含み、各々のI/Oセルは前記
    複数のピンのうちの1つに接続される、請求項1に記載
    の集積回路。
  15. 【請求項15】 複数のプログラム可能な入力マクロセ
    ルをさらに含み、各々のプログラム可能な入力マクロセ
    ルは前記複数のピンのうちの1つに接続される入力ライ
    ンおよび前記プログラム可能な入力スイッチ相互接続マ
    トリックスに接続される出力ラインを有する、請求項1
    に記載の集積回路。
  16. 【請求項16】 各々の入力マクロセルが、 前記プログラム可能な入力マクロセルの入力ラインに接
    続される入力端子を有しかつ出力ラインを有するプログ
    ラム可能な記憶装置をさらに含む、請求項15に記載の
    集積回路。
  17. 【請求項17】 前記プログラム可能なアレイは前記複
    数のプログラム可能な論理ブロックの入力ラインからの
    み複数の入力信号を受けるようにされる、請求項1から
    16のいずれかに記載の集積回路。
  18. 【請求項18】 前記プログラム可能な集中スイッチ相
    互接続マトリックスは、前記プログラム可能な集中スイ
    ッチ相互接続マトリックスの前記複数の入力ライン上の
    信号と前記複数のプログラム可能な論理ブロックの前記
    複数の入力ラインとを選択的に接続しかつ切り離し、こ
    れにより前記複数のプログラム可能な論理ブロックは前
    記プログラム可能な集中スイッチ相互接続マトリックス
    からのみ入力信号を受ける、請求項1から17のいずれ
    かに記載の集積回路。
JP18530993A 1992-08-03 1993-07-27 集積回路 Expired - Fee Related JP3325657B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US924685 1992-08-03
US07/924,685 US5457409A (en) 1992-08-03 1992-08-03 Architecture of a multiple array high density programmable logic device with a plurality of programmable switch matrices

Publications (2)

Publication Number Publication Date
JPH06188723A JPH06188723A (ja) 1994-07-08
JP3325657B2 true JP3325657B2 (ja) 2002-09-17

Family

ID=25450548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18530993A Expired - Fee Related JP3325657B2 (ja) 1992-08-03 1993-07-27 集積回路

Country Status (5)

Country Link
US (2) US5457409A (ja)
EP (1) EP0584911B1 (ja)
JP (1) JP3325657B2 (ja)
KR (1) KR940004818A (ja)
DE (1) DE69304163T2 (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5477165A (en) * 1986-09-19 1995-12-19 Actel Corporation Programmable logic module and architecture for field programmable gate array device
US5198705A (en) 1990-05-11 1993-03-30 Actel Corporation Logic module with configurable combinational and sequential blocks
US5861760A (en) 1991-04-25 1999-01-19 Altera Corporation Programmable logic device macrocell with improved capability
US5530814A (en) * 1991-10-30 1996-06-25 I-Cube, Inc. Bi-directional crossbar switch with control memory for selectively routing signals between pairs of signal ports
US5636368A (en) * 1994-12-23 1997-06-03 Xilinx, Inc. Method for programming complex PLD having more than one function block type
US5781030A (en) * 1995-06-02 1998-07-14 Advanced Micro Devices, Inc. Programmable uniform symmetrical distribution logic allocator for a high-density complex PLD
US5521529A (en) * 1995-06-02 1996-05-28 Advanced Micro Devices, Inc. Very high-density complex programmable logic devices with a multi-tiered hierarchical switch matrix and optimized flexible logic allocation
US6531890B1 (en) * 1995-06-02 2003-03-11 Lattice Semiconductor Corporation Programmable optimized-distribution logic allocator for a high-density complex PLD
US5818254A (en) * 1995-06-02 1998-10-06 Advanced Micro Devices, Inc. Multi-tiered hierarchical high speed switch matrix structure for very high-density complex programmable logic devices
US5652529A (en) * 1995-06-02 1997-07-29 International Business Machines Corporation Programmable array clock/reset resource
US5589782A (en) * 1995-06-02 1996-12-31 Advanced Micro Devices, Inc. Macrocell and clock signal allocation circuit for a programmable logic device (PLD) enabling PLD resources to provide multiple functions
US5719516A (en) * 1995-12-20 1998-02-17 Advanced Micro Devices, Inc. Lock generator circuit for use with a dual edge register that provides a separate enable for each use of an input clock signal
US5799176A (en) * 1995-12-26 1998-08-25 Cypress Semiconductor Corp. Method and apparatus for providing clock signals to macrocells of logic devices
USRE37577E1 (en) 1996-01-11 2002-03-12 Cypress Semiconductor Corporation High speed configuration independent programmable macrocell
US5694058A (en) * 1996-03-20 1997-12-02 Altera Corporation Programmable logic array integrated circuits with improved interconnection conductor utilization
US6570404B1 (en) 1996-03-29 2003-05-27 Altera Corporation High-performance programmable logic architecture
US5894565A (en) * 1996-05-20 1999-04-13 Atmel Corporation Field programmable gate array with distributed RAM and increased cell utilization
US5742181A (en) * 1996-06-04 1998-04-21 Hewlett-Packard Co. FPGA with hierarchical interconnect structure and hyperlinks
KR100211987B1 (ko) * 1996-12-12 1999-08-02 이계철 2.5Gbps급 (STM-16) 입출력 링크와 링 망 연동 기능을 통합한 동기식 교차 연결 장치
US5959466A (en) * 1997-01-31 1999-09-28 Actel Corporation Field programmable gate array with mask programmed input and output buffers
US5936426A (en) 1997-02-03 1999-08-10 Actel Corporation Logic function module for field programmable array
US6150837A (en) * 1997-02-28 2000-11-21 Actel Corporation Enhanced field programmable gate array
US6289494B1 (en) 1997-11-12 2001-09-11 Quickturn Design Systems, Inc. Optimized emulation and prototyping architecture
US6191612B1 (en) * 1998-11-19 2001-02-20 Vantis Corporation Enhanced I/O control flexibility for generating control signals
US6629256B1 (en) 2000-04-04 2003-09-30 Texas Instruments Incorporated Apparatus for and method of generating a clock from an available clock of arbitrary frequency
US7796464B1 (en) 2003-06-27 2010-09-14 Cypress Semiconductor Corporation Synchronous memory with a shadow-cycle counter
US7797610B1 (en) * 2005-07-19 2010-09-14 Xilinx, Inc. Method and apparatus for virtual quad-port random access memory
US7502879B2 (en) * 2005-10-17 2009-03-10 Vimicro Corporation Integrated circuits with interchangeable connectors
US7893772B1 (en) 2007-12-03 2011-02-22 Cypress Semiconductor Corporation System and method of loading a programmable counter
US8640071B2 (en) * 2008-06-06 2014-01-28 Nec Corporation Circuit design system and circuit design method
US8762753B2 (en) * 2012-06-17 2014-06-24 Freescale Semiconductor, Inc. Power management circuit using two configuration signals to control the power modes of two circuit modules using two crosslinked multiplexers and a level shifter
KR102125593B1 (ko) 2013-02-13 2020-06-22 가부시키가이샤 한도오따이 에네루기 켄큐쇼 프로그래머블 로직 디바이스 및 반도체 장치

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4717912A (en) * 1982-10-07 1988-01-05 Advanced Micro Devices, Inc. Apparatus for producing any one of a plurality of signals at a single output
US4742252A (en) * 1985-03-29 1988-05-03 Advanced Micro Devices, Inc. Multiple array customizable logic device
US4963768A (en) * 1985-03-29 1990-10-16 Advanced Micro Devices, Inc. Flexible, programmable cell array interconnected by a programmable switch matrix
US5015884A (en) * 1985-03-29 1991-05-14 Advanced Micro Devices, Inc. Multiple array high performance programmable logic device family
US5151623A (en) * 1985-03-29 1992-09-29 Advanced Micro Devices, Inc. Programmable logic device with multiple, flexible asynchronous programmable logic blocks interconnected by a high speed switch matrix
US4758746A (en) * 1985-08-12 1988-07-19 Monolithic Memories, Inc. Programmable logic array with added array of gates and added output routing flexibility
US4771285A (en) * 1985-11-05 1988-09-13 Advanced Micro Devices, Inc. Programmable logic cell with flexible clocking and flexible feedback
US4789951A (en) * 1986-05-16 1988-12-06 Advanced Micro Devices, Inc. Programmable array logic cell
US4879481A (en) * 1988-09-02 1989-11-07 Cypress Semiconductor Corporation Dual I/O macrocell for high speed synchronous state machine
US5220214A (en) * 1991-04-22 1993-06-15 Altera Corporation Registered logic macrocell with product term allocation and adjacent product term stealing
US5191243A (en) * 1991-05-06 1993-03-02 Lattice Semiconductor Corporation Output logic macrocell with enhanced functional capabilities
US5204556A (en) * 1991-05-06 1993-04-20 Lattice Semiconductor Corporation Programmable interconnect structure for logic blocks
US5130574A (en) * 1991-05-06 1992-07-14 Lattice Semiconductor Corporation Programmable logic device providing product term sharing and steering to the outputs of the programmable logic device
US5260611A (en) * 1991-09-03 1993-11-09 Altera Corporation Programmable logic array having local and long distance conductors
US5260610A (en) * 1991-09-03 1993-11-09 Altera Corporation Programmable logic element interconnections for programmable logic array integrated circuits
US5359242A (en) * 1993-01-21 1994-10-25 Altera Corporation Programmable logic with carry-in/carry-out between logic blocks
US5258668A (en) * 1992-05-08 1993-11-02 Altera Corporation Programmable logic array integrated circuits with cascade connections between logic modules

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
S.KOPEC,Obtaining 70Mhz Performance in the MAX Architecture,ELECTRONIC ENGINEERING,英国,1991年 5月,Vol.63 No.773,69,70,72,74

Also Published As

Publication number Publication date
US5457409A (en) 1995-10-10
DE69304163T2 (de) 1997-03-20
EP0584911A1 (en) 1994-03-02
DE69304163D1 (de) 1996-09-26
JPH06188723A (ja) 1994-07-08
US5594365A (en) 1997-01-14
KR940004818A (ko) 1994-03-16
EP0584911B1 (en) 1996-08-21

Similar Documents

Publication Publication Date Title
JP3325657B2 (ja) 集積回路
US5811986A (en) Flexible synchronous/asynchronous cell structure for a high density programmable logic device
JP3325662B2 (ja) 集積回路
US5789939A (en) Method for providing a plurality of hierarchical signal paths in a very high-density programmable logic device
US4963768A (en) Flexible, programmable cell array interconnected by a programmable switch matrix
US5015884A (en) Multiple array high performance programmable logic device family
US6216257B1 (en) FPGA device and method that includes a variable grain function architecture for implementing configuration logic blocks and a complimentary variable length interconnect architecture for providing configurable routing between configuration logic blocks
US5436514A (en) High speed centralized switch matrix for a programmable logic device
US5357153A (en) Macrocell with product-term cascade and improved flip flop utilization
US5848285A (en) Macrocell having a dual purpose input register for use in a logic device
US5742180A (en) Dynamically programmable gate array with multiple contexts
US5426378A (en) Programmable logic device which stores more than one configuration and means for switching configurations
US6127843A (en) Dual port SRAM memory for run time use in FPGA integrated circuits
US6747480B1 (en) Programmable logic devices with bidirect ional cascades
JPH0256114A (ja) プログラマブル配線を介して結合されるアレイブロックを有するプログラマブル論理デバイス
JPH05218199A (ja) 複数の入力/出力(i/o)ピンを有する集積回路
US6462576B1 (en) Programmable logic device
US5969539A (en) Product term exporting mechanism and method improvement in an EPLD having high speed product term allocation structure
US6028446A (en) Flexible synchronous and asynchronous circuits for a very high density programmable logic device
US6263482B1 (en) Programmable logic device having macrocells with selectable product-term inversion

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020604

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20070705

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20080705

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20080705

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090705

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090705

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100705

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110705

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees