Schaltwerke und Automaten Grundlagen der technischen ......• Schaltwerk mit 2 stabilen Zuständen...
Transcript of Schaltwerke und Automaten Grundlagen der technischen ......• Schaltwerk mit 2 stabilen Zuständen...
Schaltwerke und Automaten
1
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
Grundlagen der technischen Informatik
Kapitel 5 – Schaltwerke und Automaten
Prof. Dr.-Ing. Axel Hunger
Pascal A. Klein, M.Sc.
Schaltwerke und Automaten
2
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5. Schaltwerke und Automaten .......................................................... 3
5.1 Allgemeine Begriffe ............................................................... 3
5.2 Asynchrone Schaltwerke ........................................................ 7
5.3 Synchrone Schaltwerke .......................................................... 8
5.4 Autonome Schaltwerke .......................................................... 9
5.5 Beschreibungsformen ........................................................... 10
5.5.1 Zustandstabelle ................................................................. 10
5.5.2 Zustandsgraph ................................................................... 13
5.6 Minimierung der Schaltwerkszustände ................................ 14
5.7 Automaten ............................................................................ 18
5.7.1 Mealy-Automat ................................................................. 18
5.7.2 Moore-Automat ................................................................ 19
5.7.3 Gegenüberstellung Mealy- und Moore-Automat .............. 20
5.8 Synthese von Schaltwerken .................................................. 21
Schaltwerke und Automaten
3
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5. Schaltwerke und Automaten 5.1 Allgemeine Begriffe Bekannt:
1) Schaltnetze: Verknüpfung mehrerer Eingangsvariablen ohne Rückkopplung des Ergebnisses.
2) Flipflops: Speicherfähigkeit durch Ausnutzung von Signalverzögerungen.
3) Aufbau von Zählern aus Flipflops und Schaltnetzen.
Neu: Verallgemeinerung sequentieller Schaltungstechnik durch rückgekoppelte Schaltnetze.
Bei einem Schaltwerk sind die Ausgänge von früheren Zuständen abhängig, d.h. es handelt sich um eine logische Schaltung, die sequentiell verschiedene Zustände durchläuft.
Schematische Darstellung von Schaltwerken über:
• verzögerungsfreies Schaltnetz und
• zusammengefasste Verzögerungen / Rückkopplung.
Variante I:
SchaltnetzVerzöge-rungs-einheit
X
SY
Rückkopplung
X = Xn = {X1n,X2
n,....Xmn } = Eingangsvektor mit den entspre-
chenden Variablen S = Sn = {S1
n,S2n,....Sr
n } = Zustandsvektor mit den entsprech-enden Variablen
Y = Yn = {Y1n,Y2
n,....Yln } = Ausgangsvektor mit den entspre-
chenden Variablen
Schaltwerke und Automaten
4
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
Variante II:
Y muss nicht identisch mit den rückgekoppelten Signalen sein:
Schalt-netz
Verzöge-rungsein-heit
X
S
E
Y
Verzöge-rung
zusätzlich E = En = {E1n,E2
n,...Ekn } = Erregungsvektor mit den
entsprechenden Variablen
Variante III:
Verzögerung von E nach Y hat keinen prinzipiellen Einfluss auf die Funktion des Schaltwerks, daher:
Schalt-netz
X
S
E X S=g( , )
Y X S=f( , )
Verzöge-rung
gf
Funktionsgleichungen:
Y = f(X,S)
E = g(X,S)
Funktionsweise:
1) Änderung von X0 → X1 ⇒ Änderung von Y0 → Y1 und Änderung von E0 → E1
Schaltwerke und Automaten
5
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
2) Änderung von E0 → E1 ⇒ Änderung von Y1 → Y2 und Änderung von E1 → E2
3) Iteration von 2. bis: Änderung von Ei → Ei+1 ⇒ Änderung von Yi+1 → Yi+2
und Stabilitätsbedingung Ei+1 = Ei
Alle Zwischenschritte nach 2. sind instabil, d.h. sie werden nur kurzzeitig durchlaufen.
Analyse eines Schaltwerks auf stabile Zustände:
• Auftrennen der Verzögerung und
• Vergleich von S und E in vollständiger Funktionstabelle.
Beispiel:
X Y
1
> 1
> 1 1
Y2
Umzeichnen:
X
S
Y
1 > 1
> 1 1
Y2
Y
E
E
E
1
2
Schaltwerke und Automaten
6
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
E = f(X,S)
Y = E
Eingänge Ausgänge X S1 S2 E1 E2
n =1 0 0 0 1 0 n =2 0 0 1 0 0 n =3 0 1 0 1 0 n =4 0 1 1 0 0 n =5 1 0 0 0 1 n =6 1 0 1 0 1 n =7 1 1 0 0 0 n =8 1 1 1 0 0
1221 SXE SXE +=+=
Ergebnis:
• Schaltwerk mit 2 stabilen Zuständen (D-FF, hier ohne Takteingang)
• Änderung von x bewirkt Umschalten von 3 → 6 bzw. 6 → 3 über zwei Zwischenzustände ((7,5) und (2,1))
In der Praxis werden Verzögerungen meist (selbst) durch Flipflops realisiert, daher im Folgenden immer.
τ = FF (Flipflop in unterschiedlichen Varianten möglich!)
Schaltwerke und Automaten
7
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.2 Asynchrone Schaltwerke
Schalt-netz
Xn
Sn En
Yny1
y2yn
s1
s2s2
s4
e1
e3e4
e5
x1x2xn
Xn, Yn, En, Sn: Vektoren zum Zeitpunkt n
Definition: Ein Schaltwerk heißt asynchron, wenn die Zeitpunkte der Änderungen von Yn und Sn ausschließlich von Änderungen von X sowie internen Laufzeiten abhängen und folglich beliebig auf der Zeitachse verteilt sein können.
Vorteile:
- unmittelbare Reaktion auf Eingangsänderungen
- sehr schnelle Arbeitsweise möglich
Nachteile:
- Entwurf aufwendig + Untersuchung / Wahl der Zwischenzustände + unterschiedlich lange Zyklen
- Unerwünschte Wirkung auf nachfolgende Schaltung durch Zwischenzustände möglich
⇒ Bedeutung gering
Schaltwerke und Automaten
8
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.3 Synchrone Schaltwerke
E
Xn
Sn
Yn
Zn
Definition: Ein Schaltwerk heißt synchron, wenn Änderungen des Zustandvektors (und u.U. Ergebnisvektors) nur zu ausgezeichneten Zeitpunkten möglich sind, die von einem Taktsignal bestimmt sind. Der Takt ist kein Eingangssignal! (Verzögerungseinheit: Zustandsregister)
⇒ Einschwingvorgänge über mehrere instabile Zwischen-zustände sind unmöglich: Alle Si nehmen ihre neuen Werte zur selben Zeit an und behalten sie mindestens für eine Taktperiode.
⇒ - Übergänge erfolgen stets von stabilen in stabile Zustände,
- Zustands- und Ergebnisvektoren reagieren um eine Taktdauer verzögert auf Änderungen am Eingang,
- Werteänderungen erfolgen stets in gleichen Zeitabständen und sind immer eindeutig,
- Änderungen im Eingangsvektor dürfen zu beliebigen Zeitpunkten und auf beliebig vielen Leitungen erfolgen (außer während set-up und hold-Zeit).
Schaltwerke und Automaten
9
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.4 Autonome Schaltwerke
ESn
Yn
g1
g2
f
Definition: Ein Schaltwerk wird autonom genannt, wenn
sein Verhalten nicht über Eingangsvariablen von außen beeinflussbar ist. Die Eigengesetzlichkeit des Schaltnetzes bestimmt das Verhalten:
Yn = f(Sn) Ausgangsfunktion
Sn+1 = g1(En) Übergangsfunktion
En = g2(Sn) Erregungsfunktion
Anwendung: Steuerung unverändert ablaufender Prozesse.
Schaltwerke und Automaten
10
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.5 Beschreibungsformen 5.5.1 Zustandstabelle
Abgeleitet aus den Funktionsgleichungen ergibt sich:
Zustand Xn Sn En Sn+1 Yn Zn 1 2 3 . . .
Xn
Sn
Yn
Z n
En
g1
g2
f1f2
Yn = f1 (Xn,Sn) Sn+1 = g1(En) En = g2(Xn,Sn) Zn+1 = f2(Yn)
Sonderfälle:
1) Yn = Zn ohne Ergebnisregister 2) Yn = Sn Zähler 3) kein Xn: autonomes Schaltwerk
Beispiel:
Schaltwerke und Automaten
11
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
X1
S
1
1Y
EE1
2
> 1
&
&
TSQ
RQ
g1
g2
f
X2
( )( )( )
( ) nnnnnnn
nnnnnn
nnnnnn
nnnnnnnn
SEESEEgS
SXSXXgE
SXSXXgE
SXSXSXXfY
⋅+==
⋅==
⋅==
⋅+⋅==
−+21211
1
121222
221211
2121
,,
,,
,,
,,
g1 folgt aus charakteristischer Gleichung des SR-FF: nn QRSQ ⋅+=+1
Zustandstabelle:
X1n X2
n Sn E1n E2
n Sn+1 Yn 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 0 0 0 0 0 0 1 0 1 0 0 1 0
Schaltwerke und Automaten
12
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
1 1 0 1 0 1 1 1 1 1 0 0 1 0
Verwendung der Zustandstabelle bei der
a) Analyse von Schaltwerken: 1. Erstellen der vollständigen Belegung von X 2. Multiplizieren dieser Tabelle mit der Anzahl interner
Zustände S 3. Bestimmung von En = g2(Xn,Sn) 4. Bestimmung von Yn = f(Xn,Sn) 5. Bestimmung von Sn+1 = g1(En, Sn) Problem: Entsprechende Tabellen werden schnell sehr umfangreich und unübersichtlich. Ziel: Beschränkung auf besondere Kombinationen
b) Synthese von Schaltwerken:
1. Auflistung der Zustände Sn in ihrer gewünschten Reihenfolge
2. Ergänzung um den Folgezustand Sn+1 pro Zeile 3. (Bei asynchronen Schaltwerken: Ermittlung aller aktiven
Signalflanken pro Zustand) 4. Eintragung der Schaltbedingungen en zur Erfüllung von
Sn -> Sn+1 für jede Zeile 5. Ermittlung des Schaltnetzes aus dem Funktionsbündel
En = g2(Xn,Sn) Yn dann meist als Sk - laut Aufgabenstellung - realisiert
Schaltwerke und Automaten
13
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.5.2 Zustandsgraph
Begriffe:
• Ein Graph besteht aus einer endlichen Anzahl von Knoten (Kreise) sowie
• Kanten, den verbindenden Linien zwischen den Knoten mit • Pfeilen für die Wirkrichtung (gerichteter Graph). • Eine Folge (Verkettung) von Kanten heißt Weg. • In einem zusammenhängenden Graph ist jeder Knoten
von jedem anderen über mindestens einen Weg zu erreichen. • Die Kanten werden beschriftet mit "auslösender
Eingangszustand"/ "neuer Ausgangszustand" • k Zustandsvariable => ≤ 2k Knoten
m Eingangsvariable => ≤ 2m Kanten pro Knoten Beispiel: SR-Flipflop
0 1
10/1
01/0
0x/0 x0/1S R Q
X Y
n n n
n n
Schaltwerke und Automaten
14
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.6 Minimierung der Schaltwerkszustände Regel (nach Hoffmann und Mealy):
Zwei Zustände eines Schaltwerks sind äquivalent, wenn sie - bei identischen Eingangsgrößen - denselben Nachfolgezustand haben und - dabei identische Ausgangsvektoren erzeugen.
Erforderliche Anzahl Flipflops: [ld z], z: Anzahl der Zustände
Beispiel:
3 4 5
1 0 7
1/0
1/0
1/0
1/0
1/0
1/0
0/1
0/1
0/10/10/10/10/1
1/0
1/0
2 6
0/0
Hier sind äquivalent Zustand 5 und Zustand 6, da sie die oben angegeben Bedienungen erfüllen: Zustand 5:
X = 0 -> Zn+1 = 2, mit Yn+1 = I X = I -> Zn+1 = 0, mit Yn+1 = 0
Zustand 6: X = 0 -> Zn+1 = 2, mit Yn+1 = I X = I -> Zn+1 = 0, mit Yn+1 = 0
Schaltwerke und Automaten
15
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
Also kann der Zustandsgraph vereinfacht werden zu:
4 5
2
0 7
1/0
1/0
0/1
0/1
0/1
1/0
0/1
0/0
...
...
Minimierung ist ebenfalls (und dabei systematischer) in der Zustandstabelle möglich. Hierzu genügt die Auflistung von Zn, Zn+1, Yn, Yn+1 mit einer Fallunterscheidung der Eingangsvariablen:
Zn Zn+1 Yn Yn+1
X=0 X=1 X=0 X=10 0 1 0 0 0 1 3 7 V 1 0 2 6 0 1 1 0 3 1 4 1 1 0 4 5 0 0 1 0 5 2 0 1 1 0 6 2 0 1 1 0 7 5 0 0 1 0
Schaltwerke und Automaten
16
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
V: abhängig vom Vorzustand => Zustand 6 und 7 können gestrichen, da der Zustand 6 gleich dem Zustand 5 ist, sowie Zustand 7 gleich dem Zustand 4 ist. Die Zustände Zn+1 für Zn = 0...5 werden entsprechend aktualisiert:
Zn Zn+1 Yn Yn+1 X=0 X=1 X=0 X=10 0 1 0 0 0 1 3 4/2 V 1 0 2 5 0 1 1 0 3 1 4/2 1 1 0 4 5 0 1 1 0 5 2 0 1 1 0
=> Jetzt sind durch die Aktualisierung die Zustände 2 und 4 äquivalent. Somit wird der Zustand 4 gestrichen.
Minimierter Zustandsgraph:
3 5
2
1 0
1/0
0/1
0/10/1
1/0
0/1
0/0
1/01/0
1/0
Schaltwerke und Automaten
17
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
2. Regel: Weitere Minimierung kann durch Gruppenbildung von Zuständen mit gleichem Folgeausgangsvektor Yn+1 und Vergleich der Gruppen erfolgen.
Schaltwerke und Automaten
18
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.7 Automaten Zur Synthese synchroner Schaltwerke eignen sich besonders die Methoden der Automatentheorie. Dies ist lediglich eine formalere Betrachtungsweise der Schaltwerke.
Ein Automat sei definiert durch
• X: Eingabemenge
• Y: Ausgabemenge
• Z: Zustandsmenge
• zwei Abbildungen (g,f) mit f =̂ Ausgabefunktion g =̂ Übergangsfunktion
5.7.1 Mealy-Automat
Ein Mealy-Automat ist definiert durch seine
Ausgabefunktion Yn = f(Xn,Zn) sowie seiner
Übergangsfunktion Zn+1 = g(Xn,Zn)
g
Y
Spei-cher
f
Spei-cher
f,gX n
Zn Zn+1
Y nZn+1
ZZn
n
XX
n
n
TT
Schaltwerke und Automaten
19
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.7.2 Moore-Automat
Ein Moore-Automat ist definiert durch seine
Ausgabefunktion Yn = h(Zn) ,sowie seiner
Übergangsfunktion Zn+1 = g(Xn,Zn)
gSpei-cher h Y
Zn+1Zn
Xn
T
andere Schreibweise:
Yn = h(Zn+1) ergibt durch Einsetzen von Zn+1: Yn = h(g(Xn,Zn))
Schaltwerke und Automaten
20
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.7.3 Gegenüberstellung Mealy- und Moore-Automat
In einem stabilen Zustand können in einem
• Mealy-Automaten verschiedene Ausgangsvektoren
• Moore-Automaten nur ein Ausgangsvektor auftreten.
Mealy- und Moore-Automat können ineinander überführt werden.
Yn = Zn: keine Ausgabefunktion vorhanden ⇒ Medwedjew-Automat
Übliche Darstellungsform: Automatentafel (kompaktere Darstel-lung der Tabellen aus Kap. 7.5):
Eingangswerte
BelegungX n
Z n
Belegung Z n+1/ Yn
(=g/f)
Vorzustände
Schaltwerke und Automaten
21
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
5.8 Synthese von Schaltwerken Die Synthese allgemeiner Schaltwerke erfolgt schrittweise:
1. Problemanalyse
2. Zustandsdefinition und Zustandsgraph
3. Aufstellen der Zustandstabelle
4. Minimierung der Zustände (auf < [ld z])
5. Kodierung der Zustände (willkürlich, aber geschickt; binär)
6. Wahl des Flipflop-Typs und Aufstellen der Gleichungen (Aufwandsabschätzung durch mehrere Versuche und Vergleich)
Sonderfälle:
a) Zählerentwurf
1. Aufstellen der geforderten Zählfolge 2. Erweiterung um Folgezustand und Liste aktiver Flanken 3. Ableitung der Setz- bzw. Taktbedingungen 4. Umformung entsprechend des verwendeten Flipflop-Typs
b) Rückgekoppeltes Schieberegister
Schaltnetz
F
D Parallelesladen :Programmieren
i
i
<
Schaltwerke und Automaten
22
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
festgelegte Sequenz, abhängig vom geladenen Wort Fi=f(Di)
aber: nur für einfache Steuerungen, da begrenzte Programmierbarkeit, da Schaltnetz starr ist.
c) ROM oder PLA als programmierbare Schaltnetze mit
Rückkopplung über Register
Größtmögliche Freiheit im Entwurf!
Schaltwerke und Automaten
23
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
Beispiel „Aufstehen“ Szenario:
• Studierende(r) stellt den Wecker auf 6 Uhr morgens • An Werktagen wird aufgestanden und der Wecker
abgeschaltet. • An Wochenenden bleibt man liegen und stellt den Wecker
auf 10 Uhr. • Erst dann wird auf gestanden.
Skizze des Automaten:
Automat Wecker klingelt (WE)
Wochenende (WO)
Wach (WA)
Schlummerfunktion bis 10 Uhr (SF)
Schaltwerke und Automaten
24
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
Ausgabe mit Zuständen assoziiert:
schlaf. bis 6 wach 6 auf
Wecker st. schlaf. bis 10 wach 10
Wecker
Wecker
Wecker
Wochenende
Wochenende
wach = 0Schlumerfkt. = 0
wach = 1Schlumerfkt. = 0
wach = 1Schlumerfkt. = 0
wach = 1Schlumerfkt. = 1
wach = 0Schlumerfkt. = 0
wach = 1Schlumerfkt. = 0
Wecker
• Zustände zeigen Aktionen • Nicht beachtete Eingabewerte werden nicht eingetragen • unbedingte Übergänge sind nicht beschriftet
Schaltwerke und Automaten
25
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
Ausgabe mit Kanten assoziiert:
wach = 0Schlumerfkt. = 0
Wecker
wach = 1Schlumerfkt. = 0
schlaf. bis 6
Wecker gest.
Wochenende
wach = 1
Schlumerfkt. =
1
wach = 0Schlumerfkt. = 0
wach = 1Schlumerfkt. = 0
wach 6 auf
schlaf. bis 10 wach 10
Wecker
Wecker
Wecker
Wochenende
wach = 1Schlumerfkt. = 0
wach = 1Schlumerfkt. = 0
wach = 1Schlumerfkt. = 0
• Zustände repräsentieren Ereignisse zwischen Aktionen • Zustände müssen möglicherweise umbenannt werden
Schaltwerke und Automaten
26
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
d daufd dwach10d 1schlaf10d 0schlaf10d dSchlumerfkt.0 dwach61 dwach6d 1schlaf6d 0schlaf6
WO WE
FolgezuständeEingängeZustände
Zustandstabelle
d d1 1 1
d d1 1 0
aufd dauf 1 0 1
aufd dwach10 1 0 0
wach10d 1schlaf10 0 1 1
schlaf10d 0schlaf10 0 1 1
schlaf10d dSchlumerfkt. 0 1 0
auf0 dwach6 0 0 1
Schlumerfkt.1 dwach6 0 0 1
wach6d 1schlaf6 0 0 0
schlaf6d 0schlaf6 0 0 0
FolgezuständeQ2´ Q1´ Q0´
EingängeWO WE
ZuständeQ2 Q1 Q0
Binäre Zustandscodierung, binäre Zustandstabelle
Schaltwerke und Automaten
27
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
d d d d d dd d dd d1 1 1
d d d d d dd d dd d1 1 0
d 0 0 d d 01 0 1d d1 0 1
d 0 0 d 1 d1 0 1d d1 0 0
1 d d 1 d 11 0 0d 10 1 1
0 d d 0 d 00 1 1d 00 1 1
0 d d 0 1 d0 1 1d d0 1 0
1 d 0 d d 01 0 10 d0 0 1
0 d 1 d d 10 1 01 d0 0 1
0 d 0 d 1 d0 0 1d 10 0 0
0 d 0 d 0 d0 0 0d 00 0 0
Flip-Flop-AnsteuerungJ2 K2 J1 K1 J0 K0
FolgezuständeQ2´ Q1´ Q0´
EingängeWO WE
ZuständeQ2 Q1 Q0
JK- Flip- Flops und deren Ansteuerung
d d1 1 1
d d1 1 0
1 0auf 1 0 1
1 0wach10 1 0 0
0 0schlaf10 0 1 1
1 1Schlumerfkt. 0 1 0
1 0wach6 0 0 1
0 1schlaf6 0 0 0
AusgabeWA = wach SF = Schlumerfkt.
ZuständeQ2 Q1 Q0
Ausgabefunktionen in Abhängigkeit vom Zustand
Schaltwerke und Automaten
28
Prof. Dr.-Ing. Axel Hunger Grundlagen der Technischen Informatik
01
01012
120
021
01012
QQSFQQQQQWA
WEQQJWOQQJ
WEQQWOQQJ
⋅=
⋅+⋅+=
++=⋅⋅=
⋅⋅+⋅⋅=
WEQWOQQKWEQQK
0K
1220
011
2
⋅+⋅⋅=
⋅⋅==
Gleichungen
Schaltbild des Automaten:
(aus: Franz J. Hauck, Vorlesung Technische Informatik 1, SS02, Verteilte Systeme, Universität Ulm)
SF