DE2825190C3 - Programmierbare logische Anordnung - Google Patents
Programmierbare logische AnordnungInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G04—HOROLOGY
- G04G—ELECTRONIC TIME-PIECES
- G04G99/00—Subject matter not provided for in other groups of this subclass
- G04G99/006—Electronic time-pieces using a microcomputer, e.g. for multi-function clocks
-
- 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/17712—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 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.
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
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:
Qo+1 = Q0Q1Q2Q3 + QoQi + QoQi + QoQ3
Qi+1 = Qi Q3 + Q1 Q2 + Qi Q2 Q3
Q2 +1 = QiQ3 + Q2 Q3
Q3 +1 = Q3
Q2 +1 = QiQ3 + Q2 Q3
Q3 +1 = Q3
25
3o
35
Zeile
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
Funktion
Q^
Qix-OTi
Qix-OTi
Qn-Qn_
Qu-Qn^
ßji/ßsi
QorQii
Qoi-Qii
ß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
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
Inhalt
Verriegelungsinhalt verändert
Verriegelungsinhalt unverä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
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)
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
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)
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)
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 |
-
1977
- 1977-06-30 FR FR7720729A patent/FR2396468A1/fr active Granted
-
1978
- 1978-04-19 GB GB15489/78A patent/GB1558754A/en not_active Expired
- 1978-04-28 US US05/901,166 patent/US4237542A/en not_active Expired - Lifetime
- 1978-06-08 DE DE2825190A patent/DE2825190C3/de not_active Expired
- 1978-06-19 JP JP7333678A patent/JPS5413240A/ja active Pending
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 |