Schwerpunkte

Xilinx Developer Forum 2018

Versal: Xilinx' SoC-Plattform der nächsten Generation

02. Oktober 2018, 18:00 Uhr   |  Frank Riemenschneider

Versal: Xilinx' SoC-Plattform der nächsten Generation
© Xilinx

Unter der Bezeichnung Versal wird Xilinx die Chips seiner Adaptive Compute Acceleration Platform (ACAP) verkaufen. Ab 2019 kommen insgesamt 6 Produktfamilien auf den Markt. ACAP soll das Beste aus den Welten CPU, GPU und FPGA verbinden und einfach in Software zu programmieren sein.

Auf seiner Entwicklerkonferenz XDF 2018 im kalifornischen San Jose hat Xilinx die schon Anfang 2018 seinerzeit nebulös angekündigte nächste Produktgeneration vorgestellt, die ab 2019 in sechs Produktfamilien erhältlich sein wird. Unter dem Namen Versal (von “Versatile” und “Universal”, also vielseitig und universell) werden die Chips der sogenannten Adaptive Compute Acceleration Platform (ACAP), die wir jetzt im Detail vorstellen wollen, vermarktet – laut Xilinx zu den “üblichen Preisen”, die man heute von den Ultrascale-Chips kennt.

Warum ACAP?

Die jüngsten technischen Herausforderungen in der Halbleiterfertigung verhindern die weitere Skalierung der traditionellen "one size fits all" CPUs. Infolgedessen erforscht die Halbleiterindustrie alternative domänenspezifische Architekturen, einschließlich solcher, die zuvor auf bestimmte extreme Leistungssegmente wie vektorbasierte Verarbeitung (DSPs, GPUs) und vollständig parallele programmierbare Hardware (FPGAs) verlagert wurden. Es stellt sich die Frage, welche Architektur für welche Aufgabe am besten geeignet ist.

  • Skalare Verarbeitungselemente (z.B. CPUs) sind bei komplexen Algorithmen mit diversen Entscheidungsbäumen und einem breiten Satz von Bibliotheken sehr effizient - aber in der Leistungsskalierung begrenzt.
  • Vektorverarbeitungselemente (z.B. DSPs, GPUs) sind bei einem engeren Satz von parallelisierbaren Rechenfunktionen effizienter - aber sie erfahren aufgrund der unflexiblen Speicherhierarchie Latenz- und Effizienzeinbußen.
  • Programmierbare Logik (z.B. FPGAs) kann präzise an eine bestimmte Rechenfunktion angepasst werden, was sie am besten für latenzkritische Echtzeitanwendungen (z.B. Automotive Driver Assist) und unregelmäßige Datenstrukturen (z.B. genomische Sequenzierung) macht - aber algorithmische Änderungen haben traditionell Stunden zum Kompilieren im Vergleich zu Minuten in Anspruch genommen.

Um diese Fragen zu beantworten, hat Xilinx eine neue heterogene Rechenarchitektur, die Adaptive Compute Acceleration Platform (ACAP), entwickelt (Bild, das Blockdiagramm ist insofern inkorrekt, als dass die DSP-Blöcke in der programmieren-Logik-Fabric integriert sind und nicht wie die AI-Engines außerhalb liegen), die das Beste aus allen drei Welten liefern soll - Vektor- und Skalarverarbeitungselemente, die eng mit der programmierbaren Logik (PL) gekoppelt sind, alle verbunden über ein bandbreitenstarkes Network on Chip (NoC), das einen Zugriff über Memory-Mapping auf alle drei Verarbeitungselementtypen ermöglicht. Diese eng gekoppelte Hybridarchitektur ermöglicht eine drastischere Anpassung an Workloads und Leistungssteigerung als jede einzelne Implementierung allein.

Eine solche Leistungssteigerung erfordert eine ähnlich drastische Verbesserung der Werkzeuge mit dem Schwerpunkt auf Benutzerfreundlichkeit. ACAPs sind nativ softwareprogrammierbar und ermöglichen C-basierte und Framework-basierte Designabläufe. Die integrierte Shell besteht aus einer cache-kohärenten Hostschnittstelle (PCIe- oder CCIX-Technologie) mit integriertem DMA, einem NoC und integrierten Speichercontrollern, wodurch die Notwendigkeit der RTL-Entwicklung entfällt.

