Heim Der Blog Blog Details

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele

August 28 2023
Ampheo

Anfrage

Globaler Lieferant elektronischer Komponenten AMPHEO PTY LTD: Umfangreiches Inventar für One-Stop-Shopping. Einfache Anfragen, schnelle, individuelle Lösungen und Angebote.

SCHNELLE ANFRAGE
ZUR RFQ-LISTE HINZUFÜGEN
PLDs sind elektronische Komponenten, die so programmiert werden können, dass sie eine Reihe digitaler Logikoperationen ausführen. Sie werden in vielen Bereichen eingesetzt, unter anderem in der Unterhaltungselektronik, industriellen Steuerungssystemen, Computern und Telekommunikation. In diesem Blog besprechen wir die Grundlagen programmierbarer Logikgeräte (PLDs), darunter PLD-Typen, PLD-Anwendungen, PLD-Beispiele usw.

Was sind PLDs?

Der Begriff „programmierbares Logikgerät“ bezieht sich auf einen integrierten Schaltkreis mit einer Vielzahl von Logikkomponenten und Verbindungen, die vom Benutzer programmiert werden können, um bestimmte Logikfunktionen auszuführen. Als Logikkomponenten werden häufig einfache kombinatorische oder sequentielle Schaltkreise wie AND-, OR-, NOT- und XOR-Gatter oder Register verwendet. Die Verbindungen werden häufig mithilfe programmierbarer Schalter oder Multiplexer hergestellt, die die Ein- und Ausgänge der Logikeinheiten auf verschiedene Weise verbinden können. Zum Programmieren eines PLD kann eine Hardwarebeschreibungssprache (HDL) wie Verilog oder VHDL oder ein Softwaretool mit grafischer Benutzeroberfläche (GUI) verwendet werden. Anschließend wird das PLD mithilfe eines speziellen Geräteprogrammierers oder einer gemeinsamen Schnittstelle wie JTAG oder USB mit dem Programmiercode oder der Programmdatei aktualisiert. Die Konfiguration der Logikkomponenten und ihrer Verbindungen zur Ausführung der gewünschten Logikfunktion wird durch den Programmiercode oder die Datei vorgegeben.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 1

 

Geschichte der PLDs

In den späten 1960er und frühen 1970er Jahren wurden die ersten programmierbaren Logikgeräte (PLDs) eingeführt. Diese Geräte wurden mit verschiedenen Methoden gebaut, wie etwa Floating-Gate UV-löschbaren PROMs (EPROMs), programmierbaren Nur-Lese-Speichern (PROMs) und maskenprogrammierbaren Gate-Arrays (MPGAs).   Motorola stellte 1969 den XC157 vor, einen MPGA mit 30 unbelegten Eingangs-/Ausgangspins und 12 Gates. Um den XC157 programmieren zu können, wurden während der Herstellung des IC Änderungen an der Metallschicht vorgenommen.   Texas Instruments entwickelte 1970 den auf IBM basierenden Nur-Lese-Assoziativspeicher oder ROAM basierenden MPGA namens TMS2000. Der TMS2000 enthielt 8 JK-Flipflops als Speicher und bis zu 17 Eingänge und 18 Ausgänge. Für dieses Gerät prägte TI den Begriff Programmable Logic Array (PLA).   1971 entwickelte die General Electric Company (GE) ein PLD auf Basis der hochmodernen PROM-Technologie. Dieses experimentelle Gerät ermöglichte mehrstufige Logik und übertraf damit IBMs ROAM. Das erste löschbare PLD, das jemals entwickelt wurde, war das GE-Gerät.   Der DM7575, ein maskenprogrammierbares PLA-Gerät mit 14 Eingängen und 8 Ausgängen, aber ohne Speicherregister, wurde 1973 von National Semiconductor auf den Markt gebracht. Obwohl dieses Gerät weiter verbreitet war als die TI-Komponente, war seine Verwendung durch die hohen Kosten der Metallmaske eingeschränkt. Das 1975 von Signetics entwickelte 82S100 Field Programmable Logic Array (FPGA) basierte auf dem DM7575.   Um ein maskenprogrammierbares Logikgerät zu entwickeln, das die GE-Fortschritte beinhaltet, schlossen GE und Monolithic Memories (MMI) 1974 einen Vertrag ab. Das Gerät hieß PALA oder „Programmable Associative Logic Array“. Das 1976 fertiggestellte MMI 5760 konnte mehrstufige oder sequentielle Schaltkreise mit mehr als 100 Gattern bauen. Das Gerät wurde von einer GE-Designumgebung unterstützt, in der Boolesche Gleichungen in Maskenmuster umgewandelt wurden, um das Gerät anzupassen. Das MMI 5760 war jedoch nie im Handel erhältlich.  

