EnglischFranzösischSpanisch

Ad


OnWorks-Favicon

iverilog – Online in der Cloud

Führen Sie iverilog beim kostenlosen Hosting-Anbieter OnWorks über Ubuntu Online, Fedora Online, den Windows-Online-Emulator oder den MAC OS-Online-Emulator aus

Dies ist der Befehl iverilog, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


iverilog – Icarus Verilog-Compiler

ZUSAMMENFASSUNG


iverilog [-ESVv] [-Bpath] [-ccmdfile|-fcmdfile] [-Dmacro[=defn]] [-pflag=value] [-dname]
[-g1995|-g2001|-g2005|-g ] [-Iincludedir] [-mmodule] [-Mfile] [-Nfile]
[-ooutputfilename] [-stopmodule] [-ttype] [-Tmin/typ/max] [-Wclass] [-ypath] Quelldatei

BESCHREIBUNG


iverilog ist ein Compiler, der Verilog-Quellcode in ausführbare Programme für übersetzt
Simulation oder andere Netzlistenformate zur weiteren Verarbeitung. Die aktuell unterstützte
Ziele sind vvp zur Simulation und FPGA zur Synthese. Weitere Zieltypen werden hinzugefügt als
Codegeneratoren sind implementiert.

OPTIONAL


iverilog akzeptiert die folgenden Optionen:

-BBase Das iverilog Das Programm verwendet externe Programme und Konfigurationsdateien zur Vorverarbeitung
und kompilieren Sie die Verilog-Quelle. Normalerweise wird zum Auffinden dieser Tools der Pfad verwendet
eingebaut in die iverilog Programm. Allerdings ist die -B Mit dem Schalter kann der Benutzer auswählen
eine andere Reihe von Programmen. Zur Lokalisierung wird der angegebene Pfad verwendet ivlpp, ivl, Code
Generatoren und den VPI-Modulen.

-cDatei -fDatei
Diese Flags geben eine Eingabedatei an, die eine Liste von Verilog-Quelldateien enthält.
Dies ist ähnlich dem Befehl Datei von anderen Verilog-Simulatoren, da es ein
Datei, die die Dateinamen enthält, anstatt sie in die Befehlszeile zu übernehmen. Sehen
Befehl Mappen unten.

-DMakro Definiert Makro Makro mit der Zeichenfolge „1“ als Definition. Dieses Formular ist normalerweise
Wird nur zum Auslösen von ifdef-Bedingungen in der Verilog-Quelle verwendet.

-DMakro=defn
Definiert Makro Makro as definiere.

-dName Aktivieren Sie eine Klasse von Compiler-Debugging-Meldungen. Der -d Der Schalter kann als verwendet werden
so oft wie nötig, um alle gewünschten Nachrichten zu aktivieren. Unterstützte Namen sind
Bereiche, eval_tree, Elaborate und Synth2; Alle anderen Namen werden ignoriert.

-E Verarbeiten Sie die Verilog-Quelle vor, kompilieren Sie sie jedoch nicht. Die Ausgabedatei ist die
Verilog-Eingabe, jedoch mit erweiterten und entfernten Dateieinschlüssen und Makroverweisen.
Dies ist beispielsweise nützlich, um Verilog-Quellen für die Verwendung durch andere vorzuverarbeiten
Compiler.

-g1995|-g2001|-g2001-noconfig|-g2005
Wählen Sie die Verilog-Sprache aus Generation im Compiler zu unterstützen. Dies wählt aus
zwischen IEEE1364-1995, IEEE1364-2001, oder IEEE1364-2005. Normalerweise Icarus Verilog
Standardmäßig wird die neueste bekannte Generation der Sprache verwendet. Diese Flagge ist äußerst nützlich
die Sprache auf einen Satz zu beschränken, der von Werkzeugen bestimmter Generationen unterstützt wird, z
Kompatibilität mit anderen Tools.

-gverilog-ams|-gno-verilog-ams
Aktivieren oder deaktivieren Sie (Standard) die Unterstützung für Verilog-AMS. Sehr wenig Verilog-AMS
Derzeit werden bestimmte Funktionen unterstützt.

