-
Die vorliegende Erfindung betrifft die Analyse elektrischer Schaltungen auf der Basis von Netzlisten, insbesondere für die Zwecke des Schaltungsdesigns im Vorfeld der Fertigung und der Fehlersuche in bereits gefertigten Schaltungen.
-
Stand der Technik
-
Die Entwicklung elektrischer Schaltungen erfolgt typischerweise in zwei Phasen. Zunächst wird auf abstraktem Niveau geplant, welche Anschlüsse (Pins) welcher Bauteile jeweils miteinander zu verbinden sind, damit die Schaltung ihre gewünschte Funktion erfüllen kann. Diese Planung lässt sich in Netzlisten verschriftlichen. In der zweiten Phase wird die Schaltung auf der Basis der Netzlisten designt, so dass eine konkrete Planung für eine zwei- oder dreidimensionale Anordnung von Bauteilen und Verbindungen zwischen diesen Bauteilen entsteht. Auf der Grundlage dieser konkreten Planung kann die Schaltung, beispielsweise durch Aufbringen von Leiterbahnen und Bauteilen auf eine Platine, gefertigt werden.
-
Wenngleich insbesondere für das Design von Schaltungen bereits eine Vielzahl von Softwaretools verfügbar ist, beinhaltet der Entwicklungsprozess nach wie vor viel menschliche Arbeit.
-
Die
WO 2020/234 754 A1 offenbart ein Verfahren, mit dem aus einer Abbildung des Schaltungslayouts eine Klassifikation der Schaltung durchgeführt werden kann. Weiterer allgemeiner Stand der Technik zur Klassifikation von Schaltungen und/oder den in ihnen enthaltenen Bauteilen ist in
CN 109 918 523 A und
US 2019/392 322 A1 angegeben.
-
Offenbarung der Erfindung
-
Im Rahmen der Erfindung wurde ein Verfahren zur Analyse einer elektrischen Schaltung entwickelt. Hierbei werden eine oder mehrere Netzlisten der Schaltung beschafft. Diese Netzlisten enthalten jeweils Verbindungen zwischen Anschlüssen (Pins) von Bauteilen. Dabei können Pins an unterschiedlichen Bauteilen, aber auch verschiedene Pins an ein und demselben Bauteil miteinander verbunden werden.
-
Die eine oder mehreren Netzlisten werden einem Klassifizierungsmodell zugeführt. Hierbei kann es sich insbesondere beispielsweise um ein Machine Learning-Modell handeln.
-
Unter einem Machine Learning-Modell wird insbesondere ein Modell verstanden, das eine mit anpassbaren Parametern parametrisierte Funktion mit großer Kraft zur Verallgemeinerung verkörpert. Die Parameter können insbesondere bei einem überwachten Training eines Modells dergestalt angepasst werden, dass bei Eingabe von Trainings-Eingangsdaten in das Modell zugehörige Soll-Ausgangsdaten möglichst gut reproduziert werden. Alternativ oder in Kombination hierzu können die Parameter bei einem semi-überwachten Training mit Unterstützung eines Ingenieurs trainiert werden, der beispielsweise punktuell falsche oder unpassende Ausgaben des Modells korrigiert.
-
Beispiele für Machine Learning-Modelle sind neuronale Netzwerke, Bayes-Modelle, logistische Regressionsmodelle, Entscheidungsbäume, XGBoost sowie graph-basierte Modelle.
-
Eine oder mehrere der in den Netzlisten enthaltenen Verbindungen werden von dem Klassifizierungsmodell auf einen oder mehrere Netztypen aus einer vorgegebenen Auswahl von Netztypen abgebildet. Dieser Netztyp kann insbesondere beispielsweise
- • eine Funktion und/oder Belegung der Verbindung in der Schaltung, und/oder
- • die Zugehörigkeit der Verbindung zu einer Funktionsbaugruppe der Schaltung, und/oder
- • eine vorgesehene Spannungsebene der Verbindung, und/oder
- • die Verwendung der Verbindung für analoge oder digitale Signalübertragung, und/oder
- • eine Geschwindigkeitsklasse einer digitalen Datenübertragung über die Verbindung, und/oder
- • einen Frequenzbereich eines über die Verbindung übertragenen analogen Signals, und/oder
- • einen auf der Verbindung genutzten Kommunikationsstandard, und/oder
- • eine Einstufung der Verbindung im Hinblick auf Sicherheitsrelevanz angeben.
-
Die Verbindungen werden also mit einer oder mehreren Eigenschaften annotiert, die sie im Kontext der elektrischen Schaltung haben. Dies ist eine große Hilfe für das Schaltungsdesign, aber auch für die Fehlersuche. So kann beispielsweise eine Visualisierung einer geplanten oder bereits vorhandenen Realisierung der Schaltung als zwei- oder dreidimensionale Anordnung mit den besagten Eigenschaften aufgewertet werden. In einer derartigen Darstellung fallen insbesondere bestimmte Fehler im Schaltungsdesign, die zu einer Beeinträchtigung der Funktionsfähigkeit oder gar der Sicherheit führen können, unmittelbar auf.
-
Dies lässt sich etwa am Beispiel eines Geigerzählers für die Messung radioaktiver Strahlung veranschaulichen. Ein solches Gerät enthält ein sogenanntes Zählrohr, in dem ein eintreffendes Gammaquant ein Zählgas lokal ionisiert. Um diese Ionisation in ein elektrisches Signal umzuwandeln, muss das Zählrohr mit einer hohen Gleichspannung von mehreren hundert Volt betrieben werden, die mit einer speziellen Schaltung aus einer Akkuspannung der Größenordnung 12 Volt erzeugt wird. Eine weitere Schaltung für die Signalauswertung wird hingegen direkt mit der Akkuspannung betrieben. Für das direkte Aufladen des Geräts an der Steckdose wird zusätzlich noch ein Netzteil mit entsprechender Ladeelektronik benötigt. Somit enthält das scheinbar einfache Gerät bereits drei unterschiedliche Spannungsebenen und zwei Spannungswandler für Übergänge von einer Spannungsebene zur anderen.
-
Wenn die Verbindungen nun vom Klassifizierungsmodell nach Spannungsebenen klassifiziert werden, ist etwa in einer grafischen Darstellung der Schaltung unmittelbar ersichtlich, wo im Gerät welche Spannung herrscht. Wenn nun etwa beim automatisierten Schaltungsdesign per Software eine Hochspannung führende Verbindung zu nah an einer 12 Volt führenden Verbindung eingeplant wurde, weil dieser Weg besonders kurz oder in anderer Hinsicht vorteilhaft ist, kann dies erkannt und korrigiert werden.
-
In diesem Beispiel kann das Klassifizierungsmodell etwa beim Training gelernt haben, dass eine bestimmte Verschaltung von Bauteilen die Funktion eines Spannungswandlers hat, und somit den zwischen Akku und Zählrohr angeordneten Spannungswandler als solchen erkennen. Daher wird dem Klassifikationsmodell vorteilhaft zusätzlich zu mindestens einer Verbindung ein Typ eines an diese Verbindung angeschlossenen Bauteils, und/oder eine Funktion des Pins des Bauteils, an den die Verbindung angeschlossen ist, zugeführt. Diese Information kann bereits in den Netzlisten enthalten sein, aber sie kann dem Klassifizierungsmodell auch separat zugeführt werden.
-
Der Typ des Bauteils, und/oder die Funktion des Pins, kann insbesondere beispielsweise aus
- • mindestens einer Bestückungsliste der Schaltung, und/oder
- • mindestens einer Bauteilgruppierung der Schaltung, und/oder
- • mindestens einem Datenblatt oder einer sonstigen Gebrauchsanweisung eines Bauteils, und/oder
- • mindestens einem Analyseergebnis eines weiteren Analysemodells ermittelt werden. Somit können bereits vorhandene primäre Informationsquellen ohne eine potentiell fehleranfällige manuelle Aufbereitung verwendet werden.
-
Ein weiteres häufig auftretendes Problem in elektrischen Schaltungen ist Übersprechen zwischen Verbindungen, die hochfrequente digitale oder analoge Signale übertragen. Um in dieser Hinsicht neuralgische Stellen in der Schaltung zu finden, wird ein Überblick benötigt, welche Verbindungen mit welchen Frequenzen betrieben werden. Das Klassifizierungsmodell kann zu diesem Zweck beispielsweise das Schaltungsmuster eines Oszillators oder eines Filters ermitteln. Anhand der Struktur der Schaltung könnte das Klassifizierungsmodell dann die Frequenzklasse (etwa High-Speed oder nicht High-Speed) ermitteln. Wird etwa ein Hochpassfilter erkannt, ist die Schaltung eine High-Speed-Schaltung, da niederfrequente Signale den Filter nicht passieren könnten.
-
Die Einteilung der Verbindungen in Netztypen kann jedoch nicht nur genutzt werden, um eine visuelle Analyse der Schaltung auf Designfehler zu erleichtern. Vielmehr kann die so gewonnene und in maschinenlesbarer Form vorliegende Information auch bei der automatisierten Prüfung des Layouts und/oder Designs der Schaltung genutzt werden. In einer besonders vorteilhaften Ausgestaltung wird somit das Layout und/oder das Design der Schaltung unter Heranziehung mindestens eines der ermittelten Netztypen auf Konformität mit einem vorgegebenen Regelsatz geprüft.
-
Gerade diese Verzahnung zwischen einer Analyse der Netzlisten einerseits und der Prüfung des Designs andererseits lindert das grundsätzliche Problem, dass die eingangs erwähnte Zweiteilung der Schaltungsentwicklung den Informationsaustausch ein Stück weit behindert. Wer ausgehend von einer Vorstellung über die Funktion der Schaltung Netzlisten erstellt, macht sich in diesem Moment noch keine Gedanken über die Realisierbarkeit im Schaltungsdesign. Wenn ausgehend von Netzlisten die Schaltung designt wird, werden diese Netzlisten als gegeben hingenommen, aber es ist schwierig, die ursprünglich beabsichtigte Funktion der Schaltung als zusätzliche Randbedingung zu berücksichtigen.
-
Es können auch beispielsweise in Antwort darauf, dass eine Verbindung zu einem bestimmten Netztyp gehört, Checklisten oder Workflows abgerufen werden. Damit kann etwa ein Schaltungsdesigner, der die Schaltung selbst designt oder aber ein mit Software erstelltes Schaltungsdesign kontrolliert, an alle Voraussetzungen und Eigenschaften erinnert werden, die mit dem bestimmten Netztyp verbunden sind. Beispielsweise kann für Verbindungen, die zur digitalen Datenübertragung mit besonders hoher Geschwindigkeit verwendet werden, oder für sicherheitsrelevante Verbindungen jeweils ein bestimmtes Protokoll von Prüfungen abzuarbeiten sein. Indem genau diese Verbindungen mit der Analyse identifiziert werden, kann der Aufwand für die zusätzlichen Prüfungen lediglich auf die Teile der Schaltung fokussiert werden, wo er wirklich benötigt wird.
-
Besonders vorteilhaft beinhaltet mindestens eine Regel des Regelsatzes, dass Verbindungen zweier vorgegebener Netztypen
- • keinen elektrischen Kontakt zueinander haben dürfen, und/oder
- • sich nicht kreuzen dürfen, und/oder
- • mit einem Mindestabstand zueinander verlaufen müssen, und/oder
- • durch Isolationsmittel voneinander isoliert sein müssen.
-
Verstöße gegen diese Regeln sind häufige Ursachen für Beeinträchtigungen der Funktionsfähigkeit oder gar der Sicherheit von Schaltungen.
-
In einer weiteren vorteilhaften Ausgestaltung wird die elektrische Schaltung so in Netzlisten unterteilt, dass jede Netzliste sich höchstens auf eine vorgegebene Anzahl angeschlossener Bauteile bezieht. Auf diese Weise kann die Größe des erforderlichen Klassifizierungsmodells, wie beispielsweise eines neuronalen Netzwerks, kleiner gehalten werden. Für die Feststellung, welchen Netztypen bestimmte Verbindungen angehören, ist meistens kein Globalüberblick über die gesamte analysierte Schaltung notwendig, sondern es reicht der lokale Kontext. Im eingangs erwähnten Beispiel des Geigerzählers etwa hängt die Funktion von Verbindungen in der Schaltung zur Signalauswertung nicht von der konkreten Ausgestaltung des Netzteils und der Ladeelektronik für das Aufladen des Akkus ab.
-
Wie eingangs erwähnt, lässt sich das zuvor beschriebene Verfahren auch für die Fehlersuche in einer bereits fertigen elektrischen Schaltung verwenden. Bei komplexeren Geräten ist es meistens nicht praktikabel, einfach alle Bauteile und Verbindungen ab der Spannungsquelle durchzutesten. Stattdessen ist es notwendig, den Fehler auf bestimmte Teilbereiche der Schaltung einzugrenzen und in diesen Teilbereichen Bauteile und Verbindungen detaillierter zu testen.
-
Daher stellt die Erfindung auch ein Verfahren zur Fehlersuche, bzw. zur Unterstützung der Fehlersuche, in einer elektrischen Schaltung bereit. Bei diesem Verfahren wird zunächst mindestens eine Hypothese für die Fehlerursache aufgestellt. Diese Hypothese kann insbesondere beispielsweise durch die Symptome der zu behebenden Funktionsstörung motiviert sein.
-
Wenn beispielsweise ein Gerät auf nichts mehr reagiert und keinerlei Lebenszeichen mehr von sich gibt, ist eine plausible Hypothese, dass die Stromversorgung des Geräts an zentraler Stelle gestört ist. Wenn hingegen noch Teilfunktionen erhalten sind, ist der Fehler eher nicht in der zentralen Stromversorgung zu suchen.
-
Die Schaltung wird mit dem zuvor beschriebenen Verfahren analysiert. Die hierbei erhaltenen Zuordnungen von Verbindungen zu Netztypen geben Aufschluss darüber, welche Verbindungen und hieran angeschlossenen Bauteile etwas mit dem festgestellten Fehler zu tun haben könnten.
-
Daher wird anhand der mindestens einen Hypothese eine Liste von Netztypen ermittelt dergestalt, dass zu diesen Netztypen gehörende Verbindungen, und/oder die an diese Verbindungen angeschlossene Bauteile, ursächlich für den gesuchten Fehler sein können. Diejenigen konkreten Verbindungen in der Schaltung, die zu den in der Liste enthaltenen Netztypen gehören, sowie die an diese Verbindungen angeschlossenen Bauteile werden ermittelt. Die so ermittelten Verbindungen und Bauteile werden zumindest vorrangig auf das Vorliegen von Fehlern überprüft.
-
Wird beispielsweise vermutet, dass die Stromversorgung der Schaltung an zentraler Stelle gestört ist, so kann die Fehlersuche zunächst auf diejenigen Verbindungen und Bauteile fokussiert werden, die die Versorgungsspannung führen sollten. Diese Suche führt mit hoher Wahrscheinlichkeit zu dem Ort, an dem die Versorgungsspannung entweder nicht eingespeist wird, obwohl sie eingespeist werden sollte, oder beispielsweise durch einen zumindest teilweisen Kurzschluss heruntergezogen wird.
-
Dabei können insbesondere beispielsweise mehrere Hypothesen für die Fehlerursache, und/oder die Liste der Netztypen, in absteigender Reihenfolge der Wahrscheinlichkeiten geordnet werden, mit denen die jeweilige Hypothese zutreffend ist, bzw. mit denen Verbindungen des jeweiligen Netztyps oder hieran angeschlossene Bauteile ursächlich für den gesuchten Fehler sind. Auf diese Weise wird der Erwartungswert für die benötigte Zeit bis zum Auffinden des Fehlers vermindert.
-
Das Verfahren zur Analyse kann insbesondere ganz oder teilweise computerimplementiert sein. Daher bezieht sich die Erfindung auch auf ein Computerprogramm mit maschinenlesbaren Anweisungen, die, wenn sie auf einem oder mehreren Computern ausgeführt werden, den oder die Computer dazu veranlassen, das beschriebene Verfahren auszuführen.
-
Ebenso bezieht sich die Erfindung auch auf einen maschinenlesbaren Datenträger und/oder auf ein Downloadprodukt mit dem Computerprogramm. Ein Downloadprodukt ist ein über ein Datennetzwerk übertragbares, d.h. von einem Benutzer des Datennetzwerks downloadbares, digitales Produkt, das beispielsweise in einem Online-Shop zum sofortigen Download feilgeboten werden kann.
-
Weiterhin kann ein Computer mit dem Computerprogramm, mit dem maschinenlesbaren Datenträger bzw. mit dem Downloadprodukt ausgerüstet sein.
-
Weitere, die Erfindung verbessernde Maßnahmen werden nachstehend gemeinsam mit der Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung anhand von Figuren näher dargestellt.
-
Figurenliste
-
Es zeigt:
- 1 Ausführungsbeispiel des Verfahrens 100 zur Analyse einer elektrischen Schaltung 1;
- 2 Ausführungsbeispiel des Verfahrens 200 zur Fehlersuche in einer elektrischen Schaltung 1.
-
1 ist ein schematisches Ablaufdiagramm eines Ausführungsbeispiels des Verfahrens 100 zur Analyse einer elektrischen Schaltung 1.
-
In Schritt 110 werden eine oder mehrere Netzlisten 11 der Schaltung 1 beschafft. Hierbei kann gemäß Block 111 die elektrische Schaltung 1 so in Netzlisten 11 unterteilt werden, dass jede Netzliste 11 sich höchstens auf eine vorgegebene Anzahl angeschlossener Bauteile 13 bezieht.
-
In Schritt 120 werden die eine oder mehreren Netzlisten einem Klassifizierungsmodell zugeführt. Gemäß Block 121 kann dem Klassifikationsmodell 2 zusätzlich zu mindestens einer Verbindung 12 ein Typ eines an diese Verbindung 12 angeschlossenen Bauteils 13, und/oder eine Funktion des Pins des Bauteils 13, an den die Verbindung 12 angeschlossen ist, zugeführt werden. Der Typ des Bauteils, und/oder die Funktion des Pins, kann gemäß Block 121a insbesondere beispielsweise aus
- • mindestens einer Bestückungsliste der Schaltung 1, und/oder
- • mindestens einer Bauteilgruppierung der Schaltung 1, und/oder
- • mindestens einem Datenblatt oder einer sonstigen Gebrauchsanweisung eines Bauteils 13, und/oder
- • mindestens einem Analyseergebnis eines weiteren Analysemodells ermittelt werden.
-
In Schritt 130 werden eine oder mehrere in der oder den Netzlisten 11 enthaltenen Verbindungen 12 werden von dem Klassifizierungsmodell 2 auf einen oder mehrere Netztypen 12a-12c aus einer vorgegebenen Auswahl von Netztypen 12a-12c abgebildet.
-
In Schritt 140 wird das Layout und/oder das Design der Schaltung 1 unter Heranziehung mindestens eines der ermittelten Netztypen 12a-12c auf Konformität mit einem vorgegebenen Regelsatz 3 geprüft. Die Schaltung kann mit jeder Regel entweder konform (OK) oder nicht konform (NOK) sein. Gemäß Block 141 kann mindestens eine Regel des Regelsatzes 3 beinhalten, dass Verbindungen 12 zweier vorgegebener Netztypen 12a-12c
- • keinen elektrischen Kontakt zueinander haben dürfen, und/oder
- • sich nicht kreuzen dürfen, und/oder
- • mit einem Mindestabstand zueinander verlaufen müssen, und/oder
- • durch Isolationsmittel voneinander isoliert sein müssen.
-
2 ist ein schematisches Ablaufdiagramm eines Ausführungsbeispiels des Verfahrens 200 zur Fehlersuche in einer elektrischen Schaltung 1, die mit einem zunächst unbekannten Fehler F behaftet ist.
-
In Schritt 210 wird mindestens eine Hypothese 4 für die Fehlerursache aufgestellt.
-
Gemäß Block 211 können mehrere Hypothesen 4 aufgestellt und in absteigender Reihenfolge der Wahrscheinlichkeiten geordnet werden, mit denen sie die Fehlerursache zutreffend beschreiben.
-
In Schritt 220 wird die Schaltung 1 mit dem zuvor beschriebenen Verfahren 100 analysiert.
-
In Schritt 230 wird anhand der mindestens einen Hypothese 4 eine Liste 5 von Netztypen 12a-12c ermittelt. Diese Netztypen 12a-12c werden so ausgewählt, dass gerade die zu diesen Netztypen 12a-12c gehörenden Verbindungen 12, und/oder die an diese Verbindungen 12 angeschlossene Bauteile 13, ursächlich für den gesuchten Fehler F sein können.
-
Gemäß Block 231 kann die Liste 5 der Netztypen 12a-12c in absteigender Reihenfolge der Wahrscheinlichkeiten geordnet werden, mit denen Verbindungen 12 des jeweiligen Netztyps 12a-12c oder hieran angeschlossene Bauteile 13 ursächlich für den gesuchten Fehler F sind.
-
In Schritt 240 werden die konkreten Verbindungen 12 in der Schaltung 1, die zu den in der Liste 5 enthaltenen Netztypen 12a-12c gehören, sowie die an diese Verbindungen 12 angeschlossenen Bauteile 13 ermittelt.
-
In Schritt 250 werden die so ermittelten Verbindungen 12 und Bauteile 13 werden zumindest vorrangig auf das Vorliegen von Fehlern überprüft. Das heißt, es können auch andere Verbindungen und Bauteile überprüft werden, aber die ermittelten Verbindungen 12 und Bauteile 13 werden bevorzugt.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- WO 2020234754 A1 [0004]
- CN 109918523 A [0004]
- US 2019392322 A1 [0004]