Kommt das FPGA-Design wieder in Mode?

Erstellt: November 1, 2021
Aktualisiert am: Juli 1, 2024

Aus der ASIC-Revolution der 1970er Jahre entstand die Revolution der MCU, MPU und FPGA, bei der Host-Controller auf einem einzigen Chip mit Logikblöcken und vielen integrierten Funktionen gebaut wurden. Im Jahr 2021 haben einige in der Branche erklärt, dass FPGAs nun die Plattform der Wahl für fortschrittliche Anwendungen sind. Sehen Sie, was die Leute sagen und wo Sie sich für ein FPGA in Ihrem Design entscheiden könnten.

Ich bin nicht alt genug, um mich an die 1970er Jahre zu erinnern, eine Zeit, in der ASICs auf den Markt kamen und letztendlich zu höheren Integrationsniveaus und einer Reduzierung der Formfaktoren beitrugen. Das Erbe der ASICs setzt sich bis heute fort, und beliebte Hersteller bieten weiterhin eine breite Palette von Chips an, die spezialisierte Funktionen mit einem kleinen Fußabdruck ausführen. Einige der Aufgaben, die in einer allgemeinen programmierbaren Logik sehr schwierig zu implementieren gewesen wären, waren plötzlich einfach umzusetzen, als diese Funktionen in einem ASIC mit spezialisierter Logik oder dedizierten Funktionen eingebaut wurden. Früh im selben Jahrzehnt wurden Mikrocontroller von Intel eingeführt, die den Designern alles boten, was sie benötigten, um integriertere Systeme zu bauen, anstatt sich auf diskrete Logikschaltungen zu verlassen.

Nach ASICs und MCUs kamen 1984 die Field-Programmable Gate Arrays mit der ersten Komponente, die von Xilinx eingeführt wurde. Anfangs verwendeten ASIC-Designer FPGAs, um die Logik zu emulieren, die sie in ihren ASIC-Designs implementieren wollten, als eine Art Testplattform. Mit der Zeit wurden FPGAs in mehr Produktionshardware implementiert, entweder als Ergänzung zu typischen ASICs oder um spezielle Logikfunktionen zu implementieren, die in anderen Prozessoren oder ASICs nicht verfügbar waren. Die Anzahl der Schnittstellen, die auf FPGA-Plattformen verfügbar sind, hat sich ebenfalls erweitert, so dass ein FPGA als Host-Controller für jedes eingebettete System verwendet werden kann.

Heute bleibt das FPGA-Design bei erfahrenen eingebetteten Entwicklern beliebt, und die prognostizierten Wachstumsraten auf dem globalen FPGA-Markt liegen zwischen 6,4% und 10% CAGR in den nächsten 6-7 Jahren. Nur zur Information, die obere Schätzung entspricht dem 10,1% prognostizierten CAGR auf dem globalen MCU-Markt. Die Frage für den eingebetteten Designer ist, was treibt die Beliebtheit von FPGAs im Vergleich zu anderen Plattformen an, und sollte ein FPGA Ihr Ausgangspunkt für ein neues Design sein? Wir werden uns diese Fragen genauer ansehen, während wir einige Systemarchitekturoptionen für ein neues eingebettetes System vergleichen.

Was treibt neue FPGA-Designs an?

FPGAs sind schon immer in einigen breiten Anwendungsfällen aufgrund ihrer Anpassungsfähigkeit beliebt gewesen, wie in einem früheren Artikel in diesem Blog besprochen. Einige der hochrangigen Bereiche, in denen FPGAs traditionell erfolgreich waren, umfassen:

  • Implementierung von Speziallogik in kompakten Plattformen, die normalerweise mit langsamer sequenzieller Logik in MCUs implementiert werden müsste

  • Anwendungsbereiche oder Produkte, bei denen die Zeit bis zur Markteinführung kritisch ist aufgrund der langen Entwicklungszeit für ASICs

  • Jede Anwendung, die Hardware-Virtualisierung oder Emulation erfordert

  • Jedes Produkt, das eine schnelle Neuprogrammierung ohne Verbindung zu einem externen System erfordern könnte

