DE2723821C2 - Programmierbare logische Anordnung - Google Patents

Programmierbare logische Anordnung

Info

Publication number
DE2723821C2
DE2723821C2 DE2723821A DE2723821A DE2723821C2 DE 2723821 C2 DE2723821 C2 DE 2723821C2 DE 2723821 A DE2723821 A DE 2723821A DE 2723821 A DE2723821 A DE 2723821A DE 2723821 C2 DE2723821 C2 DE 2723821C2
Authority
DE
Germany
Prior art keywords
matrix
output
pla
inputs
inverter
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
Application number
DE2723821A
Other languages
English (en)
Other versions
DE2723821A1 (de
Inventor
Robert Russell Rochester Minn. Williams
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2723821A1 publication Critical patent/DE2723821A1/de
Application granted granted Critical
Publication of DE2723821C2 publication Critical patent/DE2723821C2/de
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17704Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns
    • H03K19/17708Logic 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/17716Logic 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

Description

50
Die Erfindung betrifft eine programmierbare logische Anordnung nach dem Oberbegriff von Anspruch 1.
Unter einer programmierbaren logischen Anordnung (PLA; englisch: Programmable Logic Array) wird ein regelmäßig strukturiertes, speicherähnliches Feld aus logischen UND- bzw. ODER-Gattern verstanden, mit dem logische Verknüpfungen zwischen den angelegten Eingangssignalen gebildet werden können (vgl. Stichwort PLA im Lexikon der Mikroelektronik, IWT Verlag München 1975 oder Kapitel 8 des Buches »MOS/LSI Design and Application« von W. N. Carr and J. P. Mize 1972). PLAs werden als integrierte Schaltkreise hergestellt und enthalten zwei hintereinander geschaltete Matrizen: die sogenannte UND-Matrix, in der die Eingangssignale nach der Funktion des logischen UND verknüpft werden und eine nachgeschaltete ODER-Matrix, mit der die logische ODER-Funktion zwischen verschiedenen Ausgangsleitungen der UND-Matrix erzeugt wird. Ein Beispiel für eine derartige programmierbare logische Anordnung ist in der DE-OS 20 18 473 zu finden, Ln der Feldeffekttransistoren zum Aufbau der Matrizen verwendet werden. Ein Weiterbildung der oben beschriebenen einfachen PLA-Struktur ist in der US-Patentschrift 39 36 812 beschrieben, bei der die Eingangssignale nicht direkt, sondern paarweise über Decodierer an die Eingangsleitungen der UND-Matrix angelegt werden. Dadurch können diese PLAs flexibel eingesetzt werden; in ähnlicher Weise wurden am Ausgang der ODER-Matrix Halteglieder eingebaut und Rückführungen von der ODER-Matrix zur UND-Matrix eingeführt, um den Anwendungsbereich dieser Schaltungen zu erhöhen. Wie später noch im einzelnen dargelegt wird, reichen diese Ergänzungen bei einigen Arten von Aufgaben nicht aus, um programmierbare logische Anordnungen mit hoher Effektivität einsetzen zu können.
Neben den oben beschriebenen programmierbaren logischen Anordnungen mit zwei hintereinander geschalteten Verknüpfungsmatrizen sind im Stande der Technik noch andere Bemühungen deutlich geworden, logische Verknüpfungsschaltkreise anzugeben, die regelmäßig strukturiert sind und universell eingesetzt werden können. Ein Beispiel für derartige allgemeine logische Verknüpfungsfelder ist in der US-Patentschrift 38 18 252 angegeben, die mit bipolaren Schaltelementen aufgebaut ist; derartige Anordnungen sind zwar flexibel, können aber nicht so dicht gepackt werden, wie die Speichermatrizen von PLAs.
PLAs können je nach der gewünschten logischen Funktion personalisiert werden und dienen somit als Ersatz für speziell zugeschnittene logische Schaltungen. Ein Anwendungsgebiet der PLAs ist der Steuerteil von mikroprogrammierten Datenverarbeitungsanlagen.
Eine programmierbare logische Anordnung kann unter verschiedenen Gesichtswinkeln betrachtet werden. Ihre Eingänge können einmal als Wortadressen eines potentiell sehr großen Festwertspeichers (ROS) aufgefaßt werden, wobei dann die Ausgänge den Inhalt des adressierten Worts darstellen; dabei ist jedoch nur eine relativ geringe Anzahl der potentiell adressierbaren Wörter tatsächlich im PLA schaltungsmäßig vorhanden. In einer anderen Betrachtungsweise stellt sich das PLA als assoziativ oder inhaltsadressierbarer Speicher (CAM) dar. Seine Eingänge entsprechen dann einem Suchargument, die Ausgänge der logischen Summe aller Treffer für dieses Argument. Schließlich kann ein PLA auch als verallgemeinerter logischer Schaltkreis für eine zweistufige Bool'sche Logik aufgefaßt werden, mit dem eine gewisse Anzahl von Produkttermen aus irgendwelchen der Eingangssignalen realisiert werden kann und der auswählbare Terme mit einer ODER-Bedingung zu einem beliebigen Ausgangssignal verknüpft.
Dieser dritten Betrachtungsweise wird die tatsächliche physikalische Struktur des PLA am ehesten gerecht. Der Benutzer des PLA mag es zwar bequemer finden, das Bild eines ROS oder CAM zugrundezulegen. Die Auffassung als Bool'scher Schaltkreis zeigt ihm aber doch, daß die tatsächlich verfügbaren Betriebsmittel zur Realisierung dieser Konzepte auf eine feste und relativ kleine Anzahl von logischen Funktionen einer bestimmten Art beschränkten. Diese Funktionen werden üblicherweise als »Produktterme« bezeichnet, obwohl sie bei einigen Realisierungen nicht unbedingt einfache logische Produkte darstellen. Um eine PLA am
wirkungsvollsten auszunutzen, müssen für die zu realisierende Gesamtfunktion die üblichen Minimisierungstediniken (z. B. Karnaugh-Abbildung) verwendet werden. Wenn es darum geht, das Vorhandensein von bestimmten Eingangskombinationen zu erkennen, sind die üblichen PLA-Strukturen sehr wirkungsvoll. Ein Ausgangssignal, das anzeigt, ob die bestimmte Eingangskombination 10011110 vorliegt oder ein Mitglied der Gruppe ΙΙΙΟΛΧΚλ'(wobei X einen willkürlichen Wert darstellen kann, »dont't care«), kann jeweils mit nur einem einzigen Produktterm erzeugt werden.
Es ist jedoch ebenso wahrscheinlich, daß der Benutzer ein Ausgangssignal verlangt, das die Abwesenheit einer bestimmten Kombination anzeigt (also nicht ihr Vorhandensein). Beispielsweise kann die Aufgabe darin bestehen, einen Zähler für alle Eingangskombinationen, außer 10011110 weiterzuzählen oder das Nichtauftreten eines Operationscodes der Gruppe 11 \QXXXX festzuhalten. Derartige negative Bedingungen kc.inen mit konventionellen PLAs nur sehr schwierig dargestellt werden, da sie in diesem Fall eine sehr große Anzahl von Produkttermen erfordern. Eine andere häufig auftretende Anforderung betrifft das Ansetzen eines Ausgangsbits beim gleichzeitigen Auftreten einer positiven und einer negativen Bedingung, so z. B., wenn die" ersten vier Eingangssignale alle Null sind, die nächsten vier Eingangssignale jedoch nicht alle Eins. Beispielsweise kann in einer Mikroprogrammsteuereinheit eine Instruktion verlangen, eine Aktion eine bestimmte Anzahl von Malen hintereinander durchzuführen. Die Bedingung für diese Wiederholung kann am einfachsten dadurch bestimmt werden, daß ein bestimmter Operationscode vorhanden ist und ein Zählerregister seinen Wert Null noch nicht erreicht hat. Mit konventionellen PLA-Strukturen können derartige Bedingungen nur mit J5 sehr großen Kosten bezüglich der Anzahl von Produkttermen realisiert werden, die auf einem einzelnen Leiterplättchen Platz finden.
Die vorliegende Erfindung hat es sich deshalb zur Aufgabe gemacht, eine programmierbare logische Anordnung der eingangs genannten Art anzugeben, die mit geringem zusätzlichen internen Schaltungsaufwand eine erhöhte Flexibilität für den Benutzer ermöglicht.
Diese Aufgabe ist durch die im Hauptanspruch angegebene technische Lehre gelöst; Ausgestaltungen und Weiterbildungen der Erfindung sind in den Unteransprüchen enthalten.
Im wesentlichen handelt es sich bei der Erfindung um eine auf einem Halbleiterplättchen enthaltene programmierbare logische Anordnung mit einem Satz von so Eingangsleitungen und einer Suchmatrix (UND-Matrix), die selektiv mit den Eingangsleitungen verbunden werden kann. Eine komplementäre Matrix (I.iverter-Matrix), besitzt eine Mehrzahl von Inverterschaltungen, die selektiv mit den Ausgängen der Suchmatrix verbunden werden können. Eine Lese-Matrix (ODER-Matrix), weist Eingänge auf, die selektiv mit den Ausgängen der komplementären Matrix verbunden werden können. Bei der Erfindung wird also eine programmierbare komplementäre Matrix zwischen die programmierbare Suchmatrix und die Lesematrix einer üblichen PLA eingeschoben. Die komplementäre Matrix kann ebenfalls so aufgebaut sein, daß sie Zwischenverbindungen unter ihren Ausgangssignalen erlaubt. Diese PLA kann ebenso wie die üblichen Strukturen einer PLA mit Ausgangssignalen für die Rückkopplung versehen sein, mit Eingangs-Decodie-Der Vorteil der Erfindung besteht im wesentlichen darin, daß eine Vielzahl von üblicherweise auftretenden logischen Funktionen mit weniger Schaltkreisen als bei konventionellen PLAs realisiert werden können, und zwar dadurch, daß die logischen Funktionen entweder in ihren wahren oder in ihrer komplementären Form minimisiert werden oder aber sogar in einer Kombination dieser beiden Formen. Durch die Erweiterung der internen Struktur der bekannten PLAs ergibt sich somit eine deutlich erhöhte Flexibilität der gesamten Schaltung. Die relativ wenigen zusätzlichen Schaltkreise der Invertermatrix fallen bei den heute erreichten Integrationsdichten nicht ins Gewicht
Ein Ausführungsbeispiel der Erfindung wird nun anhand von Zeichnungen näher erläutert; es zeigt
F i g. 1 die schematische Darstellung einer PLA mit einer Invertermatrix,
F i g. 2 einen Teil der UND- und NICHT-Schaltkreise von F i g. 1,
F i g. 3 eine andere Ausführungsform der Schaltkreise in F i g. 2.
Fig. 1 zeigt eine PLAlOO, die als integrierte Schaltung auf einem einzelnen Halbleiterplättchen enthalten ist
Zum Eingangskreis 110 gehört ein Satz von Eingangsleitungen 111, ein Satz von Eingangsdecodierern 1112 und ein Satz von Eingangszeilen 113. Die Decodierer 112 können wie üblich durch eine gemeinsame Taktleitung 101 aktiviert werden. Die Decodierer 112 können dabei als Konverter aufgefaßt werden, die von einer Leitung auf zwei Leitungen übersetzen. Werden die Eingangsklemmen 111 also mit
A, B, Cusw. bezeichnet, so stellen die Leitungen 113Λ Ä,
B, B, C. Cusw. dar.
Die Suchmatrix 120 besitzt einen Satz von UND-Gliedern, die durch die vertikalen Linien 121 dargestellt sind. Jede Schaltung 121 in der Matrix 120 besitzt an ihrem Kreuzungspunkt mit jeder Zeile 113 einen auswählbaren Eingang. Entsprechend der üblichen Darstellung sind die tatsächlich verbundenen Eingänge durch Kreise, wie beispielsweise 122 dargestellt. Die Schaltung 121a erzeugt beispielsweise eine »Eins«, wenn an den Eingangsklemmen 111 die Kombination ACEFG anliegt. Die Anzahl der UND-Glieder 121a bis \2\g auf einem Halbleiterplättchen bestimmt, wieviele Produktterme verfügbar sind.
Die Ausgänge (Spalten) 123 der UND-Glieder 121 sind mit den Invertern 131 der komplementären Matrix 130 verbunden. Die Leitungen 132 verbinden die Ausgangsleitungen 133 der Inverter-Matrix selektiv entweder mit den entsprechenden Ausgangsspalten 123 der UND-Matrix oder mit dem Ausgang eines Inverters 131. Die Verbindung 132a überträgt beispielsweise die wahre Form des UND-Glieds 121a zur Leitung 133, während die Verbindung 132c die komplementäre Form des UND-Glieds 121c auswählt. Die Verbindungsleitungen 132 können in derselben bekannten Art personalisiert werden, wie die Eingangssignale für die UND-Glieder 121: beispielsweise durch eine Metallisierungsmaske während der Herstellung der PLA 100. Es können auch andere bekannte Personalisierungsverfahren verwendet werden, so beispielsweise durchbrennbare Verbindungen oder Effekte, die auf eingefangenen Ladungen beruhen.
Zusätzlich zu den auswählbaren Verbindungen 132 sind in der Matrix 130 auswählbare Verbindungen 134 zwischen verschiedenen Termen vorgesehen. Mit diesen kann das Auseanessignal jeder Spalte der komplemen-
tären Matrix mit dem Ausgang von einer oder mehreren anderen Spalten verbunden werden, wie es beispielsweise bei 134c/und 134/gezeigt ist. Werden die Spalten in dieser Weise zur Herstellung einer ODER-Verknüpfung miteinander leitend verbunden (»ODER-Verbindung«), so sind (außer einer) alle Ausgangsleitungen 133 dieser Gruppe in der Invertermatrix 130 durch Weglassen der entsprechenden Verbindung 135 stillgelegt. Wenn die den Produkttermen entsprechenden Spalten in einer ODER-Verbindung zusammengefaßt werden, wie beispielsweise bei 134t/, wird nur eine der zugehörigen Ausgangsverbindungen 135c/ hergestellt. An Stellen, an denen die Ausgangsverbindung weggelassen ist, kann auch die gesamte Ausgangsleitung weggelassen werden, wie beispielsweise bei 133/! Auf diese Weise können unerwünschte kapazitive Effekte in einem gewissen Maße herabgesetzt werden. Die nicht benutzte Leitung kann aber auch von einem anderen Term benutzt werden, beispielsweise mit Hilfe einer aufgespaltenen UND-Matrix nach dem US-Patent 39 36 812.
Die Lese-(ODER)-Matrix 140 enthält in ihren Ausgangszeilen 141 mehrfache ODER-Glieder. Die Eingänge dieser Glieder werden selektiv mit den Leitungen 133 auf übliche Weise verbunden, so wie es durch die Kreise 142 angedeutet ist. Die Leitungen 133 können somit sowohl als Eingangsspalten für die Matrix 140 aufgefaßt werden, aber auch als Ausgangsleitungen der Matrix 130. Die von den ODER-Gliedern 141 erzeugten Signale können an die getakteten Verriegelungsschaltungen 143 gegeben werden, die an den Endklemmen 144 die PLA-Ausgangsbits erzeugen. Dabei sind wieder in üblicher Weise einige der Ausgänge, hier mit V und W bezeichnet, intern an die Eingänge G und H zurückgeführt. Die verbleibenden
Tabelle I
Ausgänge X bis Z stehen für den externen Abgriff zur Verfügung. In einigen PLAs können gewisse Ausgänge sowohl intern als auch extern sein. Die Verriegelungsschaltungen für die ODER-Glieder 141cbis 141g-sind als Glieder vom Typ »Polarität bewahren« dargestellt, die den Zustand ihrer Eingangssignale beim Auftreten eines Taktsignals iOl festhalten.
Die Rückkoppelausgänge V und W sind mit JK-Flipflops verbunden. Die oberste Verriegelungsschaltung wird beispielsweise beim Auftreten eines Taktimpulses 101 gesetzt, wenn der Ausgang des ODER-Gliedes 141a wahr ist; es wird durch das Taktsignal 101 zurückgesetzt, wenn das ODER-Glied 141b wahr ist. 1st keiner der Eingänge wahr, so bleibt die
!5 Verriegelungsschaltung in ihrem vorherigen Zustand: sind beide wahr, schaltet es in den umgekehrten Zustand um. Einige PLAs weisen Verriegelungsschaltungen auf, um beliebige Funktionen einzustellen, beispielsweise »Polaritäts-bewahren« oder JK-Flipflops.
Die bisherige Beschreibung ging von einer einfachen Form einer PLA 100 aus. Die Erfindung ist jedoch auch mit einer anderen bevorzugten Form der Eingangsdecodierer 112 kompatibel, bei der ein Paar von Eingangssignalen in Gruppen von vier Signalen umgesetzt wird.
Diese Form der Decodierer ist im US-Patent 37 61 902 beschrieben und hat in dem oben erwähnten US-Patent 39 36 812 Anwendung gefunden.
Betrachtet man beispielshalber die mit A und B bezeichneten Eingänge 111, so erzeugt ein Decodierer 112 Signale, die vier Termen auf vier verschiedenen Ausgängen entsprechen Tabelle I zeigt diese Terme sowie die Wirkung einer Verbindung (*) oder keiner Verbindung (-) dieser Leitungen mit den Eingängen einer der UND-Glieder 121.
A B
Ausgang
A B
Ausgang
AB
Ausgang A B
Ausgang
Erzeugte Funktion
immer wahr
A ■*■ B
A+B
~Ä + B
A=B
AB
~A+~B
Diese Decodierer vom Typ »bit partitioning« beeinflussen die Wirkungsweise der vorliegenden ~B
* A~B "A
* AB ~Ä-~B
* immer falsch
der Suchmatrix 120 besteht aus einem negativen-UND-Glied mit parallel liegenden Feldeffekttransistoren
Erfindung nicht, sie erhöhen jedoch deren Brauchbar- 65 (FET) 123', deren Gates mit den Leitungen 113 in Fi g. 1
keit. verbunden werden können. FET 124' stellt eine Quelle
Fig. 2 zeigt eine Art wie die Invertermatrix 130 in konstanten Stroms dar, die mit der Batteriespannung
der PLA 100 realisiert werden kann. Jedes Glied 121' + !'verbunden ist. Der Ausgang 125' der Schaltung 121'
liegt dann und nur dann hoch, wenn jedes Eingangssignal seinen niederen Pegel aufweist. (Ein negatives-UND-Glied kann natürlich auch als positives-NOR-Glied aufgefaßt werden, d. h., das Ausgangssignal weist den niederen Pegel auf, wenn eines oder mehrere der Eingangssignale hoch liegen.)
Der Inverter 131' umfaßt einen FET 136', dessen Gate mit dem Ausgang 125' verbunden ist. Seine Senke ist mit der Batteriespannung + V über den Ladetransistor 137' verbunden. Der invertierende Ausgang 138' wird vom ι ο Verbindungspunkt der FETs 136' und 137' abgenommen. Die wählbare Verbindung 132 kann dann entweder an die Endklemme 125' oder an die Klemme 138' gelegt werden, um entweder ein wahres oder ein invertiertes (komplementäres) Ausgangssignal an die Leitung 133 zu geben.
F i g. 3 zeigt eine andere Möglichkeit, die Erfindung in eine sonst bekannte PLA einzubauen. Die Torschaltung 121" der Suchmatrix 120 ist ebenfalls ein negatives-UN D-Glied und besitzt bipolare Eingangstransistoren 123", deren Basen selektiv mit den Leitungen 113 in F i g. 1 verbunden werden können. Solange die Transistoren 123" ausgeschaltet sind, bleibt der linke Transistor der Differentialstufe 124" ausgeschaltet und seine zugehörige Stromquelle zieht die Ausgangsleitung 125" hoch. Wird jedoch einer der Transistoren 123" angesetzt, so wird die Leitung 125" potentialmäßig nach unten gezogen. Die gemeinsame Emitterstromsenke zwingt dann den anderen Transistor zum Abschalten, da es sich um einen ungesättigten digitalen logischen Schaltkreis handelt. Der Inverter 131" der Invertermatrix 130 wird dann dadurch gebildet, daß eine externe Leitung 136" nach außen geführt wird, wo sie selektiv mit der Verbindung 132 zur Ausgangsleitung 133 verbunden werden kann. Auf diese Weise kann die für die invertermatrix 130 erforderliche Inversion ohne zusätzliche aktive Elemente und mit einem nur geringen Zuwachs an Halbleiterfläche erzeugt werden. Die Signale auf den Leitungen 133a und 1336 in F i g. 1 stehen auch bei einer konventionellen PLA zur Verfügung, da die Verbindungen 135a und 135Z? beide hergestellt wurden, um die entsprechenden »wahren« Ausgangssignale der komplementären Matrix 130 auszuwählen. Aus Tabelle I ist ersichtlich, daß das Signal auf 133a die Funktion (A + B) (C+ D) ■ (Ej-F) darstellt, während die Leitung 133b immer dann ein wahres Signal anzeigt, wenn A wahr ist, und zwar unabhängig von den Zuständen aller anderen Eingangsklemmen 111. (In Fig. 1 ist die oberste der Leitungen 113 dem Kombinationssignal Ά · Fzugeordnet usw.) Leitung 133c führt ein Signal, das der in der Einleitung beschriebenen Situation entspricht, wenn es nämlich gewünscht ist, die Abwesenheit einer bestimmten Eingangskombination und nicht deren Vorhandensein festzustellen. Die Verbindungen zwischen den Leitungen 113 und dem UND-Glied 121c erzeugen ein Signal, wenn die Kombination 110010 der Eingangssignale A bis F anliegt (siehe Tabelle). Die Verbindungsleitung 132c wählt aber das Inverse dieses Signals aus, so daß die Leitung 133c zu allen Zeiten das wahre Signal führt, außer wenn diese Kombination erscheint. Wenn ein Ausgangssignal gewünscht ist, das gerade diese Bedingung alleine anzeigt, so genügt hierzu ein einfacher Inverter an der Ausgangsklemme 144'. Es sind PLAs bekannt, die programmierbare Inverter an ihren Ausgängen aufweisen und es so erlauben, für jedes Bit die Wahl zu treffen, ob der aktive Ausgang hochpegelig oder niedrigpegelig sein soll. Der Vorteil der Erfindung zeigt sich weiterhin, wenn andere Bedingungen berücksichtigt werden sollen. In F i g. 1 ist beispielsweise die Leitung 133c mit der Leitung 133a in der ODER-Matrix 130 verbunden, so daß das Ausgangsbit X auf der Leitung 141 e immer dann den wahren Wert anzeigt, wenn die Eingänge A bis F nicht den Wert 110010 aufweisen oder wenn mindestens ein Signal jedes Paars AB, CD und EFden wahren Wert aufweist. Die Spezifikation dieses Ausgangsbits erfordert in der PLA 100 nur zwei Produktterme.
Die Leitungen 121c/ und 121 e stellen eine weitere Situation dar. Da die Verbindung 132c/ das nicht invertierte Ausgangssignal der Invertermatrix 130 auswählt, zeigt ein Signal auf dieser Leitung, daß eine der Kombinationen WQXXXAa externen Eingangssignale A bis F anliegt. Die Verbindung i32e ist für die invertierte Position hergestellt, so daß das Signal darauf immer dann wahr ist, wenn die Eingangssignale £bis H nicht alle wahr sind. In diesem Falle ist die Leitung 133e von der Invertermatrix 130 entkoppelt, dafür aber eine Verbindung 134c/ zwischen die Verbindungen 132e und 135c/ gelegt. Die Leitung 133c/ ist somit für eine bestimmte Gruppe von Eingangssignalen wahr, es sei denn, eine weitere definierte Gruppe ist ebenfalls vorhanden. Die Verbindungen 134 sind nicht auf die Benutzung mit den invertierten Ausgängen der Matrixe 130 beschränkt, wie es in 134/ dargestellt ist. Außerdem können die Verbindungen 134 Zwischenverbindungen mit jeder beliebigen Anzahl von benachbarten Spalten in der Invertermatrix 130 herstellen, sie sind also nicht auf nur zwei Spalten, wie im Fall von 134c/ und 134/, beschränkt
Hierzu 2 Blatt Zeichnungen

