Hardware Reference
In-Depth Information
aller Speicherelemente gebildeten Zustandsmengen wachsen beide exponenti-
ell mit der Bitanzahl. Ab etwa zehn Zuständen und 20 Kanten, d.h. ab etwa
zusammen vier Eingabe- und Zustandsbits, wird ein Zustandsgraph unüber-
sichtlich.
Wie lassen sich die zu verarbeitenden und die gespeicherten Informa-
tionen besser strukturieren?
Das Vorbild ist ein Programm auf einem Rechner. Ein Programm hat einen
Kontrollfluss, der Operationen steuert und zum Teil von Operationsergebnis-
sen gesteuert wird. Die möglichen Operationen für Daten sind eingeschränkt
(Zählen, Addieren, bitweise Logikoperationen etc.). Aus der Programmierung
ist bekannt, dass sich so jeder Algorithmus beschreiben lässt, ohne dass die
Beschreibungsgröße exponentiell mit der Anzahl der zu verarbeitenden und
zu speichernden Bits zunimmt.
Ein Operationsablaufgraph ist ein erweiterter Zustandsgraph, der zusätz-
lich Operationen steuert und in den Übergangsbedingungen der Kanten Ope-
rationsergebnisse auswertet. Für die Spezifikation einer sequenziellen Schal-
tung mit einem Operationsablaufgraphen sind zuerst die Operationen und
die Operanden, die für die Nachbildung der Zielfunktion benötigt werden,
als Register-Transfer-Funktionen zusammenzustellen. Im zweiten Schritt wird
ein Ablaufgraph konstruiert, der die Abfolge der Operationen unter teilwei-
ser Auswertung der Berechnungsergebnisse beschreibt. Die folgenden Beispie-
le zeigen, dass bereits eine einfache Zählfunktion und die Auswertung des
Zählstandes die Beschreibung von Abläufen und deren Nachbildung durch se-
quenzielle Schaltungen drastisch vereinfachen kann. Größere Beispiele folgen
später.
Beispiel Dreiecksignalgenerator
Der zu entwerfende Dreiecksignalgenerator soll seinen Ausgabewert immer
alternierend aufwärts und abwärts zählen. Abbildung 1.79 a zeigt das zu ge-
nerierende 4-Bit-Dreiecksignal. Die Zykluslänge beträgt 2 2 4 1 = 30. Ein
Automat nach dem bisherigen Schema hätte 30 Zustände, die zyklisch durch-
laufen werden.
In einem Programm würde man die gegebene Zielfunktion mit einem Zäh-
ler beschreiben, der in einer Schleife immer bis zu seinem Maximalwert auf-
wärts und anschließend bis zu seinem Minimalwert abwärts zählt. Bevor der
Operationsablauf festgelegt werden kann, sind die zu manipulierenden Daten-
objekte und die auf sie anzuwendenden Operationen zu spezifizieren. Der Drei-
ecksignalgenerator benötigt ein Zählregister und die drei auf das Zählregister
anwendbaren Operationen: »clr« (Zählstand auf null setzten), »inc« (Inkre-
ment, Aufwärtszählen) und »dec« (Dekrement, Abwärtszählen, Abb. 1.79 b).
Der Operationsablaufgraph kommt mit zwei Zuständen aus. Bei der Initiali-
sierung des Automaten ist auch der Zähler zu initialisieren. Im Zustand »0«
Search WWH ::




Custom Search