Wenn Sie nicht mit FPGA-Design und -Programmierung vertraut sind, aber einige der grundlegenden Ideen kennen, die den FPGA-Betrieb steuern, dann sollte die obige Liste nicht überraschend sein. Dies sind ziemlich breite Bereiche, die man in Betracht ziehen sollte, aber sie übersetzen sich in reale Anwendungen in mehreren Branchen.

FPGAs vs. MPUs/MCUs und ASICs

Sie werden oben bemerken, dass ich viel Zeit damit verbracht habe, ASICs als den Hauptkonkurrenten zu FPGAs zu referenzieren. Tatsächlich ermöglicht die riesige Auswahl an Komponenten es eingebetteten Entwicklern, ihre MCU, Spezialfunktionen mit ASICs und langsame Peripheriegeräte oder Schnittstellen zu mischen und abzugleichen. FPGAs bieten mehrere Vorteile in verschiedenen Bereichen, und es lohnt sich, all diese Optionen zu vergleichen, da sie sich auf ein eingebettetes System beziehen.

Aus der obigen Liste sollte klar sein, welche Rolle FPGAs spielen können: anpassbare Host-Controller für eingebettete Systeme, die anwendungs- und OS-agnostisch sind. Ein FPGA-Design bietet den zusätzlichen Vorteil der Aufrüstbarkeit, solange das Board- und Systemdesign diese Änderungen unterstützen kann. Wenn wir uns einige neuere Anwendungen in der Industrie ansehen, sollte klar sein, warum FPGAs heute beliebter sind, wobei ihre Beliebtheit in naher Zukunft voraussichtlich noch zunehmen wird.

Wichtige Industrienutzer

Es gibt keine einzelne Produktkategorie, die traditionell für den FPGA-Verbrauch verantwortlich war. Seit ihrer Einführung umfassen die wichtigsten Industrieverbraucher von FPGAs Telekomsysteme, Militär- und Luftfahrt, Automobilindustrie, leichte Verbraucherprodukte und sogar die Öl- und Gasindustrie. Tatsächlich wurde einige der ursprünglichen Technologie, die zu FPGAs werden würde, ursprünglich unter Zilog entwickelt, einer Tochtergesellschaft von Exxon, deren geistiges Eigentum später von Xilinx erworben wurde.

Da FPGAs an Beliebtheit gewonnen haben, hat sich der Fokus auf andere Branchen verlagert, die Speziallogik direkt auf einem einzigen Prozessor implementiert benötigen, trotz der riesigen Anzahl von ASICs von vielen Anbietern, die dieselben Designs abdecken könnten. Als Beispiel verwenden viele Mezzaninkarten- und Tochterkartenprodukte auf dem Militär- und Luftfahrtmarkt FPGAs als eine anpassbare eingebettete Computing-Plattform, die extrem schnelle Datenraten mit Zugang zu mehreren Peripheriegeräten und Karten über einen Backplane bietet. Telekommunikation und Netzwerke bleiben ein Anwendungsbereich mit weit verbreitetem FPGA-Design und -Entwicklung aufgrund der schnelleren erforderlichen Zeit bis zur Markteinführung und der relativen Einfachheit von Upgrades, um Änderungen in Standards und Technologieeinführungen zu berücksichtigen.

FPGA-Design und -Entwicklung heute

Die oben hervorgehobenen Bereiche haben keinen Rückgang in der FPGA-Nutzung erlebt. Die Telekommunikation ist ein Bereich, der hervorgehoben werden sollte; als Beispiel ist Huawei einer der weltweit größten Verbraucher von FPGAs, und sie vermarkten sogar eine „FPGA-Cloud“-Plattform, die beschleunigtes Cloud-Computing als Dienstleistung anbietet. Es gibt sogar ein Huawei Cloud GitHub-Repository, um Benutzern den Einstieg in die Anwendungsentwicklung zu erleichtern. Die Nutzung von FPGA in ihrer Infrastruktur hat auch zu ihrer Fähigkeit beigetragen, 5G-Dienste vor anderen Telekommunikationsunternehmen auszurollen. Heute treiben dieselben Vorteile, die oben identifiziert wurden, das FPGA-Design und die Entwicklung in zwei Bereiche voran: Robotik und KI. Während die beiden Bereiche eng miteinander verbunden sind, ist KI wohl ein viel größerer Treiber für neues FPGA-Design und -Entwicklung.

