Intelligente Layoutverarbeitung

KI für ASIC- und PCB-Layouts

7. März 2022, 6:00 Uhr | Von Georg Gläser und Julian Kuners
Die Forschergruppe IntelligEnt - dem automatisiert unerprobte und potenziell fehlerhafte Stellen in Layouts detektiert werden – bei ASICs und PCBs. Darauf basierend entstand ein Plug-in für die PCB-CAD-Software KiCad
© adobe.stock.com

Die Forschergruppe IntelligEnt hat ein KI-basiertes Verfahren zur Anomalieerkennung entwickelt, mit dem automatisiert unerprobte und potenziell fehlerhafte Stellen in Layouts detektiert werden können – bei ASICs und PCBs. Darauf basierend entstand ein Plug-in für die PCB-CAD-Software KiCad.

Designerfahrung spielt vor allem beim geometrischen Entwurf von Leiterplatten und ICs eine große Rolle. Diese letzten Schritte auf dem Weg zur Fertigung erfordern Wissen darüber, welche Leitungen besonders empfindliche oder stark störende Signale führen und wie diese behandelt werden müssen. Im Falle des ASIC-Entwurfes kommen dazu Heuristiken für Symmetrien, spezielle Anordnungen usw. Lehrbücher geben einen einfachen, aber wichtigen Ratschlag: »Wenn etwas schön aussieht, wird es funktionieren.« Oft wird hier die Qualitätssicherung auf Basis von Heuristiken, teils aufwendigen Simulationen und Reviews durchgeführt (Bild 1).

Anbieter zum Thema

zu Matchmaker+
 Lagenweise Datenrepräsentation (links) und in IntelligEnt verwendete Querschnittsdarstellung
Bild 1. Die Design- und Feedback-Schleife im Leiterplattenentwurf.
© IMMS

KI-basierte Algorithmen zeigten in verschiedenen Anwendungen, dass sie in der Lage sind, solches nicht formales Erfahrungswissen abzubilden. Jedoch entstehen beim Einsatz zwei wichtige Herausforderungen:

  • Zunächst muss eine passende Datenrepräsentation gefunden werden, die effizient verarbeitet und gespeichert werden kann und gleichzeitig alle wichtigen Informationen über die Geometrie und Signaltypen abbildet.
  • Außerdem stehen zum Training keine vorklassifizierten Daten zur Verfügung. Es gibt derzeit keinen offenen Datensatz, der typische Fehlerfälle repräsentativ enthält.

In der Forschergruppe IntelligEnt haben das IMMS Institut für Mikroelektronik- und Mechatronik-Systeme sowie die TU Ilmenau ein KI-basiertes Anomalieerkennungsverfahren entwickelt, mit dem automatisiert unerprobte und potenziell fehlerhafte Stellen in Layouts detektiert werden können. Durch eine flexible Datenrepräsentation lassen sich damit sowohl PCB- als auch ASIC- Layoutdaten verarbeiten.

Layoutdaten zu komplex für ML-Trainings

Layoutdaten liegen in den meisten Fällen als Vektorgrafiken vor, in denen die verschiedenen Objekte an Fertigungsebenen gekoppelt sind. Um einen Machine-Learning-Algorithmus anwenden zu können, müssen die Daten jedoch numerisch, also als Vektoren, Matrizen oder Tensoren vorliegen. Eine einfache Abbildung auf ein 3D-Zahlenschema, das die verschiedenen Ebenen repräsentiert und alle Details beibehält, ist unpraktisch: In ASICs können beispielsweise mehr als 50 Ebenen auftreten. Wenn zusätzlich Signaleigenschaften berücksichtigt werden sollen, führt diese Repräsentation dazu, dass die Datensätze extrem groß werden und damit kaum sinnvoll für einen Trainingsprozess verwendet werden können.

Daten auf das Wesentliche reduzieren

 Lagenweise Datenrepräsentation (links) und in IntelligEnt verwendete Querschnittsdarstellung (rechts).
Bild 2. Lagenweise Datenrepräsentation (links) und in IntelligEnt verwendete Querschnittsdarstellung (rechts).
© IMMS

Die Forschergruppe IntelligEnt hat deshalb einen neuen Ansatz untersucht: Durch Querschnitte durch das Layout kann die Geometrie durch ein 2D-Datenschema repräsentiert werden, Signaleigenschaften kommen in der dritten Dimension hinzu (Bild 2). Diese Methode ist vergleichbar mit einem Farbbild: Die Helligkeit des Bilds zeigt die Geometrie, wogegen die Farbkanäle für die Signaleigenschaften wie z.B. Kategorien genutzt werden.

