Topic : Chips 'n Chips Author : Michael Ruge Version : chips_x.hyp (01/05/2001) Subject : Dokumentation/Hardware Nodes : 1505 Index Size : 35662 HCP-Version : 3 Compiled on : Atari @charset : atarist @lang : @default : @help : @options : -i -s +zz -t4 @width : 75 View Ref-File Programmierbare Logikbausteine Die Entwicklung digitaler Schaltungen hat sich in den letzten Jahren sehr stark verändert. Der Entwurf einer Schaltung mit Standardbausteinen stellt den Entwickler immer wieder vor das Problem, welche Funktionen mit welchen Bausteinen verwirklicht werden. Oftmals sind Bausteine nur teilweise benutzt, was häufig bei der Komplexität heutiger Schaltungen zu Platzproblemen führt. Bei anderen Anwendungen müssen Teile der Schaltung veränderbar sein (z.B. Adressdekodierung). In vielen Fällen werden daher programmierbare Logikbausteine (auch PLD = "Programmable Logic Device") eingesetzt, die erst vom Anwender in geeigneter Weise programmiert werden. PAL-Bausteine Die ersten Vertreter der PLD-Bausteine waren die PALs (Programmable Array Logic). In einem PAL können Logikfunktionen direkt durch Anwendung von "Summen-von-Produkten" verwirklicht werden. Aus der boolschen Algebra ist bekannt, daß sich jede Logikfunktion auf diese Art und Weise darstellen läßt (de Morgan Theorem). Die Produkte werden dabei in UND-Gattern gebildet und über ODER-Gatter summiert. Die Komplexität einer Funktion wird allein durch die Anzahl von Produkten (Produkt-Termen) bestimmt. Es hat sich eine besondere Darstellungsform für PAL's entwickelt: Der innere Aufbau wird darin Form einer Matrix dargestellt. Die Reihen der Matrix bilden die einzelnen Produkterme, die Spalten die Eingangssignale. Die Eingange stehen dabei invertiert und nicht invertiert zur Verfügung. An den Kreuzungspunkten von Reihen und Spalten ist je eine Sicherung angebracht (X). Diese werden bei der Programmierung durch entsprechenden Strom weggebrannt, wodurch die gewünschte Logikfunktion entsteht. EINGÄNGE AUSGANG FUNKTION Ausgang akt. high Ausgang akt. low A B C 0 0 0 AND C = A * B /C = /A*/B + A*/B + /A*B 0 1 0 1 0 0 1 1 1 0 0 1 NAND C = /A*/B + A*/B + /A*B /C = A * B 0 1 1 1 0 1 1 1 0 0 0 0 OR C = A*/B + /A*B * A*B /C = /A */B 0 1 1 1 0 1 1 1 1 0 0 0 EX-OR C = A*/B * /A*B /C = /A*/B + /A*B 0 1 1 1 0 1 1 1 0 weiterblättern Kapitel Der Unterschied zwischen PAL und GAL Chips, Seite 1