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.

Blockschaltbild
Blockschaltbild

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.

Darstellung von Zuständen im Zustandsdiagramm
Darstellung von Zuständen im Zustandsdiagramm

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)

Einfaches Schaltwerk mit drei Zuständen und zwei Ausgängen
Einfaches Schaltwerk mit drei Zuständen und zwei Ausgängen

Die erste Transition ist der Sprung auf den Startzustand, die weiteren Zustandsübergänge erfolgen mit dem Takt, im ersten Beispiel ohne Bedingung.

Zustandsübergangstabelle
Zustandsübergangstabelle mit Ausgangsschaltnetz

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:

  1. Erstelle aus Aufgabenstellung Zustandsdiagramm.
  2. Ermittle die Anzahl der notwendigen FlipFlops.
  3. Erstelle kodierte Zustandsübergangstabelle: Zu jedem Zustand muss die Kodierung der FlipFlop-Werte bekannt sein (Ist in Digital der oberste Wert im Kreis).
  4. Erstelle Funktionstabelle für das Ausgangsschaltnetz.
  5. Erstelle aus der Tabelle die Funktionsgleichung für b in DNF.
Zustand
(State)
Z1nZ0nZ1n+1Z0n+1
S00001
S10110
S31000
Codierte Zustandsübergangstabelle

Nicht aufgeführte Codierungen werden als Don’t Cares interpretiert, also ist
Zn = 0b11 -> Zn+1 = 0bxx.

Schaltplan
Schaltplan
Z1nZ0nab
0010
0101
1011
Funktionstabelle Ausgangsschaltnetz

Aufgabe: Kreisblinklicht

Zustandsdiagramm Kreisblinklicht
Zustandsdiagramm 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:

Würfel von 1 bis 6
Würfel von 1 bis 6

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.

Zustandsdiagramm Kreisblinklicht mit Eingang E

Umschaltbare Anzeige

Eine Anzeige mit 3 Lampen soll mit einem Schalter X eine umschaltbare Ausgabe erzeugen.

Schaltwerk Aufgabenstellung BlinkDing
Schaltwerk Aufgabenstellung BlinkDing
BlinkDing Ausgabe
BlinkDing Ausgabe

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!

Umschaltbares BlinkDing
Blockschaltbild
Blockschaltbild
Zustandsübergangstabelle
Zustandsübergangstabelle
Schaltplan
Schaltplan

Aufgabe: Umschaltbare Anzeige

Eine Anzeige mit 3 Lampen soll mit einem Schalter X eine umschaltbare Ausgabe erzeugen.

Schaltwerk Aufgabenstellung BlinkDing
Schaltwerk Aufgabenstellung BlinkDing
Ausgabemuster
Ausgabemuster

Zunächst alles per Hand machen:

  1. Erstellen Sie ein Zustandsdiagramm mit den Zuständen S0..S2.
  2. Zeichnen Sie ein Blockschaltbild mit VSN,Register, ASN.
  3. Erstellen Sie eine codierte Zustandsübergangstabelle: State | Z1n,Z0n | X | Z1n+1,Z0n+1
  4. Erstellen Sie die Funktionstabelle für das Ausgangsschaltnetz.

Mit Digital die Lösung überprüfen.

Lösung
Zustandsdiagramm
Zustandsdiagramm
Blockschaltbild
Blockschaltbild
StateZ1nZ0nXZ1n+1Z0n+1
S000x01
S101000
S101110
S210x00
Codierte Zustandsübergangstabelle
Z1nZ0nL2L1L0
00100
01010
10001
Funktionstabelle Ausgangsschaltnetz
Digital-Tabelle
Digital-Tabelle

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
Zustandsdiagramm
Zustandsdiagramm

CTR DIV4 mit synchronem und asynchronem Reset

Zähler mit synchronem Clr und asynchronen 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.

Testschaltung mit Umschaltung zwischen synchron und asynchron Reset
Testschaltung mit Umschaltung zwischen synchron und asynchron Reset
  1. Erklären Sie den Unterschied zwischen synchronem und asynchronem Reset.
  2. An den Eingängen Clr und R wurden Bauteile angeschlossen, wie nennt man diese Bauteile und welche Aufgabe haben sie hier?
  3. Bei welchen Zuständen Q=(Q1,Q0) als Dualzahl ist das Signal A = 1?
  4. Erstellen Sie ein Timingdiagramm mit Berücksichtigung von Gatterdurchlaufzeiten für die Schalterstellung R.
  5. 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

  1. Zustandsdiagramm mit Clr-Transitionen nach 0.
  2. Zustandsübergangstabelle
  3. Schaltung erzeugen
  4. 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.

Blockschaltbild Code-Schloss
Blockschaltbild Code-Schloss


Erstellen Sie eine codierte Zustandsübergangstabelle und eine Funktionstabelle für das Ausgangsschaltnetz.

Mein Zustandsdiagramm
Code Schloss
Code Schloss

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.

Ansteuerung für einen Schrittmotor
Ansteuerung für einen Schrittmotor
  1. Erstellen Sie ein Zustandsdiagramm, daraus eine Zustandsübergangstabelle mit Ausgangsschaltnetz und einen Schaltplan für die Ansteuerung im Vollschrittbetrieb.
  2. Erstellen Sie das Schaltwerk für den Halbschrittbetrieb
Zustand VollschrittAusgabeZustand HalbschrittAusgabe
S0P = 1010S0P = 1010
S1P = 1001S1P = 1000
S2P = 0101S2P = 1001
S3P = 0110S3P = 0001
S4P = 0101
S5P = 0100
S6P = 0110
S7P = 0010
Schtittmotor Ansteuerung