[go: up one dir, main page]

DE102021211948A1 - Computer-implemented method and system for determining a printed circuit board layout and/or information for placing groups of components on a printed circuit board - Google Patents

Computer-implemented method and system for determining a printed circuit board layout and/or information for placing groups of components on a printed circuit board Download PDF

Info

Publication number
DE102021211948A1
DE102021211948A1 DE102021211948.4A DE102021211948A DE102021211948A1 DE 102021211948 A1 DE102021211948 A1 DE 102021211948A1 DE 102021211948 A DE102021211948 A DE 102021211948A DE 102021211948 A1 DE102021211948 A1 DE 102021211948A1
Authority
DE
Germany
Prior art keywords
data
component group
layout
component
printed circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021211948.4A
Other languages
German (de)
Inventor
Frank Visosky
Kartheek Naga Sai Narayana Palepu
Prajwal Raveendra Kalmane
Subhash Chandra Pujari
Ralf John
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to PCT/EP2021/080012 priority Critical patent/WO2022096367A1/en
Publication of DE102021211948A1 publication Critical patent/DE102021211948A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/12Printed circuit boards [PCB] or multi-chip modules [MCM]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/20Design reuse, reusability analysis or reusability optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

Die Erfindung betrifft ein computerimplementiertes Verfahren und System zum Bestimmen eines Layouts (10) einer gedruckten Schaltung (1) und/oder von Informationen zum Platzieren von Komponentengruppen (CG1-CGn) auf einer gedruckten Schaltung (1). Die Erfindung betrifft ferner ein computerimplementiertes Verfahren zum Bereitstellen eines ersten Klassifikationsalgorithmus (A1) maschinellen Lernens zum Bestimmen eines Ähnlichkeitsmaßes (M) von ersten Komponenten- und/oder Layoutdaten (D3) zu in einer Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten (D4), ein Computerprogramm sowie einen computerlesbaren Datenträger.The invention relates to a computer-implemented method and system for determining a layout (10) of a printed circuit (1) and/or information for placing component groups (CG1-CGn) on a printed circuit (1). The invention also relates to a computer-implemented method for providing a first machine learning classification algorithm (A1) for determining a degree of similarity (M) of first component and/or layout data (D3) to second component group and/or layout data (D4 ), a computer program and a computer-readable data carrier.

Description

Die Erfindung betrifft ein computerimplementiertes Verfahren zum Bestimmen eines Layouts einer gedruckten Schaltung und/oder von Informationen zum Platzieren von Komponentengruppen auf einer gedruckten Schaltung.The invention relates to a computer-implemented method for determining a layout of a printed circuit board and/or information for placing groups of components on a printed circuit board.

Die Erfindung betrifft ferner ein computerimplementiertes Verfahren zum Bereitstellen eines ersten Klassifikationsalgorithmus maschinellen Lernens zum Bestimmen eines Ähnlichkeitsmaßes von ersten Komponenten- und/oder Layoutdaten zu in einer Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten.The invention further relates to a computer-implemented method for providing a first machine learning classification algorithm for determining a degree of similarity of first component and/or layout data to second component group and/or layout data stored in a database.

Die Erfindung betrifft des Weiteren ein System zum Bestimmen eines Layouts einer gedruckten Schaltung und/oder von Informationen zum Platzieren von Komponenten auf einer gedruckten Schaltung, ein Computerprogramm und einen computerlesbaren Datenträger.The invention further relates to a system for determining a layout of a printed circuit and/or information for placing components on a printed circuit, a computer program and a computer-readable data carrier.

US 2013091481 A offenbart ein computerimplementiertes Verfahren für die Wiederverwendung von Layoutmustern oder Layoutbeschränkungen, indem Teilschaltungen mit identischer oder ähnlicher schematischer Struktur auf der Grundlage einer Topologievergleichsstrategie identifiziert werden. US2013091481A discloses a computer-implemented method for reusing layout patterns or layout constraints by identifying sub-circuits with identical or similar schematic structure based on a topology comparison strategy.

Der ausgewählte Teilschaltkreis wird in eine Topologie transformiert, die die relativen Positionen zwischen den Instanzen des ausgewählten Teilschaltkreises darstellt. Auf der Grundlage der Topologie werden ein oder mehrere Teilschaltkreise mit identischer oder ähnlicher Topologie in einem vordefinierten Bereich eines Schaltplans erkannt und identifiziert. Dementsprechend wird das Layout oder die Layoutbeschränkung des ausgewählten Teilschaltkreises kopiert und mit jedem der identifizierten Teilschaltkreise verknüpft. Darüber hinaus werden die identifizierten Teilschaltungen nach ihrer Identifizierung auf einer Benutzeroberfläche mit Notationen aufgelistet.The selected sub-circuit is transformed into a topology that represents the relative positions between the instances of the selected sub-circuit. Based on the topology, one or more sub-circuits with identical or similar topology are detected and identified in a predefined area of a circuit diagram. Accordingly, the layout or layout constraint of the selected sub-circuit is copied and linked to each of the identified sub-circuits. In addition, the identified sub-circuits are listed on a user interface with notations after their identification.

Ferner offenbart US 2019042684 A1 ein Verfahren zur schematisch gesteuerten analogen Schaltungslayout-Automatisierung. Das Verfahren besteht darin, dass ein Benutzer Eingaben in den Schaltplan einer in einem Schaltungslayout-Werkzeug dargestellten analogen Schaltung vornimmt, um Komponenten in Komponentengruppen zu gruppieren.Further revealed US2019042684A1 a method for schematic controlled analog circuit layout automation. The method consists of a user providing input to the schematic of an analog circuit represented in a circuit layout tool to group components into component groups.

Als Reaktion auf die Gruppierung von Komponenten kann das Schaltungslayout-Werkzeug automatisch Verbindungen zwischen Komponenten in jeder Gruppe in Übereinstimmung mit dem Schaltplan erzeugen. Auf der Grundlage von Benutzereingaben können die Gruppen an gewünschte Stellen innerhalb eines physikalischen Layoutplans verschoben werden. Danach kann das Schaltungslayout-Werkzeug automatisch Verbindungen zwischen den einzelnen Gruppen in Übereinstimmung mit dem Schaltplan erzeugen. Ein physikalischer Layoutplan kann dann als Antwort auf die vollständige Generierung von Verbindungen zwischen den Gruppen bereitgestellt werden.In response to the grouping of components, the circuit layout tool can automatically create connections between components in each group in accordance with the circuit diagram. Based on user input, the groups can be moved to desired locations within a physical layout map. After that, the circuit layout tool can automatically create connections between each group according to the circuit diagram. A physical layout plan can then be provided in response to the full generation of connections between the groups.

Ein benutzerfreundliches und effizientes Identifizieren von ähnlichen als in der Vergangenheit verwendeten Layouts und/oder Komponentengruppen zum Bestimmen eines neuen Layouts einer gedruckten Schaltung sowie ein automatisches Platzieren von erstellten Komponenten auf der gedruckten Schaltung ist durch die oben genannten Druckschriften nur bedingt möglich.A user-friendly and efficient identification of layouts and/or groups of components similar to those used in the past for determining a new layout of a printed circuit and automatic placement of created components on the printed circuit is only possible to a limited extent by the publications mentioned above.

Der Erfindung liegt somit die Aufgabe zugrunde, ein verbessertes Verfahren und System zum Bestimmen eines Layouts einer gedruckten Schaltung und/oder von Informationen zum Platzieren von Komponentengruppen auf einer gedruckten Schaltung bereitzustellen.It is therefore an object of the invention to provide an improved method and system for determining a layout of a printed circuit board and/or information for placing groups of components on a printed circuit board.

Die Aufgabe wird mit einem Computerimplementiertes Verfahren zum Bestimmen eines Layouts einer gedruckten Schaltung und/oder von Informationen zum Platzieren von Komponentengruppen auf einer gedruckten Schaltung mit den Merkmalen des Patentanspruchs 1 gelöst.The object is achieved with a computer-implemented method for determining a layout of a printed circuit board and/or information for placing component groups on a printed circuit board with the features of patent claim 1.

Darüber hinaus wird die Aufgabe mit einem computerimplementierten Verfahren zum Bereitstellen eines ersten Klassifikationsalgorithmus maschinellen Lernens zum Bestimmen eines Ähnlichkeitsmaßes von ersten Komponenten- und/oder Layoutdaten zu in einer Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten mit den Merkmalen des Patentanspruchs 12 gelöst.In addition, the object is achieved with a computer-implemented method for providing a first machine learning classification algorithm for determining a degree of similarity of first component and/or layout data to second component group and/or layout data stored in a database with the features of claim 12.

Des Weiteren wird die Aufgabe mit einem System zum Bestimmen eines Layouts einer gedruckten Schaltung und/oder von Informationen zum Platzieren von Komponenten auf einer gedruckten Schaltung mit den Merkmalen des Patentanspruchs 13 gelöst.Furthermore, the object is achieved with a system for determining a layout of a printed circuit and/or information for placing components on a printed circuit with the features of claim 13.

Ferner wird die Aufgabe mit einem Computerprogramm mit den Merkmalen des Patentanspruchs 14 und einem Computerlesbarer Datenträger mit den Merkmalen des Patentanspruchs 15 gelöst.Furthermore, the object is achieved with a computer program having the features of patent claim 14 and a computer-readable data carrier having the features of patent claim 15.

Offenbarung der ErfindungDisclosure of Invention

