Höhere Abstraktionsebene Altera härtet Gleitkomma-DSPs

Der FPGA-Hersteller bietet Gleitkomma-DSP-Blöcke für die Umsetzung in der aktuellen 20-nm-Arria-10- und kommenden 14-nm-Stratix-10-FPGA- und SoC-Generation als Hard-IP an. Was bringen Sie z.B. in der Bildgebung?

Altera wird eine vollständige Palette von Festnetz- und Gleitkomma-DSPs in Versionen mit einfacher und doppelter Genauigkeit anbieten und damit vielleicht einen weiteren Sargnagel in den ohnehin schrumpfenden Markt für dedizierte DSP-Chips einschlagen.

Die DSP-Blöcke sind für viele Anwendungen nützlich, so z.B. für Überwachungsaufgaben von Satelliten oder Richtantennen. Aber auch Finanzalgorithmen wie Black-Scholes (ein finanzmathematisches Modell zur Bewertung von Finanzoptionen, das von Fischer Black und Myron Samuel Scholes 1973 veröffentlicht wurde und als ein Meilenstein der Finanzwirtschaft gilt) und Flussdynamik-Simulationen werden von ihnen profitieren.

Altera hat in seinem Design Flow eine DSP-Architektur mit variabler Genauigkeit definiert, welche die kombinierte Nutzung von Hard- und Soft-DSP-Blöcken ermöglicht. Der in Form von Hard-IP gelieferte Gleitkomma-Block ist optimiert, um die Anzahl benötigter Logikzellen zu reduzieren und Routing/Verbindungs-Ressourcen einzusparen. Jeder DSP-Block kann mit einer Latenz von drei Taktzyklen eine Gleitkomma-MAC-Operation pro Taktzyklus ausführen. Im Vergleich mit dem älteren Soft-Design verdoppelt sich mit dem neuen Block in etwa die Geschwindigkeit. Im Ergebnis liefern die Arria-10-Derivate bis zu 1,5 TFLOPS und die Stratix-10-Versionen bis zu 10 TFLOPS.

Der neue Hard-IP-Block ergänzt einen Block mit variabler Genauigkeit, der ursprünglich für die Arria-V- und Stratix-V-Chips eingeführt wurde. Der Baustein beinhaltet bis zu 108 Ein- und 74 Ausgänge. Er unterstützt 18×19-bit-Multiplikation, wobei durch einen Voraddierer zwei 18-bit-Eingänge verwendet werden können. Kunden können für komplexe Serien-Filterung einen optionalen zweiten Akkumulator, der als Feedback-Register implementiert ist, definieren. Die DSP-Blöcke werden bei der Kompilierung zur Unterstützung des 18-bit-Modus oder höherer Präzisions-Modi konfiguriert. Die Bausteine enthalten auch eine 64-bit-Bus-Kaskade, um mehrere Busse zu kaskadieren. Nur Multiplikationsfunktionen höherer Ordnung erfordern spezielle FPGA-Logik außerhalb der DSP-Blöcke.

Kunden können mit den Hard-IP-Blöcken vier verschiedene Tools verwenden: Advanced Blockset, OpenCL, MegaCores und Quartus. Der DSP Builder Advanced Blockset benutzt höhere Abstraktionsschichten und bietet die Unterstützung von mehr Algorithmen als der Standard-DSP-Builder. Die Hard-Makros können auch die Vorteile des OpenCL Software Development Kit nutzen; Altera MegaCores implementiert schnelle Fourier-Transformationen, einen FIR-Filter oder andere Algorithmen. Für Low-Level-Funktionen wird die Quartus Design Suite herangezogen. Als Teil eines größeren Designs können die Makros mit der Quartus RTL Toolchain, dem ModelSim-Simulator und Matlab Tools eingesetzt werden. Diese Tools sind besonders effizient bei der Lösung von Vektorpunkt-Operationen und die Hard-Makros unterstützen auch Matrix-Mehrfachoperationen.

Neue Werkzeuge für Design-­Entwicklung

Die verschiedenen Werkzeuge ermöglichen es Entwicklern, Fest- oder Gleitkomma-Modi auszuwählen. Durch die Verwendung der Gleitkomma-Makros statt der Soft-DSP Cores können die Designzyklen für typische FPGAs um sechs bis zwölf Monate reduziert werden. Bei vielen Designs arbeiten Entwickler von Signalverarbeitungs-Algorithmen in einer Gleitkomma-Umgebung und übergeben das Design an einen FPGA-Entwickler, der in einer Festkomma-Umgebung arbeitet. Die DSP-Blöcke ermöglichen einen schlankeren Design-Prozess.

Berkeley Design Technology (BDTI) warnt, dass die Kunden, die nicht mit Matlab und Simulink vertraut sind, vor einer deutlichen Lernkurve stehen, da das Advanced Blockset Tool höhere Schichten eines Algorithmus-basierten Designs nutzt. In einer Studie zur Umsetzung einer Cholefsky-Zerlegung mit dem neuen Werkzeug wurde aber vom BDTI festgestellt, dass das Lernen eines DSP-Block-Designs auf einer höheren Abstraktionsebene die Mühe wert ist, denn durch die Gleitkomma-Hard-IP-Elemente könnten Alteras FPGAs und SoCs viele GPUs, CPUs und DSPs aus heutigen Designs verdrängen. Auch wenn die Vorteile für die Bildgebung alleine die Einführung der Hard-IP-Blöcke rechtfertigen, zeigt sich auch Alteras Bemühen, Kunden zu mehr abstrakten Design-Methoden zu bewegen, z.B. die Unterstützung für OpenCL, ein High-Level-C-Werkzeug für parallele Programmierung.

Es ist nicht sofort mit einer massenhaften Verschiebung von Soft- zu Hard-DSP-Makros zu rechnen, da jeder Ansatz für unterschiedliche Anwendungen je nach Preis, Leistungsaufnahme und Rechenleistung Kompromisse einfordert. Mit der Möglichkeit, durch die Umstellung auf Hard-Makros Logikelemente zu sparen, könnten Kunden aber für Fest- und Gleitkomma-Anwendungen in Zukunft vor allem Hard-DSP-Blöcke nutzen. Der Schlüssel für Altera wird dabei sein, Kunden davon zu überzeugen, dass das Lernen von Design-Methoden auf einer höheren Abstraktionsebene für sie lohnenswert ist.