Gibt es ein allgemeines Netzlistenformat?


21

Gibt es ein gemeinsames Netzlistenformat, das zwischen verschiedenen Schaltplan- / Leiterplatten- / EDA- / CAD-Tools portierbar ist, und wenn ja, wo befindet sich das Format oder die Referenz, damit ich es implementieren kann?

Wenn nicht, implementiert jedes Paket es anders, oder gibt es einige Standards, die, wenn sie implementiert werden, eine größere Kompatibilität mit einer breiten Palette von Tools bieten könnten?


5
Während dieser Thread unübersichtlich ist, erwähne ich gnetlist als Befehlszeilendienstprogramm zum Übersetzen zwischen ungefähr 30 verschiedenen Netzlistenformaten.
Kevin Vermeer

Antworten:


11

EDIF - Electronic Design Interchange Format - ist ein herstellerneutrales Format zum Speichern von elektronischen Netzlisten und Schaltplänen. Es war einer der ersten Versuche, ein neutrales Datenaustauschformat für die EDA-Branche (Electronic Design Automation) zu etablieren.

Weitere Informationen und Links finden Sie unter http://en.wikipedia.org/wiki/EDIF .


1
Dies ist wahrscheinlich die mit Abstand beste Antwort auf die ursprüngliche Frage: Ein herstellerneutrales Netzlistenformat. Leider wird es schlecht unterstützt.
Kevin Vermeer

4
Und natürlich benutzt es niemand. Willkommen in der Welt der hochpreisigen EDA-Pakete ...
Connor Wolf

Es wird von der Pulsonix-Software unterstützt, die ich verwende, sowie von OrCAD, PADS, CADSTAR usw.
Leon Heller

6

Ich habe keine Standards gesehen. Jedes Paket implementiert ein eigenes Format. Glücklicherweise ist das Format sehr einfach, was die Übersetzung zwischen Paketen erleichtert.

Beispielsweise besteht die gEDA-Netzliste aus Datensätzen im folgenden Format:

NETNAME REFDES-PIN REFDES-PIN ...

Hier ist ein Beispiel von einem meiner Boards -

unnamed_net39 J28-3 U11-12

unnamed_net38 J28-1 J16-2 J27-1

GND J16-3 C16-2 J15-3 C15-2

Sie können diese Netzlistendatei problemlos in eine Datenstruktur einlesen und in ein anderes Format übersetzen.


4

Wenn sie in ASCII-Form gespeichert sind, ist es recht einfach, sie zu konvertieren. Ich kann die meisten Formate in die von mir verwendete Pulsonix-PCB-Software importieren. Das einzig ungeschickte ist Eagle; Eagle-Schaltpläne, PCBs und Bibliotheken müssen von einem speziell geschriebenen ULP konvertiert werden.


4

Ich habe auch nirgendwo ein Standardformat gesehen. Wie bereits erwähnt, sind Netzlistenformate jedoch sehr einfach und in der Regel textbasiert und daher trivial zwischen verschiedenen Formularen zu übersetzen.

Eine Netzliste ist einfach eine Liste von Netzen (Drähten) mit einer Liste von Ports (Pins von Komponenten), die an jedem Draht angebracht sind. Obwohl sich die Details unterscheiden, handelt es sich um eine Variation desselben Themas. In der Vergangenheit habe ich mehrere Skripte in Perl und Python geschrieben, mit denen sich Netzlisten leicht manipulieren lassen. Tatsächlich sind Netzlistendateien eine großartige Übung in der Textverarbeitung für Anfänger.


2

Um ehrlich zu sein, wenn Sie wirklich ein Netzlistenformat wollen, das in der Praxis mit nahezu jedem Tool funktioniert, haben Sie nur zwei ernsthafte Möglichkeiten:

  • VHDL
  • Verilog

Ja, dies sind vollständige Hardwarebeschreibungssprachen, und die Verwendung dieser Sprachen als Netzlistenformat kann als übertrieben angesehen werden. Es ist jedoch sehr einfach, und wenn ein Tool einfache, strukturierte VHDL- oder Verilog-Dateien ausgibt, können Sie davon ausgehen, dass Sie das Design in nahezu jedes andere EDA-Tool zurückführen können.

Als Nebeneffekt benötigen die meisten anderen Netzlistenformate (z. B. EDIF) einen extern definierten Satz von Grundelementen - entweder etwas herstellerspezifisches oder etwas wie LPM. Bei VHDL und Verilog können die Blätter der niedrigsten Ebene (Grundelemente) beliebig sein (z. B. synthetisierbarer RTL-Code, Simulationsmodelle, Blackboxen usw.).

Wenn Sie jedoch unbedingt ein tatsächliches Netzlistenformat haben müssen , schlage ich vor, das gnetlist-Format zu verwenden, das dann in viele andere Formate konvertiert werden kann.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.