Die vorliegende Erfindung schafft ein computerimplementiertes Verfahren zum Bestimmen eines Layouts einer gedruckten Schaltung und/oder von Informationen zum Platzieren von Komponentengruppen auf einer gedruckten Schaltung.The present invention provides a computer-implemented method for determining a printed circuit board layout and/or information for placing groups of components on a printed circuit board.

Das Verfahren umfasst ein Empfangen von Daten eines Schaltplans der gedruckten Schaltung oder von in einer ersten Datenbank gespeicherten Identifikationsdaten eines Schaltplans der gedruckten Schaltung und Aufrufen des den Identifikationsdaten zugeordneten Layouts der gedruckten Schaltung in der ersten Datenbank.The method includes receiving data of a circuit diagram of the printed circuit or identification data of a circuit diagram of the printed circuit stored in a first database and retrieving the layout of the printed circuit associated with the identification data in the first database.

Das Verfahren umfasst ferner eine Extraktion von ersten Komponentengruppen- und/oder Layoutdaten aus den Daten des Schaltplans des Layouts der gedruckten Schaltung.The method further comprises extracting first component group and/or layout data from the circuit diagram data of the printed circuit board layout.

Das Verfahren umfasst des Weiteren ein Bestimmen eines Ähnlichkeitsmaßes der extrahierten ersten Komponentengruppen- und/oder Layoutdaten zu in der ersten Datenbank und/oder in einer zweiten Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten unter Verwendung eines ersten Klassifikationsalgorithmus maschinellen Lernens.The method further includes determining a degree of similarity of the extracted first component group and/or layout data to second component group and/or layout data stored in the first database and/or in a second database using a first machine learning classification algorithm.

Das Verfahren umfasst darüber hinaus ein Ausgeben eines Datensatzes umfassend eine vorbestimmte Anzahl zweiter Komponentengruppen und/oder Layouts, welche ein vorgegebenes Ähnlichkeitsmaß aufweisen.The method also includes outputting a data set comprising a predetermined number of second component groups and/or layouts which have a predetermined degree of similarity.

Die vorliegende Erfindung schafft Des Weiteren ein computerimplementiertes Verfahren zum Bereitstellen eines ersten Klassifikationsalgorithmus maschinellen Lernens zum Bestimmen eines Ähnlichkeitsmaßes von ersten Komponenten- und/oder Layoutdaten zu in einer Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten.The present invention further creates a computer-implemented method for providing a first machine learning classification algorithm for determining a degree of similarity of first component and/or layout data to second component group and/or layout data stored in a database.

Das Verfahren umfasst ein Empfangen erster Trainingsdaten extrahierter Komponenten- und/oder Layoutdaten einer gedruckten Schaltung sowie ein Empfangen zweiter Trainingsdaten eines Ähnlichkeitsmaßes der extrahierten Komponenten- und/oder Layoutdaten zu in einer Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten der gedruckten Schaltung.The method includes receiving first training data of extracted component and/or layout data of a printed circuit and receiving second training data of a similarity measure of the extracted component and/or layout data to second component group and/or layout data of the printed circuit stored in a database.

Darüber hinaus umfasst das Verfahren ein Trainieren des ersten Klassifikationsalgorithmus maschinellen Lernens durch einen Optimierungsalgorithmus, welcher einen Extremwert einer Verlustfunktion berechnet.In addition, the method includes training the first machine learning classification algorithm using an optimization algorithm, which calculates an extreme value of a loss function.

Die vorliegende Erfindung schafft ferner ein System zum Bestimmen eines Layouts einer gedruckten Schaltung und/oder von Informationen zum Platzieren von Komponenten auf einer gedruckten Schaltung, aufweisend eine Recheneinrichtung, welche dazu eingerichtet ist, das erfindungsgemäße Verfahren auszuführen.The present invention also creates a system for determining a layout of a printed circuit and/or information for placing components on a printed circuit, having a computing device which is set up to carry out the method according to the invention.

Die vorliegende Erfindung schafft ferner ein Computerprogramm mit Programmcode, um das erfindungsgemäße Verfahren durchzuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird sowie einen computerlesbaren Datenträger mit Programmcode eines Computerprogramms, um das erfindungsgemäße Verfahren durchzuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.The present invention also creates a computer program with program code to carry out the method according to the invention when the computer program is run on a computer and a computer-readable data carrier with program code of a computer program to carry out the method according to the invention when the computer program is run on a computer.

Eine Idee der vorliegenden Erfindung ist es, ein Verfahren zur Darstellung eines PCB-Layouts unter Verwendung eines Ähnlichkeitsalgorithmus vorzusehen, um die Ähnlichkeit zwischen einem neuen vorgeschlagenen Layout und früheren Layouts zu berechnen.An idea of the present invention is to provide a method for representing a PCB layout using a similarity algorithm to calculate the similarity between a new proposed layout and previous layouts.

Darüber wird eine Benutzerschnittstelle bereitgestellt, über die ein Benutzer das neue PCB-Layout hochladen und vom System Empfehlungen für ähnliche Layouts erhalten kann, die Einschränkungen wie Bauteilfläche, Kühlfläche usw. genügen.A user interface is also provided through which a user can upload the new PCB layout and receive recommendations from the system for similar layouts that satisfy constraints such as component area, cooling area, etc.

Das Identifizieren von ähnlichen Layouts wird erreicht, indem eine Methodik zur Extraktion von Merkmalen aus PCB-Layouts vorgesehen ist. Die extrahierten Merkmale werden als Input für den Ähnlichkeitssuchalgorithmus bereitgestellt.Identifying similar layouts is accomplished by providing a methodology for extracting features from PCB layouts. The extracted features are provided as input for the similarity search algorithm.

Die Ausgabe des Ähnlichkeitssuchalgorithmus wird einem Benutzer angezeigt, der ein Layout als relevant oder nicht relevant angeben kann. Der Algorithmus wird mit der Benutzereingabe weiter optimiert und lernt aus dem Benutzer-Feedback.The output of the similarity search algorithm is displayed to a user who can specify a layout as relevant or not relevant. The algorithm is further optimized with user input and learns from user feedback.

Vorteilhafte Ausführungsformen und Weiterbildungen ergeben sich aus den Unteransprüchen sowie aus der Beschreibung unter Bezugnahme auf die Figuren.Advantageous embodiments and developments result from the dependent claims and from the description with reference to the figures.

Ein PCB-Layout ist definiert als eine ASCII-Datei, die aus Informationen über Design, Platzierung, Anschlüssen und dergleichen besteht. Ferner enthält die ASCII-Datei ebenfalls bauteilspezifische Informationen. Die relevantesten davon sind der Gehäusename, die Platzierungsinformationen für ein Bauteil sowie die Netzinformation, die die Verbindungen zwischen den Komponenten definiert. A PCB layout is defined as an ASCII file consisting of information about design, placement, connectors and the like. The ASCII file also contains component-specific information. The most relevant of these are the package name, the placement information for a component, and the mesh information that defines the connections between the components.

Eine Komponente ist eine der Grundeinheiten einer Schaltung. In einem PCB-Layout wird eine Komponente mit einem Gehäusenamen und einer Referenzbezeichnung identifiziert. Der Gehäusename stellt die Eigenschaften eines Bauteils dar. Daher können die Bauteile innerhalb einer Schaltung denselben Gehäusenamen haben, wenn sie dieselben Eigenschaften aufweisen.A component is one of the basic units of a circuit. In a PCB layout, a component is identified with a package name and reference designation. The package name represents the properties of a component. Therefore, components within a circuit can have the same package name if they share the same properties.

Um die Gesamtfunktionalität eines elektronischen Bauelements zu erreichen, besteht die Schaltung aus mehreren Modulen oder Komponentengruppen, die auf der Grundlage von Domänenbeschränkungen miteinander verbunden sind.To achieve the overall functionality of an electronic device, the circuit consists of multiple modules or groups of components that are interconnected based on domain constraints.

Komponentengruppen werden durch eine Hauptkomponente identifiziert, bei der es sich in der Regel um einen integrierten Schaltkreis handelt. Diese Hauptkomponente, die mit anderen Komponenten (als periphere Komponenten bezeichnet) mit einer gewissen Namenskonvention verbunden ist, bildet eine Komponentengruppe.Component groups are identified by a main component, which is typically an integrated circuit. This main component, connected to other components (referred to as peripheral components) with some naming convention, forms a component group.

Die Komponenten-Platzierungsinformationen bestehen aus x-, y-Koordinaten, Winkel und Platzierungsseite. Da eine Leiterplatte eine Seite A und eine Seite B aufweist, kann eine Komponente auf jeder der Seiten platziert werden.The component placement information consists of x, y coordinates, angle and placement side. Because a circuit board has an A side and a B side, a component can be placed on either side.

Gemäß einer bevorzugten Weiterbildung ist vorgesehen, dass aus den Daten, insbesondere einer ASCII-Datei, des Schaltplans der gedruckten Schaltung Komponentendaten, Komponentenpindaten, Netzdaten, Layoutdaten und/oder Layoutmetadaten extrahiert werden. Somit können in vorteilhafter Weise Komponentengruppen und/oder ein Layout aus der ASCII-Datei extrahiert werden.According to a preferred development, it is provided that component data, component pin data, network data, layout data and/or layout metadata are extracted from the data, in particular an ASCII file, of the circuit diagram of the printed circuit. Thus, component groups and/or a layout can be extracted from the ASCII file in an advantageous manner.

Gemäß einer weiteren bevorzugten Weiterbildung ist vorgesehen, dass regelmäßige oder unregelmäßige Formen eines von der Komponentengruppe oder dem Layout bedeckten Bereichs der gedruckten Schaltung in ein durch eine Folge von Punkten in einem 2D-Koordninatensystem repräsentiertes Polygon umwandelt werden. Damit kann in vorteilhafter Weise eine exakte Flächenberechnung des durch die Komponentengruppen bedeckten Bereichs der gedruckten Schaltung ermöglicht werden.According to a further preferred development, it is provided that regular or irregular shapes of an area of the printed circuit covered by the component group or the layout are converted into a polygon represented by a sequence of points in a 2D coordinate system. In this way, an exact area calculation of the area of the printed circuit covered by the component groups can be made possible in an advantageous manner.

Gemäß einer weiteren bevorzugten Weiterbildung ist vorgesehen, dass das 2D-Koordninatensystem eine Vielzahl von, insbesondere eine Seitenlänge von zwischen 0,001 und 0,1 mm aufweisenden, quadratischen Feldern umfasst, wobei zur Schätzung des von der Komponentengruppe oder dem Layout bedeckten Bereichs der gedruckten Schaltung bestimmt wird, welche der quadratischen Felder innerhalb des Polygons angeordnet sind. Die geringe Dimensionierung der Felder ermöglicht somit eine feine Auflösung bei der Schätzung des durch die Komponentengruppe oder das Layout bedeckten Bereichs der gedruckten Schaltung.According to a further preferred development, it is provided that the 2D coordinate system comprises a large number of square fields, in particular with a side length of between 0.001 and 0.1 mm, with the area of the printed circuit covered by the component group or the layout being determined for estimating which of the square fields are arranged inside the polygon. The small dimensioning of the fields thus allows a fine resolution in the estimation of the area of the printed circuit covered by the component group or the layout.

Gemäß einer weiteren bevorzugten Weiterbildung ist vorgesehen, dass für jede Komponentengruppe und/oder jedes Layout eine äußere Grenze erstellt wird, wobei für jedes quadratische Feld durch einen Ray-Casting-Algorithmus ermittelt wird, ob ein Mittelpunkt des Feldes innerhalb des Polygons angeordnet ist. Diese Ermittlung ermöglicht die Feststellung, ob das quadratische Feld im Wesentlichen innerhalb oder außerhalb des Polygons angeordnet ist.According to a further preferred development, an outer boundary is created for each component group and/or each layout, with a ray-casting algorithm being used for each square field to determine whether a center point of the field is located within the polygon. This determination enables one to determine whether the square field is located substantially inside or outside the polygon.

Gemäß einer weiteren bevorzugten Weiterbildung ist vorgesehen, dass das Ähnlichkeitsmaß der extrahierten ersten Komponentengruppen- und/oder Layoutdaten zu den in der zweiten Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten durch Berechnen eines Abstandsmaßes, insbesondere einer gewichteten euklidischen Distanz, bestimmt wird. Somit kann die Ähnlichkeit der extrahierten ersten Komponentengruppen- und/oder Layoutdaten zu den in der zweiten Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten unter Verwendung geometrischer Aspekte exakt berechnet werden.According to a further preferred development, it is provided that the degree of similarity of the extracted first component group and/or layout data to the second component group and/or layout data stored in the second database is determined by calculating a distance measure, in particular a weighted Euclidean distance. Thus, the similarity of the extracted first component group and/or layout data to the second component group and/or layout data stored in the second database can be calculated exactly using geometric aspects.

Gemäß einer weiteren bevorzugten Weiterbildung ist vorgesehen, dass der durch den ersten Klassifikationsalgorithmus maschinellen Lernens ausgegebene Datensatz durch einen zweiten Klassifikationsalgorithmus maschinellen Lernens empfangen wird, welcher für jede der vorbestimmten Anzahl von Komponentengruppen und/oder Layouts einen Relevanz-Score ausgibt, auf dessen Basis eine Gewichtung des ersten Klassifikationsalgorithmus maschinellen Lernens angepasst wird. Das Ausgeben des Relevanz-Score ermöglicht somit eine Auflistung von Komponentengruppen und/oder Layouts entsprechend ihrer Relevanz.According to a further preferred development, it is provided that the data set output by the first machine learning classification algorithm is received by a second machine learning classification algorithm, which outputs a relevance score for each of the predetermined number of component groups and/or layouts, on the basis of which a weighting of the first classification algorithm is adapted to machine learning. Outputting the relevance score thus enables component groups and/or layouts to be listed according to their relevance.

Gemäß einer weiteren bevorzugten Weiterbildung ist vorgesehen, dass aus den extrahierten ersten Komponentengruppendaten ein Benutzer dritte Komponentengruppendaten auswählt, wobei für das Bestimmen des Ähnlichkeitsmaßes der extrahierten ersten Komponentengruppendaten zu in der zweiten Datenbank gespeicherten, zweite Komponentengruppen- und/oder Layoutdaten vierte Komponentengruppendaten bestimmt werden, deren Hauptkomponente zu einer Hauptkomponente der durch den Benutzer ausgewählten dritten Komponentengruppendaten identisch ist.According to a further preferred development, it is provided that a user selects third component group data from the extracted first component group data, with fourth component group data being determined for determining the degree of similarity of the extracted first component group data to second component group and/or layout data stored in the second database main component is identical to a main component of the third component group data selected by the user.

Durch die Einschränkung der Bestimmung des Ähnlichkeitsmaßes auf Komponentengruppen, deren Hauptkomponente identisch zu der Hauptkomponente der durch den Benutzer ausgewählten dritten Komponentengruppendaten ist, kann in vorteilhafter Weise eine Vorauswahl getroffen werden, welche eine exaktere Ähnlichkeitsbestimmung des nachgelagerten Vergleichsverfahrens ermöglicht.By restricting the determination of the degree of similarity to component groups whose main component is identical to the main component of the third component group data selected by the user, a preselection can be made in an advantageous manner, which enables a more exact similarity determination of the subsequent comparison method.

Gemäß einer weiteren bevorzugten Weiterbildung ist vorgesehen, dass den in der zweiten Datenbank gespeicherten, zweiten Komponentengruppendaten und den vom Benutzer ausgewählten dritten Komponentengruppendaten jeweils ein numerischer Wert zugeordnet wird, wobei die jeweiligen Komponentengruppendaten unter Verwendung des numerischen Wertes in eine Vektorrepräsentation umgewandelt werden, und wobei ein jeweiliger Komponentengruppenvektor auf einen Wert zwischen null und eins normalisiert wird.According to a further preferred development, it is provided that the second components stored in the second database assigning a numeric value to each of the group data and the user selected third component group data, converting the respective component group data to a vector representation using the numeric value, and normalizing a respective component group vector to a value between zero and one.

Die Umwandlung der jeweiligen Komponentengruppendaten in eine Vektorrepräsentation ermöglicht eine leichtere Verarbeitung sowie Vergleichbarkeit der Komponentengruppendaten zur Feststellung der Ähnlichkeit zwischen verschiedenen Datensätzen.The conversion of the respective component group data into a vector representation enables easier processing and comparability of the component group data for determining the similarity between different data sets.

Gemäß einer weiteren bevorzugten Weiterbildung ist vorgesehen, dass eine Ähnlichkeit zwischen einem Vektor aller Komponentengruppendaten und einem Vektor der durch den Benutzer ausgewählten dritten Komponentengruppendaten berechnet wird, wobei ein Ähnlichkeits-Score zwischen den durch den Benutzer ausgewählten dritten Komponentengruppendaten und den in der Datenbank gespeicherten zweiten Komponentengruppendaten, insbesondere unter Verwendung eines kosinusähnlichkeitsbasierten Verfahrens, berechnet wird. Somit kann in effizienter Weise ein Ähnlichkeits-Score zwischen dem Vektor aller Komponentengruppendaten und dem Vektor der durch den Benutzer ausgewählten dritten Komponentengruppendaten berechnet werden.According to a further preferred development, it is provided that a similarity between a vector of all component group data and a vector of the third component group data selected by the user is calculated, with a similarity score between the third component group data selected by the user and the second component group data stored in the database , in particular using a cosine similarity based method. Thus, a similarity score can be efficiently calculated between the vector of all component group data and the vector of the third component group data selected by the user.

Gemäß einer weiteren bevorzugten Weiterbildung ist vorgesehen, dass der Benutzer aus den mit dem Ähnlichkeits-Score versehenen Komponentengruppendaten fünfte Komponentengruppendaten auswählt, wobei zwischen den fünften Komponentengruppendaten und den durch den Benutzer ausgewählten dritten Komponentengruppendaten eine Zuordnung durch Identifizieren von Komponenten mit gleicher Package-Bezeichnung durchgeführt wird.According to a further preferred development, it is provided that the user selects fifth component group data from the component group data provided with the similarity score, with an assignment being carried out between the fifth component group data and the third component group data selected by the user by identifying components with the same package designation .

Die Package-Bezeichnung kann somit in vorteilhafter Weise dazu herangezogen werden, eine verbesserte Zuordnung der durch den Benutzer ausgewählten fünften Komponentengruppendaten zu den durch den Benutzer ausgewählten dritten Komponentengruppendaten zu ermöglichen.The package designation can thus be used in an advantageous manner to enable an improved assignment of the fifth component group data selected by the user to the third component group data selected by the user.

Die beschriebenen Ausgestaltungen und Weiterbildungen lassen sich beliebig miteinander kombinieren.The configurations and developments described can be combined with one another as desired.

Weitere mögliche Ausgestaltungen, Weiterbildungen und Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmale der Erfindung.Further possible configurations, developments and implementations of the invention also include combinations of features of the invention described above or below with regard to the exemplary embodiments that are not explicitly mentioned.

In einer vorteilhaften Weiterbildung kann vorgesehen sein, dass die gedruckte Schaltung entsprechend dieses Layouts bzw. entsprechend dieser Informationen zum Platzieren von Komponentengruppen hergestellt wird. D.h. dass eine Fertigungsmaschine vorgesehen sein kann, die betrieben wird, um die gedruckte Schaltung entsprechend dieses Layouts bzw. entsprechend dieser Informationen zum Platzieren von Komponentengruppen herzustellenIn an advantageous development, it can be provided that the printed circuit is produced according to this layout or according to this information for placing groups of components. That is, a manufacturing machine may be provided which is operated to manufacture the printed circuit board according to this layout or according to this information for placing groups of components

Figurenlistecharacter list

Die beiliegenden Zeichnungen sollen ein weiteres Verständnis der Ausführungsformen der Erfindung vermitteln. Sie veranschaulichen Ausführungsformen und dienen im Zusammenhang mit der Beschreibung der Erklärung von Prinzipien und Konzepten der Erfindung.The accompanying drawings are provided to provide a further understanding of embodiments of the invention. They illustrate embodiments and, together with the description, serve to explain principles and concepts of the invention.

Andere Ausführungsformen und viele der genannten Vorteile ergeben sich im Hinblick auf die Zeichnungen. Die dargestellten Elemente der Zeichnungen sind nicht notwendigerweise maßstabsgetreu zueinander gezeigt.Other embodiments and many of the foregoing advantages will become apparent by reference to the drawings. The illustrated elements of the drawings are not necessarily shown to scale with respect to one another.

Es zeigen:

  • 1-4 ein Ablaufdiagramm eines computerimplementierten Verfahrens zum Bestimmen eines Layouts einer gedruckten Schaltung gemäß einer bevorzugten Ausführungsform der Erfindung;
  • 5 ein Ablaufdiagramm eines computerimplementierten Verfahrens zum Bereitstellen eines ersten Klassifikationsalgorithmus maschinellen Lernens zum Bestimmen eines Ähnlichkeitsmaßes von ersten Komponenten- und/oder Layoutdaten zu in einer Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten;
  • 6-8 ein Ablaufdiagramm eines computerimplementierten Verfahrens zum Bestimmen von Informationen zum Platzieren von Komponentengruppen auf einer gedruckten Schaltung gemäß der bevorzugten Ausführungsform der Erfindung;
  • 9 eine schematische Darstellung eines Systems zum Bestimmen eines Layouts einer gedruckten Schaltung und/oder von Informationen zum Platzieren von Komponenten auf einer gedruckten Schaltung.
Show it:
  • 1-4 a flowchart of a computer-implemented method for determining a layout of a printed circuit board according to a preferred embodiment of the invention;
  • 5 a flowchart of a computer-implemented method for providing a first machine learning classification algorithm for determining a degree of similarity of first component and/or layout data to second component group and/or layout data stored in a database;
  • 6-8 Figure 12 is a flowchart of a computer-implemented method for determining information for placing groups of components on a printed circuit board in accordance with the preferred embodiment of the invention;
  • 9 FIG. 12 is a schematic representation of a system for determining a printed circuit board layout and/or information for placing components on a printed circuit board.

In den Figuren der Zeichnungen bezeichnen gleiche Bezugszeichen gleiche oder funktionsgleiche Elemente, Bauteile oder Komponenten, soweit nichts Gegenteiliges angegeben ist.In the figures of the drawings, the same reference symbols denote the same or functionally the same Items, parts or components unless otherwise noted.

1 zeigt ein Ablaufdiagramm eines computerimplementierten Verfahrens zum Bestimmen eines Layouts einer gedruckten Schaltung gemäß einer bevorzugten Ausführungsform der Erfindung. 1 FIG. 12 shows a flow chart of a computer-implemented method for determining a layout of a printed circuit board according to a preferred embodiment of the invention.

Ein Entwurf des Layouts und die Platzierungsinformationen der Komponenten sind wiederverwendbar, da viele der Untermodule projektübergreifend verwendet werden. Bei einem PCB-Layoutdesign handelt es sich um eine komplexe Struktur mit verschiedenen Detailebenen, die in der Designdatei enthalten sind.A draft layout and component placement information is reusable as many of the sub-modules are shared across projects. A PCB layout design is a complex structure with various levels of detail included in the design file.

Daher wird ein Verfahren bereitgestellt, mit dem vorherige Layouts durchsucht werden können, und relevante Layouts empfohlen werden, die ein Layouter zur Lösung einer neuen Produktanforderung verwenden kann.Therefore, a method is provided to browse previous layouts and recommend relevant layouts that a layout artist can use to solve a new product requirement.

Ein Layouter bzw. Benutzer U lädt eine neue ASCII-Datei hoch, aus der Merkmale f1 bis fn bzw. Daten D1 eines Schaltplans der gedruckten Schaltung 1 extrahiert und mit den historischen Layouts verglichen werden, um die 10 wichtigsten/ähnlichen Projekte zu finden. Alternativ kann die Anzahl der wichtigsten/ähnlichen Projekte beispielsweise geringer oder höher als 10 sein.A layouter or user U uploads a new ASCII file from which features f1 to fn or data D1 of a circuit diagram of the printed circuit board 1 are extracted and compared with the historical layouts to find the 10 most important/similar projects. Alternatively, the number of most important/similar projects can be less or more than 10, for example.

Ein Parser extrahiert die unten aufgeführten relevanten Informationen bzw. Daten aus der ASCII-Datei.A parser extracts the relevant information or data listed below from the ASCII file.

Es erfolgt eine Extraktion der Komponenteninformationen wie z.B. Gehäuseinformationen, Platzierung der Komponente, geometrische Koordinaten der Komponente und/oder eine Höhe der Komponente sowie eine Extraktion der Komponenten-Pin-Informationen wie z.B. eine Anzahl der Pins für eine Komponente und/oder eine Anzahl der tatsächlich angeschlossenen Pins.The component information is extracted, such as housing information, component placement, geometric coordinates of the component and/or a height of the component, and component pin information is extracted, such as a number of pins for a component and/or a number of actual connected pins.

Darüber hinaus erfolgen eine Extraktion der Netzinformation d.h. der Verbindungsinformation zwischen den Komponenten auf der Leiterplatte, wie z.B. der Pin, an den das Netz angeschlossen ist, die Art des Netzes, Spannung und Strom, die durch das Netz fließen, eine Extraktion der Informationen auf Layoutebene wie Anzahl der leitenden Lagen, Kühllagen mit exakten Koordinaten auf der Platine sowie eine Extraktion von Meta-Informationen wie Leiterdicke und/oder CDCI-Werte.In addition, there is an extraction of the net information, i.e. the connection information between the components on the circuit board, such as the pin to which the net is connected, the type of net, voltage and current flowing through the net, an extraction of the information at the layout level like number of conductive layers, cooling layers with exact coordinates on the board as well as an extraction of meta-information like conductor thickness and/or CDCI values.

Diese Ergebnisse werden dann vom Layouter wiederverwendet, um das bestehende Design zu übernehmen und Änderungen daran vorzunehmen, anstatt es von Grund auf neu zu erstellen.These results are then reused by the layout artist to take the existing design and make changes to it, rather than creating it from scratch.

Ein Layoutentwickler kann alternativ in einer ersten Datenbank DB1 gespeicherte Identifikationsdaten D2 bzw. eine historische Projekt-ID eines Schaltplans der gedruckten Schaltung 1 eingeben, auf welcher Basis das den Identifikationsdaten D2 zugeordnete Layout 10 der gedruckten Schaltung 1 in der ersten Datenbank DB1 abgerufen wird.Alternatively, a layout developer can enter identification data D2 stored in a first database DB1 or a historical project ID of a circuit diagram of the printed circuit 1, on the basis of which the layout 10 of the printed circuit 1 assigned to the identification data D2 is retrieved in the first database DB1.

Die Gewichtung W der Merkmale f1 bis fn wird zunächst von Domänenexperten festgelegt. Die Pipeline ermöglicht auch einen Benutzer-Feedback-Mechanismus, bei dem diese Gewichtungen auf der Grundlage des Benutzerverhaltens im Laufe der Zeit aktualisiert werden.The weight W of the features f1 to fn is initially determined by domain experts. The pipeline also enables a user feedback mechanism where these weights are updated over time based on user behavior.

Ferner erfolgt ein Bestimmen S4 eines Ähnlichkeitsmaßes M der extrahierten ersten Komponentengruppen- und/oder Layoutdaten D3 zu in der ersten Datenbank DB1 und/oder in einer zweiten Datenbank DB2 gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten D4 unter Verwendung eines ersten Klassifikationsalgorithmus A1 maschinellen Lernens.A similarity measure M of the extracted first component group and/or layout data D3 to the second component group and/or layout data D4 stored in the first database DB1 and/or in a second database DB2 is also determined S4 using a first classification algorithm A1 machine learning .

