Hardware Reference
In-Depth Information
signal T, a, b, c, y0, y1:std_logic;
...
process (T)
variable v:std_logic;
begin
if rising_edge(T) then
A1: y0 <= v xor a;
if b= '1' then
A2: v := c;
end if ;
A3: y1 <= v xor a;
end if ;
end process ;
Variablev
f¨urAnwei-
sungA3
Variablevf¨ur
AnweisungA1
0
1
c
b =1
=1
y 0
a
y 1
T
Web-Projekt:P2.1/BedVarZuw.vhdl
Abb. 2.20. Bedingte Variablenzuweisung in einem Abtastprozess
gisterausgang und der für die zweite Signalzuweisung am Registereingang ab-
zugreifen. Die Variable repräsentiert zwei unterschiedliche Schaltungspunkte
im Datenfluss. Die Möglichkeit, unterschiedliche Schaltungspunkte zu reprä-
sentieren, macht eine Variable, die ein Speicherverhalten beschreibt, zu einem
fehleranfälligen Beschreibungsmittel, das nur wohlüberlegt eingesetzt werden
sollte.
In einem Abtastprozess lassen sich kombinatorische Funktionen ge-
nau wie in einem kombinatorischen Prozess durch logische Opera-
toren, arithmetische Operatoren, Vergleichsoperatoren und Fallunter-
scheidungen beschreiben, die von der Register-Transfer-Synthese durch
Logikgatter, Rechenwerke, Vergleicher und Multiplexer nachgebildet
werden. Signalzuweisungen werden, da sie an die aktive Taktflanke ge-
bunden sind, in Register übersetzt, die auch als Zwischenspeicher ver-
wendet werden können. Aus Variablen, die ihre zugewiesenen Werte
zum selben Weckzeitpunkt weitergeben, werden Signale, die kombinato-
rische Teilschaltungen miteinander verbinden. In einem Abtastprozess
ist es aber auch möglich, mit Variablen Register zu beschreiben.
2.1.4 Latches
Latches sind schaltungstechnisch einfacher aufgebaute Datenspeicher als Re-
gister. Sie besitzen einen binären Freigabeeingang, einen Dateneingang und
einen Datenausgang. Die Datenübernahme erfolgt zustandsgesteuert. Wenn
das Freigabesignal am Freigabeeingang aktiv ist, übernimmt das Latch seine
Eingabedaten, sonst speichert es seinen Wert. Bei einem ungültigen Freigabe-
signal ist nicht vorhersagbar, ob der Eingabewert übernommen wird oder ob
der gespeicherte Wert erhalten bleibt. Falls sich der gespeicherte Wert vom
Eingabewert unterscheidet, wird er ungültig. Voraussetzungen für die Über-
nahme gültiger Daten sind, dass das Eingabesignal vor der Deaktivierung des
 
Search WWH ::




Custom Search