Forum: FPGA, VHDL & Co. GHDL und Simulation Fehler


von Christian (Gast)


Lesenswert?

Hallo,

ich möchte ein VHDL Projekt via GHDL (unter Windows)
kompilieren und anschließend mit der erzeugten .VCD Datei
im GTKWave die Simlation erzeugen.

Erhalte immer die Fehlermeldung:
"invalid memory access <stack size too small>"

Das Projekt besteht aus einer TOP Level Datei
zur Komponenten Instantiierung und Dateien
die die RTL Beschreibung dieser Komponenten enthalten:
top.vhdl
comp1.vhdl
comp2.vhdl
...
Analyse:
ghdl -a comp1.vhdl
ghdl -a comp2.vhdl
ghdl -a top.vhdl

Ausführbare Datei erzeugen
ghdl -e top

Datei für GTKWave erzeugen:
ghdl -r top --vcd=top.vcd

Fehler:
"invalid memory access <stack size too small>"

Ich verstehe diesen Fehler nicht.Danke für jede Unterstützung!


Gruß
Christian

von hans (Gast)


Lesenswert?

Hallo.
Den Fehler erhalte ich auch häufiger. Erstaunlicherweise ist es sehr von 
dem Quellcode abhängig. Häufig lösche ich nur einen Kommentar oder füge 
einen ein und der Code lässt sich wieder kompilieren.
Ebenso scheint Unterschiede zu geben, wenn ich den GHDL durch ein Perl 
Script, eine Batchdatei oder direkt in der Kommandozeile starte.
Was manchmal hilft (aber leider auch nicht immer) ist bei
ghdl -r
noch
--stack-size=1000000
als Parameter dranzuhängen. Die Zahl ist irgendwie frei gewählt und 
leider auch nirgendwo in der Dokumentation richtig beschrieben. 
Jedenfalls habe ich nichts gefunden.
Falls also jemand eine gute und allgemeingültige Lösung kennt, würde 
mich die auch interessieren.

von Christian (Gast)


Lesenswert?

Die Option mit --stack-size=SIZE war mir schon bekannt.
Laut GHDL Doku beansprucht jeder Prozess eine bestimmte
Stackgröße die vom OS bereitgestellt wird.Ich vermute das
diese Speichergröße in GHDL minimiert ist.Größere Projekte
erzeugen dann einen Speicherüberlauf.Umso mehr überrascht mich
das diese Option nicht funktioniert.

Gruß
Christian

von guest (Gast)


Lesenswert?

ist das nicht deprimierend zu lesen? Sollte man sich nicht auf die (zB. 
Verhaltens) Simu konzentrieren als auf das Tool selbst, das einem dabei 
unterstützen soll, um dieses überhaupt selbst erst zum laufen zu 
bekommen? Um Modelsim führt wohl kein Weg vorbei ....

von Georg A, (Gast)


Lesenswert?

Man könnte den Bug ja auch mal dem ghdl-Autor melden, am besten mit 
einem Code, der das reproduziert. Modelsim wäre auch nicht da wo es 
jetzt ist, wenn die gefrusteten Anwender sich nicht beschwert hätten...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.