ASIC vs. FPGA vs. SoC: Was ist der Unterschied?

Diese drei Begriffe beschreiben unterschiedliche Dinge. Ein ASIC ist ein für eine Anwendung maßgeschneiderter Chip. Ein FPGA ist ein Chip, dessen Logik sich nach der Fertigung umprogrammieren lässt. Ein SoC (System on Chip) ist ein Chip, der ein ganzes System integriert, etwa CPU-Kerne, eine GPU, Speichercontroller und I/O. Die Begriffe überschneiden sich: Ein Smartphone-SoC wird meist als ASIC gebaut, und manche FPGAs enthalten Prozessorkerne und sind damit ebenfalls SoCs.

AspektASICFPGASoC
Was es istEin Chip, der für eine bestimmte Anwendung entworfen und gefertigt wirdEin Chip mit programmierbaren Logikblöcken und Verdrahtung, den man nach der Fertigung konfiguriertEin Chip, der die Hauptbestandteile eines Systems integriert: Prozessorkerne, Speichercontroller, I/O und Beschleuniger
FlexibilitätNach der Fertigung festRekonfigurierbar, sogar im FeldDie Hardware ist fest, aber die Prozessoren führen Software aus, die aktualisiert werden kann
Leistung und EnergieeffizienzAm besten: Die Logik ist auf die Aufgabe zugeschnittenDazwischen: Die programmierbare Struktur kostet Fläche, Geschwindigkeit und LeistungHoch, dank dedizierter Beschleuniger für häufige Aufgaben
Vorabkosten (NRE)Sehr hoch: Entwurf, Verifikation und Masken können bei fortgeschrittenen Knoten Millionen bis Hunderte Millionen Dollar kostenNiedrig: Man kauft ein fertiges BauteilHoch, ähnlich wie bei einem ASIC, da es ein maßgeschneiderter Chip ist
Stückkosten bei hohem VolumenAm niedrigstenPro Stück höherNiedrig
Time-to-MarketLang: Entwurf, Verifikation und Fertigung dauern viele Monate bis JahreKurz: Ein Entwurf kann in Tagen oder Wochen laufenLang
Behebung eines EntwurfsfehlersTeuer: Meist ist ein neuer Maskensatz nötig (Respin)Einfach: das Bauteil neu programmierenTeuer, obwohl sich manche Probleme per Software umgehen lassen
Typische EinsatzgebieteKryptowährungs-Miner, Netzwerk- und Speichercontroller, dedizierte CodecsPrototyping, Produkte mit geringen Stückzahlen, Telekommunikations- und Messtechnik, HardwarebeschleunigungSmartphones, Tablets, Spielkonsolen und viele eingebettete Geräte

Die Zahlenangaben sind typische Größenordnungen und variieren je nach Prozessgeneration und Produkt.

Wann welches einsetzen

ASIC
Wenn das Volumen hoch und die Funktion stabil ist und Sie die beste Leistung und Energieeffizienz pro Stückkosten brauchen.
FPGA
Wenn das Volumen gering ist, sich die Anforderungen ändern können oder Sie schnell starten müssen: Prototypen, frühe Produkte, Spezialgeräte.
SoC
Wenn Sie ein vollständiges Produkt auf einem Chip wollen, etwa ein Smartphone. In der Praxis wird ein SoC als ASIC entworfen, und FPGAs dienen oft dazu, ihn vor der Fertigung zu prototypisieren.

FAQ

Ist ein SoC ein ASIC?

In der Praxis meistens ja. SoC beschreibt, was auf dem Chip integriert ist (ein ganzes System), ASIC dagegen, wie er entworfen wird (maßgeschneidert für eine Anwendung). Ein Smartphone-SoC wird normalerweise als ASIC gebaut.

Warum werden FPGAs zum Prototyping von ASICs verwendet?

Ein FPGA lässt sich in Stunden umprogrammieren, sodass Entwickler ihre Logik testen und korrigieren können, bevor sie für teure Masken zahlen. Ein nach der Fertigung entdeckter Fehler in einem ASIC erfordert meist einen Respin.

Wann ist ein ASIC günstiger als ein FPGA?

Bei hohem Volumen. Ein ASIC hat sehr hohe Vorabkosten, aber die niedrigsten Kosten pro Stück, während ein FPGA geringe Vorabkosten, aber einen höheren Preis pro Stück hat.

Sind FPGAs langsamer als ASICs?

In der Regel ja. Die programmierbare Struktur kostet Fläche, Geschwindigkeit und Leistung, sodass ein maßgeschneiderter ASIC dieselbe Aufgabe schneller und energieeffizienter erledigt.

Wichtige Begriffe erklärt

ASIC (anwendungsspezifischer IC)
Ein speziell für eine Anwendung oder einen Kunden entworfener IC. Er übertrifft Universalchips bei Leistung und Verbrauch, doch wegen hoher Entwicklungskosten eignet er sich für Anwendungen mit hohen Stückzahlen.
FPGA
Chip, dessen Logikkonfiguration der Anwender nach der Fertigung neu programmieren kann. Er wird für Prototypen, Kleinserien und die ASIC-Verifikation verwendet.
SoC (System-on-Chip)
Ein IC, der die für ein System nötigen Funktionen wie CPU, GPU, Speichercontroller und Kommunikation auf einem Chip integriert. Das Herzstück eines Smartphones ist ein typisches Beispiel.

Weitere Vergleiche