Hardware Reference
In-Depth Information
Die aktuelle Simulationszeit wird mit der vordefinierten, aufrufparameterfrei-
en Funktion »now« abgefragt. Nach der Schleife folgt die übliche Wartean-
weisung ohne Weckbedingung, die den Prozess dauerhaft schlafen legt und so
die Simulation beendet.
Die vollständige Beschreibung der Wiederholschleife in Abb. 3.6 d lautet
for Schleifenzähler in diskreter_Bereich loop
Anweisung {Anweisung}
end loop;
Im Schleifenkopf wird ein Zähler vereinbart, der nacheinander alle Werte des
angegebenen Bereichs annimmt. Der Wert des Schleifenzählers kann weder
innerhalb noch außerhalb der Schleife verändert werden. Das ist wichtig für
synthesefähige Beschreibungen iterativer Schaltungen
1
. Ein diskreter Bereich
kann in VHDL aufsteigend oder absteigend geordnet sein:
ug to og -- aufsteigender diskreter Bereich
og downto ug -- absteigender diskreter Bereich
(
- Obergrenze). Später in Abschnitt 3.2.5 kommen als
weitere Beschreibungsmöglichkeiten für diskrete Bereiche diskrete Zahlenty-
pen und Indexbereiche von Vektoren und Feldern hinzu. Vorwegnehmend wer-
den der Indexbereich eines Vektors, z.B. eines Bitvektors, mit dem Attribut
'range oder 'reverse_range, die Untergrenze mit dem Attribut 'low und
die Obergrenze mit dem Attribut 'high abgefragt.
ug
- Untergrenze;
og
Beispiel 3.1: Das nachfolgende Programm gibt für die Bitvektorkonstante »bv«
alle Bitwerte in absteigender Reihenfolge aus:
-- Vereinbarungen im Testprozess
constant bv:std_logic_vector( 3 downto 0 ):= "10UX" ;
-- Anweisungsfolge im Testprozess
for idx in 3 downto 0 loop
write( "bv(" & str(idx) & ")=" & str(bv(idx)));
end loop ;
wait ;
) WEB-Projekt:P3.1/TestFor.vhdl
Wie ändert sich die Ausgabe, wenn der Indexbereich durch
a) bv'range,
b) bv'high- 1 downto bv'low,
c) bv'low+ 1 to bv'high und
d) bv'reverse_range
ersetzt wird?
1 Iterative Hardware-Beschreibungen werden bei der Synthese aufgerollt. Die Be-
schreibung dafür ist eine Schleife mit einer zur Übersetzungszeit bekannten Ite-
rationsanzahl.
 
Search WWH ::




Custom Search