Layout-Vorverarbeitungsprozess: Das Layout wird entlang einer Schnittlinie geschnitten und in ein entsprechendes »Bild« zusammengefügt.
Bild 3. Layout-Vorverarbeitungsprozess: Das Layout wird entlang einer Schnittlinie geschnitten und in ein entsprechendes »Bild« zusammengefügt.
© IMMS

Jedoch muss auch hier darauf geachtet werden, dass die Auflösung der Querschnitte oder Bilder hoch genug ist, um sämtliche Details des Layouts abzubilden (Bild 3). Hierzu kann z.B. die minimale Strukturgröße als Richtwert für die Genauigkeit herangezogen werden.

Autoencoder – neuronales Netz unterscheidet gute und schlechte Entwürfe

Die Kernidee des Machine-Learning-Algorithmus ist es, Abweichungen von einem gegebenen Datensatz zu erkennen. Das heißt, dass anhand bekannter guter Entwürfe Abweichungen von dort verwendeten Entwurfsregeln erkannt werden sollen. Dabei wird angenommen, dass ein Beispieldatensatz vorliegt, in dem zumeist gute Entwurfspraxis verwendet wurde. Zur Anomalieerkennung wird ein Autoencoder verwendet (Bild 4).

 Die Architektur des verwendeten KI-Systems (Autoencoder).
Bild 4. Die Architektur des verwendeten KI-Systems (Autoencoder).
© IMMS

Dieses neuronale Netz basiert auf der Idee, dass ein Eingangsdatensatz wie durch einen Flaschenhals oder das Objektiv einer Kamera auf sich selbst abgebildet wird. Die Bildinformation wird somit verdichtet und beschnitten. Dadurch wird eine verkleinerte Repräsentation erzeugt, die mit den Eingangsdaten verglichen wird. Der Abbildungsfehler wird bei Daten, die den Trainingsdaten ähneln, sehr klein sein, bei abweichenden Daten dagegen wird der Abbildungsfehler größer. Er kann also als Maß für die Abweichung vom Trainingsdatensatz – und damit für die Abweichung von den dabei verwendeten Entwurfsregeln verwendet werden.

Handhabung des ML-KiCad-Plug-ins »AnoPCB«

Zur Analyse eines Leiterplattendesigns gibt es mehrere Schritte. Der schnelle Weg ist die Nutzung eines bereits passenden Machine-Learning-Modells. In diesem stimmt die eingestellte Größe der Querschnitte mit der des Machine-Learning-Modells überein, ebenso wie die eingestellte Auswahl an Signalkategorien.

In dem Fall wird zur Vorbereitung nur das zu untersuchende Design mit Signalinformationen angereichert. D.h. die Netze müssen in verschiedene Signalkategorien eingeteilt werden, z.B. analog sensitive, supply, digital switching. Dieser Prozess kann auch durch Namenskonventionen automatisiert werden. Dann kann nach Auswahl des passenden Machine-Learning-Modells die Analyse gestartet werden. Als Ergebnis gibt es eine vom Layouter zu interpretierende Heatmap. Stärker markierte Stellen können auf Anomalien hinweisen, so dass diese nochmal untersucht werden sollten.

Zu verwendende Machine-Learning-Modelle müssen trainiert werden, bevor sie relevante Ergebnisse liefern. Dazu wird ein Datensatz an verschiedenen Leiterplattendesigns vorbereitet. Die Leiterplattendesigns müssen in der Praxis funktionieren und entsprechend fehlerfrei sein – und sie brauchen ebenso die zuvor genannten Signalinformationen. Dann kann ein neues Modell auf diesen Trainingsdatensatz trainiert werden. Es empfiehlt sich, den Trainingsdatensatz mit der Zeit zu vergrößern und neue Modelle zu trainieren. Auf diese Weise soll der Algorithmus mit der Zeit lernen.

Die Evaluation, das Training und das Speichern der Modelle und Trainingsdatensätze erfolgt auf einem Server. Dieser Server kann auch einfach lokal automatisch gestartet werden.

Das ML-Plugin »AnoPCB« für KiCad steht Interessenten auf GitHub kostenfrei zur Verfügung: https://github.com/IMMS-Ilmenau/AnoPCB

Eine exakte Anleitung zur Installation zeigt das Video folgende auf der Youtube-Plattform.

 

Plugin for the free PCB design tool KiCad for artificially IntelligEnt layout processing.

  1. KI für ASIC- und PCB-Layouts
  2. Anwendung auf reale Designs – ASICs

Verwandte Artikel

IMMS Institut f. Mikroelektro. Und Mechatronik-Systeme GmbH