4 Schaltwerke Schaltwerk: Ausgabevektor hängt nicht nur von Eingabevektor ab, sondern auch von allen bisherigen Eingaben. A(t n ) = f(e(t n ), E(t n-1 ), E(t n-2 ), E(t n-3 ),... E(t 0 ) dazu sind erforderlich: Schaltnetz: zur Erzeugung der Ausgabefunktion und zur Erzeugung der Übergangsfunktion Speicher: zur Speicherung der "inneren Zustände" Prinzipieller Aufbau eines Synchron-Schaltwerkes Richard Roth / FB Informatik und Mathematik Schaltwerke 1 4.2 Automat Endlicher Automat (Menge von Eingabe- und Ausgabealphabet und interne Zustände sind endlich) Damit lässt sich ein Automat beschreiben durch: Richard Roth / FB Informatik und Mathematik Schaltwerke 2
4.2.1 Mealy-Automat Richard Roth / FB Informatik und Mathematik Schaltwerke 3 4.2.2 Moore-Automat Richard Roth / FB Informatik und Mathematik Schaltwerke 4
4.3 Funktionale Beschreibung und Analyse Äquivalente Beschreibungsmöglichkeiten für Schaltwerke: Zustandfolgetabellen KV-Diagramme Schaltfunktionen (enthalten die Ausgabe- und Überangsfunktionen) Zustandsgraphen Vereinfachte Notation des Zustandvektors: Zustandfolgetabelle: Zustandsgraph: mit Eingabe/Ausgabe Richard Roth / FB Informatik und Mathematik Schaltwerke 5 4.3.1 Analyse eines Schaltwerkes mit D-Flipflops Schaltwerk: Zustandsfolgetabelle: Zustandsgraph: Übergangsfunktionen: Ausgabefunktion: Richard Roth / FB Informatik und Mathematik Schaltwerke 6
4.3.2 Schaltwerk mit JK-Flipflops Richard Roth / FB Informatik und Mathematik Schaltwerke 7 4.4 Synthese und Realisierung von Schaltwerken Verbale Aufgabenstellung Schaltwerk sinnvolles Vorgehen: Festlegen der Zustandsmenge Festlegen des Anfangszustandes Definition der Eingangs- und Ausgabevariablen Darstellung der zeitlichen Zustandsfolge in Form eines Zustandsgraphen Aufstellen der Zustandsfolgetabelle Erstellen der Übergangs- und Ausgabefunktion aus der Zustandsfolgetabelle Darstellung des Schaltwerkes in einem Schaltwerk Realisierung des Schaltwerkes 4.4.1 Umschaltbarer Gray-Code-Zähler Für die Eingabe x = 0 soll die Zählfolge 00, 01, 11, 10 sein und für die Eingabe x = 1 soll die Zählfolge 00, 10, 11, 01 sein. Richard Roth / FB Informatik und Mathematik Schaltwerke 8
Umschaltbarer Gray-Code-Zähler Richard Roth / FB Informatik und Mathematik Schaltwerke 9 4.4.2 Schieberegister als Schaltwerk Zustandsfolgetabelle: Übergangsfunktionen Ausgabefunktion: Richard Roth / FB Informatik und Mathematik Schaltwerke 10
Realisierung mit JK-FF Übergangsfunktionen: Ausgabefunktion: Richard Roth / FB Informatik und Mathematik Schaltwerke 11 4.4.3 Zwischenspeicher (4-Bit-Schieberegister) Richard Roth / FB Informatik und Mathematik Schaltwerke 12
4.4.4 Geldautomat als Schaltwerk Beispiel: Ein einfacher Wechselautomat soll 1.-DM und 2.-DM-Münzen in 10-Pfennig-Münzen wechseln. In einem Wechselvorgang können bis zu zwei Mark umgetauscht werden. Die Ausgabe des Wechselgeldes erfolgt durch Drücken einer speziellen Wechseltaste. Mögliche Eingaben: Einwurf 1DM Einwurf 2DM Drücken der WT Keine Eingabe Mögliche Ausgaben: Zehn 10Pfennige Zwanzig 10Pfennige 1 DM 2 DM Keine Ausgabe Interne Zustände: 1 DM ist eingeworfen worden 2 DM sind eingegeben worden Keine Schulden Richard Roth / FB Informatik und Mathematik Schaltwerke 13 Zustandsdiagramm des Geldwechselautomaten: Richard Roth / FB Informatik und Mathematik Schaltwerke 14
Zustqndsfolgetabelle: Beispiel zur Codierung: Richard Roth / FB Informatik und Mathematik Schaltwerke 15 Zustandsfolgetabelle: KV-Diagramme zur Bestimmung von Übergangsund Ausgabefunktion Richard Roth / FB Informatik und Mathematik Schaltwerke 16
Schaltwerk zum Wechselautomaten: Richard Roth / FB Informatik und Mathematik Schaltwerke 17 4.4.5Realisierung mit programmierbaren Bauelementen Allgemeine Struktur Richard Roth / FB Informatik und Mathematik Schaltwerke 18
Umschaltbarer Gray-Code-Zähler im PROM Schaltwerkmodell im PROM Richard Roth / FB Informatik und Mathematik Schaltwerke 19 4.5 Rechenschaltwerke 4.5.1 Multiplizierwerk serielle Multiplikation ohne Vorzeichen (s. Praktikum) aus [4] Vorzeichenbehaftete Multiplikation (Booth-Algrithmus s. nächste Seite) Richard Roth / FB Informatik und Mathematik Schaltwerke 20
Booth-Recordong-Algorithmus für vorzeichenbehaftete Multiplikation aus [4] bzw. [1] 1. Lösche die Register P und Sp 2. Lade die vorzeichenbehafteten Operanden nach A und B 3. Wenn a 0 = 0 und a- 1 = 0, dann bilde P + 0 a 0 = 0 und a- 1 = 1, dann bilde P + B a 0 = 1 und a- 1 = 0, dann bilde P - B a 0 = 1 und a- 1 = 1, dann bilde P + 0 4. Verschiebe P, A und Sp insgesamt einmal nach rechts 5. Gehe solange nach 3. zurück, bis das werthöchste Bit von A in Sp steht 6. STOP, die Register enthalten das vorzeichenbehaftete Produkt Richard Roth / FB Informatik und Mathematik Schaltwerke 21 4.5.2 Dividierwerk (seriell) Algorithmus aus [4]: 1. Setze Register P und Null und lade Register A mit dem Dividenden A und Register B mit dem Divisor B 2. Verschiebe das Registerpaar P und A um eine Stelle nach links und lade LSB(A) mit Null 3. Subtrahiere den Divisor von P 4. Wenn Carry = 1, übernehme NichtCarry nach LSB(A) und addiere B zu P, sonst übernehme nur NichtCarry nach LSB(A) 5. Solange nicht n Verschiebungen vorliegen, gehe zurück nach 2., sonst STOP Richard Roth / FB Informatik und Mathematik Schaltwerke 22
Getakteter serieller Dividierer aus [4] Richard Roth / FB Informatik und Mathematik Schaltwerke 23 4.5.3 Gleitkommaoperationen IEEE Darstellung: Normalisierung (1.xxxx ) getrennte Behandlung von VZ, e n und Mantisse Numerischer Exponentenvergleich durch Subtraktion b = e A e B Wenn b > 0, dann Mantisse m B um b Bits nach rechts verschieben und e B um b erhöhen, wenn b < 0 dann m A und e A entsprechend korrigieren Addition der Signifikanten (Vorzeichen!!) Normalisierung der Summe (1.xx durch verschieben und anpassen des Exponenten) Richard Roth / FB Informatik und Mathematik Schaltwerke 24
Ein didaktisches Beispiel eines Gleitkommaddierers für 8-Bit-Zahlen aus [4]. 3-Bit für Exponent, 5 Bit für die Mantisse, die Vorzeichenbehandlung ist nicht mit einbezogen Die Steuersignale S xy und z i werden vom Steuerwerk bereitgestellt!! : Richard Roth / FB Informatik und Mathematik Schaltwerke 25 4.6 Steuerwerk für Mikroprogramm Richard Roth / FB Informatik und Mathematik Schaltwerke 26
aus [4]: Richard Roth / FB Informatik und Mathematik Schaltwerke 27 Horizontale-, Vertikale-, Quasi-Horizontale-Mikroprogrammierung Richard Roth / FB Informatik und Mathematik Schaltwerke 28
Richard Roth / FB Informatik und Mathematik Schaltwerke 29 Richard Roth / FB Informatik und Mathematik Schaltwerke 30
Richard Roth / FB Informatik und Mathematik Schaltwerke 31 Steuerwerk der Prozessoren MOT68000 Richard Roth / FB Informatik und Mathematik Schaltwerke 32
Variationsmöglichkeit des Befehlssatzes im Betrieb! Richard Roth / FB Informatik und Mathematik Schaltwerke 33 4.7 Zählschaltungen 4.7.1 Asynchrone Schaltung Richard Roth / FB Informatik und Mathematik Schaltwerke 34
4.7.2 Synchrone Schaltung 4 Bit Vorwärtszähler Richard Roth / FB Informatik und Mathematik Schaltwerke 35 Synchron BCD Vorwärts Zähler (FLJ401-74160) Taktunabhängiger Reset ( R) Stelleingang ( S) Zwei Freigabeeingänge Richard Roth / FB Informatik und Mathematik Schaltwerke 36
4.8 Zusammenfassung Die Ausgaben eines Schaltwerkes hängen nicht nur von den aktuellen Eingaben, sondern von allen vorherigen Eingaben ab Schaltwerke werden durch die Angaben der möglichen Eingaben und Ausgaben, der internen Zustände, der Ausgabe- und Übergangsfunktionen, sowie der End- und des Anfangszustandes bestimmt Mit Hilfe von Zustandsgraphen lassen sich Schaltwerke übersichtlich beschreiben - Wichtige Schaltwerke für die Rechnertechnik sind Register, Zähler, Ablaufsteuerung Schaltwerke lassen sich gut in PROMs realisieren und damit lassen sich leicht µp- Steuerwerke aufbauen Richard Roth / FB Informatik und Mathematik Schaltwerke 37