KI treibt FPGA-Design und -Nutzung voran

Führer im FPGA-Bereich prognostizieren, dass die Implementierung von KI in mehr Hardware-Systemen große Veränderungen im Siliziumgebrauch dieser Komponenten bewirken wird. Das soll nicht heißen, dass man keinen MCU in der Robotik oder bei leichtgewichtiger KI verwenden kann; die Verbreitung von KI-Beschleunigermodulen, die über USB oder eine PCIe-Brücke verbunden werden, zeigt einen Versuch, MCU/MPU-Entwickler für intelligente eingebettete Systeme zu unterstützen. Jedoch sind FPGAs eine viel anpassungsfähigere Plattform, auf der Inferenzberechnungen sehr schnell durch Parallelisierung der Berechnung durchgeführt werden können; das FPGA-Gewebe kann an den Algorithmus angepasst werden, wohingegen sequenzielle Logik in GPUs/MCUs/MPUs dies nicht kann.

Eine neuere Komponente, die in Hochleistungs-eingebetteten Systemen verwendet wird, einschließlich Systemen, die On-Board-KI-Inferenz implementieren, ist die Zynq-7000 All Programmable series SoC von Xilinx. Diese Komponente läuft mit bis zu 866 MHz mit einem ARM Cortex-A9-Kern-basierten Anwendungsprozessor. Zusätzliche Schnittstellen wie Gigabit Ethernet, DDR, Flash, PCIe und eine hohe GPIO-Anzahl machen diese Komponente leicht in Edge-Compute-Systeme integrierbar. Langsame Schnittstellen wie I2C und SPI ermöglichen es dem Zynq auch, mit ASICs zu arbeiten, die Daten von analogen Sensoren oder anderen Standard-Schnittstellen (CANBus, RS-485 usw.) erfassen.

Xilinx ist einer der Führer in KI auf FPGAs, und sie bieten viele Entwicklerressourcen. Eine interessante Entwicklung beim Zynq-Prozessor ist die Implementierung von Python auf Zynq, oder PYNQ, wie Xilinx es nennt. Andere FPGA-Anbieter bauen ihre Produktlinien aus, um mit Zynq zu konkurrieren, sodass Entwickler von eingebetteter KI viele Optionen für On-Device-KI-Computing unter Verwendung eines FPGA-Designs haben werden.

Herausforderungen bei der Verwendung von FPGAs