Die neue ACAP-Architektur führt auch zu einer Verbesserung der Benutzerfreundlichkeit. Die Xilinx-Toolchain unterstützt mehrere Eingabemethoden für jeden Entwicklertyp. So können beispielsweise bestimmte Anwendungen (wie z.B. AI Machine Learning Inference) auf Framework-Ebene kodiert werden (z.B. Caffe, TensorFlow); andere können in C mit voroptimierten Bibliotheken kodiert werden (z.B. Filter für 5G-Funk). Traditionelle Hardwareentwickler können ihre bestehende RTL weiterhin über den traditionellen RTL-Fluss auf ACAP portieren.

Die drei wesentlichen Vorteile eines ACAPsind sicherlich die SW-Programmierbarkeit - die Fähigkeit, schnell optimierte Anwendungen durch softwareabstrahierte Toolchains zu entwickeln -, Beschleunigungsmetriken für ein breites Anwendungsspektrum von künstlicher Intelligenz, intelligenten Netzwerkschnittstellenkarten, Speichern, 5G-Wireless, selbstfahrenden Autos, fortschrittlichen modularen Radargeräten und optischen Terabit-Netzen sowie die dynamisch anpassbare Rekonfiguration, also die Möglichkeit, die Hardware neu zu konfigurieren, um neue Workloads innerhalb von Millisekunden zu beschleunigen.

Xiinx
© Xilinx

Genereller Aufbau der ACAP-Plattform.

Hard- und Software optimiert für parallele heterogene Berechnungen

ACAPs verfügen über eine Mischung aus skalaren Engines, adaptierbaren Engines und intelligenten Engines. Der NoC verbindet sie alle über eine speicherabgebildete Schnittstelle mit einer Gesamtbandbreite von 1Tb/s oder mehr. Zusätzlich zum NoC ermöglicht die massive Speicherbandbreite, die durch programmierbare Logik (und integrierte RAM-Blöcke) ermöglicht wird, programmierbare Speicherhierarchien, die für individuelle Rechenaufgaben optimiert sind. Dies führt zur Vermeidung der hohen Latenzzeiten und der Latenzunsicherheit, die anderen cachebasierten Rechnerarchitekturen eigen ist.

Die Skalar-Einheiten bestehen aus dem Dual-Core Arm Cortex-A72 und bieten eine 2-fache Leistungssteigerung gegenüber dem Arm Cortex-A53-Kern der vorherigen Generation von Xilinx. Eine Kombination aus der Architektur und Leistungssteigerungen durch den 7nm- FinFET-Prozess von TSMC ergibt eine zweifache Verbesserung der DMIPs/W gegenüber der früheren 16nm-Implementierung. Die ASIL-C-zertifizierten UltraScale+ Cortex-R5 Skalar-Engines migrieren auf 7nm mit zusätzlichen Sicherheitsfunktionen auf Systemebene, basierend auf den Erfahrungen aus den aktuellen automobilen Volumenimplementierungen. Leider waren zum Design-Start der Xilinx-Plattform der wesentlich energieeffizientere Cortex-A73 und der Cortex-R52 mit verbesserter Interrupt-Latenz noch nicht verfügbar.

Die Adaptable-Engines bestehen aus programmierbaren Logik- und Speicherzellen, die neu designt wurden und laut Xilinx die schnellste programmierbare Logik der Branche darstellen. Zusätzlich zur Unterstützung von Legacy-Designs können diese Strukturen zu Speicherhierarchien umprogrammiert werden, die auf eine bestimmte Rechenaufgabe zugeschnitten sind. Dies ermöglicht es, eine viel höhere Speicherbandbreite pro Recheneinheit zu erreichen als GPUs und CPUs selbst der neuesten Generationen.

Die AI-Engines, die auf der dritten Seite im Detail beschrieben werden, arbeiten mit Vektorbefehlen (VLIW) und SIMD-Anweisungen und sind mit 100 Terabit/s Verbindungs- und Speicherbandbreite verbunden. Sie ermöglichen laut Xilinx eine 5-10fache Leistungssteigerung für Machine Learning und Digital Signal Processing (DSP) Anwendungen.

Softwareprogrammierbarkeit

Das gesamte Versal-Device ist so konzipiert, dass es mit Hilfe von Software programmierbar ist, ohne dass Hardwarekenntnisse erforderlich sind: Daten- und KI-Wissenschaftler können Anwendungen bereitstellen, die in einem Standard-Software-Framework erstellt wurden, und diese mit einem Versal ACAP beschleunigen. Software-Anwendungsentwickler können jede Softwareanwendung mit einem Versal ACAP beschleunigen, ohne Hardwarekenntnisse zu benötigen, indem sie die einheitliche Software-Entwicklungsumgebung von Xilinx verwenden. Hardware-Designer können weiterhin mit der Vivado Design Suite entwerfen und gleichzeitig von der verkürzten Entwicklungszeit über die integrierten I/O-Schnittstellen und die NoC-Verbindung der Versal-Plattform profitieren.

Die anpassbare Schnittstellenlogik ermöglicht Zugriff auf Off-Chip-Schnittstellen. Dazu gehört eine Standardschnittstelle zu einem externen Host-Prozessor. In Rechenzentrumsapplikationen befindet sich die Softwareanwendung typischerweise auf einer Host-CPU und nicht auf den eingebetteten Mikroprozessoren. Die Schnittstelle zwischen der Host-CPU und den programmierbaren Ressourcen der Versal-Plattform wird als Shell bezeichnet. Die integrierte Shell beinhaltet eine vollständig konforme, cache-kohärente Verbindung für Beschleuniger (CCIX) oder PCIe Gen4x16-Schnittstelle zum Host, DMA-Controller, einen Cache-Kohärenzspeicher und integrierte Speichercontroller.

Der NoC macht jede Hardwarekomponente und die Soft-IP-Module über eine speicherabgebildete Schnittstelle untereinander und mit der Software leicht zugänglich. Es bietet ein standardisiertes, skalierbares Hardware-Framework, das die Kommunikation zwischen den heterogenen Engines und der Schnittstellenlogik ermöglicht.

Heterogene Beschleunigung

Während programmierbare Logik- (FPGA) und vektorbasierte Implementierungen (DSPs, GPUs) in letzter Zeit große Leistungssteigerungen gegenüber CPUs aufweisen, kommt der wahre Nutzen der ACAP-Architektur erst dann richtig zum Tragen, wenn Entwickler mehr als einen Typ des Versal ACAP-Compute-Elements nutzen, um ein eng gekoppeltes Rechenmodell zu ermöglichen.

Es wurde viel Aufmerksamkeit auf die Genauigkeit der Recheneinheit (FP32 versus FP16 versus INT16 versus INT16 versus INT8, etc.) gelegt, aber die Divergenz der Speicherhierarchieanforderungen zwischen den Netzwerktypen hat dazu geführt, dass viele der neuesten KI-Inferenzmaschinen stark an Effizienz für verschiedene Netzwerke verloren haben. So benötigen die derzeit modernsten maschinell lernenden Inferenzmaschinen beispielsweise vier HBM-Speicher (7,2Tb/s externe Speicherbandbreite), um ihre Spitzenleistung zu erreichen - aber ihre cachebasierte Speicherhierarchie arbeitet nur mit einer Effizienz von etwa 25-30% und schafft erhebliche Latenzunsicherheit für Echtzeitanwendungen. Die Lösung besteht darin, die Vektorverarbeitung intelligenter Engines um eine programmierbare Speicherhierarchie zu erweitern, die präzise für jeden Netzwerktyp optimiert und durch die massive Parallelität der FPGA-Logik ermöglicht wird.

So ermöglicht beispielsweise eine Versal-Plattformimplementierung von GoogLeNet laut Xilinx einen 43-fach höheren Durchsatz als die heutige Spitzen-CPU Skylake Platinum und etwa das 3-fache der heutigen Spitzen-Grafikkarte TeslaV100 von Nvidia - und das alles bei deutlich geringerer Leistungsaufnahme.

Rechenzentren und künstliche Intelligenz

Da Rechenzentrumsanwendungen für neuronale Netze immer fortschrittlicher werden, können mehrere neuronale Netze miteinander verbunden werden, was den Bedarf an neuronaler Netzwerkleistung mit geringer Latenz stark erhöht. Beispielsweise erfordert die Echtzeit-Sprachübersetzung Sprache zu Text, natürliche Sprachverarbeitung, ein Empfehlungssystem, Text zu Sprache und dann Sprachsynthese. Das bedeutet, dass der Anteil des neuronalen Netzwerks am gesamten Latenzbudget für diese Anwendung mit 5 multipliziert wird. Da die Anzahl der Echtzeitanwendungen weiter steigt, ist es für Rechenzentrumskunden wichtig, sich für eine Technologie zu entscheiden, die skalierbar ist, um mit ihren zukünftigen Anforderungen Schritt zu halten.

Die Anforderungen an die Latenzzeit neuronaler Netze steigen weiter an, da immer komplexere Interaktionen modelliert werden (menschliche Interaktion, Finanzhandel) und sicherheitskritische Anwendungen an Bedeutung gewinnen (z.B. Automotive, Industrie).