Claims (7)

Patentansprüche:
1. Programmierbare logische Anordnung (PLA), bei der auf einem Halbleiterplättchen eine Lesematrix mit ODER-Gliedern einer Suchmatrix zur UND-Verknüpfung der Eingangssignale nachgeschaltet ist, dadurch gekennzeichnet, daß zwischen beiden Matrizen (120, 140) eine Invertermatrix (130, F i g. 1) angeordnet ist, die als Eingänge ι ο die Ausgangssignale der Suchmatrix empfängt und deren Ausgänge (132) in wahrer oder invertierter Form wahlweise einer oder mehreren Eingangsleitungen der Lesematrix (140) zugeführt werden.
2. PLA nach Anspruch 1, dadurch gekennzeichnet, '5 daß sie aus Feldeffekttransistoren besteht ui;d daß an die Spaltenleitung der Suchmatrix ein invertierender Feldeffekttransistor (136', Fig.2) angeschlossen ist, der über einen Lastwiderstand (137') an die Versorgungsspannung angeschlossen ist.
3. PLA nach Anspruch 2, dadurch gekennzeichnet, daß die Spaltenleitung (121) aus einem Leiterpaar besteht (Fig.2), an das mit den Eingangssignalen beaufschlagte Transistoren (123') angeschlossen sind und das mit seinem einen Ausgang (125') das wahre Ausgangssignal liefert, während der andere Ausgang an den Invertertransistor angeschlossen ist.
4. PLA nach Anspruch 1, dadurch gekennzeichnet, daß sie aus bipolaren Transistoren besteht und daß an die Spaltenleitung der Suchmatrix eine aus zwei parallel geschalteten bipolaren Transistoren mit zusammengeführtem Emitter bestehende Inverterschaltung angeschlossen ist, an der das wahre (125", F i g. 3) und das invertierte Signal (136") wahlweise abgegriffen werden.
5. PLA nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die wahlweise Verbindung der Ausgangsleitungen der Invertermatrix mit den Eingängen der Lesematrix durch ein Metallisierungsmuster bei der Herstellung erfolgt.
6. PLA nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß den Eingängen der Suchmatrix Decodierer (112, F i g. 1) vorgeschaltet sind.
7. PLA nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß einige der Ausgänge der ^ Lesematrix zu ausgewählten Eingängen der Suchmatrix zurückgeführt sind.
DE2723821A 1976-06-01 1977-05-26 Programmierbare logische Anordnung Expired DE2723821C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/691,807 US4032894A (en) 1976-06-01 1976-06-01 Logic array with enhanced flexibility

Publications (2)

Publication Number Publication Date
DE2723821A1 DE2723821A1 (de) 1977-12-15
DE2723821C2 true DE2723821C2 (de) 1983-12-08

Family

ID=24778061

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2723821A Expired DE2723821C2 (de) 1976-06-01 1977-05-26 Programmierbare logische Anordnung

Country Status (5)

Country Link
US (1) US4032894A (de)
JP (1) JPS52147038A (de)
DE (1) DE2723821C2 (de)
FR (1) FR2354002A1 (de)
GB (1) GB1516817A (de)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4311926A (en) * 1977-08-11 1982-01-19 Gte Laboratories Incorporated Emitter coupled logic programmable logic arrays
US4123669A (en) * 1977-09-08 1978-10-31 International Business Machines Corporation Logical OR circuit for programmed logic arrays
US4240094A (en) * 1978-03-20 1980-12-16 Harris Corporation Laser-configured logic array
DE2812241C2 (de) * 1978-03-21 1984-06-28 Robert Bosch Gmbh, 7000 Stuttgart Einrichtung zur Dateneingabe und Datenausgabe in bzw. aus einem Mikroprozessor
JPS54153563A (en) * 1978-05-24 1979-12-03 Nec Corp Logical array circuit
US4295064A (en) * 1978-06-30 1981-10-13 International Business Machines Corporation Logic and array logic driving circuits
US4415818A (en) * 1979-01-16 1983-11-15 Nippon Telegraph & Telephone Corp. Programmable sequential logic circuit devices
JPS562738A (en) * 1979-06-20 1981-01-13 Nec Corp Pla logical operation circuit
JPS57211832A (en) * 1981-06-24 1982-12-25 Hitachi Ltd Programmable logic array
US4429238A (en) * 1981-08-14 1984-01-31 Bell Telephone Laboratories, Incorporated Structured logic array
DE3215671C2 (de) * 1982-04-27 1984-05-03 Siemens AG, 1000 Berlin und 8000 München Programmierbare Logikanordnung
US4506341A (en) * 1982-06-10 1985-03-19 International Business Machines Corporation Interlaced programmable logic array having shared elements
US4717912A (en) * 1982-10-07 1988-01-05 Advanced Micro Devices, Inc. Apparatus for producing any one of a plurality of signals at a single output
US4661922A (en) * 1982-12-08 1987-04-28 American Telephone And Telegraph Company Programmed logic array with two-level control timing
US4488230A (en) * 1982-12-08 1984-12-11 At&T Bell Laboratories Programmed logic array with external signals introduced between its AND plane and its OR plane
US4488229A (en) * 1982-12-08 1984-12-11 At&T Bell Laboratories PLA-Based finite state machine with two-level control timing and same-cycle decision-making capability
US4547959A (en) * 1983-02-22 1985-10-22 General Motors Corporation Uses for buried contacts in integrated circuits
US4633572A (en) * 1983-02-22 1987-01-06 General Motors Corporation Programming power paths in an IC by combined depletion and enhancement implants
EP0165995A1 (de) * 1983-12-29 1986-01-02 Semi Processes Inc. Programmierbare logische netzschaltung
US4554640A (en) * 1984-01-30 1985-11-19 Monolithic Memories, Inc. Programmable array logic circuit with shared product terms
US4870302A (en) * 1984-03-12 1989-09-26 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
USRE34363E (en) * 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4727493A (en) * 1984-05-04 1988-02-23 Integrated Logic Systems, Inc. Integrated circuit architecture and fabrication method therefor
US4642487A (en) * 1984-09-26 1987-02-10 Xilinx, Inc. Special interconnect for configurable logic array
GB2202356B (en) * 1985-02-27 1989-10-11 Xilinx Inc Configurable combinational logic circuit
US4675556A (en) * 1986-06-09 1987-06-23 Intel Corporation Binomially-encoded finite state machine
JP2554475B2 (ja) * 1986-09-11 1996-11-13 株式会社リコー プログラマブル・ロジツク・デバイス
US5367208A (en) * 1986-09-19 1994-11-22 Actel Corporation Reconfigurable programmable interconnect architecture
US4983959A (en) * 1986-10-01 1991-01-08 Texas Instruments Incorporated Logic output macrocell
US4761570A (en) * 1987-02-12 1988-08-02 Harris Corporation Programmable logic device with programmable signal inhibition and inversion means
JPH0194722A (ja) * 1987-10-07 1989-04-13 Sharp Corp イオン注入によるプログラム可能論理素子
NL8902820A (nl) * 1989-11-15 1991-06-03 Philips Nv Geintegreerde halfgeleiderschakeling van het master slice type.
US5028821A (en) * 1990-03-01 1991-07-02 Plus Logic, Inc. Programmable logic device with programmable inverters at input/output pads
US5198705A (en) * 1990-05-11 1993-03-30 Actel Corporation Logic module with configurable combinational and sequential blocks
US5198809A (en) * 1991-02-22 1993-03-30 James L. Day Co. Inc. Hard wired programmable controller especially for heating ventilating and air conditioning (HVAC systems)
US5189320A (en) * 1991-09-23 1993-02-23 Atmel Corporation Programmable logic device with multiple shared logic arrays
US5250859A (en) * 1991-09-27 1993-10-05 Kaplinsky Cecil H Low power multifunction logic array
US5841295A (en) * 1996-02-09 1998-11-24 Hewlett-Packard Company Hybrid programmable logic device
US5936426A (en) * 1997-02-03 1999-08-10 Actel Corporation Logic function module for field programmable array
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 (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3566153A (en) * 1969-04-30 1971-02-23 Texas Instruments Inc Programmable sequential logic
US3818252A (en) * 1971-12-20 1974-06-18 Hitachi Ltd Universal logical integrated circuit
JPS4888837A (de) * 1972-02-23 1973-11-21
US3936812A (en) * 1974-12-30 1976-02-03 Ibm Corporation Segmented parallel rail paths for input/output signals

Also Published As

Publication number Publication date
GB1516817A (en) 1978-07-05
FR2354002B1 (de) 1979-03-09
US4032894A (en) 1977-06-28
FR2354002A1 (fr) 1977-12-30
JPS52147038A (en) 1977-12-07
DE2723821A1 (de) 1977-12-15

Similar Documents

Publication Publication Date Title
DE2723821C2 (de) Programmierbare logische Anordnung
DE3645224C2 (de)
DE4238063C2 (de) Integrierte Speicherzellenschaltung mit Set-/Reset-Funktion
DE4326134B4 (de) Eingangswechseldetektorschaltung
DE2458848C2 (de) Speicheranordnung
DE19519794A1 (de) Halteschaltung
DE4330778A1 (de) Speicherzellenschaltung
DE3721931A1 (de) Ein-ausgabesteuerschaltung und verfahren zum steuern des logischen zustands des ausgangs derselben
DE3635761A1 (de) Programmierbares logikfeld mit dynamischer cmos-logik
DE2734361A1 (de) Adressenwaehlschaltung fuer halbleiterspeichereinrichtungen
DE102019133640B4 (de) Bitzelle, die eine bit-schreib-maskierungsfunktion unterstützt
DE2646653C3 (de)
EP0224887B1 (de) Gate Array Anordnung in CMOS-Technik
DE60003503T2 (de) Halteschaltung in Dominologic mit Rückstellzeit
DE4406459A1 (de) Integrierte Halbleiterschaltungsvorrichtung mit Speicherzellenanordnung
DE3104880A1 (de) "speicher fuer wahlfreien zugriff"
DE1966852A1 (de) Speichereinheit mit einer kapazitiven speichereinrichtung
DE2900587C3 (de) Decodierschaltung
DE2022256C2 (de) Festwertspeicher- und Decoderanordnung
DE2640731A1 (de) Dynamische decoderstufe
DE2452319A1 (de) Decodiererschaltung
DE19743347C2 (de) RS-Flip-Flop mit Enable-Eingängen
EP0066050B1 (de) Programmierbare logische hochintegrierte Schaltungsanordnung
DE2824862C2 (de)
DE4211950A1 (de) Halbleiter-speicheranordnung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8126 Change of the secondary classification

Ipc: ENTFAELLT

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee