Hardware Reference
In-Depth Information
Signale gehören zu den komplizierteren Beschreibungsmitteln digitaler
Schaltungen. Es sei deshalb empfohlen, die vorgegebenen Beispiele selbst mit
dem Simulator auszuprobieren und zu verändern.
1.2.4 Ereignisgesteuerte Simulation
Die Simulation einer digitalen Schaltung erfolgt ereignisgesteuert. Vorerst wer-
den nur kombinatorische Schaltungen betrachtet. Das einfachste Funktions-
modell einer kombinatorischen Schaltung ist ein Prozess, der die Ausgabewerte
aus den aktuellen Eingabewerten berechnet, die berechneten Werte den Aus-
gabesignalen zuweist, auf die nächste Eingabeänderung wartet und bei jeder
Eingabeänderung den gesamten Ablauf wiederholt. Die Ausgabeänderungen
sind wiederum Weckereignisse für Prozesse, die die Signale weiterverarbeiten.
Abbildung 1.26 a zeigt eine kombinatorische Schaltung aus fünf Gattern
und Abb. 1.26b eine Funktionsbeschreibung der Schaltung durch einen Pro-
zess. Die Anweisungsfolge innerhalb des Prozesses berechnet zuerst die Aus-
gabewerte der Gatter G1 bis G3 und speichert sie in Variablen. Aus den zwi-
schengespeicherten Werten werden danach die Ausgabewerte der Schaltung
berechnet und mit der Verzögerung t d = 2 ns an die beiden Bits des Ausga-
besignals zugewiesen. Abschließend wartet der Prozess auf eine Änderung des
Signals
, d.h. auf eine Änderung von mindestens einem der Eingabebits. Die
Anweisungsfolge in einem Prozess wird zur Simulation in eine Endlosschleife
eingebettet, so dass nach dem Aufwachen des Prozesses wieder die gesamte
Anweisungsfolge von vorn ausgeführt wird.
x
signal x: std_logic_vector( 4 downto 0 );
signal y: std_logic_vector( 1 downto 0 );
constant td: delay_length:= 2 ns ;
...
Schaltungsprozess: process
variable v:std_logic_vector(2 downto 0);
begin
G1:v(0) := x( 0 ) nand x( 1 );
G2:v(1) := x( 2 ) nand x( 3 );
G3:v(2) := x( 0 ) nand x( 4 );
G4:y(0) <= v( 0 ) nand v( 1 ) after td;
G5:y(1) <= v( 1 ) nand v( 2 ) after td;
wait on x;
end process;
t d
G1
x 0
x 1
x 2
x 3
&
v 0
G4
&
y 0
G2
&
v 1
G5
&
y 1
G3
&
v 2
x 4
a)
x 10011
UU 00 11 ...
UUUUU 10010 ...
y
0 5 10
t sim inns
c)
b)
Web-Projekt:P1.2/ProcSimG5.vhdl
Abb. 1.26. a) Kombinatorische Schaltung b) Prozess zur Funktionsbeschreibung c)
Simulationsausgabe (Eingabebereitstellung mit dem Prozess aus Abb. 1.24)
Zur Simulation der Beispielschaltung sind die einzelnen Beschreibungsele-
mente an den richtigen Stellen in den Testrahmen in Abb. 1.18 einzusetzen: die
 
Search WWH ::




Custom Search