Erster kommerziell verfügbarer FPGA mit Stacked-Silicon-Interconnect
Xilinx hat mehrere Silizium-Chips nebeneinander auf einem passiven Silizium-Interposer integriert. Auf diese Art und Weise, die oft auch als 2,5D-IC-Technik gezeichnet wird, kann das Unternehmen extrem große FPGAs herstellen. Die Virtex-7-2000T FPGAs haben die doppelte Logikdichte des 28-nm-Bausteins des nächsten Wettbewerbers und sind 2,5-mal so groß wie das größte Virtex-6-FPGA. Das Besondere dieser Architektur ist aber, dass die Bausteine, obwohl sie aus vier Chips bestehen, mit den Entwicklungswerkzeugen und der Designmethode von Xilinx entworfen werden können.
Traditionell haben FPGA-Anbieter ihre neuen Architekturen auf die neusten Halbleiterfertigungsprozesse implementiert, um die Vorteile des so genannten Moore´schen Gesetzes zu nutzen, das besagt, dass sich die Anzahl der Transistoren mit der Einführung einer neuen Halbleiterfertigungstechnik alle 22 Monate verdoppelt. In den letzten Jahrzehnten erlaubte es das Moore´sche Gesetz den FPGA-Anbietern, ständig neue FPGAs anzubieten, die ihre Kapazität im Vergleich zu den Vorgängern verdoppelten.
Für den Baustein Virtex-7-2000T und einige andere Mitglieder der Virtex-7-Familie hat Xilinx die Stacked-Silicon-Interconnect- oder kurz SSI-Technik kreiert, die mehrere Silizium-Chips nebeneinander auf einem passiven Silizium-Interposer integriert. Die werden dann über Metallverbindungen, die durch den Interposer laufen, verbunden, ähnlich der Weise, mit der separate Chips über Metallverbindungen in einer Leiterplatte kommunizieren. Auf diese Weise ist Xilinx in der Lage, Bausteine herzustellen, die das Moore´sche Gesetz überflügeln. Die Virtex-7-2000T FPGAs haben die doppelte Logikdichte des 28-nm-Bausteins des nächsten Wettbewerbers und sind 2,5-mal so groß wie das größte Virtex-6-FPGA. Das Besondere an dieser Architektur ist aber, dass dieser Baustein, obwohl er aus vier Chips besteht, von Entwicklern als ein extrem großes FPGA mit den Entwicklungswerkzeugen und der Designmethode von Xilinx entworfen werden kann.
Zusätzlich zu den 1.954.560 Logikzellen enthält der Virtex-7-2000T-Baustein konfigurierbare Logikblöcke mit insgesamt 305.400 CLB-Slices und maximal 21.550 KBit distributed RAM. Er hat 2.160 DSP-Slices, 46.512 Block-RAMs, 24 Takt-Management-Tiles, vier PCIe-Blöcke und 35 GTX-Transceiver (jeder kann 12,5 Gbit/s übertragen). Er besitzt außerdem 24 I/O-Bänke und insgesamt 1.200 I/Os. Die Auslieferung der Virtex-7-2000T-FPGAs bedeutet für die Anwender den Beginn völlig neuer Designmöglichkeiten.
ASIC- und IP-Emulation sowie Prototypenerstellung
Heutzutage hat ein durchschnittliches Hochleistungs-ASIC- oder -ASSP-Design 420 Millionen Gatter. Wegen dieser hohen Gatteranzahl nutzen über 90 Prozent der Design-Teams Hardware-assistierte Verifikationssysteme, entweder mit kommerziell verfügbaren Emulationssystemen oder durch selbst erstellte ASIC-Prototypen-Boards.
Traditionell waren Unternehmen, die solche Emulationssysteme oder Design-Teams, die Prototypen ihrer Designs erstellen, die ersten Anwender für die größten FPGAs, die ein Hersteller produzieren konnte. Dieser Markt wird besonders vom Virtex-7-2000T mit seiner „More-than-Moore´s“-Kapazität profitieren. Dies ermöglicht es den Firmen, Emulationssysteme mit der Kapazität der nächsten Generation bereits heute anzubieten, den Anwendern die Entwicklungszeit zu verkürzen und neue innovativere Produkte schneller auf den Markt zu bringen.
Die meisten dieser kommerziellen Emulationssysteme enthalten, abhängig von der Größe des ASICs, der IP oder des Systems, das ein Anwender emulieren will, zwei oder mehrere Baugruppen und mehrere Racks mit FPGAs. Die Anwender nutzen Emulationssysteme, um ihre Verifikation zu beschleunigen und sicherzustellen, dass ihre Entwicklungen auch richtig funktionieren. Außerdem, um die richtigen Hardware-Versionen ihres Designs an die Software-Entwickler zu übergeben, damit diese mit der Entwicklung der Software beginnen können und sie nahezu vollendet haben, wenn die Halbleiterfabriken die ersten Prototypen liefern.
In einem typischen Anwendungsfall eines kommerziellen Emulationsmodells entwickeln die Anwender ihr ASIC oder ihre IP zunächst und verifizieren sie funktionell mit traditioneller EDA-Verifikationssoftware. Danach implementieren sie die RTL-Version ihrer Entwicklung in einen kommerziellen Emulator für eine weitere Verifikation der Entwicklung. Jeder Emulatorhersteller bietet üblicherweise seine eigene Software an, die zusammen mit der Design-Software von Xilinx zusammen arbeitet, um die RTL-Version zu synthetisieren und das ASIC-Design in Funktionsblöcke zu partitionieren, die optimal zwischen den FPGAs im Emulator verteilt werden können. Die Software des Emulatorherstellers stellt dann eine Schnittstelle zu einer Workstation oder einem PC her, auf dem unterschiedliche EDA-Verifikationswerkzeuge laufen, um die Entwicklung zu testen, wenn sie auf dem Emulator läuft.
Emulatorenanbieter offerieren häufig preiswerte Varianten ihrer Emulatoren – meist als „Replikate“, oder allgemein als „Prototypingsysteme“ bezeichnet. Diese Varianten emulieren einfach nur die Funktion des ASICs. Die Unternehmen geben diese Systeme an ihre Entwicklungsabteilungen weiter und erhalten damit eine frühe Verfügbarkeit zur Entwicklung von Treibern, Firmware und Applikationen, die auf dem Design laufen. Größere FPGAs erlauben es den Emulatoranbietern, entweder Emulationssysteme mit höherer Kapazität anzubieten, oder Systeme mit kleinerer oder mittlerer Kapazität mit weniger FPGAs zu bauen, was die Verlustleitung senkt sowie die Stückliste verringert und dabei die Taktgeschwindigkeit, mit der das Design läuft, steigert. Der Virtex-7-2000T ist so groß, dass die Emulatorenanbieter damit in der Lage sind, Emulatoren mit nur einem einzigen FPGA anzubieten.
Das FPGA Virtex-7-2000T eignet sich auch für Entwicklungsteams, die sich kein kommerzielles Emulationssystem leisten können, dessen Anschaffung leicht mehr als 1 Mio. Dollar kostet. Deshalb entwickeln viele Design-Teams ihre eigenen kundenspezifischen Baugruppen, um einen Prototypen ihres ASIC zu erstellen und/oder seine Funktion zu emulieren oder gar die Funktion eines ganzen Systems und können damit schnell in die Softwareentwicklung einsteigen. Manchmal erstellen die Anwender von Emulatoren zur Entwicklung ihrer integrierten Schaltung sogar ihre eigenen FPGA-Varianten für ihre Softwareabteilung. Auch für IP-Anbieter ist der Baustein attraktiv. Sie können das FPGA nicht nur dazu nutzen, neue IP-Blöcke zu entwickeln, sondern es auch verwenden, um den Funktionsumfang ihrer Cores potenziellen Kunden zu demonstrieren.
Konsolidierung der Systemarchitektur und Minderung des Stromverbrauchs
Das FPGA Virtex-7-2000T ist auch für Systemarchitekten interessant, die nach Wegen suchen, die Verlustleitung ihrer Systeme zu verringern und gleichzeitig die Systemleistung zu steigern sowie den Funktionsumfang des Systems zu erhöhen. Mit dem Baustein können sie die Funktionen, die bisher auf mehrere FPGAs verteilt waren, in einen einzigen Baustein integrieren. Diese Systemintegration steigert die Systemleistung und verringert die Verlustleistung, weil I/O-Schnittstellen zwischen den einzelnen FPGAs auf der Baugruppe eliminiert werden. Das Partitionieren der Systemfunktionen auf mehrere ICs ist eine komplexe Aufgabe und kann zu längeren Entwicklungszeiten und höheren Testkosten führen. Das Konsolidieren der Anzahl von Bausteinen im System reduziert die Anforderungen an das Partitionieren und auch die Kosten, die mit der Verifikation und dem Test verbunden sind. Damit können Systemarchitekten auch Platz auf einer Baugruppe einsparen, indem sie neue Funktionen unterbringen, oder die Ausmaße ihres Produktes verkleinern. Wie auch bei den anderen Bausteinen in der 7-Serie hat Xilinx den Baustein Virtex-7-2000T in der FPGA-spezifischen HPL-Prozesstechnik (high performance low power) von TSMC fertigen lassen. Durch diesen HPL-Prozess besitzen die Transistoren geringere Leckströme als die von Wettbewerbsprodukten, die im 28-nm-High-Performance-Prozess implementiert sind. Das bedeutet, dass dieser Baustein eine Verlustleitung aufweist, die der von Wettbewerbsprodukten vergleichbar ist, die nur die halbe Kapazität besitzen.
ASIC-Ersatz
Nicht zuletzt ist der Baustein Virtex-7-2000T auch attraktiv für eine steigende Anzahl von Entwicklungsteams, die die Kosten und das Entwicklungsrisiko, das mit der Entwicklung eines 28-nm-ASICs oder -ASSPs verbunden sind, nicht rechtfertigen können. Da sich die Halbleiter-Fertigungsprozesse ständig weiterentwickelt haben, sind die Kosten, Halbleiter zu entwickeln und zu produzieren, ebenfalls rapide angestiegen. Die NRE-Aufwendungen (nonrecurring-engineering) für ein 28-nm-ASIC oder ASSP liegen bei weit über 50 Millionen Dollar und die Wahrscheinlichkeit eines ASIC-Respins steigt dabei auf nahezu 50 Prozent. Ein einziger übersehener Fehler im Entwicklungsprozess kann ernsthaft die Profitabilität gefährden; mehrere Fehler können zum Abbruch des gesamten Projekts führen, in verpassten Marktfenstern resultieren und sogar ganze Firmen ruinieren.
Das Virtex-7-200T kann ASICs mit zehn bis zwanzig Millionen Gattern ersetzen, ohne die NRE-Kosten, die mit der ASIC-Entwicklung verbunden sind. Da der Baustein reprogrammierbar ist, können die Entwickler, sollten sie einen Fehler gemacht haben, den Baustein einfach neu programmieren, um den/die Fehler zu beseitigen.
Die Entwicklungsmethoden bleiben gleich
Obwohl der Virtex-7-2000T extrem groß ist, erfordert das Programmieren dieses Bausteins keine großen Änderungen in der Entwicklungsmethode. Designteams, die große Entwicklungen in das Virtex-7-2000T platzieren, werden durch die Xilinx-Werkzeuge beim Floorplanning und der Partitionierung unterstützt, um die optimale Leistungsfähigkeit und das perfekte Timing zu erhalten. Die jüngste Version der Xilinx-Entwicklungswerkzeuge unterstützt den Baustein Virtex-7-2000T und damit können Anwender sofort mit der Entwicklung mit dem Virtex-7-2000T beginnen. In diesem Jahr plant Xilinx die Markteinführung weiterer Virtex-7-FPGAs sowohl in monolithischen als auch SSI-Konfigurationen.
Mike Santarini
(jj)