Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
de:parts:pld [2012/03/27 01:03] – MWanke | de:parts:pld [2024/09/22 00:26] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Programmierbare logische Schaltung ====== | + | ====== Programmierbare logische Schaltung ====== |
- | {{:de:baustelle.gif|Baustelle}} | + | Eine programmierbare logische Schaltung, häufig auch in deutschsprachiger Fachliteratur als Programmable Logic Device oder kurz PLD bezeichnet, ist ein elektronisches Bauelement für integrierte Schaltkreise. Anders als logische Gatter, die eine feste Funktion vorgegeben haben, erhalten PLDs erst nach der Herstellung ihre Funktion durch die entsprechende Programmierung (Konfiguration). |
+ | [{{ :de:parts:pla.png?200|Grundprinzip eines PLA}}] | ||
- | Erstmal ein Auszug und Link: | + | ===== Unterscheidung nach Komplexität ===== |
- | {{wp> | + | Beispiele verschieden komplexer PLDs sind (in aufsteigender Komplexität): |
- | {{ :de:parts:pla.png? | + | |
- | Für die Standart-Amiga interessant die Kapitel GAL und PAL | + | ==== PLA ==== |
+ | Einfache programmierbare logische Schaltungen bestehen meist aus einem Array aus UND-Verknüpfungen gefolgt von einem Array aus ODER-Verknüpfungen. | ||
- | \\ | + | * Programmable Read-Only Memory (**PROM**)\\ Ein PROM stellt ein festes UND-Array mit einem programmierbaren ODER-Array bzw. eine Lookup-Tabelle (LUT) dar. |
- | ===== PAL und GAL ===== | + | * Programmable Array Logic (**PAL**) bzw. Generic Array Logic (**GAL**)\\ Ein PAL stellt ein programmierbares UND-Array mit einem festen ODER-Array dar. Ein GAL ist im Gegensatz zu einem PAL wiederbeschreibbar. |
+ | * Programmierbare logische Anordnung (**PLA**)\\ Bei einem PLA sind sowohl das UND-Array als auch das ODER-Array programmierbar. | ||
- | Programmable Array Logic (kurz PAL genannt) sind veraltete elektronische Halbleiterbausteine im Bereich der Digitaltechnik, | + | PLAs wurden meistens eingesetzt, um sogenannte Glue Logic zu ersetzen. Inzwischen werden sie kaum noch eingesetzt |
- | {{ : | + | |
- | PALs sind Sonderfälle von PLAs (Programmable Logic Arrays) und dadurch gekennzeichnet, dass ausschließlich ihr UND-Array programmierbar ist. PALs sind nur einmal beschreibbar, | + | ==== PLD ==== |
- | Als Weiterentwicklung der PALs kamen zuerst durch die Lattice Semiconductor Corporation die wiederbeschreibbaren Generic | + | * Complex |
+ | * Field Programmable Gate Array (**FPGA**)\\ Ein FPGA besteht ähnlich wie ein CPLD aus untereinander vernetzten Blöcken, jedoch sind diese komplexer. Ein Block besteht hier aus Flip-Flops und LUTs. Auch die Möglichkeiten diese Blöcke untereinander zu verbinden | ||
- | {{ : | + | CPLDs wie FPGAs verfügen außerdem oft über programmierbare I/O-Zellen, die es erlauben, verschiedene Signalschnittstellen (z.B. TTL, PCI oder LVDS) an den Baustein anzuschließen. |
+ | \\ | ||
- | Die Bezeichnung GAL ist ein Warenzeichen der Firma LATTICE, wodurch es einige Firmen gibt, die diese Bausteine mit ihrem Originalnamen unter Lizenz bezeichnen, und andere Firmen, welche diese Bausteine umbenannt haben (bei AMD beispielsweise unter dem Namen PALCE) - hierbei unterscheidet sich der Programmieralgorithmus, | + | ====== Vorkommen beim Amiga ====== |
- | + | ||
- | Die Bezeichnung gibt im Muster an, um was für einen Logikbaustein es sich handelt, und gibt Informationen über seine Eigenschaften. ein GAL16v8 ist ein Gal-baustein mit 16 Matrixeingängen für die Logikmatrix, | + | |
- | + | ||
- | GAL-Bausteine haben drei verschiedene Betriebsmodi, | + | |
- | + | ||
- | Seit Mitte der 1990er Jahre werden PALs und GALs in neu entwickelten Schaltungen kaum noch eingesetzt und sind fast vollständig durch Complex Programmable Logic Devices (CPLDs) abgelöst worden. CPLDs besitzen keine Einschränkungen bezüglich der Verwendbarkeit der UND-/ | + | |
- | + | ||
- | ===== Vorkommen beim Amiga ===== | + | |
{{: | {{: | ||
- | Im Amiga wurden zuerst vorwiegend PAL bzw. PALCE verwendet. Später meist GAL. | + | Im Amiga wurden zuerst vorwiegend PAL bzw. PALCE verwendet. Später meist GAL. CPLDs und FPGAs werden von einigen Drittherstellern für ' |
- | Nun halten die auch nicht ewig, und einige haben sogar eine begrenzte Laufzeit. | ||
- | {{: | + | \\ |
- | <awbox blue> | + | |
- | >... we want to put online may be source codes of GALs, including the jedec files, so people can make new ones in case a machine suffers from a defective GAL. | + | |
- | __ | + | |
- | Antwort von Dave Haynie:__ | + | |
- | >>I did that myself... put up the PAL/GAL code (all written in CUPL) for the projects I had saved from the Commodore days (the old " | + | |
- | >> | + | |
- | </ | + | |
+ | {{ : | ||
+ | ====== Downloads / Links ====== | ||
+ | * http:// | ||
+ | * http:// | ||
- | ===== PAL/GAL Resourcen ===== | ||
- | Die Source-Files sind alle auf einer einzigen Seite gesammelt (allein schon wegen der Updaterei). Dorthin wird von hier und den betreffenden Rechnern und Listen verlinkt. | ||
\\ | \\ | ||
- | Sprich die Doku beim Thema und die Software hier: | ||
- | |||
- | <awbox download> | ||
- | ** [[de: | ||
- | \\ | ||
- | </ | ||
- | |||
- | ====== Notes from Anthony Hoffman: ====== | ||
- | http:// | ||
- | FIXME | ||
- | |||
- | All of the A3000 original PAL devices (U202, U203, U701, U714) can be replaced with modern GAL devices which have better performance and lower operating temperatures than the original PAL logic. | ||
- | Using the CUPL sources files provided by Dave Haynie, I have compiled JEDEC files for programing GAL16V8 devices using CUPLPLD 4.2a. | ||
- | Thanks to Tobias Seiler for the original conversions and information. | ||
- | |||
- | Click here to download U202, U203, U701, U714 JEDEC files. Note that you'll need a suitable GAL programmer. | ||
- | These have been tested in the A3000 using Lattice GAL16V8D-15QPN (Farnell part number 969-9678) but should work for Atmel and other 16V8 PLDs. | ||
- | The original Amiga PALs are 25ns, which happens to be equivalent to the slowest available 16V8 devices. Therefore any device whose part number matches 16V8*-**QP* (* = any character) should in theory work. The 20-pin DIP/DIL package is required. | ||
- | You can view the Lattice 16V8 datasheet for more information. | ||
- | |||
- | |||
- | ====== Bezugsquellen ====== | ||
- | |||
- | * http:// | ||
- | |||
- | * http:// | ||
- | |||
- | * {{: | ||
- | |||
- | * {{: | ||
- | |||
- | * {{: | ||
- | |||
- | ====== Weitere Hinweise ====== | ||
- | |||
- | * http:// | ||
- | |||
- | Sehr interessanter Link zum Thema Programmieren: | ||
- | * http:// | ||
- | |||
- | * {{: | ||
- | * {{:de: | + | {{ :awschriftzug.gif?nolink|www.amigawiki.org}} |
+ | {{page> |