Unter diesen Umständen nimmt die Leistung der festen, cachebasierten Speicherhierarchie von CPU- und GPU-basierten Lösungen deutlich ab. Selbst eine High-End-CPU erreicht eine Latenz von nur 5 ms, und unter 7 ms verschlechtert sich auch die Leistung einer High-End-GPUs erheblich. Das Versal-ACAP erreicht laut Xilinx eine Latenzzeit von unter 2 ms. Messungen von Xilinx zeigten beim neuronalen Netzwerk GoogLeNet und einer Latenzzeit von 2 ms einen 8x höheren Durchsatz (Bilder/s) als beim Einsatz einer High-End-GPU von Nvidia.

Xilinx neue Versal-Chips

Xilinx
Xilinx
Xilinx

Alle Bilder anzeigen (15)

5G – Drahtlose Kommunikation

Der unersättliche Hunger nach Wireless-Bandbreite hat zu einem rasanten "10-fachen alle 10 Jahre" Innovationstempo in der Mobilfunkbranche geführt. Bei den Olympischen Spielen 2020 wird die Industrie mit ersten öffentlichen Demonstrationen der 5. Generation der Funktechnologie, genannt "5G", beginnen. Die Mehrheit dieser ersten Implementierungen wird aus bestehenden Xilinx-Devices, insbesondere aus dem16nm-RFSoC-Chip, bestehen,

Dennoch bleiben zwei Herausforderungen: das Streben nach einem breiteren Spektrum zu niedrigeren Kosten und die Hinzufügung von maschinell lernenden Inferenztechnologien im Radio, um die Strahlführungsalgorithmen zu verbessern, die Übergabeverfahren zu verbessern und selbstheilende Netzwerke zu ermöglichen.

Traditionell haben einige Mobilfunkanbieter ihre Kosten durch die Implementierung von Vektor-DSP-basierten ASICs gesenkt. Die Integration einer intelligenten Engine in Versal ACAPs beseitigt weitgehend die traditionelle Kostenlücke zwischen ASICs und FPGAs, da sie 5x mehr Single-Chip-TMACs liefert als ein Ultrascale+-HF-SoC.

 

Während ein 16nm Zynq UltraScale+ RFSoC eine 200MHz 16x16 Remote Radio Unit (RRU) implementieren kann, kann ein 7nm Versal Device eine volle 800MHz 16x16 RRU implementieren.

Laut Xilinx können mit Hilfe von ACAP-Chips die Strahlsteuerungs- und Übergabeargorithmen um einen zusätzlichen Faktor von zwei gegenüber herkömmlichen definierten Algorithmen verbessert werden und damit 85 % des theoretischen Grenzwerts erreicht werden. Xilinx ist damit nach eigenen Angaben der einzige Anbieter in der Branche, der alle vier Schlüsseltechnologien in einem einzigen Chip vereint: Direct-RF Sampling A/D-Wandler und D/A-Wandler, integrierte SD-FEC-Codes, vektorbasierter DSP und über ein Framework programmierbare Machine Learning Inference Engines - das erste echte 5G Radio-on-Chip der Branche.

Fahrerassistenzsysteme (ADAS)

Bis heute hat Xilinx über 150 Millionen FPGAs und SoCs in verschiedene Automotive Sockel und über 50 Millionen Einheiten speziell in ADAS-Anwendungen geliefert. Automotive ist das am schnellsten wachsende Marktsegment von Xilinx in den letzten zwei Jahren.

Xilinx' skalierbare Reihe von automobilgerechten Versal ACAPs vereint eine energieeffiziente Skalr-Engine mit Dual-Core Cortex-R5s, programmierbaren I/Os und intelligenten KI-Engines mit geringer Latenzzeit, die KI-unterstützte automatisierte Fahrlösungen mit 15x mehr INT8 Machine Learning Leistung ermöglichen als die heutigen FPGA-basierten ASIL-C-zertifizierten ADAS-Lösungen.

Darüber hinaus verbessert die Möglichkeit, das gesamte Device über Over-the-Air-Hardware-Updates neu zu programmieren. Schließlich bietet die programmierbare I/O den Anbietern die Flexibilität und Anpassungsfähigkeit, um Sensortypen zu ändern, ohne die Verzögerungen und Kosten, die mit dem Warten auf ASSP- oder GPU-Respins verbunden sind.

Bei all den Innovationen im Automobilbereich ist es wichtig, Code-Portabilität und Skalierbarkeit über mehrere Plattformen hinweg zu bieten, von 5-10W Windschutzscheiben-Frontkameradesigns über 20-30W In-Cabin-Zentralmodule bis hin zu 100W+ flüssigkeitsgekühlten, im Kofferraum montierten Supercomputern, die alle mit dem gleichen Programmiermodell ausgestattet sind.

