www.mikrocontroller.net

Forum: FPGA, VHDL & Co. ModelSim - Signale in Wave Fenster erst ab Zeitpunk XY


Autor: Matthias Krüßelin (kruessi80)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

wieder mal ne Frage an die Profi's.
Wenn ich in ModelSim simuliere, werden die Signale immer ab 0ps 
angezeigt.
Ist es möglich zuerst z.B. 1ms, oder bis ein bestimmtes Signal z.B. auf 
'1' wechselt,  zu simulieren ohne dass die Signale in das Wave gezeigt 
werden und dann die Signale für die nächsten 200ns einzublenden, sodass 
man die nächsten 200ns bequem anschauen kann?

Das wäre total nützlich, da dann der "Schieber" unten breiter wäre als 
bei voller Simulation.

Ich weiß dass vieles über die *.do files möglich ist, aber ist das auch 
möglich?

Danke und Grüße
Matthias

PS: so geht's leider net...

onerror {resume}
quietly WaveActivateNextPane {} 0

delete wave *

run 1ms

add wave -noupdate -divider tb
add wave -noupdate -format Logic -radix hexadecimal /Table_tb/*

add wave -noupdate -divider DUT
add wave -noupdate -format Logic -radix hexadecimal /Table_tb/dut/*

TreeUpdate [SetDefaultTree]

WaveRestoreCursors {{Cursor 1} {0 ps} 0}
configure wave -namecolwidth 203
configure wave -valuecolwidth 100
configure wave -justifyvalue left
configure wave -signalnamewidth 2
configure wave -snapdistance 10
configure wave -datasetprefix 0
configure wave -rowmargin 4
configure wave -childrowmargin 2
configure wave -gridoffset 0
configure wave -gridperiod 1
configure wave -griddelta 40
configure wave -timeline 0
configure wave -timelineunits ns
update
WaveRestoreZoom {0 ps} {100 ns}

run 200ns

Autor: Ottmar (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du nach dem "run 200 ns" ein ein neues WaveRestoreZoom commando 
einfügst dann zoomed das wave window auf den angegebenen Bereich.

WaveRestoreZoom {1 ms} {1.0002 ms}

Der Schieber unten wird dadurch natürlich nicht größer.

Autor: Matthias Krüßelin (kruessi80)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
klar.
Allerdings möchte ich eigentlich im Endeffekt
erreichen, dass ModelSim "schnell" bis zu einem Zeitpunkt
XY simuliert und dann die von mir gewünschten Signale
analysiert und anzeigt.

Soweit ich weiß, läuft die Simulation auch schneller, wenn
ich weniger Signale auf das Wave lege. Somit muss es da
irgend einen Unterschied in den Tiefen von ModelSim geben...

Autor: Ottmar (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das macht dein Script doch schon!

Die simulation läuft ohne waves bis 1 ms, dann erst werden die waves 
eingefügt.

Wenn du trotzdem noch waves in dem Zeitraum vor 1 ms hast, dann hast du 
beim restart der simulation nicht alle wave's/log's gelöscht.

Der geschwindigkeitsvorteil von simulationen ohne waves ist je nach 
anzahl der gelogten signale nicht so wahnsinnig hoch.

Autor: Matthias Krüßelin (kruessi80)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ottmar schrieb:
> Wenn du trotzdem noch waves in dem Zeitraum vor 1 ms hast, dann hast du
> beim restart der simulation nicht alle wave's/log's gelöscht.

guter Tipp.
Es fehlte nur noch eine Zeile für den Restart.
Danke :-)
onerror {resume}
quietly WaveActivateNextPane {} 0

delete wave *

restart -force -nobreakpoint -nofcovers -nolist -nolog

run 1ms

add wave -noupdate -divider tb
add wave -noupdate -format Logic -radix hexadecimal /macAddrTable_tb/*

add wave -noupdate -divider DUT
add wave -noupdate -format Logic -radix hexadecimal /macAddrTable_tb/dut/*

TreeUpdate [SetDefaultTree]

WaveRestoreCursors {{Cursor 1} {0 ps} 0}
configure wave -namecolwidth 203
configure wave -valuecolwidth 100
configure wave -justifyvalue left
configure wave -signalnamewidth 2
configure wave -snapdistance 10
configure wave -datasetprefix 0
configure wave -rowmargin 4
configure wave -childrowmargin 2
configure wave -gridoffset 0
configure wave -gridperiod 1
configure wave -griddelta 40
configure wave -timeline 0
configure wave -timelineunits ns
update
WaveRestoreZoom {0 ps} {100 ns}

run -all

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.