Sequentielle Logik
Sequentielle Logik
Sequentielle Logik
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Sequentielle</strong> <strong>Logik</strong><br />
Einführung in die Technische Informatik<br />
Falko Dressler, Stefan Podlipnig<br />
Universität Innsbruck
• Schaltwerke<br />
• Flip-Flops<br />
• Entwurf eines Schaltwerks<br />
• Zähler<br />
• Realisierung<br />
Einführung in die Technische Informatik - WS 11/12<br />
Übersicht<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 2
Lernziele<br />
• Begriffe: asynchrones/synchrones Schaltwerk, sequentielle <strong>Logik</strong>,<br />
Zustandsdiagramm, Mealy/Moore-Automat, ...<br />
• RS Flip-Flop, JK Flip-Flop, D Flip-Flop<br />
Wahrheitstabellen, Funktionsweise, Zeitverhalten<br />
ungetaktete, getaktete und flankengetriggerte Flip-Flops<br />
• Einfache Schaltwerke<br />
n-Bit Register, n-Bit Schieberegister<br />
asynchrone/synchrone n-Bit Zähler<br />
• Systematischer Entwurf eines synchronen Schaltwerks aus einer<br />
Problembeschreibung<br />
als Moore-Automat<br />
als Mealy-Automat<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 3
SCHALTWERKE<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 4
• In der kombinatorischen <strong>Logik</strong><br />
Schaltwerke (1)<br />
sind Gatter die Grundelemente, die i.a. als verzögerungsfrei angenommen<br />
werden (Idealisierung, die oft zu Problemen führt!).<br />
werden Schaltungen als Schaltnetze bezeichnet.<br />
sind keine Rückkopplungen gestattet.<br />
können Schaltungen als gerichteter azyklischer Graph dargestellt werden.<br />
• In der sequentiellen <strong>Logik</strong><br />
wird das Zeitverhalten durch Annahme einer Gatterlaufzeit ∆t<br />
berücksichtigt.<br />
stellen Flipflops neben Gattern die Grundelemente dar.<br />
sind Rückkopplungen gestattet.<br />
werden Schaltungen als Schaltwerke bezeichnet.<br />
können Schaltungen als gerichteter zyklischer Graph dargestellt werden.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 5
Schaltwerke (2)<br />
• Was geschieht in einer digitalen Schaltung bei der Rückkopplung<br />
eines Gatterausganges?<br />
• Beispiel 1:<br />
Rückgekoppeltes NOR-Gatter:<br />
Unerwünschte Schwingungen<br />
sind möglich !<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 6
• Beispiel 2:<br />
zwei rückgekoppelte<br />
NOR-Gatter<br />
(bistabile Kippstufe)<br />
Schaltwerke (3)<br />
Bei A = 1 oder B = 1 ergibt sich nach 2∆t ein stabiler Zustand,<br />
Bei A = 0 und B = 0 ergibt sich für X = Y ein instabiles Verhalten,<br />
für X ≠ Y eine Speicherung der letzten Ausgangswerte.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 7
FLIP-FLOPS<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 8
Flip-Flops (1)<br />
• Die Speicherung eines binären Wertes kann durch eine bistabile<br />
Kippstufe aus zwei gegenseitig rückgekoppelten NAND- oder NOR-<br />
Gattern erfolgen.<br />
• Bezeichnet man die zwei freien Eingänge mit<br />
R = „Reset“ (Löschen) und<br />
S = „Set“ (Setzen),<br />
• so ergibt sich ein RS Flip-Flop:<br />
Einführung in die Technische Informatik - WS 11/12<br />
Folgezustand<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 9
Flip-Flops (2)<br />
• Einsatz eines RS-Flipflops: Speichern eines kurzzeitigen Wertes<br />
Achtung: Flip-Flop muss initialisiert werden!<br />
• Beispiel: Setzen einer Warnlampe bei kurzzeitiger Temperaturüberschreitung,<br />
manuelles Rücksetzen<br />
• Zeitverhalten eines RS Flip-Flops:<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 10
• Getaktetes RS Flip-Flop:<br />
Flip-Flops (3)<br />
Synchrone Schaltung: Signale an R und S werden nur übernommen, wenn<br />
Taktsignal Clk aktiv ist<br />
bei Clk = 0 sind R und S irrelevant (d = „don´t care“)<br />
bei Clk = 1 stellt sich der neue Folgezustand Q´ ein<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 11
Flip-Flops (4)<br />
• Zeitverhalten eines getakteten RS Flip-Flops:<br />
• Impulse auf den Eingangsleitungen R und S während der<br />
nichtaktiven Phase (Clk = 0) bleiben unberücksichtigt!<br />
• Während aktiver Taktphase (Clk = 1) sind mehrere Zustandsänderungen<br />
möglich !<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 12
Flip-Flops (5)<br />
• Durch die Möglichkeit mehrerer Zustandsänderungen in einer<br />
Taktphase ist das getaktete RS Flip-Flop für viele Anwendungen<br />
ungeeignet.<br />
• Beispiel:<br />
Rückkopplung vom Ausgang<br />
des Flip-Flops zu den Eingängen<br />
über ein Schaltnetz<br />
⇒ selbst bei kurzen Taktphasen<br />
sind mehrere ungewollte Rückkopplungen<br />
je Takt möglich!<br />
• Sinnvoller wäre eine Variante des RS Flip-Flops, die nur zu einem<br />
ausgezeichneten Zeitpunkt eines Taktzyklus die Werte an den<br />
beiden Eingangsleitungen R und S übernimmt!<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 13
Flip-Flops (6)<br />
• Durch spezielle Schaltungstechnik<br />
kann erreicht werden, dass auch die<br />
Eingangsleitungen nur<br />
bei steigender Flanke oder<br />
bei fallender Flanke<br />
berücksichtigt werden!<br />
⇒ positiv oder negativ<br />
flankengetriggertes RS Flip-Flop<br />
(positive Flanke = steigende Flanke,<br />
negative Flanke = fallende Flanke)<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 14
Flip-Flops (7)<br />
• Mit flankengetriggerten Flipflops kann z.B. Pipelining einfach<br />
realisiert werden:<br />
Mit jeder steigender Flanke wird das kombinatorische Ergebnis aus jedem<br />
Schaltnetz in das nachgeschaltete Flip-Flop übernommen.<br />
Schaltnetz 1 und 2 können gleichzeitig auf verschiedenen Daten arbeiten.<br />
− Nach 3 Takten liegt das Ergebnis am Ausgang vor.<br />
Schaltwerk arbeitet korrekt, wenn Taktzykluszeit größer ist als die<br />
maximale Verzögerung beider Schaltnetze.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 15
• D Flip-Flop:<br />
Flip-Flops (8)<br />
Bei Clk = 1 wird intern S = D und R = D gesetzt.<br />
Hierdurch wird unerlaubter Zustand R = S = 1 stets vermieden!<br />
Bei Clk = 0 bleibt Zustand unverändert.<br />
Bei Clk = 1 ergibt sich der neue Folgezustand Q´ = D.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 16
Flip-Flops (9)<br />
• Flankengetriggertes D Flip-Flop:<br />
D Flip-Flops werden meistens nur in der flankengetriggerten Version<br />
benutzt, d.h. lediglich bei Auftreten der entsprechenden Taktflanke wird das<br />
Signal vom Eingang D übernommen.<br />
D Flip-Flop mit positiver Flankentriggerung:<br />
D Flip-Flop mit negativer Flankentriggerung:<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 17
Flip-Flops (10)<br />
• Flankengetriggerte D Flip-Flops dienen als Grundbaustein für ein<br />
n-Bit Register:<br />
Daten vom Datenbus<br />
werden bei steigender<br />
Flanke des LOAD-<br />
Signals in das<br />
Register geladen.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 18
Flip-Flops (11)<br />
• Aus D-Flipflops kann auch ein n-Bit Schieberegister einfach<br />
aufgebaut werden:<br />
In jedem Takt werden Binärwerte um eine Position geschoben, z.B. nach<br />
rechts.<br />
Anwendungen: Seriell-/Parallelwandlung, Teil arithmetischer Operationen.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 19
• JK Flip-Flop:<br />
Flip-Flops (12)<br />
Basierend auf flankengetriggertem RS Flip-Flop.<br />
Nutzung der nicht benötigten Eingangskombination 1, 1 für eine<br />
Invertierung von Q („Toggle“).<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 20
Flip-Flops (13)<br />
• Zeitverhalten bei realen flankengetriggerten Flipflops:<br />
Daten müssen bereits eine Zeitspanne tsetup vor der Taktflanke anliegen.<br />
Daten müssen auch nach der aktiven Taktflanke noch eine gewisse<br />
Zeitspanne thold anliegen.<br />
Zustandsänderungen sind erst eine Zeitspanne tprop nach der Taktflanke am<br />
Ausgang wirksam.<br />
Beispiel:<br />
− Zeitverhalten für ein D Flip-Flop<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 21
ENTWURF EINES SCHALTWERKS<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 22
• Asynchrones Schaltwerk<br />
Entwurf eines Schaltwerks (1)<br />
Gesteuert durch Veränderung der Eingangssignale.<br />
Zeitpunkt, an dem wieder stabile Ausgangssignale vorliegen, ist nur durch<br />
Gatterlaufzeit festgelegt.<br />
Aufwendiger Entwurf!<br />
Sehr schnelle Arbeitsweise möglich.<br />
• Synchrones Schaltwerk<br />
Gesteuert durch zentralen Takt.<br />
Übernahme der Änderung eines Eingangssignals erfolgt nur zu festen<br />
Zeitpunkten.<br />
Einfacher systematischer Entwurf, basierend auf endlichem Zustandsautomaten<br />
(Mealy- oder Moore-Automat).<br />
Kritischer Pfad bestimmt maximale Taktfrequenz.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 23
Entwurf eines Schaltwerks (2)<br />
• Wie kann man systematisch ein synchrones Schaltwerk<br />
ausgehend von der Problembeschreibung entwerfen ?<br />
• Idee einer Vorgehensweise:<br />
Beliebige (jedoch endliche) Menge von Zuständen, dargestellt als<br />
Zustandsdiagramm.<br />
Zustandsübergänge erfolgen stets taktsynchron und in Abhängigkeit von<br />
Eingangssignalen E.<br />
Ausgangssignale Y des Schaltwerks entsprechen i.a. nicht direkt den<br />
Ausgängen der Flip-Flops, sondern werden durch ein Schaltnetz generiert.<br />
• Verwendung eines endlichen Zustandsautomaten als zugrunde<br />
liegendes Modell.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 24
• Ein kurzer Exkurs…<br />
Einführung in die Technische Informatik - WS 11/12<br />
Zustandsautomaten<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 25
• Moore-Automat:<br />
Nach E. Moore (Bell Labs)<br />
Allgemeiner Aufbau:<br />
Entwurf eines Schaltwerks (3)<br />
Eingabelogik bestimmt Zustandsübergänge, die von den Eingabesignalen E<br />
und vom aktuellen Zustand abhängen.<br />
Ausgabelogik bestimmt Ausgabe Y, die nur vom aktuellen Zustand abhängt.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 26
• Mealy-Automat:<br />
Nach G. Mealy (IBM)<br />
Allgemeiner Aufbau:<br />
Entwurf eines Schaltwerks (4)<br />
Eingabelogik wie beim Moore-Automaten.<br />
Ausgabe Y hängt jedoch durch die Ausgabelogik vom aktuellen Zustand und<br />
vom Eingabesignal E ab.<br />
Kann schneller auf Eingabeänderungen reagieren als Moore-Automat.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 27
Entwurf eines Schaltwerks (5)<br />
• Vorgehensweise beim Entwurf eines Schaltwerks:<br />
1. Erstellen eines Zustandsdiagramms<br />
2. Erstellen einer Zustandstabelle<br />
3. Auswahl einer binären Zustandskodierung und Generierung einer binären<br />
Zustandstabelle<br />
4. Auswahl eines Flip-Flop Typs und Ermittlung der für jeden<br />
Zustandsübergang benötigten Flip-Flop Ansteuerungen<br />
5. Ermittlung der Ausgabegleichungen<br />
6. Minimierung der Ansteuer- und Ausgabegleichungen<br />
7. Realisierung des Schaltwerks<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 28
Entwurf eines Schaltwerks (6)<br />
• Ein Zustandsdiagramm ist die Darstellung einer Aufgabenstellung<br />
als gerichteter, zyklischer Graph, wobei die Knoten den Zuständen<br />
und die Kanten den Zustandsübergängen entsprechen.<br />
• Zustandsdiagramm für einen Moore-Automaten:<br />
Knoten: Markierung S/Y gibt Bezeichnung des Zustands S und die<br />
zugehörige Ausgabe Y = Y1Y2 ... Yn an.<br />
Kanten: Markierung mit der für den jeweiligen Zustandsübergang<br />
erforderlichen Eingabe E = E1 E2 ... Em.<br />
• Zustandsdiagramm für einen Mealy-Automaten:<br />
Knoten: Markierung S gibt nur die Bezeichnung des Zustands an.<br />
Kanten: Markierung E/Y mit der für den jeweiligen Zustandsübergang<br />
erforderlichen Eingabe E = E1 E2 ... Em und der resultierenden Ausgabe Y =<br />
Y1Y2 ... Yn.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 29
• Aufgabenstellung:<br />
Beispiel Moore-Automat (1)<br />
Es soll ein synchrones Schaltwerk entworfen werden, das in einem binären<br />
Eingabestrom E(t) die Sequenz 010 erkennt.<br />
Ausgabe von Y = 1, sobald im Eingabestrom die Sequenz 010 erkannt wurde,<br />
ansonsten soll Y = 0 sein.<br />
Schritt 1: Zustandsdiagramm für Moore-Automat<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 30
• Schritt 2: Zustandstabelle<br />
Beispiel Moore-Automat (2)<br />
Die Zustandstabelle enthält für jeden (symbolisch bezeichneten) Zustand S:<br />
− Den Folgezustand S´ in Abhängigkeit von der Eingabe E<br />
− Die zugehörige Ausgabe Y<br />
Zustandstabelle für 010-Sequenzdetektor:<br />
Einführung in die Technische Informatik - WS 11/12<br />
S E S´ Y<br />
A 0 B 0<br />
A 1 A 0<br />
B 0 B 0<br />
B 1 C 0<br />
C 0 D 0<br />
C 1 A 0<br />
D 0 B 1<br />
D 1 C 1<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 31
Beispiel Moore-Automat (3)<br />
• Schritt 3: Auswahl einer binären Zustandskodierung und<br />
Generierung einer binären Zustandstabelle:<br />
Zustände S werden in binäre Zustände Q = Qk–1 ...Q1Q0 mit k = ⎡log2 |S|⎤<br />
umkodiert.<br />
Binäre Zustandstabelle für 010-Sequenzdetektor (|S| = 4 ⇒ k = 2):<br />
S E S´ Y<br />
A 0 B 0<br />
A 1 A 0<br />
B 0 B 0<br />
B 1 C 0<br />
C 0 D 0<br />
C 1 A 0<br />
D 0 B 1<br />
D 1 C 1<br />
Einführung in die Technische Informatik - WS 11/12<br />
Q1 Q0 E Q1´ Q0´ Y<br />
0 0 0 0 1 0<br />
0 0 1 0 0 0<br />
0 1 0 0 1 0<br />
0 1 1 1 0 0<br />
1 0 0 1 1 0<br />
1 0 1 0 0 0<br />
1 1 0 0 1 1<br />
1 1 1 1 0 1<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 32
Beispiel Moore-Automat (4)<br />
• Schritt 4: Auswahl eines Flip-Flop Typs und Ermittlung der für<br />
jeden Zustandsübergang nötigen Flip-Flop Ansteuerungen.<br />
Für 010-Sequenzdetektor sollen JK Flip-Flops eingesetzt werden.<br />
Ansteuerungstabelle bei Verwendung von JK Flip-Flops:<br />
Q1 Q0 E Q 1´ Q 0´ J1 K1 J0 K0<br />
0 0 0 0 1 0 d 1 d<br />
0 0 1 0 0 0 d 0 d<br />
0 1 0 0 1 0 d d 0<br />
0 1 1 1 0 1 d d 1<br />
1 0 0 1 1 d 0 1 d<br />
1 0 1 0 0 d 1 0 d<br />
1 1 0 0 1 d 1 d 0<br />
1 1 1 1 0 d 0 d 1<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 33
Beispiel Moore-Automat (5)<br />
• Schritt 5: Bestimmung der Ausgabegleichungen<br />
Aus binärer Zustandstabelle kann zunächst eine reduzierte Tabelle erstellt<br />
werden, die nur die Spalten Qk–1 ...Q1Q0 und Y enthält.<br />
Reduzierte Tabelle für 010-Sequenzdetektor:<br />
Ausgabegleichung: Y = Q1 ⋅ Q0<br />
Einführung in die Technische Informatik - WS 11/12<br />
Q1 Q0 Y<br />
0 0 0<br />
0 1 0<br />
1 0 0<br />
1 1 1<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 34
Beispiel Moore-Automat (6)<br />
• Schritt 6: Minimierung der Ansteuer- und Ausgabegleichungen<br />
Ausgabegleichung Y = Q1 ⋅ Q0 ist bereits minimal.<br />
Für Ansteuergleichungen J0 und K0 kann man direkt aus der<br />
Ansteuertabelle minimale Gleichungen ablesen:<br />
J0 = E, K0 = E<br />
Minimierung von Ansteuergleichungen J1 und K1:<br />
Resultate: J1 = Q0 ⋅ E K 1 = Q0 ⋅ E + Q0 ⋅ E<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 35
Beispiel Moore-Automat (7)<br />
• Schritt 7: Realisierung des Schaltwerks<br />
Realisierung der Schaltfunktionen aus Eingabe- und Ausgabelogik.<br />
Realisierung des 010-Sequenzdetektors, hier mit UND-, ODER-Gattern,<br />
Invertern und positiv flankengetriggerten JK Flip-Flops:<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 36
Beispiel Mealy-Automat (1)<br />
• Aufgabenstellung wie beim Beispiel zum Moore-Automat:<br />
Erkennung der Sequenz 010 in einem Binärstrom E(t).<br />
• Schritt 1: Zustandsdiagramm für Mealy-Automat<br />
Zusätzliche Markierung der Kanten (anstatt der Knoten) mit Ausgabe Y<br />
Zustandsdiagramm für 010-Sequenzdetektor:<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 37
Beispiel Mealy-Automat (2)<br />
• Schritte 2+3: Erstellen einer Zustandstabelle, Auswahl einer<br />
binären Zustandskodierung und Generierung einer binären<br />
Zustandstabelle.<br />
Wie bei Moore-Automat, jedoch sofortige Veränderung von Y (im gleichen<br />
Takt), wenn Eingabe E sich entsprechend ändert.<br />
Für 010-Sequenzdetektor ergibt sich:<br />
S E S´ Y<br />
A 0 B 0<br />
A 1 A 0<br />
B 0 B 0<br />
B 1 C 0<br />
C 0 D 1<br />
C 1 A 0<br />
D 0 B 0<br />
D 1 C 0<br />
Einführung in die Technische Informatik - WS 11/12<br />
Q1 Q0 E Q1´ Q0´ Y<br />
0 0 0 0 1 0<br />
0 0 1 0 0 0<br />
0 1 0 0 1 0<br />
0 1 1 1 0 0<br />
1 0 0 1 1 1<br />
1 0 1 0 0 0<br />
1 1 0 0 1 0<br />
1 1 1 1 0 0<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 38
Beispiel Mealy-Automat (3)<br />
• Schritt 4: Bestimmen der Flip-Flop Ansteuergleichungen:<br />
Wie bei Moore-Automat!<br />
• Schritt 5: Bestimmung der Ausgabegleichungen<br />
Y hängt beim Mealy-Automat von Q und von Eingabe E ab !<br />
Reduzierte Tabelle für 010-Sequenzdetektor:<br />
Resultierende Ausgabegleichung:<br />
Y = Q1 ⋅ Q0 ⋅ E<br />
• Schritt 6: Minimierung<br />
Für Ansteuergleichungen wie bei Moore-Automat.<br />
Ausgabegleichung ist bereits minimal!<br />
Einführung in die Technische Informatik - WS 11/12<br />
Q1 Q0 E Y<br />
0 0 0 0<br />
0 0 1 0<br />
0 1 0 0<br />
0 1 1 0<br />
1 0 0 1<br />
1 0 1 0<br />
1 1 0 0<br />
1 1 1 0<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 39
Beispiel Mealy-Automat (4)<br />
• Schritt 7: Realisierung des Schaltwerks<br />
Im Vergleich zum entsprechenden Moore-Automat ändert sich nur die<br />
Ausgabelogik:<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 40
Vergleich Moore- und Mealy-Automat<br />
• Sowohl Moore-Automat als auch Mealy-Automat sind zum Entwurf<br />
beliebiger Schaltwerke geeignet.<br />
• Vorteile Moore-Automat:<br />
Taktsynchrone Ausgabe Y, asynchron auftretende Störungen der<br />
Eingabesignale wirken sich nicht auf Y aus.<br />
Geringerer Schaltungsaufwand für Ausgabelogik, wenn Ausgabe Y eigentlich<br />
nur vom Zustand abhängt.<br />
• Vorteile Mealy-Automat:<br />
Schnellere Reaktion auf Veränderung der Eingabesignale E.<br />
Realisierung ist mit einer kleineren Anzahl an Zuständen möglich, wenn<br />
mehrere Zustandsübergänge zu einem Zustand verschiedene Ausgaben<br />
erfordern.<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 41
Anmerkungen zum Moore-/Mealy-Automat<br />
• Jeder beliebige getaktete Flip-Flop Typ darf verwendet werden.<br />
Zunächst ist Flip-Flop Zustands-Übergangstabelle aufzustellen.<br />
In Ansteuertabelle müssen die entsprechenden Ansteuersignale für die<br />
benötigten Zustands-Übergänge eingetragen werden.<br />
Schaltungsaufwand für Eingabelogik abhängig vom Flip-Flop Typ.<br />
• Zur Vereinfachung des Zustandsdiagramms dürfen Zustandsübergänge,<br />
die von einer Eingangsvariablen unabhängig sind, auch<br />
mit d („don‘t care“) beschriftet werden:<br />
Beispiel:<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 42
Reduktion von Zuständen<br />
• Im Moore-Automat können Zustände mit gleichen Ausgaben und<br />
gleichen Folgezuständen zusammengefasst werden.<br />
• Beispiel:<br />
Automat zur Erkennung von 110 oder 100.<br />
Einsparung eines Flip-Flops!<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 43
ZÄHLER<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 44
Synchroner 3-Bit Binärzähler<br />
• Kann systematisch als synchrones Schaltwerk entworfen werden,<br />
als Ergebnis erhält man:<br />
• Auch als Modulo-n Zähler oder kombinierter Vor-/Rückwärtszähler<br />
realisierbar.<br />
• Taktsynchrone Zustandswechsel an allen Ausgängen!<br />
Einführung in die Technische Informatik - WS 11/12<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 45
Zeitverhalten:<br />
τ sei Verzögerung<br />
eines flanken-<br />
getriggerten<br />
JK-Flipflops<br />
⇒ τ legt maximale<br />
Taktfrequenz fest!<br />
Einführung in die Technische Informatik - WS 11/12<br />
Asynchroner 3-Bit Binärzähler<br />
zählt fallende<br />
Taktflanken!<br />
<strong>Sequentielle</strong> <strong>Logik</strong> 46