Die Latenz ist ein besonders kritischer Leistungsfaktor bei der Betrachtung von Fahrzeugen, die mit automobiler Geschwindigkeit fahren. Bei 100 km/h kann die Differenz von wenigen wenigen Millisekunden in der Reaktionszeit verschiedener ADAS-Systeme einen erheblichen Einfluss auf die Effektivität eines Systems haben.

Anpassungsfähigkeit

Einer der Hauptvorteile der programmierbaren Logiktechnologie besteht darin, dass Hardware-Upgrades im Feld möglich sind. Dies wird heute in drahtlosen und optischen 4G-Netzwerken sowie in autonomen Fahrprodukten für die Automobilindustrie eingesetzt.

Xilinx Versal ACAPs erweitern diese In-Field-Upgrade-Funktionalität, indem sie eine höhere Abstraktionsebene (C- oder Framework-Schnittstellen) und eine 8x schnellere partielle Rekonfiguration ermöglichen, was ein viel schnelleres Kernel-Swapping ermöglicht.

Das zentrale Leistungsversprechen von FPGAs ist seit langem die Fähigkeit, Designs in der Praxis zu ändern. Ob zur Behebung von Fehlern, zur Optimierung von Algorithmen oder zum Hinzufügen völlig neuer Funktionen, die programmierbare Logik bietet eine einzigartige Flexibilität gegenüber allen anderen Halbleiteroptionen. Die Versal-ACAPs gehen einen Schritt weiter und beschleunigen laut Xilinx die Konfigurationszeit um fast eine Größenordnung, indem sie das dynamische Austauschen von Teilbitstreams in Millisekunden ermöglichen.

Einer der größten Vorteile der programmierbaren Logik ist außerdem die Fähigkeit, die Speicherhierarchie neu zu konfigurieren und so für verschiedene Rechenlasten zu optimieren. So variieren beispielsweise auch im Rahmen neuronaler Netze, die sich auf die Bilderkennung konzentrieren, der Speicherbedarf und die Rechenoperationen pro Bild je nach Algorithmus stark. Die programmierbare Speicherhierarchie ermöglicht es, die programmierbare Logik anzupassen, um die Rechenleistung für jedes von ihr unterstützte Netzwerk zu optimieren.

Infolgedessen können Versal ACAPs bei der Implementierung neuronaler Netzwerke über eine Kombination aus Vektorprozessoren und programmierbarer Logik laut Xilinx eine Rechenleistung von fast dem Doppelten der führenden GPUs erreichen, die Vektorverarbeitung mit einer festen Speicherhierarchie implementieren.

Fazit

Die jüngsten technischen Herausforderungen haben die Branche gezwungen, Optionen zu erforschen, die über die homogene skalare CPU-Verarbeitungslösung "one size fits all" hinausgehen. Die Vektorverarbeitung (DSP, GPU) löst einige Probleme, stößt aber aufgrund der ineffizienten Nutzung der Speicherbandbreite auf traditionelle Skalierungsprobleme.

Traditionelle FPGA-Lösungen bieten eine programmierbare Speicherhierarchie, aber der Hardware-Flow war ein Hindernis für die Akzeptanz. Die Lösung besteht für Xilinx darin, alle drei Elemente mit einem neuen Tool-Flow zu kombinieren, der eine Vielzahl unterschiedlicher Abstraktionen bietet - vom Framework über die C- bis zur RTL-Ebene: eine adaptive Compute Acceleration Platform (ACAP).

Die ACAP-Architektur erweitert die Möglichkeiten der programmierbaren Logik allein erheblich. Der Hybrid aus programmierbaren Logik- und Vektorverarbeitungselementen ermöglicht – wenn die Zahlen von Xilinx stimmen - eine disruptive Erhöhung der Rechenleistung für Anwendungen im Rechenzentrum, in drahtlosen Netzwerken, in der Fahrerunterstützung für Kraftfahrzeuge und in der drahtgebundenen Kommunikation.

Offenlegung: DESIGN&ELEKTRONIK hat auf Einladung von Xilinx am XDF in San Jose teilgenommen, die Reisekosten wurden zur Gänze von Xilinx bezahlt. Unsere Berichterstattung ist davon nicht beeinflusst und bleibt gewohnt neutral und kritisch. Der Artikel ist, wie alle anderen auf unserem Portal, unabhängig verfasst und unterliegt keinerlei Vorgaben seitens Dritter.

Seite 1 von 3

1. Versal: Xilinx' SoC-Plattform der nächsten Generation
2. Die neuen Produkte und die Roadmap
3. Die AI-Engine unter der Lupe

Auf Facebook teilenAuf Twitter teilenAuf Linkedin teilenVia Mail teilen

Verwandte Artikel

XILINX GmbH