FPGAs sind großartige Plattformen für den erfahrenen Entwickler, der in fortgeschritteneren Anwendungsbereichen arbeitet. Wenn die Landschaft der Standards, ASIC-Lösungen und MCU/MPU-Fähigkeiten fehlen oder sich schnell ändern, ist ein FPGA wahrscheinlich eine bessere Option für ein neues System. Obwohl FPGAs in einer Reihe von Bereichen Erfolg ermöglicht haben, bringen sie ihre eigene Reihe von Hardware- und Entwicklungsproblemen mit:

  • Wärmemanagement: Genau wie ihre MCU/MPU-Verwandten können FPGAs erhebliche Wärmemengen erzeugen, abhängig von der Größe der Komponente. Dies ist keine neue Herausforderung, obwohl sie durch Designanforderungen in kompakten, hochleistungsfähigen Systemen wie Edge Computing oder in Hochleistungs-5G-Geräten verstärkt wird. Einige meiner Kunden haben Wärmeableitungsstrategien betrachtet, die einzigartige Kühlkörper oder die Verbindung zum Gehäuse in diesen Systemen beinhalten.

  • Platzierung und Verdrahtung: In Hochleistungsanwendungen gibt es immer noch eine Herausforderung bei Platzierungs- und Verdrahtungsaufgaben, bei denen proprietäre Anbietersoftware auf das FPGA-Gewebe abgebildet wird. Dies dauert seine Zeit, da Compiler-Software einen Algorithmus verwenden muss, um eine Zuordnung zu finden, die alle Logikfunktionen in den Anwendungen unterstützt. Die Anwendungsbereiche, in denen dies eine Herausforderung darstellt, sind Hochleistungsrechnen und Rechenzentren. Dies könnte auch in der KI problematisch sein, wenn ein FPGA für Systemaufgaben zusätzlich zu Inferenz/Training verwendet wird.

  • Entwicklungsressourcen: Die FPGA-Entwicklergemeinschaft ist bei weitem nicht so groß wie die ASIC + MCU-Gemeinschaft oder die gesamte Open-Source-Softwaregemeinschaft. MCUs sind für unerfahrene Entwickler dank enorm beliebter Plattformen wie Arduino und ESP32 leichter zu verwenden. FPGA-Anbieter haben jedoch viel daran gesetzt, Entwicklern Ressourcen zur Verfügung zu stellen, damit sie schnell Lösungen auf FPGAs implementieren können. Die Anzahl neuer FPGA-Projekte auf GitHub hat auch mit MCU-Projekten Schritt gehalten, wie in der untenstehenden Tabelle gezeigt.

Wie werden FPGAs in der Zukunft aussehen?

Derzeit weisen FPGAs etwa 50% oder mehr der Siliziumfläche für IOs auf, da ältere FPGA-basierte Produkte die Schnittstelle zu einer großen Bandbreite von Peripheriegeräten über mehrere Schnittstellen erforderten. Da der Fokus mehr auf Hochleistungsanwendungen wie KI verlagert wird, seien Sie nicht überrascht, wenn mehr Siliziumfläche AI-Compute-Blöcken gewidmet wird, möglicherweise mit sich entwickelnden Verbindungen und flexibler Datenbewegung zur Laufzeit. Heterogene Integration wird auch in FPGA-SoCs einfließen, wo AI-Blöcke, GPUs/TPUs, Hochbandbreitenspeicher und RF-Frontends in einem einzigen kompakten Paket kombiniert werden.

Obwohl FPGAs ASIC-Funktionen implementieren und bei Bedarf im FPGA-Gewebe neu programmieren können, sind sie immer noch eine ausgezeichnete Ergänzung zu ASIC-basierten Systemen. Eine Designarchitektur, die Sinn macht, ist, alle Funktionen, die möglicherweise Upgrades erfordern, in das FPGA zu platzieren, während die Standardisierung von ASICs verwendet wird, um mit einfacheren Peripheriegeräten wie Sensoren und Datenbussen zu interagieren. Dies reduziert sicherlich die FPGA-Designzeit, da Entwickler sich auf die Perfektionierung der Hochleistungsfunktionen konzentrieren können, die im Endprodukt benötigt werden. Wenn Sie diese Art von Architektur in intelligenten eingebetteten Systemen verwenden möchten, benötigen Sie wahrscheinlich mehrere andere Komponenten:

Wenn Sie Komponenten für Ihr nächstes FPGA-Design suchen, nutzen Sie die erweiterten Such- und Filterfunktionen von Octopart. Wenn Sie die Elektronik-Suchmaschine von Octopart verwenden, haben Sie Zugriff auf aktuelle Distributorenpreise, Teilebestände und Teilespezifikationen, und das alles ist frei zugänglich in einer benutzerfreundlichen Schnittstelle. Sehen Sie sich unsere Seite mit integrierten Schaltkreisen an, um die benötigten Komponenten zu finden.

Bleiben Sie mit unseren neuesten Artikeln auf dem Laufenden, indem Sie sich für unseren Newsletter anmelden.

 

 

 

 

 

Ähnliche Resourcen

Zur Startseite
Thank you, you are now subscribed to updates.