Darüber hinaus erfolgt ein Ausgeben S5 eines Datensatzes D5 umfassend eine vorbestimmte Anzahl zweiter Komponentengruppen und/oder Layouts 10, welche ein vorgegebenes Ähnlichkeitsmaß M aufweisen.In addition, a data set D5 is output S5 comprising a predetermined number of second component groups and/or layouts 10, which have a predetermined degree of similarity M.

2 zeigt ein Ablaufdiagramm eines Teilaspektes des computerimplementierten Verfahrens zum Bestimmen des Layouts der gedruckten Schaltung gemäß der bevorzugten Ausführungsform der Erfindung. 2 Figure 12 shows a flow chart of a partial aspect of the computer-implemented method for determining the layout of the printed circuit board in accordance with the preferred embodiment of the invention.

Regelmäßige oder unregelmäßige Formen eines von der Komponentengruppe 12 oder dem Layout 10 bedeckten Bereichs der gedruckten Schaltung 1 werden in ein durch eine Folge von Punkten Pxy in einem 2D-Koordninatensystem repräsentiertes Polygon PG umwandelt.Regular or irregular shapes of an area of the printed circuit board 1 covered by the component group 12 or the layout 10 are converted into a polygon PG represented by a sequence of points Pxy in a 2D coordinate system.

Das 2D-Koordninatensystem umfasst eine Vielzahl von, insbesondere eine Seitenlänge von zwischen 0,001 und 0,1 mm, vorzugsweise 0,01 mm aufweisenden, quadratischen Feldern 14. Zur Schätzung des von der Komponentengruppe 12 oder dem Layout 10 bedeckten Bereichs der gedruckten Schaltung 1 wird bestimmt, welche der quadratischen Felder 14 innerhalb des Polygons angeordnet sind.The 2D coordinate system comprises a large number of square fields 14, in particular with a side length of between 0.001 and 0.1 mm, preferably 0.01 mm determines which of the square fields 14 are located within the polygon.

Für jede Komponentengruppe 12 und/oder jedes Layout 10 wird ferner eine äußere Grenze erstellt wird, wobei für jedes quadratische Feld 14 durch einen Ray-Casting-Algorithmus ermittelt wird, ob ein Mittelpunkt des Feldes 14 innerhalb des Polygons angeordnet ist.An outer boundary is also established for each component group 12 and/or each layout 10, and for each square field 14 it is determined by a ray-casting algorithm whether a center point of the field 14 is located within the polygon.

Um das Endziel der Identifizierung der eingeschlossenen Region zu erreichen, schlagen wir den folgenden Algorithmus vor.To achieve the final goal of identifying the trapped region, we propose the following algorithm.

Die quadratischen Felder 14 sind durch 4 Eckpunkte und ein Zentrum dargestellt. Für jedes quadratischen Feld 14 finden wir mit dem Ray Casting Algorithmus heraus, ob das Zentrum des Feldes 14 innerhalb der Geometrie liegt oder nicht. Mit dem Ray Casting Algorithmus wird eine unendliche Linie vom ausgewählten Punkt zu einem unendlichen Raum gezeichnet. Wenn die Anzahl der Schnittpunkte mit dem Polygon ungerade ist, befindet sich der Punkt innerhalb des Polygons. Wenn die Anzahl der Schnittpunkte mit dem Polygon geradzahlig ist, befindet sich der Punkt außerhalb des Polygons.The square fields 14 are represented by 4 corner points and a center. For each square field 14 we use the ray casting algorithm to find out whether the center of the field 14 is inside the geometry or not. With the Ray Casting algorithm, an infinite line is drawn from the selected point to an infinite space. If the number of intersections with the polygon is odd, the point is inside the polygon. If the number of intersections with the polygon is an even number, the point is outside the polygon.

Der von einer Schicht eingeschlossene Bereich könnte durch eine Vereinigung aller Geometrien innerhalb der Schicht bestimmt werden. Diese Information könnte verwendet werden, um die von einer Schicht bedeckte Fläche Bauteil, Kühlfläche usw. und/oder die Anzahl der Überlappungen zwischen zwei Schichten zu berechnen.The area enclosed by a layer could be determined by a union of all geometries within the layer. This information could be used to calculate the area covered by a layer, component, cooling area, etc. and/or the number of overlaps between two layers.

3 zeigt ein Ablaufdiagramm eines Teilaspektes des computerimplementierten Verfahrens zum Bestimmen des Layouts der gedruckten Schaltung gemäß der bevorzugten Ausführungsform der Erfindung. 3 Figure 12 shows a flow chart of a partial aspect of the computer-implemented method for determining the layout of the printed circuit board in accordance with the preferred embodiment of the invention.

Es wird ein Ähnlichkeitsmaßes M der extrahierten ersten Komponentengruppen- und/oder Layoutdaten D3 zu in der ersten Datenbank DB1 und/oder in einer zweiten Datenbank DB2 gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten D4 unter Verwendung eines ersten Klassifikationsalgorithmus A1 maschinellen Lernens bestimmt.A degree of similarity M of the extracted first component group and/or layout data D3 to the second component group and/or layout data D4 stored in the first database DB1 and/or in a second database DB2 is determined using a first machine learning classification algorithm A1.

Das hier verwendete Ähnlichkeitsmaß M ist ein Abstandsmaß. Je weiter der Abstand D, desto geringer die Ähnlichkeit. Angesichts der Gewichtung W der Merkmale f1-fn wird eine gewichtete euklidische Distanz als Maß zugrunde gelegt.The similarity measure M used here is a distance measure. The further the distance D, the lower the similarity. In view of the weight W of the features f1-fn, a weighted Euclidean distance is used as a measure.

In der Formel entspricht f = Layout-Merkmale und wi = Gewicht des Merkmals „i“.In the formula, f = layout features and w i = weight of feature "i".

Alternativ könnte beispielsweise ein anderer Algorithmus zur Ähnlichkeitsberechnung anstelle der auf der euklidischen Distanz basierenden Methode verwendet werden, bei dem vom Domänenexperten angegebene Gewichte berücksichtigt werden.Alternatively, for example, another similarity calculation algorithm could be used instead of the Euclidean distance-based method, which takes into account weights specified by the domain expert.

4 zeigt ein Ablaufdiagramm eines Teilaspektes des computerimplementierten Verfahrens zum Bestimmen des Layouts der gedruckten Schaltung gemäß der bevorzugten Ausführungsform der Erfindung. 4 Figure 12 shows a flow chart of a partial aspect of the computer-implemented method for determining the layout of the printed circuit board in accordance with the preferred embodiment of the invention.

Die Merkmalsgewichte W werden von den Domänenexperten auf der Grundlage der Interpretation der Merkmalsbedeutung bereitgestellt. Diese Gewichtungen W werden verwendet, um einem Benutzer ähnliche Layouts 10 zu empfehlen.The feature weights W are provided by the domain experts based on the interpretation of the feature importance. These weights W are used to recommend similar layouts 10 to a user.

Sofern der Benutzer die gegebene Empfehlung als relevant erachtet kann er diese als relevant Y markieren. Ebenso kann er die Empfehlung als irrelevant N kennzeichnen, wenn sie sein Informationsbedürfnis nicht befriedigt.If the user considers the given recommendation relevant, he can mark it as relevant Y. He can also mark the recommendation as irrelevant N if it does not satisfy his need for information.

Dieses Benutzer-Feedback der Markierung empfohlener Layouts als relevant/irrelevant wird sodann zur Optimierung der Modellgewichte W eingesetzt.This user feedback of marking recommended layouts as relevant/irrelevant is then used to optimize the model weights W.

Der mit dem Benutzer-Feedback gesammelte Datensatz wird verwendet, um einen Klassifikator, insbesondere einen zweiten Klassifikationsalgorithmus A2 maschinellen Lernens, zu trainieren, der bei zwei Layouts erkennen kann, ob sie als binäres Klassifikationsproblem relevant sind oder nicht.The data set collected with the user feedback is used to train a classifier, in particular a second machine learning classification algorithm A2, which can recognize two layouts whether they are relevant as a binary classification problem or not.

Das Training kann mit verschiedenen Lernalgorithmen durchführt und z.B. mit einem Gradient-Boosted-Tree-Algorithmus fertiggestellt werden. Die aktualisierten Rückmeldungen werden kontinuierlich in den Algorithmus eingespeist.The training can be carried out with various learning algorithms and can be completed with a gradient boosted tree algorithm, for example. The updated feedback is continuously fed into the algorithm.

5 zeigt ein Ablaufdiagramm eines computerimplementierten Verfahrens zum Bereitstellen eines ersten Klassifikationsalgorithmus maschinellen Lernens zum Bestimmen eines Ähnlichkeitsmaßes von ersten Komponenten- und/oder Layoutdaten zu in einer Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten. 5 shows a flow chart of a computer-implemented method for providing a first machine learning classification algorithm for determining a degree of similarity of first component and/or layout data to second component group and/or layout data stored in a database.

Das Verfahren umfasst ein Empfangen S1' erster Trainingsdaten TD1 extrahierter Komponenten- und/oder Layoutdaten einer gedruckten Schaltung und ein Empfangen S2' zweiter Trainingsdaten TD2 eines Ähnlichkeitsmaßes M der extrahierten Komponenten- und/oder Layoutdaten zu in einer Datenbank DB2 gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten D4 der gedruckten Schaltung 1.The method includes receiving S1' first training data TD1 extracted component and/or layout data of a printed circuit board and receiving S2' second training data TD2 of a degree of similarity M of the extracted component and/or layout data to second component groups and stored in a database DB2 /or layout data D4 of the printed circuit 1.

Das Verfahren umfasst ferner ein Trainieren S3' des ersten Klassifikationsalgorithmus maschinellen Lernens A1 durch einen Optimierungsalgorithmus A3, welcher einen Extremwert einer Verlustfunktion berechnet.The method also includes training S3′ of the first machine learning classification algorithm A1 using an optimization algorithm A3, which calculates an extreme value of a loss function.

6 zeigt ein Ablaufdiagramm eines computerimplementierten Verfahrens zum Bestimmen von Informationen zum Platzieren von Komponentengruppen auf einer gedruckten Schaltung gemäß der bevorzugten Ausführungsform der Erfindung. 6 12 shows a flow chart of a computer-implemented method for determining information for placing groups of components on a printed circuit board in accordance with the preferred embodiment of the invention.

Der Benutzer U lädt eine neue Layout-Datei hoch. Wenn ein neues Layout, d.h. Daten eines Schaltplans der gedruckten Schaltung 1, hochgeladen wird, wird es durch einen Parser P geparst und die Komponentengruppen CG1-CGn werden zusammen mit der Hauptkomponente extrahiert und in einer dritten Datenbank DB3 abgespeichert.User U uploads a new layout file. When a new layout, ie data of a circuit diagram of the printed circuit board 1, is uploaded, it is parsed by a parser P and the component groups CG1-CGn are extracted together with the main component and stored in a third database DB3.

Die extrahierten Komponentengruppen CG1-CGn werden sodann dem Benutzer U angezeigt, und er wählt die Komponentengruppen CG1-CGn aus, für die ähnliche Komponentengruppen CG1-CGn identifiziert werden sollen.The extracted component groups CG1-CGn are then displayed to the user U and he selects the component groups CG1-CGn for which similar component groups CG1-CGn are to be identified.

Eine Komponentengruppe CG1-CGn besteht aus einer Hauptkomponente und einem Satz peripherer Komponenten. Um die ähnliche Komponentengruppe CG1-CGn zu identifizieren, werden daher zunächst alle bisherigen Komponentengruppen CG1-CGn gefiltert, deren Hauptkomponente mit der vom Benutzer eingegebenen Hauptkomponente CG1-CGn identisch ist. So werden alle derartig gefilterten früheren Komponentengruppen CG1-CGn zu Kandidaten für die Ähnlichkeitssuche.A component group CG1-CGn consists of a main component and a set of peripheral components. In order to identify the similar component group CG1-CGn, all previous component groups CG1-CGn whose main component is identical to the main component CG1-CGn entered by the user are therefore first filtered. In this way, all earlier component groups CG1-CGn filtered in this way become candidates for the similarity search.

Hat der Benutzer z.B. Hauptkomponente CG1 mit Hauptkomponentenpaket bzw. Package IC-500 ausgewählt, dann wird zuerst nach Komponentengruppen CG1-CGn in der Datenbank gesucht, deren Hauptkomponentenpaket IC-500 ist. Alle derartigen Komponentengruppen CG1-CGn in der Datenbank werden zu Kandidaten für die Ähnlichkeitssuche.For example, if the user has selected main component CG1 with main component package or package IC-500, the database is first searched for component groups CG1-CGn whose main component package is IC-500. All such component groups CG1-CGn in the database become candidates for the similarity search.

Aus den extrahierten ersten Komponentengruppendaten D3 wählt der Benutzer U dritte Komponentengruppendaten D6 aus. Für das Bestimmen des Ähnlichkeitsmaßes M der extrahierten ersten Komponentengruppendaten D3 zu in der zweiten Datenbank DB2 gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten D4 werde vierte Komponentengruppendaten D7 bestimmt, deren Hauptkomponente zu einer Hauptkomponente der durch den Benutzer U ausgewählten dritten Komponentengruppendaten D6 identisch ist.The user U selects third component group data D6 from the extracted first component group data D3. To determine the degree of similarity M of the extracted first component group data D3 to the second component group and/or layout data D4 stored in the second database DB2, fourth component group data D7 is determined, the main component of which is identical to a main component of the third component group data D6 selected by the user U.

Den in der zweiten Datenbank DB2 gespeicherten, zweiten Komponentengruppendaten D4 und den vom Benutzer U ausgewählten dritten Komponentengruppendaten D6 wird jeweils ein numerischer Wert V zugeordnet. Die jeweiligen Komponentengruppendaten D4, D6 werden unter Verwendung des numerischen Wertes V in eine Vektorrepräsentation umgewandelt. Ein jeweiliger Komponentengruppenvektor wird sodann auf einen Wert zwischen null und eins normalisiert.A numerical value V is assigned to the second component group data D4 stored in the second database DB2 and to the third component group data D6 selected by the user U. The respective component group data D4, D6 are converted into a vector representation using the numerical value V. A respective component group vector is then normalized to a value between zero and one.

Ferner wird eine Ähnlichkeit zwischen einem Vektor aller Komponentengruppendaten und einem Vektor der durch den Benutzer U ausgewählten dritten Komponentengruppendaten D6 berechnet.Further, a similarity between a vector of each component group data and a vector of the third component group data D6 selected by the user U is calculated.

Ein Ähnlichkeits-Score SC zwischen den durch den Benutzer U ausgewählten dritten Komponentengruppendaten D6 und den in der Datenbank gespeicherten zweiten Komponentengruppendaten D4, wird, insbesondere unter Verwendung eines kosinusähnlichkeitsbasierten Verfahrens 18, berechnet. Die Kandidaten-Komponentengruppen CG1-CGn werden sodann nach dem Kosinus-Ähnlichkeitsscore aufgelistet.A similarity score SC between the third component group data D6 selected by the user U and the second component group data D4 stored in the database is calculated, in particular using a cosine similarity-based method 18 . The candidate component groups CG1-CGn are then listed according to the cosine similarity score.

Die berechnete Rangliste der Kandidaten-Komponentengruppen CG1-CGn wird dem Benutzer angezeigt. Dieser wählt sodann eine Quellkomponentengruppe SCG aus, aus der die Platzierungsinformationen in eine Zielkomponentengruppe exportiert werden.The calculated ranking of the candidate component groups CG1-CGn is displayed to the user. This then selects a source component group SCG from which the placement information is exported to a target component group.

7 zeigt ein Ablaufdiagramm eines Teilaspektes des computerimplementierten Verfahrens zum Bestimmen von Informationen zum Platzieren von Komponentengruppen CG1-CGn auf der gedruckten Schaltung gemäß der bevorzugten Ausführungsform der Erfindung. 7 Figure 1 shows a flow chart of a partial aspect of the computer-implemented method for determining information for placing component groups CG1-CGn on the printed circuit board according to the preferred embodiment of the invention.

Nachdem die relevanteste Komponentengruppe CG1-CGn identifiziert wurde, besteht der nächste Schritt darin, die Zuordnung zwischen Komponenten in der Quell- und der Zielkomponentengruppe SCG, TCG zu identifizieren.After the most relevant component group CG1-CGn has been identified, the next step is to identify the mapping between components in the source and target component groups SCG, TCG.

Die Quellkomponentengruppe SCG ist diejenige, die der Benutzer als die relevanteste Komponentengruppe ausgewählt hat. Die Zielkomponentengruppe TCG ist die Eingabekomponentengruppe, die vom Benutzer aus seiner hochgeladenen Datei ausgewählt wurde.The source component group SCG is the one that the user has selected as the most relevant component group. The target component group TCG is the input component group selected by the user from his uploaded file.

Nicht alle Komponenten der Zielkomponentengruppe TCG dürfen in der Quellkomponentengruppe SCG vorhanden sein. Daher ist diese Art der Zuordnung erforderlich.Not all components of the target component group TCG may exist in the source component group SCG. Therefore, this type of mapping is required.

Die Zuordnung bzw. das Mapping wird erreicht, indem die Komponenten mit demselben Paketnamen sowohl in der Quell- als auch in der Zielkomponentengruppe TCG identifiziert werden.The assignment or mapping is achieved by identifying the components with the same package name in both the source and target component groups TCG.

Das heißt, für jede periphere Komponente in der Zielkomponentengruppe TCG werden Paketnamen mit dem Paketnamen der peripheren Komponente in der Quellkomponentengruppe SCG verglichen.That is, for each peripheral component in the target component group TCG, package names are compared with the package name of the peripheral component in the source component group SCG.

In Szenarien, in denen mehr als eine Komponente mit demselben Paketnamen existiert, wird die Netzwerktopologie des Schaltplans auf der Grundlage der most-common-neighbor-Strategie erstellt.In scenarios where more than one component with the same package name exists, the schematic's network topology is created based on the most-common-neighbor strategy.

8 zeigt ein Ablaufdiagramm eines weiteren Teilaspektes des computerimplementierten Verfahrens zum Bestimmen von Informationen zum Platzieren von Komponentengruppen auf der gedruckten Schaltung gemäß der bevorzugten Ausführungsform der Erfindung. 8th FIG. 12 shows a flow chart of another partial aspect of the computer-implemented method for determining information for placing groups of components on the printed circuit board in accordance with the preferred embodiment of the invention.

Der Export und Import von Komponentenplatzierungsinformationen bzw. Daten ist in 8 dargestellt.The export and import of component placement information or data is in 8th shown.

In der Darstellung oben links wird in der Quellkomponentengruppe SCG die relative Position der peripheren Komponente in Bezug auf die Hauptkomponente berechnet.In the illustration above left, the relative position of the peripheral component in relation to the main component is calculated in the source component group SCG.

