Mit dem Erreichen wirtschaftlicher und physikalischer Grenzen bei der Herstellung integrierter Schaltkreise bewegt sich die Halbleiterindustrie auf ein neues technologisches Zeitalter zu. Miniaturisierung allein bringt nicht mehr den gewünschten Gewinn an Leistungsfähigkeit – alternative Systemarchitekturen sind gefragt. Der nächste logische Schritt könnte dabei darin bestehen, FPGA-Strukturen und CPUs in Gestalt von Embedded-FPGAs zu kombinieren.

Eigenständige FPGAs wurden erstmals etwa 1984 durch Xilinx und Actel kommerzialisiert. Diese Produkte kamen hauptsächlich in industriellen Anwendungen mit geringen Stückzahlen und für das Prototyping zum Einsatz und erwiesen sich als überaus nützlich, um Designs auf einfache Weise mit einem großen Umfang an programmierbaren Logikressourcen zu versehen.

Die nächste Generation von FPGAs von Altera Lucent und Agere fanden dann in Netzwerk- und Telekommunikationsanwendungen weite Verbreitung. Seit 2005 gewannen FPGAs in sämtlichen Bereichen der Elektronik fortlaufend an Verbreitung und boten dabei entscheidende Verbesserungen in Leistungsfähigkeit, Stromverbrauch und Kosten. Inzwischen ist das Preisniveau so weit gefallen, dass FPGAs auch in stückzahlintensiven Hochleistungsanwendungen einen beträchtlichen Zusatznutzen bieten können und sogar als Ersatz für spezielle DSPs, GPUs und MCUs in Frage kommen.

CPU und FPGA: Stärken gezielt nutzen

Um ein Maximum an Leistungsfähigkeit aus der vorhandenen Halbleitertechnologie herauszuholen, ist die Kombination von CPU- und FPGA-Strukturen in einem SoC der nächste logische Schritt.

Um ein Maximum an Leistungsfähigkeit aus der vorhandenen Halbleitertechnologie herauszuholen, ist die Kombination von CPU- und FPGA-Strukturen in einem SoC der nächste logische Schritt. Achronix

FPGAs und CPUs haben die Gemeinsamkeit, dass sie eine Kombination aus Speicher und Logik zum Vorhalten und Verarbeiten von Daten und Befehlen nutzen. Es gibt jedoch einen grundsätzlichen Unterschied zwischen beiden. Eine CPU ist für schnelle Kontextwechsel optimiert: sie lädt Befehle und Daten aus Registern und Speicherzellen und kann innerhalb weniger Zyklen einen komplett neuen Satz an Instruktionen und Daten laden.

Die Funktionalität eines FPGAs zu rekonfigurieren ist im Gegensatz dazu ein relativ langwieriger und ressourcenintensiver Prozess. Dieser erfordert das Übertragen einer komplett neuen Konfiguration in das Konfigurations-RAM, sodass es nicht praktikabel ist, diesen Vorgang allzu häufig durchzuführen. Einmal konfiguriert, kann ein FPGA jedoch digitale Logik mit einer Geschwindigkeit emulieren, die an das Tempo fest verdrahteter Schaltungen heranreicht. Während die Stärken einer CPU also in der Fähigkeit zur Verarbeitung wechselnder Aufgaben liegen, brilliert das FPGA bei der Ausführung sich wiederholender (insbesondere stark parallelisierbarer) Tätigkeiten, die über Tausende von Zyklen hinweg immer gleich sind und nur gelegentlich neu definiert werden.

In der Industrie gibt es klare Indizien dafür, dass eine engere Integration beider Bausteintypen, wie sie beim Embedded-FPGA durchgeführt wird, einen echten Mehrwert bieten kann. Als prominentes Beispiel kann hier die Übernahme von Altera durch Intel gesehen werden. Ziel dieser Akquisition ist die Beschleunigung von Rechenzentrumsfunktionalität.

Das zweite Indiz ist das Catapult-Programm von Microsoft. Das Unternehmen behauptet, den Durchsatz von Servern in Rechenzentren durch die Integration von FPGAs in jeden Server verdoppeln und Bing Search, Azure und Microsoft 365 beschleunigen zu können. Die Industrie scheint also Vertrauen in die Architekturen zu haben, die CPU- und FPGA-Strukturen in ein und demselben Baustein kombinieren. Die FPGA-Strukturen werden dabei in Form von IP-Blöcken in die CPUs integriert und profitieren dabei von verbesserten Performance-Synergien.

 

Wie das Speedcore-IP von Achronix im Detail aussieht und wie es sich in ein SoC-Subsystem integrieren lässt, erfahren Sie auf der nächsten Seite.

Seite 1 von 212