-gspecify|-gno-angeben
Aktivieren oder deaktivieren (Standard) geben Sie die Blockunterstützung an. Wenn aktiviert, geben Sie den Block an
Der Code wird ausgearbeitet. Wenn diese Option deaktiviert ist, geben Sie an, dass Blöcke analysiert, aber ignoriert werden. Angeben
Blöcke werden für die RTL-Simulation normalerweise nicht benötigt und können sogar schädlich sein
Leistung der Simulation. Durch das Deaktivieren bestimmter Blöcke wird jedoch die Genauigkeit verringert
von Vollzeitsimulationen.

-gstd-include|-gno-std-include
Aktivieren (Standard) oder deaktivieren Sie die Suche nach einem Standardinstallations-Include
Verzeichnis nach allen anderen expliziten Include-Verzeichnissen. Dieser Standard umfasst
Das Verzeichnis ist ein praktischer Ort zum Installieren von Standard-Headerdateien, die ein Verilog verwendet
Das Programm kann enthalten.

-grelative-include|-gno-relative-include
Aktivieren oder deaktivieren Sie (Standard) das Hinzufügen des lokalen Dateiverzeichnisses am Anfang von
der Suchpfad der Include-Datei. Dadurch können Dateien relativ zum eingebunden werden
aktuelle Datei nicht die üblicheren Dateien befinden sich nur im Arbeitsverzeichnis oder
im angegebenen Suchpfad der Include-Datei.

-gxtypes|-gno-xtypes
Aktivieren (Standard) oder deaktivieren Sie die Unterstützung für erweiterte Typen. Erweiterte Typen aktivieren
ermöglicht neue Typen, die von Icarus Verilog als Erweiterungen darüber hinaus unterstützt werden
Basislinie Verilog. Beim Kompilieren von Code kann es erforderlich sein, erweiterte Typen zu deaktivieren
Dies steht im Widerspruch zu den wenigen neuen Schlüsselwörtern, die zur Implementierung des Typsystems verwendet werden.

-gio-range-error|-gno-io-range-error
Die Standards verlangen, dass ein vektorisierter Port über passende Bereiche für seinen Port verfügt
Deklaration sowie jede Netz-/Registerdeklaration. Es war gängige Praxis in der
Vergangenheit, um nur den Bereich für die Netz-/Registerdeklaration und einige Tools anzugeben
erlaube das trotzdem. Standardmäßig wird jede Nichtübereinstimmung als Fehler gemeldet. Benutzen
-gno-io-range-error wird für den Fall eine Warnung anstelle eines schwerwiegenden Fehlers ausgeben
eines vektorisierten Netzes/Registers und einer skalaren Portdeklaration.

-gstrict-ca-eval|-gno-strict-ca-eval
Der Standard verlangt, dass, wenn überhaupt, ein kontinuierlicher Zuweisungsausdruck eingegeben werden muss
Ändert sich der Wert, wird der gesamte Ausdruck neu ausgewertet. Standardmäßig sind Teile der
Ausdrücke, die nicht von den geänderten Eingabewerten abhängen, werden nicht erneut ausgewertet.
Wenn ein Ausdruck einen Aufruf einer Funktion enthält, die nicht ausschließlich von ihr abhängt
Eingabewerte oder Nebenwirkungen haben, wird das resultierende Verhalten davon abweichen
das von der Norm geforderte. Benutzen -gstrict-ca-eval wird den Standard erzwingen
konformes Verhalten (mit etwas Leistungsverlust).

-Ienthaltenir
Verzeichnis anhängen enthaltenir Zur Liste der nach Verilog durchsuchten Verzeichnisse gehören
Dateien. das -I Der Schalter kann mehrmals verwendet werden, um mehrere Verzeichnisse anzugeben
search werden die Verzeichnisse in der Reihenfolge durchsucht, in der sie in der Befehlszeile erscheinen.

-MWeg Schreiben Sie in die durch path angegebene Datei eine Liste der Dateien, die dazu beitragen
Zusammenstellung des Entwurfs. Hierzu zählen auch Dateien, die per include eingebunden werden
Direktiven und Dateien, die automatisch von der Bibliotheksunterstützung geladen werden. Die Ausgabe
ist ein Dateiname pro Zeile ohne führendes oder nachfolgendes Leerzeichen.

-mModulen
Fügen Sie dieses Modul zur Liste der VPI-Module hinzu, die von der Simulation geladen werden sollen. Viele
Module können angegeben werden und alle werden in der angegebenen Reihenfolge geladen. Der
Das Systemmodul ist implizit und immer enthalten. Wenn eine Systemfunktionstabellendatei
( .sft) für das Modul vorhanden ist, wird es automatisch geladen.

