JPH04219021A - 複数個のピンを有する集積回路 - Google Patents
複数個のピンを有する集積回路Info
- Publication number
- JPH04219021A JPH04219021A JP3042012A JP4201291A JPH04219021A JP H04219021 A JPH04219021 A JP H04219021A JP 3042012 A JP3042012 A JP 3042012A JP 4201291 A JP4201291 A JP 4201291A JP H04219021 A JPH04219021 A JP H04219021A
- Authority
- JP
- Japan
- Prior art keywords
- programmable
- input
- logic
- output
- macrocell
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 239000011159 matrix material Substances 0.000 claims abstract description 168
- 238000003860 storage Methods 0.000 claims description 31
- 230000008878 coupling Effects 0.000 claims description 14
- 238000010168 coupling process Methods 0.000 claims description 14
- 238000005859 coupling reaction Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 13
- 238000005516 engineering process Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 64
- 230000006870 function Effects 0.000 description 32
- 238000003491 array Methods 0.000 description 30
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 29
- 229910052710 silicon Inorganic materials 0.000 description 29
- 239000010703 silicon Substances 0.000 description 29
- 238000013461 design Methods 0.000 description 23
- 230000001360 synchronised effect Effects 0.000 description 15
- 230000008901 benefit Effects 0.000 description 6
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 description 5
- 230000000295 complement effect Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 239000002184 metal Substances 0.000 description 5
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 4
- 230000001934 delay Effects 0.000 description 4
- 230000009977 dual effect Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000036316 preload Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 102100023696 Histone-lysine N-methyltransferase SETDB1 Human genes 0.000 description 1
- 101710168120 Histone-lysine N-methyltransferase SETDB1 Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000002844 melting Methods 0.000 description 1
- 230000008018 melting Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17704—Logic 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
- H03K19/17708—Logic 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 using an AND matrix followed by an OR matrix, i.e. programmable logic arrays
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17704—Logic 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17724—Structural details of logic blocks
- H03K19/17728—Reconfigurable logic blocks, e.g. lookup tables
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17736—Structural details of routing resources
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17736—Structural details of routing resources
- H03K19/1774—Structural details of routing resources for global signals, e.g. clock, reset
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17736—Structural details of routing resources
- H03K19/17744—Structural 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)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
Abstract
め要約のデータは記録されません。
Description
オム・アグラワル(OmAgrawal)氏他の「プロ
グラマブルスイッチマトリックスにより相互接続された
フレキシブル、プログラマブルセルアレイ(Flexi
ble,Programmable Cell A
rray Interconnected By
AProgrammable Switch M
atrix,)」と題され同一の譲受人に譲渡された米
国特許出願連続番号第07/243,574号の一部継
続出願であり、前記第07/243,574号は199
0年xx月xx日に米国特許番号第x,xxx,xxx
号として発行され、かつそれは1988年4月7日出願
のオム・アグラワル氏の「マルチプルアレイカストマイ
ズ可能論理アレイ(Multiple Array
Custonizable LogicArray
)」と題された米国特許出願連続番号第07/178,
707の一部継続出願であって、前記第07/178,
707号は1990年xx月xx日に米国特許番号第x
,xxx,xxx号として発行され、かつそれは198
5年3月29日出願のオム・アグラワル氏の「マルチプ
ルアレイカストマイズ可能論理アレイ」と題され198
8年5月3日に米国特許番号第4,742,252号と
して発行された米国特許出願連続番号第06/717,
640の継続出願であった。
に関係するグループまたはセルにおいて配列され、かつ
ユーザによりプログラム可能なスイッチマトリックスに
よって相互接続できるプログラム可能な集積回路論理装
置に関するものである。
ログラマブルチップを含むいくつかの集積回路パッケー
ジが利用可能である。これらの集積回路パッケージは、
複数個のピンと、ピンをプログラマブルチップ上の回路
の入力および出力リード線とインターフェイスするため
のアーキテクチュアと、ピンをプログラマブルチップを
ユーザに選択された回路の中に構成するために用いられ
るチップ上の補助回路とインターフェイスするための別
のアーキテクチュアとを含む。このように、これらのフ
ィールドプログラマブル論理装置はユーザが容易に入手
できる装置で集積回路チップ上の機能をプログラムする
かまたは修正することを許容して、チップによって行わ
れる論理関数をユーザにより所望されるものに構成する
。しかしながら、先行技術のプログラマブル論理アレイ
(PLA)、プログラマブル論理装置(PLD)および
プログラマブルゲートアレイは、フィールドプログラム
可能性と引換にユーザに束縛を課する。
ードコンバータ、命令デコーダ、状態マシンおよび他の
機能のためにしばしば用いられるプログラマブル論理ア
レイにおいて、ユーザに特定された機能に対してプログ
ラムされ得る論理ANDゲートおよび論理ORゲートの
アレイが与えられる。プログラマブル論理アレイの各出
力関数(出力信号)は選択された積(ANDゲート出力
信号)の和(ORゲート出力信号)であり、かつ各積(
ANDゲート出力信号)は選択された入力信号の積であ
る。プログラミングは、それぞれ、回路入力ラインとA
NDゲート入力ラインとの間およびANDゲートの出力
ラインとORゲートの入力ラインとの間にプログラマブ
ルアレイまたはマトリックスを設けることにより達成さ
れる。PLAはアレイの導体を相互接続する可溶リンク
をとばすかまたはとばさないことによってプログラムさ
れる。
トのサブグループからの出力ラインはORゲートの入力
ラインにプログラム不可能に接続される。これのような
プログラマブルアレイ論理(PAL)装置は米国特許番
号第4,124,899号において開示され、かつここ
で参照することによって援用される。PAL設計は、製
造歩留まりにおける増加および従来のPLAに勝る製造
費用の低下を許容する集積回路チップの大きさにおける
縮小を与える。
らに高めるために、ORゲートアレイからの各出力信号
は、ユーザに、登録された出力信号かまたは組合わせ出
力信号のいずれかを選択させるプログラマブル手段によ
って処理される。さらに、出力信号はアクティブハイま
たはアクティブロー信号のいずれかとして構成され得る
。PLAまたはPAL回路のいずれかの出力ライン11
上で先行技術において用いられる出力マクロセル10の
例が図1に示される。プログラマブル論理回路からの出
力ライン11は、プログラマブルマルチプレクサ19の
第1の入力ライン13と同様にレジスタ12のD入力端
子に接続される。レジスタ12のQ出力端子はマルチプ
レクサ19の第2の入力ライン14を駆動する。ライン
21上のヒューズ20の状態により決定されるマルチプ
レクサ19からの出力信号は、排他的ORゲート25の
第1の入力端子を駆動する。電源電圧は抵抗器31を介
してマルチプレクサ19の入力選択ライン21およびヒ
ューズ20の第1の端部に与えられる。ヒューズ20の
第2の端部は接地される。したがって、もしヒューズ2
0がそのままであれば、論理ゼロ信号が入力選択ライン
21に与えられる。しかしながら、もしヒューズ20が
とばされれば、入力選択ライン21上の信号は論理1で
ある。それゆえに、マルチプレクサ19はライン13上
の信号またはライン14上の信号のいずれかを出力ライ
ン26に結合する。
ューズ23により決定される。もしヒューズ23がその
ままであれば、論理ゼロが排他的ORゲート25の第2
の入力端子に与えられて、ライン26上の信号はゲート
25により反転されない。逆に、もしヒューズ23がと
ばされれば、論理1が排他的ORゲート25の第2の入
力端子に与えられて排他的ORゲート25はライン26
上の信号を反転する。ライン27は排他的ORゲート2
5をトライステートにするために用いられる。
フィードバック信号をプログラマブルマルチプレクサ1
8のライン17上に与えるための手段を有する。プログ
ラマブルマルチプレクサ18は、排他的ORゲート25
の出力ライン28に接続された第1の入力ライン22と
、レジスタ12のQバー(Qの反転記号を意味し、図面
では、Qの上に横棒(−)が付してある。)出力端子に
接続された第2の入力ライン15とを有する。マルチプ
レクサ19に対して先に説明されたように、マルチプレ
クサ18の入力選択ライン16上の信号はヒューズ20
によって制御される。マルチプレクサ18は、3つの信
号源、(1)レジスタ12からの反転された登録された
出力信号、(2)ピン30上の入力信号、または(3)
排他的ORゲート25からの信号、を有する。もしライ
ン27上の信号が排他的ORゲート25をトライステー
トにすれば、ピン30上の入力信号はライン29、22
を通り過ぎてマルチプレクサ18の第1の入力端子まで
送られる。その代わりに、排他的ORゲート25の出力
信号はライン28、22を通り過ぎてマルチプレクサ1
8の第1の入力端子に送られる。マルチプレクサ18の
出力ライン17はこのように、反転されたもしくは反転
されない登録されたフィードバック信号、反転されたも
しくは反転されない組合せフィードバック信号または入
力信号のいずれかを出力マクロセル10が接続される論
理回路に与える。出力マクロセル10は米国特許4,7
17,912においてさらに詳細に論議され、それはこ
こで参照することによって援用される。
グラマブルAND論理アレイへの入力ラインの数を増や
すために、入力ラインの数に対する割合でアレイの大き
さを増加する必要があるということである。したがって
、PAL回路の大きさは、集積回路技術およびそのよう
な回路を製造するための費用の両方によって制限される
。また、バイポーラ論理アレイをプログラムするために
用いられるヒューズは一度だけプログラムされ得るので
、論理アレイはユーザによるプログラミングの前に完全
に検査され得ない。
/出力能力、レジスタの数および積項の分布によって決
定される。アドレスデコード、多重化およびデマルチプ
レクシングのような広いゲート組合せ機能と、ワイドス
テートマシンおよびシフトレジスタ型機能のような連続
的な機能との両方に対して適切な従来のPAL装置は、
広い入力能力、すなわち多数の入力ライン、および適度
に大きいレジスタ能力の両方を必要とする。従来のモノ
リシックPAL装置の入力能力を増加することは、先に
説明されたようにより大きいアレイの大きさをもたらし
、それは順により大きいシリコンダイ、より高い費用、
より遅い性能および効果的でないアレイ利用をもたらす
。
LD)は、溶融論理アレイの一度のプログラム可能性限
界を克服し、かつ典型的には区分化された構造を用いて
性能を高める。1つの先行技術のEPLDがブロック図
として図2、図3および図4に示される。装置は、48
個の入力/出力(I/O)ピン40と、12個の専用入
力ピン41と、クロック入力ピンまたは付加的な専用入
力ピンのいずれかとして用いられてもよい4個のピン4
2とを有する。各I/Oピン40上の信号は、入力信号
としてマクロセル43に与えられるかまたは出力信号と
してマクロセル43により発生されるかのどちらかであ
る。マクロセル43は3つの一般的な型、一般的マクロ
セル43、大域マクロセル60および向上されたマクロ
セル61に分けられる。
43は、I/Oピン40からの入力信号をフィードバッ
ク選択エレメント47を介して局部バス44およびプロ
グラマブルANDアレイ46に与える。その代わりに、
I/Oアーキテクチュア制御セル48によってプログラ
マブルANDアレイ46からのライン49a−49h上
の8つの積信号から発生された信号は、バッファ49を
介してI/Oピン40に通され、かつフィードバック選
択エレメント47を介して局部バス44およびプログラ
マブルANDアレイ46に通される。このように、AN
Dアレイ46は局部フィードバックまたはピン40上の
入力信号のどちらかを与えられるが、両方は与えられな
い。さらに、プログラマブルANDアレイ46は、(1
)局部象限バス44上のマクロセルからの入力信号、(
2)マクロセル60A0 −60A3 、60B0 −
60B3 、60C0 −60C3 ならびに60D0
−60D3 からの大域バス45からのフィードバッ
ク信号、および(3)先に説明されたような16個の専
用入力ピン41、42上の信号を受取る。局部マクロセ
ルプログラマブルANDアレイ46は8つの積項に制限
され、かつI/Oアーキテクチュア制御セル48は先に
説明されたように、組合せまたは登録出力信号を発生す
るための手段を設ける。
域マクロセル60のプログラマブルANDアレイ46は
一般的なマクロセル43のプログラマブルANDアレイ
46と同じである。しかしながら、大域マクロセル60
のプログラマブルANDアレイ46への入力信号は、大
域バス45に直接与えられるI/Oピン40からの信号
と、局部バス44に与えられるI/Oアーキテクチュア
制御セル48からの信号との両方を含む。向上されたマ
クロセル61(図示せず)は、これらのセルが論理アレ
イを介して増加された速度性能を有するので、臨界組合
せ論理遅延経路に対して利用される。
、プログラマブル論理アレイ50は、各半分が14個の
マクロセル51、3個のI/Oアーキテクチュア制御セ
ル53および1個の埋込みマクロセル52を有する状態
で、2つの対称的な部分50A、50Bとして構成され
る。埋込みマクロセル52は、埋込みマクロセル52が
I/Oピン40には接続されておらず、それゆえ2個の
マクロセルを大域バスおよび局部バスにインターフェイ
スするためだけに用いられることを除けば、グループI
/Oアーキテクチュア制御セル51と類似している。
れたグループ、51h−51k、51x−51aaは、
論理アレイからの16個の付加的な積項の合計を共用し
得る。しかしながら、共用は、付加的な積項が所与の時
間において装置の一方の側にだけ利用可能なように、マ
クロセルの隣接する組の間で起こらなければならない。
技術を用いて実現される。また、EPLD技術は、工場
において一定の構成に対してだけ検査され得るヒューズ
がとんだプログラマブル装置と違って、EPLD内のす
べてのエレメントの工場試験を許容する。EPLDにお
けるプログラマブル接続は典型的に、短い波長の紫外(
UV)光を用いて消去されるCMOSフローティングゲ
ートアーキテクチュアを利用する。
超える利点を提供するが、UV EPLDは、装置が
日光または蛍光性の照明のいずれかの下に置いておかれ
れば不注意に消去され得る。さらに、プログラマブルゲ
ートの数、装置におけるコンポーネントの利用および装
置の融通性は装置のアーキテクチュアにより制限される
。 特に、図2、図3、図4、図5および図6ならびに図7
および図8に示された装置は区分化されたPALアプロ
ーチを利用するが、PAL構造の各々は比較的大きい。 構造の大きさはより小さい構造と比較してより低い性能
をもたらし、かつまたアレイの効率的でない利用をもた
らす。より大きいアレイにおいて、特定の積項の1つま
たは2つの入力ラインだけが用いられるか、または特定
の出力マクロセルの1個または2個の積項だけが用いら
れるのであれば、残余の入力ラインまたは残余の積項は
本質的に浪費されるかまたは使われない。
るEPLDは68ピンパッケージにおいて48個のレジ
スタを有し、かつ図7および図8においてEPLDは4
0ピンパッケージにおいて28個のレジスタを有する。 それゆえに、パッケージピンの数と比較したレジスタの
数は制限され、かつその結果登録された応用に対するこ
れらの装置の機能性は制限される。ゆえに、これらのE
PLDの速度および機能性は装置のアーキテクチュアに
より相互に折れ合って解決される。
マブル論理アレイへの代替例はプログラマブルゲートア
レイであり、ここにおいて図9に示されるような構成可
能な論理ブロック70は図10に示されるようなスイッ
チマトリックスを介してインターフェイスされる。各構
成可能な論理ブロック70は、4つの入力ライン70A
、70B、70C、70Dならびに2つの出力ライン7
0G、70H、クロック入力ライン70K、記憶素子7
1および論理ブロック内での信号経路指定のためのいく
つかのプログラマブルマルチプレクサを有する組合せ論
理セル73を有する。組合せ論理セル73は、4つの変
数までのブーリアン論理関数を実現するために表検索メ
モリを用いる。プログラマブルマルチプレクサは、通過
トランジスタと関連する揮発性メモリセルを利用してマ
ルチプレクサのための構成信号を与える。各スイッチマ
トリックス72は、4つの水平な金属セグメントと5つ
の垂直な金属セグメントとをインターフェイスする。 スイッチマトリックスにおけるスイッチは、揮発性メモ
リセルにおける構成ビットにより制御される通過トラン
ジスタである。
ピンPLCCパッケージにおいて112のフリップフロ
ップを設け、かつ84ピンPGAパッケージにおいて1
74のフリップフロップを設ける。このように、これら
の装置は上述されたEPLDを超えてレジスタの数を大
いに増加するが、各構成可能な論理ブロック73は比較
的小さいので、装置は広いゲーティング応用に対して効
率的ではない。それゆえに、広いゲーティングを必要と
する応用は、直列の多重構成可能論理ブロックをカスケ
ードにすることを必要とし、それは順に減少された性能
をもたらす。
高い集積化、増加された性能のためのより高速のシリコ
ン装置、より低い費用のシステム応用を提供する。高密
度のPAL類似装置において、より高い速度を達成する
ことは極めて臨界的である。しかしながら、高速プログ
ラマブルアレイおよび大きいレジスタ能力を与える高密
度PAL装置は現在入手不可能である。さらに、上述の
ように、入手可能な先行技術のプログラマブル論理装置
は、機能性、シリコンダイ大きさおよび性能の最適バラ
ンスを達成することがでない。
LD)は、機能性、シリコンダイ大きさおよび性能の間
の最適バランスを与える高密度の区分化されたPAL類
似装置である。高密度プログラマブル論理装置は、スイ
ッチマトリックスにより相互接続された2つまたはそれ
より多い同一のプログラマブル論理回路(ブロック)を
有する。一実施例において、単一集積回路に含まれる4
つの同一のプログラマブル論理ブロックがスイッチマト
リックスにより相互接続されるが、別の実施例において
は2つの同一のプログラマブル論理ブロックがスイッチ
マトリックスにより相互接続される。この区分化された
論理構造は、先行技術のプログラマブル論理装置におい
て入手できた機能性よりより大きい機能性を維持する一
方で、高速性能を提供する。
各プログラマブル論理ブロックに対してプログラマブル
マルチプレクサのバンクを有する。各バンクにおけるマ
ルチプレクサへの入力信号は、この発明の集積回路を含
む集積回路パッケージのピン上の入力信号およびプログ
ラマブル論理ブロックからの出力信号から選択される。 ゆえに、スイッチマトリックスは、様々な論理回路への
入力手段およびフィードバック手段の両方として機能を
果たす。
クサの各々は、入力選択信号をマルチプレクサに与える
構成アーキテクチュアセルを有する。入力選択信号は、
マルチプレクサへの入力ライン上の信号の1つがマルチ
プレクサの出力ラインまでマルチプレクサを通過し、か
つ残余の入力ライン上の他の信号が出力ラインから切り
離されるようにマルチプレクサを構成する。
、スイッチマトリックスを介してのみ互いに通信する。 さらに、プログラマブル論理ブロックはすべての入力信
号をスイッチマトリックスから受取る。このように、プ
ログラマブル論理ブロックは、同じ集積回路チップ上の
独立したプログラマブル論理装置として眺められてもよ
い。
マブル論理ブロックは、プログラマブル論理アレイ、プ
ログラマブル論理アロケータ、プログラマブル論理マク
ロセルおよびプログラマブルI/Oマクロセルを含む。 スイッチマトリックスからプログラマブル論理ブロック
への入力ラインはプログラマブル論理アレイを駆動する
。プログラマブル論理アレイからの信号がプログラマブ
ル論理装置のユーザにより要求されるように論理マクロ
セルに分布されるように、論理アロケータはプログラム
可能である。論理マクロセルは論理アロケータからの信
号を登録信号または組合せ信号のどちらかとして構成す
る。論理マクロセルからの出力信号は、I/Oマクロセ
ルに与えられ、かつスイッチマトリックスにフィードバ
ックされる。I/Oマクロセルは論理マクロセル信号を
I/Oピンに選択的に伝える。その代わりに、I/Oピ
ンが入力信号をスイッチマトリックスアレイに与え、か
つ論理マクロセルがI/Oピンから結合を外されるよう
に、I/Oマクロセルは出力イネーブル信号を用いて構
成され得る。
ータエレメントを含む。各ルータエレメントはプログラ
マブル論理アレイからの選択された数の出力ラインに接
続される。これらの出力ラインは論理ゲートへの入力ラ
インである。論理ゲートからの出力ラインはプログラマ
ブルデマルチプレクサの入力端子を駆動する。プログラ
マブルデマルチプレクサは複数個の出力ラインを有し、
その各々はプログラマブル論理マクロセルのうちの1個
の入力ラインに接続される。入力選択信号に応答して、
プログラマブルデマルチプレクサは入力ライン上の信号
をそこを介して選択された出力ラインに通す。したがっ
て、プログラマブル論理アレイからの出力ラインはどれ
も永続的には論理マクロセルに接続されない。したがっ
て、I/Oピンが入力ピンに対して用いられるとき、そ
のピンに関連するプログラマブル論理マクロセルは埋込
レジスタとして用いられてもよく、またはその代わりに
、もしマクロセルが用いられなければ、プログラマブル
論理アレイからの信号は他の論理マクロセルに送られて
積項はどれも無駄にされない。
すことは論理マクロセルの埋込みレジスタとしての使用
を復元するが、そのような結合を外すことはユーザ設計
のより高密度の装置への尺度決め可能性を解決しない。 尺度決め可能性に対するより重要な問題は、マクロセル
の数が増加するにつれて積項アレイの大きさが比例して
増加しないようにマクロセルから積項アレイの結合を外
すことである。
ル論理ブロックにおけるすべてのマクロセルの間で可変
分布に割当てる。このように、論理アロケータは、実質
的に積項アレイから使用されないマクロセルの結合を外
し、かつ一実施例においては、最小速度不利益で論理マ
クロセル当たり12から16までの積項を割当てる。
スイッチマトリックスを介して通されるすべての信号に
対して、固定された、均一の、予測可能でかつ経路に関
係しない時間遅延を与える。さらに、プログラマブル論
理アレイはスイッチマトリックスからの信号のみを受け
るので、スイッチマトリックスは効果的に、論理マクロ
セル、I/Oマクロセルおよびアレイ大きさから積項ア
レイの結合を外す。
び各プログラマブル論理ブロック内のプログラマブル相
互接続は、スイッチマトリックス、マクロセルおよびI
/Oピンから積項アレイの結合を外すために用いられる
。この結合を外すことは先行技術のプログラマブル論理
装置において入手できた融通性よりより大きな融通性を
与え、かつこの発明のPLDがユーザの応用に対して効
率的にかつ早く構成されることを許容する。
内部資源の結合を完全に外すことは、先行技術のプログ
ラマブル論理装置群と明確な対照をなす。
する。さらに、番号はいくつかの同様の素子を表わして
もよい。たとえば、基礎番号140はこの発明のマクロ
セルのグループを表わす。番号140Aはマクロセル1
40のグループ内のマクロセルの特定の組を表わし、か
つ番号140A0 または140A0はマクロセル14
0Aの組における特定のマクロセルを表わす。この発明
の異なる部分における同じコンポーネントは同じ基礎番
号、ダッシュ、それから部分を識別する番号を有する。 したがって、基礎番号はいくつかの同様の素子、ライン
、コンポーネントまたは他の関連する物体を表わす速記
表記である。
ルチプルアレイプログラマブル論理装置310のアーキ
テクチュアの図を示す。装置310は、複数個の第1の
入力項(信号)を受取りかつ複数個の第1の出力項(信
号)を発生するための第1のプログラマブルアレイ手段
311と、複数個の第2の入力項を受取りかつ複数個の
第2の出力項を発生するための第2のプログラマブルア
レイ手段312とを含む。
、連続的な状態マシン機能のためにライン313をわた
る複数個の第1の入力項および好ましくはライン314
をわたる1つのクロック入力項を受取り、かつユーザに
よりプログラムされるように第1の入力項およびクロッ
ク項に応答してライン315をわたる複数個の第1の積
項を発生するANDアレイ316を含む。ANDアレイ
316は、プログラマブルアレイ論理ハンドブック(P
rogrammable Array Logic
Handbook)と題され、アドバンスト・マイ
クロ・ディバイシズ(Advanced Micro
Devices),Inc.により出版され(19
88)、かつカリフォルニア、サニィベイル(Sunn
yvale)、アドバンスト・マイクロ・ディバイシズ
,Inc.を介して入手できる出版物において説明され
るような、好ましくはフィールドプログラマブルAND
アレイである。もちろん、固定ANDアレイを含むAN
Dアレイの他の実施例が所望に応じて利用されてもよい
。
おいて、ライン315上の第1の積項はORアレイ31
7に与えられる。ORアレイ317は、ライン315上
の第1の積項に応答してライン318上に複数個の第1
の積和項を発生する。ORアレイは、上述のプログラマ
ブルアレイ論理ハンドブックにおいて説明されるように
固定ORアレイまたはプログラマブルORアレイであっ
てもよい。
プログラマブルアレイ手段311のためにライン320
上に出力論理項を発生する複数個の出力セル319に与
えられる。さらに、出力セル319はライン321上に
フィードバック項を発生してもよく、それはANDアレ
イ316にフィードバックされ、かつユーザによりプロ
グラムされるように第1の積項315の発生において利
用される。第2のプログラマブルアレイ手段312は、
第1のプログラマブルアレイ手段311と同様のコンポ
ーネントからなる。このように、第2のプログラマブル
アレイ手段312は、固定またはプログラマブルのどち
らであってもよいANDアレイ322と、固定かまたは
プログラマブルのどちらかであるORアレイ323と、
複数個の出力セル324を含む。第2のプログラマブル
アレイ手段312は、連続的な状態マシン機能のために
、入力としてライン325上の複数個の第2の入力項と
、好ましくはライン326上の1つのクロック入力項と
を受取る。第2のプログラマブルアレイ手段312のA
NDアレイ322の出力信号は複数個の第2の積項32
7を含む。ORアレイ323の出力信号はライン328
上で複数個の第2の積和項を含む。複数個の第2の積和
項は出力セル324を介して通され、かつライン329
上に複数個の第2の出力項として与えられる。出力セル
324は、ユーザによりプログラムされたようなライン
327上の第2の積項の発生の際に利用するために、A
NDアレイ322に逆戻りする供給のためのライン33
0をわたるフィードバック項を発生してもよい。
よび第2のプログラマブルアレイ手段312は、従来の
積和項論理設計を容易にするために、固定ORアレイと
とものプログラマブルANDアレイ、プログラマブルO
Rアレイとともの固定ANDアレイ、プログラマブルO
RアレイととものプログラマブルANDアレイ、または
積和項を発生するための他のプログラマブルアレイ構成
を含むように好ましくはそれぞれ構成されてもよいとい
うことが認められるべきである。
よび第2のプログラマブルアレイ手段312に対する出
力セル319および出力セル324はそれぞれ、好まし
くは、1984年9月28日出願の「ダイナミックに制
御可能な出力論理回路(DYNAMICALLY C
ONTROLLABLE OUTPUT LOGI
CCIRCUIT)」と題された先行の米国特許連続番
号第656,109号において開示されたような出力セ
ルか、または上で参照されたプログラマブルアレイ論理
ハンドブックにおいて開示された出力構成のうちのいず
れかからなる。
314からの複数個の第1の入力項、ライン320から
の複数個の第1の出力項、ライン325、326からの
複数個の第2の入力項およびライン329からの複数個
の第2の出力項のサブセットを選択的に相互接続するた
めの手段350を含む。選択的に相互接続するための手
段350は、第1のプログラマブルアレイ手段311が
第2のプログラマブルアレイ手段312と直列に接続さ
れるか、または第1のプログラマブルアレイ手段311
が第2のプログラマブルアレイ手段312と並列に接続
されるか、もしくは相互接続のいずれかの組合せで接続
されるように装置310が構成されることを許容する。 特定の実施例は、複数個の第1の入力項、複数個の第1
の出力項、複数個の第2の入力項および複数個の第2の
出力項のうちのすべてまたはいずれかの部分が製造業者
により所望される融通性を与えるために所望に応じて送
られてもよいように、入力項および出力項のサブセット
を相互接続してもよい。
に相互接続するための手段350は、ライン352、3
53上の入力選択信号に応答し、複数個の信号から複数
個の第1の入力項としてまたは複数個の第2の入力項と
して1組の信号を選択しかつ与えるための入力多重化手
段351(MUX I1 、MUX I2 )を含
む。入力多重化手段351(図11)は、入力ピン35
4から与えられる第1組のクロック信号と、第1組の入
力/出力ピン355から外部的にチップに与えられる第
1組の入力信号と、第2組の入力/出力ピン356(こ
れらのI/Oピンは典型的には装置310に類似した別
の装置(図示せず)からの出力信号により駆動される)
から与えられる第2組の入力信号と、入力ピン357か
ら与えられる第2組のクロック信号と、少なくともライ
ン320からの複数個の第1の出力項およびライン32
9からの複数個の第2の出力項のサブセットに応答して
発生されてそれぞれライン358および359を介して
与えられる1組出力信号とを含む複数個の信号から選択
する。
び353上の入力選択信号は、少なくともそれぞれライ
ン315および327からの第1および第2の積項のサ
ブセット、もしくは少なくともそれぞれライン318お
よび328からの第1および第2の積和項のサブセット
、または第1のプログラマブルアレイ手段311および
第2のプログラマブルアレイ手段312により発生され
る積項および積和項のいずれかの組合せとして与えられ
る。
信号はフィールドプログラマブルであってもよい。この
ように、図11は、ヒューズプログラマブル信号発生器
391から入力マルチプレクサMUX I2 へライ
ン390上に与えられる入力選択信号を示す。ヒューズ
プログラマブル信号発生器391は、ライン390から
接地して接続されたヒューズ392と、ライン390か
ら電源電圧Vccに接続された抵抗器393とを含む。 ヒューズ392は、上で参照されたプログラマブルアレ
イ論理ハンドブックの中で説明されるようなフィールド
プログラマブルヒューズである。
51は、ライン352上の入力選択信号に応答し、ライ
ン313、314上の入力信号としての供給のために1
組の信号を選択するための第1の入力マルチプレクサM
UX I1 と、ライン353または390上の入力
選択信号に応答し、ライン325、326上の入力項信
号としての供給のために1組の信号を選択するための第
2の入力マルチプレクサMUX I2 とからなる。 示される実施例において、第1の入力マルチプレクサM
UX I1 および第2の入力マルチプレクサMUX
I2 の両方は、入力項として選択しかつ与えるた
めにピン354、355、356および357から同じ
組の信号を与えられる。第1の入力マルチプレクサMU
X I1 はライン313、314上に複数個の第1
の入力項を与える。第2の入力マルチプレクサMUXI
2 はライン325、326上に複数個の第2の入力項
を与える。
また、ライン361、362上の出力選択信号に応答し
、少なくともライン320からの複数個の第1の出力項
およびライン329からの複数個の第2の出力項のサブ
セットから選択された複数個の信号から選択された1組
の信号をそれぞれライン363および364上に出力信
号として選択しかつ与えるための出力多重化手段360
を含む。ライン363、364上の出力信号は、集積回
路装置310から出力ドライバ365、366を外部か
ら介してI/Oピンの組367、368に与えられる。
号は、ライン315上の第1組の積項、ライン327上
の第2組の積項、ライン318上の第1組の積和項、ラ
イン328上の第2組の積和項またはユーザに適合する
ような積項および積和項のいずれかの組合せから発生さ
れ得る。
信号はヒューズプログラマブルであってもよい。このよ
うに、図11はライン396上に出力選択信号を与える
ヒューズプログラマブル信号発生器395を示す。ヒュ
ーズプログラマブル信号発生器395は、ライン396
から接地して接続されたヒューズ397と、ライン39
6から電源電圧Vccに接続された抵抗器398とを含
む。ヒューズ396は上述のプログラマブルアレイ論理
ハンドブックにおいて説明されるようにプログラム可能
である。
化手段360は、第1の出力マルチプレクサMUX
O1 および第2の出力マルチプレクサMUX O2
からなる。第1の出力マルチプレクサMUX O1
はライン361上の出力選択信号に応答し、ライン3
63上の出力信号としての供給のために1組の信号を選
択するが、第2の出力マルチプレクサMUX O2
はライン362または396上の出力選択信号に応答し
、ライン364上の出力信号としての供給のために1組
の信号を選択する。
び368と示された4組のI/Oピンを示す。これらの
組のI/Oピンの各々は、所望に応じてライン363お
よび364上に発生された出力信号の数ならびにI/O
ピン355、356から与えられた入力信号の数に対応
するいかなる数のI/Oピンを含んでもよい。4組のI
/Oピン355、356、367および368は必ずし
も排他的ではないことに注目されるべきである。たとえ
ば、出力マルチプレクサMUX O1 からライン3
63を介して出力信号を受取るI/Oピン367の組は
また、ライン358を介して入力マルチプレクサMUX
I1 およびMUX I2 に入力信号を与える
ように接続される。このように、この発明に従う装置3
10に対するアーキテクチュアは、そこにおいてI/O
ピンのすべてまたはいずれかのサブセットが出力信号お
よび/または供給入力信号を受取るために構成されるよ
うに配置されてもよい。
ク入力ピン354の組およびクロック入力ピン357の
組はいかなる数のクロック入力を含んでもよい。
ピン354には2個のクロック入力ピンがあり、第2組
のクロック入力ピン357においては2個のクロック入
力ピンがあり、かつ355、356、367および36
8と示されたようなI/Oピンの組を与えるために40
個のI/Oピンが構成される。
たは出力項として利用可能な信号および論理項の相互接
続性を提供する。これは、たとえば、第2の入力マルチ
プレクサMUX I2 により少なくともライン32
5、326上の複数個の第2の入力項のサブセットとし
て選択可能なライン358を介する信号の組の1つとし
てライン363からの出力信号を与えることによって、
第1のプログラマブルアレイ手段311が第2のプログ
ラマブルアレイ手段312と直列に動作するように装置
310を構成する能力をユーザに与える。もちろん、第
2のプログラマブルアレイ手段312は第1のプログラ
マブルアレイ手段311に関して同じ態様で接続されて
もよい。その代わりに、第1のプログラマブルアレイ手
段311および第2のプログラマブルアレイ手段312
は、各々が入力ピン356の組により与えられる入力信
号のような同じ入力信号をそれぞれライン313、31
4および325、326上の入力項として受取り、かつ
それぞれライン320および329を介して複数個の出
力項を発生し、それが選択的に1組のI/Oピン367
、368に与えられるように並列に接続されてもよい。
がこの発明に従う選択的に相互接続するための手段35
0を利用して作られ得る。たとえば、ライン363から
の出力信号のサブセットがライン358を介して第2の
入力マルチプレクサMUXI2 により選択可能な入力
信号の組の一部として与えられてもよい。このように、
第2のプログラマブル論理アレイ手段312により発生
される論理項の一部は第1のプログラマブル論理アレイ
手段311および第2のプログラマブル論理アレイ手段
312の直列接続に応答して発生されるであろうが、第
2のプログラマブルアレイ手段312により発生される
論理項のうち他のものは第1のプログラマブルアレイ手
段311により発生される論理項と並列にまたは無関係
に発生されるであろう。この実施例において、たとえば
第1のプログラマブルアレイ手段311から出力項を受
取るI/Oピン367は、第2のプログラマブルアレイ
手段312からの出力信号を与えるI/Oピン368よ
り少ない数のピンを含んでもよい。見られるように、こ
の発明の融通性は極めて貴重である。
置100の代替の好ましい実施例は、親の米国特許番号
第4,742,252(米国特許番号第4,742,2
52の図2)において論じられ、かつここで参照するこ
とによって援用する。
理象限(セル)100A、100B、100C、100
Dおよび1つのプログラマブルスイッチマトリックス1
01を有する集積回路チップを含む集積回路パッケージ
が概念で図示される。各論理象限100A、100B、
100C、100Dは、プログラマブル論理回路106
A、106B、106C、106Dと、各論理回路を集
積回路パッケージピンに結合するための手段105A、
105B、105C1 、105C2 、105D1
、105D2 とを含む。ゆえに、この実施例において
、図11においてのように、入力信号およびフィードバ
ック信号、プログラマブルスイッチマトリックス101
(図12)をマルチプルプログラマブル論理回路と結合
するための手段が与えられる。
第1の選択されたグループは、第1の結合手段111に
よりスイッチマトリックス101に結合された専用入力
ピン102である。結合手段111は、入力ピン102
aからスイッチマトリックス101へのプログラム可能
な組合せおよび登録された/ラッチされた(登録)回路
経路を有する。パッケージピン103a、103b、1
03cの第2の選択されたグループは、第2の結合手段
105A、105B、105C1 、105C2 、1
05D1 、105D2 (105)により4つのプロ
グラマブル論理回路106A、106B、106C、1
06Dに結合された両方向のI/Oピン103である。 第2の結合手段の各々は、I/Oピン103が入力信号
を論理象限に与えるかまたは論理象限から出力信号を受
取るようにプログラム可能である。
路または登録された/ラッチされた入力経路がパッケー
ジピンと論理象限との間に確立され得るようにプログラ
マブル回路を有する。組合せ入力経路は入力信号を論理
象限の入力ラインに通すが、登録された/ラッチされた
入力経路は入力信号をプログラマブル記憶素子の入力端
子に通し、かつプログラマブル記憶素子はその後信号を
論理象限の入力ラインに通す。同様に、各結合手段10
5は、論理回路からの選択された出力ラインが組合せ出
力経路または登録された/ラッチされた出力経路のどち
らかによりI/Oピンに結合されるようにプログラマブ
ル回路を含む。第3グループの集積回路パッケージピン
104a、104bは大域クロック入力ピンである。大
域クロック入力ピンは同期クロック信号を結合手段10
5、111に与える。
6C、106Dの各々は、たとえばPLA回路、PAL
回路、NAND.NAND回路またはNOR.NOR回
路であってもよい。1つの実施例において、回路106
A、106B、106C、106DはプログラマブルA
ND/OR論理アレイベースのPAL回路である。各プ
ログラマブルAND/ORアレイベースの回路は論理融
通性に対して3,200(80×40)のプログラマブ
ルE2 セルを与える。各象限は80積項を駆動する2
0の入力ラインを有する。以下でさらに完全に説明され
るように、積項のうち76は論理機能のために用いられ
、かつ他の4つは制御機能のために用いられる。この区
分化された構造は、入力ラインの数に比例してアレイを
増やすことなく、広い入力デコード、多重化およびデマ
ルチプレクシング能力のような伝統的なPALの利点を
保持する。さらに、アレイの大きさおよび結合手段は、
この発明のプログラマブル論理装置が機能性、シリコン
ダイ大きさおよび性能の最適バランスを達成するように
選択された。
化された構造および性能はスイッチマトリックス101
によりさらに向上される。スイッチマトリックス101
は論理回路106A、106B、106Cおよび106
Dの各々に接続され、かつ手段111により専用入力ピ
ン102aに結合される。以下でさらに完全に説明され
るスイッチマトリックス101は、入力信号を論理回路
106A−106Dに選択的に与えるために、かつ信号
を論理回路に選択的にフィードバックするために、論理
回路106A−106D間の信号を選択的に転送するた
めの高速プログラマブル手段を与える。ゆえに、スイッ
チマトリックス101(図12)は入力マルチプレクサ
I1 、I2 (図11)に類似した機能を達成する。 効果的に、この発明のプログラマブル論理装置はスイッ
チマトリックス101により相互接続された4つのプロ
グラマブル論理装置のアレイである。
悪の場合の入力から出力への信号伝搬遅延時間を許容し
、かつ33MHzの最大外部クロック周波数を許容する
。
6および図17から図20に示される。これらの実施例
において、象限100Aおよび象限100Cは同一であ
り、かつ象限100Bおよび象限100Dは同一である
。4個の大域入力ピン102および関連する回路が設け
られないことを除けば、図17から図20に示されるア
ーキテクチュアは図13から図16におけるそれと同一
である。図13から図16および図17から図20に示
されるブロック図はただ例示的なだけであり、かつこの
発明の範囲を制限することは意図されない。ここに開示
された原理の点から見て、入力マクロセル、出力マクロ
セル、スイッチマトリックス入力セルおよび論理回路の
他の構成は当業者には明らかであろう。たとえば、図2
1から図24および図25から図28はそれぞれ図13
から図16および図17から図20のアーキテクチュア
に類似するアーキテクチュアを示す。図21から図24
および図25から図28において、各象限がその象限に
おける論理回路に直接結合されない2個の埋込マクロセ
ル119を含むこと、すなわち図13から図16および
図17から図20におけるライン195が削除されるこ
とを除いて、各象限におけるマクロセルの総数および型
は上で説明されたものと同じである。したがって、各象
限における論理回路は、図13から図16および図17
から図20に示された20の入力ラインの代わりに18
だけ入力ラインを有し、8つはフィードバックセル12
7からであり、かつ10はスイッチマトリックス101
からのものである。
0および図21から図28に示されたような集積回路は
、高性能および論理構成可能性のために1.5ミクロン
CMOSダブル金属E2 PROM技術を利用する高密
度の、電気的に消去可能な(E2 )再プログラム可能
PLDである。その代わりに、この発明の集積回路は、
消去可能なプログラマブルROM技術またはバイポーラ
溶融技術のどちらかを用いて実現され得る。図17から
図20および図25から図28における構造は1個の4
0ピンDIPに含まれ、かつ図13から図16および図
21から図24における構造は44ピンPLCCパッケ
ージに含まれる。24個のI/Oピン、14個の専用入
力ピンおよび2個の同期クロック/ラッチイネーブルピ
ンを有する44ピンPLCCパッケージは少量のボード
空間を利用し、しかもなおかなりの量の融通性および高
速性能が小さいパッケージにおいて与えられる。
21から図24および図25から図28に示されたよう
なプログラマブル論理装置の対角線の対称は、この発明
の重要な局面である。対称は、シリコンチップ設計者に
よるシリコンダイの開発と、システム設計者によるこの
発明のPLDを用いるシステムの設計とを容易にする。 また、固有の対称がなければ、PLDに対するソフトウ
ェアツールの開発はさらに困難である。
レイに関して説明されるが、プログラマブルAND/O
Rアレイは好ましい実施例において、ここで説明される
プログラマブルAND/ORアレイと機能上同等のNO
R.NORアレイとして実現される。以下でさらに完全
に論じられるように、論理回路106Aはまた、たとえ
ば、プログラマブルORアレイ/固定ANDアレイ、P
LA(プログラマブルANDアレイおよびプログラマブ
ルORアレイ)、NOR.NORアレイまたはNAND
.NANDアレイであってもよい。したがって、プログ
ラマブルAND/OR論理アレイの使用はただ例示的な
だけであり、かつこの発明の範囲を限定することは意図
されない。
、図17から図20、図21から図24および図25か
ら図28において上で説明されたように、プログラマブ
ル論理象限100A、100B、100Cおよび100
Dは対角線的に対称的であり、すなわち象限100Aお
よび100Cは同一であり、かつ象限100Bおよび1
00Dは同一であった。各プログラマブル論理象限10
0Aから100Dは、プログラマブルアレイ106、埋
込セル120、出力セル121、入力セル123、フィ
ードバックセル127およびスイッチマトリックスセル
128を含んだ。
、高速性能および先行技術のプログラマブル論理装置構
造より良いシリコンダイ効率を提供する。セルアレイ1
00は、25ナノ秒の最悪の場合の入力から出力への信
号伝搬遅延を有し、かつ33MHzの最大外部クロック
周波数を許容する。
りの利益を提供するが、上の実施例におけるようなただ
対角線的に対称的な象限を利用するよりもむしろ対称的
なプログラマブル論理ブロックを用いることにより、シ
リコンダイ効率、速度および融通性におけるさらなる向
上が達成される。下で説明される実施例において、積項
融通性はさらに向上される。
ル論理装置400(図29)は、1つのアレイに配列さ
れた複数個の同一のプログラマブル論理ブロック402
を含む。プログラマブル論理ブロック402はプログラ
マブルスイッチマトリックス401を介して相互接続さ
れる。プログラマブル論理ブロック402はスイッチマ
トリックス401を介してのみ互いに通信する。さらに
、プログラマブル論理ブロック402はすべての入力信
号をスイッチマトリックス401から受取る。このよう
に、プログラマブル論理ブロック402は同じ集積回路
チップ上の独立したプログラマブル論理装置として眺め
られてもよい。
1複数個の入力信号をスイッチマトリックス401を介
して複数個の入力/出力(I/O)ピン403から受取
ってもよい。入力信号は、以下でさらに完全に説明され
るように、ブロック402を介してスイッチマトリック
ス401に通される。専用入力ピン404は複数個の入
力信号をスイッチマトリックス401に与える。いずれ
かの論理ブロック402により処理された入力信号はス
イッチマトリックス401からの入力ライン426上で
受取られる信号である。各プログラマブル論理ブロック
402はまたI/Oピン403に対して第1複数個の出
力信号を与えてもよい。
は、たとえばPLA回路、PAL回路、プログラマブル
NAND.NAND回路またはプログラマブルNOR.
NOR回路を含んでもよい。一実施例において、各プロ
グラマブル論理ブロック402はプログラマブルAND
/OR論理アレイベースのPAL回路を含む。各プログ
ラマブル論理ブロック402は、80ぐらいの積項を駆
動するスイッチマトリックス401からの22の入力ラ
インを有する。
他の実施例のように、入力ラインの数に比例してアレイ
を増やすことなく、広い入力デコード、多重化およびデ
マルチプレクシング能力のような従来のPAL回路の利
点を保持する。さらに、アレイの大きさおよびスイッチ
マトリックス401は、この発明のプログラマブル論理
装置400が機能性、シリコンダイ大きさおよび性能の
最適バランスを達成するように選択されている。
ックス401から各プログラマブル論理ブロック402
への入力ラインの固定された数である。以下でさらに完
全に説明されるように、入力/出力能力は増加されるの
でこの特徴は装置の速度性能を維持し、かつこの特徴は
設計をプログラマブル論理装置400の群の他の装置に
移す設計者の能力を高める。
論理アレイにプログラマブル論理ブロックにおける各論
理マクロセルに対して1つの入力ラインを与え、かつ各
専用入力ピンに対してプログラマブル論理アレイへの1
つの入力ラインを与える。プログラマブル論理アレイへ
の各入力ラインは典型的にアレイ内の2つラインを駆動
する。ゆえに、これらの先行技術の装置において、物理
的ピンの数が増加するにつれてマクロセルの数が増加し
、かつしたがってプログラマブル論理アレイへの入力ラ
インの数が増加する。入力ラインの数が増加するにつれ
てプログラマブル論理アレイの大きさが増加する。より
大きいアレイの大きさは、不十分な速度性能および不十
分なアレイの利用をもたらす。また、プログラマブル論
理アレイの大きさを増加することは、設計を、向上され
た入力/出力能力を有する他の装置に移すことを制限す
る。
面はプログラマブル論理装置400の完全な対称である
。装置400におけるプログラマブル論理ブロック40
2の各々は同一である。さらに、プログラマブル論理装
置400におけるプログラマブル論理ブロック402は
スイッチマトリックス401のまわりに対称的に配列さ
れる(図29)。対称は、シリコンチップ設計者による
シリコンダイの開発と、システム設計者によるこの発明
のPLDを用いるシステムの設計とを容易にする。また
、固有の対称がなければ、PLDに対するソフトウェア
ツールの開発はより困難である。
ラマブル論理ブロック402における論理回路に対して
、22の入力信号、すなわち情報のための22の経路を
選択するための手段を与える。スイッチマトリックス4
02は、1つのブロックからの信号を別のブロックに送
ることができ、専用入力ピンからの信号を1つのブロッ
クまたは複数のブロックに送ることができ、かつ1つの
ブロックからの信号をそのブロックに逆戻りして送るこ
とができる。このスイッチマトリックスを介する信号転
送は非常に急速であり、かつ各プログラマブル論理ブロ
ックに対する22の経路融通性は装置の各プログラマブ
ル論理ブロックへの入力信号の多数の組合せを提供する
。
クス401はプログラマブルマルチプレクサ用いて実現
される。以下でさらに完全に説明されるように、スイッ
チマトリックス401の多重構成はプログラマブルマル
チプレクサを用いて実行できる。マルチプレクサの数お
よび各マルチプレクサの大きさは、ダイの大きさおよび
シリコン利用間の兼合いである。好ましい実施例が以下
で説明され、かつこの論議に関して他の実施例が当業者
には明らかであろう。
、各プログラマブル論理ブロック402は、プログラマ
ブル論理アレイ、たとえば積項アレイ410、論理アロ
ケータ411、プログラマブル論理マクロセル412お
よびI/Oマクロセル413を含む。積項アレイ410
はスイッチマトリックス401によってのみ与えられる
信号を用いて基本論理を発生する。
ラマブルAND/ORアレイに関して説明されるが、プ
ログラマブルAND/ORアレイは好ましい実施例にお
いて、ここで説明されるプログラマブルAND/ORア
レイに機能上同等なNOR.NORアレイとして実現さ
れる。以下でより完全に論じられるように、積項アレイ
410はまた、たとえば、プログラマブルORアレイ/
固定ANDアレイ、PLA(プログラマブルANDアレ
イおよびプログラマブルORアレイ)、NOR.NOR
アレイまたはNAND.NANDアレイであってもよい
。したがって、プログラマブルAND/OR論理アレイ
の使用はただ例示的なだけであり、かつこの発明の範囲
を限定することは意図されない。
ので、アレイ410からの積項は装置400のユーザに
より要求されるように論理マクロセル412に分布され
る。論理マクロセル412は論理アロケータ411から
の信号を以下でより完全に説明されるように構成する。 各論理マクロセルはプログラマブル記憶素子を含む。
/Oマクロセル413に与えられ、かつライン427を
越えてスイッチマトリックス401にフィードバックさ
れる。出力信号を発生するために用いられてもよい各論
理マクロセルはI/Oマクロセルに結合される。I/O
マクロセル413は出力信号をマクロセル413からI
/Oピン403に伝える。その代わりに、I/Oマクロ
セル413は入力信号をI/Oピン403からライン4
28を越えてスイッチマトリックス401に与える。も
しI/OセルがI/Oピンを入力ピンとして構成するの
に用いられれば、そのI/Oセルと関連する論理マクロ
セルは埋込論理マクロセルとしての機能を果たし得る。 ゆえに、以下でより完全に説明されるように、プログラ
マブル論理装置400ののアーキテクチュアは装置内の
すべての資源の効率的な利用のために設計される。
この実施例において、非同期リセット積項および非同期
プリセット積項をさらに含む。これらの積項はプログラ
マブル論理ブロック402内のすべてのフリップフロッ
プを初期設定するために用いられる。さらに、一実施例
において、各プログラマブル論理ブロック402はブロ
ックにおける8個のI/Oマクロセルごとに2つの出力
イネーブル積項を含む。各プログラマブル論理ブロック
402において、I/Oマクロセル413はバンクに分
けられ、ここでの実施例において各バンクは8個のI/
Oマクロセルを含む。I/Oマクロセル413の各バン
クは出力イネーブル積項のうち2つを受取る。
ク402はこの実施例において、積項アレイ410に多
数の積項を有し、それはブロック402におけるすべて
のマクロセルに制御機能を与える。対照的に、ほとんど
の先行技術のEPLDは各マクロセルと関連する複数個
の制御積項を有した。ほとんどの同期登録応用において
、先行技術の複数個の制御積項は完全には利用されなか
った。このように、マクロセル当たり複数個の制御積項
を有する先行技術の装置は、典型的にはたいして効率的
ではなかった。その結果、先行技術の装置のダイ大きさ
および費用は必要とされるより大きかった。対照的に、
この発明の制御積項は、装置内の資源の非効率的な利用
を除去する一方で、先行技術の装置で典型的に実現され
る機能性に等しい機能性を提供する。
ログラマブル論理ブロック402内のプログラマブル相
互接続は、スイッチマトリックス401、マクロセル4
12、413およびI/Oピン403から積項アレイ4
10の結合を外すために用いられる。この結合を外すこ
とは、先行技術のプログラマブル論理装置において入手
可能であったものよりより大きい融通性を提供し、かつ
装置400がユーザの応用に対して効率的にかつ迅速に
構成されることを許容する。このアーキテクチュアの別
の重要な利点は、スイッチマトリックス401がスイッ
チマトリックス401を介して通されるすべての信号に
対して固定された、均一の、予測可能でかつ経路に関係
しない時間遅延を与えるということである。ゆえに、多
くの環境において、設計の性能は設計に関係せず、かつ
設計がまだ始められる前に知られる。
域接続性および高いシリコン効率を許容する。この実施
例において、1つのプログラマブル論理ブロックを別の
プログラマブル論理ブロックに接続するためにスイッチ
マトリックス401を介する遅延時間は、約1ナノ秒か
ら2ナノ秒の範囲にある。対照的に、先行技術の集中型
プログラマブル相互接続アレイベースのアーキテクチュ
アは13ナノ秒から16ナノ秒の範囲のブロック間遅延
時間を有した。この発明のスイッチマトリックス401
の高い内部速度は、1つのプログラマブル論理ブロック
が通常出力バッファ遅延なしに他のプログラマブル論理
ブロックと通信することを許容する。
部資源の結合を外すことは、先行技術のプログラマブル
論理装置群と明確な対照をなす。歴史的に、最も普及し
ている同期プログラマブル論理装置群のうちの2つは、
産業基準の低い複雑さの16R8/16V8アーキテク
チュアプログラマブル論理装置および中位の複雑さの2
2V10アーキテクチュアプログラマブル論理装置であ
った。これらの装置アーキテクチュアの各々はプログラ
マブルAND−ORアレイを含む。
ブル論理装置、すなわち16R8、16V8および22
V10装置の各々において、AND−ORアレイはマク
ロセルと強く結合されており、すなわち、マクロセルの
各々と関連する積項はその特定のマクロセルにだけ属す
る。マクロセルはまたI/Oピンとも強く結合される。 もしI/Oピンが入力ピンとして用いられればそのI/
Oピンと関連するレジスタは失われる。これらの装置は
記憶素子を埋込レジスタとして作動する能力は提供しな
い。また、I/Oピンの各々に対する専用出力イネーブ
ル積項は非効率な積項アレイ利用をもたらす。
な欠点は、(i)マクロセルのAND−ORアレイおよ
びI/Oピンとの完全な結合、(ii)マクロセルにつ
いての積項の静的割当、(iii)カウンタを構築する
ためのマクロセル内のT型フリップフロップの不在、(
iv)フレキシブルクロック源選択の不足、(v)各I
/Oピンに対する個々の出力イネーブル積項の専用、(
vi)I/Oピンの制限された数、および(vii)マ
クロセルの制限された数、であった。
クロセルの、プログラマブルアレイおよび積項の固定さ
れた静的割当を有するI/Oピンへの完全な結合は、不
十分なシリコン効率および速度劣化をもたらす。また、
高密度構造へのアーキテクチュアの移送は極めて難しく
なる。特に、増加された数のI/Oピンおよびマクロセ
ルを有する先行技術の装置は典型的に不十分な速度性能
を有し、かつ先に説明されたように積項アレイはマクロ
セルの数が増加するにつれてさらに大きくなるので、そ
のアーキテクチュアは増加された密度に従わない。
理ブロック402(図30)は純然たる高性能を提供し
、さらに融通がきき、密度が高くかつ尺度決めできるア
ーキテクチュアを提供する。プログラマブル論理ブロッ
ク402は、先に説明されたような普及されている産業
基準のプログラマブル論理装置の最も好ましい特徴を含
み、それは固定された高速予測可能遅延を有する最適化
された大域接続性および結合を外されたエレメントを伴
ない、1つのプログラマブル論理アレイおよびマクロセ
ル構造を有するアーキテクチュアの簡単さのようなもの
である。プログラマブル論理ブロック402は先行技術
の装置の不十分なシリコン効率を除去する。
ブル論理装置400は、0.8ミクロンのダブル金属で
、電気的に消去可能なCMOS技術で実現される。さら
に、装置400は、50MHz外部システムクロックを
有する約15ナノ秒のより悪い場合のピンからピンへの
信号伝搬遅延時間を有する。さらに、この発明の原理に
従えば、出力および埋込の両方の論理マクロセルは、ス
イッチマトリックスおよび論理アロケータにより積項ア
レイから結合を外される。マクロセルの数が増加される
につれて、積項アレイは比例的に影響されない。それゆ
えに、先行技術の装置と違って、この発明の積項アレイ
はマクロセルの密度が増加されるにつれて速度性能を劣
化させない。
つれて、スイッチマトリックスは固定公知遅延を与える
のでピンからピンへの信号伝搬遅延時間はほぼ一定のま
まであり、かつ積項アレイ大きさは維持される。このよ
うに、この発明の1つの装置で実現される設計は、さら
なるマクロセル能力を有する装置に簡単に移される。以
下でさらに完全に説明されるように、このアーキテクチ
ュアでは、もはや装置の速度をマクロセル密度と交換す
る必要はない。
チ相互接続マトリックス401を有する対称プログラマ
ブル論理装置400は、2つの群にさらに細分される。 第1群400A(図31、表1)は、それぞれ32、4
8および64の論理マクロセルを有する44、68およ
び84のピンの装置を含む。高いピン対論理比を有する
この群は、I/O集中的応用に対処することを目標に定
められる。
00B(図37および図38、表1)は、論理集中的応
用に対処することを目標に定められる。第2群は、同じ
パッケージにおける第1群の2倍の論理能力を提供する
。2つの群の利用は、ほとんど困難なく設計を上下に移
すための都合のよい方法を提供する。群のI/Oおよび
論理の強い本質は、システム設計者により広い選択を提
供し、彼等が彼等の設計を適切な装置に適合させること
を許容する。
1において与えられる。
00を含むパッケージに対するピンの総数である。列“
最大入力”および“最大出力”は、それぞれ入力信号お
よび出力信号に対して利用可能なピンの総数に対応する
。この実施例において、装置の各々は6個かまたは10
個の専用入力ピンを有する。さらに、以下で説明される
ように、専用入力ピンのうちの2個はクロック源または
入力源のどちらかとして機能してもよい。列“最大F/
Fs”は装置400におけるフリップフロップの最大数
を表わし、かつ以下でより完全に説明されるように、こ
の実施例において両方の群における各論理マクロセルは
1つのフリップフロップを含む。
図35から図36は、この発明の原理に従う第1群のプ
ログラマブル論理装置400Aを示す図である。図31
および図32は32個のI/Oピン403A−1、40
3A−2および6個の専用直接入力ピン404Aを有す
る44ピン装置を示す。先に説明されたように、プログ
ラマブル論理ブロック402A−1、402A−2の各
々は同一であり、かつプログラマブル論理積項アレイ4
10A−1、410A−2、プログラマブル論理アロケ
ータ411A−1、411A−2、16個のプログラマ
ブル論理マクロセル412A−1、412A−2および
16個のプログラマブルI/Oマクロセル413A−1
、413A−2を含む。
号Nを有するラインは、そのラインがNラインを表わす
ことを示すために用いられる。ゆえに、スイッチマトリ
ックス401Aは22の入力信号を22の入力ライン4
26A−1を越えて積項アレイ410A−1に与える。 同様に、論理マクロセル412A−1はフィードバック
信号を16のライン427A−1を越えてスイッチマト
リックス401Aに与え、かつI/Oマクロセル413
A−1はI/Oピンフィードバック信号を16のライン
428A−1を越えてスイッチマトリックス401Aに
与える。
り詳細に示された専用入力ピン404Aの接続を有する
装置400A(図31)の2つの異なる実施例を示す。 図32ならびに図35および図36において、2個の専
用入力ピン404A5、404A6は、専用入力ピン、
専用クロックピンまたはクロック/入力ピンのいずれか
である。ピン404A5、404A6はスイッチマトリ
ックス401Aおよび論理マクロセル412Aに結合さ
れる。図32ならびに図35および図36において積項
アレイ410Aおよび論理アロケータ411Aが組合わ
されて1つのボックス410A−411Aにより表わさ
れることに注目されたい。
に類似しているが、この実施例のプログラマブル論理装
置400A1は4つの同一のプログラマブル論理ブロッ
ク402A1を含み、かつそのうちの2個が専用クロッ
ク信号入力ピンとして用いられてもよい10個の専用入
力ピンを有する。各プログラマブル論理ブロック402
A1は12個の論理マクロセル412A1、12個のI
/Oマクロセル413A1および12個のI/Oピン4
03A1を有する。
41から図43および図44から図47はこの発明の原
理に従う第2群のプログラマブル論理装置400Bのブ
ロック図である。先に説明されたように、論理装置40
0Bのこの群は第1群400Aより高い論理対ピン比を
有する。このように、この実施例において、各プログラ
マブル論理ブロック402B(図37および図38)は
ただ8個のI/Oピン403Bを有する。プログラマブ
ル論理ブロック402Bにおける積項アレイ410B、
論理アロケータ411Bおよび論理マクロセル412B
はプログラマブル論理ブロック402A(図31)にお
ける対応する装置と同様である。しかしながら、以下で
より完全に説明されるように、論理マクロセル412B
(図37および図38)は出力論理マクロセル412B
A(図39および図40)および埋込論理マクロセル4
12BBを含む。
ログラマブル論理ブロック402B(図37および図3
8)は8個のI/Oピン403Bににだけ接続される。 このように、論理マクロセル412Bのうちただ8個だ
けが8個のI/Oマクロセル413Bに結合され、それ
は順に8個のI/Oピン403Bに結合される(図39
および図40)。他の8個の論理マクロセルは、ライン
427B上のフィードバック信号をスイッチマトリック
ス401Bに与える埋込論理セル412BBである。
らびに図44から図47は論理マクロセル412Bの2
つのグループへの分割をより明らかに示す。第1グルー
プの論理マクロセル412BAはフィードバック信号を
スイッチマトリックス401Bに与え、かつ信号をI/
Oマクロセル413Bに与える。第2グループの論理マ
クロセル412BBはI/Oピン403Bから信号を受
取り、かつフィードバック信号または入力信号のどちら
かをスイッチマトリックス401に与え、かつそれゆえ
先に説明されたように埋込論理マクロセルとしての機能
を果たす。また、第1群400Aの装置においてのよう
に、第2群の装置400Bは、そのうちの2個が直接入
力ピンまたはクロック信号入力ピンのどちらかとして構
成されてもよい6個または10個の専用入力ピン404
Bを有する。第2群のプログラマブル論理装置400の
原理の、他の論理マクロセル対ピン比、たとえば3:1
または4:1への拡張は、この開示に関して当業者には
明らかであろう。
置400に対するプログラマブル論理ブロック402A
は図48から図51においてより詳細に示される。特に
、スイッチマトリックス401A、積項アレイ410A
、論理アロケータ411A、16個の論理マクロセル4
12Aの列、16個のI/Oマクロセル413Aの列お
よび16個のI/Oピン403Aの列の相互接続が図示
される。積項アレイ410Aは44に70のプログラマ
ブルAND論理アレイを含む。積項ラインのうち64は
論理アロケータ411Aに与えられる。さらに、この実
施例における積項アレイ410Aは410A64から4
10A69までの6つの付加的な積項ラインを有する。 (しかしながら、積項アレイ410A1(図33および
図34)は44×54だけのプログラマブルAND論理
アレイである。54の積項は48の論理積項および6個
の制御積項を含む。次の説明において、この装置はさら
には考慮されない。しかしながら、この開示に関して、
この装置のアーキテクチュアは当業者には明らかであろ
う。)図48から図51において、1つのラインは論理
アロケータ411Aを各論理マクロセル412An(n
=1,・・・,16)に接続して示される。しかしなが
ら、以下でより完全に説明されるように、論理アロケー
タ411Aと各マクロセル412Anとの間のラインは
多数のライン、たとえば3つから4つのラインを表わす
。
3Aは2つのバンクに分けられる。第1バンクのI/O
マクロセル413Aは、出力イネーブル積項ライン41
0A64および410A65上で信号を受取るI/Oマ
クロセル413A1から413A8によって規定される
。同様に、第2バンクのI/Oマクロセル413Aは、
出力イネーブル積項ライン410A66および410A
67上で信号を受取るI/Oマクロセル413A9から
413A16によって規定される。専用入力ピン404
A5、404A6(図32)からのラインCLK0、C
LK1上の信号は各論理マクロセル412A(図48か
ら図51)に与えられる。同様に、非同期リセットライ
ン410A68上の積項および非同期プリセットライン
410A69上の積項は論理マクロセル412Aの各々
に与えられる。
用のパターンの広範囲にわたる研究は、約22より多い
入力ラインを有する積項アレイがシリコン非効率であり
かつ性能が遅いということを示した。結果として、この
実施例における各積項アレイ410Aはスイッチマトリ
ックス401Aからの22の入力ラインを有する。スイ
ッチマトリックス401からの各入力ラインは、入力ラ
イン上の信号および入力ライン上の信号の補数の両方を
積項アレイ410Aに与えるドライバに接続され、それ
は順にプログラマブル論理ブロック402Aのためのす
べての論理および制御積項を発生する。
説明された16V8アーキテクチュアおよび22V10
アーキテクチュアにおける積項アレイの間で大きさを調
整される。このように、積項アレイは16V8または2
2V10アーキテクチュアのどちらよりも高いシリコン
効率を有する16V8アーキテクチュアの性能および費
用構造を有するように最適化される。実際、積項アレイ
410Aは22V16アーキテクチュアと同等の論理機
能性を有するが、この機能性は22V10アーキテクチ
ュアのほぼ半分の大きさの積項アレイを有するプログラ
マブル論理装置において与えられる。
置400に対するプログラマブル論理ブロック402B
が図52から図55においてより詳細に示される。特に
、スイッチマトリックス401B、積項アレイ410B
、論理アロケータ411B、8個の出力論理マクロセル
412BAおよび8個の埋込論理マクロセル412BB
を有する16個の論理マクロセル412Bの列、8個の
I/Oマクロセル413Bの列および8個のI/Oピン
403Bの列の相互接続が図示される。積項アレイ41
0Bは44に68のプログラマブルAND論理アレイを
含む。積項ラインのうち64は論理アロケータ411B
に与えられる。さらに、この実施例における積項アレイ
410Bは5つの付加的な積項ライン410B64から
410B67を有する。
3Bは出力イネーブル積項ライン410B64および4
10B65上で信号を受取る。専用入力ピン404B5
、404B6(図39および図40)からのラインCL
K0、CLK1上の信号は、各出力論理マクロセル41
2BAおよび埋込論理マクロセル412BBに与えられ
る(図52から図55)。同様に、非同期リセットライ
ン410B66上の積項および非同期プリセットライン
410B67上の積項は各出力論理マクロセル412B
Aおよび埋込論理マクロセル412BBに与えられる。
/Oピンは埋込論理マクロセルに接続されるので、I/
Oピンが入力ピンとして構成されるとき入力信号は埋込
論理マクロセルおよびスイッチマトリックス401Bの
両方に与えられる。このように、入力信号は、埋込論理
マクロセルにより処理されるか、すなわち登録された入
力信号であって、その後スイッチマトリックス401B
に与えられるか、または純然たる組合わせ入力信号とし
て直接スイッチマトリックス401Bに与えられるかの
どちらかであってもよい。
力ラインによりプログラマブル積項アレイ410Bに結
合される。装置410Aに対して先に説明されたように
、各入力ラインは、入力ライン上の信号および入力ライ
ン上の信号の補数を発生するドライバに接続される。
ケータ411A(図48から図51)および論理アロケ
ータ411B(図52から図55)は多数のルータエレ
メントを含み、ここにおいて各ルータエレメントは選択
された数の積和項の和を積項アレイ410から選択され
たマクロセルに進める。ルータエレメント当たりの積項
の数は多数の方法で選択されてもよい。この実施例にお
いて、積項の選択された数は4つであり、かつ各論理マ
クロセル412に対して1つのルータエレメントがある
。
グラマブル論理ブロックが16個の論理マクロセルを有
すれば、積項アレイは論理アロケータ411に64の積
項を与える。同様に、プログラマブル論理ブロック当た
り12個の論理マクロセルを有する実施例において、積
項アレイは論理アロケータに48の積項を与える。ルー
タエレメントの構成は、各ルータエレメントが固定され
た数の積項を選択されたマクロセルに進める状態で複数
個のルータエレメントをただ説明するだけであり、かつ
この発明をこの特定の構成に限定することは意図されな
い。
、論理アロケータ411Aは16のルータエレメント5
20Aを含む(図56から図58)。各ルータエレメン
ト520Aは、積項アレイ410Aにおける4つの積項
ラインからの信号により駆動されるORゲート521A
と、1つの入力端子および3つの出力端子を有するプロ
グラマブル1−3デマルチプレクサ522Aとを含む。 アーキテクチュア構成セル523A、524Aは、以下
でより完全に説明されるように、入力端子と出力端子の
うちのただ1つとの間の接続を形成するために利用され
る。セル523A、524Aは、入力ライン上の信号が
そこを介して選択された出力ラインに通されるように出
力選択信号をデマルチプレクサに与える。この実施例に
おいて、ORゲート521Aはルータエレメント520
A内に含まれるが、その代わりにORゲートはプログラ
マブルAND−ORアレイが論理アロケータ411Aに
対して信号を発生するようにANDアレイとともに含ま
れることができる。
レメント520A1、520A9(図56)は信号を2
個のマクロセルにだけ与えてもよく、たとえば、ルータ
エレメント520A1は論理マクロセル412A1また
は論理マクロセル412A2のどちらかを駆動し、かつ
ルータエレメント520A9は論理マクロセル412A
9または論理マクロセル412A10のどちらかを駆動
する(図48から図51)。同様に、論理アロケータ4
11Aにおけるルータエレメント520A8、520A
16(図58)は信号を2個のマクロセルにだけ与えて
もよく、エレメント520A16は論理マクロセル41
2A15または論理マクロセル412A16に、かつエ
レメント520A8は論理マクロセル412A7または
論理マクロセル412A8に信号を与えてもよい(図4
8から図51)。論理アロケータ411Aにおける他の
12のルータエレメント520An(図57)の各々は
、信号をマクロセル412A(n−1)もしくはマクロ
セル412Anまたはマクロセル412A(n+1)に
与えてもよく、ここでn=2,3,・・・,7,10,
・・・,15である。
クロセル412A2から412A7および412A9か
ら412A15は最高で12の積項の和を受取ってもよ
いが、論理マクロセル412A1、412A8、412
A9および412A16は最高でただ8つの積項の和を
受取ってもよい。プログラマブル論理ブロック402A
の終りにおける完全なラップアラウンド、たとえばマル
チプレクサ522A16から論理マクロセル412A1
にラインを設けることはサポートされないので、論理マ
クロセル412A1、412A8、412A9および4
12A16はただ最高で8つの積項の和だけを受取る。 完全なラップアラウンドは、入力ピンからプログラマブ
ル論理装置400Aを介して出力ピンへの信号伝搬に対
して約1ナノ秒から2ナノ秒の速度性能における劣化を
引起こすことが推定される。
示される。その各々が数字“4”を含む図の左手側のボ
ックスL0からL15は、その各々が4つの積項を有す
る積項アレイ410Aにおける積項群を表わす。図59
の右手側には、それぞれ論理マクロセル412A1から
412A16を表わす16のボックスR0からR15が
ある。ボックスR0からR15内の数字は、その論理ア
ロケータ411Aがその論理マクロセルに送り得る積項
の最大数である。論理アロケータ411A内の数字は図
の左手側で数えられるような積項を表わす。したがって
、図59はこの発明の論理アロケータ411Aの積項ス
テアリング能力を明らかに示す。
によって特定のマクロセルに永久的には割当てられない
ということに注目することが重要である。したがって、
もし1個のマクロセル、たとえば図59においてR7と
表示されたマクロセルに結合されたI/Oピンが入力ピ
ンとして利用されかつマクロセルR7の埋込レジスタ能
力が必要とされないならば、積項アレイにおけるセルL
6およびL7からの積項はマクロセルR6によって利用
されてもよい。このように、マクロセルが利用されない
ときマクロセルL7に関連して無駄にされる積項はない
。
る信号はデマルチプレクサ522Aの入力端子に与えら
れ、かつ入力信号を受取るデマルチプレクサ522Aの
出力端子はアーキテクチュアセル523Aおよび524
Aの構成によって決定される。アーキテクチュアセル5
23Aおよび524Aの起こり得る値は、アーキテクチ
ュアセルがそれらの値を有するときに積和項を受取る論
理マクロセルとともに表2に示される。表2における数
字n、n−1およびn+1は図57で規定されるような
ものである。ここにおける他の表と同様に表2における
アーキテクチュアセルの構成はただ例示的なだけであり
、かつこの発明を表2または他の表において与えられた
特定の構成に制限することは意図されない。
された状態と同等であり、かつ1は論理1に対応しかつ
プログラムされないまたは消去された状態と同等である
。論理マクロセル520A1、520A8、520A9
および520A16に対するプログラミングがまた表2
により与えられ、ここでそれぞれn=1、8、9および
16であり、ここで(i)論理マクロセル412A(n
−1)はマクロセル520A1および520A9に対し
て確保され、かつ(ii)論理マクロセル412(n+
1)は論理マクロセル520A8および520A16に
対して確保される。
、論理アロケータ411Bはまた16のルータエレメン
ト520Bを含む(図60から図63)。各ルータエレ
メント520Bは、4つの積項ラインからの信号により
駆動されるORゲート521Bと、1つの入力端子およ
び4つの出力端子を有するプログラマブル1−4デマル
チプレクサ522Bとを含む。アーキテクチュア構成セ
ル523B、524Bは、以下でより完全に説明される
ように、入力端子および出力端子のうちのただ1つの間
の接続を形成するために用いられる。
レメント520B1(図60)は、信号を出力論理マク
ロセル412BA1(図52から図55)または埋込論
理マクロセル412BB1のどちらに与えてもよい。第
2のルータエレメント520B1(図61)は信号を出
力論理マクロセル412BA1(図52から図55)、
埋込論理マクロセル412BB1または出力論理マクロ
セル412BA2のいずれに与えてもよい。同様に、論
理アロケータ411Bにおける最後のルータエレメント
520B16(図63)は信号を埋込論理マクロセル4
12BB7(図52から図55)、出力論理マクロセル
412BA8、または埋込論理マクロセル412BB8
に与えてもよい。
のルータエレメント520Bn(図62)は、信号を4
個の論理マクロセルのうちの1個に与えてもよい。図6
2において、デマルチプレクサ522Bnからの4つの
出力ラインはマクロセル(n−2)、(n−1)、(n
)および(n+1)へのラインとして与えられ、ここで
n=3,4,・・・,15である。ここで、nは論理ア
ロケータ411B内のルータエレメントの列におけるル
ータエレメント520Bnの位置を表わす。プログラマ
ブルマルチプレクサ522Bnからの出力ラインn−2
、・・・、n+1が接続される出力論理マクロセルおよ
び埋込論理マクロセル(n−2)、・・・、(n+1)
の位置を突止めるために、出力論理マクロセル412B
Aおよび埋込論理論理マクロセル412BBの列412
B(図52から図55)が1から16まで連続して数え
られ、ここで出力論理マクロセル412BA1は1であ
り、かつ埋込論理マクロセル412BB8は16であり
、すなわち、n=1・・・16である。ラインnはそれ
から列412Bにおける第nの論理マクロセルに接続さ
れる。
ント520B7を考える。列412B(図52から図5
5)における第7のマクロセルは出力論理マクロセル4
12BA4である。このように、ルータエレメント52
0B7からのラインnは出力論理マクロセル412BA
4に接続される。ラインn−1は埋込論理マクロセル4
12BB3に接続され、かつラインn−2は出力論理マ
クロセル412BA2に接続される。ラインn+1は埋
込論理マクロセル412BB4に接続される。
クロセル412B3から412B14は最高16の積項
の和を受取ってもよいが、論理マクロセル412B1お
よび412B15は最高12の積項の和を受取ってもよ
い。マクロセル412B16はただ8つの積項の和のみ
受取ってもよい。再び、プログラマブル論理ブロック4
02Bの終りにおける完全なラップアラウンドはサポー
トされない。
示される。その各々が数字“4”を含む図の左手側のボ
ックスL0からL15は、その各々が積項アレイ410
Bにおいて4つの積項を有する積項群を表わす。図64
の右手側にはR0からR15までの16のボックスがあ
り、ここでボックスR0、R2、・・・、R14は出力
論理マクロセルを表わし、かつボックスR1、R3、・
・・、R15は埋込論理マクロセルを表わす。ボックス
R0からR15内の数字は論理アロケータ411Bがそ
の論理マクロセルに送り得る積項の最大数である。論理
アロケータ411B内の数字は図の左手側で数えられる
ような積項を表わす。したがって、図64はこの発明の
論理アロケータ411Bの積項ステアリング能力を明ら
かに示す。
Bによって永久的には特定のマクロセルに割当てられな
いことに注目することは重要である。このように、この
実施例において、論理アロケータ411Aに対して先に
説明されたように、マクロセルが利用されないときにマ
クロセルに関連して無駄にされる積項はない。
信号はデマルチプレクサ522Bの入力端子に与えられ
、かつ入力信号を受取る出力端子はアーキテクチュアセ
ル523Bおよび524Bの構成によって決定される。 アーキテクチュアセル523Bおよび524Bの起こり
得る値は表3において示され、かつ数字n、n−1、n
−2およびn+1は図62において規定されたものと同
じである。再び、表3におけるアーキテクチュアセル値
は表2に対して先に説明されたようにただ例示的なだけ
であり、かつこの発明を示される特定の値に制限するこ
とは意図されない。
された状態と同等であり、かつ1は論理1に対応しかつ
プログラムされないまたは消去された状態と同等である
。セル520B1、520B2および520B16に対
するプログラミングはまた表3により与えられ、ここで
それぞれn=1,2および16である。
ログラマブル論理ブロック402における各マクロセル
412に対する論理積項の和の数は可変であり、かつ4
つの積項の和から4つの積項の4つの和の範囲にわたっ
てもよく、すなわち各論理マクロセルに対して16積項
である。積項が前もって割当てられ、かつ16R8/1
6V8アーキテクチュアにおいてのような等しい固定分
布パターンか、または22V10アーキテクチュアのよ
うな可変だが固定の分布パターンのいずれかで各マクロ
セルに固定される従来の産業基準のプログラマブル論理
装置のほとんどと違って、この発明の原理に従って、積
項資源は要求に応じて特定のマクロセルに割当てられる
。積項のマクロセルへの割当の際のこの融通性は、プロ
グラマブルANDアレイ能力の大いに増加された利用を
もたらす。さらに、論理装置400は先行技術の装置に
勝るより高い速度およびより低い費用を提供する。
関連する主な理由の1つは各マクロセルに対する固定さ
れた積項割当であった。ほとんどの同期PAL装置は各
出力ピンに対して7つまたはそれより多い論理積項およ
び1つまたは2つより少ない制御積項の固定オーバヘッ
ドを有する。積項の固定割当は必要とされたときに利用
可能な積項を有する融通性を許容するが、装置が利用さ
れる応用が固定して割当てられた資源より少なく要求す
れば積項は無駄にされる。先に説明されたように、マク
ロセルのI/OピンまたはI/Oセルへの固定結合を伴
なう、積項のマクロセルへの固定割当は、著しいシリコ
ン非効率と、アーキテクチュアをより高い密度に移す際
の困難をもたらす。
の広範囲にわたる研究は、DまたはT型フリップフロッ
プのどちらかを含むマクロセルにつき4つから16の積
項を有する装置が高密度プログラマブル論理要求の90
%から95%を解決するであろうことを示している。マ
クロセル当たり積項のいかなる固定割当も、1個のマク
ロセルにつき2つから3つの積項でさえも無駄である。 このように、プログラマブル論理装置400は論理マク
ロセル当たりの積項の固定割当を有さないことによりこ
れらの制限を克服し、しかもなお装置400は論理アロ
ケータ411を介して各論理マクロセル412に対して
プログラム可能に利用できる4つから16の積項を有す
る。
用の85%から95%が、各論理マクロセルに対してR
ESET、PRESET、出力イネーブルまたはクロッ
クのような個々の制御積項を必要としないということを
発見した。ゆえに、各マクロセルに対して複数個の制御
積項を有する先行技術の装置は、多数の制御積項が無駄
にされるので同期応用に用いられるときシリコンの効率
がよくない。さらに、先に説明されたように、最大シリ
コン効率のために、論理マクロセルは積項アレイおよび
I/Oピンの両方から結合を外されなければならない。
クロセルの結合を外すことは最大シリコン効率のために
は十分ではない。I/Oピンから論理マクロセルの結合
を外すことは埋込レジスタとして論理マクロセルの用法
を復元するが、そのような結合を外すことは尺度決め可
能性の問題を解決しない。より重要な問題は、マクロセ
ルの数が増加されるにつれて積項アレイ大きさが一定ま
たはほぼ一定、すなわち約1つから5つの入力ラインに
よる変化、のまま残るようにマクロセルから積項アレイ
の結合を外すことである。
ように、積項資源をプログラマブル論理ブロック402
におけるすべてのマクロセル412の間で可変分布に割
当てる。このように、論理アロケータ411は積項アレ
イ410から使用されないマクロセル412の結合を実
質的に外し、かつ最小速度不利益、すなわち論理アロケ
ータ411の信号遅延時間を含むピンからピンへの信号
遅延時間が同等の密度の先行技術の装置より小さい状態
で、使用される論理マクロセル412につき最高12か
ら16の積項を割当てる。
D群のエクスパンダアレイ概念と明確な対照をなす。固
定割当積項非効率問題を解決するためにより特定的に、
いくらかの第2世代の中間密度のEPLDはエクスパン
ダ積項アレイの概念を選択する。折返しNANDアレイ
概念の変形であるエクスパンダアレイ概念は、1個の出
力ピンにつき少なくとも7つから8つの積項の固定され
たオーバヘッドの基本的な問題を解決するための1つの
試みである。エクスパンダ積項アレイはプログラマブル
論理装置の論理能力を拡張するために利用可能な割当て
られない積項の集合である。
ヘッドは1個のマクロセルにつき8つの積項の固定オー
バヘッドへの付加なので(3つから4つの論理積項プラ
ス4つの制御積項)、この試みは問題を解決するよりも
むしろ積項オーバヘッド問題を劣化させるように見える
。さらに、信号がアレイを通過するための時間は3つの
積項より多くを必要とする論理に対して約13ナノ秒か
ら16ナノ秒であったので、エクスパンダアレイは重要
な速度遅延をもたらす。
つの積項より多い論理集中応用に著しい性能不利益を課
するだけでなく、その概念はエクスパンダアレイと関連
する固定オーバヘッドにおいて著しい費用不利益を課し
、かつその結果より小さい論理集中的機能に対してより
大きいダイ大きさを課する。ゆえに、エクスパンダアレ
イと異なり、この発明の論理アロケータ411は論理マ
クロセル412から積項アレイ410の結合を外すだけ
でなく、シリコンダイ効率を提供する一方で論理集中的
応用に対して大きい速度劣化の排除をもたらす。特に、
固定資源は特定の応用に対する装置400の構成におい
ては無駄にされない。
ロセル412Aは同一なので図65に示された論理出力
マクロセル412A1はこの実施例におけるいずれかの
論理マクロセル412Aを表わす。論理マクロセル41
2A1において、論理アロケータ411Aからの複数個
の論理項はORゲート500へのn入力ライン上に与え
られる。ORゲート500の出力ラインは2−1プログ
ラマブル出力経路選択マルチプレクサ505の第1の入
力端子に接続され、かつ非同期リセット入力端子および
非同期プリセット入力端子を有する立上り縁がトリガさ
れたプログラマブルD型またはP型フリップフロップ5
03、すなわちプログラマブル記憶素子、の入力端子に
接続される。非同期プリセットライン410A69はフ
リップフロップ503の非同期プリセット端子に接続さ
れ、かつ非同期リセット積項ライン410A68はフリ
ップフロップ503の非同期リセット端子に接続される
。
図52から図55において示されたように、この発明の
プログラマブル論理装置の各々において、装置内の各プ
ログラマブル論理ブロック402は、以下でより完全に
説明されるように、埋込論理マクロセルを含む論理マク
ロセルにおいて各フリップフロップ503の適切な端子
に接続される非同期リセット積項ラインおよび非同期プ
リセット積項ラインを有する。専用入力ピン404A5
、404A6からのラインCLK0およびCLK1はそ
れぞれプログラマブル2−1クロック選択マルチプレク
サ501の第1および第2の入力端子に接続される。 プログラマブルマルチプレクサ501の状態はアーキテ
クチュアセル502によって決定される。セル502が
論理ゼロにプログラムされるとき、ラインCLK0上の
信号はマルチプレクサ501の出力ラインに与えられ、
それはフリップフロップ503のクロック入力端子に接
続される。逆に、セル502が論理1に設定されるとき
、ラインCLK1上の信号がフリップフロップ503の
クロック入力端子に与えられる。
プフロップ503をD型フリップフロップまたはT型フ
リップフロップのどちらかとして構成するために用いら
れる。フリップフロップ503の出力端子Qはプログラ
マブル出力経路選択マルチプレクサ505の第2の入力
端子に接続される。アーキテクチュアセル506は、第
1の入力端子上の信号、組合せ信号、または第2の入力
端子上の信号、登録信号のうちのどちらかがマルチプレ
クサ505の出力端子に与えられるようにマルチプレク
サ505を構成する。
ーキテクチュアセル506が論理1にプログラムされる
と、ORゲート500からの第1の入力端子上の信号が
マルチプレクサ505の出力端子に与えられて論理マク
ロセル412A1は組合せ出力を与える。逆に、アーキ
テクチュアセル506が論理ゼロにプログラムされると
き、フリップフロップ503からの出力信号がマルチプ
レクサ505の出力端子上に与えられるので論理マクロ
セル412A−1は登録セルとしての機能を果たす(図
68から図71)。マルチプレクサ505の出力端子上
の信号(図65)は、前もって説明されたようにスイッ
チマトリックス401へのフィードバックラインの1つ
であるライン427A1に与えられる。
ける最後の構造は、その第1の入力端子がマルチプレク
サ505の出力端子に接続されかつインバータを含む第
2の入力端子がまたマルチプレクサ505の出力端子に
接続されたプログラマブル2−1極性選択マルチプレク
サ507である。アーキテクチュアセル508はマルチ
プレクサ507の動作を制御する。
き、マルチプレクサ507はマルチプレクサ505から
の信号をI/Oセルに与える。逆に、アーキテクチュア
セル508が論理ゼロにプログラムされるとき、インバ
ータはマルチプレクサ505の出力端子からの信号を反
転するのでマルチプレクサ505からの信号の補数がI
/Oセルに与えられる。それゆえに、マルチプレクサ5
05は論理マクロセル412A1からの出力信号の極性
を決定する。
レクサ507は論理マクロセル内に含まれない。むしろ
、マルチプレクサ505への入力ラインの接続の直前で
記憶素子503への入力ラインにおいて配置される排他
的ORゲートが出力信号極性を制御するために用いられ
る。ゆえに、重要な局面は、論理マクロセル412A1
が論理信号極性を制御するための手段を含むということ
である。
ルは、出力信号がアクティブハイまたはアクティブロー
極性を有する登録または組合わせのどちらかであるよう
に構成されてもよい。論理マクロセルがレジスタとして
用いられるとき、論理マクロセルはD型またはT型フリ
ップフロップとしてさらに構成され得る。組込みT型フ
リップフロップ能力を伴なうプログラマブル極性はいく
つかの論理機能を実現するために必要とされる積項の数
を最小化する。
成は図66から図71にさらに詳細に示される。図66
はアクティブハイ極性を有する組合せセルとして構成さ
れたセルを示し、図67はアクティブロー極性を有する
組合せセルとして構成されたセルを示す。図68および
図69はD型フリップフロップならびにアクティブハイ
およびアクティブロー極性を有する登録セルとして構成
されたセルを示し、図70および図71はそれぞれアク
ティブハイおよびアクティブロー極性を有するT型フリ
ップフロップとしてのセルを示す。
0またはラインCLK1上の信号はこれらの図の各々が
実際2つの起こり得る構成を表わすようにマルチプレク
サ501により選択されてもよい。このように、この実
施例において、論理マクロセル412A1における4個
のプログラマブル構成セルで得られる合計10の可能な
構成があるが、4個のプログラマブル構成セルは合計1
6の可能な構成をサポートし得る。
号をI/Oセルに与え、かつまた出力信号を専用内部フ
ィードバックライン427A1を経てスイッチマトリッ
クス401に送る。フィードバック信号は登録または組
合せ信号のうちのどちらかに対して与えられ、かつ以下
でより完全に説明されるようにI/Oセル構成にかかわ
らず常に利用可能である。フィードバック信号は登録ま
たは組合せのどちらであってもよいので、フィードバッ
ク信号は埋込連続的または組合せ機能を許容しかつその
結果としてI/Oピンをただ入力ピンとしてだけ使用す
るために開放する。先に説明されたように、各論理マク
ロセルはI/OマクロセルによりI/Oピンから結合を
外される。
ラマブルフリップフロップ503は、D型フリップフロ
ップ、T型フリップフロップまたはラッチのうちのどの
1つとして構成されてもよいプログラマブル記憶素子に
よって置換される。アーキテクチュアセル504および
506は、マルチプレクサ505の出力端子上の信号が
(i)D型フリップフロップ出力信号、(ii)T型フ
リップフロップ出力信号、(iii)ラッチ出力信号、
または(iv)組合せ出力信号、のうちの1つであるよ
うにマルチプレクサ505およびプログラマブル記憶素
子を構成するのに用いられる。
プログラマブルフリップフロップ503は、T型フリッ
プフロップ、D型フリップフロップ、JKフリップフロ
ップ、RSフリップフロップまたはトランスペアレント
ラッチのうちの1つとして機能を果たすプログラマブル
記憶素子で置換される。この実施例において記憶素子は
4つのモードのうちの1つにおいて機能を果たすので、
2個のアーキテクチュアセルは記憶素子に対して必要と
される。また、1つの付加的な入力ラインまたは複数の
ラインがJKフリップフロップまたはRSフリップフロ
ップの機能をサポートするために必要とされてもよい。 記憶素子は、両方のセルが論理ゼロを与えるときT型フ
リップフロップとして、第1のセルが論理1を与えかつ
第2のセルが論理ゼロを与えるときD型フリップフロッ
プとして、第1のセルが論理ゼロを与えかつ第2のセル
が論理1を与えるときJKフリップフロップとして、か
つ両方のセルが論理1を与えるときRSフリップフロッ
プとして動作する。
ラマブル論理装置400の第2群400Bのプログラマ
ブル論理ブロックは複数個の論理出力マクロセル412
BAおよび複数個の埋込論理マクロセル412BBを含
む。ときどき出力論理マクロセルとして参照される論理
マクロセル412BAは論理マクロセル412A1に類
似しており、かつマクロセル412A1の説明がここで
参照することによって援用される。
もまた、埋込論理マクロセル412BBが極性制御マル
チプレクサ505を有しないことを除いて出力論理マク
ロセル412A、412BA(図65)と類似する。埋
込論理マクロセル412BB(図72)からの出力信号
は、スイッチマトリックス401Bへのライン427B
2上の内部フィードバック信号である。この発明の埋込
論理マクロセル412BBはプログラマブル論理装置4
00Bの論理能力を増加させ、かつセルなしに得られる
であろうものよりもより高いシリコン効率を与える。
ORゲート500はプログラマブル入力信号選択2−1
マルチプレクサ509の第1の端子に接続された出力ラ
インを有する。I/Oピンからの入力ラインはプログラ
マブルマルチプレクサ509の第2の入力端子に接続さ
れる。アーキテクチュア構成セル510はI/Oピンま
たはORゲート500からの信号がマルチプレクサ50
9の出力端子に与えられるようにマルチプレクサ509
を構成するのに用いられる。
ラマブルフリップフロップ503の入力端子D/Tおよ
びマルチプレクサ505の第2の入力端子に接続される
。埋込論理マクロセル412BBの残余は出力論理マク
ロセル412A1に対して先に説明されたように構成さ
れる。
異なる構成を有する。埋込論理マクロセル412BBは
、(i)論理アロケータ411からスイッチマトリック
ス401への組合せ出力(図73)、(ii)論理アロ
ケータ411からスイッチマトリックス401への登録
D型フリップフロップ信号(図74)、または(iii
)論理アロケータ411からスイッチマトリックス40
1への登録T型フリップフロップ信号(図75)、を与
え得る。
マクロセルが(i)スイッチマトリックス401への組
合せ入力信号(図76)、(ii)D型フリップフロッ
プからスイッチマトリックス401への登録入力信号(
図77)、または(iii)T型フリップフロップから
スイッチマトリックス401への登録入力信号(図78
)、を与えるようにマルチプレクサ509によって選択
され得る。登録信号の各々はラインCLK0上の信号、
ラインCLK1上の信号のいずれかでクロック動作され
得る。その代わりに、埋込論理マクロセル412BBは
論理出力マクロセル412A1におけるフリップフロッ
プ503に対して上述された代替の記憶素子を含み得る
。その説明はここで参照することによって援用される。
徴は動作の二重モード、すなわちスイッチマトリックス
401へのフィードバックを有する出力セルとしてまた
は登録入力セルとして機能を果たす埋込論理マクロセル
の能力である。バイパスできる登録入力を伴なう埋込論
理マクロセル412BBはプログラマブル論理装置40
0Bの利用およびシリコン効率を大いに増加させる。専
用入力ピン信号および埋込論理マクロセルフィードバッ
ク信号の両方はスイッチマトリックス401Bにいつで
も利用できる。これは、埋込論理マクロセルからの専用
入力ピン信号および登録入力信号、または専用入力ピン
信号プラス埋込登録フィードバック信号のいずれかの同
時使用を許容する。
および埋込論理マクロセル412BBの両方は2個の同
期クロック入力ピンのうちの1個からの信号によって個
々のマクロセル基準に基づいてクロック動作される。こ
のクロッキングはユーザが1つの装置においてフレキシ
ブルでかつ多状態マシンを実現することを許容する。さ
らに、クロック入力ピンのうちのいずれかがクロック信
号源として用いられても、ピンはスイッチマトリックス
への入力ピンとしてなお利用可能である。
理ブロックにおいていずれかの埋込論理マクロセルを含
むすべての論理マクロセルは共通非同期リセット積項お
よび共通非同期プリセット積項によって制御される。こ
のように、各プログラマブル論理ブロックに対して、出
力論理マクロセルにおいてであれ埋込論理マクロセルに
おいてであれ論理マクロセルにおけるすべてのフリップ
フロップは同時に初期設定される。
おける主要なファクタは最適シリコン効率構造における
性能および費用である。たとえば、多くのプログラマブ
ル論理装置は1つのチップ上で同期論理応用および非同
期論理応用の両方をサポートする。しかしながら、同期
および非同期論理応用の要求は異なる。この構成はより
フレキシブルな構造をもたらすが、構成は常に妥協を必
要とし、それは順に利用、速度およびシリコン効率に関
して効率的でない構造をもたらす。
の個々のリセット、プリセット、クロックおよび出力イ
ネーブル積項の固定割当である。積項のそのような割当
はかなりな融通性を提供するが、マクロセル当たり4積
項の固定割当−−同期論理応用に対して非常に費用のか
かる命題−−が必要とされる。制御積項は同期論理応用
のために実質的に無駄にされる。また、マクロセルは外
部同期クロックピンからのただ1つのクロック信号にだ
け限定され、それは順に装置を1つの同期状態マシンに
限定するので、個々の積項割当は論理マクロセルのため
のクロック選択を必要とする。
9に示される。I/Oマクロセル413はI/Oピン5
41に結合された1つのトライステートバッファ540
を有する。トライステートバッファの入力端子は出力論
理マクロセル、たとえば論理論理マクロセル412A1
または論理マクロセル412BAからの出力ラインに接
続される。バッファ540の制御端子は4−1プログラ
マブルマルチプレクサ542の出力ラインに接続される
。バッファ540の出力端子はまた装置の第1群400
Aにおけるスイッチマトリックス401Aに結合され、
かつ装置の第2群400Bにおけるスイッチマトリック
ス401Bおよび埋込プログラマブルマルチプレクサ5
09に結合される。
プレクサ542の第1の2つの入力に接続される。第3
の入力端子は電源電圧Vcc接続され、かつ第4の端子
は接地される。マルチプレクサ542は選択的に出力イ
ネーブル信号をバッファ540に与える。
キテクチュアセル543、544を有する。第1のセル
543が論理0にプログラムされ、かつ第2のセル54
4が論理1にプログラムされるとき、第1の出力イネー
ブル積項はトライステートバッファ540の制御端子に
与えられる。アーキテクチュアセル543、544の両
方が論理1にプログラムされるとき、第2の出力イネー
ブル積項はトライステートバッファ540の出力制御端
子に与えられる。アーキテクチュアセル543が論理1
にプログラムされ、かつセル544が論理0にプログラ
ムされるとき、電源電圧Vccがバッファ540の端子
に与えられ、アーキテクチュアセル543、544の両
方が論理0にプログラムされるとき、トライステートバ
ッファ540の端子は接地される。
540に与えられるとき、バッファ540は出力バッフ
ァとして使用することが永久的に可能になり、逆に制御
端子が接地されるときバッファ540はトライステート
にされてI/Oピン541は入力ピンとして永久的に機
能を果たす。出力イネーブル項のうちのいずれかが制御
端子に与えられるとき、I/Oピンは積項により制御さ
れる両方向I/Oピンとして機能を果たす。
のI/Oセルに共通する。2つの積項は、8個のI/O
セルのバンクが8I/Oマクロセル内の2つの別個の部
分的バンクとして構成されることを許容する。積項のう
ちの一方がI/Oマクロセルの第1の部分的バンクを制
御し、他方の積項がI/Oマクロセルの第2の部分的バ
ンクを制御する。このように、各I/Oマクロセルに対
する2つの積項の利用はPLD400の能力を大いに高
める。
、この構造がI/Oピン403から論理マクロセル41
2の結合を外すということである。I/Oピン403か
ら論理マクロセル412の結合を外すことは2つの主要
な利点を有する。まず、結合を外すことはプログラマブ
ルスイッチマトリックス401に対して二重フィードバ
ック能力を提供し、かつ次に結合を外すことは、接続性
問題を、ピンにおいて前もって決めるよりもむしろ、そ
れが属するスイッチマトリックス401に移す。二重フ
ィードバック能力は、カウンタ、シフトレジスタおよび
複雑な状態マシンのような大量の埋込論理を必要とする
応用に対して有益であり、かつ大量のピンを必要とする
I/O集中的応用は埋込論理に対してマクロセル機能を
確保する。
のマトリックスを介して通る各信号がスイッチマトリッ
クス内の同じ数のコンポーネントを介して通るように配
列される。このことは、スイッチマトリックス401を
通過するすべての信号に対する時間遅延が実質的に同じ
であることを確実にし、かつ所望されればスイッチマト
リックス401を通過する同時発生信号のグループの再
同期化を許容する。
速度を達成するために、マトリックスは完全叉点スイッ
チとして故意に実現されないでいた。スイッチマトリッ
クスは向上された機能性を達成するために完全叉点スイ
ッチとして実現され得る。しかしながら、完全叉点スイ
ッチマトリックスの向上された機能性は減少された速度
性能および増加されたダイ大きさをもたらす。
度性能およびダイ大きさ間のバランスを提供するように
選択された。スイッチマトリックス401は、上述のよ
うに、スイッチマトリックス401を通過するすべての
信号に対して均一で、固定された遅延時間を達成するた
めに単一の、集中型スイッチとして組立てられる。しか
しながら、スイッチマトリックス401はまた多分散型
スイッチとして実現されてもよい。この発明のスイッチ
マトリックス401および完全叉点スイッチマトリック
スの説明を考慮して、異なる程度の機能性、速度および
ダイ大きさを有する他のスイッチマトリックスが当業者
により設計されかつ実現され得る。
の第1群400Aのためのスイッチマトリックス401
Aは図80に示される。図80において、水平なライン
はスイッチマトリックス401Aへの信号入力ラインを
表わす。垂直ラインはプログラマブル論理ブロック40
2A−1、402A−2への入力ラインを表わす。水平
ラインおよび垂直ラインの交点における円はプログラマ
ブル接続を表わす。特に、以下でより完全に説明される
ように、スイッチマトリックス401Aは多数の4−1
プログラマブルマルチプレクサと、多数の5−1プログ
ラマブルマルチプレクサを含む。
プは、I/Oピン403A−1(図32)からの入力信
号を与えるライン428A−1(図80)である。16
の水平ラインの次のグループは論理マクロセル412A
−1(図32)からのライン427A−1(図80)で
ある。したがって、これらのラインはフィードバック信
号を論理マクロセル412A−1からスイッチマトリッ
クス401Aに与える。16の水平ラインの第3グルー
プはI/Oピン403A−2(図32)からのライン4
28A−2(図80)であり、かつ16の水平ラインの
第4グループは論理マクロセル412A−2からのライ
ン427A−2(図80)である。次の1組のラインは
専用入力ピン404A−1および404A−2からの専
用入力ラインである。最下位の6つの水平ラインは4個
の専用入力ピン404A−3、404A−4ならびに2
個のクロック/入力ピン404A−5および404A−
6に接続される。
らの第1の22の垂直ライン426A1−1から426
A22−1はプログラマブル論理ブロック402A−1
への入力ライン426A−1に接続される。スイッチマ
トリックス401Aの右手側の残りの22垂直ライン4
26A1−2から426A22−2はプログラマブル論
理ブロック402A−2の入力ライン426A−2であ
る。
マブル論理ブロックと関連する部分は、選択されたスイ
ッチマトリックス入力ライン、図80における水平ライ
ンを、選択されたスイッチマトリックス出力ライン、順
にプログラマブル論理ブロックへの入力ラインである図
80における垂直ラインにプログラム可能に結合する合
計20のプログラマブルマルチプレクサを有する。この
ように、スイッチマトリックス401Aは合計40のプ
ログラマブルマルチプレクサからなる。
と関連する20のプログラマブルマルチプレクサの各グ
ループにおいて、マルチプレクサのうち16は4−1マ
ルチプレクサであり、かつ4つは5−1マルチプレクサ
である。各プログラマブル論理ブロックのための入力ラ
インのうちの2つはスイッチマトリックス401Aによ
って専用入力ピンに直接接続される。図80において、
各垂直ラインは、マルチプレクサのうちの1つからの出
力ラインかまたは2つの固定ラインのうちの1つかのど
ちらかである。垂直ライン上の円は、特定のマルチプレ
クサの入力ラインおよび出力ライン間のプログラマブル
接続を表わす。
目の垂直ラインはプログラマブル論理ブロック402A
−1への入力ライン426A9−1であり、かつプログ
ラマブル4−1マルチプレクサの出力ラインである。こ
のマルチプレクサへの入力ラインはプログラマブル論理
ブロック402Aの第9I/Oピンからのライン428
A9−1、第1論理マクロセル412A1−1からのラ
イン427A1−1および第2プログラマブル論理ブロ
ック402A−2からの対応するラインである。
ロック402A−1、402A−2に対する16の入力
信号は、4つの異なる源、すなわち2つのI/Oピン源
および二重フィードバック能力を許容するために回転さ
れる2つのマクロセルフィードバック源、から抽出され
る。
ルチプレクサは、入力ラインのうちのただ1つが出力ラ
インに接続されるようにマルチプレクサを構成するため
に用いられる2個のアーキテクチュアセルを有する。ア
ーキテクチュアセルは入力選択信号をマルチプレクサに
与える。各グループのマルチプレクサに対する資源選択
は表4および表5において表わされる。表5において、
マルチプレクサは入力信号をただ1つのプログラマブル
論理ブロックからだけ受けとるので、ブロック402A
−1と関連するマルチプレクサのみが表5に与えられる
ということに注目されたい。ブロック402A−2に対
するアーキテクチュアセル構成は源がブロック402A
−2からのものであるという以外はブロック402A−
1に対して示されたものと同じである。
号以外の各入力信号がプログラマブル論理ブロックへの
少なくとも2つの異なる入口点を有することに注目され
たい。このように、スイッチマトリックス401Aへの
入力信号源は適切に回転されるので、いかなる論理マク
ロセルおよびその論理マクロセルと関連するI/Oピン
に対しても、論理マクロセルフィードバック信号および
対応するI/Oピン上の信号の両方が装置400Aにお
ける各プログラマブル論理ブロックに利用できる。
1の4−1マルチプレクサへの入力であるが、フィード
バック信号は第9の4−1マルチプレクサへの入力であ
る。このように、この回転は積項アレイの大きさを増加
することなく埋込登録能力を許容する。ゆえに、先行技
術の装置と異なり、積項アレイの大きさは論理マクロセ
ルの数に関係しない。
信号または異なる入力信号を受取ってもよいということ
にも注目されたい。これは構造が各アレイに共通な最大
22の入力を有するモノリシックアレイとしてか、また
は総最大数42の入力信号を有する2つの別個の比較的
無関係な分割アレイとして機能を果たすことを許容する
。
現が図81および図82において示される。表示を簡単
にするために、ブロック402A−1および402A−
2はそれぞれブロック“A”および“B”として表わさ
れる。同様に、論理マクロセル412A1−1はA1と
なり、かつ論理マクロセル412A1−2はB1となる
ので、ブロック420A−1におけるマクロセルはマク
ロセルA1からA16の範囲にわたり、かつブロック4
02A−2ではマクロセルB1からB2の範囲にわたる
。フィードバックラインはマクロセル番号で表わされる
。1個のマクロセルと関連するI/Oピンは脱字記号“
^”が後に続くマクロセル番号によって表わされる。 専用入力ピン404AはI1からI6まで番号を付けら
れる。
群400Bに対するスイッチマトリックス401Bは図
83および図84に示される。スイッチマトリックス4
01Bは連続的な装置であるが、スイッチマトリックス
401Bは表示を簡単にするために図において2つの部
分に分けられる。水平ラインはスイッチマトリックス4
01Bへの信号入力ラインを表わす。垂直ラインはプロ
グラマブル論理ブロック402B−1から402B−4
への入力ラインを表わす。水平ラインおよび垂直ライン
の交点における円はプログラマブル接続を表わす。特に
、以下でより完全に説明されるように、スイッチマトリ
ックス401Bは多数の12−1プログラマブルマルチ
プレクサと、多数の4−1プログラマブルマルチプレク
サを含む。
プはI/Oピン403B−1(図39および図40)か
らの入力信号を与えるライン428B−1(図83、図
84)である(プログラマブル論理ブロック402B−
1と関連する)。16の水平ラインのうちの次のグルー
プは論理マクロセル412B−1(図39および図40
)からのライン427B−1(図83、図84)である
。ライン427B−1における第1グループの8つのラ
イン427BA−1は出力論理マクロセル412BA−
1からのものであり、かつライン427B−1における
第2グループの8つのラインはプログラマブル論理ブロ
ック402B−1の埋込論理マクロセル412BB−1
からのものである。したがって、ライン427B−1は
論理マクロセル412B−1からのフィードバック信号
を与える。
428B−3、427B−3、428B−4、427B
−4は、プログラマブル論理ブロック402B−1に対
するライン428B−1、427B−1のように、それ
ぞれプログラマブル論理ブロック402B−2、402
B−3および402B−4に対する同等のラインである
。次の1組のライン429B1、429B2は専用入力
ライン404B−1および404B−2からの専用入力
ラインである。最下位の4つの水平ラインは専用入力ピ
ン404B−3、404B−4ならびに2個のクロック
/入力ピン404B−5および404B−6に接続され
る。
4グループの22のラインに配列される。22ラインの
各グループは装置400Bにおけるプログラマブル論理
ブロック402Bのうちの1つに対する入力ラインの1
組である。さらに、4グループのラインの各々における
16の垂直ライン426B1−nから426B16−n
、ここでn=1,2,3,4、のグループは同一の態様
で水平入力ラインにプログラム可能に結合される。4グ
ループの22ラインの各々における2つのライン426
B17−nおよび426B18−nのグループはそれぞ
れ専用入力ライン429B1、429B2に接続される
。
りの4つの垂直ラインは (i) 専用入力ライン429B3から429B6、
および (ii) 4つの垂直ラインがそこへの入力ラインで
あるプログラマブル論理ブロックからの選択された入力
ラインにプログラム可能に結合される。
らの第1の22垂直ライン426B1−1から426B
22−1(図83)は、プログラマブル論理ブロック4
02B−1への入力ライン426B−1である。スイッ
チマトリックス401Bの右手側の残りの22垂直ライ
ン426B1−2から426B22−2はプログラマブ
ル論理ブロック402B−2への入力ライン426B−
2である。同様に、2組の22ライン、426B1−3
から426B22−3および426B1−4から426
B22−4はそれぞれプログラマブル論理ブロック40
2B−3および402B−4への入力ラインである。
マブル論理ブロックと関連する部分は、スイッチマトリ
ックス入力ライン、図83、図84における水平ライン
を、スイッチマトリックス出力ライン、プログラマブル
論理ブロックへの入力ラインである図83、図84にお
ける垂直ラインにプログラム可能に結合する合計20の
プログラマブルマルチプレクサを有する。このように、
スイッチマトリックス401Bは合計80のプログラマ
ブルマルチプレクサから成る。
と関連する20のプログラマブルマルチプレクサの各グ
ループにおいて、マルチプレクサのうち16は12−1
マルチプレクサであり、4つは4−1マルチプレクサで
ある。各プログラマブル論理ブロックに対する入力ライ
ンの2つはスイッチマトリックス401Bによって専用
入力ピンに直接接続される。図83および図84におい
て、各垂直ラインはマルチプレクサの1つからの出力ラ
インかまたは2つの固定ラインのうちの1つである。垂
直ライン上の円は特定のマルチプレクサの入力ラインお
よび出力ライン間のプログラマブルコネクタを表わす。
1、402B−2、402B−3、402B−4に対す
る16の入力信号は、二重フィードバック能力を許容す
るために回転される、12の異なる源、すなわち4つの
I/Oピン源、4つの埋込論理マクロセルフィードバッ
ク源および4つの出力論理マクロセルフィードバック源
、から抽出される。
マルチプレクサは、入力ラインのうちのただ1つが出力
ラインに接続されるようにマルチプレクサを構成するた
めに用いられる4個のアーキテクチュアセルを有する。 マルチプレクサの各グループに対する資源選択は表6お
よび表7に表わされる。
号以外の各入力信号がプログラマブル論理ブロックへの
少なくとも2つの異なる入口点を有することに注目され
たい。このように、スイッチマトリックス401Bへの
入力信号源は適切に回転されるので、いかなる出力論理
マクロセルおよびその出力論理マクロセルに関連するI
/Oピンに対しても出力論理マクロセルフィードバック
信号および対応するI/Oピン上の信号の両方が装置4
00Bにおける各プログラマブル論理ブロックに利用で
きる。このように、この回転は積項アレイの大きさを増
加させることなく出力論理マクロセルに対する埋込登録
能力を許容する。各プログラマブル論理ブロックが同じ
入力信号または異なる入力信号を受取ってもよいことに
も注目されたい。このことは構造が最大22の入力を有
するモノリシックアレイとしてか、または総最大数82
の入力信号を有する4つの別個の比較的関係のない分割
アレイとして、機能を果たすことを許容する。
示は図85から図88に示される。表示を簡単にするた
めに、プログラマブル論理ブロック402B−1から4
02B−4はそれぞれブロック“A”、“B”、“C”
および“D”として表わされる。同様に、出力マクロセ
ルおよび埋込論理マクロセルはブロック文字および列4
12Bにおけるマクロセルの位置の番号によって表わさ
れる。したがって、プログラマブル論理ブロックAに対
する出力論理マクロセルおよび埋込マクロセルはA1か
らA16まで番号を付けられ、ここでA1、A3、・・
・、A15は出力マクロセルであり、かつ番号A2、A
4、・・・、A16は埋込マクロセルである。他のプロ
グラマブル論理ブロックにおけるマクロセルは同様に番
号を付直される。スイッチマトリックス401Aに対し
て先に示されたように、フィードバックラインはマクロ
セル番号によって表わされる。1個のマクロセルと関連
するI/Oピンは脱字記号“^”が後に続くマクロセル
番号によって表わされる。専用入力ピン404Bはそれ
ぞれI1からI6まで番号を付けられる。図85から図
88は図83および図84と完全に等しく、ただ、スイ
ッチマトリックス401Bを含むプログラマブルマルチ
プレクサ入力ラインおよび出力ラインを示す別の方法な
のである。
Bの先の実施例において、スイッチマトリックス401
は装置における各プログラマブル論理ブロックに対して
22の入力ラインを駆動した。先に説明されたように重
要な局面は、入力ラインの数が固定されており、かつ論
理マクロセルまたは専用入力ピンの数における変化とと
もに変化しないということである。別の実施例において
(図示せず)、プログラマブル論理装置のアーキテクチ
ュアは装置400Aと類似する。しかしながら、この実
施例において装置は4つの同一のプログラマブル論理ブ
ロックを有し、先に説明されたように各々がプログラマ
ブル論理ブロック402Aと実質的に同一である。しか
しながら、この実施例において、積項アレイへの入力ラ
インの数は24である。この実施例に対するスイッチマ
トリックスは図89から図92に示される。
は文字“A”、“B”、“C”、“D”によって識別さ
れる。論理マクロセルは1から16まで番号を付けられ
るので、論理マクロセルA10は第1のプログラマブル
論理ブロックにおける第10の論理マクロセルである。 1個の論理マクロセルと関連するI/Oピンは脱字記号
“^”によって示される。図89から図92に示される
ように、スイッチマトリックスは各プログラマブル論理
ブロックに対して24の13−1プログラマブルマルチ
プレクサから成る。したがって、スイッチマトリックス
は52のプログラマブルマルチプレクサを有する。
プログラマブル論理ブロックへの入力ラインを表わし、
その入力ラインと並ぶ他の番号は13−1プログラマブ
ルマルチプレクサへの入力ラインを表わす。したがって
、この発明のスイッチマトリックス401は様々に異な
って尺度決めされたプログラマブルマルチプレクサを用
いて実現されてもよく、それぞれの場合においてスイッ
チマトリックスは固定された予測可能な遅延時間を有し
、かつ各入力信号がスイッチマトリックスを介してプロ
グラマブル論理ブロックの入力ラインに通じるための多
数の経路を提供する。
のプログラマブル論理装置400A、400Bは複数個
のプログラマブル接続を有する。プログラマブル接続は
多数の電気的に消去可能なセルによって制御される。セ
ルの数は特定の実現に依存するが、装置400A(図3
2)および装置400B(図39および図40)に対す
るセルの数はそれぞれ表8および表9に与えられる。
マブルアーキテクチュアセルだけが説明された。これら
の応用におけるセルはこの発明に従うヒューズ、EPR
OMセルまたはEEPROMセルであってもよい。アー
キテクチュアセルは、装置が所望の信号をそこを介して
通すように、入力選択信号または出力選択信号をプログ
ラマブル装置に与えるための手段である。
レイを、そのような積項の和を形成するためにORゲー
トのアセンブリが後に続く、論理変数の積を形成するた
めに用いられるANDゲートのアセンブリとして説明し
た。しかしながら、当業者に公知の論理変換を用いて、
好ましい実施例においてプログラマブルAND、固定O
Rアレイ(AND/ORアレイ)はプログラマブルNO
R、固定NORアレイによって置換えられる。NOR論
理を用いることは同等のプログラマブルAND/ORア
レイを超える向上された速度を提供するが、2つのアレ
イの論理機能は同等である。
の補数(数1)を形成するインバータを含んでもよい。
でドモルガンの定理
ートのアセンブリが後に続く、論理変数の和を形成する
ためのORゲートのアセンブリとして配列されてもよい
。たとえば、論理積項の和A・B+C・D+E・F・G
は補数をとられた変数の和の積の補数、すなわち
08】
に、論理積の論理和および論理和の論理積はここで“論
理和/積項”として集合的に参照される。
たとえばPALモードで表わされ、ここでANDゲート
は通常プログラム可能であり、かつORゲートは通常固
定されている。上で与えられたドモルガンの定理を用い
かつ信号インバータを信号経路に組込むことにより、ゲ
ート構成をプログラマブルORゲートおよび固定AND
ゲートに関して表わすことができる。より一般的に、ゲ
ートをPLAモードで構成してもよく、ここにおいてA
NDゲートおよびORゲートの両方はプログラム可能で
ある。
のスイッチング特性は表10に与えられる。そのパラメ
ータ記号およびパラメータ規定はPAL装置データブッ
ク(PAL Device Data Book
)、アドバンスト・マイクロ・ディバイシズ、サニィベ
イル、CA、PP.5−533から5−535(198
8)においてより完全に説明され、それはここで参照す
ることにより援用される。
保証される最大クロック速度である。プログラマブル論
理装置に固有の融通性はクロック動作されたフリップフ
ロップ設計の選択を提供するので、パラメータfMAX
は3つの形式の同期設計に特定される。
フィードバック信号を有する状態マシンである。この外
部フィードバックは装置入力ピン、または多チップ状態
マシンにおける第2の装置に戻ることができる。期間を
規定する一番遅い経路は、外部信号に対するクロック−
出力時間および入力セットアップ時間の和(tS +t
CO)である。逆数、fMAX は外部フィードバック
での、または同等の速度装置に関する最大周波数である
。 このfMAX は“fMAX 外部”と呼ばれる。
みを有する単一チップ状態マシンである。この場合、フ
リップフロップ入力は装置入力およびフリップフロップ
出力により規定される。これらの条件の下で、期間は内
部フィードバックおよび論理を介してフリップフロップ
出力からフリップフロップ入力への内部遅延(tS +
tCF)によって制限される。このfMAXは“fMA
X 内部”と呼ばれる。
ある。この場合、入力データがフリップフロップに提供
されかつクロックで通され、フィードバックは用いられ
ない。これらの条件の下で期間はデータセットアップ時
間およびデータ保持時間の和(tS +tH )によっ
て制限される。しかしながら、各fMAX 形式の期間
に対する下限は最小クロック期間(tWH+tWL)で
ある。通常、この最小クロック期間は“fMAX フィ
ードバックなし”と呼ばれる第3のfMAX に対する
期間を決定する。
る高速RISCおよびCISCマイクロプロセッサ応用
の50MHzシステムクロックをサポートする。先に説
明されたように、群400に対する外部fMAX は5
0MHzである。この50MHzの周波数は、クロック
−外部ピン遅延時間およびフリップフロップのセットア
ップ時間を含む。ゆえに、状態マシンは50MHzシス
テムクロック周波数で実行する装置400において実現
され得る。データ信号は、第2の装置に通信するためか
、またはことによると50MHzクロック速度で外部か
ら装置400にフィードバックするためにオフチップで
送られ得る。
トすることに加えて、装置400の群は62.5MHz
の内部クロック周波数および最大83MHzのパイプラ
イン化された周波数をサポートする。
の単純な時間遅延パラメータ、すなわちアレイ遅延およ
びスイッチマトリックス遅延、を有する。スイッチマト
リックス401およびプログラマブルアレイ時間遅延を
含む、1つのプログラマブル論理ブロック402に対す
る入力−出力、ピン−ピン遅延は、最悪の場合で約15
nsである(温度、電圧を含む)。外部からマルチプル
プログラマブル論理ブロックを通過する信号に対して、
遅延時間は15nsの単純倍数である。たとえば、スイ
ッチマトリックス401を経て2つのプログラマブル論
理ブロックを通過する信号に対する時間遅延は約30n
sであり、3ブロック時間遅延は約45nsである。こ
の発明の装置に対する遅延計算は単純で、早く、予測可
能でかつ内部経路に関係しない。これは、遅延が遅く、
変わりやすく、内部経路に依存し、かつ計算するのがか
なり長たらしい、複雑な、中位密度PLDのいくつかと
は異なる。装置400の群は伝統的PAL装置の固有な
単純さおよび固定時間予測可能性を維持し、設計を実現
する前に設計者にかなり単純で、予測可能な性能を提供
する。
速度でゲート集中機能およびレジスタ集中機能の両方を
サポートする。たとえば、16ビットアドレスデコーダ
、16ビットマルチプレクサもしくは4−16デマルチ
プレクサ(ゲート集中的機能)または16ビットロード
可能なアップダウンカウンタおよび16ビット2進同期
カウンタ(レジスタ集中的機能)が50MHzの最大周
波数で実現され得、装置400が最大50MHzのRI
SCおよびCISCマイクロプロセッサで作動されるこ
とを可能にする。
を有するプログラマブル論理ブロック402構造は、3
0nsの固定された最悪の場合の時間遅延の2つのレベ
ルを経て極めて論理集中的論理機能をサポートする。4
つのプログラマブル論理ブロック402を有する、装置
400Bのようなプログラマブル論理装置400におい
て、192より多い積項論理関数が30ns時間遅延で
組入れられ得る。
クチュアは、装置のプログラミングのために単純で、使
用するのが容易なソフトウェアを必要とし、かつ費用が
かかり、複雑なソフトウェアパッケージの必要を不要に
する。
設計入力機構、たとえばブールの等式および状態マシン
、を経て入力される。臨界ピン上に置かれることを必要
とする信号はユーザによって特定され得る。ソフトウェ
ア適合手段はプログラマブル論理装置400の資源をユ
ーザ設計において論理式の各々に割当てる。
の結果として、この発明のアーキテクチュアへの設計は
すぐに構成される。適合手段は、いかなる手操作介入も
ない、最適ブロック区分(ユーザ論理式を1つのプログ
ラマブル論理ブロックに適合させること)と、信号をス
イッチマトリックスを経て適切なブロックに送ることと
についての知能および知識を有する。ゆえに、設計者は
いかなる手操作の経路指定または論理の適合についても
心配する必要はない。
に対してJEDECファイルを発生する。装置400は
適切な個性およびソケットアダプタモジュールを有する
従来の産業基準のPALプログラマに基づいてプログラ
ムされ得る。適合手段の一実施例は、係属の、共通して
出願されかつ同一の譲受人に譲渡され、N.シュミーツ
(Schmitz)の「プログラマブル論理装置におけ
る資源の割当てのための装置および方法」と題された米
国特許連続番号第 / ,号において
説明され、それはここでそっくりそのまま参照すること
によって援用される。
12はパワーアップの間にリセットされるように設計さ
れている。パワーアップに続いて、すべてのプログラマ
ブル論理マクロセル412はクリアされ、出力信号を論
理ゼロにセットする。この特徴は状態マシン初期設定を
単純化する際に特に役立つ。
を防ぐために、各装置上にセキュリティセルが設けられ
る。一度プログラムされると、セキュリティセルはプロ
グラミングおよびベリフィケーションモードを割込禁止
にする。保護セルを消去するためのただ1つの方法はア
レイアーキテクチュアセル全体を充電することによる。 このセルは好ましくは装置の残りが完全にプログラムさ
れた後にだけプログラムされるべきである。
能性を検査するための簡単な方法を提供する超電圧能動
化プリロードで設計される。
ドされるべきいかなる任意の状態値をも許容する。典型
的な機能テストシーケンスはテストされている装置に対
するすべての起こり得る状態移行を確かめるはずであろ
う。これは、状態レジスタを任意の“現在の状態”にセ
ットし、かつ装置を任意の“現在の入力”値にセットす
るための能力を必要とする。一度このことがなされると
、状態マシンは“現在の状態”からの移行を確認するた
めに検査され得る新しい状態、または次の状態にクロッ
ク動作される。この方法で、いかなる特定の状態移行も
検査され得る。
態にも直接進めるようにするので、テストシーケンスは
かなり短くされてもよい。また、すべての起こり得る値
がテストされ得、こうしてテスト時間および開発費用の
両方を大いに削減し、かつ適切なインシステム動作を保
証する。
部状態または対応するI/Oピン上の出力レジスタの内
容を観測するための能力を許容する。この可観測性モー
ドは超電圧を特定のピンに印加することによって入力さ
れる。一度このモードが入力されると、それは組合せ出
力データがI/Oピン上に現われることを抑制し、かつ
プログラマブル論理マクロセルに対応する出力ピン上の
出力レジスタの内容の観測を許容する。このことは埋込
レジスタの容易なデバッギングおよび追跡を許容する。
数のアーキテクチュア構成セルを有するプログラマブル
マルチプレクサを有する実施例に関して説明されたので
あり、これらの実施例はただ例示的なだけであり、かつ
この発明の範囲を制限することは意図されない。この発
明の原理に従って、当業者はマルチプレクサへのライン
の様々な構成を実現することができ、かつ先行技術のプ
ログラマブル装置には存在しない融通性を達成するため
に先に説明されたように構成セルを加えるかまたは減ら
すことができる。
説明された。しかしながら、金属マスクオプションを介
するPLD400Bは非同期応用のために構成され得る
。特に、1つの実施例において、図52から図55にお
いては埋込論理マクロセルと向かい合う各積項群への接
続は、この積項群が積制御項を隣接する出力論理マクロ
セルに与えるように再分布される。埋込論理マクロセル
はこの実施例においては利用されず、かつ実際シリコン
ダイ上に含まれなくてもよい。
ラマブル論理ブロックにおける様々なコンポーネントの
結合を外すこと、対称配置および高速スイッチマトリッ
クス、は様々なプログラマブル論理装置において実現さ
れてもよい。したがって、上述の実施例はただこの発明
の原理を例示するだけであり、かつこの発明を開示され
た特定の実施例に制限することは意図されない。
の先行技術の入力/出力マクロセルのブロック図である
。
の一部を示す。
の一部を示す。
の一部を示す。
を示す。
を示す。
装置のブロック図の一部である。
装置のブロック図の一部を示す。
図である。
図である。
である。
置の別の実施例の概念ブロック図である。
置の実施例の概略ブロック図の一部である。
置の実施例の概略ブロック図の一部である。
置の実施例の概略ブロック図の一部である。
置の実施例の概略ブロック図の一部である。
置の実施例の概略ブロック図の一部である。
置の実施例の概略ブロック図の一部である。
置の実施例の概略ブロック図の一部である。
置の実施例の概略ブロック図の一部である。
置の他の実施例の概略ブロック図の一部である。
置の他の実施例の概略ブロック図の一部である。
置の他の実施例の概略ブロック図の一部である。
置の他の実施例の概略ブロック図の一部である。
置の他の実施例の概略ブロック図の一部である。
置の他の実施例の概略ブロック図の一部である。
置の他の実施例の概略ブロック図の一部である。
置の他の実施例の概略ブロック図の一部である。
ログラマブル論理装置の実施例の概念ブロック図である
。
ックのより詳細なブロック図である。
置の1つの群のより詳細なブロック図である。
ル論理装置の実施例を示すより詳細なブロック図である
。
ル論理装置の実施例を示すより詳細なブロック図の一部
である。
ル論理装置の実施例を示すより詳細なブロック図の一部
である。
ル論理装置の実施例を示すより詳細なブロック図の一部
である。
ル論理装置の実施例を示すより詳細なブロック図の一部
である。
ル論理装置のブロック図の一部である。
ル論理装置のブロック図の一部である。
ル論理装置の実施例のより詳細なブロック図の一部であ
る。
ル論理装置の実施例のより詳細なブロック図の一部であ
る。
ル論理装置の実施例のより詳細なブロック図の一部であ
る。
ル論理装置の実施例のより詳細なブロック図の一部であ
る。
ル論理装置の実施例のより詳細なブロック図の一部であ
る。
ル論理装置の実施例のより詳細なブロック図の一部であ
る。
ル論理装置の実施例のより詳細なブロック図の一部であ
る。
ル論理装置の実施例のより詳細なブロック図の一部であ
る。
ル論理装置の実施例のより詳細なブロック図の一部であ
る。
ル論理装置におけるプログラマブル論理ブロックの概略
図の一部である。
ル論理装置におけるプログラマブル論理ブロックの概略
図の一部である。
ル論理装置におけるプログラマブル論理ブロックの概略
図の一部である。
ル論理装置におけるプログラマブル論理ブロックの概略
図の一部である。
ル論理装置におけるプログラマブル論理ブロックの概略
図の一部である。
ル論理装置におけるプログラマブル論理ブロックの概略
図の一部である。
ル論理装置におけるプログラマブル論理ブロックの概略
図の一部である。
ル論理装置におけるプログラマブル論理ブロックの概略
図の一部である。
の論理アロケータにおけるルータエレメントを示す。
の論理アロケータにおけるルータエレメントを示す。
の論理アロケータにおけるルータエレメントを示す。
を示す。
の論理アロケータにおけるルータエレメントを示す。
の論理アロケータにおけるルータエレメントを示す。
の論理アロケータにおけるルータエレメントを示す。
の論理アロケータにおけるルータエレメントを示す。
を示す。
クロセルの概略図である。
ルの可能な構成を示す。
ルの可能な構成を示す。
ルの可能な構成を示す。
ルの可能な構成を示す。
ルの可能な構成を示す。
ルの可能な構成を示す。
理マクロセルの概略図である。
構成を示す。
構成を示す。
構成を示す。
構成を示す。
構成を示す。
構成を示す。
略図である。
グラマブルマルチプレクサの図である。
401Aにおけるプログラマブルマルチプレクサへの入
力ラインおよび出力ラインの代替の表示である。
401Aにおけるプログラマブルマルチプレクサへの入
力ラインおよび出力ラインの代替の表示である。
Bのプログラマブルマルチプレクサの概略図である。
Bのプログラマブルマルチプレクサの概略図である。
Bにおけるプログラマブルマルチプレクサの入力ライン
および出力ラインの代替の表示である。
Bにおけるプログラマブルマルチプレクサの入力ライン
および出力ラインの代替の表示である。
Bにおけるプログラマブルマルチプレクサの入力ライン
および出力ラインの代替の表示である。
Bにおけるプログラマブルマルチプレクサの入力ライン
および出力ラインの代替の表示である。
ログラマブルマルチプレクサの別の実施例を示す。
ログラマブルマルチプレクサの別の実施例を示す。
ログラマブルマルチプレクサの別の実施例を示す。
ログラマブルマルチプレクサの別の実施例を示す。
は集積回路、311および312はプログラマブルアレ
イ手段、351および360は多重化手段、400はプ
ログラマブル論理装置、401はプログラマブルスイッ
チ相互接続マトリックス、402はプログラマブル論理
ブロック、403はI/Oピン、410はプログラマブ
ル積項アレイ、411はプログラマブル論理アロケータ
、412はプログラマブル論理マクロセル、413はプ
ログラマブルI/Oマクロセル、501、505、50
7、509および542はマルチプレクサ、503は記
憶素子、520はルータエレメント、522はデマルチ
プレクサ、540はトライステートバッファである。
Claims (22)
- 【請求項1】 複数個のピンを有する集積回路であっ
て、複数個のプログラマブル論理ブロックを含み、各プ
ログラマブル論理ブロックは複数個の入力ラインおよび
複数個の出力ラインを有し、作動的に前記プログラマブ
ル論理ブロックの各々に結合され、前記複数個のプログ
ラマブル論理ブロックからの前記複数個の出力ライン上
の信号を受取るための、かつ、入力信号を前記複数個の
プログラマブル論理ブロックの前記複数個の入力ライン
に与えるためのプログラマブルスイッチ相互接続手段を
含み、ここにおいて各プログラマブル論理ブロックは、
プログラマブルスイッチ相互接続手段に作動的に結合さ
れ、前記複数個のプログラマブル論理ブロック入力ライ
ンだけから複数個の入力信号を受取るための、かつ複数
個の出力信号を発生するためのプログラマブルアレイ手
段と、複数個のプログラマブル論理マクロセル手段とを
含み、各プログラマブル論理マクロセル手段は前記プロ
グラマブルスイッチ相互接続手段に作動的に結合され、
少なくとも1つの入力ラインおよび1つの出力ラインを
有し、前記プログラマブルアレイ手段に作動的に結合さ
れ、かつ選択的に作動的に前記複数個のプログラマブル
論理マクロセルの各々に結合されかつその各々から結合
を外され、前記プログラマブルアレイ手段の前記複数個
の出力信号を前記複数個のプログラマブル論理マクロセ
ルの選択された入力ラインに進めるための、かつ前記プ
ログラマブルアレイ手段から前記複数個のプログラマブ
ル論理マクロセルの前記選択されない入力ラインの結合
を外すための論理アロケータ手段をさらに含み、かつ複
数個のプログラマブル入力/出力(I/O)マクロセル
手段をさらに含み、各I/Oマクロセル手段は前記ピン
のうちの1個に接続されかつ前記プログラマブル論理マ
クロセル手段のうちの1つの出力ラインに接続されて前
記ピンへの前記プログラマブル論理マクロセル出力ライ
ンを選択的に接続しかつ切離す、集積回路。 - 【請求項2】 前記プログラマブルスイッチ相互接続
手段は、多数の多重化手段を含み、前記多重化手段の各
々は多数の入力ラインおよび1つの出力ラインを有し、
かつ前記多重化手段の各々は入力選択信号に応答して選
択された入力ライン上の信号をそこを介して出力ライン
に通し、かつ入力選択信号を多数の多重化手段の各々に
与えるための手段とをさらに含む、請求項1に記載の集
積回路。 - 【請求項3】 前記プログラマブル論理マクロセル手
段の各々は、前記論理マクロセル入力ラインに作動的に
結合され、入力端子および出力端子を有するプログラマ
ブル記憶手段と、第1のプログラマブル手段とを含み、
前記第1のプログラマブル手段は、前記マクロセル入力
ラインおよび前記プログラマブル記憶手段の前記出力端
子に作動的に結合され、かつ出力ラインを有し、そこを
介して前記入力ライン上の信号により駆動される信号ま
たは前記プログラマブル記憶手段からの信号を前記第1
のプログラマブル手段の出力ラインに結合し、ここにお
いて前記第1のプログラマブル手段出力ラインは前記プ
ログラマブルスイッチ相互接続手段に接続され、かつ前
記プログラマブル記憶手段および前記論理マクロセル入
力ラインに作動的に結合され、論理信号の極性を制御す
るための手段をさらに含み、ここで動作の第1モードに
おいて、前記極性制御手段は入力信号に応答して第1の
出力信号を発生し、かつ動作の第2モードにおいて前記
極性制御手段は前記入力信号に応答して第2の出力信号
を発生し、かつ前記第2の出力信号は前記第1の出力信
号の反転である、請求項1に記載の集積回路。 - 【請求項4】 前記プログラマブルI/Oマクロセル
手段は、イネーブル信号を選択的に与えるための手段と
、プログラマブル論理マクロセルの出力ライン、前記ピ
ンのうちの1個およびイネーブル信号付与手段に作動的
に接続され、前記極性制御手段からの前記信号を前記ピ
ンに選択的に与えるための手段とをさらに含み、ここに
おいて前記付与手段は前記極性制御手段からの前記信号
を前記イネーブル信号を受取るときのみそこを介して通
す、請求項3に記載の集積回路。 - 【請求項5】 前記複数個のプログラマブル論理マク
ロセル手段は第1複数個のプログラマブル出力論理マク
ロセル手段および第2複数個の埋込論理マクロセル手段
を含む、請求項1に記載の集積回路。 - 【請求項6】 前記プログラマブル出力論理マクロセ
ル手段の各々は、前記マクロセル入力ラインに作動的に
結合され、入力端子および出力端子を有するプログラマ
ブル記憶手段と、第1のプログラマブル手段とを含み、
前記第1のプログラマブル手段は、前記マクロセル入力
ラインおよび前記プログラマブル記憶手段の前記出力端
子に作動的に結合され、かつ出力ラインを有し、そこを
介して前記入力ライン上の信号により駆動される信号ま
たは前記プログラマブル記憶手段からの信号を前記第1
のプログラマブル手段の出力ラインに結合し、ここにお
いて前記プログラマブル手段出力ラインは前記プログラ
マブルスイッチ相互接続手段に接続され、かつ前記プロ
グラマブル記憶手段および前記論理マクロセル入力ライ
ンに作動的に結合され、論理信号の極性を制御するため
の手段をさらに含み、ここで動作の第1モードにおいて
、前記極性制御手段は入力信号に応答して第1の出力信
号を発生し、かつ動作の第2モードにおいて前記極性制
御手段は前記入力信号に応答して第2の出力信号を発生
し、かつ前記第2の出力信号は前記第1の出力信号の反
転である、請求項5に記載の集積回路。 - 【請求項7】 前記プログラマブルI/Oマクロセル
手段は、イネーブル信号を選択的に与えるための手段と
、プログラマブル出力論理マクロセルの出力ライン、前
記ピンのうちの1個およびイネーブル信号付与手段に作
動的に接続され、前記極性制御手段からの前記信号を前
記ピンに選択的に与えるための手段とをさらに含み、こ
こにおいて前記付与手段は前記極性制御手段からの前記
信号を前記イネーブル信号を受取るときのみそこを介し
て通す、請求項6に記載の集積回路。 - 【請求項8】 前記プログラマブル埋込論理マクロセ
ル手段の各々は、第1のプログラマブル手段を含み、前
記第1のプログラマブル手段は、前記マクロセル入力ラ
インおよび前記ピンのうちの1個に作動的に結合され、
かつ出力ラインを有し、そこを介して前記マクロセル入
力ライン上の信号または前記ピンからの信号に応答して
信号を前記第1のプログラマブル手段の出力ラインに結
合し、前記第1のプログラマブル手段出力ラインに作動
的に結合され、出力ラインを有するプログラマブル記憶
手段と、第2のプログラマブル手段とを含み、前記第2
のプログラマブル手段は、(i) 前記第1のプログ
ラマブル手段出力ラインに接続された第1の入力端子と
、(ii) 前記プログラマブル記憶手段出力ライン
に接続された第2の入力端子と、(iii) 前記ス
イッチマトリックスに接続された出力ラインとを有し、
そこを介して前記第1のプログラマブル手段の出力ライ
ン上の信号およびプログラマブル記憶手段の出力ライン
上の信号のうちの1つを前記第2のプログラマブル手段
の出力ラインに結合し、ここにおいて前記第2のプログ
ラマブル手段出力ラインは前記プログラマブル埋込論理
マクロセルの前記出力ラインである、請求項5に記載の
集積回路。 - 【請求項9】 前記論理アロケータ手段は、その各々
が多数の出力ラインおよび多数の入力ラインを有し、前
記多数の入力ライン上の信号をそこを介して前記多数の
出力ラインの中の選択された出力ラインに結合するため
の多数のルータ手段を含み、ここにおいて各ルータ入力
ラインは前記プログラマブル論理アレイからの出力ライ
ンに接続され、かつ各ルータ出力ラインは前記プログラ
マブル論理マクロセル手段のうちの1つの入力ラインに
接続される、請求項1に記載の集積回路。 - 【請求項10】 前記ルータ手段の各々は、前記多数
のルータ入力ラインに接続されかつ出力ラインを有する
論理ゲート手段と、前記論理ゲート手段の前記出力ライ
ンおよび多数の出力ラインに接続された入力端子を有す
るデマルチプレクシング手段とをさらに含み、ここにお
いて前記デマルチプレクシング手段は入力選択信号に応
答してそこを介して入力端子上の信号を前記多数の出力
ラインのうちの選択された出力ラインに送り、かつ前記
デマルチプレクシング手段の多数の出力ラインは前記ル
ータ手段の多数の出力ラインであり、かつ前記デマルチ
プレクシング手段に作動的に結合され、入力選択信号を
与えるための手段をさらに含む、請求項9に記載の集積
回路。 - 【請求項11】 前記極性制御手段は、第2のプログ
ラマブル手段をさらに含み、前記第2のプログラマブル
手段は、(i) 前記第1のプログラマブル手段出力
ラインに接続された入力端子と、(ii) 前記第1
のプログラマブル手段出力ラインに接続された信号反転
入力端子と、(iii) 出力ラインとを有し、そこ
を介して前記第1のプログラマブル手段の出力ライン上
の信号および前記第1のプログラマブル手段の出力ライ
ン上の信号の反転のうちの1つを前記第2のプログラマ
ブル手段の出力ラインに結合し、ここにおいて前記第2
のプログラマブル手段出力ラインは前記プログラマブル
出力論理マクロセルの前記出力ラインである、請求項3
または請求項6のいずれかに記載の集積回路。 - 【請求項12】 各マクロセルは、前記少なくとも1
つの入力ラインを含む多数の入力ラインと、前記多数の
入力ラインに作動的に接続され、前記第1のプログラマ
ブル記憶手段の入力端子に接続された出力ラインを有す
る論理ゲート手段とをさらに含む、請求項3、請求項6
または請求項8のうちのいずれかに記載の集積回路。 - 【請求項13】 前記プログラマブル記憶手段は、D
型フリップフロップ、T型フリップフロップおよびラッ
チからなるグループのうちのいずれかとして構成できる
プログラマブル記憶素子を含む、請求項3、請求項6ま
たは請求項8のいずれかに記載の集積回路。 - 【請求項14】 前記プログラマブル記憶素子はクロ
ック端子を有する、請求項3、請求項6または請求項8
のいずれかに記載の集積回路。 - 【請求項15】 前記マクロセルは、多数の入力端子
および前記プログラマブル記憶素子クロック端子に接続
された1つの出力端子を有するプログラマブルクロック
マルチプレクサ手段をさらに含み、前記クロックマルチ
プレクサ手段は入力選択信号に応答してそこを介して選
択された入力端子上の信号を前記出力端子に通し、かつ
前記プログラマブルクロックマルチプレクサ手段に作動
的に結合され、入力選択信号を与えるための手段をさら
に含む、請求項14に記載の集積回路。 - 【請求項16】 前記多数のクロックマルチプレクサ
手段入力端子の第1の端子は前記ピンのうちの1つに接
続され、かつ前記多数のクロックマルチプレクサ手段入
力端子の第2の端子は前記ピンのうちの別の1つに接続
される、請求項15に記載の集積回路。 - 【請求項17】 イネーブル信号を選択的に与えるた
めの前記手段は、入力選択信号を与えるための手段と、
前記入力選択信号手段に作動的に接続され、多数の入力
端子および1つの出力端子を有するプログラマブルマル
チプレクサ手段とをさらに含み、ここにおいて前記マル
チプレクサ手段は前記入力選択信号に応答してそこを介
して選択された入力端子上の信号を前記出力端子に通し
、前記出力端子上の前記信号は前記イネーブル信号であ
る、請求項4または請求項7のいずれかに記載の集積回
路。 - 【請求項18】 前記プログラマブルアレイ手段から
の第1の積項ラインは前記複数個のI/Oマクロセルの
うちの多数のI/Oマクロセルにおける前記I/Oマク
ロセルプログラマブルマルチプレクサ手段の第1の入力
端子に接続され、かつ前記プログラマブルアレイ手段か
らの第2の積項ラインは前記複数個のI/Oマクロセル
のうちの前記多数のI/Oマクロセルにおける前記I/
Oマクロセルプログラマブルマルチプレクサの第2の入
力端子に接続される、請求項17に記載の集積回路。 - 【請求項19】 前記プログラマブル論理ブロックの
各々は同一である、請求項1に記載の集積回路。 - 【請求項20】 前記同一のプログラマブル論理ブロ
ックは前記スイッチマトリックス手段のまわりに対称的
に配列される、請求項19に記載の集積回路。 - 【請求項21】 前記スイッチ相互接続手段は前記ス
イッチ相互接続手段の入力端子および出力端子間のいか
なる経路に対しても固定された経路に関係しない遅延時
間を有する、請求項1に記載の集積回路。 - 【請求項22】前記プログラマブル論理ブロックのうち
の1つを前記プログラマブル論理ブロックのうちの別の
ものに接続するための前記スイッチ相互接続手段を介す
る前記遅延時間は約1ナノ秒から2ナノ秒の範囲内にあ
る、請求項21に記載の集積回路。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/490,808 US5015884A (en) | 1985-03-29 | 1990-03-07 | Multiple array high performance programmable logic device family |
| US490808 | 1990-03-07 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH04219021A true JPH04219021A (ja) | 1992-08-10 |
| JP3454834B2 JP3454834B2 (ja) | 2003-10-06 |
Family
ID=23949554
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP04201291A Expired - Fee Related JP3454834B2 (ja) | 1990-03-07 | 1991-03-07 | 複数個のピンを有する集積回路 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US5015884A (ja) |
| EP (1) | EP0445909B1 (ja) |
| JP (1) | JP3454834B2 (ja) |
| AT (1) | ATE141034T1 (ja) |
| DE (1) | DE69121122T2 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010080870A (ja) * | 2008-09-29 | 2010-04-08 | National Institute Of Advanced Industrial Science & Technology | 再構成可能集積回路 |
| JP2017130837A (ja) * | 2016-01-21 | 2017-07-27 | 日本電気株式会社 | 論理回路、及び設定回路の制御方法 |
Families Citing this family (81)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5225719A (en) * | 1985-03-29 | 1993-07-06 | Advanced Micro Devices, Inc. | Family of multiple segmented programmable logic blocks interconnected by a high speed centralized switch matrix |
| 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 |
| US5489857A (en) * | 1992-08-03 | 1996-02-06 | Advanced Micro Devices, Inc. | Flexible synchronous/asynchronous cell structure for a high density programmable logic device |
| US5457409A (en) * | 1992-08-03 | 1995-10-10 | Advanced Micro Devices, Inc. | Architecture of a multiple array high density programmable logic device with a plurality of programmable switch matrices |
| US5079451A (en) * | 1990-12-13 | 1992-01-07 | Atmel Corporation | Programmable logic device with global and local product terms |
| US5978831A (en) * | 1991-03-07 | 1999-11-02 | Lucent Technologies Inc. | Synchronous multiprocessor using tasks directly proportional in size to the individual processors rates |
| US5861760A (en) | 1991-04-25 | 1999-01-19 | Altera Corporation | Programmable logic device macrocell with improved capability |
| US5204556A (en) * | 1991-05-06 | 1993-04-20 | Lattice Semiconductor Corporation | Programmable interconnect structure for logic blocks |
| US5260611A (en) * | 1991-09-03 | 1993-11-09 | Altera Corporation | Programmable logic array having local and long distance conductors |
| US5371422A (en) * | 1991-09-03 | 1994-12-06 | Altera Corporation | Programmable logic device having multiplexers and demultiplexers randomly connected to global conductors for interconnections between logic elements |
| US6759870B2 (en) | 1991-09-03 | 2004-07-06 | Altera Corporation | Programmable logic array integrated circuits |
| US5282271A (en) * | 1991-10-30 | 1994-01-25 | I-Cube Design Systems, Inc. | I/O buffering system to a programmable switching apparatus |
| US5369772A (en) * | 1992-05-21 | 1994-11-29 | Compaq Computer Corporation | Method of maximizing data pin usage utilizing post-buffer feedback |
| FR2693252B1 (fr) * | 1992-07-01 | 1994-08-26 | Orbey Plastiques Ind | Dispositif pour adapter un élément chaud sur un corps creux en matière thermoplastique comportant au moins une arrivée de fluide froid, et corps creux comportant un tel dispositif. |
| EP0584910B1 (en) * | 1992-08-03 | 1996-09-04 | Advanced Micro Devices, Inc. | Programmable logic device |
| US5361373A (en) * | 1992-12-11 | 1994-11-01 | Gilson Kent L | Integrated circuit computing device comprising a dynamically configurable gate array having a microprocessor and reconfigurable instruction execution means and method therefor |
| US5362999A (en) * | 1993-03-18 | 1994-11-08 | Xilinx, Inc. | EPLD chip with hybrid architecture optimized for both speed and flexibility |
| US5483178A (en) * | 1993-03-29 | 1996-01-09 | Altera Corporation | Programmable logic device with logic block outputs coupled to adjacent logic block output multiplexers |
| US5444394A (en) * | 1993-07-08 | 1995-08-22 | Altera Corporation | PLD with selective inputs from local and global conductors |
| US5689686A (en) * | 1994-07-29 | 1997-11-18 | Cypress Semiconductor Corp. | Methods for maximizing routability in a programmable interconnect matrix having less than full connectability |
| US5848066A (en) * | 1994-08-01 | 1998-12-08 | Cypress Semiconductor Corp. | Methods for maximizing routability in a programmable interconnect matrix having less than full connectability |
| US5815726A (en) * | 1994-11-04 | 1998-09-29 | Altera Corporation | Coarse-grained look-up table architecture |
| US5636368A (en) * | 1994-12-23 | 1997-06-03 | Xilinx, Inc. | Method for programming complex PLD having more than one function block type |
| 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 |
| 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 |
| US5781030A (en) * | 1995-06-02 | 1998-07-14 | Advanced Micro Devices, Inc. | Programmable uniform symmetrical distribution logic allocator for a high-density complex PLD |
| US6531890B1 (en) | 1995-06-02 | 2003-03-11 | Lattice Semiconductor Corporation | Programmable optimized-distribution logic allocator for a high-density complex PLD |
| US6028446A (en) * | 1995-06-06 | 2000-02-22 | Advanced Micro Devices, Inc. | Flexible synchronous and asynchronous circuits for a very high density programmable logic device |
| US5943242A (en) | 1995-11-17 | 1999-08-24 | Pact Gmbh | Dynamically reconfigurable data processing system |
| US7266725B2 (en) | 2001-09-03 | 2007-09-04 | Pact Xpp Technologies Ag | Method for debugging reconfigurable architectures |
| US6229812B1 (en) * | 1996-10-28 | 2001-05-08 | Paxonet Communications, Inc. | Scheduling techniques for data cells in a data switch |
| DE19651075A1 (de) | 1996-12-09 | 1998-06-10 | Pact Inf Tech Gmbh | Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen |
| US6338106B1 (en) | 1996-12-20 | 2002-01-08 | Pact Gmbh | I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures |
| DE19654595A1 (de) | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen |
| DE19654593A1 (de) * | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit |
| ATE243390T1 (de) | 1996-12-27 | 2003-07-15 | Pact Inf Tech Gmbh | Verfahren zum selbständigen dynamischen umladen von datenflussprozessoren (dfps) sowie bausteinen mit zwei- oder mehrdimensionalen programmierbaren zellstrukturen (fpgas, dpgas, o.dgl.) |
| DE19654846A1 (de) * | 1996-12-27 | 1998-07-09 | Pact Inf Tech Gmbh | Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.) |
| DE19704044A1 (de) * | 1997-02-04 | 1998-08-13 | Pact Inf Tech Gmbh | Verfahren zur automatischen Adressgenerierung von Bausteinen innerhalb Clustern aus einer Vielzahl dieser Bausteine |
| DE19704728A1 (de) | 1997-02-08 | 1998-08-13 | Pact Inf Tech Gmbh | Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines |
| US6542998B1 (en) | 1997-02-08 | 2003-04-01 | Pact Gmbh | Method of self-synchronization of configurable elements of a programmable module |
| DE19704742A1 (de) * | 1997-02-11 | 1998-09-24 | Pact Inf Tech Gmbh | Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand |
| US8686549B2 (en) | 2001-09-03 | 2014-04-01 | Martin Vorbach | Reconfigurable elements |
| US6191611B1 (en) | 1997-10-16 | 2001-02-20 | Altera Corporation | Driver circuitry for programmable logic devices with hierarchical interconnection resources |
| DE19861088A1 (de) | 1997-12-22 | 2000-02-10 | Pact Inf Tech Gmbh | Verfahren zur Reparatur von integrierten Schaltkreisen |
| DE19807872A1 (de) | 1998-02-25 | 1999-08-26 | Pact Inf Tech Gmbh | Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl. |
| US6243664B1 (en) | 1998-10-27 | 2001-06-05 | Cypress Semiconductor Corporation | Methods for maximizing routability in a programmable interconnect matrix having less than full connectability |
| US7003660B2 (en) | 2000-06-13 | 2006-02-21 | Pact Xpp Technologies Ag | Pipeline configuration unit protocols and communication |
| DE10081643D2 (de) | 1999-06-10 | 2002-05-29 | Pact Inf Tech Gmbh | Sequenz-Partitionierung auf Zellstrukturen |
| US8058899B2 (en) | 2000-10-06 | 2011-11-15 | Martin Vorbach | Logic cell array and bus system |
| US20040015899A1 (en) * | 2000-10-06 | 2004-01-22 | Frank May | Method for processing data |
| AU2002220600A1 (en) | 2000-10-06 | 2002-04-15 | Pact Informationstechnologie Gmbh | Cell system with segmented intermediate cell structure |
| US6990555B2 (en) * | 2001-01-09 | 2006-01-24 | Pact Xpp Technologies Ag | Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.) |
| EP1227385A3 (en) * | 2001-01-24 | 2005-11-23 | Matsushita Electric Industrial Co., Ltd. | Semiconductor integrated circuit |
| US7444531B2 (en) * | 2001-03-05 | 2008-10-28 | Pact Xpp Technologies Ag | Methods and devices for treating and processing data |
| US7581076B2 (en) | 2001-03-05 | 2009-08-25 | Pact Xpp Technologies Ag | Methods and devices for treating and/or processing data |
| US7210129B2 (en) | 2001-08-16 | 2007-04-24 | Pact Xpp Technologies Ag | Method for translating programs for reconfigurable architectures |
| US9037807B2 (en) | 2001-03-05 | 2015-05-19 | Pact Xpp Technologies Ag | Processor arrangement on a chip including data processing, memory, and interface elements |
| US7844796B2 (en) | 2001-03-05 | 2010-11-30 | Martin Vorbach | Data processing device and method |
| TW504898B (en) * | 2001-04-17 | 2002-10-01 | Himax Tech Inc | Distributed data signal converting device and method |
| WO2002103532A2 (de) | 2001-06-20 | 2002-12-27 | Pact Xpp Technologies Ag | Verfahren zur bearbeitung von daten |
| US7996827B2 (en) | 2001-08-16 | 2011-08-09 | Martin Vorbach | Method for the translation of programs for reconfigurable architectures |
| US7139292B1 (en) * | 2001-08-31 | 2006-11-21 | Cypress Semiconductor Corp. | Configurable matrix architecture |
| US7434191B2 (en) | 2001-09-03 | 2008-10-07 | Pact Xpp Technologies Ag | Router |
| US8686475B2 (en) | 2001-09-19 | 2014-04-01 | Pact Xpp Technologies Ag | Reconfigurable elements |
| US7577822B2 (en) | 2001-12-14 | 2009-08-18 | Pact Xpp Technologies Ag | Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization |
| US6774707B1 (en) | 2002-01-14 | 2004-08-10 | Altera Corporation | Charge pump circuits and methods |
| AU2003208266A1 (en) | 2002-01-19 | 2003-07-30 | Pact Xpp Technologies Ag | Reconfigurable processor |
| WO2003071432A2 (de) | 2002-02-18 | 2003-08-28 | Pact Xpp Technologies Ag | Bussysteme und rekonfigurationsverfahren |
| US8914590B2 (en) | 2002-08-07 | 2014-12-16 | Pact Xpp Technologies Ag | Data processing method and device |
| US6848095B1 (en) * | 2002-05-17 | 2005-01-25 | Lattice Semiconductor Corp. | Method of assigning logic functions to macrocells in a programmable logic device |
| AU2003286131A1 (en) | 2002-08-07 | 2004-03-19 | Pact Xpp Technologies Ag | Method and device for processing data |
| US7657861B2 (en) | 2002-08-07 | 2010-02-02 | Pact Xpp Technologies Ag | Method and device for processing data |
| WO2004038599A1 (de) | 2002-09-06 | 2004-05-06 | Pact Xpp Technologies Ag | Rekonfigurierbare sequenzerstruktur |
| EP1634182A2 (en) * | 2003-06-17 | 2006-03-15 | PACT XPP Technologies AG | Data processing device and method |
| JP4700611B2 (ja) | 2003-08-28 | 2011-06-15 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | データ処理装置およびデータ処理方法 |
| US7159196B2 (en) * | 2004-02-04 | 2007-01-02 | Hewlett-Packard Development Company, L.P. | System and method for providing interface compatibility between two hierarchical collections of IC design objects |
| WO2007082730A1 (de) | 2006-01-18 | 2007-07-26 | Pact Xpp Technologies Ag | Hardwaredefinitionsverfahren |
| US20070164784A1 (en) * | 2006-01-19 | 2007-07-19 | Altera Corporation | Modular I/O bank architecture |
| US20100272811A1 (en) * | 2008-07-23 | 2010-10-28 | Alkermes,Inc. | Complex of trospium and pharmaceutical compositions thereof |
| US8438522B1 (en) | 2008-09-24 | 2013-05-07 | Iowa State University Research Foundation, Inc. | Logic element architecture for generic logic chains in programmable devices |
| US8661394B1 (en) | 2008-09-24 | 2014-02-25 | Iowa State University Research Foundation, Inc. | Depth-optimal mapping of logic chains in reconfigurable fabrics |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4963768A (en) | 1985-03-29 | 1990-10-16 | Advanced Micro Devices, Inc. | Flexible, programmable cell array interconnected by a programmable switch matrix |
| US4742252A (en) * | 1985-03-29 | 1988-05-03 | Advanced Micro Devices, Inc. | Multiple array customizable logic device |
| US4758747A (en) * | 1986-05-30 | 1988-07-19 | Advanced Micro Devices, Inc. | Programmable logic device with buried registers selectively multiplexed with output registers to ports, and preload circuitry therefor |
| US4876640A (en) * | 1986-02-07 | 1989-10-24 | Advanced Micro Devices, Inc. | Logic controller having programmable logic "and" array using a programmable gray-code counter |
| US4878200A (en) * | 1987-12-30 | 1989-10-31 | Intel Corporation | Product term sharing/allocation in an EPROM array |
| US4871930A (en) * | 1988-05-05 | 1989-10-03 | Altera Corporation | Programmable logic device with array blocks connected via programmable interconnect |
| US4903223A (en) * | 1988-05-05 | 1990-02-20 | Altera Corporation | Programmable logic device with programmable word line connections |
-
1990
- 1990-03-07 US US07/490,808 patent/US5015884A/en not_active Expired - Lifetime
-
1991
- 1991-01-18 DE DE69121122T patent/DE69121122T2/de not_active Expired - Fee Related
- 1991-01-18 AT AT91300434T patent/ATE141034T1/de not_active IP Right Cessation
- 1991-01-18 EP EP91300434A patent/EP0445909B1/en not_active Expired - Lifetime
- 1991-03-07 JP JP04201291A patent/JP3454834B2/ja not_active Expired - Fee Related
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010080870A (ja) * | 2008-09-29 | 2010-04-08 | National Institute Of Advanced Industrial Science & Technology | 再構成可能集積回路 |
| JP2017130837A (ja) * | 2016-01-21 | 2017-07-27 | 日本電気株式会社 | 論理回路、及び設定回路の制御方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0445909B1 (en) | 1996-07-31 |
| ATE141034T1 (de) | 1996-08-15 |
| US5015884A (en) | 1991-05-14 |
| DE69121122T2 (de) | 1997-02-13 |
| EP0445909A1 (en) | 1991-09-11 |
| JP3454834B2 (ja) | 2003-10-06 |
| DE69121122D1 (de) | 1996-09-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH04219021A (ja) | 複数個のピンを有する集積回路 | |
| US4963768A (en) | Flexible, programmable cell array interconnected by a programmable switch matrix | |
| US5869981A (en) | High density programmable logic device | |
| US5789939A (en) | Method for providing a plurality of hierarchical signal paths in a very high-density programmable logic device | |
| JP3325657B2 (ja) | 集積回路 | |
| US5151623A (en) | Programmable logic device with multiple, flexible asynchronous programmable logic blocks interconnected by a high speed switch matrix | |
| US5489857A (en) | Flexible synchronous/asynchronous cell structure for a high density programmable logic device | |
| US6128770A (en) | Configurable logic array including IOB to longlines interconnect means for providing selectable access to plural longlines from each IOB (input/output block) | |
| US5233539A (en) | Programmable gate array with improved interconnect structure, input/output structure and configurable logic block | |
| US5260881A (en) | Programmable gate array with improved configurable logic block | |
| JP3325662B2 (ja) | 集積回路 | |
| JPH11510038A (ja) | 分散型ramを有しかつセルの利用率が高められた、フィールドプログラマブルゲートアレイ | |
| US6879202B2 (en) | Multi-purpose digital frequency synthesizer circuit for a programmable logic device | |
| US7154298B1 (en) | Block-oriented architecture for a programmable interconnect circuit | |
| US6028446A (en) | Flexible synchronous and asynchronous circuits for a very high density programmable logic device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20011030 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| 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 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070725 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080725 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080725 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090725 Year of fee payment: 6 |
|
| LAPS | Cancellation because of no payment of annual fees |