2.4 Schaltwerke bauen
Systematisch Schaltwerke zu entwickeln ist nicht schwer. Im TGI wird dafür auf das Modell des Synchronen Moore-Automaten zurück gegriffen, siehe Vergleich verschiedener Automatentypen.
Mehrere D-FlipFlops werden zu einem Register zusammen gefasst. Die CLK-Eingänge der FF sind mit dem Takt verbunden und können dadurch ihre Zustände nur synchron zum Takt ändern. Zu jedem Zustand kann durch ein Ausgangsschaltnetz ein Ausgabemuster zugeordnet werden.
Zustandsdiagramm
Im Zustandsdiagramm für Digitaltechnik werden die Zustände durch Kreise dargestellt, hier drei Beispiele für unterschiedliche Darstellungen. In Digital wird bereits die Kodierung des Zustandes angezeigt. Die Alte Darstellung meint die alte TGI-Formelsammlung, die neue Darstellung die neue Formelsammlung. Allen gemein sind Zustandsname und die Angabe welche Werte im jeweiligen Zustand am Ausgang ausgegeben werden sollen. In Digital wird die Zustandskodierung oben immer angegeben, der Zustandsname ist optional.
Werte von Ausgängen in Digital im Zustand festlegen:
- Alle Ausgänge mit Werten aufführen:
a=1,b=0 - Nur die Ausgänge mit Wert 1 aufführen, die nicht aufgeführten haben dann den Wert 0:
a=1 - Wert von Leitungsbündel aufführen:
Y=10 (Y1=a=1,Y0=b=0)
Zustandsübergänge (Transitionen)
Die erste Transition ist der Sprung auf den Startzustand, die weiteren Zustandsübergänge erfolgen mit dem Takt, im ersten Beispiel ohne Bedingung.
Aus dem Zustandsdiagramm wird die Zustandsübergangstabelle erstellt, darin kann auch die Funktionstabelle für das Ausgangsschaltnetz enthalten sein. Daraus entsteht die Schaltung. Typische schriftliche (auf Papier) Prüfungsaufgabe:
- Erstelle aus Aufgabenstellung Zustandsdiagramm.
- Ermittle die Anzahl der notwendigen FlipFlops.
- Erstelle kodierte Zustandsübergangstabelle: Zu jedem Zustand muss die Kodierung der FlipFlop-Werte bekannt sein (Ist in Digital der oberste Wert im Kreis).
- Erstelle Funktionstabelle für das Ausgangsschaltnetz.
- Erstelle aus der Tabelle die Funktionsgleichung für b in DNF.
Zustand (State) | Z1n | Z0n | Z1n+1 | Z0n+1 |
---|---|---|---|---|
S0 | 0 | 0 | 0 | 1 |
S1 | 0 | 1 | 1 | 0 |
S3 | 1 | 0 | 0 | 0 |
Nicht aufgeführte Codierungen werden als Don’t Cares interpretiert, also ist
Zn = 0b11 -> Zn+1 = 0bxx.
Z1n | Z0n | a | b |
---|---|---|---|
0 | 0 | 1 | 0 |
0 | 1 | 0 | 1 |
1 | 0 | 1 | 1 |
Aufgabe: Kreisblinklicht
Ein Kreisblinklicht soll entwickelt werden, ein Lichtpunkt läuft im Kreis durch L0,L1,L2,L0…
In Digital kann dies in nebenstehenden Varianten im Zustandsdiagramm dargestellt werden. Welche Darstellung finden Sie besser?
Erstellen Sie per Hand die codierte Zustandsübergangstabelle mit Ausgängen:
State | Z1n,Z0n | Z1n+1,Z0n+1
Erstellen Sie per Hand die Funktionstabelle für das Ausgangsschaltnetz:
Z1n,Z0n | L2,L1,L0
Wenn wenig Eingänge vorhanden sind kann das auch in einer Tabelle gemacht werden:
State | Z1n,Z0n | Z1n+1,Z0n+1 | L2,L1,L0
Erstellen Sie mit Digital das Zustandsdiagramm, erzeugen Sie die Zustandsübergangstabelle und die Schaltung. Ggfs. müssen die Ausgänge L0..L2 in Digital umsortiert werden.
Aufgabe: Würfel von 1 bis 6
Ein digitaler Würfel von 1 bis 6 soll mit einer Siebensegmentanzeige entwickelt werden. Dazu soll ein Schaltwerk die Werte 1 bis 6 ausgeben, die Siebensegmentanzeige hat bereits einen Dekoder eingebaut. Gegeben ist das Diagramm rechts.
Hinweis: In Digital werden die Werte von nicht angegebenen Ausgangs-Variablen mit 0 vermutet. Bei Leitungsbündeln wie Q=(Q2,Q1,Q0)=0b110 ist Q=110 ist möglich.
Erstellen Sie die Zustandsübergangstabelle usw.
Digital-Lösungen:
ToDo: Aufgabe Ampelsteuerung
Siehe mezdata.de/ti-basis/280_die-ampel/index.php
Schaltwerk mit Eingang
Das Kreisblinklicht soll jetzt mit einem Eingang E gesteuert werden können, nur wenn E=1 ist fängt es an im Kreis zu laufen.
Erstellen Sie eine Zustandsdiagramm in Digital und erzeugen Sie die Zustandsübergangstabelle. Warum wird eine weitere Spalte für E eingefügt?
Erzeugen und testen Sie die Schaltung.
Umschaltbare Anzeige
Eine Anzeige mit 3 Lampen soll mit einem Schalter X eine umschaltbare Ausgabe erzeugen.
Beim Zustandsdiagramm müssen bei den Transitionen die Schalterstellung von X berücksichtigt werden.
Beim VSN kommt eine Eingabe X hinzu.
Das ASN ermittelt beim Moore-Automat nur aus den Registerzuständen die Ausgabe. Eingaben wie X spielen dabei keine Rolle!
Aufgabe: Umschaltbare Anzeige
Eine Anzeige mit 3 Lampen soll mit einem Schalter X eine umschaltbare Ausgabe erzeugen.
Zunächst alles per Hand machen:
- Erstellen Sie ein Zustandsdiagramm mit den Zuständen S0..S2.
- Zeichnen Sie ein Blockschaltbild mit VSN,Register, ASN.
- Erstellen Sie eine codierte Zustandsübergangstabelle: State | Z1n,Z0n | X | Z1n+1,Z0n+1
- Erstellen Sie die Funktionstabelle für das Ausgangsschaltnetz.
Mit Digital die Lösung überprüfen.
Lösung
State | Z1n | Z0n | X | Z1n+1 | Z0n+1 |
---|---|---|---|---|---|
S0 | 0 | 0 | x | 0 | 1 |
S1 | 0 | 1 | 0 | 0 | 0 |
S1 | 0 | 1 | 1 | 1 | 0 |
S2 | 1 | 0 | x | 0 | 0 |
Z1n | Z0n | L2 | L1 | L0 |
---|---|---|---|---|
0 | 0 | 1 | 0 | 0 |
0 | 1 | 0 | 1 | 0 |
1 | 0 | 0 | 0 | 1 |
Digital kennt nicht die Zusammenfassungen der Zustände mit Xen auf der linken Seite, ausserdem kombiniert es immer die Zustandsübergangstabelle mit dem Ausgangsschaltnetz.
ToDo: Aufgabe: Fußgängerampel
Siehe mezdata.de/ti-basis/280_die-ampel/index.php
Aufgabe: CTR DIV4 mit umschaltbarer Zählrichtung
Entwickeln Sie einen Zähler 0..3 bei dem mit einem Eingang X die Zählrichtung bestimmt werden kann: X=0 vorwärts, X=1 rückwärts: Blockschaltbild, Zustandsdiagramm, Zustandsübergangstabelle, (mit Digital Schaltplan).
Lösung
CTR DIV4 mit synchronem und asynchronem Reset
Wenn wir Schaltwerke mit Zustandsdiagrammen bauen passieren die Transitionen immer bei steigender Taktflanke, also synchron zum Takt. Manchmal wäre ein Schaltwerk praktisch, dass sich sofort (asynchron) zurücksetzten ließe. Hier ein Beispiel mit einem CTR DIV4 Zähler, der Eingang Clr setzt den Zähler bei steigender Flanke und der Eingang R sofort auf 0. Mit dem D-FF mit asynchronen Set- und Clr-Eingängen aus Digital kann das realisiert werden.
Aufgabe: CTR DIV4 mit synchronem und asynchronem Reset analysieren
Für eine Verständnisaufgabe bzgl. Synchronen und Asynchronen Reset eines Zählers wurde eine Testschaltung erdacht. Ein Umschalter kann ein Resetsignal A beim Wert ? wahlweise an einen synchronen Eingang Clr oder an einen asynchronen Eingang R zwecks Rückstellen des Zählers auf 0 umschalten. Vermuten Sie bei der jeweiligen Schalterstellung ein Timing mit Gatterdurchlaufzeiten und überprüfen Sie ihre Vermutung mit Digital.
- Erklären Sie den Unterschied zwischen synchronem und asynchronem Reset.
- An den Eingängen Clr und R wurden Bauteile angeschlossen, wie nennt man diese Bauteile und welche Aufgabe haben sie hier?
- Bei welchen Zuständen Q=(Q1,Q0) als Dualzahl ist das Signal A = 1?
- Erstellen Sie ein Timingdiagramm mit Berücksichtigung von Gatterdurchlaufzeiten für die Schalterstellung R.
- Erstellen Sie ein Timingdiagramm mit Berücksichtigung von Gatterdurchlaufzeiten für die Schalterstellung Clr.
Überprüfen Sie ihre Timingdiagramme mit Digital.
Hinweis zu Timingdiagrammen mit Gatterduchlaufzeiten bei Digital: Es werden bei zusammengesetzten Baugruppen wie dem CTR DIV4 mehr Zeiteinheiten angezeigt als bei der Annahme einer Zeiteinheit Verzögerung durch diese Baugruppe.
Übung: Zähler DIV4 mit synchronem und asynchronem Reset entwickeln
- Zustandsdiagramm mit Clr-Transitionen nach 0.
- Zustandsübergangstabelle
- Schaltung erzeugen
- Die einfachen D-FF durch Version mit asynchronem Set und Clr ersetzten, die Clr-Eingänge als Reset-Eingang zusammenschließen
Aufgabe: Code-Schloss
Eine Tür wird durch ein Codeschloss durch Drücken der Taster a,b,x geöffnet. Die Taster müssen nacheinander gedrückt und wieder losgelassen werden. Der Türschnappermagnet bleibt solange Taster x gedrückt ist geöffnet. Beim Drücken einer falschen Taste wird in einen Fehler-Zustand verzweigt, der durch Drücken der Taste x wieder verlassen werden kann.
Erstellen Sie eine codierte Zustandsübergangstabelle und eine Funktionstabelle für das Ausgangsschaltnetz.
Mein Zustandsdiagramm
Aufgabe: Schrittmotor ansteuern
Die Ansteuerung für einen bipolaren Schrittmotor soll entwickelt werden.
https://de.wikipedia.org/wiki/Schrittmotor
https://rn-wissen.de/wiki/index.php/Schrittmotoren
Gegeben ist ist die rechte Schaltung.
Das Schaltwerk für die Ansteuerung muss noch entwickelt werden.
- Erstellen Sie ein Zustandsdiagramm, daraus eine Zustandsübergangstabelle mit Ausgangsschaltnetz und einen Schaltplan für die Ansteuerung im Vollschrittbetrieb.
- Erstellen Sie das Schaltwerk für den Halbschrittbetrieb
Zustand Vollschritt | Ausgabe | Zustand Halbschritt | Ausgabe |
---|---|---|---|
S0 | P = 1010 | S0 | P = 1010 |
S1 | P = 1001 | S1 | P = 1000 |
S2 | P = 0101 | S2 | P = 1001 |
S3 | P = 0110 | S3 | P = 0001 |
S4 | P = 0101 | ||
S5 | P = 0100 | ||
S6 | P = 0110 | ||
S7 | P = 0010 |
Ein Kommentar
Kommentare sind geschlossen.