Hardware Reference
In-Depth Information
ghdl -r Test_Sig1 --wave=Test_Sig1.ghw
Das Visualisierungsprogramm GTKWAVE wird anschließend mit dieser Datei
und einer Sav-Datei mit den Visualisierungseinstellungen gestartet:
gtkwave Test_Sig1.ghw [ Test_Sig1.sav ]
Visualisierungseinstellungen sind z.B. die Auswahl der darzustellenden Signale
und das darzustellende Zeitfenster. Auf der Web-Seite [27] steht für jedes
Projekt, in dem Signalverläufe ausgewertet werden, eine geeignete Sav-Datei.
Die aktuelle Simulationszeit spielt für die Berechnung der Signalverläufe
eine Schlüsselrolle. Sie kann innerhalb eines Prozesses mit der vordefinierten
Funktion now abgefragt und mit Warteanweisungen, die eine Weckbedingung
haben, weitergestellt werden. In VHDL wird zwischen folgenden Weckbedin-
gungen unterschieden:
• Änderung eines Signals aus einer Weckliste
wait on Weckliste ;
• Weiterrücken der Simulationszeit um eine Verzögerungszeit
wait for Verzögerungszeit ;
• eine beliebige Bedingung, die Signalwerte oder die Simulationszeit auswer-
tet wait until Bedingung ;
Eine Warteanweisung legt den Prozess, in dem sie ausgeführt wird, schlafen.
Während er schläft, werden andere Prozesse weiterbearbeitet, die Simulations-
zeit weitergestellt und die Signalwerte aktualisiert. Auch bei einer Zuweisung
mit der Verzögerungszeit »0« (Delta-Delay-Modell) ist der neue Signalwert
im Prozess erst nach der nächsten Warteanweisung sichtbar.
Abbildung 1.24 zeigt eine typische Prozessbeschreibung für die Erzeugung
eines Testeingabesignals für eine kombinatorische Schaltung. Das zu erzeu-
gende Signal ist im Beispiel ein 5-Bit-Vektor mit dem bitweisen Anfangswert
»nicht initialisiert«. Im Prozess wird für jeden Testschritt eine bestimmte Zeit
gewartet und danach ein neuer Wert zugewiesen. Am Ende der Anweisungs-
folge steht die obligatorische Warteanweisung ohne Weckbedingung, die den
signal x: std_logic_vector( 4 downto 0 );
...
Eingabe: process
begin
wait for 5 ns ; x <= "10010" ;
wait for 5 ns ; x <= "00011" ;
...
wait;
end process;
1001010011 ...
0 t sim inns
xUUUUU
5 10
Unichtinitialisiert,impliziter
AnfangswertderSignal-
vereinbarung
Web-Projekt:P1.2/EingabeProc.vhdl
Abb. 1.24. Prozessbeschreibung zur Erzeugung eines Testeingabesignals
Search WWH ::




Custom Search