Inhaltsverzeichnis
Register
Eine kettenförmige Aneinanderreihung von Flipflops nennt man ein Register. Lässt sich der Zustand eines jeden Flipflops um je ein Flipflop nach rechts oder links verschieben, so spricht man von einem rechts- oder linksschiebenden Register.1)
Schieberegister
Es seien 4 JK-Flipflops zu einem rechtsschiebenden Register zu verschalten. Man verbindet jeweils die Ausgänge Q und -Q eines Flipflops mit den JK-Eingängen des jeweils rechts benachbarten Speichers. Weiterhin werden alle Takteingänge an die gleiche Taktimpulsquelle gelegt, sowie der J-Eingang des ersten Flipflops auf den Wert 0 gelegt und der zugehörige K-Eingang auf den Wert 1.
Annahme: Der Zustand des Registers sei 1 0 0 0. Nach erfolgtem Taktimpuls (t+1) wird der Zustand des Registers 0 1 0 0 sein. An den Eingängen J und K des ersten Flipflops liegen vor Taktimpuls konstant die Werte 0 und 1 an, so dass am Ausgang Q1 nach Taktimpuls der Wert 0 anliegt.
An den Eingängen J und K vom zweiten Flipflop liegen vor Taktimpuls die Werte 1 und 0 an, so dass am Ausgang Q2 nach Taktimpuls der Wert 1 anliegt. An den Eingängen J und K des dritten und des vierten Flipflops lagen vor Taktimpuls die Werte 0 und 1 an, so dass sich an den Ausgängen Q3 bzw. Q4 nach Taktimpuls die Werte nicht ändern, d.h. Q3 = 0 und Q4 = 0.
Ringschieberegister
Werden die Ausgänge Q4 und -Q4 des vierten Flipflops mit den J- und K-Eingängen des ersten Flipflops verbunden, entsteht ein Sogenanntes Ringschieberegister. Dies bedeutet, dass der ursprüngliche Zustand des Registers nach dem 4. Taktimpuls wieder in dem Register steht.
Die Taktfolgetabelle zeigt die folgende Zusammenstellung:
Taktfolge | Flipflop | |||
Q1 | Q2 | Q3 | Q4 | |
---|---|---|---|---|
Ausgangszustand | 1 | 0 | 0 | 0 |
nach 1. Taktimpuls | 0 | 1 | 0 | 0 |
nach 2. Taktimpuls | 0 | 0 | 1 | 0 |
nach 3. Taktimpuls | 0 | 0 | 0 | 1 |
nach 4. Taktimpuls | 1 | 0 | 0 | 0 |
nach 5. Taktimpuls | 0 | 1 | 0 | 0 |
Bemerkung: Deutet man den Zustand eines Registers als Dualzahl, entspricht das Verschieben des Zustands um eine Stelle nach rechts einer Division durch 2.
Zähler
Neben Schieberegistern lassen sich mit Flipflops auch Dualzähler realisieren. Mit vier Flipflops lässt sich z.B. ein Dualzähler aufbauen, der die Dualzahlen 0000 bis 1111 zählt.
Die vier Flipflops seien JK-Flipflops und weiterhin sei vereinbart, dass unbeschaltete J-K-Eingänge mit dem Wert 1 belegt sind. Der Taktimpulseingang des vierten Speichers wird von einer Taktimpulsquelle angesteuert, während alle anderen Taktimpulseingänge von den Ausgängen Qi (i = 2, 3, 4) des rechts benachbarten Speichers angesteuert werden. Der erste, zweite und dritte Speicher können dann ihren Zustand ändern, wenn der Ausgang des rechts benachbarten Speichers von dem Wert 1 auf den Wert 0 übergeht.
Sind alle Speicher gelöscht, ist also der Zustand des Zählers 0000, wird der Zustand des vierten Flipflops nach erfolgtem Taktimpuls, auf Grund der Bauart des JK-Flipflops, 1. Die ersten drei Speicher konnten nicht schalten, da sie keinen Taktimpuls bekamen. Der Zustand des Zählers wird also 0001.
Beim zweiten Taktimpuls aus der Taktimpulsquelle ändert der vierte Speicher wieder seinen Zustand. Am Ausgang Q4 liegt also nach Taktimpuls der Wert 0 an. Der Wert des Ausgangs Q4 hat von 1 auf 0 gewechselt. Vereinbarungsgemäß bekommt der dritte Speicher einen Taktimpuls, d.h., der Zustand des dritten Speichers wird 1 und am Ausgang Q3 liegt nun auch der Wert 1 an.
Übergangsverhalten eines Dualzählers, aufgebaut mit JK-Flipflops
(die Tabelle ist zeilenweise von links nach rechts zu lesen)
Zustand des Zählers zum Zeitpunkt t | Schaltverhalten nach Taktimpuls an Speicher 4 | Zustand des Zählers zum Zeitpunkt t+1 | |||||||||
(Q1 | Q2 | Q3 | Q4)t | (Q1 | Q2 | Q3 | Q4)t+1 | (Q1 | Q2 | Q3 | Q4)t+1 |
---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 0 | 0 | -Q4 | 0 | 0 | 0 | 1 |
0 | 0 | 0 | 1 | 0 | 0 | -Q3 | -Q4 | 0 | 0 | 1 | 0 |
0 | 0 | 1 | 0 | 0 | 0 | 1 | -Q4 | 0 | 0 | 1 | 1 |
0 | 0 | 1 | 1 | 0 | -Q2 | -Q3 | -Q4 | 0 | 1 | 0 | 0 |
0 | 1 | 0 | 0 | 0 | 1 | 0 | -Q4 | 0 | 1 | 0 | 1 |
0 | 1 | 0 | 1 | 0 | 1 | -Q3 | -Q4 | 0 | 1 | 1 | 0 |
0 | 1 | 1 | 0 | 0 | 1 | 1 | -Q4 | 0 | 1 | 1 | 1 |
0 | 1 | 1 | 1 | -Q1 | -Q2 | -Q3 | -Q4 | 1 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | -Q4 | 1 | 0 | 0 | 1 |
1 | 0 | 0 | 1 | 1 | 0 | -Q3 | -Q4 | 1 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 1 | 0 | 1 | -Q4 | 1 | 0 | 1 | 1 |
1 | 0 | 1 | 1 | 1 | -Q2 | -Q3 | -Q4 | 1 | 1 | 0 | 0 |
1 | 1 | 0 | 0 | 1 | 1 | 0 | -Q4 | 1 | 1 | 0 | 1 |
1 | 1 | 0 | 1 | 1 | 1 | -Q3 | -Q4 | 1 | 1 | 1 | 0 |
1 | 1 | 1 | 0 | 1 | 1 | 1 | -Q4 | 1 | 1 | 1 | 1 |
1 | 1 | 1 | 1 | -Q1 | -Q2 | -Q3 | -Q4 | 0 | 0 | 0 | 0 |