-NWeg Dies wird zum eigentlichen Debuggen des Compilers verwendet. Geben Sie die endgültige Netzlistenform des aus
Design in die angegebene Datei kopieren. Ansonsten hat es keinen Einfluss auf den Betrieb des
Compiler. Der Dump erfolgt, nachdem das Design ausgearbeitet und optimiert wurde.

-o Dateinamen
Platzieren Sie die Ausgabe in der Datei Dateinamen. Wenn kein Ausgabedateiname angegeben ist, iverilog
verwendet den Standardnamen a.aus.

-pFlag=Wert
Weisen Sie einem zielspezifischen Flag einen Wert zu. Der -p Der Schalter kann beliebig oft verwendet werden
Es ist notwendig, alle gewünschten Flags anzugeben. Die verwendeten Flags hängen davon ab
Das ausgewählte Ziel wird in der zielspezifischen Dokumentation beschrieben. Flaggen
die nicht verwendet werden, werden ignoriert.

-S Synthetisieren. Normalerweise, wenn das Ziel Verhaltensbeschreibungen akzeptieren kann
Der Compiler belässt Prozesse in Verhaltensform. Der -S Schalter verursacht die
Der Compiler kann die Synthese auch dann durchführen, wenn dies für das Ziel nicht erforderlich ist. Wenn die
Zieltyp ist ein Netzlistenformat, das -S Der Schalter ist unnötig und hat keine Auswirkung.

-s Topmodul
Geben Sie das Modul der obersten Ebene zur Ausarbeitung an. Icarus Verilog wählt standardmäßig
Module, die in keinem anderen Modul instanziiert sind, aber manchmal ist das nicht der Fall
ausreichend oder es werden zu viele Module instanziiert. Wenn der Benutzer eine oder mehrere angibt
Root-Module mit -s Flags, dann werden sie stattdessen als Root-Module verwendet.

-Tmin|typ|max
Verwenden Sie diesen Schalter, um Min-, Typ- oder Max-Zeiten aus Min:Typ:Max-Ausdrücken auszuwählen.
Normalerweise verwendet der Compiler einfach den Typwert aus diesen Ausdrücken
(Es wird eine Warnung für die ersten zehn gefundenen Dateien ausgegeben), aber dieser Schalter teilt dem mit
Geben Sie dem Compiler explizit an, welcher Wert verwendet werden soll. Dadurch wird die Warnung unterdrückt, dass die
Der Compiler trifft eine Wahl.

-tZiel
Verwenden Sie diesen Schalter, um das Zielausgabeformat anzugeben. Siehe die ZIELE Abschnitt unten
für eine Liste gültiger Ausgabeformate.

-v Aktivieren Sie ausführliche Nachrichten. Dadurch werden die Befehlszeilen gedruckt, in denen ausgeführt wird
Führen Sie die eigentliche Kompilierung zusammen mit Versionsinformationen aus den verschiedenen durch
Komponenten sowie die Version des Produkts als Ganzes. Du wirst bemerken
dass die Befehlszeilen einen Verweis auf eine wichtige temporäre Datei enthalten, die übergeben wird
Informationen an den eigentlichen Compiler. Um zu verhindern, dass diese Datei gelöscht wird
Geben Sie am Ende des Prozesses einen eigenen Dateinamen in der Umgebungsvariablen an
IVERILOG_ICONFIG.

-V Drucken Sie die Version des Compilers aus und beenden Sie ihn.

-WKlasse Aktivieren Sie verschiedene Klassen von Warnungen. Siehe die WARNUNG TYPES Abschnitt unten für
Beschreibungen der verschiedenen Warngruppen. Wenn mehrere -W Schalter verwendet werden,
Der Warnsatz ist die Vereinigung aller angeforderten Klassen.

-ylibdir
Hängen Sie das Verzeichnis an den Suchpfad des Bibliotheksmoduls an. Wenn der Compiler eine findet
Wenn Sie ein undefiniertes Modul verwenden, sucht es in diesen Verzeichnissen nach Dateien mit dem richtigen Namen.

-YSuffix
Suffix zur Liste der akzeptierten Dateinamensuffixe hinzufügen, die bei der Suche nach einem verwendet werden
Bibliothek für Zellen. Die Liste enthält standardmäßig den einzelnen Eintrag .v.

