Diskussion: Das OpenROAD-Projekt soll das Problem der Automatisierung des Prozessordesigns lösen

Diskussion: Das OpenROAD-Projekt soll das Problem der Automatisierung des Prozessordesigns lösen
Фото - Pexels — CC BY

Auf Nach PWC, der Markt für Halbleitertechnologie wächst – letztes Jahr erreichte er 481 Milliarden US-Dollar. Aber seine Wachstumsrate in letzter Zeit gesunken. Gründe für den Rückgang sind verwirrende Gerätedesignprozesse und mangelnde Automatisierung.

Vor ein paar Jahren Ingenieure von Intel schriebdass man beim Erstellen eines Hochleistungs-Mikroprozessors 100–150 separate Softwaretools verwenden muss (EDA). Bei heterogenen Geräten, deren Architektur mehrere verschiedene Arten von Chips umfasst – ASIC, FPGA, CPU oder GPU – kann sich die Situation verschärfen. Dadurch kommt es zu Konstruktionsfehlern, die die Veröffentlichung von Produkten verzögern.

Trotz der Vielzahl an Hilfswerkzeugen sind Ingenieure immer noch gezwungen, einige Arbeiten manuell zu erledigen. Die Autoren des Buches „Erweiterte Logiksynthese„Sie sagen, dass manchmal Designer muss haben Schreiben Sie Skripte in Skill oder Python mit zwei Millionen Zeilen, um damit Bibliotheken zu erstellen Zellen.

Es werden auch Skripte geschrieben, um von EDA-Systemen generierte Berichte zu analysieren. Bei der Entwicklung eines Chips mit einer 22-nm-Prozesstechnologie können diese Berichte bis zu 30 Terabyte beanspruchen.

DARPA beschloss, die Situation zu korrigieren und zu versuchen, die Designprozesse zu standardisieren. Auch bei der Agentur betrachtendass bestehende Methoden zur Herstellung von Chips veraltet sind. Organisation ins Leben fünfjähriges Programm Offene Strasse, dessen Ziel die Entwicklung neuer Tools zur Automatisierung von Chip-Designprozessen ist.

Was für ein Programm

Das Programm umfasst mehrere Projekte, die maschinelles Lernen und Cloud-Technologien nutzen, um einzelne Phasen der Chip-Erstellung zu automatisieren. Im Rahmen der Initiative werden entwickelt (Diagramm 1) mehr als zehn Instrumente. Als nächstes werden wir ausführlicher auf einige davon eingehen: Flow Runner, RePlAce, TritonCTS, OpenSTA.

Flow Runner ist ein Tool zur Verwaltung von RTL- und GDSII-Bibliotheken. Bei letzteren handelt es sich um Datenbankdateien, die einen Industriestandard zum Austausch von Informationen über integrierte Schaltkreise und deren Topologien darstellen. Die Lösung basiert auf der Docker-Container-Technologie. Sie können Flow Runner sowohl in der Cloud als auch lokal ausführen. Die Installationsanleitung befindet sich im offiziellen Repository auf GitHub.

Ersetzen ist eine auf maschinellem Lernen basierende Cloud-Lösung, die für die Platzierung von Komponenten auf einem Chip und die Automatisierung des Routings verantwortlich ist. Von DatenIntelligente Algorithmen steigern die Effizienz des Tools um 2–10 % im Vergleich zu klassischen Systemen. Darüber hinaus erleichtert die Implementierung in der Cloud die Skalierung. Eine Installations- und Konfigurationsanleitung ist ebenfalls verfügbar im Repository.

TritonCTS – ein Dienstprogramm zur Optimierung der dem Chip zugeführten Taktimpulse. Hilft, Taktsignale mit den gleichen Verzögerungen an alle Teile des Geräts weiterzuleiten. Das Funktionsprinzip basiert auf H-Bäume. Dieser Ansatz steigt Signalverteilungseffizienz um 30 % im Vergleich zu herkömmlichen Methoden. Die Entwickler sagen, dass dieser Wert in Zukunft auf 56 % gesteigert werden kann. TritonCTS-Quellcode und Skripte verfügbar auf GitHub.

OpenSTA – eine Engine für die statische Timing-Analyse. Es gibt dem Designer die Möglichkeit, die Funktionalität des Chips zu überprüfen, bevor er tatsächlich zusammengebaut wird. Beispielcode in OpenSTA sieht aus wie so.

@@ -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, Liberty-Formatbibliotheken, SDC-Dateien usw.

Vor- und Nachteile

Experten von IBM und IEEE notedass Cloud-Technologien und maschinelles Lernen für den Einsatz in der Chipproduktion längst überfällig sind. Ihrer Meinung nach kann das DARPA-Projekt ein erfolgreiches Beispiel für die Umsetzung dieser Idee werden werde setzen der Beginn von Veränderungen in der Branche.

Es wird auch erwartet, dass der offene Charakter von OpenROAD eine starke Community rund um die Tools schaffen und neue Start-ups anziehen wird.

Diskussion: Das OpenROAD-Projekt soll das Problem der Automatisierung des Prozessordesigns lösen
Фото - Pexels — CC BY

Es gibt bereits Teilnehmer – ein Labor, das Chips an der University of Michigan entwickelt, wird der Erste sein, der die OpenROAD-Open-Source-Tools testen wird. Es ist jedoch noch nicht bekannt, ob sich neue Lösungen spürbar auf die Kosten der Endprodukte auswirken können.

Insgesamt wird erwartet, dass die unter der Führung von DARPA entwickelten Tools positive Auswirkungen auf die Prozessorindustrie haben werden und in diesem Bereich weitere neue Projekte entstehen werden. Ein Beispiel wäre ein Werkzeug GEDA – Sie können damit Chips mit einer unbegrenzten Anzahl von Komponenten entwerfen. gEDA umfasst Dienstprogramme zum Bearbeiten und Modellieren von Mikroschaltungen und zum Platinenrouting. Die Lösung wurde für UNIX-Plattformen entwickelt, einige ihrer Komponenten funktionieren jedoch auch unter Windows. Eine Anleitung zur Arbeit mit ihnen finden Sie hier in der Dokumentation auf der Projektwebsite.

Frei verfügbare Tools bieten unabhängigen Organisationen und Startups mehr Möglichkeiten. Es ist möglich, dass die neuen Ansätze von OpenROAD für die Entwicklung von EDA-Tools und das Chip-Design im Laufe der Zeit zu einem Industriestandard werden.

Worüber wir in unserem Unternehmensblog schreiben:

Source: habr.com

Kommentar hinzufügen