Die Darstellung oben rechts zeigt ein Verschieben einer peripheren Komponente in der Zielkomponentengruppe TCG an den Ursprung.The illustration at the top right shows a peripheral component in the target component group TCG being moved to the origin.

In der Darstellung unten links wird die Peripheriekomponente vom Ursprung an den Standort zur Hauptkomponente verschoben.In the illustration below left, the peripheral component is moved from the origin to the location to the main component.

Die Darstellung unten rechts zeigt das Verwenden der berechneten relativen Position, um die Position einer peripheren Komponente in Bezug auf die Hauptkomponente zu berechnen.The illustration below right shows using the calculated relative position to calculate the position of a peripheral component with respect to the main component.

Die in 8 verwendeten Abkürzungen bezeichnen folgendes:

  • x_m, y_m: Position der Hauptkomponente;
  • x_p, y_p: Position der peripheren Komponente; und
  • x_p_ref, y_p_ref: Relative Position der peripheren Komponente zur Hauptkomponente in der Quellkomponentengruppe.
In the 8th Abbreviations used denote the following:
  • x_m, y_m: position of the main component;
  • x_p, y_p: position of the peripheral component; and
  • x_p_ref, y_p_ref: Relative position of the peripheral component to the main component in the source component group.

9 zeigt eine schematische Darstellung eines Systems 2 zum Bestimmen eines Layouts 10 einer gedruckten Schaltung 1 und/oder von Informationen zum Platzieren von Komponenten auf einer gedruckten Schaltung. 9 shows a schematic representation of a system 2 for determining a layout 10 of a printed circuit board 1 and/or information for placing components on a printed circuit board.

Das System 2 weist eine Recheneinrichtung 16 auf, welche dazu eingerichtet ist, das erfindungsgemäße Verfahren zum Bestimmen eines Layouts 10 einer gedruckten Schaltung 1 und/oder von Informationen zum Platzieren von Komponentengruppen CG1-CGn auf einer gedruckten Schaltung 1 auszuführen.The system 2 has a computing device 16 which is set up to execute the method according to the invention for determining a layout 10 of a printed circuit board 1 and/or information for placing component groups CG1-CGn on a printed circuit board 1.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION

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.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturPatent Literature Cited

  • US 2013091481 A [0004]US2013091481A [0004]
  • US 2019042684 A1 [0006]US2019042684A1 [0006]

Claims (15)

Computerimplementiertes Verfahren zum Bestimmen eines Layouts (10) einer gedruckten Schaltung (1) und/oder von Informationen zum Platzieren von Komponentengruppen (CG1-CGn) auf einer gedruckten Schaltung (1), mit den Schritten: Empfangen (S1) von Daten (D1) eines Schaltplans der gedruckten Schaltung (1) oder von in einer ersten Datenbank (DB1) gespeicherten Identifikationsdaten (D2) eines Schaltplans der gedruckten Schaltung (1) und Aufrufen (S2) des den Identifikationsdaten (D2) zugeordneten Layouts (10) der gedruckten Schaltung (1) in der ersten Datenbank (DB1); Extraktion (S3) von ersten Komponentengruppen- und/oder Layoutdaten (D3) aus den Daten (D1) des Schaltplans des Layouts (10) der gedruckten Schaltung (1); Bestimmen (S4) eines Ähnlichkeitsmaßes (M) der extrahierten ersten Komponentengruppen- und/oder Layoutdaten (D3) zu in der ersten Datenbank (DB1) und/oder in einer zweiten Datenbank (DB2) gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten (D4) unter Verwendung eines ersten Klassifikationsalgorithmus (A1) maschinellen Lernens; und Ausgeben (S5) eines Datensatzes (D5) umfassend eine vorbestimmte Anzahl zweiter Komponentengruppen und/oder Layouts (10), welche ein vorgegebenes Ähnlichkeitsmaß (M) aufweisen.Computer-implemented method for determining a layout (10) of a printed circuit board (1) and/or information for placing component groups (CG1-CGn) on a printed circuit board (1), comprising the steps: Receiving (S1) data (D1) of a circuit diagram of the printed circuit (1) or identification data (D2) stored in a first database (DB1) of a circuit diagram of the printed circuit (1) and calling up (S2) the identification data (D2) associated layouts (10) of the printed circuit (1) in the first database (DB1); extraction (S3) of first component group and/or layout data (D3) from the data (D1) of the circuit diagram of the layout (10) of the printed circuit board (1); Determining (S4) a degree of similarity (M) of the extracted first component group and/or layout data (D3) to the second component group and/or layout data (D4) stored in the first database (DB1) and/or in a second database (DB2). ) using a first classification algorithm (A1) machine learning; and Outputting (S5) a data set (D5) comprising a predetermined number of second component groups and/or layouts (10) which have a predetermined degree of similarity (M). Computerimplementiertes Verfahren nach Anspruch 1, wobei aus den Daten (D1), insbesondere einer ASCII-Datei, des Schaltplans der gedruckten Schaltung (1) Komponentendaten, Komponentenpindaten, Netzdaten, Layoutdaten und/oder Layoutmetadaten extrahiert werden.Computer-implemented method claim 1 , Component data, component pin data, network data, layout data and/or layout metadata being extracted from the data (D1), in particular an ASCII file, of the circuit diagram of the printed circuit (1). Computerimplementiertes Verfahren nach Anspruch 1 oder 2, wobei regelmäßige oder unregelmäßige Formen eines von der Komponentengruppe (CG1-CGn) oder dem Layout (10) bedeckten Bereichs der gedruckten Schaltung (1) in ein durch eine Folge von Punkten (Pxy) in einem 2D-Koordninatensystem repräsentiertes Polygon (PG) umwandelt werden.Computer-implemented method claim 1 or 2 , converting regular or irregular shapes of an area of the printed circuit board (1) covered by the component group (CG1-CGn) or the layout (10) into a polygon (PG) represented by a sequence of points (Pxy) in a 2D coordinate system will. Computerimplementiertes Verfahren nach Anspruch 3, wobei das 2D-Koordninatensystem eine Vielzahl von, insbesondere eine Seitenlänge von zwischen 0,001 und 0,1 mm aufweisenden, quadratischen Feldern (14) umfasst, wobei zur Schätzung des von der Komponentengruppe (CG1-CGn) oder dem Layout (10) bedeckten Bereichs der gedruckten Schaltung (1) bestimmt wird, welche der quadratischen Felder (14) innerhalb des Polygons angeordnet sind.Computer-implemented method claim 3 , wherein the 2D coordinate system comprises a plurality of square fields (14), in particular with a side length of between 0.001 and 0.1 mm, wherein for estimating the area covered by the component group (CG1-CGn) or the layout (10). of the printed circuit (1) it is determined which of the square fields (14) are arranged within the polygon. Computerimplementiertes Verfahren nach Anspruch 4, wobei für jede Komponentengruppe (CG1-CGn) und/oder jedes Layout (10) eine äußere Grenze erstellt wird, wobei für jedes quadratische Feld (14) durch einen Ray-Casting-Algorithmus ermittelt wird, ob ein Mittelpunkt des Feldes (14) innerhalb des Polygons angeordnet ist.Computer-implemented method claim 4 , wherein an outer boundary is created for each component group (CG1-CGn) and/or each layout (10), wherein for each square field (14) it is determined by a ray-casting algorithm whether a center point of the field (14) located inside the polygon. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei das Ähnlichkeitsmaß (M) der extrahierten ersten Komponentengruppen- und/oder Layoutdaten (D3) zu den in der zweiten Datenbank (DB2) gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten (D4) durch Berechnen eines Abstandsmaßes, insbesondere einer gewichteten euklidischen Distanz bestimmt wird.Computer-implemented method according to one of the preceding claims, wherein the degree of similarity (M) of the extracted first component group and / or layout data (D3) to the second database (DB2) stored, second component group and / or layout data (D4) by calculating a Distance measure, in particular a weighted Euclidean distance is determined. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei der durch den ersten Klassifikationsalgorithmus (A1) maschinellen Lernens ausgegebene Datensatz (D5) durch einen zweiten Klassifikationsalgorithmus (A2) maschinellen Lernens empfangen wird, welcher für jede der vorbestimmten Anzahl von Komponentengruppen (CG1-CGn) und/oder Layouts (10) einen Relevanz-Score (RS) ausgibt, auf dessen Basis eine Gewichtung (W) des ersten Klassifikationsalgorithmus (A1) maschinellen Lernens angepasst wird.Computer-implemented method according to one of the preceding claims, wherein the data set (D5) output by the first classification algorithm (A1) of machine learning is received by a second classification algorithm (A2) of machine learning, which for each of the predetermined number of component groups (CG1-CGn) and / or layouts (10) outputs a relevance score (RS), on the basis of which a weighting (W) of the first classification algorithm (A1) is adapted to machine learning. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei aus den extrahierten ersten Komponentengruppendaten (D3) ein Benutzer (U) dritte Komponentengruppendaten (D6) auswählt, wobei für das Bestimmen des Ähnlichkeitsmaßes (M) der extrahierten ersten Komponentengruppendaten (D3) zu in der zweiten Datenbank (DB2) gespeicherten, zweite Komponentengruppen- und/oder Layoutdaten (D4) vierte Komponentengruppendaten (D7) bestimmt werden, deren Hauptkomponente zu einer Hauptkomponente der durch den Benutzer (U) ausgewählten dritten Komponentengruppendaten (D6) identisch ist.Computer-implemented method according to one of the preceding claims, wherein a user (U) selects third component group data (D6) from the extracted first component group data (D3), wherein for determining the degree of similarity (M) of the extracted first component group data (D3) to in the second database (DB2) stored second component group and/or layout data (D4) fourth component group data (D7) whose main component is identical to a main component of the third component group data (D6) selected by the user (U). Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei den in der zweiten Datenbank (DB2) gespeicherten, zweiten Komponentengruppendaten (D4) und den vom Benutzer (U) ausgewählten dritten Komponentengruppendaten (D6) jeweils ein numerischer Wert (V) zugeordnet wird, wobei die jeweiligen Komponentengruppendaten (D4, D6) unter Verwendung des numerischen Wertes (V) in eine Vektorrepräsentation umgewandelt werden, und wobei ein jeweiliger Komponentengruppenvektor auf einen Wert zwischen null und eins normalisiert wird.Computer-implemented method according to one of the preceding claims, wherein the second component group data (D4) stored in the second database (DB2) and the third component group data (D6) selected by the user (U) are each assigned a numerical value (V), the respective component group data (D4, D6) is converted into a vector representation using the numeric value (V) and wherein a respective component group vector is normalized to a value between zero and one. Computerimplementiertes Verfahren nach Anspruch 8 oder 9, wobei eine Ähnlichkeit zwischen einem Vektor aller Komponentengruppendaten und einem Vektor der durch den Benutzer (U) ausgewählten dritten Komponentengruppendaten (D6) berechnet wird, wobei ein Ähnlichkeits-Score (SC) zwischen den durch den Benutzer (U) ausgewählten dritten Komponentengruppendaten (D6) und den in der Datenbank gespeicherten zweiten Komponentengruppendaten (D4), insbesondere unter Verwendung eines kosinusähnlichkeitsbasierten Verfahrens (18), berechnet wird.Computer-implemented method claim 8 or 9 , where a similarity between a vector of all component group data and a vector of the third component group data (D6) selected by the user (U) is calculated, with a similarity score (SC) between the third component group data (D6) selected by the user (U) and the second component group data (D4 ), in particular using a cosine similarity based method (18). Computerimplementiertes Verfahren nach Anspruch 10, wobei der Benutzer (U) aus den mit dem Ähnlichkeits-Score (SC) versehenen Komponentengruppendaten fünfte Komponentengruppendaten (D8) auswählt, wobei zwischen den fünften Komponentengruppendaten (D8) und den durch den Benutzer (U) ausgewählten dritten Komponentengruppendaten (D6) eine Zuordnung durch Identifizieren von Komponenten mit gleicher Package-Bezeichnung durchgeführt wird.Computer-implemented method claim 10 , The user (U) selects fifth component group data (D8) from the component group data provided with the similarity score (SC), wherein between the fifth component group data (D8) and the third component group data (D6) selected by the user (U) an assignment is performed by identifying components with the same package designation. Computerimplementiertes Verfahren zum Bereitstellen eines ersten Klassifikationsalgorithmus (A1) maschinellen Lernens zum Bestimmen eines Ähnlichkeitsmaßes (M) von ersten Komponenten- und/oder Layoutdaten (D3) zu in einer Datenbank gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten (D4), mit den Schritten: Empfangen (S1') erster Trainingsdaten (TD1) extrahierter Komponenten- und/oder Layoutdaten einer gedruckten Schaltung (1); Empfangen (S2') zweiter Trainingsdaten (TD2) eines Ähnlichkeitsmaßes (M) der extrahierten Komponenten- und/oder Layoutdaten zu in einer Datenbank (DB2) gespeicherten, zweiten Komponentengruppen- und/oder Layoutdaten (D4) der gedruckten Schaltung (1); und Trainieren (S3') des ersten Klassifikationsalgorithmus maschinellen Lernens (A1) durch einen Optimierungsalgorithmus (A3), welcher einen Extremwert einer Verlustfunktion berechnet.Computer-implemented method for providing a first classification algorithm (A1) machine learning for determining a degree of similarity (M) of first component and / or layout data (D3) stored in a database, second component group and / or layout data (D4), with the steps : receiving (S1') first training data (TD1) of extracted component and/or layout data of a printed circuit board (1); Receiving (S2') second training data (TD2) of a degree of similarity (M) of the extracted component and/or layout data to second component group and/or layout data (D4) of the printed circuit (1) stored in a database (DB2); and Training (S3') the first classification algorithm machine learning (A1) by an optimization algorithm (A3), which calculates an extreme value of a loss function. System (2) zum Bestimmen eines Layouts (10) einer gedruckten Schaltung (1) und/oder von Informationen zum Platzieren von Komponenten auf einer gedruckten Schaltung (1), aufweisend eine Recheneinrichtung (16), welche dazu eingerichtet ist, das Verfahren nach einem der Ansprüche 1 bis 11 auszuführen.System (2) for determining a layout (10) of a printed circuit (1) and/or information for placing components on a printed circuit (1), comprising a computing device (16) which is set up to carry out the method according to one the Claims 1 until 11 to execute. Computerprogramm mit Programmcode, um das Verfahren nach einem der Ansprüche 1 bis 11 durchzuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.Computer program with program code to implement the method according to one of Claims 1 until 11 to be performed when the computer program is run on a computer. Computerlesbarer Datenträger mit Programmcode eines Computerprogramms, um das Verfahren nach einem der Ansprüche 1 bis 11 durchzuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.Computer-readable data carrier with program code of a computer program for the method according to one of Claims 1 until 11 to be performed when the computer program is run on a computer.
DE102021211948.4A 2020-11-05 2021-10-22 Computer-implemented method and system for determining a printed circuit board layout and/or information for placing groups of components on a printed circuit board Pending DE102021211948A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2021/080012 WO2022096367A1 (en) 2020-11-05 2021-10-28 Computer-implemented method and system for determining a layout of a printed circuit board and/or information for placing component groups on a printed circuit board

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102020213924.5 2020-11-05
DE102020213924 2020-11-05

Publications (1)

Publication Number Publication Date
DE102021211948A1 true DE102021211948A1 (en) 2022-05-05

Family

ID=81183941

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021211948.4A Pending DE102021211948A1 (en) 2020-11-05 2021-10-22 Computer-implemented method and system for determining a printed circuit board layout and/or information for placing groups of components on a printed circuit board

Country Status (2)

Country Link
DE (1) DE102021211948A1 (en)
WO (1) WO2022096367A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119397990B (en) * 2024-12-31 2025-05-23 深圳市三德盈电子有限公司 Method and system for generating printed circuit board design diagram

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130091481A1 (en) 2011-10-07 2013-04-11 Yu-Chi Su Method of schematic driven layout creation
US20190042684A1 (en) 2017-08-02 2019-02-07 Oracle International Corporation Schematic Driven Analog Circuit Layout Automation

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10699051B1 (en) * 2018-06-29 2020-06-30 Cadence Design Systems, Inc. Method and system for performing cross-validation for model-based layout recommendations

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130091481A1 (en) 2011-10-07 2013-04-11 Yu-Chi Su Method of schematic driven layout creation
US20190042684A1 (en) 2017-08-02 2019-02-07 Oracle International Corporation Schematic Driven Analog Circuit Layout Automation

Also Published As

Publication number Publication date
WO2022096367A1 (en) 2022-05-12

Similar Documents

Publication Publication Date Title
DE69431351T2 (en) METHOD AND DEVICE FOR INDEXING, SEARCHING AND DISPLAYING DATA
DE3881730T2 (en) DEVICE AND INTERFACE FOR RECOVERY OF INFORMATION.
DE69535098T2 (en) Method and apparatus for searching images in a database
DE69931004T2 (en) Method and device for data processing
DE69532307T2 (en) Expression propagation for hierarchical net lists
DE10149693A1 (en) Objects in a computer system
Breiger et al. The joint role structure of two communities' elites
WO1990005344A1 (en) Process for placing modules on a support
DE4325095A1 (en) Method and apparatus for delayed assembly determination
DE102015200694A1 (en) METHOD, COMPUTER SYSTEM AND COMPUTER-READABLE STORAGE MEDIUM FOR PRODUCING A LAYOUT OF AN INTEGRATED CIRCUIT
DE102012209711A1 (en) Systems and methods for using graphical representations to manage query results
DE69708365T2 (en) Character recognition method
DE10025583A1 (en) Integrated circuit cell layout optimisation method has initial cell layout automatically modified after optimisation of component dimensions
DE69224764T2 (en) Method and device for evaluating automatic manufacturing possibilities
DE112022007534T5 (en) Method and device for graph neural architecture search under distributional shift
DE102012025350A1 (en) Processing an electronic document
Lane et al. CHREST+: A simulation of how humans learn to solve problems using diagrams.
DE102020215589A1 (en) CONTROLLING A DEEP-SEQUENCE MODEL WITH PROTOTYPES
DE19513960A1 (en) Reproduction of graph in memory by depth- and breadth-first searches
DE102021211948A1 (en) Computer-implemented method and system for determining a printed circuit board layout and/or information for placing groups of components on a printed circuit board
DE102012025349B4 (en) Determination of a similarity measure and processing of documents
DE102023202593A1 (en) Method and system for recommending modules for an engineering project
DE102018115453A1 (en) Information processing apparatus and information processing system
DE69026668T2 (en) Accurate recognition of input patterns
EP0919036B1 (en) Process for the automatic machine production of engineering data