Die Menge der anwenderprogrammierbaren Geräte auf dem Markt ist heute erheblich größer, als noch vor ein paar Jahren. Die sich daraus ergebende Buchstabensuppe der Abkürzungen und die Überschneidungen geeigneter Anwendungen reichen aus, um alle Designer auf die Suche nach ihrem Lieblings-Mikrocontroller zu schicken.
Anwenderprogrammierbare Geräte (FPD) oder programmierbare Logikschaltkreise (PLD) unterscheiden sich von Standard-Mikrocontrollern dadurch, dass die Programmierung eines FPD die Hardware des Geräts verändert. Einem Mikrocontroller kann man befehlen, ein Programm systematisch abzuarbeiten, einen Befehl nach dem anderen. Die Ausführungsgeschwindigkeit wird in der Regel durch einen internen oder externen Taktgeber gesteuert und das Gerät führt pro Taktzyklus jeweils einen Befehl aus. Für normale Anwendungen mit langsamen Signalen ist dies ein gutes System. Wenn aber die Anwendung gleichzeitige I/O Lesevorgänge und/oder eine sehr schnelle Signalverarbeitung erfordert, benötigt das Gerät spezielle Hardware-Zugänge. Mit einem FPD können diese Hardware-Übergänge durch den Benutzer über die Programmierschnittstelle definiert und geschaffen werden. Solche Geräte erfordern nicht volatile Speicher wie Flash oder NVRAM, damit ihre Konfiguration auch ohne Stromversorgung erhalten bleibt.
Simple Programmable Logic Device (SPLD)
Bei Anwendungen, in denen nur eine kleine Zahl von I/Os gleichzeitig zu verarbeiten sind, genügt ein einfaches SPLD. Sie bestehen in der Regel nur aus etwa einem Dutzend Makrozellen. Solche Geräte sind meist die kleinsten und billigsten und haben unter den FPDs den geringsten Energiebedarf. Die beliebte ATF16xV8-Familie von Atmel hat Bauteile mit 8 Makrozellen, die in der Spitze weniger als 250mW verbrauchen und in einer Größe von 4x6 mm zu haben sind. Die Grenzen verschwimmen zwischen SPLDs und programmierbaren Spezialsteuerungen wie programmierbaren Logik-Arrays (PLA oder PAL), die oft für ähnliche Funktionen eingesetzt werden.
Complex Programmable Logic Device (CPLD)
Wenn Ihre Anwendung auf jeden Fall eine programmierbare Steuerung erfordert, Sie aber nur etwa zwischen 32 und 1000 Makrozellen benötigen, ist ein CPLD die Lösung für Sie. Diese Geräte schaffen in der Regel einen höheren Input in die logischen Schaltkreise, was sie für Anwendungen prädestiniert, die zahlreiche gleichzeitige I/O-Vorgänge erfordern, aber nur eine eingeschränkte Datenverarbeitung. CPLDs sind dichter als SPLDs und bieten mehr Möglichkeiten in kleinen Einheiten. Die Flash370-Familie von Cypress bietet diese Geräte mit zwischen 32 und 128 Makrozellen in 14x14 mm kleinen Einheiten. Während SPLDs eher Spannungen von 5V erfordern, verhalten sich CPLDs mehr wie FPGAs und brauchen meist weniger Spannung aber höheren Strom. Die meisten CPLDs ziehen bis zu 50mA pro I/O-Leitung aus einer Stromversorgung von 1,8V oder 3,3V.
Field Programmable Gate Array (FPGA)
FPGAs sind derzeit die Titanen in der Welt der FPDs, sie liefern Brain-Power für alles, von Server-Elementen bis zu Robotern. Diese Kategorie deckt eine große Bandbreite von Preisen, Möglichkeiten und Größen ab. Die LatticeEC-Familie von Lattice Semiconductor bietet Lösungen aus der 130nm-Technologie mit nur wenigen Tausend Zellen in Packgrößen von 20x20 mm und für weniger als $10USD. Am anderen Ende des Spektrums verwendet Altera’s Stratix V-Familie die 28nm-Technologie für die Herstellung von Geräten speziell für datenintensive Anwendungen oder solche, die eine hohe Bandbreite erfordern. Diese liegen in einem Kostenrahmen von einigen Hundert bis zu mehreren Tausend Dollar und erfordern oft ein sehr präzises Power-Management, um ausreichenden Strom und die Niederspannung für den Betrieb bereitzustellen. Referenz-Designs stehen als Anleitung dafür zur Verfügung, wie man die Kernversorgung (0,9V bei bis zu 68A) und die I/O Stromversorungsschienen mit der richtigen Ablaufsteuerung einsetzt, um Beschädigungen des Geräts zu verhindern. Die strengen Anforderungen an die Stromversorgung und das Wärmemanagement für den Betrieb eines Hochleistungs-FPGA mögen etwas abschreckend sein, aber die Möglichkeiten solcher Geräte werden heute einfach durch nichts anderes auf dem Markt erreicht.