mikrocontroller.net

Forum: FPGA, VHDL & Co. ISim immer neu starten?


Autor: Ralph H. (guru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Als Neuling bin ich noch nicht so recht den Umgang mit der XILINX 
Software gewohnt und möchte gern wissen, was ich tun kann..
Ich nutze ISE 12.3 mit einer Testbench die im ISim 12.3 läuft.
Wenn ich nun eine Simulation starte, muss ich bei JEDER Änderung in
der Testbench den ISim wieder beenden und dann aus der ISE neu starten.
Das ist mit der Zeit sehr nervig.. bestimmt kann ich das effektiver 
machen, oder ?

Autor: ISim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

das Neustarten nach Änderungen der VHDL-Dateien lässt sich
glaube ich nicht vermeiden. Du kannst aber die Stimulus-Daten
in einer Textdatei ablegen und im TestBench einlesen.
Ich habe mir dazu eine Lib geschrieben, die Stimulus in der
folgenden Form einliest:

enable    ---#############-----
di[7:4]   ---------------------
di[3:0]   --ABC--XUWHL---1234--

Bei Änderungen im Stimulus muss nur der Restart-Button gedrückt
werden.

Autor: Ralph H. (guru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm.. Danke Dir! Ich ändere doch aber nur die Parameter in der 
Testbench..und nicht die VHDL Datei des Objektes ?

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ralph H. schrieb:
> Hm.. Danke Dir! Ich ändere doch aber nur die Parameter in der
> Testbench..und nicht die VHDL Datei des Objektes ?
Für den Simulator ist die Testbench das eigentliche Objekt, das abläuft. 
Die zu simulierenden Dateien/Module sind dort einfach nur als 
Komponenten eingebunden. Wenn du also akzeptierst, dass der ISIM neu 
startet, wenn du eine Unterkomponente (= dein Modul) änderst, dann mußt 
du genauso akzeptieren, dass der neu startet, wenn das Top-Modul (= die 
Testbench) geändert wurde.

Autor: Johann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich erzeuge immer die Testbench starte adnn die Simulation mit ISIM 
formatuere mir dann die Waveformen, so wie ich es möchte. Dann speicher 
ich die Waveform (links oben gibt es so ein speicher Symbol) dann muss 
man ISIM schließen, den Fehler in der VHDL Datei ausbessern oder die 
Testbench ändern, die Simulation starten es öffnet sich dann wieder ISIM 
und dann lade ich die Waveform und kann prüfen ob der Fehler nun weg 
ist.

Ich weiß das dies sehr nervig ist mir geht es genauso ich habe leider 
auch noch keine andere Lösung gefunden.

Autor: Ralph H. (guru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lothar Miller schrieb:
>Wenn du also akzeptierst, dass der ISIM neu startet..
Lach... ich akzeptier das doch nicht Lothar ! :-)
Ich wollte wissen obs ne Lösung dafür gibt, aber offentsichtlich nicht
und dann ist es auch ok, zwar nicht sehr praktikabel aber eben so.
Da frag ich mich nur, was die ganzen GB auf meiner Festplatte suchen :D

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ralph H. schrieb:
> zwar nicht sehr praktikabel aber eben so.
Ja, früher, als es den Modelsim noch gab, da konnte man einfach die 
entsprechende Datei neu compilieren und auf den Restart-Button drücken.

Den gibts übrigens noch in den alten Versionen, aber für den Anfänger 
ist der noch komplexer zu bedienen und umständlicher als der ISIM. Die 
Lernkurve ist sehr steil, etlichen hat der Schwung nicht gereicht...

Autor: Ralph H. (guru)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
grins.. naja.. ich muss sagen ich komme ganz gut voran mit dem ISim..
und den ersten Codes :-) dazu aber im anderen Thread mehr..

Autor: Duke Scarring (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ralph H. schrieb:
> Das ist mit der Zeit sehr nervig.. bestimmt kann ich das effektiver
> machen, oder ?

Das soll wohl in einer der nächsten ISIM-Versionen verbessert werden.
Bei Altera gibt es für kleine Designs auch eine brauchbare 
Modelsim-Variante:

http://www.altera.com/ -> Download Center -> ModelSim-Altera -> 
Individual and Recommended Software Downloads -> ModelSim-Altera 
Starter Edition

Dafür muß man sich nichtmal registrieren oder eine Lizenz beantragen. 
Wenn man dann die Altera-Libs nicht benötigt, kann man sie in der 
modelsim.ini auskommentieren. Und es läuft auch unter Linux.

Duke

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lothar Miller schrieb:
> Ralph H. schrieb:
>> zwar nicht sehr praktikabel aber eben so.
> Ja, früher, als es den Modelsim noch gab, da konnte man einfach die
> entsprechende Datei neu compilieren und auf den Restart-Button drücken.

Dieses Neustarten lässt sich deshalb nicht vermeiden, weil so ISIM so 
funktioniert, dass die einzelnen VHDL Files zu object modulen kompiliert 
werden.
Eein "VHDL-Linker" (Fuse heisst das Programm) linkt diese object-Module 
zu einem richtigen ausführbaren EXE-File, das dann aufgerufen wird.
Jede Änderung eines beliebigen VHDL Files erfordert einen 
Neu-Kompilation und einen Neustart dieser EXE Datei.
Leider, ModelSim war bequemer.

Autor: Johann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was viel schlimmer bei ISIm ist das man nicht die Höhe der Signale 
vergrößern kann und die Zeilenabstände zwischen den Signalen vergrößern 
kann. Wenn man mehr als 10 Signale auf dem Bildschirm hat dann wird es 
sehr unübersichtlich.

Außerdem wären so Zählfunktionen nicht schlecht. Ich würde gerne einen 
Startpunkt und einen Endpunkt festlegen und dann wird gezählt wie viele 
Events dazwischen liegen ohne dies manuell zu zählen. Mein 
Logikanalysator kann dies ohne Probleme

Autor: Duke Scarring (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Johann schrieb:
> Mein
> Logikanalysator kann dies ohne Probleme

Deine Testbench aber auch.

Duke

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Am meisten vermisse ich beim ISim die Bedienbarkeit. Wenn man das TCL 
einmal begriffen hat, ist ModelSm viel besser bedienbar. Und ISim kann 
immer noch keine Analog-Darstellung. Blöd, dass es kein Modelsim XE mehr 
gibt, da werd ich wohl gleich mal wieder am Anfang des Jahres einen 
Investitionsantrag stellen für das ModelSim PE.

Autor: Anguel S. (anguel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian R. schrieb:
> Blöd, dass es kein Modelsim XE mehr
> gibt, da werd ich wohl gleich mal wieder am Anfang des Jahres einen
> Investitionsantrag stellen für das ModelSim PE.

Musst nur aufpassen, dass sich deine Manager dann nicht lieber für China 
entscheiden, vgl. Beitrag "Warum Chinesen so billig VHDL produzieren können"
;) oder doch eher  :(

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hoffe, dass es in der Fraunhofer Gesellschaft nicht ganz so akut 
dazu kommt. :)

Autor: Anguel S. (anguel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian R. schrieb:
> Ich hoffe, dass es in der Fraunhofer Gesellschaft nicht ganz so akut
> dazu kommt. :)

Achso, der ModelSim wird also von unseren Steuern finanziert ;)
Ihr ladet die Chinesen lieber zu euch ein, statt nach China zu reisen. 
Das spart wenigstens Reisekosten ;) Wobei das dann durch die 
Lizenzkosten kompensiert wird.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eher im Gegenteil: Wir bestreiten 60% unserer Projekte durch 
Industrie-Projekte, die meisten davon gehen über einen deutschen Partner 
nach China. Forschung und Entwicklung wird zumindest bei Fraunhofer 
nicht ausgelagert. Selbst die Produktion bleibt hier im einheimischen 
Mittelstand. Nur knapp 40% des Geldes kommt von öffentlichen 
Auftraggebern.

Autor: berndl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was ich ja an ModelSim richtig aetzend finde: Du kaufst dir eine PE, 
musst dich durch einige Config-Files kaempfen (ja, der Simulator laeuft 
dann erstmal mit einer ns als Aufloesung und dein Xilinx Geraffel tut 
deshalb nicht), musst dich mit dem License Mgr rumschlagen, erstmal die 
Libs compilieren und so weiter und so fort...

Mit ModelSim XE oder AE steht dein ganzes Environment funktionsfaehig 
da, da musst du eigentlich nix tun. Und die teure Lizenz: Erstmal 
basteln und Libs compilieren (ich hab' hier Xilinx, Altera und Lattice).

Vermutlich ist es wirklich so wie in dem parallelen Chinesen Thread 
beschrieben: Nimm geklaute SW, die ist einfacher ans Laufen zu kriegen 
:o(

Und mit dem ISIM kann ich deshalb nix anfangen, weil unsere Designs 
potentiell auf Xilinx, Altera, Lattice laufen muessen. Bleibt halt nur 
ModelSim PE und/oder GHDL (und das hat ja auch so seine Tuecken)

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
berndl schrieb:
> Und mit dem ISIM kann ich deshalb nix anfangen, weil unsere Designs
> potentiell auf Xilinx, Altera, Lattice laufen muessen. Bleibt halt nur
> ModelSim PE und/oder GHDL (und das hat ja auch so seine Tuecken)

Auch ich bin vom ISIM nicht unbedingt begeistert, aber im Prinzip sollte 
es ein voller VHDL Simulator sein, der sicher auch die Altera-Libs 
übersetzen kann. Da sind ISIM und GHDL wahrscheinlich gleich.
Und der Nachteil von PE ist, dass man immer weniger mit einer reinen 
VHDL Lizenz anfangen kann, sondern immer öfter eine Mixed-Language 
Lizenz benötigt (z.B. mit EDK). Dann ist PE auch nicht mehr so günstig.

Ich habe einmal von einem Xilinx FAE gehört, dass einer der Gründe für 
den Xilinx Umstieg von ModelSim auf ISIM ist, dass Xilinx in Zukunft die 
Simulation bestimmter IP Cores nur mittels verschlüsselter Bibliotheken 
unterstützen will. In diesem Fall wird man ISIM verwenden müssen.

Autor: moep (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du unter Linux arbeiten darfst, kannst du dir ja mal
ghdl und gtkwave anschauen. Da kannst du deinen VHDL Code
neu compilieren und dann die aktuelle Waveform in gtkwave neu laden
ohne dass du das Fenster mit den Wellen immer wieder zumachen musst.


Grüße,

moep

Autor: Anguel S. (anguel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus Falser schrieb:
> Und der Nachteil von PE ist, dass man immer weniger mit einer reinen
> VHDL Lizenz anfangen kann, sondern immer öfter eine Mixed-Language
> Lizenz benötigt (z.B. mit EDK). Dann ist PE auch nicht mehr so günstig.

Das ist in der Tat ein großes Problem. Man wird bestraft, dass man die 
"falsche" HDL kann. Welche Optionen hat man denn als ehrlicher 
VHDL-Entwickler, der sich die Lizenz nicht leisten kann, um z.B. einen 
RAM-Core, dessen Modell es nur als Verilog gibt? Gar keine - man lässt 
das Ganze oder verzichtet auf die Simulation.

Autor: Johann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jedoch muss man doch dazu sagen das es mit ISOM für den ANfang nicht 
schlecht ist, wenn Xilinx dort noch eine Versesserungen implementiert 
dann kann man damit schon sehr gut arbeiten.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.