MODULE BIBLIOTHEKEN


Der Icarus Verilog-Compiler unterstützt Modulbibliotheken als Verzeichnisse, die Verilog enthalten
Quelldaten. Während der Ausarbeitung bemerkt der Compiler die Instanziierung von undefiniert
Modultypen. Wenn der Benutzer Bibliothekssuchverzeichnisse angibt, führt der Compiler eine Suche durch
das Verzeichnis für Dateien mit dem Namen des fehlenden Modultyps. Wenn eine solche Datei gefunden wird,
es lädt es als Verilog-Quelldatei, sie versuchen erneut, das Modul auszuarbeiten.

Bibliotheksmoduldateien sollten nur ein einzelnes Modul enthalten, dies ist jedoch keine Voraussetzung.
Bibliotheksmodule können auf andere Module in der Bibliothek oder im Hauptdesign verweisen.

ZIELE


Der Icarus Verilog-Compiler unterstützt eine Vielzahl von Zielen für unterschiedliche Zwecke und die
-t Mit dem Schalter wird das gewünschte Ziel ausgewählt.

null Das Nullziel führt dazu, dass kein Code generiert wird. Es ist nützlich für die Überprüfung
Syntax der Verilog-Quelle.

vvp Dies ist die Standardeinstellung. Das VVP-Ziel generiert Code für die VVP-Laufzeit. Die Ausgabe
ist ein vollständiges Programm, das das Design simuliert, aber vom ausgeführt werden muss vvp
Befehl.

FPGA Dies ist ein Syntheseziel, das eine Vielzahl von FPGA-Geräten unterstützt, hauptsächlich über EDIF
Formatausgabe. Der Icarus Verilog FPGA-Codegenerator kann vollständig generieren
Designs oder EDIF-Makros, die wiederum von anderen in größere Designs importiert werden können
Werkzeuge. Die FPGA Ziel impliziert die Synthese -S Flagge.

vhdl Dieses Ziel erzeugt eine VHDL-Übersetzung der Verilog-Netzliste. Die Ausgabe ist a
einzelne Datei mit VHDL-Entitäten, die den Modulen im Verilog entsprechen
Quellcode. Beachten Sie, dass nur eine Teilmenge der Verilog-Sprache unterstützt wird. Sehen
Weitere Informationen finden Sie im Wiki.

WARNUNG TYPES


Dies sind die Arten von Warnungen, die von ausgewählt werden können -W schalten. Die ganze Warnung
Typen (außer alle) kann auch vorangestellt werden Nein- um diese Warnung auszuschalten. Das ist
am nützlichsten nach a -Wand Argument zur Unterdrückung isolierter Warnungstypen.

alle Dies ermöglicht die impliziten, Portbind-, Select-Range-, Timescale- und
Warnungskategorien für die Empfindlichkeit des gesamten Arrays.

implizit
Dies ermöglicht Warnungen zur Erstellung impliziter Deklarationen. Wenn zum Beispiel a
Wird der Skalardraht X verwendet, aber nicht in der Verilog-Quelle deklariert, wird a ausgegeben
Warnung bei der ersten Verwendung.

portbind
Dies ermöglicht Warnungen für Ports von Modulinstanziierungen, die nicht verbunden sind
aber wahrscheinlich sollte es so sein. Hängende Eingabeports erzeugen beispielsweise eine
Warnung.

Auswahlbereich
Dies ermöglicht Warnungen bei ständigen Auswahlen außerhalb der Grenzen. Dazu gehören teilweise bzw
vollständig außerhalb der Grenzen liegende Auswahlen sowie eine Auswahl, die ein „bx“ oder „bz“ enthält
Index.

Zeitplan
Dies ermöglicht Warnungen bei inkonsistenter Verwendung der Timescale-Direktive. Es erkennt
wenn einige Module keine Zeitskala haben oder wenn Module die Zeitskala von anderen erben
Datei. Beides bedeutet wahrscheinlich, dass die Zeitskalen und das Simulationstiming inkonsistent sind
kann verwirrend sein und hängt von der Kompilierungsreihenfolge ab.

Infloop Dies ermöglicht Warnungen für Always-Anweisungen, die zur Laufzeit Endlosschleifen enthalten können
(hat Pfade ohne oder ohne Verzögerung). Diese Klasse von Warnungen ist nicht enthalten -Wand
und hat daher kein Nein- Variante. Es wird immer eine schwerwiegende Fehlermeldung geben
wird gedruckt, wenn der Compiler feststellen kann, dass es definitiv eine Unendlichkeit geben wird
Schleife (alle Pfade haben keine oder keine Verzögerung).

