DE2825190C3 - Programmierbare logische Anordnung - Google Patents

Programmierbare logische Anordnung

Info

Publication number
DE2825190C3
DE2825190C3 DE2825190A DE2825190A DE2825190C3 DE 2825190 C3 DE2825190 C3 DE 2825190C3 DE 2825190 A DE2825190 A DE 2825190A DE 2825190 A DE2825190 A DE 2825190A DE 2825190 C3 DE2825190 C3 DE 2825190C3
Authority
DE
Germany
Prior art keywords
matrix
mem
programmable logic
lines
register
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
DE2825190A
Other languages
English (en)
Other versions
DE2825190A1 (de
DE2825190B2 (de
Inventor
Maurice Vence Cukier (Frankreich)
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 DE2825190A1 publication Critical patent/DE2825190A1/de
Publication of DE2825190B2 publication Critical patent/DE2825190B2/de
Application granted granted Critical
Publication of DE2825190C3 publication Critical patent/DE2825190C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G04HOROLOGY
    • G04GELECTRONIC TIME-PIECES
    • G04G99/00Subject matter not provided for in other groups of this subclass
    • G04G99/006Electronic time-pieces using a microcomputer, e.g. for multi-function clocks
    • 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/17712Logic 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 one of the matrices at least being reprogrammable

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)

Description

Die Erfindung betrifft eine programmierbare logische Anordnung (PLA) nach dem Oberbegriff des Anspruchs 1.
Komplexe logische Funktionen restulieren bekanntlich aus der Kombination von Grundfunktionen, die insbesondere die Funktionen UND und ODER benutzen. Vor diesem Hintergrund und unter Ausnutzung der LSI-Schaltungstechnik, wurden neue Schaltungstypen auf den Merkt gebracht, die sogenannten PLA's, die im wesentlichen aus Matrizen von Elementen bestehen, die die Funktionen UND und ODER erfüllen. Die einfachste derartige Schaltung besteht aus einer UND-Matrix, die aus UND-Gliedern gebildet ist und einer ODER-Matrix aus ODER-Gliedern. Die Eingänge der zu verarbeitenden Daten kommen im allgemeinen auf die UND-Matrix. Diese nimmt eine UND-Verknüpfung der Eingabedaten und deren Umkehrungen vor. Die aus dieser ersten Matrix resultierenden Terme werden dann in die ODER-Matrix eingeführt, wo sie logischen ODER-Operationen unterzogen werden. In manchen Anwendun-
25
30
50
55
60 gen erhält man dann das gewünschte Ergebnis am Ausgang dieser zweiten Matrix, in anderen Anwendungen sind rückläufige OperatioEen erforderlich. Mit anderen Worten, die am Ausgang der ODER-Matrix erscheinende Information muß in den Eingang der UND-Matrix zurückgekoppelt werden. Das Endergebnis erhält man nach Ausführung eines sequentiellen Prozesses, in dem einige Schritte, die während der Ausführung des unmittelbar vorhergehenden Schrittes erzielten Ergebnisse betreffen. Um diese Funktionen zu erfüllen, ist am Ausgang der ODER-Matrix ein Pufferregister vorgesehen und die Ausgabe dieses Registers ist mit dem Eingang der UND-Matrix verbunden. Wenn die Operationen komplexer sind, müssen die Ergebnisse für die einzelnen Schritte zwischengespeichert werden, um sie zu anderen gegebenen Zeitpunkten wieder in die Schaltung einzuführen. Somit sind mehrere Pufferregister erforderlich und die UND- und ODER-Matrizen müssen vergrößert werden, wenn konventionelle Techniken angewandt werden.
Zum besseren Verständnis der bekannten programmierbaren logischen Schaltungen, wird auf das Buch von William N. Carr und Jack P. Mize mit dem Titel »MOS/LSI Design an Application« und insbesondere auf Kapitel 8 verwiesen. Fig.8-4 zeigt dort die Grundelemente einer solchen Doppelmatrixanordnung, in der eine Matrix aus UND-Gliedern und die andere aus CDER-Gliedern besteht, und worin eine Rückkopplungsschleife über ein Pufferregister führt.
Der Erfindung liegt die Aufgabe zugrunde, eine bekannte programmierbare logische Anordnung zur Ausführung komplexer logischer Funktionen so zu verbessern, daß zur Ausführung derselben Funktionen weniger und kleinere UND- und ODER-Matrizen erforderlich sind als bei dem Stand der Technik. Die Lösund dieser Aufgabe besteht im Kennzeichen des Anspruchs 1.
Weitere Merkmale ergeben sich aus den Ansprüchen 2 bis 5.
Die vorliegende Erfindung kennt die aufgezeigten Nachteile nicht und ermöglicht die Verwendung von UND-Matrizen und ODER-Matrizen für komplexe Funktionen und diese Matrizen sind im wesentlichen in der Größe mit denen identisch, die für einfache Funktionen benötigt werden.
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und werden anschließend näher beschrieben. Es zeigen
Fig. 1 und 2 in Blockdiagrammen herkömmliche programmierbare logische Schaltungen,
Fig.3 in einem Blockdiagramm die vorliegende Erfindung,
Fig.4 in einem Blockdiagramm eine zur Illustration der Erfindung ausgewählte Anwendung,
F i g. 5 ein Ausführungsbeispiel des in F i g. 4 gezeigten Gerätes bei Anwendung der bisherigen Technik und
F i g. 6 und 7 Ausführungsbeispiele des in F i g. 4 gezeigten Gerätes.
Fig. 1 zeigt die wesentlichen Elemente einer programmierbaren logischen Schaltungsanordnung mit Rückkopplung, nämlich eine UND-Matrix AM aus UND-Gliedern, die die logischen Eingangssignale am Eingang E empfängt. Die Ausgaben der Matrix AM werden in die Matrix OM eingespeist, die aus ODER-Gliedern besteht. Die die gewünschten Ergebnisse darstellenden digitalen Daten werden am Ausgang der OM-Matrix entweder direkt oder über ein paralleles
Ein- und Ausleitungsregister Rg abgenommen. Dieses Register dient ganz oder teilweise zum Speichern der Daten, die über eine Rückkopplungsschleife wieder in die Matrix AM eingeleitet werden solisa Taktsignale (H) und in bestimmten Fällen auch Riickstellsignale (R), werden außerdem zum Steuern der Operationen geliefert
Mit diesem Schema kann man ein Gerät implementieren, das die sequentiellen und rückläufigen Operationen ausführen soll, durch die der im Register Rg wänrend eines Operationsschrittes gespeicherte Inhalt im folgenden Schritt benutzt wird.
Für komplexere logische Funktionen braucht man mehrere Pufferregister, so daß die Daten in der Rückkopplungs>.chleife während der Operation modifiziert v/erden können. Wenn man z.B. das von der OM-Matrix während eines vorhergehenden und vorgegebenen Taktzyklus gelieferte Ergebnis unter bestimmten logischen Bedingungen in die Rückk^pplungsschleife einführen will, so braucht man im Vergleich zu F i g. 1 mehrere Register, d.h. so viele Register Rg, wie im sequentiellen Operationsprozeß für die Ausführung der gewünschten komplexen logischen Funktion verschiedene Datenelemente gespeichert werden müssen. Die Anzahl der UND-Matrizen und ODER-Matrizen muß jedoch multipliziert werden, d. h. sie müssen beträchtlich größer werden. Die Verzögerung der AM-Matrizen und OM-Matrizen ist annähernd gleich dem Quadrat der Register, wie es in F i g. 2 gezeigt ist.
F i g. 2 zeigt eine programmierbare logische Schaltungsanordnung herkömmlicher Technik mit zwei Pufferregistern. Hier wurde die UND-Matrix und die ODER-Matrix vergrößert Der Eingang E empfängt Daten- und/oder Steuerinformation, die die beiden UND-Matrizen AMl und AM 2 speist. Die Ausgangssignale der Matrizen AMi und AM2 werden auf die Eingänge der ODER-Matrizen OMi bzw. OM 2 gegeben, die eine Rückkopplungsschleife über die Pufferregister RgX oder Rg2 speisen. Die Ausgänge 5 der Schaltung werden von diesen Registern abgenommen. Die Matrizen AMX und AM 2 können zu einer Matrix zusammengekoppelt werden, die dann ungefähr viermal so groß wäre, wie jede einzelne Matrix. Dasselbe gilt für die Matritzen OMl und OM 2. Nach Darstellung in Fig.2 enthalten die Matrizen AMX, AM2, OMX, OM2 unbenutzte Zonen, die trotzdem existieren. Dadurch erklärt sich der Größenzuwachs dieser Matrizrn bezogen auf die Anzahl der Register. Die Existenz dieser Zonen erklärt sich aus der Beschreibung der F i g. 5.
Die Zunahme der Anzahl von Schaltungen hat Rückwirkungen nicht auf den Preis des so implementierten Gerätes, sondern auch auf das entsprechend steigende Volumen und das im wesentlichen, weil die Eingangs/Ausgangsstifte und die Verbindungsleitungen zwischen den Elementen der benutzten integrierten Schaltungen zunehmen.
Zur Überwidung dieser Nachteile wird daher das in F i g. 3 gezeigte Gerät vorgeschlagen. Diese Figur zeigt die Matrizen AM und OM, die mit den in Fig. 1 gezeigten ähnlich sind. Hie; \ jedoch eine OM-Matrix mit einer Adreßzone AU vorgesehen, die eine Ausgabe mit der sogenannten Adreßinformation liefert. Mit dieser Ausgabe werden die verschiedenen Wortpositionen (die im gewählten Beispiel in Zeilen angeordnet sind), einer Randomspeichermatrix MEM über eine Decodierschaltung DECODE MEM angesteuert. Diese programmierbare logische Schaltung hat daher so viele parallelgeschaltete Register, ähnlich dem Register Rg, wie es Zeilen im Speicher MEM gibt Die Anzahl der Zeilen ist eine Funktion der Anzahl der Zwischenspeicheroperationen für die Ausführung der komplexen
logischen Funktion, für die die programmierbare logische Schaltung (PLA) konzipiert wurde. Der Eingang E des Elementes empfängt die Datenbits und/oder die Statussteuerbits, die weiter definiert werden.
Die Darstellung in Fig.3 ist natürlich stark schematisiert und die erwähnte komplexe logische Funktion kann tatsächlich aus der Kombination mehrerer einfacher oder komplexer Funktionen resultieren, wie noch an einem Beispiel gezeigt wird.
Die Erfindung wird anschließend anhand eines Digitalzeitgebers erklärt Dieser Zeitgeber besteht aus einem Modulo-16-Binärzähler (C), der durch ein Signal (H) getaktet wird und dessen Inhalt man auf Anforderung in einem Register Z2 anzeigen kann. Nach Darstellung in Fig.4 wird der Betriebszustand des Zeitgebers durch eine Decodierschaltung DEC gesteuert, deren Eingang zwei Statussteuerbits STX und ST2 empfängt Die Kombination dieser beiden Bits definiert die an den Zeitgeber gegebene Reihenfolge gemäß der nachstehenden Tabelle 1.
Tabelle I
STX 5
30
0 0
35 0 1
1 0
1 1
Operation
Taktgeber betätigen (Zähler) (Z 1)
Übertragung des Zählerinhaltes
nach Z 2
Rückführung des Inhaltes von Zl Rückführung des Inhaltes von Zl
Da der Zähler im Modulo-16-Betrieb läuft, muß er von 0 bis 15 in Dezimalform zählen und daher vier Binärstufen haben. Wenn er als Taktgeber arbeitet, bereitet jeder Operationsschritt den folgenden Schritt vor. Wenn in einem Operationszyklus der Inhalt einer der Stufen mit Q bezeichnet wird, kann der Inhalt O+1 eben dieser Stufe während des folgenden Zyklus daher leicht abgeleitet werden. Die Relationen zwischen Q und O+' sind in der folgenden Tabelle II gezeigt.
Tabelle II Qi Qi Q3 Qo1 Qt1 Q2 +1 Q3 +1
50 Qo 0 0 0 0 0 0 1
0 0 0 1 0 0 1 0
0 0 1 0 0 0 1 1
55 0 0 1 1 0 1 0 0
0 1 0 0 0 1 0 1
0 1 0 1 0 1 1 0
0 1 1 0 0 1 1 1
0 1 1 1 1 0 0 0
60 0 0 0 0 1 0 0 1
1 0 0 1 1 0 1 0
1 0 1 0 1 0 1 1
1 0 1 1 1 1 0 0
1 1 0 0 1 1 0 1
65 1 1 0 1 1 1 1 0
1 1 1 0 1 1 1 1
1 1 1 1 0 0 0 0
1
5 6
Daraus resultieren die folgenden logischen Beziehungen:
Qo+1 = Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Q0 Q1 Q2 Q3 + Q0 Q1 Q2 Q3 + Q0 ß, Q2 Q3 + Q0 Q1 Q2 Q3
+ Qo Qi Q2 Q3 + Qo Q1 Q2 Q3
Qi+1 = Q0 Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Q1Q2 Q3 + Q0 Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Q2 Q3
Q2 +1 = Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Q0 Qi Q2 Q3 + Q0 Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Qi Q3
Q3 +1 = Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Q. Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Q2 Q3 + Qo Qi Q2 Q3 ·
Bei der Vereinfachung der obigen Ausdrücke mit Hilfe der sogenannten Karnaugh-Diagramme, erhält man:
Tabelle III
Qo+1 = Q0Q1Q2Q3 + QoQi + QoQi + QoQ3 Qi+1 = Qi Q3 + Q1 Q2 + Qi Q2 Q3
Q2 +1 = QiQ3 + Q2 Q3
Q3 +1 = Q3
25
3o
35
Zeile
1
2
3
4
5
6
7
8
9
10
Funktion
Q^
Qix-OTi
Qn-Qn_ Qu-Qn^
ßji/ßsi
QorQii
Qoi-Qii
Q3,
Qn -Qn
Goi-
F i g. 5 zeigt schematisch den in bisheriger PLA-Technik implementierten Zeitgeber. Dieses Gerät besteht aus einer UND-Matrix mit 20 Spalten, einer achtspaltigen ODER-Matrix, einem achtstelligen Register Rg (vier Positionen für das Register Z1, das normalerweise zur Zählerrückkopplungsschleife gehört und vier Positionen für das zusätzliche Register Z 2) und zehn
Inverterschaltungen h bis Z10. Vier Spalten in der Matrix g p, g
/4M sind für die Decodierschaltung DEC reserviert, die 45 genauso arbeitet, liefert Q1V . Die dritte Spalte arbeitet die logischen Funktionen STij_ST2 = 1 für die oberen auf den Leitungen 2 und 3 und liefert Q2Ij1 . Die vierte zehn Zeilen der Anordnung, STi ■ ST2 = 1 für die zehn Spalte schließlich, die auf der Leitung 1 arbeitet, liefert folgenden Zeilen (Zeilen 11 bis 20) und_S:Ti - ST2 = 1 V
für die Zeilen 21 bis 24 sowie ST\ · ST2 = 1 für die Zeilen 25 bis 28 übernimmt
Die anderen sechzehn Spalten in der Matrix AMund das Register Rg werden zum Aufbau des Registers Z2 und des in F i g. 3 gezeigten Zählers Z(einschließlich des Registers Zl) benutzt Die Ausgänge des Registers Zl
Die linke Spalte in der Matrix OM erfüllt die ODER-Funklion auf den Leitungen 7, 8, 9 und 10, die von der Matrix AM kommt. Daher liefert sie QoV . Die folgende Spalte, die auf den Leitungen 4, 5 und 6 QV
nur Q3V
Mit den obenerwähnten Leitungen 1 bis 10, die aktive Leitungen sind, wenn die Eingänge des Decodierers ■ DEC beide 0 sind, arbeitet die Schaltungsanordnung nach den Prinzipien eines Taktgebers mit einer Rückkopplung über Z1, wie es in Tabelle I gezeigt ist. i d i A
Die auf den Leitungen 11 bis 20 in der Matrix AM wurden bezeichnet mit Qm, Qu, Qi\ und Q31 und die 55 ausgeführten logischen Funktionen, die gewählt sind, Ausgänge des Registers Z2 wurden bezeichnet mit O02, wenn ST\ = 0 und ST2 = 1 ist, sind mit denen auf den Ci2, Qu und Q32. In entsprechender Schreibweise sind Leitungen 1 bis 10 identisch. Die vier rechten Spalten in die Ausgänge der Matrix OMbezeichnet mit der Matrix OM erfüllen außerdem dieselben Funktionen
auf den Leitungen 11 bis 20, wie die vier linken Spalten in der Matrix OM, auf den Leitungen 1 bis 10. Auch hieraus folgt, daß die Anordnung taktbetätigt ist, d. h. sie schaltet den Inhalt von Zl um eine Einheit weiter, das Ergebnis wird aber in Z2 gespeichert
Die zehn oberen Zeilen in der Matrix AM, die aktiv Die Figur zeigt deutlich, daß der Inhalt in Z2 durch
geschaltet werden, wenn STi = 0 und ST2 = 0 ist, 65 die Schaltanordnung unverändert zurückläuft, wenn liefern entsprechende logische Funktionen. Beginnend STi — ST2 = 1 ist Wenn aber 5T1 = 1 und ST2 = 0 ist mit der obersten Zeile sind diese Funktionen in der wird der Inhalt in Zl unverändert zurücklaufen nachstehenden Tabelle III aufgeführt gelassen.
QoV, On'. Q2V, Q3V, Qo2 1' Qi2 1, Q22 1, Q32 1
Bei der Anwendung bekannter Techniken zur Implementierung des zur Illustration der Erfindung gewählten Zeitgebers muß also ein relativ umfangreiche programmierbare Logik benutzt werden. Die Schaltungen werden wesentlich einfacher, wenn man die erfindungsgemäßen Techniken anwendet, wie sie in Fig.6 gezeigt sind. In dieser Figur bestehen die Matrizen AMund OMaus 15 Zeilen, von denen die erste nur 12 Spalten und die zweite fünf Spalten hat. Der Speicher MEM besteht aus zwei parallel geschalteten Registern Zl und Z 2. Der Decodierer DEC MEM besteht aus einem Inverter Ia und nur einer Adreßleitung AD. Die zehn oberen Zeilen der Matrixanordnung AM und OM erfüllen dieselben logischen Funktionen, wie die Zeilen 1 bis 10 in F i g. 5, wenn man den Decodierteil DEC ausliest (der vier Spalten in der UND-Matrix benutzt). Diese Funktionen ermöglichen den Betrieb des Gerätes als Zähler, wenn der Statussteuereingang STi auf Null zurückgestellt ist (ST, = 0), wobei der logische Pegel am Eingang S7"2 keine Rolle spielt. Wenn aber Sr2 = 0 ist, wird auch die Adreßleitung AD auf Null zurückgestellt. Der Eingang des Inverters Ia im Decodierer DEC MEM wird auf Eins gesetzt. Der adressierte Speicherteil MEM ist daher Zi. Die Anordnung ist taktbetätigt, wobei das Register Zl in der Rückkopplungsschleife benutzt wird. Wenn ST2 = 1 ist, adressiert DEC MEM das Register Z2. In diesem Fall wird der Inhalt im Register Zl, der durch die Gruppe umläuft und um eine Einheit erhöht wird, in das Register Zl übertragen. Wenn ST, = 1 ist, wird der Zähler gesperrt und die Daten, die in dem durch DEC MEM adressierten Register enthalten sind, durch die Anordnung umlaufen gelassen. Wie oben zu sehen ist, wird Z2 adressiert, wenn ST2 = 1 ist, um die Daten zu empfangen, die umlaufen, während bei ST2 = 0 stattdessen das Register Zl adressiert wird. In dieser Erfindung erfüllt also die in F i g. 6 gezeigte Anordnung dieselben logischen Funktionen, wie die in Fig.4 gezeigte Anordnung, während die erfindungsgemäße Anordnung wesentlich kleiner ist.
Im gewählten Beispiel empfängt der Eingang E der programmbaren Anordnung nur Statussteuereingänge. Das ist natürlich nicht bei allen Anwendungen nötig. Mit anderen Worten, der Eingang E kann Daten- und/oder Steuerbits empfangen.
Obwohl der Speicher MEM an einen herkömmlichen Randomspeicher angeglichen wurde, d. h. der Speicher wird durch bistabile Zellen mit einem Eingang gebildet, gilt die Erfindung auch für andere Speichertypen. Insbesondere können Verriegelungsspeicher mit zwei Eingängen (J-K oder Ä-S-Riegel oder auch Abfrage- und Halteschaltungen) oder Verriegelungsspeicher mit drei Eingängen (7?S!T-Riegel) gewählt werden. Daraus folgt, daß in einigen Fällen die ganze programmierbare Logikanordnung vereinfacht werden kann. Bei der Verwendung von Ä-S-Verriegelungen in dem zur Illustration gewählten Zeitgeber können z. B. Zl oder Z2 gelöscht werden, ohne daß die Daten durch die ganze Logikanordnung umlaufen gelassen werden.
F i g. 7 zeigt denselben Zeitgeber, hier besteht der Speicher M£Mjedoch aus /-.K-Verriegelungen mit zwei Eingängen, von denen der eine mit /und der andere mit /C bezeichnet ist.
Die Wahrheitstabelle einer J-K-Verriegelung läßt sich wie folgt zusammenfassen:
Eingänge
J K
Inhalt
Q Q'
Funktion
1 1 0 1
1 1 1 0
0 0 0 0
0 0 1 1
Verriegelung auf 1 gesetzt, unabhängig vom vorhergehenden Inhalt
Verriegelung bleibt auf 0, unabhängig vom früheren
Inhalt
Verriegelungsinhalt verändert
Verriegelungsinhalt unverändert
Die auf den Zeilen der von oben nach unten numerierten Matrix AM ausgeführten logischen Funktionen sind in der folgenden Tabelle IV zusammengefaßt
Zeile
Funktion
Tabelle IV Funktion
Zeile W,
1 ST, ■ Q3
2 ST, -Q2-Q3
3 ST,-Q,-Q2-Qi
4 ST, ■ Q3
5 ST1 · Q3
6 ST, ■ Q2
7
55
60 9
10
11
12
13
ST, Q2
ST, •Qi
ST, -Qi
ST, -Qo
ST, -Qo
ST2
Die Spalten in der Matrix OMliefern die Adresse AD und die Eingänge zu den J-K-Verriegelungen. Die auf
diesen Spalten ausgeführten logischen Funktionen, die von links nach rechts numeriert sind, sind in der folgenden Tabelle V zusammengefaßt
030 247/373
28 Ver- 25 190 • Q0 + STi ■ Qr Qi-Qi
Tabelle V riegelungs- ■Wo + ST)- Qi- Qi-Q,
Spalte eing. Funktion ■Qi+STr Q2- Q3
AD ■Qi+STr Q2- Q3
QV, J ■ Q2 + STi ■ Q3
1 QV, κ sr2 ■Q~i + ST)- Q3
2 QV, J STi -Q3+ 577
3 QV, κ STi • Q3 · STi
4 QV, J STi
5 QV, K STt
6 QV, J STi
7 QV, κ STi
8 STi
9 ST1
Die in F i g. 7 gezeigte Matrixanordnung besteht aus 13 Zeilen und 9 Spalten und ist daher nicht so wirksam wie die in F i g. 6 gezeigte Anordnung. Das hängt wesentlich von der gewählten Anwendung ab. In einigen anderen Fällen sind jedoch Elemente vorteilhafter, die
Speicherzellen mit mehreren Eingängen benutzen.
Die vorliegende Erfindung kann natürlich auch auf die sogenannte programmierte logische Anordnung angewandt werden, die mehr als eine UND-Matrix oder ODER-Matrix hat.
Hierzu 4 Blatt Zeichnungen

Claims (5)

Patentansprüche:
1. Programmierbare logische Anordnung (PLA), bestehend aus mindestens einer UND- und einer ODER-Matrix, wobei letztere mit der UND-Matrix zur Durchführung komplexer logischer Funktionen über Rückkopplungspfade verbunden ist, die als Zwischenspeicher Flip-Flops oder Register aufweisen, welche aufgrund vorgegebener Statussteuerbits angesteuert werden, dadurch gekennzeichnet, daß die Statussteuerbits (ST) über eine in der ODER-Matrix angeordnete Adreßleitung (AD) einer Decodierschaltung (DECODIERER MEM) zugeführt werden, die eine Adreßinformation für denjenigen Zwischenspeicher (Zu Z2) erzeugt, der aufgrund der auszuführenden Funktion anzusteuern ist
2. Programmierbare logische Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß so viele parallelgeschaltete Register (Rg) wie Zeilen im Speicher (MEM) angeordnet sind, wobei die Anzahl der Zeilen eine Funktion der Anzahl der Zwischenspeicheroperationen für die Ausführung der komplexen logischen Funktionen ist.
3. Programmierbare logische Anordnung nach den Ansprüchen 1 und 2, dadurch gekennzeichnet, daß die Decodierschaltung (DECODIERER MEM) ebenfalls aus logischen UND- und ODER-Matrizen besteht
4. Programmierbare logische Anordnung nach den Ansprüchen 1 und 2, dadurch gekennzeichnet, daß zur Realisierung eines Zeitgebers der Speicher (MEM) aus zwei parallelgeschalteten Registern (Z 1 und ZT) besteht, daß der Decodierer (DECODIE- RER MEM) aus einem Inverter (Q und einer Adreßleitung (AD) besteht, und daß durch den Statussteuereingang (STi) und den Dateneingang (E) bestimmte Adreßleitungen und damit bestimmte Speicherteile aktiviert werden. A0
5. Programmierbare logische Anordnung nach den Ansprüchen 3 und 4, dadurch gekennzeichnet, daß das in den Rückkopplungspfad eingefügte Register (Z 1) als getaktetes Register ausgeführt ist.
45
DE2825190A 1977-06-30 1978-06-08 Programmierbare logische Anordnung Expired DE2825190C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7720729A FR2396468A1 (fr) 1977-06-30 1977-06-30 Perfectionnement aux reseaux logiques programmables

Publications (3)

Publication Number Publication Date
DE2825190A1 DE2825190A1 (de) 1979-01-04
DE2825190B2 DE2825190B2 (de) 1980-03-20
DE2825190C3 true DE2825190C3 (de) 1980-11-20

Family

ID=9193033

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2825190A Expired DE2825190C3 (de) 1977-06-30 1978-06-08 Programmierbare logische Anordnung

Country Status (5)

Country Link
US (1) US4237542A (de)
JP (1) JPS5413240A (de)
DE (1) DE2825190C3 (de)
FR (1) FR2396468A1 (de)
GB (1) GB1558754A (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS558135A (en) * 1978-07-04 1980-01-21 Mamoru Tanaka Rewritable programable logic array
US4415818A (en) * 1979-01-16 1983-11-15 Nippon Telegraph & Telephone Corp. Programmable sequential logic circuit devices
JPS5616243A (en) * 1979-07-18 1981-02-17 Matsushita Electric Ind Co Ltd Microaddress production system
US4354228A (en) * 1979-12-20 1982-10-12 International Business Machines Corporation Flexible processor on a single semiconductor substrate using a plurality of arrays
US4578771A (en) * 1980-12-29 1986-03-25 International Business Machines Corporation Dynamically reprogrammable array logic system
US4399516A (en) * 1981-02-10 1983-08-16 Bell Telephone Laboratories, Incorporated Stored-program control machine
USRE32858E (en) * 1981-02-10 1989-02-07 American Telephone And Telegraph Company, At&T Bell Laboratories Stored-program control machine
DE3121562A1 (de) * 1981-05-30 1983-01-05 Ibm Deutschland Gmbh, 7000 Stuttgart Programmierbare logische hochintegrierte schaltungsanordnung
US4484268A (en) * 1982-02-22 1984-11-20 Thoma Nandor G Apparatus and method for decoding an operation code using a plurality of multiplexed programmable logic arrays
US4506341A (en) * 1982-06-10 1985-03-19 International Business Machines Corporation Interlaced programmable logic array having shared elements
USRE34363E (en) * 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4617479B1 (en) * 1984-05-03 1993-09-21 Altera Semiconductor Corp. Programmable logic array device using eprom technology
US4609986A (en) * 1984-06-14 1986-09-02 Altera Corporation Programmable logic array device using EPROM technology
US4766532A (en) * 1985-04-30 1988-08-23 International Business Machines Corporation Sequential array logic
US4763020B1 (en) * 1985-09-06 1997-07-08 Ricoh Kk Programmable logic device having plural programmable function cells
DE68927015D1 (de) * 1988-02-08 1996-10-02 Fujitsu Ltd Direktspeicherzugriffssteuerung
KR20040014060A (ko) * 2002-08-09 2004-02-14 삼성전자주식회사 효율적인 다이내믹 pla 디코더
US8661394B1 (en) 2008-09-24 2014-02-25 Iowa State University Research Foundation, Inc. Depth-optimal mapping of logic chains in reconfigurable fabrics
US8438522B1 (en) 2008-09-24 2013-05-07 Iowa State University Research Foundation, Inc. Logic element architecture for generic logic chains in programmable devices

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3230355A (en) * 1962-12-04 1966-01-18 Melpar Inc Matrix logic computer
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
IT1063025B (it) * 1975-04-29 1985-02-11 Siemens Ag Disposizione circuitale logica integrata e programmabile
JPS5354936A (en) * 1976-10-29 1978-05-18 Toshiba Corp Programable logical array
US4132979A (en) * 1976-12-15 1979-01-02 Teletype Corporation Method and apparatus for controlling a programmable logic array
US4114143A (en) * 1977-05-12 1978-09-12 International Business Machines Corporation Modular switching system

Also Published As

Publication number Publication date
FR2396468A1 (fr) 1979-01-26
FR2396468B1 (de) 1980-02-08
GB1558754A (en) 1980-01-09
DE2825190A1 (de) 1979-01-04
JPS5413240A (en) 1979-01-31
DE2825190B2 (de) 1980-03-20
US4237542A (en) 1980-12-02

Similar Documents

Publication Publication Date Title
DE2825190C3 (de) Programmierbare logische Anordnung
EP0010173B1 (de) Halbleiterplättchen mit verbesserter Prüfbarkeit der monolithisch hochintegrierten Schaltungen
DE68923541T2 (de) Programmierbare Logikeinrichtung mit einer Vielzahl von programmierbaren Logikarrays, die sich in mosaikförmiger Anordnung zusammen mit einer Vielzahl von vermischt angeordneten Interface-Blöcken befinden.
DE4417575C2 (de) Verbesserte Array-Architektur für programmierbare logische Zellen
DE2822219C2 (de) Auf einem Chip integrierte Logikschaltungen
DE69031861T2 (de) Programmierbare logische Schaltung mit Multifunktionseingangspin
DE3884037T2 (de) Programmierungsschaltung für Eingabe-/Ausgabezelle eines programmierbaren Logikarrays.
DE2451008A1 (de) Datenuebertragungseinrichtung fuer digitale rechenanlagen
DE2716369A1 (de) Mikroprozessorsystem
DE3215671C2 (de) Programmierbare Logikanordnung
DE3001189A1 (de) Programmierbare sequentielle logische schaltungseinrichtung
EP0046499A1 (de) Schieberegister für Prüf- und Test-Zwecke
DE2715751B2 (de) Speicheranordnung mit defekten Modulen
DE1549438C3 (de)
DE3854212T2 (de) Signalgenerator für die Umlaufadressierung.
EP0046500A1 (de) Schieberegister für Prüf- und Test-Zwecke
DE2706807C2 (de) Einrichtung und Verfahren zum Verarbeiten von Information in Form digitaler Signale
DE2951040C2 (de)
DE1115488B (de) Datenverarbeitungssystem
DE3543471C1 (de) In integrierter Technik hergestellter Baustein zur Erstellung integrierter Schaltungen
DE2245284A1 (de) Datenverarbeitungsanlage
DE1285218B (de) Datenverarbeitungsanlage
DE69307398T2 (de) Programmierbare logische Zelle
DE102004006769B3 (de) Auslesevorrichtung
DE69428281T2 (de) Vorwärtsregelungssystem, verfahren und regelungsmodul

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee