| |
| |
| |
| |
|
Verilator wird mit ähnlichen Parametern wie GCC oder VCS von Synopsys aufgerufen. Es „verifiziert“ den angegebenen Verilog- oder SystemVerilog-Code, indem es ihn liest, Flusenprüfungen durchführt und optional Assertionsprüfungen und Abdeckungsanalysepunkte einfügt. Es gibt Single- oder Multithread-.cpp- und .h-Dateien aus, den „Verilated“-Code.
Diese verilierten C++/SystemC-Dateien werden dann von einem C++-Compiler (gcc/clang/MSVC++) kompiliert, optional zusammen mit der eigenen C++/SystemC-Wrapperdatei eines Benutzers, um das verilierte Modell zu instanziieren. Durch Ausführen der resultierenden ausführbaren Datei wird die Entwurfssimulation durchgeführt. Verilator unterstützt auch die Verknüpfung der von Verilated generierten Bibliotheken, optional verschlüsselt, mit anderen Simulatoren.
Verilator ist möglicherweise nicht die beste Wahl, wenn Sie einen voll ausgestatteten Ersatz für einen Closed-Source-Verilog-Simulator erwarten, SDF-Annotation oder Mixed-Signal-Simulation benötigen oder ein schnelles Unterrichtsprojekt durchführen (wir empfehlen Icarus Verilog für Unterrichtsaufgaben). Wenn Sie jedoch nach einer Möglichkeit suchen, SystemVerilog auf C++/SystemC zu migrieren, oder eine Hochgeschwindigkeitssimulation von Designs wünschen, ist Verilator das richtige Tool für Sie.
Verilator übersetzt Verilog HDL nicht direkt in C++ oder SystemC. Vielmehr kompiliert Verilator Ihren Code in ein viel schneller optimiertes und optional Thread-partitioniertes Modell, das wiederum in ein C++/SystemC-Modul eingebettet ist. Das Ergebnis ist ein kompiliertes Verilog-Modell, das selbst auf einem einzelnen Thread über 10-mal schneller als das eigenständige SystemC ausgeführt wird und auf einem einzelnen Thread etwa 100-mal schneller ist als interpretierte Verilog-Simulatoren wie Icarus Verilog. Eine weitere 2- bis 10-fache Beschleunigung könnte durch Multithreading erzielt werden (was insgesamt 200- bis 1000-faches gegenüber interpretierten Simulatoren ergibt).
Verilator bietet in der Regel eine ähnliche oder bessere Leistung als Closed-Source-Verilog-Simulatoren (z. B. Aldec Riviera-Pro, Cadence Incisive/NC-Verilog, Mentor ModelSim/Questa, Synopsys VCS, VTOC und Pragmatic CVer/CVC). Da Verilator jedoch Open Source ist, können Sie für Rechenleistung statt für Lizenzen ausgeben. Somit bietet Ihnen Verilator die besten Simulationszyklen/Dollar.
Weitere Informationen:
Verilator ist ein Community-Projekt, das von der CHIPS Alliance im Rahmen der Linux Foundation geleitet wird.
Wir schätzen und begrüßen Ihre Beiträge in welcher Form auch immer; Weitere Informationen finden Sie unter Mitwirken bei Verilator. Vielen Dank an unsere Mitwirkenden und Sponsoren.
Verilator unterstützt und fördert auch kommerzielle Supportmodelle und -organisationen; Weitere Informationen finden Sie im kommerziellen Support von Verilator.
Verilator unterliegt dem Copyright 2003-2024 von Wilson Snyder. (Melden Sie Fehler an Verilator Issues.)
Verilator ist freie Software; Sie können es unter den Bedingungen der GNU Lesser General Public License Version 3 oder der Perl Artistic License Version 2.0 weiterverbreiten und/oder ändern. Weitere Einzelheiten finden Sie in der Dokumentation.