Benutzer-Werkzeuge

    ~~ RM: keiner ~~ UI: ---start--- ~~ IP:3.138.172.232~~

Webseiten-Werkzeuge


Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte ÜberarbeitungBeide Seiten der Revision
de:parts:pld [2011/03/23 03:20] MWankede:parts:pld [2014/08/01 01:16] – Datenblätter und Wikipedia-Text und etwas Struktur MWanke
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>Programmable_Logic_Device}} +Beispiele verschieden komplexer PLDs sind (in aufsteigender Komplexität):
-{{ :de:parts:pla.png?200|PLA}}+
  
-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. 
 +  * 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. 
 + 
 +PLAs wurden meistens eingesetzt, um sogenannte Glue Logic zu ersetzen. Inzwischen werden sie kaum noch eingesetzt und sind von folgenden PLDs ersetzt worden. 
 + 
 +==== PLD ==== 
 +  * Complex Programmable Logic Device (**CPLD**)\\ Ein CPLD besteht aus Blöcken, die ein PLA, Ein- und Ausgangsblöcke sowie eine programmierbare Rückkopplung enthalten. Diese Blöcke können untereinander verbunden werden. In der Regel ist für jeden I/O-Pin auch ein Flip-Flop enthalten. 
 +  * 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 sind gegenüber dem CPLD stark erweitert. Ein FPGA enthält oft auch fertige Funktionsblöcke wie RAM, PLLs oder ganze CPU-Kerne. 
 + 
 +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. 
 + 
 +Für die Standart-Amigas sind die Kapitel GAL und PAL interessant.
  
  \\   \\ 
Zeile 28: Zeile 43:
 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-/ODER-Matrizen im Eingangsbereich, sind elektronisch programmier- und löschbar, sind wie Field Programmable Gate Arrays (FPGAs) in einheitlichen Hardware-Programmiersprachen, wie beispielsweise VHDL, programmierbar und umfassen darüber hinaus eine bestimmte Anzahl an Registern. 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-/ODER-Matrizen im Eingangsbereich, sind elektronisch programmier- und löschbar, sind wie Field Programmable Gate Arrays (FPGAs) in einheitlichen Hardware-Programmiersprachen, wie beispielsweise VHDL, programmierbar und umfassen darüber hinaus eine bestimmte Anzahl an Registern.
  
-===== Vorkommen beim Amiga ===== +====== Vorkommen beim Amiga ====== 
 +{{:de:baustelle.gif|}}
 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.
  
Zeile 35: Zeile 50:
  
 {{:de:sherlockholmes.gif |}} Dazu haben wir einfach mal angefragt:\\  {{:de:sherlockholmes.gif |}} Dazu haben wir einfach mal angefragt:\\ 
-<WRAP center box 80%>+<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. >... 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:__ 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 "Haynie Archives" that used to be maintained up on thule.no).  Particularly **some of those GALs have a manufacturer-specified 10-year retention**, so there are likely some boards out there that need part reflashing. Making that stuff available in one place is a great idea.  +>>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 "Haynie Archives" that used to be maintained up on thule.no).  Particularly **some of those GALs have a manufacturer-specified 10-year retention**, so there are likely some boards out there that need part reflashing.  
-</WRAP>+>>Making that stuff available in one place is a great idea.  
 +</awbox>
  
  
Zeile 46: Zeile 62:
 ===== PAL/GAL Resourcen ===== ===== PAL/GAL Resourcen =====
  
-Gibt da verschiedene Möglichkeiten. +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 
-Ich denke im Moment wird es das Beste sein, alle auf einer einzigen Seite zu sammeln (allein schon wegen der Updaterei) und die von hier und den betreffenden Rechnern und Listen zu verlinken.+\\  
 +Sprich die Doku beim Thema und die Software hier:
  
-<WRAP center round download 60%>+<awbox download>\\  
 +** [[de:parts:pld_download| zur -> GAL/PAL/PLD-Download-Seite]] **\\ 
 \\  \\ 
-** [[de:parts:pld_download| -> GAL/PAL/PLD-Download-Seite]] ** +</awbox>
-</WRAP>+
  
 +===== Notes from Anthony Hoffman: =====
 +http://amiga.serveftp.net/A3000_HardwareGuide/heat-u202.html\\ 
 +FIXME
  
-====== Bezugsquellen ======+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.
  
- http://de.wikipedia.org/wiki/Programmable_Logic_Device+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.
  
- * http://de.wikipedia.org/wiki/Programmable_Array_Logic+====== Datenblätter ====== 
 +Lattice   
 +  * {{:de:parts:gal_intro_lattice.pdf|Lattice GAL-Übersicht}} (82kB) 
 +  * {{:de:parts:gal_lattice_16v8_1996.pdf|GAL 16V8 von 1996}} (652kB) 
 +  * {{:de:parts:gal_lattice_16v8_2001_183.pdf|GAL 16V8 von 2001}} (318kB) 
 +  * {{:de:parts:gal_lattice_20v8_2000.pdf|GAL 20V8 von 2000}} (315kB) 
 +  * {{:de:parts:gal_lattice_22v10_2006.pdf|GAL 22V10 von 2006}} (387kB) 
 +  * {{:de:parts:palce_lattice_16v8_2000.pdf|GAL PALCE 16V8 von 2000}} (650kB) 
 + 
 +SGS Thomson 
 +  * {{:de:parts:gal_st_16v8as_sgstd011_29.pdf|GAL 16V8AS}} (431kB) 
 +  * {{:de:parts:gal_st_16v8s_sgstd011_57.pdf|GAL 16V8S}} (453kB) 
 +  * {{:de:parts:gal_st_20v8as_sgstd011_43.pdf|GAL 20V8AS}} (441kB) 
 +  * {{:de:parts:gal_st_20v8s_sgstd011_73.pdf|GAL 20V8S}} (455kB) 
 + 
 +National Semiconductor 
 +  * {{:de:parts:gal_nsc_20v8_a.pdf|GAL 20V8/A}} (689kB) 
 +  * {{:de:parts:gal_nsc_22v10_613.pdf|GAL 22V10}} (501kB) 
 + 
 +Quelle und weitere Datenblätter unter:\\  
 +www.datasheetfind.com/search/gal1 bzw. www.datasheetfind.com/search/gal2 
 + 
 + 
 +\\ 
 + 
 +{{  :awschriftzug.gif?nolink|www.amigawiki.de}} 
 +====== Bezugsquellen ====== 
 + 
 +  * http://de.wikipedia.org/wiki/Programmierbare_logische_Schaltung 
 +  * http://de.wikipedia.org/wiki/Programmable_Array_Logic (PAL)
  
 ====== Weitere Hinweise ====== ====== Weitere Hinweise ======
  
-Rechtliche Hinweise zur Benutzung : http://creativecommons.org/licenses/by-nc-sa/3.0/+  * http://www.mikrocontroller.net (bei dem Thema kommt man hier nicht vorbei) 
 + 
 +Sehr interessanter Link zum Thema Programmieren:\\  
 +  * http://esd.cs.ucr.edu/labs/tutorial/  (ausführliches Tutorial mit Beispielen u.a. ISA)\\  
 + 
 +  * {{:de:parts:gal-alg.zip|ZIP: kl.Anleitung (en.)}} (5kB) 
 + 
 +  * {{:de:parts:jedec.zip|How to create a JEDEC file}} (2kB)
  
Zuletzt geändert: 2014/08/01 02:47