Diskussion: Das OpenROAD-Projekt soll die Aufgabe lösen, das Design von Prozessoren zu automatisieren


Fotos - Pexels - CC BY

Laut PWC wächst der Markt für Halbleitertechnologie - im vergangenen Jahr erreichte er die 481-Milliarden-Dollar-Marke. Die Wachstumsrate ist jedoch in letzter Zeit zurückgegangen . Zu den Gründen für die Rezession zählen die Komplexität der Geräteentwurfsprozesse und die mangelnde Automatisierung.

Vor einigen Jahren haben Intel-Ingenieure geschrieben, dass bei der Erstellung eines Hochleistungs-Mikroprozessors 100-150 separate Software-Tools ( EDA ) verwendet werden müssen. Die Situation kann sich bei heterogenen Geräten verschärfen, deren Architektur verschiedene Arten von Chips umfasst - ASIC, FPGA, CPU oder GPU. Infolgedessen treten Konstruktionsfehler auf, die die Freigabe von Produkten verzögern.

Trotz der großen Anzahl von Hilfswerkzeugen sind die Ingenieure immer noch gezwungen, einen Teil der Arbeit manuell auszuführen. Die Autoren des Buches Advanced Logic Synthesis sagen, dass Designer manchmal Skripte in Skill oder Python aus zwei Millionen Zeilen schreiben müssen , um Bibliotheken mit Zellen zu bilden.

Skripte werden auch zum Parsen von Berichten geschrieben, die von EDA-Systemen erstellt wurden. Bei der Entwicklung eines Chips mit einer 22-nm-Prozesstechnologie können diese Berichte bis zu 30 Terabyte dauern.

Sie beschlossen, die Situation zu korrigieren und zu versuchen, die Entwurfsprozesse in DARPA zu standardisieren. Die Agentur ist außerdem der Ansicht, dass die vorhandenen Methoden zur Erstellung von Chips veraltet sind. Die Organisation startete das fünfjährige OpenROAD- Programm, mit dem neue Tools zur Automatisierung von Chip-Design-Prozessen entwickelt werden sollen.

Was für ein Programm


Das Programm umfasst mehrere Projekte, die maschinelles Lernen und Cloud-Technologie verwenden, um die einzelnen Phasen der Chipherstellung zu automatisieren. Im Rahmen der Initiative werden mehr als zehn Tools entwickelt (Schema 1). Als nächstes werden wir mehr über einige von ihnen sprechen: Flow Runner, RePlAce, TritonCTS, OpenSTA.

Flow Runner ist ein Tool zum Verwalten von RTL- und GDSII-Bibliotheken. Letztere sind Datenbankdateien, die den Industriestandard für den Austausch von Informationen über integrierte Schaltkreise und deren Topologien darstellen. Die Lösung basiert auf der Docker-Containertechnologie. Sie können Flow Runner sowohl in der Cloud als auch lokal ausführen. Die Installationsanleitung befindet sich im offiziellen Repository auf GitHub .

RePlAce ist eine Cloud-basierte Lösung für maschinelles Lernen, die für die Platzierung von Komponenten auf einem Chip und die Automatisierung der Ablaufverfolgung verantwortlich ist. Laut einigen Berichten erhöhen intelligente Algorithmen die Effizienz des Werkzeugs im Vergleich zu klassischen Systemen um 2-10%. Darüber hinaus vereinfacht die Implementierung in der Cloud die Skalierung. Das Installations- und Konfigurationshandbuch befindet sich ebenfalls im Repository .

TritonCTS ist ein Dienstprogramm zur Optimierung der dem Chip zugeführten Taktimpulse. Hilft beim Weiterleiten von Uhren an alle Teile des Geräts mit derselben Latenz. Das Funktionsprinzip basiert auf H-Bäumen . Dieser Ansatz erhöht die Effizienz der Signalverteilung im Vergleich zu herkömmlichen Methoden um 30%. Entwickler sagen, dass diese Zahl in Zukunft auf 56% erhöht werden kann. TritonCTS-Quellcode und -Skripte sind auf GitHub verfügbar.

OpenSTA ist eine statische Zeitanalyse- Engine. Dies gibt dem Entwickler die Möglichkeit, die Leistung des Chips bereits vor seiner eigentlichen Montage zu überprüfen. Das Codebeispiel in OpenSTA sieht folgendermaßen aus .

@@ -6,7 +6,7 @@ read_liberty -corner ff example1_fast.lib read_verilog example1.v link_design top set_timing_derate -early 0.9 set_timing_derate -early 1.1 set_timing_derate -late 1.1 create_clock -name clk -period 10 {clk1 clk2 clk3} set_input_delay -clock clk 0 {in1 in2} # report all corners 

Das Dienstprogramm unterstützt Netzlistenbeschreibungen von Verilog-Code, Bibliotheken im Liberty-Format, SDC-Dateien usw.

Vor- und Nachteile


Experten von IBM und IEEE stellen fest, dass Cloud Computing und maschinelles Lernen seit langem in der Chipherstellung eingesetzt werden. Ihrer Meinung nach kann das DARPA-Projekt ein erfolgreiches Beispiel für die Umsetzung dieser Idee sein und wird Veränderungen in der Branche einleiten.

Es wird auch erwartet, dass die Offenheit von OpenROAD die Bildung einer mächtigen Community rund um Tools ermöglicht und neue Startups anzieht.


Fotos - Pexels - CC BY

Es gibt bereits Teilnehmer - das Labor, das an der Entwicklung von Chips auf der Basis der University of Michigan beteiligt ist, wird als erstes OpenROAD Open Tools testen. Es ist jedoch noch nicht bekannt, ob sich neue Lösungen spürbar auf die Kosten der Endprodukte auswirken können.

Generell wird erwartet, dass sich die unter der Leitung von DARPA entwickelten Tools positiv auf die Prozessorindustrie auswirken werden und immer mehr neue Projekte in diesem Bereich auftauchen werden. Ein Beispiel wäre das gEDA- Tool, mit dem Sie Chips mit einer unbegrenzten Anzahl von Komponenten entwerfen können. gEDA enthält Dienstprogramme zum Bearbeiten und Modellieren von Chips und Tracing Boards. Die Lösung wurde für UNIX-Plattformen entwickelt, einige ihrer Komponenten funktionieren jedoch auch unter Windows. Anleitungen zur Arbeit mit ihnen finden Sie in der Dokumentation auf der Projektwebsite .

Frei verteilte Tools bieten unabhängigen Organisationen und Startups mehr Möglichkeiten. Es ist wahrscheinlich, dass im Laufe der Zeit neue OpenROAD-Ansätze zur Entwicklung von EDA-Tools und zur Erstellung von Chips zum Industriestandard werden können.



Worüber wir in unserem Unternehmensblog schreiben:

Source: https://habr.com/ru/post/de453200/


All Articles