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. (Bild: Achronix)

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

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 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 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.

Speedcore-IP im Detail

Schematischer Überlick, wie sich Speedcore-IP in ein SoC-Subsystem einbinden lässt. Mit Embedded-FPGA verringern sich Latenzzeiten und Stromaufnahme des Systems deutlich.

Schematischer Überlick, wie sich Speedcore-IP in ein SoC-Subsystem einbinden lässt. Mit Embedded-FPGA verringern sich Latenzzeiten und Stromaufnahme des Systems deutlich. Achronix

Achronix hat auf Basis seiner früheren Familie eigenständiger FPGAs mit

hoher Leistungsfähigkeit und optimierter Routing-Architektur Embedded-FPGAs vorgestellt. Das Embedded-FPGA-IP mit der Bezeichnung Speedcore demonstriert viele der möglichen Vorteile, die das Integrieren von FPGA-Strukturen in CPU/SoC-Bausteine bieten kann. Wie sich das Speedcore-IP konkret in ein SoC-Subsystem einbinden lässt zeigt die Abbildung.

Weil sich beim Embedded-FPGA alle Strukturen in einem Baustein befinden, müssen die Signale keinerlei SerDes-Stufen oder Protokoll-Encoder (zum Beispiel PCIe) durchlaufen. Damit fallen die Latenzzeiten um einen Faktor 10 geringer aus und es steht aufgrund der chipinternen Verbindungen eine größere Bandbreite zur Verfügung. Außerdem lassen sich Embedded-FPGA-Elemente so anlegen, dass sie Cache-kohärent sind. Zusätzlich hat sich gezeigt, dass die Integration von FPGA-Strukturen den Stromverbrauch des Chips deutlich reduziert. Diese Verlustleistungs-Ersparnis äußerst sich auch auf der System-Ebene, da mit der Integration von FPGA-Strukturen in den Chip auf eine Vielzahl unterstützender Bauelemente (zum Beispiel Taktgeneratoren, passive Bausteine und Kühlmaßnahmen) verzichtet werden kann.

Anders als diskrete FPGAs, die nur mit vorgegebenen Größen und Performance-Bereichen angeboten werden, lässt sich die Aufteilung zwischen Logikgattern und Speichern in einem Embedded-FPGA-IP-Block in den Designtools dynamisch und praktisch ohne Einschränkungen verändern. Somit können Designer jeweils genau den richtigen Umfang an FPGA-Strukturen vorsehen, der passend für die Beschleunigung der jeweiligen Funktionen ist. Auf diese Weise lässt sich sicherstellen, dass innerhalb eines ein optimales Verhältnis zwischen CPU- und FPGA-Ressourcen existiert und dass die FPGA-Struktur nur so groß wie nötig ist, um die Halbleiterfläche, den Stromverbrauch und die Kosten zu optimieren.

Nicht unerwähnt bleiben sollte, wie wichtig es ist, dass sich beim Embedded-FPGA die FPGA- und CPU-Strukturen auf schnelle und erschwingliche Weise integrieren lassen, ohne dass der Designprozess dadurch wesentlich zeitaufwendiger oder komplexer wird. Die Verfügbarkeit umfangreicher Designtools wird deshalb von entscheidender Bedeutung für die Entwicklung von eingebetteter Hardware dieses Komplexitätsgrads.

Alok Sanghavi

Senior Product Marketing Manager bei Achronix Semiconductor

(na)

Sie möchten gerne weiterlesen?

Unternehmen

Achronix Semiconductor

2953 Bunker Hill Lane
CA 95054 Santa Clara
United States