Hardware Reference
In-Depth Information
satzfunktionen werden oft benötigt. Das rechtfertigt eine genauere schaltungs-
technische Betrachtung. Die zustandsgesteuerte Übernahme des Anfangswer-
tes wird bei einem Register aus Master-Slave-Flipflops mit initialisierbaren
Slaves nachgebildet. Die Setz- und Rücksetzeingänge der Slave-Flipflops haben
Vorrang vor der Übernahme vom Dateneingang (vgl. Abschnitt 4.3.3, Abb.
4.46), so dass die Initialisierung sofort und unabhängig vom Takt, d.h. asyn-
chron, erfolgt. Die zusätzliche Freigabesteuerung kann unterschiedlich reali-
siert werden. In Abb. 4.52b wird die bedingte Übernahme mit einem Mul-
tiplexer nachgebildet, der wahlweise den Ist-Zustand oder das abzutastende
Signal an den Registereingang weiterleitet. In Abb. 4.52 c blockiert das inak-
tive Freigabesignal des Registers die Datenweitergabe vom Master zum Slave.
Das Freigabesignal E
muss während der gesamten Slave-Übernahmephase
stabil und gültig sein. Dazu wird es in Abb. 4.52c in dieser Taktphase in ei-
nem zusätzlichen D-Flipflop gespeichert. Das zusätzliche D-Flipflop wird für
das gesamte Register nur einmal benötigt, während in Abb. 4.52 b jedes Bit
seinen eigenen Multiplexer haben muss.
signal
x,y:std_logic_vector(n-
1
downto
0
);
signal
E, I, T:std_logic;
...
process
(I, T):
begin
if
I=
'1'
then
y <= aw;
elsif
E=
'1'
and
rising_edge(T)
then
y <= x;
end if
;
end process
;
Master Slave
0
1
x
E
x
E
y
x
E
I
T
I
b)
Master
Slave
x
T
x
E
x
E
x
E
y
I
&
E
E
∗
a)
c)
I
Abb. 4.52. Register mit Freigabe- und Initialisierungseingang a) Synthese-
Beschreibung b) Schaltung mit Eingabemultiplexer c) Schaltung mit Übernah-
meblockierung für den Slave
4.3.6 Taktversorgung
Taktsignale legen die Zeitpunkte und Zeitfenster für die Datenübernahme in
die Register und Latches fest. Sie müssen zeitgenau und Glitch-frei sein. In
einer synchronen Schaltung werden alle Taktsignale von einem Haupttakt ab-
geleitet, der mit einem frequenzstabilen Oszillator erzeugt wird.
Oszillator
Ein Oszillator ist eine Schaltung, die ein periodisches Signal bereitstellt. Prin-
zipiell ist diese Funktion mit dem Ringinverter aus Abschnitt 4.2.3 realisier-
bar. Aber die Periodendauer des von einem Ringinverter erzeugten Signals ist