(Programmable Logic Device) Eine Vielzahl von Logikchips, die beim Kunden vor Ort programmierbar sind, wobei der Kunde der tatsächliche Benutzer oder ein Anbieter ist, der einen kundenspezifischen Chip weiterverkauft. Die logische Programmierbarkeit bedeutet, dass neue Chipdesigns getestet und einfach geändert werden können, ohne dass die enormen Fotomaskenkosten für Chips anfallen, die in einer Halbleiterfabrik hergestellt werden (siehe ASIC). Darüber hinaus können speicherbasierte PLDs immer wieder neu programmiert werden, sodass funktionierende Produkte vor Ort beim Benutzer aktualisiert werden können.
PLDs beziehen sich immer auf das Ändern von Logik und nicht von Daten, und programmierbare Speicherchips wie PROMs und EPROMs, die für Programmcode verwendet werden, können auch als PLDs kategorisiert werden.
PLDs sind mit verschiedenen Arten von Logikschaltungen (von einer Handvoll bis zu Hunderttausenden) vorgefertigt, die alle darauf warten, gemäß den Anforderungen des Kunden miteinander verbunden zu werden. Siehe Soft Core und adaptive Computing.
FPGAs
Feldprogrammierbare Gate-Arrays sind eine wichtige programmierbare Logiktechnologie, die einige Anbieter unter dem PLD-Dach klassifizieren, während andere sie getrennt halten. In beiden Fällen fallen sowohl FPGAs als auch PLDs in die Kategorie „Field Programmable Device“ (FPD) (siehe FPGA).
Einmal programmierbar (Fusible Links und Antifuse)
Fuse-basierte PLDs sind permanente „One-time programmable“ (OTP) Chips. „Fusible Links“ werden programmiert, indem leitfähige Aluminiumbahnen elektrisch geschmolzen werden (Blasen von mikroskopischen Sicherungen). „Antifuse“ ist das Gegenteil. Anstatt leitende Verbindungen zu zerstören, werden sie „gezüchtet“, indem Ladungen in winzige Blöcke aus isolierendem Silizium geschickt werden, die leitfähig werden.
Umprogrammierbar (Speicherbasiert)
Umprogrammierbare PLDs speichern ihr Logikdesign in einem EPROM-, EEPROM-, Flash- oder SRAM-Speicher, der jedem programmierbaren Verbindungspunkt eine Speicherzelle zuordnet (ist die Verbindung offen oder geschlossen). SRAM-basierte PLDs sind beliebt und werden beim Start neu geladen, wodurch sie spontan dynamisch und anpassungsfähig an neue Anforderungen sind.
SPLDs und CPLDs
Einfache PLDs (SPLDs) sind Geräte mit einem UND-Array, das ein ODER-Array oder ähnliches speist, wobei der Unterschied darin besteht, ob eines oder beide Arrays programmierbar sind. SPLDs werden über Fusible Link, Antifuse, EPROM, EEPROM oder Flash programmiert. Komplexe PLDs (CPLDs) werden aus einer Anzahl von SPLDs gebildet, die durch eine programmierbare Schaltmatrix miteinander verbunden sind. CPLDs basieren auf EEPROM, Flash oder SRAM.
PLD
Die ASIC-Familie
PLDs fallen unter die allgemeinste Definition von anwendungsspezifischen ICs (ASICs). (Diagramm mit freundlicher Genehmigung von Clive „Max“ Maxfield, www.clivemaxfield.com )