JPH024171B2 - - Google Patents
Info
- Publication number
- JPH024171B2 JPH024171B2 JP58068515A JP6851583A JPH024171B2 JP H024171 B2 JPH024171 B2 JP H024171B2 JP 58068515 A JP58068515 A JP 58068515A JP 6851583 A JP6851583 A JP 6851583A JP H024171 B2 JPH024171 B2 JP H024171B2
- Authority
- JP
- Japan
- Prior art keywords
- array
- logic
- output
- input
- pla
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
- G06F7/5057—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination using table look-up; using 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/08—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using semiconductor devices
- H03K19/094—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using semiconductor devices using field-effect transistors
- H03K19/096—Synchronous circuits, i.e. using clock signals
-
- 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
- H03K19/17716—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 with synchronous operation, i.e. using clock signals, e.g. of I/O or coupling register
- H03K19/1772—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 with synchronous operation, i.e. using clock signals, e.g. of I/O or coupling register with synchronous operation of at least one of the logical matrixes
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Mathematical Optimization (AREA)
- Logic Circuits (AREA)
Description
この発明はデジタル論理回路、特に最小の回路
で持つて複雑な論理機能を実行することのできる
プログラマブル・ロジツク・アレイ半導体装置に
関する。 プログラマブル・ロジツク・アレイ(PLA)
回路は普通、それぞれ多数のプログラム可能な半
導体素子を含んだサーチ(search)又はAND配
列と、これに接続されたリード(read)又はOR
配列とを有する。これらの配列は順次AND及び
OR論理機能を実行するために操作される。基本
的なPLAの構造が、米国特許第3702985号及び米
国特許第3566153号に示されている。これらの一
変形が第1A図に示されている。この動作は、複
数の入力信号80が一続きの1入力デコーダ81
に加えられ、AND配列82に真及び補の信号を
加える。AND配列82は普通、NOR論理に構成
されている。なぜならば、NOR回路は補数が取
られた入力信号に対して論理AND機能を実行す
るからである。AND配列82の出力は積項PTと
表示されてOR配列83に直接加えられる。OR
配列83も選ばれた積項の負のOR論理機能を実
行するため、普通はNOR論理に構成されている。
OR配列の出力信号は積項の和として又は和項ST
として表示され、普通はPLAの外部の回路に加
えられるため、又は次の順序論理操作のために入
力デコーダ81に再度加えられることができるよ
うにするため、出力ラツチ84に記憶される。米
国特許第3974366号には、第1A図に示される独
立なクロツク入力C1及びC2を用いてAND及
びOR機能の実行を順次制御することが記載され
ている。第1A図の基本的なPLAにより実行さ
れる外部フイードバツクを除いた順序論理操作
が、第1B図に示されている。C1時間の間、入
力信号又はその補信号がAND配列に加えられる。
C2時間の間、論理OR配列と出力回路とが使用
可能にされる。 単純なPLAの構造を用いて多数の有用な論理
機能を効率良く行うことができるけれども、複雑
な機能、例えば2進nビツト・カウンタは多数の
積項を必要とするため、過大な配列領域を必要と
する。特定の論理機能を実行するのに必要な積項
数を減少することは、米国特許第3593317号に記
載されているように積項を作る前に入力信号を入
力ビツトのグループに分けることにより、又は米
国特許第3761902号に記載されているように入力
信号を入力ビツトの対に分けることにより、ある
程度達成することができる。後者の技術は2ビツ
ト分割として知られており、入力ビツトの全16の
ブール代数機能をAND配列のたつた4つの入力
線を用いて表現することができるため、広く
PLA設計において使用されている。2ビツト分
割のみを用いて積項数を顕著に減少することが実
現できる。他の領域及び積項減少技術も知られて
いる。例えば、米国特許第3890603号に記載され
ているようにOR配列の出力に設けられた排地的
OR回路をPLAのAND及びOR配列内で実行され
る多数の論理機能を減少するために用いてもよ
い。 さらにPLAを縮小する技術としては、積項が
OR配列に供給される前に積項を操作する論理機
能を設けるものがある。例えば、米国特許第
4032894号には、ANDとOR配列の間に設けられ
た選択積項インバータを使用することが記載され
ている。積項に2ビツト分割を使用することは、
IBMテクニカルデイスクロージヤブリテン19巻
5号1976年10月1780−1781ページのS.B.
Greenspanによる論文「マルチプルパーテシヨン
ドプログラマブルロジツクアレイ」に記載されて
いる。この技術は、OR配列に接続可能な積項数
を増加することを可能にしている。第2A図はこ
れらの技術により修正された基本的なAND/OR
PLAのブロツク図を表すものであり、85は2入
力デコーダ、86は論理回路である。第2B図は
このように修正されたPLAにより実行される任
意の操作を含んだ論理操作の順序が示されてい
る。 別のPLAの変形が、IBMテクニカルデイスク
ロージヤブリテン19巻7号1976年12月2544−2546
ページのG.J.Robbinsによる論分「アレイロジツ
クシヨートパス」に記載されている。これには、
いくつかの配列の出力信号の利用可能な速度を増
加させるため、バイパスし又はOR配列と平行に
操作することにより積項をPLA出力に直接に供
給する能力が与えられている。 また別のPLAの変形が米国特許第4140967号に
記載されている。ここには1つの行列の交互の列
がAND及びORの副配列からなる混合した
AND/OR配列が記載されており、各副配列は特
別な試験条件の下では単一の配列として独立に駆
動することが可能である。第3A図には、2組の
直交した線を持つ行列に結合された前述の入力信
号の2ビツト分割を含くむそのような配列が示さ
れている。普通のPLAの動作条件下では、入力
デコーダ87はAND副配列と結合された水平線
の第1組を駆動し、垂直線の第1組上に2配列
PLAのPLA配列と同様に積項PT1−PT3を発生
する。垂直な積項線は、OR副配列に結合された
水平線の第2組(Xで示されている)の重なり合
う1つと選択的結合されていて、垂直線の第2番
目の組に和項ST1−ST3を発生する。そしてこれ
らの和項は他のPLAと同様に出力論理84に接
続される。従つて、この混合したPLAは第1A
図に示されるのと同様に直接結合されたPLAの
普通のAND/OR順序で動作する。この混合した
配列の特徴は、AND副配列又はOR副配列の各々
が独立に試験されるように、入力デコーダ又は分
割回路により直線にAND副配列又はOR副配列の
どちらかを駆動することのできる手段を有するこ
とである。複数の単極単投スイツチSW1が、入
力信号T1及びT2に応答して入力信号80を
AND副配列又はOR配列のどちらかに印加する。
同様なスイツチSW2は出力信号を出力論理84
に接続するのに用いられる。第3B図は普通及び
試験の条件下でこの混合したPLAにより実行さ
れる順序論理を示している。 米国特許第3987287号に記載されているように、
入力線又は出力線を分割又は折り返してPLAの
領域を減少する有用な種々の他の変形が提案され
ている。論理項の数及び(又は)複雑さを増大さ
せる技術として知られているのは、米国特許第
3924243号に示されているようなOR配列出力を
入力信号と共にクロスフイールド(cross−field)
分割するもの、又は米国特許第3975623号に示さ
れるような多数の副配列を使用するもの、又は米
国特許第3936812号に示されるように入/出力線
及びフイードバツク線の個性化により融通性を持
たせることができるようにするために2レベル相
互接続メタロジイの拡大した使用を行うものがあ
る。 上述の改良を見ると、配列領域のかなりの減少
及び配列により実行される論理の単純化により、
多くの分野においてPLA論理の使用がカスタム
論理に対して競争力を持つことを可能にしてい
る。配列により実行される論理が少ない従来の技
術においては、これは非配列論理実行回路の複雑
さ及び数の増加により成し遂げられており、しば
しばPLAに周辺回路を加えた全回路領域の増大
が問題となる。これに加えるに、高度に複雑な論
理の実行、例えば2進加算器は、多数の配列によ
り発生される論理項を必要とし、従つてPLA論
理で実行することは実際的でない。 マイクロプロセツサ・チツプなどの多機能な半
導体装置の開発では、単一の半導体基板により多
くの機能を設けることを必要としている。マイク
ロプロセツサ・システムの設計者達は、16又は32
プロセシング・ユニツトでユーザーの要求を満足
させようとしている。従来の2ビツト入力分割及
び排他的OR出力回路を用いたAND/ORPLAに
より構成された32ビツト2進カウンタがIBM J.
Res.Develop.、Vol.23、No.2、1979年163〜178ペ
ージのA.Weinbergerによる論文“高速プログラ
マブルロジツク加算器”に記載されているが、こ
のカウンタは38220配列ビツトの全体に対して全
部で195の積項と196のアレイ列とを必要としてい
る。 この発明によれば、必要な配列論理ビツトの数
を減少することが可能なことに加えて、物理的及
び論理的実行要素を共有することにより必要な領
域を顕著に減少し、非配列論理実行回路の数を顕
著に減少することのできるPLA形式により、2
進カウンタ及び他の高度に複雑な論理機能が達成
される。 この発明のPLAは、混合されたAND/OR配
列中のAND及びOR部分の両方に共有される入出
力線を一組使用することにより、配列に関係した
要素の物理的共有を最大にしている。積項及び和
項の両方は一組の出力線上に出力される。配列の
入力及び出力信号は多くの場合、AND及びOR機
能の入力及び出力回路を物理的に共有することが
できるように、時分割多重処理される。AND及
びOR副配列の共通出力上の排他的NORとして構
成されている排他的ORの有効性は、PLAの複雑
な論理機能を実行する能力を一層高め、特に後で
示されるように2進カウンタ設計において有用で
ある。 この発明のこれらの特徴及び他の特徴は、以下
に図面を参照して詳細に説明されるこの発明の実
施例により明らかとなるであろう。 第4A図を参照するとこの発明の一実施例によ
るPLAのブロツク図が示されている。主な回路
要素は、入力デコーダ10及びNOR論理20を
含む入力ドライバ、論理行列又は配列30、排他
的NOR論理回路40、結合又はゲーテイング論
理回路50、出力論理又はラツチ回路60であ
る。各回路要素の活性状態は、AND又はOR機能
を実行するタイミング信号D1及びD2の存在又
は不存在により決定される。 入力デコーダ10は複数の入力信号12を受信
し、タイミング信号D1が存在している間に反転
及びビツト分割を含むデコーデイング機能を実行
し、所望ならば、線16上にAND配列論理機能
の駆動又は入力信号を表わす出力信号の第1組を
供給する。 入力線16は、NOR論理ブロツク20を通過
して配列30を通る水平線に直接に結合されてい
る。配列30中には、黒の三角形で示された潜在
的なANDゲート32と白の三角形で示されたOR
ゲート34とがあり、これら両タイプのゲートは
線16上の入力信号に応答する。D1が活性化さ
れ、D2が活性されていない時は、ANDゲート
32のみが使用可能となつている。選択された線
16上にある信号の論理ANDからなる積項は、
配列30より導出された垂直な配列の出力線36
上の積項PT1−PTnとして発生される。 実行される特定の論理機能に依存して、積項は
次の様に種々の残りの回路に入力される。まず、
一番に重要なことは、積項の対が排他的OR回路
40に加えらて関係(PTx)V−(PTy)を発生
することである。ここでV−は論理排他的OR関数
を表す。また積項は線42を経てゲーテイング論
理回路50の入力に加えられてもよく、又は直接
に線44を経て出力論理60に加えられてもよ
い。排他的ORが取られた積項は、線46を経て
出力論理60又は線48を経てゲーテイング論理
50のどちらかに加えられてもよい。従つて、タ
イミングパルスD1により決定される第1の時間
間隔の間に、発生された積項又は積項の排他的
ORは、出力論理60又はゲーテイング回路50
に出現する。時間D1が活性化される間に実行さ
れる順序論理は、第4B図のD1の括弧で示され
る部分である。 タイミングパルスD2により決定される第2の
時間間隔の間に、ゲーテイング論理回路50にあ
る積項信号は、タイミングパルスD2が存在する
間にのみ使用可能とされるNOR論理回路20の
入力に加えられ、少なくとも選択された線16の
上に出力信号の第2組を発生する。出力信号のこ
の第2組はOR配列論理機能の入力信号に相当す
る。D2が活性化された時間の間にのみ、配列3
0のORゲートが使用可能となる。従つて、複数
の積項の和又は和項ST1−STnが配列の出力線3
6上に発生される。したがつて、排他的NOR論
理回路40、ゲーテイング論理回路50及び
NOR論理回路20は、論理積項を入力線16上
に、第2時間間隔の間に出力線36上に論理積項
の和が発生されるように供給する論理手段を構成
している。タイミング信号D2が活性化されてい
る間に実行される順序論理は第4B図の括弧の付
けられたD2に示される部分である。積項PT1−
PTnと同じように、和項ST1−STnは排他的OR
回路40に加えられてもよく又は直接に出力論理
回路60に直接に加えられてもよく、このように
して以下の出力関数を得ることができる。 PT、PTV−PT、PT+PT、(PT+PT)V−PT、
(PT+PT)V−(PT+PT)、(PTV−PT)+PT、
(PTV−PT)V−(PTV−PT)、(PTV−PT)+(PTV
−
PT)、(PTV−PT)V−(PT+PT)、 ここで各積項PTは、PLAサイクルのAND配
列区間の間に線16上に生ずる異なる入力信号の
論理AND関数である。第4C図にD1,D2、
入力及び出力のタイミング関数が示れている。 入力回路要素、配列回路要素及び出力回路要素
のいくつかを物理的に共有することにより、この
発明のPLAを作製するのに必要とされる半導体
領域をかなり減少することが可能となる。これに
加えて、特に積項に関して付加的な論理機能を実
行する能力により、以下に示すように複雑な機能
を実行するのに必要な配列の大きさをかなり減少
することが可能となる。 第5図を参照すると、第4A図のPLAをnチ
ヤネルMOSFFT技術により製造するのに用いら
れる典型的な回路の概略図が示されている。な
お、PLAは他の半導体技術を用いて製造しても
よい。第4図と第5A図とにおいて対応する各要
素は同じ参照符号を附して表している。 入力デコーダ10及び10′は2つの機能部分
とを有している。部分10Aは入力信号の真の値
と補の値とを供給し、そして部分10Bは実際の
入力信号のデコーデイングを行う。回路10Aに
於て単純なクロツク応答反転回路が相補的な入力
信号を発生するのに使用されている。回路10B
はクロツク応答NAND/NOR回路であり、回路
10Aの出力より、回路10Bの入力1,2,3
及び(又は)4に選択的に接続される入力信号A
及びBのいかなる所望の分割論理関数を発生する
ため、入力信号及びその補数の選ばれたものに対
して応答する。回路10Bの必要な数は特定の
PLAの構造と共に変化するが、論理機能を実行
するために与えられる必要なAND配列入力数は
OR配列入力数の内のどちらか大きい方に等し
い。もしカスタム設計のPLAと反対に汎用的な
PLAが設計されるとすると、デコーダ回路の数
は予じめ決めることができ、単に必要とされるも
のだけが相互接続される。回路10によりデコー
デイングされた出力信号は、NOR論理回路20
及び配列30の両方を通る出力線16に出力され
る。 NOR論理回路20及び20′は、複数の入力例
えば図示するようにC、D、Eの3つの入力を有
する単純なクロツク応答NORゲートである。 NORゲートはパルスD2が高い時のみ活性化
し、線16上にOR配列の入力信号を表す駆動信
号を供給する。NOR回路20の入力端子は後に
述られるようないくつかの信号に応答するようで
あつてよい。 配列30は、列及び行に配列された複数の
MOSFET装置を有し、一部が第5図に示されて
いる。ANDゲート素子32及びORゲート素子3
4が、交互に配された列出力線36と列選択線3
8との間に、直列に接続されている。素子の各列
は行線16上の信号に対してNOR論理ゲートと
して働くことができる。機能素子32又は34の
存在又は不存在は、出力線36上に供給される特
定の出力関数を決定する。パルスD1が高い間
は、AND素子32のみがそのソース電極がD1
の高い時に零ボルトにあるクロツクパルスD2に
接続されるために使用可能となる。OR素子34
はそのソース電極が高レベルD1の信号に置かれ
るため導通状態になることを阻止される。同様に
OR素子34はD2が高い間にのみ使用可能とさ
れる。素子32及び34は読出し専用メモリの配
列に使用される周知の種々の技術を用いて選択的
に機能するようにプログラムしてもよい。プログ
ラミングは製造工程においても又は完成した後の
どちらでも行うことができる。前者の方がPLA
の製造の後の工程の間に入力及び出力の選択的な
相互接続を実行するため好まれる。出力線36は
出力端子F及びGに示されるように配列固有領域
を越えて延在している。D1が活性化される時間
においては、端子F及びG上の信号は積項を表
し、D2が活性化される時間においては和項を表
す。 配列の出力端子F及び(又は)Gは、以下に述
べるように信号の存在と所望の論理関数に依存し
て端子H、I、K、N、O又はPの1つ又はそれ
以上に選択的に接続されることができる。 排他的NOR論理回路40は複数の単純な排他
的NOR回路を有する。入力H及びIは、配列出
力端子F及びGの所望の対に結合される。端子J
に出力される関数HV−Iは必要に応じて端子K、
M、N、O又はPのいずれかに結合されてもよ
い。 もし、1又はそれ以上の配列出力端子F及びG
上の積項信号、又は端子J上の排他的NORを取
られた信号がPLA出力信号を表せば、D1が活
性化されれている間、それは出力論理回路60の
端子Kに選択的に結合される。出力回路60は図
示のように単純なインバータでもよく、又は当業
者に周知のデータ記憶ラツチのどんな形であつて
もよい。もし図示の回路が用いられると、D1が
活性化される時に反転された出力信号が利用可能
となる。入力インバータ10Aに示されるような
クロツク応答インバータを使用するとD2パルス
でゲートされるD2の時に他の出力と共に積項出
力信号が提供される。 もし、いかなる配列出力端子上の信号又は排他
的NORの出力が、別の論理機能を必要とするな
らば、それはゲーテイング論理回路50の1又は
複数の端子M、N、O又はPに接続されれてもよ
い。ゲーテイング回路50はインバータ又は
NOR回路の機能を与えることのできる副回路5
0Aを有し、その出力はD2が活性化されている
間、端子Rにおいて使用可能である。ゲーテイン
グ回路の他部分50Bは単一の素子を有し、端子
Nにクロツク・パルスD1を結合することにより
端子Mに接続された積項出力又は排他的NORを
取られた出力が出力端子Qにゲートされるように
接続されている。また回路50Bは3つの異なる
副回路50Bを用いてAND回路として用い、そ
れらの2つがD1パルスによりゲートされる時に
それらの出力端子Q上に隔離された信号を発生
し、そして3番目の回路の入力端子M及びNが
各々の出力端子Q上の信号に応答するようにして
もよい。 回路50の出力端子Q及びR上に発生された信
号は、NOR論理回路20の入力端子C,D及び
(又は)Eに選択的に結合される。D2が活性化
される間、回路20は配列出力線36に和項を発
生するために配列30のOR機能に対して入力信
号を供給する。積項の場合と同様に、和項は出力
回路60に結合されてもよく又は出力回路に結合
される前に排他的NOR回路40に結合されても
よい。 この発明を説明するために特定の実施例につい
て説明してきたが、種々の変形変更が可能であ
り、例えばDC電力の消費を防ぐために図示のよ
うに直接にD2及びD1クロツク信号を用いるの
とは反対に、配列30内の共通ソース線38を直
列的に接続された素子で接続し、その素子のゲー
ト電極にD1及びD2を加えてAND及びOR機能
の各々の活性化を制御するようにしてもよい。 第6,7及び8図はこの発明のPLAを用いて
特定の論理機能を実行するための代表的な例を示
している。 従来において、PLA論理を用いて2進加算器
を達成することについてかなりの関心をもたれて
いた。集積回路内に設けらるデータ処理機能の要
求が増すにつれて、16又はさらに32ビツト幅の
データ群について算術機能を実行可能な機能論理
の必要性が重要さを増してきた。従来は過大な数
の積項と大きなビツト面積を必要とするため、
PLAで加算機能を行うことは実用的に不可能で
あつた。前述のA.Weinbergerの論文及びIBM
Journal of Research and Develpment Vol.24、
No.1、1980年1月、2−24ページのM.S.
Schmooklerによる論文「複数のPLAマクロを用
いた大きなALUsの設計」にPLA加算器の論理設
計の技術水準が記載されている。これらには
PLAを通る単一のパスとそれに付随した回路の
みを必要とする多ビツト2進加算器を提供するた
め、単純なPLAのAND/OR論外以外からなる
拡張した構成が記載されている。 以下に説明の記述を簡略化する為この発明によ
る4ビツト2進加算器を例示しているが、同じ様
な論理原理及び設計手法を任意のnビツト加算器
の設計に対しても用いてよい。第6図には、第5
図のPLAを2進カウンタとして用いるために適
した2進カウンタ論理関数を与えるのに必要な
種々の入力関係を示している。 上述のWeinbergerの論文に記載された設計手
法及び命名法を使用し、そして排他的OR機能を
さらに十分に利用するために修正した4ビツト加
算器の方程式が第7A図に表示されている。ここ
において、和ビツトS3、S2、S1及びS0及びキヤ
リイ出力ビツトCoutが、等しく重み付けられた
入力信号の2ビツト分割からの出力として利用可
能な周知の論理加算機能H、P及びGにより定義
されている。 第7B図は、配列30のAND副配列の部分の
積項の論理発生を示している。出力ビツトS3は
排他的NORゲート40により直接発生されるこ
とに注意すべきである。第7C図には、PLAサ
イクルのOR部分の期間における出力ビツトS2、
S1、S0及びCoutの残りの論理発生が示されてい
る。NORゲート50及び20の両方の組は、内
部的にのみ使用されるキヤリイ出力ビツトC1の
論理的等価物を発生するために用いられる。ま
た、第7A図に示されているAND配列部分にお
いて、如何なる単一の入力ビツト位置に対して積
項を発生するために必要な異なる入力項の最大数
は3つであることに注意すべきである。従つて、
AND副配列に必要な列の数また3つであり、必
要な配列領域の25パーセントの減少を意味してい
る。 なぜならば、従来の2ビツト分割された入力回
路は普通、2進値数の分割から利用可能な全部で
4つの異なる入力項を必要としているからであ
る。 第8図は、nチヤネル・エンハンスメント型
MOSFET素子を用いた第7図の4ビツト加算器
の実施例の回路配線図である。PLAのAND配列
部分に対して発生される入力項が入力線16の付
近に近接して示されており、これは入力信号を配
列の列の頂上と底に加えるために周知の技術で分
割されている。PLAのOR配列部分への入力が
AND入力項の近くの括弧内に示されている。不
使用入力項がダツシユにより示されており、各々
への入力回路へのクロツク信号D1及びD2の適
用な応用によりそらされている。水平な各出力線
36の近くにそれぞれの入力項に用いられた
AND又はOR出力項に対するのと同じ表示を用い
て示された適当な積項、和項又はその両方があ
る。副配列出力項がPLA又は下線の引かれた加
算器出力ビツト同様に示されている。出力線36
も入力線16と同様に分割されている。配列入力
及び出力線はPLAサイクルのAND及びOR部分
の両方に共有さされているため、これらの線の分
割は、副配列の各々に対して一致しなければなら
ない。前の第5図と同様に、AND配列素子32
は、機能的に異なるOR素子34をより明確に区
別するため影線で示されている。全4ビツト・カ
ウンタは7×13素子の行列又は全91ビツトを必要
とするたつた25の配列素子を用いて達成されい
る。 この発明によるPLAを用いて必要な配列面積
が劇的に減少されることを説明するため、表に
4及び16ビツト加算器の両方に対しての種々のタ
イプの配列構成の加算器の比較が示されている配
列のタイプは以下の通りである。 タイプ1 単純なテーブル・ルツクアツプ加算器 タイプ2 1ビツト入力デコーダを用いた標準的
なAND/OR配列のPLA タイプ3 2ビツト入力分割を用いたAND/OR
配列PLA タイプ4 2ビツト入力分割及び排他的OR出力
を使用したAND/OR配列のPLA タイプ5 前述のM.S.Schmookerの論文に記載
されたAND/OR配列PLAの副組 タイプ6 入力及び出力線分割のような配列減少
技術を使用しないこの発明によるPLA タイプ7 入力及び出力線分割を使用したこの発
明によるPLA 各配列タイプについて比較された項目は、積項
の数Np、列の数Nc、必要な全ビツト領域Nbで
ある。
で持つて複雑な論理機能を実行することのできる
プログラマブル・ロジツク・アレイ半導体装置に
関する。 プログラマブル・ロジツク・アレイ(PLA)
回路は普通、それぞれ多数のプログラム可能な半
導体素子を含んだサーチ(search)又はAND配
列と、これに接続されたリード(read)又はOR
配列とを有する。これらの配列は順次AND及び
OR論理機能を実行するために操作される。基本
的なPLAの構造が、米国特許第3702985号及び米
国特許第3566153号に示されている。これらの一
変形が第1A図に示されている。この動作は、複
数の入力信号80が一続きの1入力デコーダ81
に加えられ、AND配列82に真及び補の信号を
加える。AND配列82は普通、NOR論理に構成
されている。なぜならば、NOR回路は補数が取
られた入力信号に対して論理AND機能を実行す
るからである。AND配列82の出力は積項PTと
表示されてOR配列83に直接加えられる。OR
配列83も選ばれた積項の負のOR論理機能を実
行するため、普通はNOR論理に構成されている。
OR配列の出力信号は積項の和として又は和項ST
として表示され、普通はPLAの外部の回路に加
えられるため、又は次の順序論理操作のために入
力デコーダ81に再度加えられることができるよ
うにするため、出力ラツチ84に記憶される。米
国特許第3974366号には、第1A図に示される独
立なクロツク入力C1及びC2を用いてAND及
びOR機能の実行を順次制御することが記載され
ている。第1A図の基本的なPLAにより実行さ
れる外部フイードバツクを除いた順序論理操作
が、第1B図に示されている。C1時間の間、入
力信号又はその補信号がAND配列に加えられる。
C2時間の間、論理OR配列と出力回路とが使用
可能にされる。 単純なPLAの構造を用いて多数の有用な論理
機能を効率良く行うことができるけれども、複雑
な機能、例えば2進nビツト・カウンタは多数の
積項を必要とするため、過大な配列領域を必要と
する。特定の論理機能を実行するのに必要な積項
数を減少することは、米国特許第3593317号に記
載されているように積項を作る前に入力信号を入
力ビツトのグループに分けることにより、又は米
国特許第3761902号に記載されているように入力
信号を入力ビツトの対に分けることにより、ある
程度達成することができる。後者の技術は2ビツ
ト分割として知られており、入力ビツトの全16の
ブール代数機能をAND配列のたつた4つの入力
線を用いて表現することができるため、広く
PLA設計において使用されている。2ビツト分
割のみを用いて積項数を顕著に減少することが実
現できる。他の領域及び積項減少技術も知られて
いる。例えば、米国特許第3890603号に記載され
ているようにOR配列の出力に設けられた排地的
OR回路をPLAのAND及びOR配列内で実行され
る多数の論理機能を減少するために用いてもよ
い。 さらにPLAを縮小する技術としては、積項が
OR配列に供給される前に積項を操作する論理機
能を設けるものがある。例えば、米国特許第
4032894号には、ANDとOR配列の間に設けられ
た選択積項インバータを使用することが記載され
ている。積項に2ビツト分割を使用することは、
IBMテクニカルデイスクロージヤブリテン19巻
5号1976年10月1780−1781ページのS.B.
Greenspanによる論文「マルチプルパーテシヨン
ドプログラマブルロジツクアレイ」に記載されて
いる。この技術は、OR配列に接続可能な積項数
を増加することを可能にしている。第2A図はこ
れらの技術により修正された基本的なAND/OR
PLAのブロツク図を表すものであり、85は2入
力デコーダ、86は論理回路である。第2B図は
このように修正されたPLAにより実行される任
意の操作を含んだ論理操作の順序が示されてい
る。 別のPLAの変形が、IBMテクニカルデイスク
ロージヤブリテン19巻7号1976年12月2544−2546
ページのG.J.Robbinsによる論分「アレイロジツ
クシヨートパス」に記載されている。これには、
いくつかの配列の出力信号の利用可能な速度を増
加させるため、バイパスし又はOR配列と平行に
操作することにより積項をPLA出力に直接に供
給する能力が与えられている。 また別のPLAの変形が米国特許第4140967号に
記載されている。ここには1つの行列の交互の列
がAND及びORの副配列からなる混合した
AND/OR配列が記載されており、各副配列は特
別な試験条件の下では単一の配列として独立に駆
動することが可能である。第3A図には、2組の
直交した線を持つ行列に結合された前述の入力信
号の2ビツト分割を含くむそのような配列が示さ
れている。普通のPLAの動作条件下では、入力
デコーダ87はAND副配列と結合された水平線
の第1組を駆動し、垂直線の第1組上に2配列
PLAのPLA配列と同様に積項PT1−PT3を発生
する。垂直な積項線は、OR副配列に結合された
水平線の第2組(Xで示されている)の重なり合
う1つと選択的結合されていて、垂直線の第2番
目の組に和項ST1−ST3を発生する。そしてこれ
らの和項は他のPLAと同様に出力論理84に接
続される。従つて、この混合したPLAは第1A
図に示されるのと同様に直接結合されたPLAの
普通のAND/OR順序で動作する。この混合した
配列の特徴は、AND副配列又はOR副配列の各々
が独立に試験されるように、入力デコーダ又は分
割回路により直線にAND副配列又はOR副配列の
どちらかを駆動することのできる手段を有するこ
とである。複数の単極単投スイツチSW1が、入
力信号T1及びT2に応答して入力信号80を
AND副配列又はOR配列のどちらかに印加する。
同様なスイツチSW2は出力信号を出力論理84
に接続するのに用いられる。第3B図は普通及び
試験の条件下でこの混合したPLAにより実行さ
れる順序論理を示している。 米国特許第3987287号に記載されているように、
入力線又は出力線を分割又は折り返してPLAの
領域を減少する有用な種々の他の変形が提案され
ている。論理項の数及び(又は)複雑さを増大さ
せる技術として知られているのは、米国特許第
3924243号に示されているようなOR配列出力を
入力信号と共にクロスフイールド(cross−field)
分割するもの、又は米国特許第3975623号に示さ
れるような多数の副配列を使用するもの、又は米
国特許第3936812号に示されるように入/出力線
及びフイードバツク線の個性化により融通性を持
たせることができるようにするために2レベル相
互接続メタロジイの拡大した使用を行うものがあ
る。 上述の改良を見ると、配列領域のかなりの減少
及び配列により実行される論理の単純化により、
多くの分野においてPLA論理の使用がカスタム
論理に対して競争力を持つことを可能にしてい
る。配列により実行される論理が少ない従来の技
術においては、これは非配列論理実行回路の複雑
さ及び数の増加により成し遂げられており、しば
しばPLAに周辺回路を加えた全回路領域の増大
が問題となる。これに加えるに、高度に複雑な論
理の実行、例えば2進加算器は、多数の配列によ
り発生される論理項を必要とし、従つてPLA論
理で実行することは実際的でない。 マイクロプロセツサ・チツプなどの多機能な半
導体装置の開発では、単一の半導体基板により多
くの機能を設けることを必要としている。マイク
ロプロセツサ・システムの設計者達は、16又は32
プロセシング・ユニツトでユーザーの要求を満足
させようとしている。従来の2ビツト入力分割及
び排他的OR出力回路を用いたAND/ORPLAに
より構成された32ビツト2進カウンタがIBM J.
Res.Develop.、Vol.23、No.2、1979年163〜178ペ
ージのA.Weinbergerによる論文“高速プログラ
マブルロジツク加算器”に記載されているが、こ
のカウンタは38220配列ビツトの全体に対して全
部で195の積項と196のアレイ列とを必要としてい
る。 この発明によれば、必要な配列論理ビツトの数
を減少することが可能なことに加えて、物理的及
び論理的実行要素を共有することにより必要な領
域を顕著に減少し、非配列論理実行回路の数を顕
著に減少することのできるPLA形式により、2
進カウンタ及び他の高度に複雑な論理機能が達成
される。 この発明のPLAは、混合されたAND/OR配
列中のAND及びOR部分の両方に共有される入出
力線を一組使用することにより、配列に関係した
要素の物理的共有を最大にしている。積項及び和
項の両方は一組の出力線上に出力される。配列の
入力及び出力信号は多くの場合、AND及びOR機
能の入力及び出力回路を物理的に共有することが
できるように、時分割多重処理される。AND及
びOR副配列の共通出力上の排他的NORとして構
成されている排他的ORの有効性は、PLAの複雑
な論理機能を実行する能力を一層高め、特に後で
示されるように2進カウンタ設計において有用で
ある。 この発明のこれらの特徴及び他の特徴は、以下
に図面を参照して詳細に説明されるこの発明の実
施例により明らかとなるであろう。 第4A図を参照するとこの発明の一実施例によ
るPLAのブロツク図が示されている。主な回路
要素は、入力デコーダ10及びNOR論理20を
含む入力ドライバ、論理行列又は配列30、排他
的NOR論理回路40、結合又はゲーテイング論
理回路50、出力論理又はラツチ回路60であ
る。各回路要素の活性状態は、AND又はOR機能
を実行するタイミング信号D1及びD2の存在又
は不存在により決定される。 入力デコーダ10は複数の入力信号12を受信
し、タイミング信号D1が存在している間に反転
及びビツト分割を含むデコーデイング機能を実行
し、所望ならば、線16上にAND配列論理機能
の駆動又は入力信号を表わす出力信号の第1組を
供給する。 入力線16は、NOR論理ブロツク20を通過
して配列30を通る水平線に直接に結合されてい
る。配列30中には、黒の三角形で示された潜在
的なANDゲート32と白の三角形で示されたOR
ゲート34とがあり、これら両タイプのゲートは
線16上の入力信号に応答する。D1が活性化さ
れ、D2が活性されていない時は、ANDゲート
32のみが使用可能となつている。選択された線
16上にある信号の論理ANDからなる積項は、
配列30より導出された垂直な配列の出力線36
上の積項PT1−PTnとして発生される。 実行される特定の論理機能に依存して、積項は
次の様に種々の残りの回路に入力される。まず、
一番に重要なことは、積項の対が排他的OR回路
40に加えらて関係(PTx)V−(PTy)を発生
することである。ここでV−は論理排他的OR関数
を表す。また積項は線42を経てゲーテイング論
理回路50の入力に加えられてもよく、又は直接
に線44を経て出力論理60に加えられてもよ
い。排他的ORが取られた積項は、線46を経て
出力論理60又は線48を経てゲーテイング論理
50のどちらかに加えられてもよい。従つて、タ
イミングパルスD1により決定される第1の時間
間隔の間に、発生された積項又は積項の排他的
ORは、出力論理60又はゲーテイング回路50
に出現する。時間D1が活性化される間に実行さ
れる順序論理は、第4B図のD1の括弧で示され
る部分である。 タイミングパルスD2により決定される第2の
時間間隔の間に、ゲーテイング論理回路50にあ
る積項信号は、タイミングパルスD2が存在する
間にのみ使用可能とされるNOR論理回路20の
入力に加えられ、少なくとも選択された線16の
上に出力信号の第2組を発生する。出力信号のこ
の第2組はOR配列論理機能の入力信号に相当す
る。D2が活性化された時間の間にのみ、配列3
0のORゲートが使用可能となる。従つて、複数
の積項の和又は和項ST1−STnが配列の出力線3
6上に発生される。したがつて、排他的NOR論
理回路40、ゲーテイング論理回路50及び
NOR論理回路20は、論理積項を入力線16上
に、第2時間間隔の間に出力線36上に論理積項
の和が発生されるように供給する論理手段を構成
している。タイミング信号D2が活性化されてい
る間に実行される順序論理は第4B図の括弧の付
けられたD2に示される部分である。積項PT1−
PTnと同じように、和項ST1−STnは排他的OR
回路40に加えられてもよく又は直接に出力論理
回路60に直接に加えられてもよく、このように
して以下の出力関数を得ることができる。 PT、PTV−PT、PT+PT、(PT+PT)V−PT、
(PT+PT)V−(PT+PT)、(PTV−PT)+PT、
(PTV−PT)V−(PTV−PT)、(PTV−PT)+(PTV
−
PT)、(PTV−PT)V−(PT+PT)、 ここで各積項PTは、PLAサイクルのAND配
列区間の間に線16上に生ずる異なる入力信号の
論理AND関数である。第4C図にD1,D2、
入力及び出力のタイミング関数が示れている。 入力回路要素、配列回路要素及び出力回路要素
のいくつかを物理的に共有することにより、この
発明のPLAを作製するのに必要とされる半導体
領域をかなり減少することが可能となる。これに
加えて、特に積項に関して付加的な論理機能を実
行する能力により、以下に示すように複雑な機能
を実行するのに必要な配列の大きさをかなり減少
することが可能となる。 第5図を参照すると、第4A図のPLAをnチ
ヤネルMOSFFT技術により製造するのに用いら
れる典型的な回路の概略図が示されている。な
お、PLAは他の半導体技術を用いて製造しても
よい。第4図と第5A図とにおいて対応する各要
素は同じ参照符号を附して表している。 入力デコーダ10及び10′は2つの機能部分
とを有している。部分10Aは入力信号の真の値
と補の値とを供給し、そして部分10Bは実際の
入力信号のデコーデイングを行う。回路10Aに
於て単純なクロツク応答反転回路が相補的な入力
信号を発生するのに使用されている。回路10B
はクロツク応答NAND/NOR回路であり、回路
10Aの出力より、回路10Bの入力1,2,3
及び(又は)4に選択的に接続される入力信号A
及びBのいかなる所望の分割論理関数を発生する
ため、入力信号及びその補数の選ばれたものに対
して応答する。回路10Bの必要な数は特定の
PLAの構造と共に変化するが、論理機能を実行
するために与えられる必要なAND配列入力数は
OR配列入力数の内のどちらか大きい方に等し
い。もしカスタム設計のPLAと反対に汎用的な
PLAが設計されるとすると、デコーダ回路の数
は予じめ決めることができ、単に必要とされるも
のだけが相互接続される。回路10によりデコー
デイングされた出力信号は、NOR論理回路20
及び配列30の両方を通る出力線16に出力され
る。 NOR論理回路20及び20′は、複数の入力例
えば図示するようにC、D、Eの3つの入力を有
する単純なクロツク応答NORゲートである。 NORゲートはパルスD2が高い時のみ活性化
し、線16上にOR配列の入力信号を表す駆動信
号を供給する。NOR回路20の入力端子は後に
述られるようないくつかの信号に応答するようで
あつてよい。 配列30は、列及び行に配列された複数の
MOSFET装置を有し、一部が第5図に示されて
いる。ANDゲート素子32及びORゲート素子3
4が、交互に配された列出力線36と列選択線3
8との間に、直列に接続されている。素子の各列
は行線16上の信号に対してNOR論理ゲートと
して働くことができる。機能素子32又は34の
存在又は不存在は、出力線36上に供給される特
定の出力関数を決定する。パルスD1が高い間
は、AND素子32のみがそのソース電極がD1
の高い時に零ボルトにあるクロツクパルスD2に
接続されるために使用可能となる。OR素子34
はそのソース電極が高レベルD1の信号に置かれ
るため導通状態になることを阻止される。同様に
OR素子34はD2が高い間にのみ使用可能とさ
れる。素子32及び34は読出し専用メモリの配
列に使用される周知の種々の技術を用いて選択的
に機能するようにプログラムしてもよい。プログ
ラミングは製造工程においても又は完成した後の
どちらでも行うことができる。前者の方がPLA
の製造の後の工程の間に入力及び出力の選択的な
相互接続を実行するため好まれる。出力線36は
出力端子F及びGに示されるように配列固有領域
を越えて延在している。D1が活性化される時間
においては、端子F及びG上の信号は積項を表
し、D2が活性化される時間においては和項を表
す。 配列の出力端子F及び(又は)Gは、以下に述
べるように信号の存在と所望の論理関数に依存し
て端子H、I、K、N、O又はPの1つ又はそれ
以上に選択的に接続されることができる。 排他的NOR論理回路40は複数の単純な排他
的NOR回路を有する。入力H及びIは、配列出
力端子F及びGの所望の対に結合される。端子J
に出力される関数HV−Iは必要に応じて端子K、
M、N、O又はPのいずれかに結合されてもよ
い。 もし、1又はそれ以上の配列出力端子F及びG
上の積項信号、又は端子J上の排他的NORを取
られた信号がPLA出力信号を表せば、D1が活
性化されれている間、それは出力論理回路60の
端子Kに選択的に結合される。出力回路60は図
示のように単純なインバータでもよく、又は当業
者に周知のデータ記憶ラツチのどんな形であつて
もよい。もし図示の回路が用いられると、D1が
活性化される時に反転された出力信号が利用可能
となる。入力インバータ10Aに示されるような
クロツク応答インバータを使用するとD2パルス
でゲートされるD2の時に他の出力と共に積項出
力信号が提供される。 もし、いかなる配列出力端子上の信号又は排他
的NORの出力が、別の論理機能を必要とするな
らば、それはゲーテイング論理回路50の1又は
複数の端子M、N、O又はPに接続されれてもよ
い。ゲーテイング回路50はインバータ又は
NOR回路の機能を与えることのできる副回路5
0Aを有し、その出力はD2が活性化されている
間、端子Rにおいて使用可能である。ゲーテイン
グ回路の他部分50Bは単一の素子を有し、端子
Nにクロツク・パルスD1を結合することにより
端子Mに接続された積項出力又は排他的NORを
取られた出力が出力端子Qにゲートされるように
接続されている。また回路50Bは3つの異なる
副回路50Bを用いてAND回路として用い、そ
れらの2つがD1パルスによりゲートされる時に
それらの出力端子Q上に隔離された信号を発生
し、そして3番目の回路の入力端子M及びNが
各々の出力端子Q上の信号に応答するようにして
もよい。 回路50の出力端子Q及びR上に発生された信
号は、NOR論理回路20の入力端子C,D及び
(又は)Eに選択的に結合される。D2が活性化
される間、回路20は配列出力線36に和項を発
生するために配列30のOR機能に対して入力信
号を供給する。積項の場合と同様に、和項は出力
回路60に結合されてもよく又は出力回路に結合
される前に排他的NOR回路40に結合されても
よい。 この発明を説明するために特定の実施例につい
て説明してきたが、種々の変形変更が可能であ
り、例えばDC電力の消費を防ぐために図示のよ
うに直接にD2及びD1クロツク信号を用いるの
とは反対に、配列30内の共通ソース線38を直
列的に接続された素子で接続し、その素子のゲー
ト電極にD1及びD2を加えてAND及びOR機能
の各々の活性化を制御するようにしてもよい。 第6,7及び8図はこの発明のPLAを用いて
特定の論理機能を実行するための代表的な例を示
している。 従来において、PLA論理を用いて2進加算器
を達成することについてかなりの関心をもたれて
いた。集積回路内に設けらるデータ処理機能の要
求が増すにつれて、16又はさらに32ビツト幅の
データ群について算術機能を実行可能な機能論理
の必要性が重要さを増してきた。従来は過大な数
の積項と大きなビツト面積を必要とするため、
PLAで加算機能を行うことは実用的に不可能で
あつた。前述のA.Weinbergerの論文及びIBM
Journal of Research and Develpment Vol.24、
No.1、1980年1月、2−24ページのM.S.
Schmooklerによる論文「複数のPLAマクロを用
いた大きなALUsの設計」にPLA加算器の論理設
計の技術水準が記載されている。これらには
PLAを通る単一のパスとそれに付随した回路の
みを必要とする多ビツト2進加算器を提供するた
め、単純なPLAのAND/OR論外以外からなる
拡張した構成が記載されている。 以下に説明の記述を簡略化する為この発明によ
る4ビツト2進加算器を例示しているが、同じ様
な論理原理及び設計手法を任意のnビツト加算器
の設計に対しても用いてよい。第6図には、第5
図のPLAを2進カウンタとして用いるために適
した2進カウンタ論理関数を与えるのに必要な
種々の入力関係を示している。 上述のWeinbergerの論文に記載された設計手
法及び命名法を使用し、そして排他的OR機能を
さらに十分に利用するために修正した4ビツト加
算器の方程式が第7A図に表示されている。ここ
において、和ビツトS3、S2、S1及びS0及びキヤ
リイ出力ビツトCoutが、等しく重み付けられた
入力信号の2ビツト分割からの出力として利用可
能な周知の論理加算機能H、P及びGにより定義
されている。 第7B図は、配列30のAND副配列の部分の
積項の論理発生を示している。出力ビツトS3は
排他的NORゲート40により直接発生されるこ
とに注意すべきである。第7C図には、PLAサ
イクルのOR部分の期間における出力ビツトS2、
S1、S0及びCoutの残りの論理発生が示されてい
る。NORゲート50及び20の両方の組は、内
部的にのみ使用されるキヤリイ出力ビツトC1の
論理的等価物を発生するために用いられる。ま
た、第7A図に示されているAND配列部分にお
いて、如何なる単一の入力ビツト位置に対して積
項を発生するために必要な異なる入力項の最大数
は3つであることに注意すべきである。従つて、
AND副配列に必要な列の数また3つであり、必
要な配列領域の25パーセントの減少を意味してい
る。 なぜならば、従来の2ビツト分割された入力回
路は普通、2進値数の分割から利用可能な全部で
4つの異なる入力項を必要としているからであ
る。 第8図は、nチヤネル・エンハンスメント型
MOSFET素子を用いた第7図の4ビツト加算器
の実施例の回路配線図である。PLAのAND配列
部分に対して発生される入力項が入力線16の付
近に近接して示されており、これは入力信号を配
列の列の頂上と底に加えるために周知の技術で分
割されている。PLAのOR配列部分への入力が
AND入力項の近くの括弧内に示されている。不
使用入力項がダツシユにより示されており、各々
への入力回路へのクロツク信号D1及びD2の適
用な応用によりそらされている。水平な各出力線
36の近くにそれぞれの入力項に用いられた
AND又はOR出力項に対するのと同じ表示を用い
て示された適当な積項、和項又はその両方があ
る。副配列出力項がPLA又は下線の引かれた加
算器出力ビツト同様に示されている。出力線36
も入力線16と同様に分割されている。配列入力
及び出力線はPLAサイクルのAND及びOR部分
の両方に共有さされているため、これらの線の分
割は、副配列の各々に対して一致しなければなら
ない。前の第5図と同様に、AND配列素子32
は、機能的に異なるOR素子34をより明確に区
別するため影線で示されている。全4ビツト・カ
ウンタは7×13素子の行列又は全91ビツトを必要
とするたつた25の配列素子を用いて達成されい
る。 この発明によるPLAを用いて必要な配列面積
が劇的に減少されることを説明するため、表に
4及び16ビツト加算器の両方に対しての種々のタ
イプの配列構成の加算器の比較が示されている配
列のタイプは以下の通りである。 タイプ1 単純なテーブル・ルツクアツプ加算器 タイプ2 1ビツト入力デコーダを用いた標準的
なAND/OR配列のPLA タイプ3 2ビツト入力分割を用いたAND/OR
配列PLA タイプ4 2ビツト入力分割及び排他的OR出力
を使用したAND/OR配列のPLA タイプ5 前述のM.S.Schmookerの論文に記載
されたAND/OR配列PLAの副組 タイプ6 入力及び出力線分割のような配列減少
技術を使用しないこの発明によるPLA タイプ7 入力及び出力線分割を使用したこの発
明によるPLA 各配列タイプについて比較された項目は、積項
の数Np、列の数Nc、必要な全ビツト領域Nbで
ある。
【表】
タイプ6及び7のこの発明のPLAに対する積
項の数Npは、積項及び和項がアレイ行列の行の
次元に沿つて加えられているため、積項及び和項
の数を含んでおり、第1番目は積項を表してお
り、第2番目は和項を表わしている。項Nbは、
これらの加算器を形成するために必要な配列領域
又は全読出し専用メモリを表しているため、この
発明の加算器とタイプ1から5までの加算器との
間における数Nbの特に16ビツト加算器に対する
顕著な減少は、単一の半動体チツプ上に16又は32
ビツト・マイクロプロセツサを設計する回路設計
者に対して特に重要な点である。 これに加うるにこの発明のPLAは、例えば前
述のWeinbergerの論文に記載されているように
4ビツト分割入力デコーダを使用することにより
さらに縮少することができる。 この発明のPLAは配列ビツト領域の顕著な縮
小を可能にするに加えて、配列それ自身及び必要
な周辺回路の両方の物理要素を共有することによ
り、全PLAに必要な領域をさらに一層に縮小す
ることができる。
項の数Npは、積項及び和項がアレイ行列の行の
次元に沿つて加えられているため、積項及び和項
の数を含んでおり、第1番目は積項を表してお
り、第2番目は和項を表わしている。項Nbは、
これらの加算器を形成するために必要な配列領域
又は全読出し専用メモリを表しているため、この
発明の加算器とタイプ1から5までの加算器との
間における数Nbの特に16ビツト加算器に対する
顕著な減少は、単一の半動体チツプ上に16又は32
ビツト・マイクロプロセツサを設計する回路設計
者に対して特に重要な点である。 これに加うるにこの発明のPLAは、例えば前
述のWeinbergerの論文に記載されているように
4ビツト分割入力デコーダを使用することにより
さらに縮少することができる。 この発明のPLAは配列ビツト領域の顕著な縮
小を可能にするに加えて、配列それ自身及び必要
な周辺回路の両方の物理要素を共有することによ
り、全PLAに必要な領域をさらに一層に縮小す
ることができる。
第1A図は従来のOR配列に直接結合された
AND配列を有するプログラマブル・ロジツク・
アレイ(PLA)の構成を示すブロツク図、第1
B図は第1A図のPLAの順序論理機能を示す図、
第2A図は従来のAND配列とOR配列との間に論
理機能が介在するPLAの構成を示すブロツク図、
第2B図は第2A図のPLAの順序論理機能を示
す図、第3A図はAND副配列及びOR副配列を含
む1つの混合された配列と、AND配列及びOR配
列を独立に評価するための試験手段とを有する従
来のPLAの構成を示すブロツク図、第3B図は
第3A図のPLA順序論理機能を示す図、第4A
図はこの一実施例によるPLAを示すブロツク図、
第4B図は第4A図の順序論理機能を示す図、第
4C図はタイミングパルスD1及びD2により制
御される第4A図のPLAの入力及び出力の関係
を示すグラフ図、第5図は第4A図のPLAをn
チヤネルMOSFET素子で構成した例を示す回路
図、第6図は第5図のPLAを2進カウンタとし
て用いるのに適する2進カウンタに関係した論理
機能を与えるのに必要な種々の入力関係を示す
図、第7A図は4ビツト2進加算器の出力ビツト
を定義するのに用いられる論理方程式を示す図、
第7B図は第7A図に示す4ビツト2進カウンタ
を与えるためにこの発明のPLAのAND副配列に
より実行される論理を示す図、第7C図は第7A
図に示す4ビツト2進カウンタを与えるためこの
発明のPLAのOR副配列により実行される論理を
示す図、第8図は第7図の4ビツト2進カウンタ
を与えるこの発明のPLAの一部を示す回路図で
ある。 16……入力線、20……NOR論理回路、3
0……配列、32……ANDゲート、34……OR
ゲート、36……出力線、40……排他的NOR
論理回路、50……ゲーテイング論理回路、6…
…出力論理回路。
AND配列を有するプログラマブル・ロジツク・
アレイ(PLA)の構成を示すブロツク図、第1
B図は第1A図のPLAの順序論理機能を示す図、
第2A図は従来のAND配列とOR配列との間に論
理機能が介在するPLAの構成を示すブロツク図、
第2B図は第2A図のPLAの順序論理機能を示
す図、第3A図はAND副配列及びOR副配列を含
む1つの混合された配列と、AND配列及びOR配
列を独立に評価するための試験手段とを有する従
来のPLAの構成を示すブロツク図、第3B図は
第3A図のPLA順序論理機能を示す図、第4A
図はこの一実施例によるPLAを示すブロツク図、
第4B図は第4A図の順序論理機能を示す図、第
4C図はタイミングパルスD1及びD2により制
御される第4A図のPLAの入力及び出力の関係
を示すグラフ図、第5図は第4A図のPLAをn
チヤネルMOSFET素子で構成した例を示す回路
図、第6図は第5図のPLAを2進カウンタとし
て用いるのに適する2進カウンタに関係した論理
機能を与えるのに必要な種々の入力関係を示す
図、第7A図は4ビツト2進加算器の出力ビツト
を定義するのに用いられる論理方程式を示す図、
第7B図は第7A図に示す4ビツト2進カウンタ
を与えるためにこの発明のPLAのAND副配列に
より実行される論理を示す図、第7C図は第7A
図に示す4ビツト2進カウンタを与えるためこの
発明のPLAのOR副配列により実行される論理を
示す図、第8図は第7図の4ビツト2進カウンタ
を与えるこの発明のPLAの一部を示す回路図で
ある。 16……入力線、20……NOR論理回路、3
0……配列、32……ANDゲート、34……OR
ゲート、36……出力線、40……排他的NOR
論理回路、50……ゲーテイング論理回路、6…
…出力論理回路。
Claims (1)
- 【特許請求の範囲】 1 第1の時間間隔において複数の入力信号に応
答してこれらの信号の内の選ばれたものから論理
積項を発生する第1論理配列と、第2の時間間隔
において第1論理配列より発生された論理積項の
内の選ばれたものから和を発生する第2論理配列
と、第1論理配列の複数の入力線及び出力線と、
第2論理配列の複数の入力線及び出力線とを有す
るプログラマブル・ロジツク・アレイにおいて、 前記第1及び第2論理配列の前記入力線が物理
的に共通であり、かつ前記第1及び第2論理配列
の前記出力線が物理的に共通であり、そして、 前記論理配列により発生された論理積項の論理
表示を、前記共通の入力線に、前記第2の時間間
隔の間に論理積項の和が前記出力線上に発生され
るように供給する論理手段を有することを特徴と
するプログラマブル・ロジツク・アレイ。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US387132 | 1982-06-10 | ||
| US06/387,132 US4506341A (en) | 1982-06-10 | 1982-06-10 | Interlaced programmable logic array having shared elements |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS58222620A JPS58222620A (ja) | 1983-12-24 |
| JPH024171B2 true JPH024171B2 (ja) | 1990-01-26 |
Family
ID=23528596
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58068515A Granted JPS58222620A (ja) | 1982-06-10 | 1983-04-20 | プログラマブル・ロジツク・アレイ |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4506341A (ja) |
| EP (1) | EP0096225B1 (ja) |
| JP (1) | JPS58222620A (ja) |
| DE (1) | DE3377690D1 (ja) |
Families Citing this family (27)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4638450A (en) * | 1983-09-30 | 1987-01-20 | Honeywell Information Systems Inc. | Equal nine apparatus for supporting absolute value subtracts on decimal operands of unequal length |
| US4583012A (en) * | 1983-10-20 | 1986-04-15 | General Instrument Corporation | Logical circuit array |
| US4758746A (en) * | 1985-08-12 | 1988-07-19 | Monolithic Memories, Inc. | Programmable logic array with added array of gates and added output routing flexibility |
| JPH0760854B2 (ja) * | 1985-08-30 | 1995-06-28 | 株式会社日立製作所 | 一方向導通形スイツチング回路 |
| DE3611557A1 (de) * | 1986-04-07 | 1987-10-29 | Nixdorf Computer Ag | In integrierter technik hergestellter logik-array-baustein zur erstellung integrierter schaltungen |
| EP0247502B1 (de) * | 1986-05-30 | 1990-10-24 | Siemens Aktiengesellschaft | Programmierbare Schaltungsanordnung |
| US4772811A (en) * | 1986-07-04 | 1988-09-20 | Ricoh Company, Ltd. | Programmable logic device |
| US4858178A (en) * | 1986-09-30 | 1989-08-15 | Texas Instruments Incorporated | Programmable sequence generator |
| DE3718916A1 (de) * | 1987-06-05 | 1988-12-15 | Siemens Ag | Verbindungsnetzwerk zur einstellbaren verbindung von schaltungsanordnungen, insbesondere programmierbaren schaltungsanordnungen |
| DE3718915A1 (de) * | 1987-06-05 | 1988-12-15 | Siemens Ag | Programmierbare schaltungsanordnung |
| US4880754A (en) * | 1987-07-06 | 1989-11-14 | International Business Machines Corp. | Method for providing engineering changes to LSI PLAs |
| US4782249A (en) * | 1987-08-03 | 1988-11-01 | General Electric Company | Static CMOS programmable logic array |
| US4922137A (en) * | 1988-05-17 | 1990-05-01 | Eastman Kodak Company | Programmable sequence generator |
| US5151995A (en) * | 1988-08-05 | 1992-09-29 | Cray Research, Inc. | Method and apparatus for producing successive calculated results in a high-speed computer functional unit using low-speed VLSI components |
| US4942319A (en) * | 1989-01-19 | 1990-07-17 | National Semiconductor Corp. | Multiple page programmable logic architecture |
| NL8902820A (nl) * | 1989-11-15 | 1991-06-03 | Philips Nv | Geintegreerde halfgeleiderschakeling van het master slice type. |
| US5084636A (en) * | 1989-12-27 | 1992-01-28 | Kawasaki Steel | Master-slave programmable logic devices |
| US5596742A (en) * | 1993-04-02 | 1997-01-21 | Massachusetts Institute Of Technology | Virtual interconnections for reconfigurable logic systems |
| US5761484A (en) * | 1994-04-01 | 1998-06-02 | Massachusetts Institute Of Technology | Virtual interconnections for reconfigurable logic systems |
| US5659716A (en) * | 1994-11-23 | 1997-08-19 | Virtual Machine Works, Inc. | Pipe-lined static router and scheduler for configurable logic system performing simultaneous communications and computation |
| US5552721A (en) * | 1995-06-05 | 1996-09-03 | International Business Machines Corporation | Method and system for enhanced drive in programmmable gate arrays |
| US5777918A (en) * | 1995-12-22 | 1998-07-07 | International Business Machines Corporation | Fast multiple operands adder/subtracter based on shifting |
| US5684413A (en) * | 1996-03-28 | 1997-11-04 | Philips Electronics North America Corp. | Condensed single block PLA plus PAL architecture |
| US6407576B1 (en) * | 1999-03-04 | 2002-06-18 | Altera Corporation | Interconnection and input/output resources for programmable logic integrated circuit devices |
| 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 |
| JP2024135254A (ja) * | 2023-03-22 | 2024-10-04 | キオクシア株式会社 | 記憶装置 |
Family Cites Families (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3566153A (en) * | 1969-04-30 | 1971-02-23 | Texas Instruments Inc | Programmable sequential logic |
| US3702985A (en) * | 1969-04-30 | 1972-11-14 | Texas Instruments Inc | Mos transistor integrated matrix |
| US3593317A (en) * | 1969-12-30 | 1971-07-13 | Ibm | Partitioning logic operations in a generalized matrix system |
| US3761902A (en) * | 1971-12-30 | 1973-09-25 | Ibm | Functional memory using multi-state associative cells |
| GB1372926A (en) * | 1972-01-17 | 1974-11-06 | Ibm | Associative store |
| US3924243A (en) * | 1974-08-06 | 1975-12-02 | Ibm | Cross-field-partitioning in array logic modules |
| IT1042852B (it) * | 1974-09-30 | 1980-01-30 | Siemens Ag | Disposizione di circuiti logici integrata e programmabile |
| DE2455178C2 (de) * | 1974-11-21 | 1982-12-23 | Siemens AG, 1000 Berlin und 8000 München | Integrierte, programmierbare Logikanordnung |
| US3987287A (en) * | 1974-12-30 | 1976-10-19 | International Business Machines Corporation | High density logic array |
| US3936812A (en) * | 1974-12-30 | 1976-02-03 | Ibm Corporation | Segmented parallel rail paths for input/output signals |
| US3975623A (en) * | 1974-12-30 | 1976-08-17 | Ibm Corporation | Logic array with multiple readout tables |
| US4032894A (en) * | 1976-06-01 | 1977-06-28 | International Business Machines Corporation | Logic array with enhanced flexibility |
| US4124899A (en) * | 1977-05-23 | 1978-11-07 | Monolithic Memories, Inc. | Programmable array logic circuit |
| US4140967A (en) * | 1977-06-24 | 1979-02-20 | International Business Machines Corporation | Merged array PLA device, circuit, fabrication method and testing technique |
| FR2396468A1 (fr) * | 1977-06-30 | 1979-01-26 | Ibm France | Perfectionnement aux reseaux logiques programmables |
| GB2011669B (en) * | 1978-01-03 | 1982-01-13 | Ibm | Programmable logic array adders |
-
1982
- 1982-06-10 US US06/387,132 patent/US4506341A/en not_active Expired - Lifetime
-
1983
- 1983-04-20 JP JP58068515A patent/JPS58222620A/ja active Granted
- 1983-05-06 DE DE8383104486T patent/DE3377690D1/de not_active Expired
- 1983-05-06 EP EP83104486A patent/EP0096225B1/en not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| EP0096225A3 (en) | 1985-03-20 |
| JPS58222620A (ja) | 1983-12-24 |
| EP0096225A2 (en) | 1983-12-21 |
| EP0096225B1 (en) | 1988-08-10 |
| US4506341A (en) | 1985-03-19 |
| DE3377690D1 (en) | 1988-09-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH024171B2 (ja) | ||
| JP3005644B2 (ja) | プログラマブル論理装置用入力回路及びプログラマブル論理装置で使用するための論理回路並びにプログラマブル論理装置 | |
| US5081375A (en) | Method for operating a multiple page programmable logic device | |
| US4831573A (en) | Programmable integrated circuit micro-sequencer device | |
| EP0379071B1 (en) | Multiple page programmable logic architecture | |
| JPH02242425A (ja) | プログラム可能論理ユニット及び信号プロセッサ | |
| EP0602421A2 (en) | Low power, high performance programmable logic arrays | |
| JPH0645912A (ja) | 構成を変更可能な記憶回路 | |
| WO1998032229A1 (en) | Configurable logic block with and gate for efficient multiplication in fpgas | |
| JPH0454254B2 (ja) | ||
| CA1204171A (en) | Programmable logic array | |
| US5805491A (en) | Fast 4-2 carry save adder using multiplexer logic | |
| US6505226B1 (en) | High speed parallel adder | |
| EP0270219A2 (en) | Reduced parallel EXCLUSIVE OR and EXCLUSIVE NOR gate | |
| US4525641A (en) | Flip-flop programmer using cascaded logic arrays | |
| JPS58194431A (ja) | デイジタル制御装置 | |
| JPS59200526A (ja) | ソフトウエアによりプログラム可能な論理アレイ | |
| EP0332845A2 (en) | Dual look ahead mask generator | |
| US20030120694A1 (en) | Method and apparatus for use in booth-encoded multiplication | |
| EP0266866B1 (en) | Dual mode-increment/decrement n-bit counter register | |
| US4766565A (en) | Arithmetic logic circuit having a carry generator | |
| EP0087601A1 (en) | Integrated circuit mechanism for coupling multiple programmable logic arrays to a common bus | |
| WO1986007173A1 (en) | Cmos full adder cell e.g. for multiplier array | |
| JPH033418B2 (ja) | ||
| EP0199890B1 (en) | A self-sequencing logic circuit |