Typen von PLDs

  • Programmierbare Logikarrays (PLAs): Die einfachste Art von PLDs sind programmierbare Logikarrays (PLAs). Sie bestehen aus einer Reihe von UND-Gattern, gefolgt von ODER-Gattern. Die Produktphrasen werden mithilfe von UND-Gattern erstellt und mithilfe von ODER-Gattern addiert.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 2

 
  • Programmierbare Array-Logik (PALs): PLAs sind mit programmierbarer Array-Logik (PALs) vergleichbar, außer dass PALs ein festes ODER-Gatter-Array haben. Aus diesem Grund sind sie einfacher zu programmieren als PLAs. Die ODER-Gatter sind fest, aber die UND-Gatter sind programmierbar.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 3

 
  • Generische Array-Logik (GALs): Im Gegensatz zu PALs verfügt die generische Array-Logik (GALs) über ein programmierbares ODER-Gatter-Array. Sie sind daher flexibler als PALs. Programmierbarkeit ist sowohl für die UND- als auch für die ODER-Gatter verfügbar.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 4

 
  • Komplexe programmierbare Logikbausteine (CPLDs): CPLDs oder komplexe programmierbare Logikbausteine sind komplexer als PLDs. Sie können einige Hundert oder sogar einige Tausend Gatter haben. In CPLDs findet man häufig ein programmierbares UND-Gatter-Array und ein programmierbares ODER-Gatter-Array.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 5

 
  • Field-programmable Gate Arrays (FPGAs): Das komplizierteste PLD-Design. Sie können so konfiguriert werden, dass sie eine große Bandbreite logischer Funktionen implementieren und verfügen über Millionen von Gates. FPGAs werden häufig für anspruchsvolle und komplexe Anwendungen verwendet.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 6

 

Video zu PLDs

 

Wie funktionieren PLDs?

Flipflops, UND-Gatter und ODER-Gatter sind nur einige der Logikkomponenten, die in programmierbaren Logikgeräten enthalten sind und vom Benutzer angepasst werden können. Wenn die Programmierung mit einem speziellen Softwareprogramm erfolgt, kann der Benutzer die internen Verbindungen und die Logik ändern. Gelegentlich enthalten programmierbare Logikgeräte eine Reihe von Sicherungen, die im ursprünglichen, unprogrammierten PLD vorhanden waren. Um die Verbindungen in einer bestimmten Konfiguration gemäß Ihrem Entwurf dauerhaft zu machen, brennen Sie beim Programmieren des Logikgeräts und Überprüfen der Verknüpfungen effektiv die Sicherungen durch. Um ein programmierbares Logikgerät zu programmieren, müssen Sie die entsprechende Software und Sprache verwenden, um mit der Technologie zu interagieren. Höchstwahrscheinlich werden Sie eine Hardwarebeschreibungssprache oder HDL verwenden. Verilog oder VHDL sind zwei Beispiele für höhere Programmiersprachen, die für anspruchsvolle Geräte verwendet werden können. Um das von Ihnen in der bereitgestellten Hardwaresprache erstellte Logikmuster auf das programmierbare Logikgerät zu übertragen, benötigen Sie außerdem einen Geräteprogrammierer.  

