In Leiterplatte Design, Anders als die traditionelle Methode, das Design in mehrere Teile zu teilen und jedes Teil unabhängig voneinander zu vervollständigen, Diese neue Technologie kann parallele Prozesse auf einer gemeinsamen Datenbank erstellen, und kann Prozessänderungen automatisch synchronisieren und mögliche gegenseitige Probleme lösen. Konflikt. Dies ist die erste in der EDA-Branche.
Seit der weit verbreiteten Einführung von CAD im Leiterplattendesign in den 1990er Jahren verbessert der Fertigungsbereich kontinuierlich die Konstruktionsproduktivität durch Automatisierungs- und Prozessoptimierungsmethoden. Leider steigt mit der kontinuierlichen Innovation der Schaltungsdesign-Softwaretechnologie auch die Nachfrage nach Unterstützung neuer Signale, Komponenten oder Fertigungstechnologien auf Leiterplattenebene, so dass die gesamte Designzeit kaum (oder sogar länger) verkürzt wurde.
Wenn es keine grundlegende Änderung in der Designmethodik gibt, wird Software immer die Rolle eines Anhängers der Hardwaretechnologie spielen, anstatt ein Führer auf der Entwicklungskurve zu werden. Die gleichzeitige Engineering-Technologie mehrerer Ingenieure, die an demselben Design arbeiten, war schon immer eine effektive Zauberwaffe für Produktivitätsdoorbrüche. Die traditionelle Methode teilt das Design in mehrere Teile und ordnet sie den Händen jedes Ingenieurs zu, verbindet schließlich die verschiedenen Teile und verwendet Zwangsmaßnahmen (automatisch Entscheidungen nach vordefinierten Regeln treffen) oder clevere Mittel (Ingenieure erlauben, Konflikte einzeln zu lösen) • Lösen Sie alle Konflikte.
Diese Methode ist für Schaltplan-Design ziemlich effektiv, da sie das Design direkt in mehrere Module und Seiten entsprechend Funktionen unterteilen kann. Trotzdem erfordert diese Methode noch viele manuelle Operationen, um die Verbindungsprobleme zwischen Modulen zu lösen, wie z.B. Signalnamenskonflikte, fehlende Komponenten usw. Solange die Designer nicht sehen können, was sich gegenseitig tut, können diese Fehler sehr wahrscheinlich passieren.
Wenn eine parallele Entwurfsmethode mehreren Designern erlaubt, dasselbe Design zur gleichen Zeit zu erstellen, die Bearbeitungsinhalte anderer Designer sehen und verschiedene potenzielle Konflikte automatisch in Echtzeit verwalten kann, dann kann diese parallele Entwurfsmethode erreicht werden. Optimale Flexibilität und Produktivität.
1. Parallele Designarchitektur
Die neue Concurrent Design Technologie erfordert einen Design Process Manager (Server) und mehrere Design Clients, die in einer Netzwerkumgebung ausgeführt werden. Die Hauptaufgabe der Serversoftware besteht darin, Aktualisierungsanforderungen von jedem Client zu empfangen, die Anforderungen zu überprüfen, um sicherzustellen, dass keine Designregeln verletzt werden, und dann jeden Client entsprechend dem Aktualisierungsinhalt zu synchronisieren.
Jeder Client muss über einen eigenen dedizierten Prozessor und Speicher verfügen. Die neue parallele Design-Architektur setzt auch voraus, dass das Kommunikationssystem die minimale Bandbreite und maximale Verzögerung unterstützen kann, die für einen effizienten Echtzeit-Informationsaustausch zwischen Client und Server erforderlich sind. Jeder Client kann das gesamte Design sehen und andere Client-Bearbeitungen beobachten, während der Server sie verarbeitet. Die Entwurfsdatenbank darf überall im Netzwerk gespeichert werden.
Diese parallele Designarchitektur ermöglicht es mehreren Designern, dasselbe Design zur gleichen Zeit zu erstellen, ohne das Design logisch oder auf andere Weise unterteilen zu müssen. Dies ist eine wirklich kollaborative Design-Umgebung in Echtzeit, in der alle Probleme im Zusammenhang mit Segmentierungsgrenzen und der Verwaltung der Datenintegrität während Segmentierungs-Join-Operationen nicht auftreten.
Da mehrere Konstrukteure das gleiche Design ohne Einschränkungen parallel ausführen können, kann der gesamte Designzyklus deutlich verkürzt werden.
Jedes Design hat ein zugehöriges Designteam, und nur Mitglieder des Teams dürfen auf die Designdaten zugreifen. Jedes Teammitglied kann ein Design Meeting auf dem Server und einem einzelnen Client starten. Andere Kunden können jederzeit an der Konferenz teilnehmen.
Das Design wird zunächst auf den Server geladen. Wenn der Client der Besprechung beitritt und automatisch den aktuellen Status des Serverdesigns in den Speicher des Clients herunterlädt, wird der Client initialisiert und synchronisiert. Sobald der Client dem Design-Meeting beitritt, kann er das Design mithilfe der Standardbearbeitungswerkzeuge bearbeiten, die in der Anwendung verfügbar sind.
Das Bearbeitungsereignis ist eine unabhängige Aktivität, die vom Client initiiert wird und als Update-Anforderung an den Server gesendet wird. Beispielsweise stellt das Verschieben eines Geräts von Punkt A nach Punkt B ein Bearbeitungsereignis dar. Der Anfang des Ereignisses besteht darin, das Gerät auszuwählen, und das Ende des Ereignisses ist, die neue Position mit einem Mausklick (oder einer gleichwertigen Eingabe) anzuzeigen. Das Bearbeitungsereignis wird als Transaktion an den Server gesendet, in der beschrieben wird, was gelöscht und was hinzugefügt werden soll.
Jedes vom Client generierte Bearbeitungsereignis muss eine lokale Design Rule Check (DRC) durchführen, bevor es an den Server gesendet wird. Anschließend muss die Priorität der Bearbeitungsanforderung festgelegt und die Eingabenachricht-Warteschlange nach dem First-in First-Out-Prinzip eingegeben werden. Nachdem der Server die Bearbeitungsanforderung empfangen hat, integriert er sie in die Entwurfsdatenbank und führt DRC aus. Wenn keine Probleme gefunden werden, wird die Bearbeitungsanforderung genehmigt und über die Ausgabe-Nachrichtenwarteschlange an alle Clients gesendet, um die interne Kerndatenbank des Clients zu synchronisieren.
Die meiste Rechenzeit wird auf den lokalen Client verbracht. Zielobjekte werden clientseitig hinzugefügt, bearbeitet und gelöscht, und alle automatisierten Vorgänge im Zusammenhang mit diesen Bearbeitungen (z. B. Schieben, Drücken und Glätten) werden gleichzeitig ausgeführt. Im Vergleich zum Client ist die Last des Servers relativ geringer, so dass die Systemleistung nicht beeinträchtigt wird. Das Testen dieser Umgebung zeigt, dass die Antwortgeschwindigkeit des Servers sehr schnell ist und die Geschwindigkeit des Clients nicht verlangsamt.
2. Automatische Verdrahtung von Leiterplatten
Die zweite Anwendung der gleichzeitigen Konstruktionstechnologie ist die automatische Verdrahtung von Leiterplatten. Verteilte automatische Verdrahtung ist seit vielen Jahren eine "starke Waffe" der Leiterplattenverdrahtungssoftware. Zuvor, IC-Router wurden für den Betrieb in einer verteilten Umgebung konvertiert. Allerdings, Das Verdrahtungsproblem der Leiterplatte ist sehr unterschiedlich. Bis jetzt, Die Leute denken immer noch, dass der automatische Router angepasst werden muss, um die Vorteile mehrerer Computer voll zu nutzen, um das gleiche Design zu vervollständigen. Softwareanbieter und Drittanbieter haben auch viele Versuche unternommen, akzeptable Leistungsverbesserungen zu erreichen, aber sie endeten alle im Scheitern.
Die Architektur, die von der neuen parallelen Designtechnologie übernommen wird, kann die meisten Schlüsselprobleme in der verteilten Verdrahtungsumgebung lösen und weiß, wie Konflikte vermieden oder gelöst werden können. In ähnlicher Weise spielt der Server die Rolle des Entwurfsprozessmanagements, und Anforderungen von jedem Auto-Router-Client werden integriert, geprüft und an andere Clients auf dem Server gesendet. Alle Auto-Router-Clients werden synchron gehalten. Wenn ein neuer Verdrahtungspfad lokal hinzugefügt wird, ist die Wahrscheinlichkeit von Verdrahtungspfadkonflikten gering.
3. Integration effizienter Werkzeuge
Da das Schaltungsdesign ein Prozess ist, der viele Schritte und Regeln umfasst, müssen die effizientesten Punktwerkzeuge eng integriert werden, um eine hervorragende Produktivität zu erzielen. Daten und Regeln müssen während des gesamten Designprozesses reibungslos fließen.
In den letzten zwanzig Jahren hat die EDA-Branche beispiellose Fusionen und Übernahmen erfahren. Infolgedessen beruht der Designprozess von Softwareherstellern auf der Integration vieler Tools. Darüber hinaus benötigen große Unternehmen die Tools vieler Softwareanbieter, um in ihren eigenen einzigartigen Designprozess integriert zu werden.
Die Zwischenmaßnahme besteht darin, eine Schnittstelle zu schreiben, über die die ASCII-Ausgabe eines Werkzeugs in das ASCII-Eingabeformat anderer Werkzeuge konvertiert wird. Dabei werden Hunderte von ASCII-Schnittstellen generiert, und jede Schnittstelle wird verwendet, um gängige Datenmodell- und Regelinkompatibilitätsprobleme zu überwinden.
Grundvoraussetzung dieser Integrationsmethode ist, dass alle Anwendungen über voll kompatible Datenmodelle verfügen müssen. Jede Anwendung kann bei der Verarbeitung von Daten unterschiedliche Tools und verschiedene Automatisierungsstufen verwenden, aber jede Anwendung muss in der Lage sein, Änderungen zu empfangen und zu erkennen, damit sie wissen, was als nächstes zu tun ist.
Es ist auch möglich, parallele Designtechniken zu verwenden, um eine Anwendung zu integrieren, um eine bestimmte Reihe von Aufgaben auszuführen, wie das Erstellen, Platzieren, Routing und Bearbeiten eingebetteter Geräte. Wenn ja, dann kann diese Anwendung automatisch eingeschränkt werden, um nur die Verwendung dieser spezifischen Funktionen zu erlauben.
4. Schaltungs- und Leiterplattendesign
Durch die Kombination des parallelen Layouts und der für die parallele Integration erforderlichen Technologien kann eine Umgebung entstehen, in der mehrere unterschiedliche Anwendungen im Designprozess integriert und von mehreren Designern gleichzeitig genutzt werden können.
Zum Beispiel, die parallele Auslegungsmethode von Leiterplattendesign, Schaltplan, Verwaltung von Beschränkungen, Layout Design, dreidimensionale mechanische Konstruktionssimulation und Fertigungsanwendungen können in irgendeiner Weise integriert werden, Damit alle diese Anwendungen gleichzeitig genutzt werden können, und gleichzeitig alle Bearbeitungsereignisse während des Designprozesses aktualisieren und synchronisieren. Auch in einem gemischten Umfeld, mehrere ähnliche Anwendungen können erscheinen, z. B. mehrere Layoutwerkzeuge.
Da mehrere Anwendungen gleichzeitig ausgeführt werden, können Ingenieure die Signalintegritätseffekte des hinzugefügten Pfades schnell verstehen. Beispielsweise kann in einem dreidimensionalen mechanischen System, das für ein Mobiltelefon entworfen wurde, die Bewegung des Geräts im Layout sofort aktualisiert und überprüft werden.