Programmierbare logische Anordnung

Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 26. Februar 2005 um 15:54 Uhr durch Mkleine (Diskussion | Beiträge) (Verschmolzen mit Programmable Array Logic -> dieser Artikel behandelt im Grunde fälschlicher Weise den allgemeinen Fall PLA statt PAL.). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Eine programmierbare logische Anordnung, häufig auch in deutschsprachiger Fachliteratur als Programmable Logic Array oder kurz PLA, und gelegentlich als Fieldprogrammable Array Logic (FPLA) bezeichnet, ist ein Halbleiterschaltkreis, der aus zwei hintereinander geschalteten AND- und OR-Matritzen besteht. Er wird zur Herstellung von Schaltwerken für logische Funktionen in disjunktiver Normalform verwendet. Die AND-Matrix repräsentiert dabei die Konjunktionsterme. Die Auswahl der Konjunktionsterme erfolgt im Rahmen der Programmierung (meist mittels eines speziellen Gerätes) durch das Entfernen von Schaltgliedern aus der AND-Matrix. Die disjunktive Verknüpfung der Konjunktionsterme erfolgt mittels der ODER-Matrix. Die technische Realisierung beider Matrizen erfolgt allerdings häufig mittels NAND-Gliedern.

Grundprinzip eines PLA

Zur Realisierung von Schaltungen mittels PLAs werden durch das Ausbrennen von Verbindungsstrukturen (fuses) mittels elektrischer Impulse die endgültigen Verknüpfungen geschaffen. Die Anzahl der Ein- und Ausgänge muss dabei nicht identisch sein. Ein einmal programmierter Baustein kann dabei allerdings nicht mehr geändert werden, was in der endgültigen Serienfertigung nicht weiter störend ist. Während der Entwicklungsphase elektronischer Schaltungen werden hingegen gerne so genannte GALs (Generic Array Logic) eingesetzt, die sich mehrfach löschen und neu programmieren lassen.

Beispiel

Eingangssignal 1 :  Anschaltknopf
Eingangssignal 2 :  Sicherheitsschalter
Ausgangssignal   :  Motor (An / Aus)

Eine mögliche Programmierung wäre:

Wenn Anschaltknopf = An  UND Sicherheitsschalter = An  >> Dann Motor = An
Wenn Anschaltknopf = An  UND Sicherheitsschalter = Aus >> Dann Motor = Aus

Es reicht im Beispiel nicht den Motor direkt mit dem Schalter einzuschalten, sondern es ist eine zusätzliche Logik nötig. In PALs können nun auf engstem Raum sehr komplizierte Ein- und Ausgangssignale miteinander verknüpft werden.

Abgrenzung und Sonderfälle

Im Sprachgebrauch hat sich der Begriff PLA bzw. GAL für den Bereich der "kleineren" Bausteine programmierbarer Logik durchgesetzt, während sich für Bausteine "höherer" Komplexität die Begriffe ASIC, FPGA und CPLD in Abhängigkeit von der Art der Implementierung durchgesetzt haben.

Um Sonderfälle von PLAs handelt es sich bei den folgenden programmierbaren logischen Schaltungen:

Siehe auch: EPROM - ASIC - OTP- FPGA - CPLD