Vorteile von PLDs

  • Digitaler Systementwurf: Beim Entwurf digitaler Systeme, einschließlich Mikroprozessoren, Mikrocontrollern, digitalen Signalprozessoren, eingebetteten Systemen, Computerperipheriegeräten, Kommunikationsgeräten usw., werden PLDs verwendet. PLDs bieten mehr Gestaltungsflexibilität als diskrete Logikgeräte, wenn es darum geht, anspruchsvolle Logikfunktionen mit weniger Hardware und Kabeln zu erstellen.
  • Schnelle Prototyperstellung: PLDs werden verwendet, um schnell und einfach Prototypen digitaler Systeme zu erstellen, ohne dass kostspielige Herstellungsprozesse oder langwierige Entwicklungszyklen erforderlich sind. PLDs ermöglichen das sofortige Testen und Debuggen digitaler Systeme, indem ihre Programmierung geändert wird, ohne ihren physischen Aufbau zu verändern.
  • Rekonfigurierbarkeit: PLDs werden verwendet, um digitale Systeme dynamisch als Reaktion auf sich ändernde Anforderungen oder Umgebungsbedingungen zu rekonfigurieren, ohne dass Hardware ausgetauscht oder geändert werden muss. Indem sie das Umschalten zwischen mehreren Modi oder Funktionalitäten basierend auf den Eingangsdaten oder externen Signalen ermöglichen, ermöglichen PLDs adaptives Computing.
  • Leistung: PLDs übertreffen Geräte mit fester Logik in Bezug auf Geschwindigkeit, Stromverbrauch, Zuverlässigkeit und Skalierbarkeit. PLDs ermöglichen es, mehrere Aufgaben gleichzeitig auszuführen und dabei verschiedene Komponenten des Geräts zu nutzen.
  • Kosteneffektivität: PLDs sind in Bezug auf Designzeit, Entwicklungskosten, Wartungskosten und Produktlebenszyklen wirtschaftlicher als Geräte mit fester Logik. Indem sie die Wiederverwendung bereits vorhandener Codemodule und Bibliotheken für verschiedene Anwendungen ermöglichen, verkürzen PLDs die Designzeit. PLDs senken die Entwicklungskosten, indem sie einfache Anpassungen und Fehlerbehebungen ermöglichen, ohne dass Hardware-Upgrades erforderlich sind. Indem sie einfache Upgrades und Kompatibilität mit neuen Technologien ermöglichen, ohne dass Hardwareänderungen erforderlich sind, senken PLDs die Wartungskosten. PLDs bieten Funktionalität und zusätzliche Funktionen, ohne dass Hardwareänderungen erforderlich sind, und verlängern so den Produktlebenszyklus.
 

Anwendungen von PLDs

  • Digitale Signalverarbeitung: Filter, Modulatoren und Demodulatoren sind nur einige der Algorithmen, die in der digitalen Signalverarbeitung mit PLDs implementiert werden.
  • Kommunikation: Kommunikationssysteme wie Modems, Router und Switches verwenden PLDs.
  • Steuerungssysteme: PLDs werden zum Erstellen von Steuerungssystemen verwendet, wie sie beispielsweise in der industriellen Automatisierung und Robotik eingesetzt werden.
  • Datenerfassung: PLDs werden verwendet, um Informationen von Sensoren und anderen Geräten zu erfassen.
  • Geräte zum Testen und Messen, einschließlich Oszilloskope und Logikanalysatoren, verwenden PLDs.
  • Medizinische Geräte: PLDs sind Bestandteil medizinischer Geräte, einschließlich Herzschrittmachern und Defibrillatoren.
  • Luftfahrt und Verteidigung: PLDs werden unter anderem in der Avionik und in Radarsystemen sowie in anderen Luft- und Raumfahrt- und Verteidigungsanwendungen eingesetzt.
  • Unterhaltungselektronik: PLDs sind eine Komponente von Unterhaltungselektronik wie Fernsehern, DVD-Playern und Digitalkameras.
 

Beispiele für PLDs

  • XC9500-Serie: Die XC9500-Serie von Xilinx ist eine Familie von CPLDs. Bis zu 5120 Gates der XC9500-Serie können im System programmiert werden.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 7

 
  • Altera MAX 7000-Serie: Die MAX 7000-Serie von Altera ist eine Gruppe von CPLDs. Bis zu 28.000 Gates der MAX 7000-Serie können im System programmiert werden.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 8

  • Lattice ECP5: Lattice Semiconductor stellt die FPGA-Reihe Lattice ECP5 her. Das ECP5 kann im System programmiert werden und verfügt über bis zu 2 Millionen Gatter.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 9

 
  • Intel Stratix 10: Dies ist eine Klasse von FPGAs von Intel namens Stratix 10. Der Stratix 10 kann im System programmiert werden und verfügt über bis zu 18 Millionen Gates.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 10

 
  • Xilinx Virtex UltraScale+: Die FPGA-Familie Xilinx Virtex UltraScale+ ist ein Beispiel. Bis zu 180 Millionen Gates auf dem Virtex UltraScale+ können im System programmiert werden.

Grundlagen zu programmierbaren Logikbausteinen (PLDs): Typen, Anwendungen und Beispiele - Blog - Ampheo - 11

 

Fazit

PLDs sind anpassbare elektronische Bauteile und können zur Implementierung einer großen Bandbreite unterschiedlicher digitaler Logikfunktionen verwendet werden. Im Vergleich zu individuell entwickelten ICs sind sie einfacher zu entwickeln, kostengünstiger und kleiner. PLDs werden in vielen verschiedenen Bereichen eingesetzt, beispielsweise in der Unterhaltungselektronik, Telekommunikation, industriellen Steuerungssystemen und Computern.
Ampheo