InhaltVorheriges Kapitel Nächstes Kapitel

3 Datenselektoren

3.4 Programmierbare logische Schaltungen (PLD)


Als Nachteil der Speicherrealisierung von Schaltungen wurde die reine Minterm-Dekodierung erkannt, die nur die Erzeugung von Vollkonjunktionen zuläßt. In der sogenannten "Programmierbaren Logik" wird diese Einschränkung aufgehoben; diese Logikform erlaubt sowohl die Bildung von Implikanden als auch die Berücksichtigung von "don't care"-Fällen.

Die Schaltungsfamilien, die diese Eigenschaften aufweisen, werden unter dem Namem PLD (engl. programmable logic devices) zusammengefaßt. Insbesondere drei eng verwandte Bauteilgruppen sind dabei zu unterscheiden:



3.4.1 Programmable Logic Array

Das "Programmable Logic Array" baut auf der bereits bekannten UND/ODER-Struktur auf, mit der zusätzlichen Möglichkeit, in einem vorgegebenen UND-Array nicht nur Minterme zu erzeugen, sondern auch die Bildung von Feldverbunden zuzulassen:

Abb. 3.16: PLA-Grundstruktur

Der typische PLD-Baustein ist also gekennzeichnet durch eine aus UND-Gattern bestehende Eingangsstruktur und eine aus ODER-Gattern bestehende Ausgangsstruktur. Die Anzahl der Signalverbindungen ist für beide Strukturen progammierbar. Dadurch kann entschieden werden, welche Eingangssignale mit den UND-Gattern und welche Produktterme (Implikanden) mit den ODER-Gattern verbunden werden.

Diese Version der PLDs, bei der beide Strukturen vollprogrammierbar sind, wird als PLA (FPLA) bezeichnet. Die Signale, die programmierbar sind, d.h. die verbunden werden können, werden in Feldern (arrays) zusammengefaßt.


Abb. 3.17: Allgemeine PLA-Grundstruktur

(sowohl UND- als auch ODER-Feld sind programmierbar).

Die in dieser generischen Grundstruktur aufgezeigten Kreuzverbindungen (cross point switches) sind im Normalzustand der PLDs vorhanden. Wie foldende Abbildung zeigt, sind sie aber auf Grund eingebauter "Sicherungen" (fusable links) programmierbar, d.h. die in den beiden Feldern bestehenden Verbindungen können unterbrochen werden. Das gezielte "Aufbrechen" der Verbindungen wird als "Programmierung" der PLDs bezeichnet.

Abb. 3.18: Detail der PLA-Programmierung
(oben: unprogrammiertes PLA, unten: programmiertes PLA)



3.4.2 PAL und PROM (PLE)

Von diesen PLA-Bausteinen existieren zwei Sonderformen, die sich dadurch auszeichnen, daß nur jeweils eine der beiden Feld-Strukturen programmierbar ist.

Kann nur das UND-Feld programmiert werden, spricht man von den PAL-Bausteinen, im Falle eines programmierbaren ODER-Feldes schließlich von den bereits bekannten PROMs, die also als PLA-Sonderfall interpretiert werden können:

Abb. 3.19: Programmable Array Logic (PAL) mit programmierbarem UND-Feld.



Abb. 3.20: Programmable Read Only Memory (PROM) mit programmierbarem ODER-Feld.


Die drei Gruppen programmierbar Bausteine unterscheiden sich also durch die Programmierbarkeit der UND- bzw. ODER-Felder:

PLD-Typ
UND-Feld
ODER-Feld
PLA (FPLA) programmierbar programmierbar
PROM (PLE) fest programmierbar
PAL programmierbar fest

Tab. 3.4: PLD-Bausteine.



3.4.3 Anwendungsbeispiel: PLA vs. PROM

Um die Unterschiede zwischen PLA und PROM zu verdeutlichen, soll deren Anwendung an einem typischen Beispiel diskutiert werden.

Zwei durch eine Wertetafel vorgegebene Funktionen x und y werden mit Hilfe eines PLD-Bausteins realisiert:

Abb. 3.21: Durch Wertetabelle definierte Funktionen (links) und zugehörige KV-Diagramme (oben).


c
b
a
x
y
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
1
1
0
0
1
1
1
1
0
1

In den oben ebenfalls angegebenen KV-Diagrammen sind bereits die möglichen Vereinfachungen vorgenommen worden, d.h. es wurden Feldverbunde (Implikanden, Produktterme) gebildet.

Die Funktionsrealisierung wird zunächst mit Hilfe eines PROM-Bausteins vorgenommen:


Abb. 3.22 PROM-Realisierung der Funktionen x und y.

In dieser PROM-Realisierung können nur Vollkonjunktionen gebildet werden; die benötigten Minterme mi wurden gekennzeichnet.
In diesem Beispiel wird der Minterm m4 von beiden Funktionen gemeinsam genutzt (Funktionsbündel).

In einer entsprechenden PLA-Realisierung kann jetzt die im KV-Diagramm durchgeführte Implikandenbildung genutzt werden:

Abb. 3.23 PLA-Realisierung der Funktionen x und y.

Von den drei Produkttermen

(3.3)

wird der Term P1 wiederum von beiden Funktionen gemeinsam genutzt. Dieser Produktterm stellt eine Vollkonjuktion dar, er ist also identisch mit dem Minterm m4 in obiger PROM-Realisierung.

Auf Grund der Möglichkeit einer Implikandenbildung sind für eine PLA-Realisierung weniger Produktterme notwendig als bei einer PROM-Realisierung.

PLA- und PROM-Bausteine werden deshalb für die praktische Anwendung so ausgelegt, daß zwei Nutzungsbereiche unterschieden werden könnnen:

Typische Werte für diese beiden Parameter sind:

PLD-Typ
Eingangssignale
Produktterme
PROM (PLE)
5 - 12
32 - 4096
PAL
10 - 20
2 - 16


Tab. 3.5: PROM/PAL-Vergleich.




InhaltVorheriges Kapitel Nächstes Kapitel