Wenn Sie den Verdacht haben, dass eine Always-Anweisung eine Laufzeit-Endlosschleife erzeugt, verwenden Sie diese Option
Flag, um die Always-Anweisungen zu finden, deren Logik überprüft werden muss. Es ist
erwartet, dass viele der Warnungen falsch positiv sein werden, da der Code behandelt
der Wert aller Variablen und Signale als unbestimmt.

Empfindlichkeit-gesamter-Vektor
Dadurch werden Warnungen aktiviert, wenn ein Teil innerhalb einer „always @*“-Anweisung ausgewählt wird
führt dazu, dass der gesamte Vektor zur Liste der impliziten Empfindlichkeiten hinzugefügt wird.
Obwohl dieses Verhalten vom IEEE-Standard vorgeschrieben ist, ist es nicht das, was möglicherweise der Fall ist
Dies ist zu erwarten und kann Auswirkungen auf die Leistung haben, wenn der Vektor groß ist.

Empfindlichkeit-gesamtes-Array
Dadurch werden Warnungen aktiviert, wenn ein Wort innerhalb einer „always @*“-Anweisung ausgewählt wird
führt dazu, dass das gesamte Array zur impliziten Vertraulichkeitsliste hinzugefügt wird. Obwohl
Dieses Verhalten wird vom IEEE-Standard vorgeschrieben, es ist jedoch nicht das, was sein könnte
erwartet und kann Auswirkungen auf die Leistung haben, wenn das Array groß ist.

SYSTEM AUFGABE TABELLE DATEIEN


Wenn der Quelldateiname als .sft Suffix, dann wird davon ausgegangen, dass es sich um eine Systemfunktionstabelle handelt
Datei. Eine Systemfunktionstabellendatei wird verwendet, um dem Compiler die Rückgabetypen zu beschreiben
für Systemfunktionen. Dies ist notwendig, da der Compiler diese Informationen benötigt
ausgefeilte Ausdrücke, die diese Systemfunktionen enthalten, aber sizetf nicht ausführen können
funktioniert, da es keine Laufzeit hat.

Das Format der Tabelle ist ASCII, eine Funktion pro Zeile. Leere Zeilen werden ignoriert und
Zeilen, die mit ' beginnen#'-Zeichen sind Kommentarzeilen. Jede Nicht-Kommentarzeile beginnt
mit dem Funktionsnamen, dann dem VPI-Typ (z. B. vpiSysFuncReal). Die folgenden Typen sind
unterstützt:

vpiSysFuncReal
Die Funktion gibt einen Real-/Echtzeitwert zurück.

vpiSysFuncInt
Die Funktion gibt eine Ganzzahl zurück.

vpiSysFuncSize
Die Funktion gibt einen Vektor mit der angegebenen Breite zurück und ist vorzeichenbehaftet oder ohne Vorzeichen
laut Flagge.

COMMAND DATEIEN


Die Befehlsdatei ermöglicht es dem Benutzer, Quelldateinamen und bestimmte Befehlszeilen zu platzieren
wechselt in eine Textdatei statt in eine lange Befehlszeile. Befehlsdateien können C enthalten
oder Kommentare im C++-Stil sowie #-Kommentare, wenn das # die Zeile beginnt.

Datei Name
Als Name einer Verilog-Quelldatei wird ein einfacher Dateiname oder Dateipfad angenommen.
Der Pfad beginnt mit dem ersten Nicht-Leerzeichen. Variablen sind
in Dateinamen ersetzt.

-c cmd-Datei -f cmd-Datei
A -c or -f Das Token stellt einer Befehlsdatei ein Präfix voran, genau wie beim Befehl
Linie. Die cmdfile kann sich in derselben Zeile oder in der nächsten Nicht-Kommentarzeile befinden.

-y libdir
A -y Das Token stellt ein Bibliotheksverzeichnis in der Befehlsdatei voran, genau wie es auch der Fall ist
auf der Kommandozeile. Der Parameter zum -y Flag kann in derselben Zeile oder in derselben Zeile stehen
nächste Nicht-Kommentarzeile.

Variablen in der libdir werden ersetzt.

+incdir+enthaltenir
Das +incdir+ Das Token in Befehlsdateien gibt Verzeichnisse an, in denen nach Include-Dateien gesucht werden kann
in ähnlicher Weise wie -I Flags funktionieren auf der Befehlszeile. Der Unterschied ist
das Vielfache +inklusiveDir Verzeichnisse sind gültige Parameter für ein einzelnes Verzeichnis +incdir+
Token, obwohl Sie möglicherweise auch mehrere haben +incdir+ Linien.

Variablen in der enthaltenir werden ersetzt.

+libex+ext
Das +libext Token in Befehlsdateien fünf Dateierweiterungen, die Sie ausprobieren sollten, wenn Sie nach einem suchen
Bibliotheksdatei. Dies ist nützlich in Verbindung mit -y Flags zum Auflisten von Suffixen zum Ausprobieren
in jedem Verzeichnis, bevor Sie zum nächsten Bibliotheksverzeichnis wechseln.

+libdir+dir
Dies ist eine weitere Möglichkeit, Bibliotheksverzeichnisse anzugeben. Siehe die Flagge -y.

+libdir-nocase+dir
Das ist wie beim +libdir Anweisung, aber Dateinamen innerhalb der deklarierten Verzeichnisse
Hier wird die Groß-/Kleinschreibung nicht beachtet. Der fehlende Modulname in einer Suche muss nicht mit dem übereinstimmen
Groß- und Kleinschreibung des Dateinamens, sofern die Buchstaben korrekt sind. Beispiel: „foo“ stimmt überein
„Foo.v“, aber nicht „bar.v“.

+definieren+NAME/FUNKTION=Wert
Das +definieren+ Token ist derselbe wie der -D Option in der Befehlszeile. Der Wert
Ein Teil des Tokens ist optional.

+Zeitskala+Wert
Das +Zeitskala+ Mit dem Token wird die Standardzeitskala für die Simulation festgelegt.
Dies sind die Zeiteinheiten und die Präzision vor einer „Zeitskalenanweisung“ oder nach einer
`resetall-Direktive. Der Standardwert ist 1s/1s.

+toupper-dateiname
Dieses Token bewirkt, dass Dateinamen danach in der Befehlsdatei übersetzt werden
Großbuchstaben. Dies hilft in Situationen, in denen ein Verzeichnis über ein DOS geleitet wurde
Maschine, und dabei werden die Dateinamen verfälscht.

+tolower-filename
Dies ist ähnlich dem +toupper-dateiname oben beschriebener Hack.

+Ganzzahlbreite+Wert
Dadurch kann der Programmierer die Breite für ganzzahlige Variablen im festlegen
Verilog-Quelle. Der Standardwert ist 32, der Wert kann ein beliebiger ganzzahliger Wert sein.

VARIABLEN IN COMMAND DATEIEN


In bestimmten Fällen unterstützt Verilog Variablen in Befehlsdateien. Dies sind Zeichenfolgen der
bilden „$(Varname)“ oder „${Varname}", Wo Varname ist der Name der Umgebungsvariablen
lesen. Die gesamte Zeichenfolge wird durch den Inhalt dieser Variablen ersetzt. Variablen sind
werden nur in Kontexten ersetzt, die sie explizit unterstützen, einschließlich Datei und Verzeichnis
Saiten.

Variablenwerte stammen aus der Betriebssystemumgebung und nicht vom Präprozessor
Wird an anderer Stelle in der Datei oder in der Befehlszeile definiert.

VORDEFINIERT MAKROS


Die folgenden Makros sind vom Compiler vordefiniert:

__ICARUS__ = 1
Dies wird beim Kompilieren mit Icarus Verilog immer definiert.

__VAMS_ENABLE__ = 1
Dies ist definiert, wenn Verilog-AMS aktiviert ist.

Beispiele:


In diesen Beispielen wird davon ausgegangen, dass Sie in der aktuellen Version über eine Verilog-Quelldatei mit dem Namen hello.v verfügen
Verzeichnis

So kompilieren Sie hello.v in eine ausführbare Datei namens a.out:

iverilog hallo.v

So kompilieren Sie hello.v in eine ausführbare Datei namens hello:

iverilog -o hallo hallo.v

So kompilieren und explizit mit der vvp-Laufzeit ausführen:

iverilog -ohello.vvp -tvvp hello.v

Nutzen Sie iverilog online über die Dienste von onworks.net


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad